Студопедия — Динамическое программирование
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Динамическое программирование

Электронный учебник – один из элементов обучающих систем. Можно рекомендовать следующую последовательность их проектирования.

1. Разработка модели содержания учебного материала ЭУ.

Строят на основе модели содержания всего комплекса. Дело в том, что учебный комплекс может включать набор из нескольких ЭУ. При этом разбиение учебного материала на УЭ проводят исходя из рекомендуемых размеров информационных блоков (1 страница текста, 2-3 иллюстрации).

2. Разработка модели освоения учебного материала ЭУ. За основу принимают модель всего комплекса.

3. Разработка содержания информационных блоков.

Для каждого УЭ готовят учебные тексты, эскизы графических иллюстраций, сценарии анимационных вставок и т.п. Здесь же готовят ИБ для мотивационных, вводных и обобщающих фрагментов ЭУ.

4. Формирование последовательности ИБ. Располагают их в соответствии с моделью освоения учебного материала и с учетом мотивационных, вводных и обобщающих ИБ.

5. Выбор структуры ЭУ.

Возможные варианты: глобальная многослойная структура, при реализации которой все УЭ осваиваются на уровне a = 1, затем на уровне a = 2 и т.д.; локальная многослойная структура, в которой продвижение вверх по осуществляется внутри каждого фрагмента ЭУ.

6. Разработка упражнений и кадров обратной связи к ним.

Для каждого ИБ готовят не менее 2-5 упражнений на каждом уровне усвоения a, предусмотренном в модели содержания учебного материала. Типы упражнений выбирают в соответствии с уровнем усвоения a и выбранным психологическим механизмом усвоения знаний. Последовательность выполнения упражнений планируют также с учетом выбранной теории усвоения. Форму упражнений определяют на основе возможностей используемой инструментальной среды.

Таковы основные этапы проектирования ЭУ. Естественно, что ориентация на конкретные инструментальные средств для разработки ЭУ будет вносить какие-либо изменения, но они вряд ли будут принципиальны в дидактическом плане.

Динамическое программирование

Динамическое программирование – метод оптимизации, приспособленный к операциям, в которых процесс принятия решения может быть разбит на этапы (шаги). Такие операции называются многошаговыми.

Начало развития динамического программирования относится к 50-м годам ХХ в. и связано с именем Ричарда Эрнеста Беллмана.

Если модели линейного программирования можно использовать в экономике для принятия крупномасштабных плановых решений в сложных ситуациях, то модели динамического программирования применяются при решении задач значительно меньшего масштаба, например, при разработке правил управления запасами; при распределении инвестиционных ресурсов между альтернативными проектами; при составлении календарных планов текущего и капитального ремонта сложного оборудования и его замены и т.п.

Общая постановка задачи динамического программирования.

Рассматривается управляемый процесс, например, процесс распределения средств между предприятиями, использования ресурсов в течение ряда лет, замены оборудования и т.п. В результате управления система (объект управления) S переводится из начального состояния s0 в состояние sn. Пусть, управление можно разбить на n шагов, т.е. решение принимается последовательно на каждом шаге, а управление, переводящее систему S из начального состояния в конечное, представляет собой совокупность n пошаговых управленческих решений.

Обозначим через Xk управленческое решение на k -м шаге (k =1, 2, …, n). Переменные Xk удовлетворяют некоторым ограничениям и в этом смысле называются допустимыми (Xk может быть числом, точкой в n -мерном пространстве или качественным признаком).

Пусть X= (X1, X2, …, Xn) – управление, переводящее систему S из состояния s0 в состояние sn. Обозначим через sk состояние системы (характеризуемое определенным набором параметров и конкретных их значений) после k -го шага управления. Причем состояние системы sk в конце k -го шага зависит только от предшествующего состояния sk-1 и управленческого решения на k -ом шаге Xk (т.е. не зависит напрямую от предшествующих состояний и управленческих решений). Данное требование называется «отсутствием последствия» и может быть выражено следующими уравнениями состояний:

. (3.1)

Таким образом, получаем последовательность состояний s0, s1, …, sk-1, sk, …, sn-1, sn. Тогда n -шаговый управленческий процесс схематично можно изобразить следующим образом:

 
 


Пусть показатель эффективности k -го шага выражается некоторой функцией:

, (3.2)

а эффективность всего рассматриваемого многошагового процесса следующей аддитивной функцией:

, (3.3)

или

. (3.4)

Тогда задача пошаговой оптимизации (задача динамического программирования) формулируется следующим образом: определить такое допустимое управление Х, переводящее систему S из состояния s0 в состояние sn, при котором целевая функция Z принимает наибольшее (наименьшее) значение.

Задача динамического программирования обладает следующими особенностями:

1. Задача оптимизации интерпретируется как n -шаговый процесс управления.

2. Целевая функция равна сумме целевых функций каждого шага.

3. Выбор управления на k -ом шаге зависит только от состояния системы к этому шагу, не влияет на предшествующие шаги (отсутствие обратной связи).

4. Состояние sk после k -го шага управления зависит только от предшествующего состояния sk-1 и управления Xk («отсутствие последствия»).

5. На каждом шаге управление Xk зависит от конечного числа управляющих переменных, а состояние sk – от конечного числа параметров.

Принцип оптимальности впервые был сформулирован Ричардом Эрнестом Беллманом в 1953 г. (в трактовке Е.С. Вентцель):

«Каково бы ни было состояние системы в результате какого-либо числа шагов, на ближайшем шаге нужно выбирать управление таким образом, чтобы оно в совокупности с оптимальным управлением на всех последующих шагах приводило к оптимальному выигрышу на всех оставшихся шагах, включая данный.»

