Inspiration

A key characteristic of any self respecting computer scientist is a desire to avoid the outdoors at all costs. (Kidding about that - mostly. We all greatly would like to avoid the cold weather of Ithaca winters.)

What it does

Inneroute answers the question "in or out?" with unequivocally in. Need to map your walk to your class on campus? It will give you the best route that avoids as much walking outdoors as possible. Be ready to enjoy the walk from one end of Duffield to the far end of Rhodes without having to step once outside into the cold.

How we built it

We built both client and server side applications using Javascript. Our routing system uses Google Directions API to map the unavoidable outdoor segments of most walks, and our own custom graph searching algorithms to create indoor paths that give users precise information as to how to get from one end of a building to the other, from every turn they'll make to landmarks they'll pass by.

Challenges we ran into

Routing successfully through Cornell buildings is predicated on knowing the exact ins and outs of Cornell buildings. This meant spending a good chunk of time wandering the halls of campus and then reconstructing exactly how entrances and exits are connected to each other.

Accomplishments that we're proud of

We're proud of designing a system to build graphs representing indoor spaces that allows us to precisely route users between all 14 entrances within the Duffield-Upson-Rhodes complex. A complexity we spent a significant amount of time on was integrating our own indoor mapping system with Google's APIs to allow us to generate routes that cross between indoor and outdoor spaces seamlessly.

What we learned

We learned that Duffield has 14 entrances. And that algorithms are hard. But also incredibly fulfilling. Also don't let all your phones die at 5 in the morning before you've taken a screenshot of your app.

What's next for Inneroute

We would like to continue mapping more of campus so we can be helpful beyond just Feeney Way.

Share this project:

Updates