Inspiration

Drew, one of our team members, lives near an intersection which has a long delayed light for one road, and which only turns green for a very short time. He felt that this system could be optimized. With an interest in genetic algorithms, and having created a few in the past, Drew worked to create an idea where we could simulate improved traffic. The rest of us, having encountered this particular issue on the way to Drew's house and other intersections, felt that this was a useful idea with many practical applications to making car travel more smooth and enjoyable.

What it does

Our program simulates car travel on multiple roads, each of which has multiple lanes in different directions. Due to time constraints, we were unable to complete the traffic control system, but we were able to finish graphically representing the complex road/lane system and multiple cars travelling.

How I built it

We used Java as the programming language, and Netbeans as the IDE, since we learned about it and used it in school. Using GitHub to file-share, we shared our work as we each improved a different section of the program.

Challenges I ran into

We had issues with our first file-sharing idea, a local area network centered around a router. Due to technical difficulties, we instead used GitHub. For the program, our main difficulty was how we would represent the lanes and intersections. We eventually decided on a road system that would contain different intersections to express its length and relative position.

Accomplishments that I'm proud of

We successfully represented multiple roads, each of which had multiple lanes and multiple cars on it which could travel in mulitple directions with turning capabilities. We also created a robust filetype, the roadmap (.RDM), which contained pertinent information about each road that made the graphical representation possible.

What I learned

We learned how to successfully use GitHub among a medium-sized team of four people, which is a skill that can be translated to more easily work with larger groups on bigger projects. In addition, we learned about many of the facets of Java's GUI and about creating our own filetype.

What's next for Traffic Simulator

We plan on implementing a genetic algorithm to efficiently optimize traffic control for multiple intersections in an area of a city to help make car travel more smooth.

Built With

Share this project:

Updates

Submission history