===== Кейс 014: Адаптивный генератор заданий (gram:case-014) =====
=== Общая информация ===
^ Уровень сложности ^ 🟠 Продвинутый ^
^ Рекомендуемые языки ^ Python ^
^ Основные инструменты ^ ANTLR4 ^
^ Предметная область ^ Педагогика, адаптивное обучение ^
=== Описание кейса ===
Система для создания персонализированных заданий с адаптацией сложности под уровень ученика и анализом прогресса.
=== Грамматика языка ===
// Лексемы
PROFILE : 'profile'
LEVEL : 'level'
DIFFICULTY : 'difficulty'
ADAPT : 'adapt'
BASED_ON : 'based_on'
PERFORMANCE: 'performance'
TRACK : 'track'
ANALYZE : 'analyze'
LBRACE : '{'
RBRACE : '}'
COLON : ':'
COMMA : ','
STRING : '"' (~["\\] | '\\' .)* '"'
NUMBER : [0-9]+
ID : [a-zA-Z_][a-zA-Z_0-9]*
WS : [ \t\r\n]+ -> skip
// Синтаксис
adaptive_system : profile+ adaptation_rules tracking
profile : PROFILE ID LBRACE profile_content RBRACE
profile_content : level performance history
level : LEVEL COLON ('beginner' | 'intermediate' | 'advanced')
performance : PERFORMANCE COLON subject_scores
history : HISTORY COLON attempt+
adaptation_rules : ADAPT LBRACE rule+ RBRACE
rule : WHEN condition THEN action
condition : performance comparison threshold
action : INCREASE difficulty | DECREASE difficulty | SAME difficulty
tracking : TRACK LBRACE metrics RBRACE
metrics : METRICS COLON metric_list
metric_list : metric (COMMA metric)*
metric : 'success_rate' | 'time_spent' | 'error_pattern'
subject_scores : subject (COMMA subject)*
subject : ID COLON NUMBER
attempt : task_id COLON result COLON time_spent
result : 'success' | 'partial' | 'failure'
time_spent : NUMBER
comparison : '>' | '<' | '>=' | '<='
threshold : NUMBER
=== План лабораторных работ ===
==== ЛР1: Лексический анализ ====
**Задачи:**
- Распознавание педагогических терминов
- Поддержка правил адаптации
- Обработка метрик отслеживания
==== ЛР2: Синтаксический анализ ====
**Задачи:**
- Парсер профилей учащихся и правил
- Построение AST адаптивной системы
- Валидация условий и действий
==== ЛР3: Семантический анализ ====
**Задачи:**
- Анализ прогресса учащихся
- Применение правил адаптации
- Генерация персонализированных заданий
==== ЛР4: Адаптивная генерация ====
**Задачи:**
- Создание заданий под уровень ученика
- Динамическая корректировка сложности
- Анализ эффективности адаптации
=== Пример системы ===
profile student_001 {
level: intermediate
performance: math: 75, physics: 60
history:
task_001: success: 120
task_002: partial: 180
}
adapt {
when performance < 60 then decrease difficulty
when performance >= 80 then increase difficulty
when performance >= 60 and performance < 80 then same difficulty
}
track {
metrics: success_rate, time_spent, error_pattern
}
=== Педагогическое применение ===
**Использование в школе:**
- Персонализация обучения
- Автоматическая адаптация сложности
- Анализ прогресса учащихся
----
[[gram:labs|← К списку]] | [[gram:case-013|← 013]] | [[gram:case-015|015 →]]