Вчера на DataScience Major была ссылка на работу
https://arxiv.org/pdf/1712.00378.pdf (если я все правильно нагуглил). Не выходит из головы очевидность этой идеи, непонятно почему раньше на это не обратили внимание.
Если коротко: если окружение ограничено по времени каким-то количеством шагов, то нужно разделять ситуации когда время закончилось и когда агент что-то сделал не так. Решение простое -- если время заканчивается, то в беллмане нужно бутстрапить из Q-функции.
Скажем, в learning how to run, многие делали отрицательный reward за падение. Но по сути, это тот же способ обойти эту проблему, только костыльный (иначе говоря, теоретически необоснованный), что, по идее, может приводить к нестабильности обучения, так как в конце будут эпизоды доходящие до лимита по времени, и у них будет неправильный reference reward.