Welcome to the first lesson of your course on creating adaptive learning platforms! Our goal over the next day is to equip you with the fundamental knowledge to design and conceptualize these powerful systems. This first lesson serves as the architectural blueprint for everything that follows. We will identify and explore the four core components that form the backbone of any adaptive learning system. Understanding this high-level structure is the essential first step before we can dive into the specific algorithms and implementation details in later lessons.
The Anatomy of an Adaptive System
At its heart, an adaptive learning system, often called an Intelligent Tutoring System (ITS), aims to replicate the personalized guidance of a one-on-one human tutor. Imagine how a great tutor works: they have deep knowledge of the subject, they can accurately gauge what you do and don't understand, they use that assessment to decide what to teach you next, and they communicate all this effectively.
An ITS formalizes this process into a software architecture. Given your background in web development and system design, you can think of this as a specialized version of the Model-View-Controller (MVC) pattern, or more broadly, as a system with distinct data, business logic, and presentation layers. Let's start with a video that provides a nice conceptual overview of this structure.
Intelligent Tutoring Systems Survey (ChatGPT, Mindmaps, Studying)
This video, "Intelligent Tutoring Systems Survey", gives a high-level introduction to the core ideas behind these systems.
Please watch the following segments: First, watch the introduction to the core architecture from the beginning. The video's author describes the system in terms of interface, logic, and state, and introduces the two fundamental "minds" the system models: the expert's and the student's. Next, watch the segment explaining the role of the pedagogical model. This is the central logic, or adaptation engine, of the system. Finally, watch the brief introduction to the interface, which focuses on dialogue as a method of interaction.
The video introduces the key concepts: a model of the subject (the Domain Model), a model of the learner (the Student Model), a decision-making component (the Pedagogical Model), and the Interface for interaction.
Now, let's formalize these ideas by examining the canonical components of an AI-based tutoring system.
AI-Based Intelligent Tutoring Systems
This article from Emergent Mind provides a concise, modern summary of the four key components. It uses slightly different terminology (Tutor Model instead of Pedagogical Model), but the concepts are identical.
Please read the section titled "1. System Architectures and Core Components." Focus on the four bullet points that define the Domain Model, Student Model, Tutor Model, and User Interface.
As the reading highlights, the standard architecture consists of four main parts. Let's examine each one through the lens of building a system.
1. The Domain Model (The "Expert")
The Domain Model codifies the knowledge of the subject being taught. It's the system's source of truth. This isn't just a database of facts; it also includes:
- Concepts and Skills: The individual units of knowledge (e.g., "variable declaration," "for loops" in a programming course).
- Relationships: How these concepts connect. For example, it knows that you must understand variable declaration before you can learn about for loops. We'll see in a later lesson how to represent this as a prerequisite graph.
- Problems and Content: A collection of questions, exercises, videos, and readings associated with each concept.
- Common Misconceptions: An advanced domain model might even include common errors or "buggy" rules that students often exhibit.
From a system design perspective, this is your primary, static dataset—the expert knowledge base that the rest of the system draws upon.
2. The Learner Model (The "Student")
The Learner Model (or Student Model) is the dynamic and personalized core of the system. It maintains an evolving profile of each individual learner. Its primary job is to answer the question: "What does this specific student know right now?"
This model tracks the learner's estimated mastery of each concept in the Domain Model. As the learner interacts with the system—answering questions correctly or incorrectly—the Learner Model is updated. Your background in machine learning is particularly relevant here. The update process often uses probabilistic models like Bayesian Knowledge Tracing (BKT) or neural network approaches like Deep Knowledge Tracing (DKT). We will dive deep into these techniques in the next module. For now, think of the Learner Model as the user-specific state that is constantly being refined based on new data.
3. The Adaptation Engine (The "Tutor")
The Adaptation Engine, also known as the Tutor Model or Pedagogical Model, is the system's "brain" or "business logic." It connects the Domain Model and the Learner Model to make intelligent instructional decisions.
Its core function is to answer the question: "Given what this student knows, what is the best thing for them to do next?"
To do this, the Adaptation Engine:
- Compares the current state of the Learner Model to the ideal state defined in the Domain Model.
- Selects the most appropriate next activity. Should the student practice a weak skill? Be introduced to a new concept? Review a topic they are about to forget?
- Determines the level of support. Should it offer a hint, a worked example, or a challenging problem?
This decision-making process can be implemented with anything from simple rule-based systems to complex reinforcement learning algorithms that optimize for long-term learning gain. We'll write pseudocode for a basic sequencing algorithm in a future lesson.
4. The User Interface (The "Conversation")
The User Interface is the layer that facilitates all interaction between the learner and the system. In an adaptive system, the UI is more than just a presentation layer; it's an integral part of the learning experience. It presents problems, delivers feedback, visualizes progress, and captures the learner's inputs. As highlighted in the academic paper on ITS architecture (LINK), considering the UI as a core internal component was a key step in the evolution of these systems, recognizing its profound impact on learning. As a web developer, you know the UI is critical, and here it is the sole channel for implementing the Adaptation Engine's pedagogical decisions.
Tying It All Together: The System in Action
These four components work together in a continuous loop. The following diagram illustrates a common architectural pattern for how these components interact.

Let's trace the flow of information:
- The learner interacts with the User Interface (e.g., answers a question).
- This interaction data is sent to the backend. The Learner Model is updated to reflect the learner's new knowledge state (this is the "Learner State Assessment" in the diagram).
- The Adaptation Engine receives the updated learner state. It also has access to the Domain Model ("Expert Model") which defines the learning goals and content.
- The engine compares the learner's state to the goals ("Compare" arrow) and executes its pedagogical logic to select the best next activity.
- The Adaptation Engine sends instructions back to the User Interface to render the new activity or feedback.
- The loop repeats.
This "Feedback Loop" is the essence of adaptation. Every action the learner takes provides data that helps the system make a better decision for the very next interaction.
Conclusion
In this lesson, we've outlined the foundational architecture of an adaptive learning system. We identified the four canonical components and understood their distinct roles:
- Domain Model: The expert knowledge base of the subject.
- Learner Model: The dynamic profile of the student's knowledge.
- Adaptation Engine (Tutor/Pedagogical Model): The decision-making logic that personalizes the learning path.
- User Interface: The interactive layer that facilitates the learning conversation.
Thinking in terms of these components provides a powerful framework for both analyzing existing systems and designing new ones. You now have the high-level blueprint that we will flesh out in the upcoming lessons.
In our next session, we'll take a closer look at the Learner Model. We'll move from the "what" to the "how" by comparing different approaches to modeling and tracking a learner's knowledge.