Introduzione
Questo programmino è il risultato di alcune curiosità che mi sono venute durante le ore e ore passate alla guida nel traffico.
Per esempio: "Perché quando si guida lungo una autostrada molto trafficata, a volte si incontrano delle code senza un'apparente causa?" Oppure: "Come mai si verifica che lungo una coda molto lenta si alternano continuamente momenti di breve marcia ad altri di stop completo, ottenendo quindi un procedere a singhiozzo?" E ancora: "Qual è la reale efficacia delle rotonde che vanno tanto di moda ultimamente?"
Ho pensato quindi di scrivere un piccolo software per cercare di simulare quello che avviene lungo una strada, o presso un incrocio, in condizioni di traffico critiche.
Se vuoi saltare direttamente a vedere i risultati delle simulazioni vai alla pagina dei Risultati.
Nella simulazione possono essere presenti i seguenti oggetti:
- strade a con una sola corsia per ciascun senso di marcia;
- incroci semplici a 4 o 3 strade;
- incroci con rotatorie;
- semafori;
- limitazioni di velocità in determinati tratti stradali; queste limitazione possono essere rimosse in tempo reale per simulare la temporanea presenza di cause di rallentamenti.
Vengono poi simulati i veicoli che percorrono le strade i base a criteri di guida spiegati nella pagina Principi di funzionamento.
Il comportamento dei conducenti è simulato in base ad alcune ipotesi che sono spiegate in dettaglio nella pagina Ipotesi.
Sebbene lo sviluppo del programma sia solo in una fase preliminare, è già possibile studiare alcune situazioni realistiche con dei risultati, a volte, sorprendenti, e che sono mostrati alla pagina Risultati. E' possibile costruire un incrocio in diversi modi, per es. semplice, con semaforo o con rotatoria, e studiare contemporamente il comportamento e i tempi di percorrenza di cascuno scenario.a
Il programma è stato scritto, per puro caso, in Java. Quindi per girare ha bisogno che sul computer sia stato istallato Java, che può essere preso gratuitamente dal sito www.java.com. Non è escluso che in futuro venga convertito in C/C++ per eventualmente accelerare la velocità di esecuzione.
La mia intenzione è di fare in modo che questo programma diventi abbastanza aperto e facile da usare e configurare, in modo che chiunque possa simulare la situazione che più gli interessa. Per quanto riguarda la roadmap vedere la pagina Sviluppi.
pagina successiva: Istruzioni e principi di funzionamento.