Một số phần mềm mô phỏng giao thông

Một phần của tài liệu XÂY DỰNG PHẦN mềm hỗ TRỢ mô PHỎNG GIAO THÔNG (Trang 30)

1.8.1. TRANSIMS

Hình 1.8.1: Giao diện phần mềm TRANSIMS

TRANSIMS (TRansportation ANalysis SIMulation System) là bộ công cụ tích hợp được phát triển nhằm quản lý việc phân tích hệ thống giao thông vận tải trong một vùng. Với mục đích thiết lập TRANSIMS trở thành tài nguyên chung được phát triển liên tục cho cộng đồng nghiên cứu giao thông vận tải, TRANSIMS đã được cung cấp dưới dạng nguồn mở dưới giấy phép NASA Open Source Agreement. TRANSIMS hoạt động theo mô hình mô phỏng Cellular Automata là một mô hình mô phỏng giao thông mới. So với các mô hình tổng hợp giao thông vận tải khác, TRANSIMS biểu diễn thời gian một cách nhất quán và liên tục. Dự án đã được ngừng hỗ trợ từ năm 2013.

17

1.8.2. AIMSUM

Hình 1.8.2: Giao diện mô phỏng giao thông phần mềm Aimsum.

Aimsum là một trong những phần mềm hàng đầu trong lớp những phần mềm mô phỏng giao thông hiện nay được phất triển và thương mại hóa bởi công ty TSS (Transport Simulation Systems). TSS có trụ sở chính ở Barcelona (Tây Ban Nha), ngoài ra còn có các văn phòng tại New York (Mỹ), Sydney (Australia) và Paris (Pháp). Vào cuối những năm 1980, công ty đã giới thiệu một sản phẩm mô phỏng giao thông vi mô trên những máy tính tiêu chuẩn và sau đó đã tiến tới phát triển thành Airsum.

Airsum rất nổi bật với tính năng hỗ trợ việc tạo ra các mạng lưới giao thông một cách thuận tiện. Ngoài việc tự tạo ra mạng các trục đường theo mong muốn, Aimsum còn hỗ trợ người dùng nhập các file bản đồ của một số phần mềm khác, các file cấu hình mạng lưới như XML hoặc file xuất từ OpenStreetMap nên rất thuận tiện cho người dùng mô hình hóa mạng lưới giao thông trong thực tế. Khả năng hỗ trợ việc tạo ra bản đồ phục vụ cho mô phỏng của Aimsum khá tốt.

Aimsum cũng cung cấp rất tốt những thông tin thống kê về tình trạng giao thông ngay khi đang tiến hành mô phỏng.

Aimsum là một phần mềm có bản quyền. Vậy nên cũng giống hầu hết phần mềm có bản quyền thuộc lớp này, một số tính năng của Aimsum bị hạn chế trong bản demo, như chỉ có phép mô phỏng với số lượng phương tiện không lớn và không hỗ

18

trợ đầy đủ trong việc nhập dữ liệu bản đồ từ các phần mềm và cơ sở dữ liệu bên ngoài. Hiện tại, phiên bản Aimsum 8 đã cho phép cài đặt trên cả 3 hệ điều hành thông dụng nhất là Windows, Linux Ubuntu và Mac OS.

1.8.3. SUMO

Hình 1.8.3: Giao diện phần mềm SUMO.

Sumo (Simulation of Urban Mobility) là một gói mô phỏng giao thông đường bộ vĩ mô, mã nguồn mở, có tính di động cao. Được thiết kế để xử lý những mạng lưới đường bộ lớn. Nó được phát triển chủ yếu bởi các nhân viên của viện hệ thống giao thông vận tải của Trung tâm vũ trụ Đức. SUMO được cấp giấy phép GPL. Mô phỏng cho phép giải quyết một số lượng lớn các vấn đề trong quản lý giao thông. Mỗi chiếc xe được mô phỏng một cách rõ ràng, có một con đường riêng và di chuyển độc lập trong mạng. SUMO có thể tải về từ địa chỉ http://sumo.sourceforge.net.

Sự phát triển của SUMO bắt đầu vào năm 2000. Những người phát triển đã xây dựng dự án này dưới dạng mã nguồn mở theo giấy phép GPL bởi 2 lý do. Thứ nhất là hỗ trợ cộng đồng nghiên cứu giao thông một công cụ với khả năng thực hiện và đánh giá các thuật toán riêng. Công cụ này không bắt buộc phải xây dựng tất cả những thứ cần thiết cần có để mô phỏng giao thông hoàn chỉnh mà những người thực hiện chỉ muốn làm cho các thuật toán được thực hiện dễ so sánh hơn bằng cách sử dụng một kiến thức và cơ sở mô hình chung. Cũng có nhiều công cụ mô phỏng

19

