Adding AI to Aviation Infinity: Adaptive Learning Engines
Aviation Infinity was built to help pilots pass their exams. Adding AI-powered adaptive learning transformed it from a question bank into a personal flight instructor.

Aviation Infinity started as a straightforward pilot exam preparation platform. Students study questions, take mock exams, track their progress. Simple. Effective. But the same experience for every student, regardless of whether they were struggling with meteorology or acing navigation.
Over the past few months, I've been adding AI-powered adaptive learning to the platform, and it has fundamentally changed what Aviation Infinity is. It is no longer just a question bank. It is starting to feel like a personal flight instructor that knows each student's strengths, weaknesses, and learning patterns.
Why Adaptive Learning Matters for Pilots
Pilot exam preparation is unique. The exam syllabus is vast -- covering everything from aerodynamics and meteorology to air law and human performance. Students typically study for months. The stakes are high. Failing means delays, additional costs, and the frustration of knowing you weren't ready.
The traditional approach is to study everything equally. Work through the question bank topic by topic, take mock exams, review what you got wrong. This is how most exam prep platforms work, including the old version of Aviation Infinity.
The problem is that this approach wastes time. A student who understands navigation perfectly doesn't need to spend hours reviewing navigation questions. That time should be spent on meteorology, where they're consistently getting questions wrong. But without adaptive learning, the platform can't make this distinction.
The Adaptive Learning Architecture
The adaptive learning system I built has three components:
1. The Knowledge Model
Every student has a knowledge model -- a data structure that represents their understanding of each topic in the exam syllabus. The model is updated every time a student answers a question.
The model tracks more than just right and wrong. It tracks:
- Accuracy per topic. What percentage of questions does the student get right in each topic area?
- Trend. Is the student improving or declining in each topic?
- Confidence calibration. When the student feels confident, are they usually right? Some students are overconfident in weak areas and underconfident in strong areas.
- Time patterns. How long does the student spend on questions in each topic? Longer times often indicate uncertainty even when the answer is correct.
- Decay. How quickly does the student forget material they previously knew? This is modeled using a spaced repetition curve.
This knowledge model is stored in MongoDB and updated in real-time as the student interacts with the platform.
2. The Question Selection Engine
When a student starts a study session, the question selection engine uses their knowledge model to choose the optimal set of questions. The algorithm balances several objectives:
- Focus on weakness. Prioritize questions in topics where the student is weakest.
- Prevent forgetting. Include questions from topics the student has not reviewed recently, even if they were previously strong.
- Maintain motivation. Do not make every session a slog through the hardest material. Mix in some questions the student is likely to get right to maintain confidence and motivation.
- Cover the syllabus. Ensure that over time, the student covers all required topics, even if some topics don't seem like priorities based on current performance.
The balance between these objectives is controlled by weights that I've tuned based on student performance data. Getting this balance right has been the hardest part of the project. Too much focus on weakness and students feel defeated. Too much focus on strength and they aren't challenged enough.
3. The Explanation Engine
This is where LLMs come in. When a student gets a question wrong, the old Aviation Infinity showed a static, pre-written explanation. The new system generates a personalized explanation using GPT.
The explanation engine receives the question, the correct answer, the student's answer, the student's knowledge model for the relevant topic, and any previous explanations the student has seen for similar questions. It then generates an explanation that's tailored to the student's specific misconception.
If a student consistently confuses two similar concepts -- say, QNH and QFE altimeter settings -- the explanation addresses that specific confusion directly. It doesn't just explain why the correct answer is right. It explains why the student's answer is wrong in a way that addresses their particular pattern of mistakes.
The LLM Challenge in Aviation
Using LLMs in aviation education comes with unique challenges. Aviation is a regulated domain where incorrect information can have serious consequences. You can't have an AI confidently explaining something incorrectly to a student who might rely on that knowledge in a cockpit.
My approach to safety has multiple layers:
Retrieval-Augmented Generation. The explanation engine doesn't rely solely on the LLM's training data. It retrieves relevant content from our verified knowledge base and includes it as context in the prompt. The LLM's job is to synthesize and personalize the explanation, not to recall facts from its training data.
Factual Grounding. The prompt explicitly instructs the model to only use information provided in the context. If the context doesn't contain enough information to explain a concept, the model should say so rather than filling in the gaps from its training data.
Human Review Pipeline. Every unique explanation generated by the LLM is queued for human review. Reviewed explanations are cached and reused. Over time, the percentage of requests served from the reviewed cache increases, and the percentage requiring fresh generation decreases.
Student Flagging. Students can flag any explanation that seems incorrect. Flagged explanations are prioritized for review and the student receives a notification when the review is complete.
Early Results
I've been running the adaptive learning system in beta with a subset of students for the past month. The early results are encouraging.
Students using adaptive learning complete their study plans faster. The time savings come from spending less time on material they already know and more time on material they need to review. This is the core promise of adaptive learning, and it seems to be delivering.
More interestingly, students using the personalized explanations are less likely to get the same type of question wrong repeatedly. The static explanations often didn't address the student's specific misconception, so they would read the explanation, nod, and then make the same mistake again. The personalized explanations seem to break this cycle.
The feedback from beta students has been overwhelmingly positive. Several have described it as "having a tutor who actually knows what I am struggling with." That is exactly the experience I was aiming for.
What I Have Learned
Building adaptive learning has taught me several things:
Data is the foundation. The adaptive system is only as good as the data it has about each student. I spent more time on the data collection and knowledge model than on the AI features themselves. Getting the data right is prerequisite to everything else.
Simple models beat complex ones. My first version of the knowledge model was overly sophisticated, with Bayesian inference and complex decay functions. I simplified it to basic weighted averages and exponential decay, and the recommendations actually improved. Students aren't that complicated. They forget things over time and learn from practice. A simple model captures most of the value.
Motivation matters more than optimization. The mathematically optimal study plan isn't the best study plan. The best study plan is the one the student actually follows. If adaptive learning makes studying feel like punishment by constantly surfacing the hardest material, students will abandon it. Balancing challenge with achievability is an art, not a science.
LLMs are the explanation layer, not the intelligence. The adaptive engine itself doesn't use LLMs. It uses traditional algorithms operating on structured data. LLMs handle the natural language layer -- generating explanations that are personalized and readable. Trying to use an LLM for the core recommendation logic would be slower, more expensive, and less predictable.
What Comes Next
The adaptive learning system is still in beta, but I plan to roll it out to all Aviation Infinity students in the coming months. Beyond that, I want to add adaptive study scheduling (the system tells you when to study, not just what to study) and adaptive mock exams (mock exams that focus on your weak areas while still providing a realistic exam experience).
Aviation education is ripe for this kind of personalization. Every student is different. Every student has different strengths, different weaknesses, different learning speeds. A platform that treats every student the same is leaving enormous value on the table. Adaptive learning changes that.
Enjoyed this article?
I write about building products, AI, aviation, and the journey of entrepreneurship. Follow along for more.
Keep reading

New Pilot Shop & Want To Be a Pilot: Niche Communities
I built an aviation e-commerce store and a pilot mentoring platform for tiny markets. Small communities with deep needs are more valuable than large, shallow ones.

Building for 33 Aviation Authorities Taught Me Regulated AI
Most AI startups avoid regulated industries. Here is what a decade inside aviation, legal, and healthcare taught me about building AI that must be right.

The Aviation Portfolio: How Five Products Serve One Industry
Inside the strategy behind building five complementary products for the aviation industry. Aviation Infinity, Avioyx, AvioSharing, New Pilot Shop, and Want To Be a Pilot.