Inspiration

When taxis are autonomous they can be programmed in a way that best solves a specifc problem. For example, they can be optimized for battery life, or for passenger experience, or for minimum pollution. The options are probably not endless, but definitely many, which we found both really challenging and exciting throughout this hackathon.

What it does

It simulates autonomous taxi behaviour when a number of bookings happen at the same time. Then it calculates performance through a set of metrics, such as distance traveled empty, time traveled empty & time spent charging.

There is a simple UI which allows the user to input the number of taxis & the number of simultaneous bookings.

How we built it

HTML, Javascript, HERE Api, Google Api, example Sixt vehicle API

Challenges we ran into

  • Routing / maps apis request limits.
  • Lack of experience with HERE api + its smaller ecosystem compared to the wider used Google APIs- we chose it however for its unique(maybe?) EV Charge Points API (https://developer.here.com/documentation/charging-stations/dev_guide/topics/overview.html) which we found really cool even though in the end we didn't end up using it, mainly due to time constraints.
  • Not having the real time location of a taxi - we 1st thought about simulating this "nicely", by considering the legs of a journey and their speed categories (https://developer.here.com/documentation/geocoder/dev_guide/topics/resource-type-speed-category.html), but rather quickly realised that that's a long task in itself, and decided to implement a workaround which is described more in depth in a code comment. But in short we made use of predicted journey duration. We also chose to not simulate it because of the assumption that real cards broadcast their current location via GPS services.

Accomplishments that we're proud of

  • Everything worked out in the end :D

What we learned

  • That the task is even more complex than we thought, as there are many variables and edge cases to consider.
  • How to use the HERE / Google APIs.
  • That we should have done more error handling from the start.

What's next for SimUCity

  • Real time tracking
  • More features
Share this project:

Updates