Files
Learn_System/plans/ai-trainer/ROADMAP_V4_VARIETY.md
T
Maxim Dolgolyov 8610197f5f docs(trainer): план «Максимум разнообразия» (v4 дополнение)
ROADMAP_V4_VARIETY.md: (A) обозначение искомой величины answerSym — сделано +
добивка (Sₙ/стороны/единицы); (B) тема «Углы/Параллельные» — ≈12 новых генераторов
(накрест внешние, односторонние внешние, вертикальные при секущей, двухшаговые,
биссектриса, дополнительные, острые в прям. треугольнике, углы параллелограмма,
недостающий угол n-угольника, накрест через выражения, углы в отношении, часы) +
новые фигуры; (C) пять осей разнообразия по всему тренажёру — форматы заданий
(новые kind), глубина внутри темы (прямая/обратная/словесная/многошаговая),
числовое разнообразие, визуальное (диаграммы/числовая прямая/таблицы + read-from-
figure), подача; (D) новые темы ЦТ; (E) последовательность волн.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-29 16:18:20 +03:00

11 KiB
Raw Blame History

ИИ-Тренажёр — План «Максимум разнообразия» (v4, дополнение)

Дата: 2026-06-26. Дополняет ROADMAP_V4.md / V4_GENERATOR_SPECS.md. Фокус: ещё больше разнообразия задач и условий — в теме «Углы/Параллельные» и по всему тренажёру.

Контекст: фаза V4.1 завершена — 178 генераторов (было 64). Только что внедрено обозначение искомой величины (answerSym: P/S/C/L/d/k/n/q/b вместо жёсткого «x») — и в поле ввода, и в подписи ответа, и в шагах решения.

Инварианты (неизменны): только SimExpr ( без eval); «корень-вперёд» → чистый ответ; без эмодзи; тексты экранируются; зарезерв. имена SimExpr pi/e/E/PI/tau (в тренажёре t/w/h допустимы). Каждая волна — смоук + коммит.


A. Обозначение искомой величины (answerSym) — СДЕЛАНО + добивка

Сделано (commit 3b095a9): 26 генераторов размечены P/S/C/L/d/k/n/q/b; движок подменяет x→символ в шагах решения; страница показывает «P =»/«S =» в вводе и ответе.

Добивка (низкая цена):

  • A1. Суммы прогрессий → Sₙ (prog-arith-sum/geom-sum/arith-word); проценты-вклад → итог.
  • A2. Стороны/катеты/радиусы как искомые → a/b/c/r (pyth-hyp→c, pyth-leg→b, area-rect-inverse→ сторона a). Сейчас у них «x».
  • A3. Единицы измерения (опц.): поле unit («см», «°», «км/ч») → суффикс в подписи ответа и плейсхолдере; чисто отображение, проверка не меняется.
  • A4. Многобуквенные/индексы (x₁, a₁) — только если понадобится; answerSym уже принимает строку.

B. Тема «Углы / Параллельные» — максимум разнообразия (≈12 новых)

Сейчас 9: третий угол, смежный, внешний, соответственные, накрест лежащие, односторонние, найти x, равнобедренный, вертикальные. Добавить:

id Что Ответ Фигура
ang-alt-exterior накрест лежащие ВНЕШНИЕ a parallel-lines-transversal (rel)
ang-coint-exterior односторонние ВНЕШНИЕ 180a parallel-lines-transversal
ang-vertical-transversal вертикальные ПРИ секущей a parallel-lines-transversal
ang-parallel-twostep секущая → смежный к накрест лежащему (2 шага) 180a parallel-lines-transversal
ang-bisector биссектриса делит угол пополам a/2 новый angle-bisector
ang-complementary дополнительные (сумма 90°) 90a новый complementary
ang-right-acute острые углы прям. треугольника (90−a) 90a right-triangle (метка угла)
ang-parallelogram углы параллелограмма (сосед = 180−a) 180a / a parallelogram (метка углов)
ang-polygon-missing n-угольник: известны все углы, кроме одного 180(n2)−Σ regular-polygon
ang-alt-solve накрест лежащие заданы выражениями, найти x root parallel-lines-transversal
ang-triangle-ratio углы треугольника в отношении p:q:r, найти больший 180·max/(p+q+r) triangle-angles
ang-clock угол между стрелками часов в HH:00 |30·H0| новый clock (циферблат)

Все «корень-вперёд» (берём a/острый угол/доли первым → выводим показанное). Новые фигуры: angle-bisector, complementary (два луча из O + дуги), clock (круг + 2 стрелки), метки углов на parallelogram/right-triangle (расширение существующих типов, как делали с rectangle).


C. Оси разнообразия — по ВСЕМУ тренажёру

Разнообразие = произведение пяти осей. По каждой — что добавить.

