bus2RLSpec

Создайте технические требования данных об обучении с подкреплением для элементов шины Simulink

Описание

пример

specs = bus2RLSpec(busName) создает набор технических требований данных об обучении с подкреплением от объекта шины Simulink®, заданного busName. Один элемент спецификации создается для каждого листового элемента в соответствующей шине Simulink. Используйте эти технические требования, чтобы задать действия и наблюдения для среды обучения с подкреплением Simulink.

пример

specs = bus2RLSpec(busName,Name,Value) задает опции для создания технических требований с помощью одного или нескольких Name,Value парные аргументы.

Примеры

свернуть все

В этом примере показано, как использовать функциональный bus2RLSpec чтобы создать спецификацию наблюдений возражают от объекта шины Simulink®.

Создайте объект шины.

obsBus = Simulink.Bus();

Создайте три элемента в шине и задайте их имена.

obsBus.Elements(1) = Simulink.BusElement;
obsBus.Elements(1).Name = 'sin_theta';
obsBus.Elements(2) = Simulink.BusElement;
obsBus.Elements(2).Name = 'cos_theta';
obsBus.Elements(3) = Simulink.BusElement;
obsBus.Elements(3).Name = 'dtheta';

Создайте объекты спецификации наблюдений с помощью объекта шины Simulink.

obsInfo = bus2RLSpec('obsBus');

Можно затем использовать obsInfo, вместе с соответствующей моделью Simulink, чтобы создать среду обучения с подкреплением. Для примера смотрите, Обучают Агента DDPG к Swing и Маятнику Баланса с Сигналом Шины.

В этом примере показано, как вызвать функциональный bus2RLSpec использование имени и пар значения, чтобы создать спецификацию действия возражает от объекта шины Simulink®.

Создайте объект шины.

actBus = Simulink.Bus();

Создайте один элемент в шине и задайте имя.

actBus.Elements(1) = Simulink.BusElement;
actBus.Elements(1).Name = 'actuator';

Создайте объекты спецификации наблюдений с помощью объекта шины Simulink.

actInfo = bus2RLSpec('actBus','DiscreteElements',{'actuator',[-1 1]});

Это указывает, что элемент шины 'привода' может нести два возможных значения, -1, и 1.

Можно затем использовать actInfo, вместе с соответствующей моделью Simulink, чтобы создать среду обучения с подкреплением. В частности функция, которая создает использование среды actInfo, чтобы определить правильную шину выход блока агента.

Для примера смотрите, Обучают Агента DDPG к Swing и Маятнику Баланса с Сигналом Шины.

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

свернуть все

Имя Simulink соединяет шиной объект в виде строки или вектора символов.

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'DiscreteElements',{'force',[-5 0 5]} устанавливает 'force' соедините шиной элемент, чтобы быть спецификацией дискретных данных с тремя возможными значениями, -5, 0, и 5

Имя модели Simulink в виде разделенной запятой пары, состоящей из 'Model' и строка или вектор символов. Задайте имя модели, когда объект шины будет задан в глобальной рабочей области модели (например, в словаре данных) вместо рабочей области MATLAB®.

Имена листовых элементов шины, для которых можно создать технические требования в виде разделенной запятой пары, состоящей из BusElementNames' и массив строк. Чтобы создать спецификации наблюдений для подмножества элементов в объекте шины Simulink, задайте BusElementNames. Если вы не задаете BusElementNames, спецификация данных создается для каждого листового элемента в шине.

Примечание

Не задавайте BusElementNames при создании технических требований для сигналов действия. Блок RL Agent должен вывести полный сигнал шины.

Конечные значения для дискретных элементов шины в виде разделенной запятой пары, состоящей из 'DiscreteElements' и массив ячеек пар "имя-значение". Каждая пара "имя-значение" состоит из листового имени элемента шины и массива дискретных значений. Заданные дискретные значения должны быть castable к типу данных заданного сигнала действия.

Если вы не задаете дискретные значения для спецификации элемента, элемент непрерывен.

Пример: 'ActionDiscretElements',{'force',[-10 0 10],'torque',[-5 0 5]} задает дискретные значения для 'force' и 'torque' листовые элементы сигнала действия шины.

Выходные аргументы

свернуть все

Технические требования данных для действий обучения с подкреплением или наблюдений, возвращенных как одно из следующего:

  • rlNumericSpec объект для одного непрерывного элемента шины

  • rlFiniteSetSpec объект для одного дискретного элемента шины

  • Массив спецификации данных возражает для нескольких элементов шины

По умолчанию всеми техническими требованиями данных для элементов шины является rlNumericSpec объекты. Чтобы создать дискретную спецификацию для одного или нескольких элементов шины, задайте имена элементов с помощью DiscreteElements пара "имя-значение".

Введенный в R2019a