Без заголовка
Пример неожиданного поведения:
Лет десять или двенадцать назад написал пример (еще на Delphi) MLP управляющего моделью реверсивного маятника. Это такая тележка, которая может двигаться влево или вправо. Цель - удержаться около нуля и удержать вертикально стержень закрепленный на тележке.
Т.е. если стержень падает влево, нужно уехать с ускорением влево, выправив маятник и аккуратно вернуться в ноль.
Обучали управляющий MLP учителем, т.е. сперва человек пытался уравновесить маятник, формировал набор управляющий воздействий в фазовом пространстве модели. MLP аппроксимировал эту таблицу и ему передавали управление.
MLP нашел неожиданное решение. Когда маятник уходил далеко влево и тележке не хватало ускорения чтобы его поднять (или получался очень большой уход от нуля X), маятник резко дергался в право, т.е. ускорял падение маятника. Модель отрабатывала отскок маятника и дальнейший переход его кинетической энергии в потенциальную приводил к переходу маятника в вертикальное положение. Получалось очень экономичное решение. Ни один оператор-человек так не делал.
В чем баг: Штрафа за падения маятника не было. Были штрафы за dX и dFi.