Q-Learning без сетки вознаграждений - PullRequest
0 голосов
/ 04 июня 2018

Я работаю над проектом, в котором пытаюсь внедрить Q-learning в C # (в частности, в Unity).У меня есть машина, которая должна проехать по дорожке сетки, как показано на рисунке: Пример - где зеленый - это цель (+ награда), серый и вне сетки - препятствия (-награда), а синий - машина.Я смотрел на несколько примеров / руководств о том, как реализовать это (в основном псевдокод), но они, кажется, знают заранее определенную сетку для работы (сетку вознаграждений), которую я не уверен, как реализовать вмой сценарий.

Идея состоит в том, что моя машина имеет три состояния и действия:

  • Состояния: движение по левой полосе движения, движение по центральной полосе движения, движение по правой полосе движения
  • Действия: Переместить один вверх и влево, переместить один вверх и вправо, переместить один вверх

Я пытаюсь следовать этому: http://mnemstudio.org/path-finding-q-learning-tutorial.htm и адаптировать это в моей системе - ноЯ не вижу, как сделать адаптацию.Разве это не потребовало бы, чтобы моя Q-матрица была намного больше, поскольку каждая ячейка была бы отдельным состоянием?Допустим, моя дорожка длиной 16 ячеек с 3 дорожками, значит ли это, что я должен иметь сетку из 48 состояний * 3 действия?

Редактировать: чтобы упростить свой пост, я понимаю, как я борюсь с тем, какчтобы связать мою среду и мою Q-матрицу, чтобы я мог изменять свои значения q-матрицы в зависимости от поведения моего агента в моей системе.

1 Ответ

0 голосов
/ 04 июня 2018

Как правило, в средах, основанных на сетке, например, на вашем автомобиле, каждая ячейка соответствует своему состоянию.Таким образом, ваша среда может иметь 3 действия, которые вы описали (переместить одно вверх и влево, переместить одно вверх и вправо, переместить одно вверх), но определенно не имеет трех состояний.

Как вы указали в последнемОтчасти вопрос: если ваша дорожка имеет длину 16 ячеек и 3 дорожки, ваша среда должна быть смоделирована с состояниями 16 * 3 = 48.Следовательно, размер вашей Q-матрицы должен быть 48 x 3.

. С помощью этой настройки вы можете легко сопоставить состояние вашего агента (положение автомобиля на трассе) с помощью Q-матрицы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...