51 lines
4.3 KiB
Markdown
51 lines
4.3 KiB
Markdown
# PREREG A — похожесть соседних шагов как множитель (экстраполяция)
|
||
|
||
Составлено до прогона. Валерий: «похожесть с предыдущими шагами можно развить дальше» → «пред-регистрируй
|
||
и проверяй A».
|
||
|
||
## Основание
|
||
|
||
На плоских функциях метод ходит циклом из 4 вычислений: два недолёта с отношением сжатия
|
||
(1−1/m)^m, перескок, почти пустой шаг (`results_diag_contraction_sequence.txt`). В фазе недолёта
|
||
итерация ползёт с одной стороны, и соседние шаги — почти постоянная доля друг друга.
|
||
|
||
## Правило (без констант)
|
||
|
||
Пусть dₙ — предложенный шаг из текущей точки, dₙ₋₁ = x − x_prev — предыдущее перемещение.
|
||
|
||
S = min(|dₙ|, |dₙ₋₁|) / max(|dₙ|, |dₙ₋₁|), если dₙ и dₙ₋₁ одного знака; иначе S = 0
|
||
шаг A = dₙ / (1 − S)
|
||
|
||
Оставшийся путь при геометрическом ряде — dₙ·S/(1−S), отсюда множитель 1/(1−S). Для xᵐ под шагом
|
||
Ньютона S = 1 − 1/m, множитель = m, шаг A = m·f/f′ попадает в корень. На простом корне шаги
|
||
сжимаются сверхлинейно, S → 0, шаг A = dₙ: метод не меняется.
|
||
|
||
Известное родство: ускорение Эйткена, модифицированный Ньютон для кратного корня. Отличие от
|
||
опровергнутых `derived3_m` (m из параболы, слепа — 5.8%) и `rho` (дёргался у корня): m читается
|
||
из двух шагов, у корня S → 0.
|
||
|
||
## Проверка (метод не меняется)
|
||
|
||
На трассах предложенного метода и чтения (3), в каждом состоянии с известным предыдущим шагом: точка
|
||
приземления шага A, **одно** дополнительное вычисление f в ней, обновление скобки, половинения
|
||
скобки. То же для нашего шага и для деления пополам — из того же состояния. Шаг A, вышедший за
|
||
скобку, считается недопустимым (реальный метод его спроецировал бы), доля таких случаев сообщается.
|
||
|
||
Группы — те же, что во всех проверках этой линии: APS, CHA fun1, CHA плоские fun3–6, CHA прочие.
|
||
|
||
## Критерии
|
||
|
||
| # | что | ПРОЙДЕНО, если |
|
||
|---|---|---|
|
||
| **A1** | плоские: средние половинения на вычисление, шаг A против нашего шага, парно по состояниям с S > 0 | A больше |
|
||
| **A2** | APS: то же | A не меньше (вреда нет) |
|
||
| **A3** | плоские: шаг A против деления пополам (1 половинение) | сообщается; ≥ 1 — значит, A обгоняет деление |
|
||
| **A4** | доля состояний с S > 0 на APS | сообщается (чем реже, тем инертнее) |
|
||
|
||
**Фальсификатор:** A1 ложна — экстраполяция не бьёт наш шаг там, где мы проигрываем; правило не
|
||
строится. A2 ложна — вредит там, где мы выигрываем; строить без отдельного решения нельзя.
|
||
|
||
**Ограничение, объявленное заранее:** проверка меряет один шаг из каждого состояния. Разрыв цикла
|
||
меняет дальнейшую траекторию, поэтому итог по вычислениям на весь прогон покажет только
|
||
реализация в методе — отдельная пред-регистрация, если A пройдёт.
|