Từ ngã tư giao lộ trên được mô phỏng hóa trên, ta dễ dàng xác định bảng các hướng không gây xung đột với một hướng thứ i đang được chọn bằng quy định luật giao thông đường bộ của Việt Nam như sau:
i Hướng được
chọn (𝑑𝑖) Hướng không gây xung đột (𝐷𝑐𝑠𝑖 )
1 2 𝑑1 𝑑2 {𝑑2, 𝑑3, 𝑑7, 𝑑8, 𝑑9, 𝑑12} {𝑑1, 𝑑3, 𝑑7, 𝑑8, 𝑑9, 𝑑12}
3 4 5 6 7 8 9 10 11 12 𝑑3 𝑑4 𝑑5 𝑑6 𝑑7 𝑑8 𝑑9 𝑑10 𝑑11 𝑑12 {𝑑1, 𝑑2, 𝑑4, 𝑑5, 𝑑6, 𝑑7, 𝑑8, 𝑑9, 𝑑10, 𝑑11, 𝑑12} {𝑑3, 𝑑5, 𝑑6, 𝑑10, 𝑑11, 𝑑12} {𝑑3, 𝑑4, 𝑑6, 𝑑10, 𝑑11, 𝑑12} {𝑑3, 𝑑4, 𝑑5, 𝑑10, 𝑑11, 𝑑12} {𝑑1, 𝑑2, 𝑑3, 𝑑8, 𝑑9, 𝑑12} {𝑑1, 𝑑2, 𝑑3, 𝑑7, 𝑑9, 𝑑12} {𝑑1, 𝑑2, 𝑑3, 𝑑7, 𝑑8, 𝑑12} {𝑑3, 𝑑4, 𝑑5, 𝑑6, 𝑑11, 𝑑12} {𝑑3, 𝑑4, 𝑑5, 𝑑6, 𝑑10, 𝑑12} {𝑑1, 𝑑2, 𝑑3, 𝑑4, 𝑑5, 𝑑6, 𝑑7, 𝑑8, 𝑑9, 𝑑10, 𝑑11}
Bảng 4.1. Hướng đi không gây xung đột (ngã tư thực nghiệm), 𝑫𝒄𝒔𝒊
Giả sử ở trạng thái ban đầu, mô đun phát hiện hướng đi cho ta tập hợp các hướng đi đã được sắp theo thứ tự ưu tiên giảm dần tại ngã tư là,
𝐷 = {𝑑5, 𝑑2, 𝑑7, 𝑑11, 𝑑1, 𝑑4, 𝑑10, 𝑑9, 𝑑8, 𝑑6} (1)
Tập các hướng đang được di chuyển và hướng cấm,
𝐷𝑛𝑜𝑤𝑐𝑢𝑟𝑟𝑒𝑛𝑡 = {𝑑1, 𝑑2, 𝑑9, 𝑑6};
𝐷𝑝𝑟𝑜𝑐𝑢𝑟𝑟𝑒𝑛𝑡 = {𝑑4, 𝑑5, 𝑑7, 𝑑8, 𝑑10, 𝑑11}
Hệ thống đèn tín hiệu hiện tại đáp ứng các điều kiện (1) và (2) cho thời gian 𝑇𝑟 và 𝑇𝑔 .
4.3.2. Áp dụng thuật toán tìm hướng đi tiếp theo theo thứ tự ưu tiên:
Từ giả thuyết ban đầu, ta có tập các hướng đi đã được sắp theo thứ tự ưu tiên giảm dần tại ngã tư là 𝐷 = {𝑑5, 𝑑2, 𝑑7, 𝑑11, 𝑑1, 𝑑4, 𝑑10, 𝑑9, 𝑑8, 𝑑6}
và hệ thống đèn tín hiệu hiện tại đáp ứng các điều kiện (1) và (2) cho thời gian 𝑇𝑟 và 𝑇𝑔 . Do đó,
Hướng thứ nhất được đi: 𝑑𝑝𝑟1 ← 𝑑5 (𝑑5 là hướng có thứ tự ưu tiên cao nhất của D).
Hướng thứ hai được đi: 𝑑𝑝𝑟2
Ta có 𝐷𝑐𝑠5 = {𝑑3, 𝑑4, 𝑑6, 𝑑10, 𝑑11, 𝑑12}
⟹ 𝐷𝑐𝑠𝑝𝑟1 = 𝐷𝑐𝑠0 ∩ 𝐷𝑐𝑠5 = {𝑑11, 𝑑4, 𝑑10, 𝑑6} ≠ ∅
Do đó 𝑑𝑝𝑟2 ← 𝑑11
Hướng thứ ba được đi: 𝑑𝑝𝑟3
Ta có 𝐷𝑐𝑠11 = {𝑑3, 𝑑4, 𝑑5, 𝑑6, 𝑑10, 𝑑12}
⟹ 𝐷𝑐𝑠𝑝𝑟2 = 𝐷𝑐𝑠𝑝𝑟1 ∩ 𝐷𝑐𝑠11 = {𝑑4, 𝑑10, 𝑑6} ≠ ∅
Do đó: 𝑑𝑝𝑟3 ← 𝑑4
Hướng thứ tư được đi: 𝑑𝑝𝑟4
Ta có 𝐷𝑐𝑠4 = {𝑑3, 𝑑5, 𝑑6, 𝑑10, 𝑑11, 𝑑12}
⟹ 𝐷𝑐𝑠𝑝𝑟3 = 𝐷𝑐𝑠𝑝𝑟2 ∩ 𝐷𝑐𝑠4 = {𝑑10, 𝑑6} ≠ ∅
Do đó: 𝑑𝑝𝑟4 ← 𝑑10
Hướng thứ năm được đi: 𝑑𝑝𝑟5
Ta có 𝐷𝑐𝑠10 = {𝑑3, 𝑑4, 𝑑5, 𝑑6, 𝑑11, 𝑑12}
⟹ 𝐷𝑐𝑠𝑝𝑟4 = 𝐷𝑐𝑠𝑝𝑟3 ∩ 𝐷𝑐𝑠10 = {𝑑6} ≠ ∅
Do đó: 𝑑𝑝𝑟5 ← 𝑑6
Hướng thứ sáu được đi: 𝑑𝑝𝑟6
Ta có 𝐷𝑐𝑠10 = {𝑑3, 𝑑4, 𝑑5, 𝑑10, 𝑑11, 𝑑12}
⟹ 𝐷𝑐𝑠𝑝𝑟5 = 𝐷𝑐𝑠𝑝𝑟4 ∩ 𝐷𝑐𝑠6 = ∅ ⟹ Dừng
𝐷𝑟𝑜𝑤𝑛𝑒𝑤 = {𝑑5, 𝑑11, 𝑑4, 𝑑10, 𝑑6} 𝐷𝑝𝑟𝑜𝑛𝑒𝑤 = {𝑑2, 𝑑7, 𝑑1, 𝑑9, 𝑑8}
Áp dụng: Từ (2) và kết quả trên ta có: - Các hướng bảo toàn đèn xanh:
𝐷𝑟𝑜𝑤𝑐𝑢𝑟𝑒𝑛𝑡 ∩ 𝐷𝑟𝑜𝑤𝑛𝑒𝑤 = {𝑑6}
- Các hướng bảo toàn đèn đỏ:
𝐷𝑝𝑟𝑜𝑐𝑢𝑟𝑒𝑛𝑡 ∩ 𝐷𝑝𝑟𝑜𝑛𝑒𝑤 = {𝑑7, 𝑑8}
- Các hướng chuyển từ đèn đỏ sang đèn xanh:
𝐷𝑝𝑟𝑜𝑐𝑢𝑟𝑒𝑛𝑡 ∩ 𝐷𝑟𝑜𝑤𝑛𝑒𝑤 = {𝑑4, 𝑑5, 𝑑10, 𝑑11}
- Các hướng chuyển từ đèn xanh sang đèn vàng, rồi sang đèn đỏ:
𝐷𝑟𝑜𝑤𝑐𝑢𝑟𝑒𝑛𝑡 ∩ 𝐷𝑝𝑟𝑜𝑛𝑒𝑤 = {𝑑1, 𝑑2, 𝑑9}
4.4. Chương trình html + Javascript mô phỏng giao lộ thực nghiệm.
Tương tự chương trình mô phỏng ngã tư giao lộ trong bài toán mô hình trên, Chương trình mô phỏng ngã tư đường 3/2 và đường Lý thường kiệt được lập trình mô phỏng bằng html + Javascipt trong đó, các hướng được đi qua ngã tư được thể hiện bằng các đèn tín hiệu màu xanh lá và mũi tên màu xanh xá trên giao lộ mô phỏng; còn các hướng cấm (hướng không được đi) thể hiện bằng các đèn tín hiệu màu đỏ (không thể hiện mũi tên di chuyển trong mô phỏng). Bên cạnh đó, cũng như các hệ thống đèn hiện tại, để chuyển hướng điều khiển từ đèn xanh (được đi) sang đèn đỏ (không được đi) phần mềm sẽ thể hiện 3 giây đèn vàng nhằm báo hiệu cho người tham gia giao thông theo luật định.