Р.Э. Беллманом были сформулированы и условия, при которых принцип верен. Основное требование – процесс управления должен быть без обратной связи, т.е. управление на данном шаге не должно оказывать влияния на предшествующие шаги.

Рассмотрим общую задачу динамического программирования, приведенную выше. На каждом шаге кроме последнего для любого состояния системы sk-1 управленческое решение Xk необходимо выбирать «с оглядкой», так как этот выбор влияет на последующее состояние системы sk.

На последнем шаге исходя из состояния системы sn-1 управленческое решение Xn можно планировать локально-оптимально, т.е. исходя только из соображений этого шага.

Рассмотрим последний n -й шаг:

sn-1 – состояние системы к началу n -го шага;

sn – конечное состояние системы;

Xn – управление на n -ом шаге;

fn (sn-1, Xn) – целевая функция (выигрыш) n -го шага.

Согласно принципу оптимальности, Xn нужно выбирать таким образом, чтобы для любых состояний системы sn-1 получить оптимум целевой функции на этом шаге.

Обозначим через оптимум (для определенности примем максимум) целевой функции – показатель эффективности n -го шага при условии, что к началу последнего шага система S была в произвольном состоянии sn-1, а на последнем шаге управление было оптимальным.

называют условным максимумом целевой функции на n -ом шаге, и определяют по следующей формуле:

. (3.5)

Максимизация ведется по всем допустимым управлениям Xn.

Решение Xn, при котором достигается , также зависит от sn-1 и называется условным оптимальным решением на n -ом шаге. Обозначим его через .

Решив одномерную задачу локальной оптимизации по уравнению (3.5), определим для всех возможных состояний sn-1 две функции и .

Рассмотрим двухшаговую задачу: присоединим к n -му шагу (n– 1)-й.

Для любых состояний sn-2, произвольных управленческих решений Xn-1 и оптимальном управлении на n -ом шаге значение целевой функции на двух последних шагах вычисляется по формуле:

. (3.6)

Согласно принципу оптимальности Беллмана для любых sn-2 решение нужно выбирать так, чтобы оно вместе с оптимальным управлением на последнем (n -ом) шаге приводило бы к оптимуму целевой функции на двух последних шагах. Следовательно, необходимо отыскать оптимум выражения (3.6) по всем допустимым управленческим решениям Xn-1:

. (3.7)

– называют условным максимумом целевой функции при оптимальном управлении на двух последних шагах. Необходимо отметить, что выражение в фигурных скобках в формуле (3.7), зависит только от sn-2 и Xn-1, так как sn-1 можно найти из уравнения состояний (3.1) при :

. (3.8)

Соответствующее управление Xn-1 на (n– 1)-ом шаге обозначается через и называют условным оптимальным управлением на (n– 1)-ом.

Аналогично определяются условные оптимумы целевой функции при оптимальном управлении на (nk+1) шагах, начиная с k -го до конца, при условии, что к началу k -го шага система находилась в состоянии sk-1:

. (3.9)

Управление Xk на k -ом шаге, при котором достигается максимум по (3.9), обозначается и называется условным оптимальным управлением на k -ом шаге.

Уравнения (3.5) и (3.9) называют рекуррентными уравнения Беллмана (обратная схема). Процесс решения данных уравнений называют условной оптимизацией.

В результате условной оптимизации получаются две последовательности:

, , …, , – условные максимумы целевой функции на последнем, двух последних, …, на n шагах;

, , …, , – условные оптимальные управления на n -ом, (n –1)-ом, …, на 1-ом шагах.

Используя данные последовательности, можно найти решение задачи динамического программирования при данных n и s0:

В результате получаем оптимальное решение задачи динамического программирования: .

Аналогично рассуждая, можно выстроить и прямую схему условной оптимизации:

, (3.10)

. (3.11)

Оптимальное решение задачи в данном случае находится по следующей схеме:

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

1. Выбирают способ деления процесса управления на шаги.

2. Определяют параметры состояния sk и переменные управления Xk на каждом шаге, записывают уравнения состояний.

3. Вводят целевые функции k -ого шага и суммарную целевую функцию, а также условные оптимумы и условное оптимальное управление на k -ом шаге ().

4. Записывают в соответствии с обратной или прямой схемой рекуррентные уравнения Беллмана и после выполнения условной оптимизации получают две последовательности: { } и { }.

5. Определяют оптимальное значение целевой функции и оптимальное решение .

 




<== предыдущая лекция | следующая лекция ==>
Тестовый контроль. Тестовый контроль осуществляется по методу "вопрос-ответ", т.е | 

Дата добавления: 2015-03-11; просмотров: 745. Нарушение авторских прав; Мы поможем в написании вашей работы!



Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

Закон Гука при растяжении и сжатии   Напряжения и деформации при растяжении и сжатии связаны между собой зависимостью, которая называется законом Гука, по имени установившего этот закон английского физика Роберта Гука в 1678 году...

Характерные черты официально-делового стиля Наиболее характерными чертами официально-делового стиля являются: • лаконичность...

Этапы и алгоритм решения педагогической задачи Технология решения педагогической задачи, так же как и любая другая педагогическая технология должна соответствовать критериям концептуальности, системности, эффективности и воспроизводимости...

Дезинфекция предметов ухода, инструментов однократного и многократного использования   Дезинфекция изделий медицинского назначения проводится с целью уничтожения патогенных и условно-патогенных микроорганизмов - вирусов (в т...

Машины и механизмы для нарезки овощей В зависимости от назначения овощерезательные машины подразделяются на две группы: машины для нарезки сырых и вареных овощей...

Классификация и основные элементы конструкций теплового оборудования Многообразие способов тепловой обработки продуктов предопределяет широкую номенклатуру тепловых аппаратов...

Studopedia.info - Студопедия - 2014-2024 год . (0.011 сек.) русская версия | украинская версия