MichaelDrogalis / rush-hour

Docs for the Rush Hour platform.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

The Rush Hour Platform

What is Rush Hour?

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.

Architecture

Over to Tumblr for that.

Live demo

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.

Repositories

Installation

$ 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

Customizing the Sim

$ 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.

Exploring the Sim

  • init.clj starts the app up.
  • core.clj contains adjustable properties.

About

Docs for the Rush Hour platform.

License:Eclipse Public License 1.0