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

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

Функциональное уравнение ДП




Доверь свою работу кандидату наук!
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

Рассмотрим общую многошаговую задачу, к которой применим метод ДП. Пронумеруем шаги в порядке проведения условной оптимизации, в данной задаче с конца к началу. Эффективность i-го шага описывается функцией Zi(Si,Ui), где Si - состояние к i-му шагу (вектор параметров состояния), Ui - управление на i-м шаге (вектор управляемых переменных или решение). Структура задачи на рис.

Модель задачи ДП включает целевую функцию

описание допустимой области управлений D, а также уравнение состояния , связывающее между собой два последовательных состояния - выводится из условий задачи. Формализация вычислительной процедуры метода ДП базируется на принципе оптимальности. Для описания этого свойства введем после­довательность функций {fk(Sk)}, так, что каждая из них есть зависимость экстремального значения критерия за k оставшихся шагов от состояния на начало k-го шага: . Эф-ть k шагов: -

основное функциональное уравнение ДП/ рекуррентное соотношение. Для k=1:

. Алгоритм:

1. Имея описание и модель задачи, выделяем шаги и производим их нумерацию с конца.

2. Определяем параметры состояния и вводим последовательность функций {fk(Sk)}, , в которой каждая функцияfk(Sk) есть наилучшее значение критерия за k оставшихся шагов относительно состояния Sk.

3. На основе принципа оптимальности составляем функциональное уравнение ДП и отдельно выражение для f1.

9. Проводим условную оптимизацию, последовательно вычисляя f1, f2,...,fN. При этом на каждом шаге для всех возможных значений состояния Sk запоминаются значенияUk* и fk (в таблице или файле).

5.Исходя из заданного состояния SN^, проводим безусловную оптимизацию по схеме:

SN^®табл.N®UN*®у.с.®SN-1^®табл.N-1®UN-1*®у.с.®...®S1^®табл.1® U1*,

где у.с. - уравнение состояния. Значение fN(SN) из N-й таблицы есть оптимальное значение критерия задачи.


48. ДП: задача распределения ресурсов, достоинства ДП.

Необходимо распределить ресурс в количестве X между N предприятиями, если известно, что при выделении i-му предприятию ресурса xi оно дает прибыль ri(xi). К функциям ri не предъявляется каких-либо требований (например, дифференцируемости). Модель задачи: . Условия применимости ДП выполняются: и критерий, и ограничение задачи являются составными. Представим задачу как многошаговую. В качестве шага будем рассматривать выделение ресурса одному предприятию. Расположим предприятия в виде последовательности и пронумеруем их справа налево. Порядок предприятий в последовательности:

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

2. Если нет уверенности, что некоторое предприятие останется в рассматриваемой системе распределения, его следует поставить последним (на самое левое место); тогда в случае его удаления не придется решать задачу заново.

Состояние определяется количеством распределяемого ресурса, которое обозначим через V. Оно может относиться к разному числу предприятий, поэтому VЈX. В соответствии с процедурой ДП введем последовательность функций {fk(Vk)} так, что

есть максимальная прибыль k предприятий при распределении между ними ресурса в количестве Vk. Рекуррентное соотношение: Допустим, что осталось распределить ресурс Vk между k предприятиями. Выделим из них две части: k-е предприятие и все остальные k-1.

Примем решение по k-му предприятию: из всего имеющегося ресурса Vk выделим ему Xk. Тогда оно даст прибыль rk(xk), а система перейдет в состояние Vk-1, относительно которого следует искать решения на k-1 оставшихся шагах. По принципу оптимальности эти решения должны составлять оптимальное поведение независимо от того, как система попала в состояние Vk-1, то есть fk-1(Vk-1). В результате, прибыль k предприятий составит rk(xk) + fk-1(Vk-1). Уравнение состояния: Vk-1= Vk-xk -> rk(xk) + fk(Vk - xk), рекуррентное соотношение: . (1)

