Хайкин С. - Нейронные сети (778923), страница 159
Текст из файла (страница 159)
Корректируем О-фактор де ьт (т„, а„, тт)=с„Г„(г„, а„, т'„) + дхя„(т'„, а„,и), г де т)„(т„, а„) (яцепепой(т„, а„, и ) — я„(г„, а„, ту) ) г'хььг„(г„,а„,тт) = при (т,а) = (т„,а„), Π— в противном случае 2г. Применяем (т„, а„) в качестве входа нейронной сети, генерирующей выходной сигнал е"т„(г„, а„, и ), являющийся аппроксимацией целевого О-фактора Ямепемхй (т„, а„, ту). Слегка изменяем вектор весов и так, чтобы приблизить аппроксимацию ф„(т„, а„, ту) к целевому значению Я„"~~~В (т„, а„, и') 2д.
Возвращаемся к шагу 2а и повторяем вычисления В этом компьютерном эксперименте вновь вернемся к задаче дилижанса, рассмотренной в примере 12.1. На этот раз для решения задачи будем использовать приближенное О-обучение. Для реализации этого алгоритма существуют два основных подхода: в первом из них для представления О-значений используется справочная таблица, а во втором — нейронная сеть. 790 Глава 12, Нейродннамическое программирование ТАБЛИЦА 12.4. Алгоритм приближенного 0-обучения 12.9. Компьютерный эксперимент Рнс.
12.10. Временные интер- валы, относящиеся к вспомога- тельному м основному управля- емому процессам 12.9. Компьютерный эксперимент 791 На рис. 12.11 показаны истории обучения следующих О-факторов: Я(А, вверх), Я(С, прямо), Я(Е, прямо) и ®1, вверх). Пунктирными линиями на рис. 12.11 представлены желаемые О-значения. Каждая попытка представляет собой полный маршрут от штата т' до штата .1. Начальное состояние для каждой попытки выбирается случайным образом.
Параметр скорости обучения т1„(т, а) определяется соотношением где о„(т, а) — количество посещений состояния (т, а) до текущего момента и; а = 1, 6 и К = 600. После совершения 1000 попыток был определен оптимальный маршрут: А- Р- Е- 1- Х Это один из оптимальных маршрутов с общими затратами, равными 11.
Это же значение было получено в примере 12.1. На рис. 12.12 показаны соответствующие результаты, полученные с помощью многослойного персептрона с двумя входными узлами, десятью скрытыми и одним выходным нейроном. Один из входных узлов представляет состояние, а второй— действие, предпринимаемое для перехода из одного состояния в другое. Выход этого многослойного персептрона представляет О-значение, вычисленное нейронной сетью. Эта нейронная сеть обучалась с использованием стандартного алгоритма обратного распространения. Целевое О-значение в момент времени п вычислялось по формуле (12.44). Параметр скорости обучения принимал фиксированное значение 0,012, при этом не использовались моменты.
Эта сеть обучалась на 10 000 примерах для каждой пары состояние — действие. На рис. 12.12 показана история обучения следующих О-значений: ©А, вверх), Я(С, прямо), Я(Е, прямо) и Я(1, вверх). Оптимальный маршрут, найденный сетью, выглядит следующим образом: А- Р- Е- Н- Х Это также один из оптимальных маршрутов, имеющих общие затраты, равные 11. Вычислительные требования для применения этих двух подходов приведены ниже. 1. Нейронная сеть. Количество входов — 2. Количество скрытых нейронов — 10. Количество выходных нейронов — 1. Общее количество синаптических весов и порогов — 2 х 10+ 10+ 10 х 1+ 1 = 41. 792 Глава 12. Нейродинамическое программирование 20 20 15 15 ~ ГО 1О 20 Попытка 10 20 30 40 30 Попытка б) а) 20 20 15 15 о й о й ГО + Рз 0 0 10 20 30 40 50 100 200 300 400 Попытка Попытка в) г) Рис.
12.11. Кривье обучения для задачи дилижанса при использовании справочных таблиц: кривая обучения для 42(А, вверх) (а); для !2(С, прямо) (б); для 43(Е, прямо) (в) н для 9(д вверх) (г) 2. Справочная таблица. Количество состояний — 10. Количество действий — 2 или 3. Размер таблицы — 21. В этом эксперименте количество возможных состояний мало, в результате чего для хранения справочной таблицы требуется меньше памяти, чем для нейронной сети. Однако если количество состояний достаточно велико, нейронная сеп обладает преимуществами по сравнению со справочной таблицей с точки зрения требуемых вычислительных мощностей.
12.10. Резюме и обсуждение 793 20 15 ю Ь !5 Я ю 20 40 60 80 100 20 40 60 80 100 Попытка (х100) Попытка (х100) 6) 20 20 15 15 $10 й !о $ 0 0 20 40 60 80 100 20 40 60 80 100 Попытка (х 100) Попытка (х 100) в) г) Рис. 12Д2. Кривые обучения для задачи дилижанса при использовании нейронной сети. кривая обучения для !2(л,вверх) (а); для 42(с,прямо) (б); для 42(е,прямо) (в) и для 42(д вверх) (г) .82.10.
Резюме и обсуждение Нейродинамическое программирование, соединяющее в себе математический формализм классического динамического программирования и способность нейронной сети к обучению, обеспечивает мощный подход к решению поведенческих задач, требующих планирования. В этом современном подходе к обучению с подкреплением система обучается двум вещам: на основании наблюдений за собственным поведением принимать грамотные решения и улучшать их действия с помощью механизма подкрепления. Лежащий в его основе процесс принятия решений соответствует Марковской модели.
794 Глава 12. Нейродннамнческое программирование В этой главе описаны две процедуры нейродинамического программирования. 1. Приближенная итерация ко стратегиям. Итерации по стратегиям соответствует два основных шага. ° Шаг вычисления стратегии, на котором вычисляется функция стоимости перехода для некоторой текущей стратегии. ° Шаг улучшения стратегии, в котором текущая стратегия корректируется для того, чтобы стать жадной по отношению к текущей функции стоимости перехода. В приближенной итерации по стратегиям при вычислении стратегии объединяются моделирование и аппроксимация функций.
Для создания Марковской модели системы требуется знание вероятностей перехода между состояниями. Для получения аппроксимации функции можно использовать нейронную сеть (например, многослойный персептрон, обучаемый согласно алгоритму обратного распространения, или машина опорных векторов), для которой эта задача подходит с точки зрения свойства универсального аппроксиматора. 2. Приближенное Д-обучение. При итерации по значениям, альтернативной итерации по стратегиям, Марковская задача принятия решений решается с использованием последовательной процедуры аппроксимации, сходящейся к оптимальной стратегии.
Я-обучение представляет собой асинхронную форму метода итерации по значениям, сформулированную для избежания необходимости явных знаний о вероятностях переходов между состояниями. Этот метод обладает следующими привлекательными особенностями. ° г г-обучение сходится к оптимальным Ц-значениям с вероятностью 1 при условии, что все пары значение-действие будут посещаться бесконечно часто, а параметры скорости обучения удовлетворяют условиям (12.41). ° Я-обучение напрямую корректирует оценки Я-факторов, связанных с оптимальной стратегией, и, таким образом, устраняет потребность в многочисленных шагах оценки, которые присутствуют в методе итерации по стратегиям. В приближенном 1г-обучении для аппроксимации оценок Я-факгоров используется нейронная сеть.
Это помогает избежать больших затрат памяти в задачах с большим количеством состояний. Короче говоря, приближенное 1Г-обучение является алгоритмом решения Марковской задачи принятия решений, основанным на моделировании. Этот алгоритм применяется, когда модель системы недоступна, а требования к экономии памяти стоят на первом месте. Естественно, его можно применить даже в случае доступности модели системы. В этом случае он становится альтернативой приближенному алгоритму итерации по стратегиям.
12.10. Резюме и обсуждение 796 Методы нейродинамического программирования особенно эффективны при решении масштабных задач, когда на первом месте стоит планирование. Традиционные подходы динамического программирования сложно применить к задачам такого типа, так как при этом необходимо исследовать пространство состояний слишком большой размерности. Нейродинамическое программирование успешно применялось на практике для решения сложных задач в различных прикладных областях, в том числе в игре в нарды (Ьаскйапппоп) [1046], [1048], в комбинаторной оптимизации [126], диспетчеризации (е1еча!ог д!зрагсЫпй) [233] и при динамическом распределении каналов (с$упаппса1 сйаппе! айосабоп) [783], [784], [996].