giao thông mã nguồn mở khác nhưng chúng thường là đồ án của sinh viên, những người này sau đó thường không phát triển tiếp nữa. Một nhược điểm chính, đó là bên cạnh việc tái phát minh gì người khác đã làm, hầu như không thể tồn tại một so sánh nào giữa các mô hình hay thuật toán mô phỏng đã được thực thi. Thứ hai là nhận thêm sự giúp đỡ đóng góp từ những người khác.

Trong hơn 1 thập kỷ qua, SUMO đã phát triển thành một gói nhiều tính năng tiện ích cho mô phỏng giao thông bao gồm nhập mạng lưới đường đi, hỗ trợ nhiều định dạng nguồn khác nhau, sinh nhu cầu và định tuyến với một lượng lớn nguồn đầu vào (ma trận từ diểm gốc tới điểm đích – O/D Matrix, bộ đếm giao thông…), một ứng dụng mô phỏng hiệu năng cao có thể sử dụng cho một nút giao cắt cũng như toàn bộ thành phố với một giao diện điều khiển từ xa TraCI thích ứng với mô phỏng trực tuyến và một lượng lớn công cụ và kịch bản bổ sung. Phần lớn thành quả phát triển được thực hiện bởi Học viện các hệ thống giao thông vận tải, trực thuộc Trung tâm hàng không vũ trụ Đức. Các tổ chức bên ngoài hỗ trợ những mở rộng khác nhau cho bộ công cụ mô phỏng.

SUMO rất linh hoạt, hỗ trợ chạy trên nhiều hệ điều hành thông dụng như Windows, Linux, Mac OS. Về khả năng hỗ trợ tạo lập các mạng lưới giao thông, SUMO không có công cụ tạo lập bằng đồ họa tích hợp ngay trong phần mềm. Thay vào đó là sử dụng dòng lệnh. Tuy nhiên, SUMO cho phép nhập dữ liệu bản đồ từ nhiều nguồn khác nhau như Visum, Vissim, Shapefiles, OpenStreetMap, RoboCup, MATsim, OpenDrive và các loại tập tin mô tả bằng XML khác. Điều này là hết sức thuận lợi cho người dùng trong các ứng dụng thực tiễn. SUMO có thể tiến hành mô phỏng trên mạng lưới lên tới 10000 con đường. Tốc độ thực hiện nhanh (cập nhật đến 100000 xe/s trên một máy 1GHz), cho phép mô hình hóa những hệ thống giao thông tương đối lớn có sự tương tác giữa các phương tiện.

Ngoài ra, SUMO cũng cho phép xác địnhtrạng thái của hệ thống giao thông tại những thời điểm trong quá trình mô phỏng. Điểm yếu lớn nhất của SUMO so với các phần mềm mô phỏng giao thông khác có lẽ là vấn đề hiển thị giao diện đồ họa.

20

1.8.4. VISSIM

Hình 1.8.4: Giao diện phần mềm VISSIM

VISSIM là một sản phẩm thương mại của công ty PTV AG, Đức. VISSIM thuộc loại microscopic, là một trong những phần mềm mô phỏng giao thông hoàn thiện nhất trên thế giới hiện nay. Có khả năng cung cấp thông tin chi tiết về trạng thái hoạt động của xe, thông tin được cập nhật theo sự kiện. VISSIM có khả năng mô phỏng nhiều hành vi phức tạp của xe, đặc biệt là các hành vi diến ra trong nút như chiếm chỗ trống hoặc đỗ xe trên phố.

Giá bán lẻ một bản đơn của VISSIM là #2,495.00

Ngoài ra, VISSIM là một thành phần trong bộ công cụ phần mềm ứng dụng giao thông vận tải được phát triển bởi PTV. Bộ công cụ này bao gồm các gói phần mềm sau:

VISUM: hệ thống thông tin và lập kế hoạch trong quá trình vận tải với các chức

năng chính là thiết kế mạng giao thông, pân tích, đánh giá, phân công, dự báo nhu cầu giao thông và lợi nhuận thu về.

INTERPLAN: lập lịch trình cho phương tiện, lên kế hoạch về nhân lực cùng

21 (adsbygoogle = window.adsbygoogle || []).push({});

1.9. Kết luận chương I

Nội dung chương I vừa trình bày một số hệ thống mô phỏng giao thông tiêu biểu. Các hệ thống này có một số điểm chung. Thứ nhất, đa số chúng đều là các hệ thống mô phỏng giao thông vi mô, tức là cố gắng mô phỏng một cách chi tiết sự di chuyển của các phương tiện tham gia giao thông. Thứ hai, các hệ thống này đều cho phép tạo ra các mạng lưới giao thông một cách linh hoạt, tuy nhiên vẫn rất khó để tạo dựng lại một mạng lưới giao thông ở Việt Nam do sự phức tạp của hệ thống đường xá nước ta. Một điểm chung nữa là các phương tiện tham gia giao thông trong hệ thống này chủ yếu là ô tô, sự di chuyển không quá phức tạp để tính toán.

