Inspiration
As someone who does olympiad mathematics, I’ve spent hours creating a single geometry diagram in Asymptote. The mathematics itself can be challenging enough, but turning that idea into precise, publication-quality code is often tedious. I wanted to build a tool that lets mathematicians focus on the problem instead of spending hours manually drawing it.
What it does
GeoEngine transforms mathematical descriptions and code into accurate, geometry diagrams. Users can create complex diagrams with points, lines, circles, intersections, transformations, This also helps makes the process faster and more accessible than writing every line of Asymptote manually, which takes more time and effort.
How we built it
We built GeoEngine with a React and TypeScript frontend, a custom mathematical parsing system, and computational geometry logic to interpret mathematical constructions and generate visualizations that are precise. We also integrated AI to help translate natural-language descriptions into structured geometric constructions that GeoEngine can understand.
Challenges we ran into
One of our biggest challenges was making natural language reliable enough for mathematical geometry. Small misunderstandings can change a diagram, so we had to carefully structure how mathematical instructions were interpreted to the AI. We also had to handle geometric dependencies, such as ensuring that points, intersections, and constructions were created in the correct order, which was a huge issue within the code.
Accomplishments that we're proud of
We are proud to have built a working system that allows for mathematical ideas and technical diagram creation. GeoEngine can turn complex geometric instructions into visualizations, which saves mathematicians hours of repetitive coding and making advanced diagram creation much more accessible.
What we learned
We learned that building mathematical software requires more than just implementing formulas. Precision, structure, and the relationships between geometric objects are all incredibly important. We also learned how to combine AI with deterministic computational geometry, using AI to interpret intent while relying on code to produce accurate results.
What's next for GeoEngine
Next, we want to make GeoEngine even more powerful by improving natural-language understanding, supporting more advanced geometric constructions, and adding better editing and collaboration tools. Our long-term goal is to make creating complex mathematical diagrams as simple as describing the mathematics behind them.
Built With
- ai
- asymptote
- computational
- css
- geometry
- python
- react
- tailwind
- typescript
- vite
Log in or sign up for Devpost to join the conversation.