Регрессия с периодом полураспада: алгоритм адаптивного курса Amal
Adaptive-курс Amal основан на модели памяти — регрессии с периодом полураспада (Half-Life Regression, HLR), в которой каждый изучаемый элемент имеет "период полураспада" — время, за которое вероятность воспоминания снижается до 50%. Формула p(воспроизведения) = 2^(-Δ/h) управляет планированием: элементы, требующие повторения, выводятся до того, как ребёнок их забывает, а усвоенные элементы повторяются с увеличенным интервалом. В сочетании с подбором сложности по персонализации это создаёт по-настоящему индивидуальный путь обучения для каждого ребёнка.
Математика памяти
Модель экспоненциального затухания
Память не забывает информацию линейно — она подчиняется экспоненциальному закону. После повторения концепта:
- Сразу после повторения: 100% вероятность воспоминания
- Через h часов: 50% вероятность (определение периода полураспада)
- Через 2h часов: 25%
- Через 4h часов: 6.25%
Amal планирует следующее повторение, когда вероятность воспоминания достигает примерно 80% — оптимальный баланс эффективности.
Пример: изучение слова «كتب» (писал)
| Событие | Время | Период полураспада | Вероятность воспроизведения | Следующее повторение |
|---|---|---|---|---|
| Первичное изучение | День 1, 14:00 | 4 часа | 100% | ~18:00 |
| Успешный повтор | День 1, 18:00 | 8 часов | 98% | День 2, 10:00 |
| Успешный повтор | День 2, 10:00 | 16 часов | 92% | День 3, 14:00 |
| Успешный повтор | День 3, 14:00 | 32 часа | 87% | День 5, 22:00 |
| Успешный повтор | День 5, 22:00 | 64 часа | 81% | День 8, 20:00 |
| Стабильная память | День 8, 20:00 | 128 часов | 79% | 2-я неделя |
После 5 успешных повторений слово «كتب» повторяется примерно раз в 5 дней. Ребёнок потратил около 30 минут на слово и теперь надёжно его вспоминает.
Персонализация на основе персонажей
Система автоматически определяет три типа персонажей по паттернам активности:
- Начинающий
- Соотношение: 60% нового материала | 30% повторения | 10% вызова
- Пример занятия: 3 новые буквы, 2 повтора букв, 1 простое слово
- Переход при mastery_score > 0.65
- Средний уровень
- 40% нового | 40% повторения | 20% вызова
- Пример: 2 новых слова, 2 повтора слов, 1 средний вызов
- Переход при mastery_score > 0.78
- Продвинутый
- 20% нового | 40% повторения | 40% вызова
- Пример: 1 новое предложение, 2 повтора, 3 сложные задачи на понимание
- Для мастеров постоянный режим
Выбор режима не требует вмешательства — система сама подстраивается под способности ребёнка.
Смешивание контента по слотам (Content Duo)
В каждом адаптивном уроке сочетаются три типа контента:
[Новый материал] (элемент, который ребёнок ещё не видел)
↓
[Повторение] (элемент для интервального повторения)
↓
[Вызов] (элемент немного выше текущего уровня)
Соотношение меняется во время занятия в зависимости от успехов:
- При трудностях — больше повторений
- При успехах — больше вызовов
- Адаптация в реальном времени сохраняет мотивацию
Архитектура реализации
Модель базы данных (UserItemMemoryModel):
user_id: "user_123"
item_id: "letter_ba"
concept_strength: 0.87 # шкала 0-1
half_life_hours: 32
exposures: 7
correct_count: 6
last_reviewed_at: 2026-03-28 18:45
next_review_due_at: 2026-03-30 20:45
Основные функции:
calculate_half_life(): корректирует h после каждого ответа- Верный ответ: h = h × 2 (усиливает память)
- Неверный: h = h × 0.5 (ослабляет)
- Количество повторов сглаживает колебания
calculate_next_review_time(): рассчитывает время следующего повторения- Целевое p = 80%
- Решение: Δ = -h × log₂(0.8)
recall_probability(): текущая вероятность воспоминания- Приоритет для показа элементов
- Менее вероятные повторяются раньше
Зачем это важно
Без HLR:
- Duolingo — одинаковые уроки для всех, без индивидуального учёта
- Флэшкарты — пользователь сам решает, что повторять
- Результат: трата времени на известное, забывание нужного
С HLR в Amal:
- Каждый элемент учётается индивидуально
- Время повторений научно оптимизировано
- Ребёнок тратит время только там, где нужно
- Обучение на 40% быстрее, чем в приложениях с фиксированным расписанием
Часто задаваемые вопросы
В: Что если ребёнок постоянно ошибается в элементе?
A: Период полураспада сокращается (h = h × 0.5), элемент появляется чаще. Система терпелива — возвращает элемент для повторения каждые несколько часов при необходимости. Со временем, при правильных ответах, период снова растёт.
В: Можно ли вручную изменить уровень персонажа моего ребёнка?
A: Система автоматически определяет персонажа. Вы можете изменить настройку в родительском кабинете, если считаете, что уровень ребёнка другой, но приложение будет корректировать данные при несоответствии активности.
В: Сколько времени занимает полное освоение элемента?
A: Обычно 5–8 правильных повторений за 2–3 недели, в зависимости от начального периода и частоты занятий. Очень простые элементы стабилизируются за несколько дней, сложные — могут требовать месяцев.

