rlTable

Таблица значений или Q-таблица

Описание

Таблицы значений и Q-таблицы являются одним из способов представления сетей критика для обучения с подкреплением. В таблицах значений хранятся вознаграждения для конечного набора наблюдений. Q-таблицы сохраняют вознаграждения для соответствующих конечных пар действия наблюдений.

Чтобы создать представление функции ценности с помощью rlTable объект, использовать rlValueRepresentation или rlQValueRepresentation объект.

Создание

Описание

пример

T = rlTable(obsinfo) создает таблицу значений для заданных дискретных наблюдений.

пример

T = rlTable(obsinfo,actinfo) создает Q-таблицу для заданных дискретных наблюдений и действий.

Входные параметры

расширить все

Спецификация наблюдений, заданная как rlFiniteSetSpec объект.

Спецификация действия, заданная как rlFiniteSetSpec объект.

Свойства

расширить все

Таблица вознаграждений, возвращенная как массив. Когда Table является:

  • Таблица значений, она содержит NO строки, где NO количество конечных значений наблюдения.

  • Q-таблица, она содержит NO строки и NA столбцов, где NA количество возможных конечных действий.

Функции объекта

rlValueRepresentationПредставление критика функции ценности для агентов обучения с подкреплением
rlQValueRepresentation Представление Q-функции критика для агентов обучения с подкреплением

Примеры

свернуть все

В этом примере показано, как использовать rlTable для создания таблицы значений. Можно использовать такую таблицу, чтобы представлять критика агента актёра-критика с конечным пространством наблюдений.

Создайте интерфейс окружения и получите его спецификации наблюдений.

env = rlPredefinedEnv("BasicGridWorld");
obsInfo = getObservationInfo(env)
obsInfo = 
  rlFiniteSetSpec with properties:

       Elements: [25x1 double]
           Name: "MDP Observations"
    Description: [0x0 string]
      Dimension: [1 1]
       DataType: "double"

Составьте таблицу значений с помощью спецификации наблюдений.

vTable = rlTable(obsInfo)
vTable = 
  rlTable with properties:

    Table: [25x1 double]

В этом примере показано, как использовать rlTable для создания Q-таблицы. Такая таблица может использоваться, чтобы представлять актёра или критика агента с конечными пространствами наблюдений и действий.

Создайте интерфейс окружения и получите его наблюдение и спецификации действия.

env=rlMDPEnv(createMDP(8,["up";"down"]));
obsInfo = getObservationInfo(env)
obsInfo = 
  rlFiniteSetSpec with properties:

       Elements: [8x1 double]
           Name: "MDP Observations"
    Description: [0x0 string]
      Dimension: [1 1]
       DataType: "double"

actInfo = getActionInfo(env)
actInfo = 
  rlFiniteSetSpec with properties:

       Elements: [2x1 double]
           Name: "MDP Actions"
    Description: [0x0 string]
      Dimension: [1 1]
       DataType: "double"

Составьте Q-таблицу с помощью наблюдений и спецификаций действия.

qTable = rlTable(obsInfo,actInfo)
qTable = 
  rlTable with properties:

    Table: [8x2 double]

Введенный в R2019a