Вы всегда должны быть уверены, что достижение цели является наиболее «привлекательным» способом взаимодействия с окружающей средой.Вы хотите, чтобы ваш агент достиг определенной цели, и ваш агент пытается максимизировать сигнал вознаграждения, поэтому вам нужно разработать функцию вознаграждения, которая правильно «направляет» агента на выполнение правильных действий.
В случае, который вы описали, кажется, что для получения наибольшего вознаграждения агент должен посетить одно состояние F и затем перейти в состояние END - поэтому попытайтесь изменить функцию вознаграждения на функцию, которая, например,возвращает больше вознаграждения за посещение F государств.
Другая функция вознаграждения, которую я могу себе представить, - это функция, которая возвращает -1 для посещения состояния КОНЕЦ без сбора предметов, 1 для посещения состояния КОНЕЦ с собранными предметами и 0 для посещения любого другого состояния (или, например,-0,02, если вы хотите, чтобы цель была достигнута как можно быстрее).
Вы можете поиграть с дизайном функции вознаграждения - и я бы рекомендовал поэкспериментировать с ним и наблюдать за поведением агента.Обычно это действительно хороший способ узнать и понять агента и окружающую среду.