C1. Новые ФОРМАТЫ заданий (новые kind) — крупнейший множитель

(Из ROADMAP_V4, направление «task-formats» — это фаза V4.2.) Применимы к ЛЮБОЙ теме, поэтому дают ×N разнообразия одним движком-усилием:

  • choice — выбор из 4 (дистракторы из analyzeMistake: типовые ошибки).
  • verify — «верно ли?» (булева SimExpr → 1/0).
  • findError — найди неверный шаг в готовом решении (портим один шаг solution[]).
  • fillBlank — вставь число/выражение в тождество.
  • estimate — ответ в допуске (прикидка, π).
  • multi — одна задача, несколько проверяемых под-ответов по цепочке.
  • order — упорядочить (числа/дроби/шаги).
  • match — сопоставить (формула↔результат, фигура↔площадь).
  • context — обёртка существующих compute в бытовые сюжеты (данными).
  • figureAsk/таблица — ответ читается с чертежа/таблицы.

C2. Глубина ВНУТРИ темы (под-варианты и формулировки)

Для каждой темы — четыре направления формулировки:

  • Прямая (дано→найди) — есть.
  • Обратная (найди параметр по ответу) — частично (find-b/d/n/q, restore-before). Расширить на ВСЕ темы: «при каком a корень = R», «найди сторону по периметру», «найди r по длине».
  • Словесная/контекст — расширить (движение/работа/смеси/деньги/геометрия-в-жизни).
  • Многошаговая — связать два факта (Пифагор→периметр уже есть; угловые цепочки; %→%).

C3. Числовое разнообразие (тип ответа/чисел)

Сейчас алгебра — почти всегда целые. Добавить варианты:

  • Дробные/десятичные корни там, где уместно (через «корень-вперёд» с делителями).
  • Отрицательные коэффициенты/корни шире (уже частично).
  • Иррациональные «через √» (ответ вида k√m) — ТРЕБУЕТ нового механизма проверки (сейчас движок численный; ответ 2*sqrt(3) примется, но эталон-строка иная) → пометка на отдельную фазу.
  • Ответ-дробь/отношение (k:1, 3/4) — есть в дробях; распространить (вероятность, проценты).

C4. Визуальное разнообразие (фигуры)

  • Дать чертёж БОЛЬШЕМУ числу задач (не только геометрия): числовая прямая (отрицательные/дроби), столбчатые/круговые мини-диаграммы (проценты/доли), таблица (чтение данных), график (функции).
  • Везде, где есть фигура, включить режим «читать с чертежа» (figurePrompt) — уже есть в геометрии; добавить figurePrompt новым фигурным задачам.
  • Новые типы фигур из B + диаграммы (C4) переиспользуют хелперы figures.js.

C5. Разнообразие ПОДАЧИ (не меняя математику)

  • Рандомизация имён/контекста в текстовых (имена, предметы, валюта) — данными.
  • Разные формулировки одного навыка (вопрос «найдите»/«чему равно»/«определите»).
  • Уровни как СТРУКТУРА (уже есть level 1–3) — добить разметку новых генераторов.

D. Новые ТЕМЫ (охват ЦТ/ЦЭ) — из ROADMAP_V4, кратко

g-func (чтение графика), roots (корни/иррациональности), logs, trig (особые углы), g-coord (координатная геометрия), вероятность/статистика. Каждая = новый пласт разнообразия.


E. Рекомендуемая последовательность

  1. A-добивка (символы Sₙ/сторон/единицы) — мелко, сразу. ✦ дешёвый, видимый эффект.
  2. B — углы/параллельные (≈12 генераторов + 3–4 фигуры) — закрывает запрос по теме. ★
  3. C1 — форматы заданий (V4.2: choice→verify→fillBlank→findError→estimate→multi→order→match→ context→figureAsk) — крупнейший прирост разнообразия; правки движка+страницы+смоуки.
  4. C2/C3 — обратные/словесные/многошаговые + числовые варианты волнами по темам.
  5. C4 — диаграммы/числовая прямая/таблицы + read-from-figure на новых задачах.
  6. D — новые темы ЦТ.

Каждая волна: смоук движка (инстанс всех генераторов + самопроверка + рендер фигур) + смоук страницы (где менялась) + коммит; эмодзи/eval = 0.


Приложение — где что

  • Генераторы: frontend/js/trainer/generators.js (178 шт; поля figure/figurePrompt/answerSym).
  • Движок/kinds/answerSym-подмена: frontend/js/trainer/_trainer_engine.js.
  • Фигуры-данные: frontend/js/trainer/figures.js (13 базовых + 10 геом-типов V4.1).
  • Страница (eqx-префикс/answerLabel/режим чертежа): frontend/trainer.html.
  • Базовый план/спеки: ROADMAP_V4.md, V4_GENERATOR_SPECS.md.