Tuy nhiên, những hệ thống nêu trên cũng có một số ưu điểm nhất định. Bên cạnh việc tiếp thu những cơ sở lý thuyết, phương pháp xây dựng của các hệ thống này, chúng ta cần tìm các phương pháp mới nhằm nghiên cứu xây dựng một hệ thống mô phỏng giao thông phù hợp với tình hình giao thông ở Việt Nam, nhất là các thành phố lớn có mật độ giao thông dày đặc.

22

Chương II: MÔ PHỎNG HỆ THỐNG GIAO THÔNG DỰA TRÊN MÔ HÌNH ĐA AGENT

2.1. Mô hình Agent và hệ thống đa Agent

Agent là một khái niệm tương đối mới và hiện nay được rất nhiều các nhà nghiên cứu quan tâm. Dưới đây chúng tôi xin trình bày một số khái niệm và đặc điểm của Agent và hệ thống đa Agent.

2.1.1. Agent

Có rất nhiều khái niệm về Agent đã được đưa ra nhưng cho đến nay vẫn chưa có một khái niệm nào được coi chung nhất cho Agent. Tôi xin nêu một khái niệm được đưa ra bởi Wooldridge[12]:

“Một Agent là một hệ thống máy tính được đặt trong một môi trường nào đó, và nó có khả năng hành động một cách tự chủ trong môi trường này nhằm đạt được một mục tiêu nào đó”.

Để mô tả kỹ hơn về Agent, chúng tôi xin trình bày một số đặc điểm của nó:

 Mỗi Agent trong môi trường đều có những thuộc tính riêng biệt. Chúng cảm nhận, tiếp thu thông tin từ môi trường rồi đưa ra hành động dựa vào trạng thái hiện thời của các thuộc tính của chúng [13].

 Mỗi Agent có một số nguyên tắc chi phối hành vi và khả năng đưa ra quyết định của chúng.

 Agent có khả năng đáp ứng lại sự tác động từ môi trường bằng cách đưa ra hành động nào đó. Tuy nhiên, Agent không chỉ đưa ra hành động có tính đáp ứng mà các hành động của Agent còn hướng đến mục tiêu nào đó. Để đạt được mục tiêu, các Agent cần thực hiện một chuỗi các hành động khác nhau. Việc xác định chuỗi các hành động cần thực hiện chính là lên kế hoạch [14].

23

 Agent có tính chủ động. Chúng có khả năng tự đưa ra hành động, hoạt động một cách độc lập mà không chịu sự chi phối, tác động hay kích thích từ các yếu tố bên ngoài.

 Agent có tính linh động. Chúng có khả năng học hỏi, ghi nhớ và đưa ra các hành vi đáp ứng dựa trên những kinh nghiệm của chúng [13]. Trên đây là một số đặc điểm chung của Agent nhưng chưa đầy đủ. Để có thể mô tả được đầy đủ các đặc điểm của Agent, ta phải đặt nó vào môi trường mà trong đó có sự tham gia của nhiều Agent. Trong mục tiếp theo, tôi xin giới thiệu vè hệ thống đa Agent và bổ sung một số đặc điểm khác của Agent khi tham gia vào môi trường có sự có mặt của nhiều Agent khác.

2.1.2. Hệ thống đa Agent - MAS

Một hệ thống đa Agent, hay gọi tắt là MAS (Multi-Agent System), là một hệ thống trong đó có sự có mặt của nhiều Agent trong một môi trường và có sự tương tác lẫn nhau giữa chúng.

Các Agent có thể tương tác với nhau theo nhiều cách. Các hành động đưa ra của chúng có thể có tính cạnh tranh, xung đột với các Agent khác. Hoặc chúng có thể hợp tác, phối hợp hành động để đạt được mục tiêu hay thậm chí có thể cùng lên kế hoạch hành động để đạt được mục tiêu chung nào đó [15]. Các Agent có khả năng giao tiếp với các Agent khác bằng cách truyền và nhận các thông điệp theo một giao thức nào đó. Thậm chí các Agent có thể nhận biết được các Agent khác tiếp nhận được thông tin gì [16].

Trong MAS, mỗi Agent đều có một cái nhìn giới hạn, chúng không có thông tin đầy đủ về môi trường và các Agent khác trong toàn bộ hệ thống [15]. Mỗi hành động của Agent đều tác động tới một phần của mội trường và các Agent khác trong một phạm vi nào đó. Trong một MAS, các hành vi và thuộc tính của các Agent không đồng nhất.

