Rush Hour is a highly realistic traffic simulation platform. It exposes facilities to describe the rules of traffic in an all-data medium, and renders the simulation on a dynamic heatmap.
Over to Tumblr for that.
My little EC2 micro instance couldn't take all the traffic it was getting (pun intended). There's directions (ha, another pun) for running it locally below.
$ sudo apt-get install openjdk-7-jre
$ sudo apt-get install leiningen
$ sudo apt-get install memcached
$ git clone https://github.com/MichaelDrogalis/traffic-sim.git
$ cd traffic-sim
$ lein midje # sanity check
$ lein run
$ git clone https://github.com/MichaelDrogalis/triangulate.git
$ cd triangulate
$ lein run
$ git clone https://github.com/MichaelDrogalis/asphalt.git
$ cd asphalt
$ lein cljsbuild once
$ lein run
$ cd asphalt
$ firefox resources/index.html
$ emacs -nw resources/intersection-schema.edn # defines lanes, lights, traffic rules
$ emacs -nw resources/connections-schema.edn # connects intersection lanes together
$ emacs -nw resources/weighted-directions.edn # summative probability of driving on each lane.
See the tests for examples of writing rules, lights, and intersections.
init.clj
starts the app up.core.clj
contains adjustable properties.