Tài liệu tham khảo công nghệ thông tin Xây dựng và đánh giá một hệ thống mô phỏng giao thông việt nam
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Ngô Đức Hải
XÂY DỰNG VÀ ĐÁNH GIÁ MỘT HỆ THỐNG
MÔ PHỎNG GIAO THÔNG VIỆT NAM
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ Thông tin
HÀ NỘI - 2010
Trang 2ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Ngô Đức Hải
XÂY DỰNG VÀ ĐÁNH GIÁ MỘT HỆ THỐNG
MÔ PHỎNG GIAO THÔNG VIỆT NAM
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ Thông tin
Cán bộ hướng dẫn: PGS.TS Bùi Thế Duy
HÀ NỘI - 2010
Trang 3TÓM TẮT KHOÁ LUẬN
Từ lâu, việc phát triển một hệ thống mô phỏng giao thông đã được nhiều nhà nghiêncứu trên thế giới quan tâm và đã đạt được một số thành tựu nhất định Những thành tựunày cũng đã đóng góp phần nào vào sự phát triển của hệ thống giao thông ở các nước tiêntiến Tuy nhiên, việc ứng dụng các thành tựu này vào giao thông Việt Nam là rất khókhăn do cơ sở vật chất, cơ sở hạ tầng giao thông của nước ta có nhiều khác biệt, cùng với
đó là sự khác nhau về các loại phương tiện tham gia giao thông và ý thức của người thamgia giao thông Vì vậy việc nghiên cứu một hệ thống mô phỏng giao thông thích hợp vớiViệt Nam là rất cần thiết và đã được chúng tôi chọn làm đề tài để thực hiện khóa luậnnày
Đầu tiên, chúng tôi sẽ đưa ra một số cơ sở lý thuyết cho việc mô phỏng giao thông.Trong số đó chúng tôi sẽ đi sâu vào phương pháp mô phỏng dựa trên agent, một côngnghệ rất thích hợp để mô phỏng một mô hình có sự tương tác cá thể - cá thể và cá thể -môi trường giống như mô hình giao thông Cuối cùng, chúng tôi sẽ trình bầy về hệ thống
mô phỏng giao thông Việt Nam mà chúng tôi đã nghiên cứu và xây dựng và các kết quảđạt được qua quá trình này
Trang 4LỜI CÁM ƠN
Đầu tiên, em xin gửi lời cám ơn tới các thầy cô của trường Đại học Công Nghệ - Đạihọc Quốc Gia Hà Nội đã tận tình hướng dẫn, chỉ bảo em trong quá trình học tập và làmviệc những năm học vừa qua
Em xin gửi lời cám ơn chân thành tới Phó Giáo sư Tiến sĩ Bùi Thế Duy, người đãtận tình hướng dẫn em trong suốt thời gian thực hiện khóa luận
Em vô cùng biết ơn bố mẹ, những người đã có công sinh thành, nuôi dậy và luônluôn tin tưởng, ủng hộ em Em cũng xin gửi lời cám ơn tới các anh chị em và mọi ngườitrong gia đình cùng bạn bè vì đã luôn tin cậy, động viên và giúp đỡ em trong cuộc sống
Hà Nội, ngày 2 tháng 5 năm 2010
Sinh viên
Ngô Đức Hải
Trang 5MỤC LỤC
CHƯƠNG 1: MÔ PHỎNG GIAO THÔNG 3
1.1 Giới thiệu 3
1.2 Hệ thống mô phỏng giao thông trực quan 4
1.2.1 Mô hình hệ thống giao thông 5
1.2.2 Mô hình điều khiển sự di chuyển các xe trên đường 5
1.2.3 Mô hình thống kê 6
1.3 Mô phỏng xe thông minh trên đường cao tốc 6
1.3.1 Mô hình mạng lưới đường cao tốc7
1.3.2 Mô hình xe cộ 8
1.4 Hệ thống mô phỏng đèn giao thông 9
1.5 Kết luận 10
CHƯƠNG 2: MÔ HÌNH DỰA TRÊN AGENT 11
2.1 Agent và hệ thống đa agent 11
2.1.1 Agent 11
2.1.2 Hệ thống đa agent – MAS 12
2.2 Mô hình dựa trên agent 13
2.2.1 Khái niệm về mô hình dựa trên agent – ABM 13
2.2.2 Sự khác nhau giữa agent và đối tượng 14
2.2.3 Một số ứng dụng của ABM 14
2.2.4 Cách xây dựng một ABM 15
2.3 Kết luận 15
CHƯƠNG 3 HỆ THỐNG MÔ PHỎNG GIAO THÔNG VIỆT NAM SỬ DỤNG MÔ
3.1 Một số đặc điểm của giao thông Việt Nam 16
3.2 Các ý tưởng xây dựng hệ thống 16
3.2.1 Xây dựng hệ thống đường xá 17
3.2.2 Xây dựng agent đóng vai trò người tham gia giao thông 20
3.3 Mô tả hệ thống 24
Trang 63.3.1 Các thành phần chính của hệ thống 243.3.2 Các thuật toán được sử dụng 28
Trang 7MỘT SỐ THUẬT NGỮ
MAS Multi-Agent System Hệ thống đa Agent
ABM Agent-Based Modeling Mô hình dựa trên Agent
Trang 8DANH SÁCH HÌNH VẼ & BẢNG BIỂU
Hình 1-1: Hệ thống mô phỏng giao thông trực quan 4
Hình 1-2: Chức năng thống kê của của hệ thống mô phỏng trực quan 4
Hình 1-3: Hệ thống mô phỏng đường cao tốc 7
Hình 1-4: Mô tả cấu tạo đoạn đường cao tốc 8
Hình 1-5: Hệ thống mô phỏng đèn giao thông 9
Hình 2-1: Ưu việt của agent so với đối tượng 14
Hình 3-1: Chia một ngã tư gồm nhiều tuyến đường thành các vùng đơn giản17
Hình 3-2: Vùng ở giữa ngã tư chứa nhiều tuyến đường khác nhau 18
Hình 3-3: Các lối vào, lối ra và các đoạn đương trong một vùng 18
Hình 3-4: 16 đoạn đường ở vùng giữa ngã tư 19
Hình 3-5: Thuộc tính vận tốc an toàn ảnh hưởng đến cách lái xe của các agent 23Hình 3-6: Thuộc tính thời gian dự tính ảnh hưởng đến cách lái xe của các agent 24Hình 3-7: Biểu đồ mô tả các thành phần của hệ thống và mối quan hệ của chúng 25Hình 3-8: Thuật toán tính toán di chuyển của agent 29
Hình 3-9: Agent lập kế hoạch lý tưởng trên đường dài và thẳng 30
Hình 3-10: Thuật toán xây dựng kế hoạch di chuyển lý tưởng của agent 31
Hình 3-11: Agent lập kế hoạch di chuyển lý tưởng trên hệ thống đường bất kỳ 32Hình 3-12: Agent cảm nhận được va chạm với agent khác 33
Hình 3-13: Agent hình dung vị trí của agent khác ở các thời điểm dịch chuyển 33Hình 3-14: Thuật toán kiểm tra va chạm nếu di theo chuyển theo kế hoạch lý tưởng
34
Hình 3-15: Agent kiểm tra lựa chọn đánh lái để tránh va chạm35
Hình 3-16: Giao diện chương trình ở chế độ thiết kế 38
Trang 9Hình 3-18: Hộp thoại chọn các thành phần đường dựng sẵn 39
Hình 3-19: Hộp thoại tùy chọn số người tham gia giao thông 40
Hình 3-20: Hộp thoại tùy chọn các thuộc tính của người lái 40
Hình 3-21: Giao diện chương trình ở chế độ mô phỏng 41
Hình 3-22: Thử nghiệm mô phỏng tại môt ngã tư có bùng binh 42Hình 3-23: Thử nghiệm mô phỏng với 80 người 44
Hình 3-24: Thử nghiệm mô phỏng với 120 người 45
Hình 3-25: Thử nghiệm mô phỏng với 160 người 46
Bảng 3-1: Thuộc tính của các người lái 43
Bảng 3-2: Thử nghiệm mô phỏng với 80 người 44
Bảng 3-3: Thử nghiệm mô phỏng với 120 người45
Bảng 3-4: Thử nghiệm mô phỏng với 160 người46
Trang 10MỞ ĐẦU
Đối với mọi quốc gia, giao thông là một bộ phận trong kết cấu hạ tầng, có ảnhhưởng trực tiếp đến sự phát triển kinh tế - xã hội Ở các nước phát triển, việc phát triển hệthống giao thông luôn được đầu tư những khoản chi phí khổng lồ Bên cạnh đó, các nhàquy hoạch luôn có một tầm nhìn chiến lược, định ra được kế hoạch rõ ràng trong việc xâydựng các hệ thống giao thông Nhờ vậy mà hệ thống giao thông của những nước này rấtphát triển, tạo cơ sở thuận lợi cho sự phát triển của kinh tế và xã hội Còn ở Việt Nam thìngược lại, cơ sở hạ tầng giao thông không theo kịp sự phát triển kinh tế xã hội và dân số,gây cản trở cho sự nghiệp hiện đại hóa, công nghiệp hóa của đất nước
Hiện nay ở nước ta, giao thông đang là một vấn đề nhức nhối của các nhà hoạchđịnh chính sách Ở các đô thị như Hà Nội, nhiều hệ thống đường quá hỗn độn, không theoquy chuẩn hay quá chật hẹp Trong khi đó, số lượng xe tham gia thông không ngừng giatăng Điều đó đã dẫn đến hậu quả là sự gia tăng về tắc đường, tai nạn, ô nhiễm môitrường Thêm vào đó, ý thức của người tham gia giao thông chưa cao nên càng làm tăngtính phức tạp của giao thông Việt Nam Vì vậy việc tìm giải pháp phát triển cho các hệthống giao thông ở nước ta là rất khó khăn
Ở nhiều nước trên thế giới, việc mô phỏng hệ thống giao thông trên máy tính đãđược nghiên cứu từ lâu nhằm phục vụ cho việc tìm kiếm và đánh giá các giải pháp pháttriển hệ thống giao thông Trước khi chặn một tuyến đường, mở một tuyến đường mớihay điều chỉnh thời gian bật đèn xanh, đèn đỏ ngoài thực tế, các nhà phát triển có thể thửtrên hệ thống mô phỏng trước Tuy nhiên, giao thông của Việt Nam là rất khác biệt vàphức tạp nên việc ứng dụng các thành tựu nghiên cứu này là rất khó Hơn nữa, mô phỏnggiao thông vẫn còn là một đề tài ít được các nhà nghiên cứu trong nước quan tâm Do đóchúng tôi đã nghiên cứu và xây dựng một hệ thống mô phỏng thích hợp với giao thôngcủa Việt Nam nhằm phục vụ cho việc phát triển hệ thống giao thông trong nước
Mô phỏng thực chất là tái hiện hoặc tạo dựng một phần nào nào đó của thế giới thựctrên máy tính Đối với mô phỏng giao thông, đã có nhiều phương pháp, cơ sở lý thuyếtđược đưa ra Chúng tôi đã chọn phương pháp mô phỏng dựa trên agent làm phương phápnghiên cứu và xây dựng một hệ thống mô phỏng giao thông Với các mô hình có sự tươngtác giữa các cá thể như hệ thống giao thông thì việc sử dụng mô hình dựa trên agent là rất
Trang 11phỏng các hệ thống phức tạp trong thực tế Hệ thống mô phỏng giao thông mà chúng tôixây dựng cho phép người sử dụng có thể tùy biến tạo ra các hệ thống giao thông đa dạng,phức tạp, rồi quan sát sự di chuyển của các phương tiện trên hệ thống giao thông này Từviệc quan sát này mà các nhà quy hoạch giao thông có thể đánh giá được các giải phápphát triển hệ thống giao thông và đưa ra quyết định của mình.
Nội dung của khóa luận gồm 4 chương:
Chương 1 sẽ trình bầy về bài toán mô phỏng giao thông và các mô hình mô phỏnggiao thông của các nhà nghiên cứu trên thế giới trước đây
Chương 2 sẽ trình bầy về agent, hệ thống đa agent, phương pháp sử dụng mô hìnhdựa trên agent và các ứng dụng của mô hình này
Chương 3 sẽ trình bầy về hệ thống mô phỏng giao thông mà chúng tôi đã nghiêncứu và xây dựng
Cuối cùng, Chương 4 sẽ tổng kết các kết quả đã đạt được và hướng phát triển hệthống mô phỏng giao thông trong tương lai
Trang 12CHƯƠNG 1: MÔ PHỎNG GIAO THÔNG
1.1 Giới thiệu
Việc phát triển hệ thống giao thông tốt là nhu cầu bức thiết của mỗi quốc gia nhằmtạo cơ sở thuận lợi cho quá trình phát triển kinh tế xã hội Xây dựng được một hệ thốnggiao thông tốt là một bài toán khó với các nhà quy hoạch giao thông Ngoài việc phântích, đánh giá mang tính lý thuyết, họ cần có một cái nhìn trực quan về các giải pháp mà
họ lựa chọn Tuy nhiên, không phải lúc nào cũng có thể áp dụng các giải pháp phát triển
hệ thống giao thông vào thực tế chỉ để kiểm tra tính hiệu quả do nhiều nguyên nhân nhưtốn kém, mất nhiều thời gian, hoặc gặp rủi ro không lường trước được Chính vì vậy, họcần một công cụ giúp họ mô phỏng các giải pháp phát triển hệ thống giao thông để đánhgiá và đưa ra lựa chọn hợp lý nhất
Công cụ mô phỏng giao thông đầu tiên được ra đời năm 1955 [10], và kể từ đó đếnnay, việc mô phỏng giao thông trên máy tính đã được nghiên cứu, phát triển và được ápdụng nhiều vào thực tế Đã có rất nhiều công cụ được ra đời, nhiều giải pháp, cơ sở lýthuyết được đưa ra Có những giải pháp mang tính vĩ mô, các nhà nghiên cứu chỉ để tâmđến mối liên hệ giữa các tham số như vận tốc các, lưu lượng, mật độ các xe tham gia giaothông Các giải pháp mang tính vi mô thì nhằm xây dựng các hệ thống mô phỏng mà có
sự chuyển động của các xe một cách chi thiết Có những giải pháp mang tính rời rạc hayliên tục về thời gian… Tính đến nay, việc nghiên cứu xây dựng công cụ mô phỏng giaothông đã đạt được nhiều thành tựu, đã đóng góp phần nào vào sự phát triển của các hệthống giao thông ở nhiều nước tiên tiến trên thế giới Tuy nhiên, rất khó có thể ứng dụngđược những công cụ này để mô phỏng hệ thống giao thông ở Việt Nam do hệ thống giaothông của nước ta có nhiều điểm khác biệt Cơ sở hạ tầng giao thông còn kém, hệ thốnggiao thông mang tính phức tạp vì có nhiều hệ thống đường xá chằng chịt trong một diệntích nhỏ, nhất là trong các đô thị Hầu hết các công cụ mô phỏng được xây dựng chỉ môphỏng các phương tiện đi trên đường là ô tô Trong khi đó, các phương tiện tham giao ởnước ta rất hỗn tạp, từ những phương tiện kích thước nhỏ xe đạp, xe máy đến nhữngphương tiện cỡ lớn như ô tô, xe tải, xe buýt, hay thậm chí là các phương tiện thô xơ.Thêm vào đó sự thiếu ý thức chấp hành luật lệ giao thông của người lái xe là chưa caonên càng làm cho hệ thống giao thông thêm hỗn độn Chính vì vậy mà nghiên cứu một hệ
Trang 13đẩy chúng tôi nghiên cứu một hệ thống mô phỏng giao thông phù hợp với tình hình giaothông ở Việt Nam Nhưng trước khi trình bầy những những nghiên cứu và các kết quả đãđạt được, chúng tôi xin được giới thiệu một số phương pháp, cơ sở lý thuyết và các công
cụ mô phỏng hệ thống giao thông của các nhà nghiên cứu trước đây
1.2 Hệ thống mô phỏng giao thông trực quan
Đây là hệ thống được nghiên cứu và phát triển bởi Thomas Fotherby [14] Hệ thốngrất đa năng trong việc mô phỏng các hệ thống giao thông Nó cung cấp các chức năngthiết kế mạng lưới giao thống, hệ thống mô phỏng các xe chạy trên mạng lưới giao thông
đã được thiết kế và một chức năng rất hữu ích đó là chức năng thống kê chi tiết các thông
số như lưu lượng xe đi trên đường, vận tốc trung bình các xe, …Vì vậy mà hệ thống nàyđược coi là tiếp cận từ cả hai hướng là theo hướng vi mô và theo hướng vi mô
Hình 1-1: Hệ thống mô phỏng giao thông trực quan
Hình 1-2: Chức năng thống kê của của hệ thống mô phỏng trực quan
Trang 14Hệ thống được xây dựng dựa trên các 3 mô hình cơ bản bao gồm mô hình hệ thống giaothông, mô hình điều khiển sự di chuyển các xe trên đường, mô hình thống kê.
1.2.1 Mô hình hệ thống giao thông
Đây là hệ thống mô tả mạng lưới đường đi Mạng lưới này được xây dựng từ cácthành phần gồm đoạn đường thẳng - Road và vùng đường giao nhau – Junction:
Mỗi đoạn đường thẳng được mô tả bằng hai đoạn thẳng song song với nhau, cáchnhau một khoảng đúng bằng độ rộng của một làn đường dành cho ô tô và có một điểmđầu và một điểm kết thúc Mỗi đoạn đường này đều có một hướng nhất định xác định bởiđiểm đầu và điểm cuối Khi nối các đoạn đường này với nhau theo cùng một hướng ta sẽđược một tuyến đường gấp khúc tùy ý Khi xếp các đoạn đường này song song ta sẽđường một tuyến đường đi thật sự có độ rộng bằng số nguyên lần độ rộng của một lànđường
Mỗi vùng đường giao nhau được mô tả bằng một hình chữ nhật có chiều dài vàchiều rộng bằng số nguyên lần độ rộng của một làn đường, tối đa là gấp 4 lần làn đường.Trên mỗi cạnh của vùng này có các điểm nối Khi nối các đoạn đường nêu trên vào cácđiểm nối này ta sẽ được hệ thống các đường giao nhau Hơn nữa, các vùng giao nhau này
có các thuộc tính giúp mô tả các đèn giao thông, đường ưu tiên, giúp xây dựng các luật điđơn giản trên đưòng
Về mặt giao diện, hệ thống cung cấp công cụ thiết kế một cách trực quan mạng lướigiao thông Về mặt phát triển, nó cung cấp một thư viện lệnh giúp người phát triển có thểthao tác dễ dàng với các thành phần này để tạo ra các mạng lưới giao thông bằng cách lậptrình
1.2.2 Mô hình điều khiển sự di chuyển các xe trên đường
Đây là mô hình giúp tính toán sự di chuyển từng xe tham gia giao thông Mô hìnhnày có các thành phần nhỏ hơn Chúng bao gồm bộ đếm thời gian để thực hiện việc lái xechân thực, thành phần sinh xe ngẫu nhiên tại một đầu vào của hệ thống giao thông, vàthành phần quan trọng của mô hình này là thành phần tính toán sự di chuyển của các xe.Cách thức di chuyển các xe được mô tả như sau:
Trang 15 Trường hợp xe đang đi trên đoạn đường thẳng: Gọi v là vận tốc của xe trênđường, x là khoảng cách với xe gần nhất phía trước, thì vận tốc v sẽ được xácđịnh như sau:
k, nếu v ≥ L giá trị giữa 0 và k, nếu l < v < L
o Nếu có xe ở hướng khác và có độ ưu tiên cao hơn thì giảm tốc độ, nhường
xe ở phía này đi qua
o Nếu có xe ở hướng khác đi tới nhưng xe đang ở đoạn đường ưu tiên caohơn thì xe có thể đi tiếp, nhưng lúc này xe cần điều chỉnh tốc độ để không
va chạm với các xe khác đang nằm trong vùng đường giao nhau này
1.2.3 Mô hình thống kê
Đây là mô hình giúp ghi lại các thông tin của các xe đi trên đường Tại một thờiđiểm trong một chu kỳ nào đó, mô hình này sẽ ghi lại số lượng xe vào và ra khỏi hệthống, số lượng xe đang di chuyển, vận tốc trung bình các xe, … Các thông tin này có thểđược xem là hữu ích để đánh giá mức độ hợp lý của hệ thống giao thông
Đây có thể coi là công cụ khá thích hợp trong việc mô phỏng các hệ thống giaothông đô thị Trong phần tới, chúng tôi sẽ giới thiệu một hệ thống dùng để mô phỏng mộtloại hệ thống giao thông khác, đó là hệ thống mô phỏng giao thông trên đường cao tốc
1.3 Mô phỏng xe thông minh trên đường cao tốc
Đây là một hệ thống mô phỏng giao thông đưa ra bởi Rahul Sukthankar, DeanPomerleau và Charles Thorpe [13] Hệ thống này mang tên Simulated Highways forIntelligent Vehicle Algorithms (viết tắt là SHIVA) và chủ yếu dùng để mô phỏng giaothông trên đường cao tốc ở mức độ vi mô Đường cao tốc thường có độ dài lớn, mật độđèn giao thông là rất ít, và các nhà trong hệ thống này được coi như là không có Tốc độ
Trang 16di chuyển các xe trên đường cao tốc là rất cao, chính vì vậy mà hệ thống được chú trọngvào việc tính toán sự di chuyển quả các xe một cách tiết để đánh giá được mức độ an toàncủa một đường cao tốc.
Hình 1-3: Hệ thống mô phỏng đường cao tốc
Hệ thống chỉ gồm 2 mô hình chính là mô hình mạng lưới đường cao tốc và mô hình
xe cộ
1.3.1 Mô hình mạng lưới đường cao tốc
Mô hình này mô tả một mạng lưới đường cao tốc với các đoạn đường dài ghép nốivới nhau Thành phần cơ bản của mô hình này là các đoạn đường, được gọi làRoadSegment Khác với hệ thống mô phỏng giao thông trực quan của Thomas Fotherby[14], các đoạn đường có hình dạng rất tùy ý, nhưng độ rộng luôn phải bằng số nguyên lần
độ rộng một làn đường được mô tả bằng “lane number” Ngoài ra, nó còn chứa thông tin
mô tả về đoạn bị thu hẹp (RoadSlice), các mối nối để nối nhiều đoạn đường thẳng vớinhau, và tốc độ tối đa các xe khi di chuyển trên đoạn đường đó
Trang 17Hình 1-4: Mô tả cấu tạo đoạn đường cao tốc
Thành phần người lái xe: Đây là thành phần tính toán ra quyết định của người lái
xe Trong một tập lệnh điều khiển được đưa ra, dựa vào các thông tin lấy từthành phần cảm ứng, một thuật toán sẽ được thực thi để tính toán quyết địnhchọn cách điều khiển hợp lý nhất của người lái
Hệ thống cho phép người định nghĩa các loại xe khác nhau như xe tải, xe con, ten-nơ Người sử dụng không chỉ có thể định nghĩa kích thước của xe mà còn có thể mô tả
Trang 18công-các tham số khác như khả năng tăng tốc, giảm tốc, tốc độ đổi hướng, … Việc định nghĩanày có thể thực hiện qua việc chỉnh sửa file cài đặt ( config file ).
1.4 Hệ thống mô phỏng đèn giao thông
Trong mục này, chúng tôi xin giới thiệu về hệ thống mô phỏng đèn giao thông đượcphát triển bởi một số thành viên của trường đại học Utrecht (Hà Lan) [7] Đây là một hệthống khá thông minh trong việc trợ giúp lựa chọn thời gian bật đèn xanh đèn đỏ của đèngiao thông
Về cơ bản đây cũng là một hệthống mô phỏng giao thông vi mô.Tuy nhiên, nó có chức năng thống kêcác thông tin như lượng xe qua lại,vận tốc trung bình các xe Thông tinnày không chỉ mang tính tham khảo,
mà nó còn được sử dụng bên trong
hệ thống để tự động điều chỉnh thờigian bật đèn xanh, đèn đỏ của cácđèn giao thông sao cho hợp lý
Các thành phần chính của hệ thốngnày gồm:
Các làn đường (DriveLane) được mô tả bởi 2 đoạn thẳng song song
Các đoạn đường (Road) được tạo từ 2 làn đường Nó có thêm thông tin về chiều, đầuvào đầu ra dùng để liên kết tạo thành mạng lưới giao thông
Các nút (Node) mô tả các đường giao nhau như ngã tư, ngã ba Đây chính là các ôvuông màu xám trong hình 5 Các nút chứa thông tin về các đầu vào và đầu ra dùng đểnối với các đoạn đường để tạo ra mạng lưới giao thông
Các nút biên (EdgeNode) mô tả các khu vực mà xe cộ xe đi vào và đi ra Đây chính làcác ô vuông màu xám trong hình 5
Hình 1-5: Hệ thống mô phỏng đèn giao thông
Trang 19 Các tín hiệu đèn (Sign) mô tả đèn giao thông Nó chứa một số thông tin dùng tronggiải thuật điều chỉnh thời gian bật đèn xanh, đèn đỏ sao cho hợp lý một cách tự động.
Thành phần xe cộ (Car) đóng vai trò phương tiện tham gia giao thông trong hệ thốngnày Vì hệ thống chỉ tập trung vào cách thức tự động điều chỉnh tín hiệu đèn sao chohợp lý nên cách di chuyển của các xe là khá đơn giản
Trong quá trình mô phỏng, hệ thống thực hiện việc thống kê một số thông tin nhưmật độ xe, lượng xe qua lại, … Các thông tin này được sử dụng làm tham số cho giảithuật điều chỉnh thời gian bật đèn xanh, đèn đỏ
1.5 Kết luận
Chúng tô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, chúng đều là các hệ thống mô phỏng giaothông vi mô, tức là đều cố gắng mô phỏng một cách chi tiết sự di chuyển của các phươngtiệ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ướigiao 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 giaothông Việt Nam do sự phức tạp của mạng lưới giao thông nước ta Một điểm chung nữa làcác phương tiện tham gia giao thông trong các hệ thống này chủ yếu là ô tô, sự di chuyểnkhông quá phức tạp để tính toán
Như đã đề cập, hệ thống giao thông của nước ta khá phức tạp với hệ thống đườngchằng chịt, các phương tiện giao thông nhiều chủng loại, hỗn tạp Thêm vào đó, sự thiếu ýthức của người tham gia giao thông đã làm cho hệ thống giao thông trở nên rất hỗn độn
Vì vậy mà rất khó có thể áp dụng những hệ thống mô phỏng này vào giao thông của nước
ta Do đó, việc xây dựng một hệ thống mô phỏng chi tiết hơn cho giao thông Việt Nam làrất cần thiết
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ạnhviệ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úngtôi đã kết hợp sử dụng 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 hơn với tình hình giao thông của Việt Nam Phương pháp màchúng tôi muốn đề cập ở đây là sử dụng mô hình dựa đa agent Đây là mộ phương pháptiên tiến trong việc mô phỏng các mô hình có sự tương tác giữa cá thể với môi trường vàgiữa các cá thể với nhau Trong chương tiếp theo, chúng tôi sẽ trình bầy kỹ về agent, hệ
Trang 20thống đa agent, phương pháp mô phỏng dựa trên agent và một số ứng dụng của công nghệnày
Trang 21CHƯƠNG 2: MÔ HÌNH DỰA TRÊN AGENT
2.1 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êncứ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ộtkhái niệm được coi là chung nhất cho agent Chúng tôi xin nêu một khái niệm được đưa
ra bởi Wooldridge và Jennings [11]:
“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ụctiê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ờicủa các thuộc tính của chúng
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 địnhcủa chúng [4]
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 hành động có tính đáp ứng mà cáchành động của agent còn hướng đến mục tiêu nào đó Để đạt được mục tiêu, cácagent 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áchành động cần thực hiện chính là lên kế hoạch [6]
Agent có tính chủ động Chúng có khả năng tự đưa ra hành động, hoạt động mộtcá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ênngoà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 [4]
Trang 22Trê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, chúng tôi xin giới thiệu về hệ thống đaagent 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ốngtrong đó có sự có mặt của của nhiều agent trong một môi trường và có sự tương tác lẫnnhau 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ủachú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 đó [9] Các agent có khả năng giao tiếp với cácagent 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 thông được tin gì [15]
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 [9] 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 của và thuộc tính của các agent là 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ácagent 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 trong tay một agent
đứng đầu ở mỗi cấp Ở mô hình tổ chức này, các agent thường tương tác với các agentkhá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ụ [1]
Một ví dụ điển hình về MAS chính là Internet [9] Internet có thể được coi là mộtmạ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
Trang 23nhau 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 tinvớ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 giaothông đóng vai trò môi trường Mỗi người tham gia giao thông trong đó đóng vai trò mộtagent 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ườitham 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 thamgia 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íchhợp
2.2 Mô hình 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ácloạ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ựcthể 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 dể tái tạo hay dự đoán sự hiện diện của những những hiện tượngphứ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 những hiện tượngmang tính vĩ mô Những hiện tượng nổi bật này không thể được giải thích bởi một đơn vị
vi mô đơn lẻ [2]
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) hay ABMS (Agent-Based Modeling and Simulating) nhưng trong khóaluận này, chúng tôi sẽ sử dụng ABM
2.2.2 Sự khác nhau giữa agent và đối tượng
Trang 24Từ khi ra đời cho đến nay, công nghệ hướng đối tượng luôn là một phương pháphữu hiệu trong công nghiệp sản xuất phần mềm So với phương pháp xây dựng mộtchươ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ênagent đã 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 nó sovới phương pháp hướng đối tượng
Hình 2-1 [3] có thể mô tả được phần nào được sự ưu việtcủ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 của chỉ được
thực thi khi các thực thể bên ngoài gửi cho nó một thông
điệp nào đó Trong khi đó, agent có tính chủ động hay tự
Agent có mục tiêu, mục đích, nó có có khả năng lập kế hoạch hay phối hợp với cácagent khác để có thể đạt được mục tiêu đó
2.2.3 Một số ứng dụng của ABM
ABM được sử dụng từ những giữa thập kỷ 90 để giải quyết rất nhiều vấn đề vềthương mại và công nghệ Các ví dụ điển hình về ứng dụng của ABM gồm tối ưu dâychuyền cung ứng, mô hình hành vi của người tiêu thụ, các hiệu ứng xã hội, tính toán phântán, quản lý lực lượng lao động và quản lý hồ sơ Một số ABM được dùng để phân tích sựlan tràn của dịch bệnh, sự nguy hiểm của vũ khí sinh học, sự phát triển và suy tàn củanhững nền văn minh cổ đại hay nghiên cứu về sự viêm nhiễm và hệ miễn dịch của conngười Một số ABM được sử dụng để phân tích sự tắc nghẽn của giao thông
Trong những ứng dụng của ABM, hệ thống được quan tâm sẽ được mô phỏng bằng
Hình 2-1: Ưu việt của
agent so với đối tượng
Trang 25thể được sử dụng để kiểm tra xem những thay đổi về hành vi của agent sẽ thay đổi nhưthế nào đến toàn bộ hệ thống.
2.2.4 Cách xây dựng một ABM
Ở mức chung nhất, cách xây dựng một ABM cũng tương tự như cách xây dựng các
mô hình khác Điều cần làm trước tiên là cần xác định được mục đích của mô hình cầnxây dựng Tiếp theo, phân tích nghiên cứu về hệ thống, xác định các thành phần và mốiliên hệ giữa chúng Sau đó, áp dụng mô hình để thực hiện những thí nghiệm nếu-thì đơngiản Cuối cùng, cần đánh giá được sự hữu dụng của mô hình qua kết quả và việc so sánh
nó với các mô hình khác
Sau đây là một số bước cần thực hiện khi xây dựng một ABM [4]:
Xác định agent: Xác định loại thực thể của agent, các thuộc tính và các hành vi củachúng
Định nghĩa môi trường mà agent sẽ “sống” trong đó
Xác định các phương thức mà các thuộc tính của agent được cập nhật trong việcphản ứng lại sự tương tác giữa agent-agent và tương tác agent-môi trường
Thêm vào các phương thức điểu khiển việc agent sẽ tương tác với agent nào, khinào nó tương tác, và nó sẽ tương tác như thế nào trong suốt quá trình mô phỏng
Thực thi mô hình
2.3 Kết luận
Trên đây, chúng tôi đã trình bầy những khái niệm về cơ bản của agent và hệ thống
đa agent cũng như sự ưu việt của nó so với phương pháp hướng đối tượng Chương nàycũng đã nêu ra phương pháp mô phỏng dựa trên trên agent Đây là một phương pháp pháptiên tiến trong lĩnh vực mô phỏng những hệ thống phức tạp trong thế giới thực, điều đóthể hiện qua những ứng dụng của nó trong thực tiễn
Ở chương tiếp theo, chúng tôi xin trình bầy về chi tiết về hệ thống mô phỏng giaothông mà chúng tôi đã nghiên cứu và xây dựng Đây cũng là hệ thống áp dụng mô hìnhdựa trên agent
Trang 26CHƯƠNG 3 HỆ THỐNG MÔ PHỎNG GIAO THÔNG VIỆT
NAM SỬ DỤNG MÔ HÌNH DỰA TRÊN AGENT
3.1 Một số đặc điểm của giao thông Việt Nam
Hệ thống giao thông nước ta, như đã đề cập, là tương đối phức tạp Sự phức tạp nàyđến từ nhiều yếu tố khác nhau Một mặt, cơ sở hạ tầng giao thông nước ta còn chưa pháttriển, trong khi lượng phương tiện tham gia giao thông ngày càng tăng với mức độ chóngmặt Mặt khác, sự thiếu ý thức của người dân khi tham gia giao thông cũng làm cho hệthống giao thông trở nên hỗn độn
Hệ thống giao thông trước hết gồm các hệ thống đường xá, hệ thống đèn giao thông,
và các biển báo Hầu hết các đường xá ở nước ta nhỏ hẹp, đặc biệt là trong các thành thị.Nhiều ngã ba, ngã tư không có đèn giao thông, hay có đèn giao thông nhưng thời gian bậtđèn xanh đèn đỏ chưa hợp lý Nhiều tuyến đường một chiều, hai chiều có giải phân cáchkhông phù hợp tạo ra những hành vi rẽ trái, rẽ phải hoặc quay đầu không đúng của ngườitham gia giao thông
Ở nước ta hiện nay có nhiều loại phương tiện giao thông khác như gồm xe đạp, xemáy, ô tô, xe buýt, thậm chí cả các phương tiện không đạt tiêu chuẩn an toàn như xe bagác, xích lô Lượng phương tiện tham gia giao thông là rất lớn, trong khi hệ thống đường
xá nhỏ hẹp nên thường xảy ra nhiều ách tách, đặc biệt là trong các giờ cao điểm
Một trong những yếu tố quan trọng ảnh hưởng tới giao thông của nước ta chính làyếu tố con người Do ý thức chưa cao, cộng thêm sự thiếu hiểu biết về các tín hiệu, biểnbáo, nên sự di chuyển của người tham gia giao thông là rất tùy tiện Điều đó càng làmtăng tính hỗn độn của giao thông Việt Nam
Từ những đánh giá trên về thực trạng giao thông của nước ta, chúng tôi đã đưa ranhững ý tưởng xây hệ thống mô phỏng sao cho dựng phù hợp Do hệ thống áp dụng môhình dựa trên agent trong việc mô phỏng nên việc đầu tiên cần làm là xác định các yếu tốmôi trường, xác định các agent trong một hệ thống giao thông Ở phần tiếp theo, chúng tôixin trình bầy về các ý tưởng về xây dựng hệ thống, gồm hệ thống đường xá – đóng vai tròmôi trường và các ý tưởng xây dựng agent đóng vai trò người tham gia giao thông
Trang 27Trước khi đi vào trình bầy chi tiết thiết kế các thành phần của hệ thống mô phỏng,phần này sẽ đưa ra các ý tưởng về cách thức xây dựng hệ thống Đầu tiên chúng tôi xinđưa ra ý tưởng về xây dựng hệ thống đường xá, đóng vai trò môi trường trong hệ thốnggiao thông Tiếp theo sẽ là mô tả chi tiết các ý tưởng về xây dựng agent đóng vai tròngười tham gia giao thông Các ý tưởng xây dựng agent sẽ bao gồm xây dựng các hành
vi, các thuộc tính và mục tiêu của agent Ở cuối phần này, chúng tôi xin đưa ra một số ví
dụ minh họa về sự ảnh hưởng của các thuộc tính ảnh lên hành vi của agent trong quá trình
di chuyển trong hệ thống giao thông
3.2.1 Xây dựng hệ thống đường xá
Ở chương 1, chúng tôi đã trình bầy về một số hệ thống mô phỏng giao thông trướcđây Đây đều là những hệ thống mô phỏng cho phép tạo ra hệ thống đường từ các thànhphần cơ bản Tuy nhiên, như đã đề cập, hệ thống giao thông Việt Nam khá phức tạp,không theo một quy luật nào Việc xây dựng hệ thống đường xá của Việt Nam bằng cáccông cụ mô phỏng này là rất khó khăn Vì vậy, một thành phần quan trọng cần xây dựngtrong hệ thống mô phỏng giao thông Việt Nam chính là hệ thống đường xá Hệ thốngđường xá đóng vai trò môi trường trong hệ thống mô phỏng giao thông sử dụng mô hìnhdựa trên agent (ABM) Chúng tôi cũng đã cố gắng xây dựng các thành phần cơ bản để tạonên đường xá Các thành phần này sẽ giúp tạo ra nhiều mô hình đường xa khác nhau, vìthế mà ta có thể mô phỏng được nhiều hệ thống giao thông phức tạp trong thực tế
Hình 3-1: Chia một ngã tư gồm nhiều tuyến đường thành các vùng đơn giản
Trang 28Với một hệ thống giao thông phức tạp gồm nhiều tuyến đường, ta có thể chia chúngthành các vùng, các đoạn đường nhỏ hơn Hình 3-1 minh họa việc chia một ngã tư gồmnhiều tuyến đường giao nhau thành các vùng đơn giản hơn Với các vùng này, ta thấy támvùng xung quanh chỉ gồm một tuyến đường duy nhất, chỉ có duy nhất vùng ở giữa là chứanhiều tuyến đường khác nhau từ các hướng đến tới các hướng đi khác nhau.
Hình 3-2: Vùng ở giữa ngã tư chứa nhiều tuyến đường khác nhau
Dựa vào ý tưởng này, chúng tôi đã xây dựng hệ thống đường xá từ các các thành
phần đơn giản là vùng đường và các đoạn đường trong mỗi vùng Đây có thể coi là thành
phân cơ bản nhất của hệ thống đường xá cũng như hệ thống mô phỏng giao thông
Trang 29Mỗi vùng sẽ có các lối vào và các lối ra Giữa mỗi lối vào và một lối ra của mộtvùng đường sẽ có một đoạn đường nào đó Hướng của đoạn đường là hướng từ lối vàođến lối ra (Hình 3-3) Khi ghép nhiều vùng đường với nhau, các đoạn đường trên cácvùng sẽ tạo với nhau thành các tuyến đường Hình 3-2 mô tả các tuyến đường khác nhaukhi ghép vùng ở giữa ngã tư và các vùng chứa đoạn đường thẳng Các agent đóng vai tròngười lái xe trên đường có thể chọn cho mình một tuyến đường đi gồm nhiều đoạn đườngnối tiếp nhau, từ vùng này sang vùng kia để có thể đến nơi mà mình muốn đến.
Trang 30Hình 3-4: 16 đoạn đường ở vùng giữa ngã tư
Trong ngã tư ở hình 3-3, vùng ở giữa sẽ có 4 lối vào và 4 lối ra, vì vậy số đoạnđường ở vùng giữa ngã tư này là 16 đoạn Còn với các vùng xung quanh, mỗi vùng chỉ cómột lối vào và một lối ra nên chỉ có một đoạn đường trên các vùng này Hình 3-4 mô tả
16 đoạn đường ở vùng giữa của ngã tư Cần lưu ý dẫy hình cuối cùng, lối đi quay đầuđược tạo từ 2 đoạn đường nối tiếp nhau Như vậy trong mỗi vùng, các đoạn đường giữamột lối vào và một lối ra không nhất thiết là duy nhất một đoạn đường mà nó có thể làmột chuỗi các đoạn đường nối tiếp nhau Điều này là rất hữu ích vì nó có thể giúp tạo racác vùng đường tùy ý Chẳng hạn như ta có thể thiết kế một vùng vòng xuyến bằng cáchxấp xỉ đoạn đường cong của vòng xuyến thành các đoạn đường thẳng ngắn nối tiếp nhau
Từ các thành phần cơ bản như vùng đường, các đoạn đường trong mỗi vùng, ta cóthể xây dựng đượng nhiều hệ thống giao thông phong phú, đa dạng và phức tạp trong thực
tế Cách thiết kế các thành phần đường xá mà chúng tôi đưa ra không chỉ giúp tạo ra mộtcách linh động các hệ thống giao thông mà mà còn có tác dụng nâng cao hiệu quả trongviệc tính toán cách lái xe của các agent đóng vai trò người tham gia giao thông Trước khi
mô tả tác dụng này ở phần mô tả các thuật toán, chúng tôi xin đưa ra các ý tưởng về xâydựng các agent đóng vai trò người tham gia giao thông ở phần tiếp theo
3.2.2 Xây dựng agent đóng vai trò người tham gia giao thông
Phần trước đã đề cập đến cách thức thiết kế đường xá nhằm tạo ra một hệ thống giaothông bất kỳ Dù hệ thống giao thông này có phực tạp cỡ nào, ta luôn có thể tìm được một