Допустимая область Dk, задаваемая диапазоном xk, явно зависит от состояния Vk. Формула применима для kі2. Для первой функции последовательности: f1(V1)= r1(V1), x1*=V1, так как весь имеющийся ресурс распределяется полностью.

Остановимся на вычислительной стороне формулы (1). В отдельных случаях при простых функциях rk(Vk) максимум может быть найден аналитически, однако в общем случае максимум находится одним из численных методов, в том числе полным перебором допустимых значений xk. Тогда, если xk и Vk - непрерывные величины, для вычислений по рекуррентному соотношению их необходимо дискретизировать. Шаг дискретности D выбирается по точности, с которой следует провести распределение ресурса. Шаг дискретности должен быть одинаковым для xk и Vk. Рекуррентная формула: где = 1,2,…,m; mD = X, D = Vk, mD = xk. Один из способов вычислений по формуле состоит в том, что сначала фиксируется , а затем ищется максимум правой части, и так для всех значений . Результаты заносятся в таблицу вида:

гдеxk*( D)- значение xk, доставляющее максимум при Vk= D. Все N таблиц, получаемых при последовательном расчете функций fk, имеют одинаковую структуру. Решение исходной задачи находится на этапе безусловной оптимизации: По значению VN=X входим в таблицу N, из которой берем fN(X) - максимальную прибыль от N предприятий при распределении между ними ресурса в количестве XиxN*=xN*(X) - количество ресурса, выделяемое N-му предприятию при оптимальном распределении ресурса X. По уравнению состояния находим VN-1=X-xN*, входим по этому значению состояния в таблицу N-1 и из нее извлекаем fN-1(X-xN*) и xN-1* - максимальную прибыль от N-1 предприятий и количество ресурса, выделяемое (N-1)-му предприятию при оптимальном распределении, соответственно. Пересчитываем состояние VN-2=VN-1-xN-1*=X-xN*-xN-1* и по нему входим в таблицу N-2, в которой найдем xN-2*, и так вплоть до таблицы 1, из которой получим x1*. В результате имеем оптимальное решение задачи распределения ресурса в количестве X.

На примере этой задачи отметим ряд достоинств метода ДП.

1. Задача содержит N переменных, которые после дискретизации могут принимать m значений. Поэтому порядок числа вариантов распределения определяется величиной mN. При расчете по рекуррентной формуле - Nm2/2.

2. В случае изменения количества распределяемого ресурса метод полного перебора и другие регулярные численные методы требуют решать задачу заново. В ДП, если новое значение не больше X, достаточно провести безусловную оптимизацию, взяв за исходное состояние новое значение ресурса. А безусловная оптимизация требует минимума элементарных действий. Это же возможно и при увеличении ресурса, если с самого начала решения задачи методом ДП увеличить значение X до максимально ожидаемого уровня либо дополнить часть последних таблиц недостающими строками.

3. При использовании любого метода оптимизации, кроме ДП, исключение одного из предприятий из системы распределения приведет к необходимости решать изменившуюся задачу как новую. В динамическом программировании, если этому предприятию был присвоен номер N, то есть оно было последним по ходу условной оптимизации, решение измененной задачи находится сразу: по заданному количеству распределяемого ресурса входим не в N-ю, а в (N-1)-ю таблицу и далее действуем в соответствии со схемой безусловной оптимизации, которая была рассмотрена выше.

4. Метод ДП не накладывает каких-либо специальных требований на вид и форму представления функций, составляющих критерий. Так функции r(V) могут быть недифференцируемыми, могут быть заданы даже в виде таблицы или графика, или задаваться алгоритмически.

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

6. Наложение специфических условий на переменные не «утяжеляет» решение задачи методом ДП (в отличие от многих других). Например, ограничения сверху и снизу или/и дискретность (в частности, целочисленность) переменных не затрудняют, а, наоборот, облегчают решение на каждом шаге.

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

 


49. ДП: задача о кратчайшем пути и с мультипликативным критерием.







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

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