MAS có thể có tính tổ chức, tức là các Agent có thể hoạt động trong một nhóm các Agent nào đó, chúng có một số ràng buộc nào đó với nhau và các hoạt động của chúng sẽ nhắm đến một mục tiêu chung của nhóm. Có nhiều loại mô hình tổ chức trong MAS, với loại mô hình phân cấp, quyền ra quyết định hành động thường nằm

24

trong tay một Agent đứng đầu ở mỗi cấp. Ở mô hình cấp tổ chức này, các Agent thường tương tác với các Agent khác trong cùng cấp hoặc với các Agent ở các cấp liền kề (trên và dưới). Một mô hình tổ chức khác là mô hình thị trường, trong đó có sự tồn tại của các Agent đóng vai trò cung cấp sản phẩm hoặc dịch vụ và các Agent đóng vai trò có nhu cầu sử dụng sản phẩm dịch vụ [17].

Một ví dụ điển hình về MAS chính là Internet [15]. Internet có thể được coi là một mạng lưới rộng lớn với mỗi nút của mạng lưới là một Agent. Các nút mạng này được thiết kế, thực thi bởi những người, tổ chức khác nhau, và hoạt động với những mục đích khác nhau. Ngoài ra, hoạt động của chúng là không đồng bộ. Các nút mạng trao đổi thông tin với các nút mạng khác trong một phạm vi nào đó và theo một giao thức nào đó…

Trong một hệ thống giao thông, hệ thống đường xá, các đèn giao thông, tín hiệu giao thông đóng vai trò môi trường. Mỗi người tham gia giao thông trong đó đóng vai trò một Agent. Các Agent này đưa ra hành động bằng cách di chuyển theo các cách khác nhau để đạt được một mục tiêu là đi đến một vị trí nào đó trong hệ thống đường xá. Mỗi người tham gia giao thông đều có những thuộc tính riêng biệt phụ thuộc vào giới tính, tuổi tác, kinh nghiệm… và do đó cách di chuyển của họ cũng là không đồng nhất. Người tham gia giao thông tương tác với những người khác trong một phạm vi nào đó. Họ có một số cách thức truyền thông điệp như bấm còi, bật sinh nhan để ra hiệu xin đường… Chính vì vậy mà việc mô phỏng hệ thống giao thông dựa trên Agent là một phương pháp rất thích hợp.

2.2 Mô hình hóa dựa trên Agent

2.2.1. Khái niệm về mô hình dựa trên Agent – ABM

Mô hình dựa trên Agent, gọi tắt là ABM (Agent-Based Modeling) là một trong các loại mô hình tính toán dùng để mô phỏng các hành động không đồng nhất của các thực thể tự trị trong một môi trường và sự tương tác giữa chúng.

Bằng việc mô phỏng lại hoạt động và tương tác giữa các thực thể giống như Agent, ABM được sử dụng để tái tạo hay dự đoán sự hiện diện của những hiện tượng phức tạp. ABM đặc biệt được dùng để nghiên cứu các hệ thống phức hợp. Trong những hệ thống này, ta sử dụng những nguyên tắc ở mức độ vi mô để tạo ra (adsbygoogle = window.adsbygoogle || []).push({});

25

những hiện tượng mang tính vĩ mô. Những hiện tượng nổi bật này không thể giải thích bởi một đơn vị vi mô đơn lẻ [18].

Có thể coi ABM là một kỹ thuật mô phỏng mạnh mẽ được sử dụng nhiều năm qua, trong đó có cả các ứng dụng liên quan đến các vấn đề thực tế trong đó có cả thương mại. ABM có một số tên gọi khác nhau như ABS (Agent-Based Systems), IBM (Individual-Based Modeling and Simulating) nhưng trong luận văn này, tôi sẽ sử dụng ABM.

2.2.2. Sự khác nhau giữa Agent và đối tượng

Từ khi ra đời cho đến nay, công nghệ hướng đối tượng luôn là một phương pháp hữu hiệu trong công nghệ sản xuất phần mềm. So với phương pháp xây dựng một chương trình theo hướng module như trước, phương pháp hướng đối tượng đã có nhiều ưu điểm vượt bậc. Tuy nhiên, sự ra đời của Agent, hệ thống đa Agent mà mô hình dựa trên Agent đã mở ra một cách thức mới trong xây dựng phần mềm với những ưu Việt của Agent so với đối tượng.

Phương thức + Bộ nhớ Đối tượng + Sự chủ động Agent

Hình 2.1: Ưu việt của Agent so với đối tượng.

Hình 2.1 [13] có thể mô ta được phần nào sự ưu việt của Agent so với đối tượng. Ta có thể thấy rằng, đối tượng chỉ mang tính thụ động do các phương thức chỉ được

Một phần của tài liệu XÂY DỰNG PHẦN mềm hỗ TRỢ mô PHỎNG GIAO THÔNG (Trang 30)