\documentclass[12pt]{article} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{lmodern} \usepackage[margin=1in]{geometry}
\title{Nova: Project Submission} \date{}
\begin{document}
\maketitle
\section*{Inspiration} The hardest problem wasn't the routing or the graph --- it was the decision policy itself. Our first instinct, "accept if Score > 0," turned out to be statistically indistinguishable from the novice agent that accepts everything. That forced us back to first principles: a reservation-wage threshold based on net MXN/hour, relaxed when a courier is behind pace, which is what actually separated the two agents' outcomes.
Keeping simulated time honest was another one --- the world clock runs continuously from process start regardless of whether anyone has started a shift, which meant order generation, traffic, and courier movement all had to be anchored to simulated elapsed minutes rather than wall-clock polling frequency, or the simulation's behavior would change depending on how often the frontend happened to refresh.
We also had to be disciplined about where the two representations of the Score formula (Python and SQL) could silently diverge, and about dependency pinning --- ortools had to be locked to a specific version because newer releases pulled in a protobuf/numpy combination that broke OSMnx and the Gemini SDK.
\section*{What it does} % Add your content here
\section*{How we built it} % Add your content here
\section*{Challenges we ran into} % Add your content here
\section*{Accomplishments that we're proud of} % Add your content here
\section*{What we learned} The biggest lesson was that "smart" isn't a vibe --- it only means something when you can measure it against a naive baseline under identical conditions. Running two real agents over the same order stream, rather than eyeballing one agent's output, is what turned Nova from a demo into evidence. We also learned a lot about the gap between an ORM's defaults and the raw SQL a live dashboard actually runs against --- every default has to be declared on both sides, or the numbers quietly disagree.
\section*{What's next for Nova} % Add your content here
\end{document}
Built With
- maximize
- optimize
- real-time-data
- web



Log in or sign up for Devpost to join the conversation.