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

Основные вопросы организации и управления. Сущность, понятие, методы и основные характеристики динамического программирования. Математические методы моделирования экономических систем. Составление матрицы максимальных прибылей, принцип оптимальности.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 25.06.2013
Размер файла 106,1 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

2

Содержание

оптимальность динамический программирование управление

Введение

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

1.1 Задача динамического программирование

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

1.3 Решение задачи

Заключение

Список использованных источников

Введение

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

Динамическое программирование представляет собой аппарат, позволяющий находить оптимальное решение, когда анализируемая ситуация не содержит факторов неопределённости, но имеет большое количество вариантов поведения, приносящих различные результаты, среди которых необходимо выбрать наилучший. Возникло и сформировалось в 1950-1953 гг. благодаря работам Р. Беллмана над динамическими задачами управления запасами.

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

Целью курсовой работы является изучение динамического программирования.

Задачами курсовой работы являются:

1. изучение основных понятий динамического программирования;

2. изучение основных методов динамического программирования;

3. изучение основных характеристик динамического программирования;

4. рассмотрение принципа оптимальности

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

1.1 Задача динамического программирования

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

Динамическое программирование (ДП) представляет собой математический метод, заслуга создания и развития которого принадлежит прежде всего Беллману. Метод можно использовать для решения весьма широкого круга задач, включая задачи распределения ресурсов, замены и управления запасами, задачи о загрузке.

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

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

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

Динамическое программирование позволяет осуществлять оптимальное планирование управляемых процессов. Под «управляемыми» понимаются процессы, на ход которых мы можем в той или другой степени влиять. Пусть предполагается к осуществлению некоторое мероприятие или серия мероприятий («операция»), преследующая определенную цель. Спрашивается: как нужно организовать (спланировать) операцию для того, чтобы она была наиболее эффективной? Для того, чтобы поставленная задача приобрела количественный, математический характер, необходимо ввести в рассмотрение некоторый численный критерий W, которым мы будем характеризовать качество, успешность, эффективность операции. Критерий эффективности в каждом конкретном случаи выбирается исходя из целевой направленности операции и задачи исследования (какой элемент управления оптимизируется и для чего). Сформулируем общий принцип, лежащий в основе решения всех задач динамического программирования («принцип оптимальности»): «Каково бы ни было состояние системы S перед очередным шагом, надо выбрать управление на этом шаге так, чтобы выигрыш на данном шаге плюс оптимальный выигрыш на всех последующих шагах был максимальным».

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

При постановке задач динамического программирования следует руководствоваться следующими принципами:

1. Выбрать параметры (фазовые координаты), характеризующие состояние S

управляемой системы перед каждым шагом.

2. Расчленить операцию на этапы (шаги).

3. Выяснить набор шаговых управлений xi для каждого шага и налагаемые на них ограничения.

4. Определить какой выигрыш приносит на i-ом шаге управление xi, если перед этим система была в состоянии S, т.е. записать «функцию выигрыша»:

Wi=ѓi(S,xi)

5. Определить, как изменяется состояние S системы S под влиянием управление xi на i-ом шаге: оно переходит в новое состояние

Њ=цi(S,xi) (1.1.1)

6.Записать основное рекуррентное уравнение динамического программирования, выражающее условный оптимальный выигрыш Wi(S) (начиная с i-го шага и до конца) через уже известную функцию

Wi +1(S): Wi(S)=mах{ѓi(S,xi)+Wi+1(цi(S,xi))} (1.1.2)

Этому выигрышу соответствует условное оптимальное управление на i-м шаге xi (S) (причем в уже известную функцию Wi +1(S) надо вместо S подставить измененное состояние Њ=цi(S,xi).

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

Wm(S)=mах{ѓm(S,xm)} (1.1.3)

8. Произвести условную оптимизацию (m-1)-го, (m-2)-го и т.д. шагов по формуле (1.2), полагая в ней i=(m-1),(m-2),., и для каждого из шагов указать условное оптимальное управление xi(S), при котором максимум достигается.

Заметим, что если состояние системы в начальный момент известно (а это обычно бывает так), то на первом шаге варьировать состояние системы не нужно - прямо находим оптимальный выигрыш для данного начального состояния S0. Это и есть оптимальный выигрыш за всю операцию WЅ=W1(S0)

9.Произвести безусловную оптимизацию управления, «читая» соответствующие рекомендации на каждом шаге. Взять найденное оптимальное управление на первом шаге ; изменить состояние системы по формуле (1.1); для вновь найденного состояния найти оптимальное управление на втором шаге х2* и т.д. до конца. Данные этапы рассматривались для аддитивных задач, в которых выигрыш за всю операцию равен сумме выигрышей на отдельных шагах.

Метод динамического программирования применим также и к задачам с так называемым «мультипликативным» критерием, имеющим вид произведения: W=Рwi (если только выигрыши wiположительны). Эти задачи решаются точно так же, как задачи с аддитивным критерием, с той единственной разницей, что в основном уравнении (1.1.2) вместо знака «плюс» ставится знак «умножения»:Wi(S)=mах{ѓi(S,xi)*Wi+1(цi(S,xi))}

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

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

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

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

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

1.3 Решение задачи

В начале планового периода продолжительностью N лет имеется оборудование возраста t лет. Известны: стоимость r(t) продукции, производимой в течение года с использованием этого оборудования; ежегодные расходы v(t), связанные с эксплуатацией оборудования; его остаточная стоимость s; стоимость p нового оборудования (сюда же включены расходы, связанные с установкой, наладкой и запуском оборудования). Требуется:

1)пользуясь функциональными управлениями, составить матрицу максимальных прибылей за N лет;

2)сформировать по матрице максимальных прибылей оптимальные стратегии замены оборудования данных возрастов t и лет в плановом периоде продолжительностью соответственно N и лет.

Параметр

Возраст оборудования t

0

1

2

3

4

5

6

7

8

9

10

r(t)

21

20

19

19

18

18

17

16

16

15

15

v(t)

11

11

11

12

12

13

13

13

14

14

15

N =

10

N1 =

6

T =

8

T1 =

4

s(t) =

3

p =

10

Анализ 10-го шага Для 1-го шага возможные состояния системы t = 1,2,3,4,5,6,7,8,9,10, а функциональные уравнения имеют вид:

F10(t) = max(r(t), (C); S(t) - P + r(0), (З) )

0

сохр

0

(21-11)=10

10

1

сохр

зам

1

0

11

0

F10(1) = max(9 ; 3 - 10 + 10) = 9 (C)

2

сохр

зам

2

0

10

0

F10(2) = max(8 ; 3 - 10 + 10) = 8 (C)

3

сохр

зам

3

0

8

0

F10(3) = max(7 ; 3 - 10 + 10) = 7 (C)

4

сохр

зам

4

0

7

0

F10(4) = max(6 ; 3 - 10 + 10) = 6 (C)

5

сохр

зам

5

0

5

0

F10(5) = max(5 ; 3 - 10 + 10) = 5 (C)

6

сохр

зам

6

0

5

0

F10(6) = max(4 ; 3 - 10 + 10) = 4 (C)

7

сохр

зам

7

0

4

0

F10(7) = max(3 ; 3 - 10 + 10) = 3 (C/З)

8

сохр

зам

8

0

3

0

F10(8) = max(2 ; 3 - 10 + 10) = 3 (З)

9

сохр

зам

9

0

1

0

F10(9) = max(1 ; 3 - 10 + 10) = 3 (З)

10

сохр

зам

10

0

0

0

F10(10) = max(0 ; 3 - 10 + 10) = 3 (З)

Анализ 9-го года Для 2-го шага возможные состояния системы t = 1,2,3,4,5,6,7,8,9, а функциональные уравнения имеют вид:

F9(t) = max(r(t) + F10(t+1) ; S(t) - P + r(0) + F10(1))

1

сохр

зам

1

0

2

1

11

0

11+10=21

0+11=11

F9(1) = max(9 + 8 ; 3 - 10 + 10 + 9) = 17 (C)

2

сохр

зам

2

0

3

1

10

0

10+8=18

0+11=11

F9(2) = max(8 + 7 ; 3 - 10 + 10 + 9) = 15 (C)

3

сохр

зам

3

0

4

1

8

0

8+7=15

0+11=11

F9(3) = max(7 + 6 ; 3 - 10 + 10 + 9) = 13 (C)

4

сохр

зам

4

0

5

1

7

0

7+5=12

0+11=11

F9(4) = max(6 + 5 ; 3 - 10 + 10 + 9) = 12 (З)

5

сохр

зам

5

0

6

1

5

0

5+5=10

0+11=11

F9(5) = max(5 + 4 ; 3 - 10 + 10 + 9) = 12 (З)

6

сохр

зам

6

0

7

1

5

0

5+4=9

0+11=11

F9(6) = max(4 + 3 ; 3 - 10 + 10 + 9) = 12 (З)

7

сохр

зам

7

0

8

1

4

0

4+3=7

0+11=11

F9(7) = max(3 + 3 ; 3 - 10 + 10 + 9) = 12 (З)

8

сохр

зам

8

0

9

1

3

0

3+1=4

0+11=11

F9(8) = max(2 + 3 ; 3 - 10 + 10 + 9) = 12 (З)

9

сохр

зам

9

0

10

1

1

0

1+0=1

0+11=11

F9(9) = max(1 + 3 ; 3 - 10 + 10 + 9) = 12 (З)

Анализ 8-го года Для 3-го шага возможные состояния системы t = 1,2,3,4,5,6,7,8, а функциональные уравнения имеют вид:

F8(t) = max(r(t) + F9(t+1) ; S(t) - P + r(0) + F9(1))

1

сохр

зам

1

0

2

1

11

0

11+18=21

0+21=21

F8(1) = max(9 + 15 ; 3 - 10 + 10 + 17) = 24 (C)

2

сохр

зам

2

0

3

1

10

0

10+15=25

0+21=21

F8(2) = max(8 + 13 ; 3 - 10 + 10 + 17) = 21 (C)

3

сохр

зам

3

0

4

1

8

0

8+12=20

0+21=21

F8(3) = max(7 + 12 ; 3 - 10 + 10 + 17) = 20 (З)

4

сохр

зам

4

0

5

1

7

0

7+11=18

0+21=21

F8(4) = max(6 + 12 ; 3 - 10 + 10 + 17) = 20 (З)

5

сохр

зам

5

0

6

1

5

0

5+11=16

0+21=21

F8(5) = max(5 + 12 ; 3 - 10 + 10 + 17) = 20 (З)

6

сохр

зам

6

0

7

1

5

0

5+11=16

0+21=21

F8(6) = max(4 + 12 ; 3 - 10 + 10 + 17) = 20 (З)

7

сохр

зам

7

0

8

1

4

0

4+11=15

0+21=21

F8(7) = max(3 + 12 ; 3 - 10 + 10 + 17) = 20 (З)

8

сохр

зам

8

0

9

1

3

0

3+11=14

0+21=21

F8(8) = max(2 + 12 ; 3 - 10 + 10 + 17) = 20 (З)

Анализ 7-го года Для 4-го шага возможные состояния системы t = 1,2,3,4,5,6,7, а функциональные уравнения имеют вид:

F7(t) = max(r(t) + F8(t+1) ; S(t) - P + r(0) + F8(1))

1

сохр

зам

1

0

2

1

11

0

11+25=36

0+29=29

F7(1) = max(9 + 21 ; 3 - 10 + 10 + 24) = 30 (C)

2

сохр

зам

2

0

3

1

10

0

10+21=31

0+29=29

F7(2) = max(8 + 20 ; 3 - 10 + 10 + 24) = 28 (C)

3

сохр

зам

3

0

4

1

8

0

8+21=29

0+29=29

F7(3) = max(7 + 20 ; 3 - 10 + 10 + 24) = 27 (C/З)

4

сохр

зам

4

0

5

1

7

0

7+21=28

0+29=29

F7(4) = max(6 + 20 ; 3 - 10 + 10 + 24) = 27 (З)

5

сохр

зам

5

0

6

1

5

0

5+21=26

0+29=29

F7(5) = max(5 + 20 ; 3 - 10 + 10 + 24) = 27 (З)

6

сохр

зам

6

0

7

1

5

0

5+21=26

0+29=29

F7(6) = max(4 + 20 ; 3 - 10 + 10 + 24) = 27 (З)

7

сохр

зам

7

0

8

1

4

0

4+21=25

0+29=29

F7(7) = max(3 + 20 ; 3 - 10 + 10 + 24) = 27 (З)

8

сохр

зам

8

0

9

1

3

0

3+21=24

0+29=29

9

сохр

зам

9

0

10

1

1

0

1+21=22

0+29=29

10

сохр

зам

10

0

11

1

1

0

0+29=29

Анализ 6-го года. Для 5-го шага возможные состояния системы t = 1,2,3,4,5,6, а функциональные уравнения имеют вид:

F6(t) = max(r(t) + F7(t+1) ; S(t) - P + r(0) + F7(1))

1

сохр

зам

1

0

2

1

11

0

11+31=42

0+36=36

F6(1) = max(9 + 28 ; 3 - 10 + 10 + 30) = 37 (C)

2

сохр

зам

2

0

3

1

10

0

10+29=39

0+36=36

F6(2) = max(8 + 27 ; 3 - 10 + 10 + 30) = 35 (C)

3

сохр

зам

3

0

4

1

8

0

8+29=37

0+36=36

F6(3) = max(7 + 27 ; 3 - 10 + 10 + 30) = 34 (C)

4

сохр

зам

4

0

5

1

7

0

7+29=36

0+36=36

F6(4) = max(6 + 27 ; 3 - 10 + 10 + 30) = 33 (C/З)

5

сохр

зам

5

0

6

1

5

0

5+29=34

0+36=36

F6(5) = max(5 + 27 ; 3 - 10 + 10 + 30) = 33 (З)

6

сохр

зам

6

0

7

1

5

0

5+29=34

0+36=36

F6(6) = max(4 + 27 ; 3 - 10 + 10 + 30) = 33 (З)

7

сохр

зам

7

0

8

1

4

0

4+29=33

0+36=36

8

сохр

зам

8

0

9

1

3

0

3+29=32

0+36=36

9

сохр

зам

9

0

10

1

1

0

1+29=30

0+36=36

10

сохр

зам

10

0

11

1

1

0

0+36=36

Анализ 5-го года Для 6-го шага возможные состояния системы t = 1,2,3,4,5, а функциональные уравнения имеют вид:

F5(t) = max(r(t) + F6(t+1) ; S(t) - P + r(0) + F6(1))

1

сохр

зам

1

0

2

1

11

0

11+39=50

0+42=42

F5(1) = max(9 + 35 ; 3 - 10 + 10 + 37) = 44 (C)

2

сохр

зам

2

0

3

1

10

0

10+37=47

0+42=42

F5(2) = max(8 + 34 ; 3 - 10 + 10 + 37) = 42 (C)

3

сохр

зам

3

0

4

1

8

0

8+36=44

0+42=42

F5(3) = max(7 + 33 ; 3 - 10 + 10 + 37) = 40 (C/З)

4

сохр

зам

4

0

5

1

7

0

7+36=43

0+42=42

F5(4) = max(6 + 33 ; 3 - 10 + 10 + 37) = 40 (З)

5

сохр

зам

5

0

6

1

5

0

5+36=41

0+42=42

F5(5) = max(5 + 33 ; 3 - 10 + 10 + 37) = 40 (З)

6

сохр

зам

6

0

7

1

5

0

5+36=41

0+42=42

7

сохр

зам

7

0

8

1

4

0

4+36=40

0+42=42

8

сохр

зам

8

0

9

1

3

0

3+36=39

0+42=42

9

сохр

зам

9

0

10

1

1

0

1+36=37

0+42=42

10

сохр

зам

10

0

11

1

1

0

0+42=42

Анализ 4-го года Для 7-го шага возможные состояния системы t = 1,2,3,4, а функциональные уравнения имеют вид:

F4(t) = max(r(t) + F5(t+1) ; S(t) - P + r(0) + F5(1))

1

сохр

зам

1

0

2

1

11

0

11+47=57

0+50=50

F4(1) = max(9 + 42 ; 3 - 10 + 10 + 44) = 51 (C)

2

сохр

зам

2

0

3

1

10

0

10+44=54

0+50=50

F4(2) = max(8 + 40 ; 3 - 10 + 10 + 44) = 48 (C)

3

сохр

зам

3

0

4

1

8

0

8+43=51

0+50=50

F4(3) = max(7 + 40 ; 3 - 10 + 10 + 44) = 47 (C/З)

4

сохр

зам

4

0

5

1

7

0

7+42=49

0+50=50

F4(4) = max(6 + 40 ; 3 - 10 + 10 + 44) = 47 (З)

5

сохр

зам

5

0

6

1

5

0

5+42=47

0+50=50

6

сохр

зам

6

0

7

1

5

0

5+42=47

0+50=50

7

сохр

зам

7

0

8

1

4

0

4+42=46

0+50=50

8

сохр

зам

8

0

9

1

3

0

3+42=45

0+50=50

9

сохр

зам

9

0

10

1

1

0

1+42=43

0+50=50

10

сохр

зам

10

0

11

1

1

0

0+50=50

Анализ 3-го года Для 8-го шага возможные состояния системы t = 1,2,3, а функциональные уравнения имеют вид:

F3(t) = max(r(t) + F4(t+1) ; S(t) - P + r(0) + F4(1))

1

сохр

зам

1

0

2

1

11

0

11+54=65

0+57=57

F3(1) = max(9 + 48 ; 3 - 10 + 10 + 51) = 57 (C)

2

сохр

зам

2

0

3

1

10

0

10+51=61

0+57=57

F3(2) = max(8 + 47 ; 3 - 10 + 10 + 51) = 55 (C)

3

сохр

зам

3

0

4

1

8

0

8+50=58

0+57=57

F3(3) = max(7 + 47 ; 3 - 10 + 10 + 51) = 54 (C/З)

4

сохр

зам

4

0

5

1

7

0

7+50=57

0+57=57

5

сохр

зам

5

0

6

1

5

0

5+50=55

0+57=57

6

сохр

зам

6

0

7

1

5

0

5+50=55

0+57=57

7

сохр

зам

7

0

8

1

4

0

4+50=54

0+57=57

8

сохр

зам

8

0

9

1

3

0

3+50=53

0+57=57

9

сохр

зам

9

0

10

1

1

0

1+50=51

0+57=57

10

сохр

зам

10

0

11

1

1

0

0+57=57

Анализ 2-го года Для 9-го шага возможные состояния системы t = 1,2, а функциональные уравнения имеют вид:

F2(t) = max(r(t) + F3(t+1) ; S(t) - P + r(0) + F3(1))

1

сохр

зам

1

0

2

1

11

0

11+61=72

0+65=65

F2(1) = max(9 + 55 ; 3 - 10 + 10 + 57) = 64 (C)

2

сохр

зам

2

0

3

1

10

0

10+58=68

0+65=65

F2(2) = max(8 + 54 ; 3 - 10 + 10 + 57) = 62 (C)

3

сохр

зам

3

0

4

1

8

0

8+57=65

0+65=65

4

сохр

зам

4

0

5

1

7

0

7+57=64

0+65=65

5

сохр

зам

5

0

6

1

5

0

5+57=62

0+65=65

6

сохр

зам

6

0

7

1

5

0

5+57=62

0+65=65

7

сохр

зам

7

0

8

1

4

0

4+57=61

0+65=65

8

сохр

зам

8

0

9

1

3

0

3+57=60

0+65=65

9

сохр

зам

9

0

10

1

1

0

1+57=58

0+65=65

10

сохр

зам

10

0

11

1

1

0

0+65=65

Анализ 1-го года. Для 10-го шага возможные состояния системы t = 1, а функциональные уравнения имеют вид:

F1(t) = max(r(t) + F2(t+1) ; S(t) - P + r(0) + F2(1))

1

сохр

зам

1

0

2

1

11

0

11+68=79

0+72=72

F1(1) = max(9 + 62 ; 3 - 10 + 10 + 64) = 71 (C)

2

сохр

зам

2

0

3

1

10

0

10+65=75

0+72=72

3

сохр

зам

3

0

4

1

8

0

8+65=74

0+72=72

4

сохр

зам

4

0

5

1

7

0

7+65=72

0+72=72

5

сохр

зам

5

0

6

1

5

0

5+65=70

0+72=72

6

сохр

зам

6

0

7

1

5

0

5+65=70

0+72=72

7

сохр

зам

7

0

8

1

4

0

4+65=69

0+72=72

8

сохр

зам

8

0

9

1

3

0

3+65=68

0+72=72

9

сохр

зам

9

0

10

1

1

0

1+65=66

0+72=72

10

сохр

зам

10

0

11

1

1

0

0+72=72

Составим матрицу максимальной прибыли

Периоды

1-10

2-10

3-10

4-10

5-10

6-10

7-10

8-10

9-10

10

0

1

71

0

0

0

0

0

0

0

0

0

2

64

62

0

0

0

0

0

0

0

0

3

57

55

54

0

0

0

0

0

0

0

4

51

48

47

47

0

0

0

0

0

0

5

44

42

40

40

40

0

0

0

0

0

6

37

35

34

33

33

33

0

0

0

0

7

30

28

27

27

27

27

27

0

0

0

8

24

21

20

20

20

20

20

20

0

0

9

17

15

13

12

12

12

12

12

12

0

10

9

8

7

6

5

4

3

3

3

3

2) З=>С=>С=>С=>С=>З=>С=>С=>С=>С

С=>С=>С=>З=>С=>С=>С

Безусловная оптимизация (k = 10,9,8,7,6,5,4,3,2,1)

Безусловная оптимизация начинается с шага при k = 1. Максимальной возможный доход от эксплуатации оборудования за годы с 1-го по 11-й составляет F1(1) = 71. Этот оптимальный выигрыш достигается, если на первом году не производить замены оборудования.

К началу 2-го года возраст оборудования увеличится на единицу и составит: t2 = t1 + 1 = 1 + 1 = 2.

Оптимальное управление при k = 2, x2(2) = (C), т.е. максимум дохода за годы с 2-го по 10-й достигается, если оборудование сохраняется, т.е. не заменяется.

К началу 3-го года возраст оборудования увеличится на единицу и составит: t3 = t2 + 1 = 2 + 1 = 3.

Безусловное оптимальное управление при k = 3, x3(3) = (C/З), т.е. для получения максимума прибыли за оставшиеся годы необходимо в этом году провести замену оборудования.

К началу 4-го года возраст оборудования увеличится на единицу и составит: t4 = t3 + 1 = 0 + 1 = 1.

Оптимальное управление при k = 4, x4(1) = (C), т.е. максимум дохода за годы с 4-го по 10-й достигается, если оборудование сохраняется, т.е. не заменяется.

К началу 5-го года возраст оборудования увеличится на единицу и составит: t5 = t4 + 1 = 1 + 1 = 2.

Оптимальное управление при k = 5, x5(2) = (C), т.е. максимум дохода за годы с 5-го по 10-й достигается, если оборудование сохраняется, т.е. не заменяется.

К началу 6-го года возраст оборудования увеличится на единицу и составит: t6 = t5 + 1 = 2 + 1 = 3.

Оптимальное управление при k = 6, x6(3) = (C), т.е. максимум дохода за годы с 6-го по 10-й достигается, если оборудование сохраняется, т.е. не заменяется.

К началу 7-го года возраст оборудования увеличится на единицу и составит: t7 = t6 + 1 = 3 + 1 = 4.

Безусловное оптимальное управление при k = 7, x7(4) = (З), т.е. для получения максимума прибыли за оставшиеся годы необходимо в этом году провести замену оборудования.

К началу 8-го года возраст оборудования увеличится на единицу и составит: t8 = t7 + 1 = 0 + 1 = 1.

Оптимальное управление при k = 8, x8(1) = (C), т.е. максимум дохода за годы с 8-го по 10-й достигается, если оборудование сохраняется, т.е. не заменяется.

К началу 9-го года возраст оборудования увеличится на единицу и составит: t9 = t8 + 1 = 1 + 1 = 2.

Оптимальное управление при k = 9, x9(2) = (C), т.е. максимум дохода за годы с 9-го по 10-й достигается, если оборудование сохраняется, т.е. не заменяется.

К началу 10-го года возраст оборудования увеличится на единицу и составит: t10 = t9 + 1 = 2 + 1 = 3.

Оптимальное управление при k = 10, x10(3) = (C), т.е. максимум дохода за годы с 10-го по 10-й достигается, если оборудование сохраняется, т.е. не заменяется.

Таким образом, за 10 лет эксплуатации оборудования замену надо произвести:

- в начале 3-го года эксплуатации

- в начале 7-го года эксплуатации

Заключение

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

Были осуществлены следующие задачи:

1) изучение основных понятий динамического программирования;

2) изучение основных методов динамического программирования;

3) изучение основных характеристик динамического программирования;

4) рассмотрение принципа оптимальности.

Список использованных источников

1. Алесинская Т.В. Учебное пособие по решению задач по курсу "Экономико-математические методы и модели". - Таганрог: Изд-во ТРТУ, 2004. - 153с.

2. Афанасьев М.Ю., Суворов Б.П. Исследование операций в экономике: модели, задачи, решения. - М.: ИНФРА, 2005. - 444c.

3. Бережная Е.В., Бережной В.И. Математические методы моделирования экономических систем. Учебное пособие. - М.: финансы и статистика, 2005. - 386с.

4. Кормен, Т., Лейзерсон, Ч., Ривест, Р., Штайн, К. Глава 15. Динамическое программирование // Алгоритмы: построение и анализ / Под ред. И. В. Красикова. -- 2-е изд. -- М.: Вильямс, 2005. -- 1296 с.

5. Тынкевич М.А. Экономико-математические методы (исследование операций). - Кемерово, 2006. - 177с.

6. Хазанова Л.Э. Математические методы в экономике: Учебное пособие. - М.: Издательство БЕК, 2006. - 144с.

7. Щербина О. А. Методологические аспекты динамического программирования // Динамические системы, 2007, вып. 22. -- c.21-36

Размещено на Allbest.ru

...

Подобные документы

  • Общая характеристика динамического программирования: задачи о коммивояжере, о назначении, о теории расписаний. Численные методы ветвей и границ, методы отсечения. Задачи целостного программирования с булевыми переменными. Аддиктивный метод Балаша.

    учебное пособие [534,1 K], добавлен 11.07.2010

  • Постановка задачи динамического программирования. Поведение динамической системы как функция начального состояния. Математическая формулировка задачи оптимального управления. Метод динамического программирования. Дискретная форма вариационной задачи.

    реферат [59,9 K], добавлен 29.09.2008

  • Сущность и особенности выполнения метода динамического программирования. Решение математической задачи, принцип оптимальности по затратам, ручной счёт и листинг программы. Применение метода ветвей и границ, его основные преимущества и недостатки.

    курсовая работа [38,9 K], добавлен 15.11.2009

  • Постановка задачи динамического программирования. Составление основного функционального управления динамического программирования, определяющего условный оптимальный выигрыш для данного состояния. Выбор оптимальной стратегии замены оборудования.

    курсовая работа [873,9 K], добавлен 02.07.2014

  • Класс задач, к которым применяются методы динамического программирования. Решения задачи распределения капитальных вложений между предприятиями путем построения математической модели. Программа "Максимизации капиталовложений" на базе Microsoft Excel.

    курсовая работа [1,4 M], добавлен 28.10.2014

  • Обзор задач, решаемых методом динамического программирования. Составление маршрута оптимальной длины. Перемножение цепочки матриц. Задача "Лестницы". Анализ необходимости использования специальных методов вероятностного динамического программирования.

    курсовая работа [503,3 K], добавлен 28.06.2015

  • Сущность математических моделей, классификация и принципы их построения. Анализ операционного исследования. Этапы решения задачи принятия оптимальных решений с помощью ЭВМ. Примеры задач линейного программирования. Математические методы экспертных оценок.

    курсовая работа [56,0 K], добавлен 20.11.2015

  • Достижения математики в теории полумарковских процессов. Связь управляемых полумарковских процессов и динамического программирования. Разработка программы модели управляемого полумарковского процесса, реализованной на языке программирования СИ++.

    курсовая работа [356,7 K], добавлен 10.09.2017

  • Понятие алгоритма и его характеристики как основного элемента программирования. Формы представления алгоритмов, основные алгоритмические структуры. Структурное и событийно-ориентированное программирование. Объектно-ориентированное программирование.

    реферат [86,0 K], добавлен 17.07.2008

  • Основные принципы моделирования систем массового обслуживания (СМО) на ЭВМ. Разработка моделирующего алгоритма и составление блок-схемы имитации торгового центра на ПЭВМ. Программа моделирования торгового центра на одном из языков программирования.

    лабораторная работа [77,4 K], добавлен 15.06.2010

  • Основные методы структурного программирования. Методы половинного деления, Крамера, прямоугольников. Применение языка программирования Turbo Pascal 7.0. Решение системы линейных алгебраических уравнений. Описание стандартных и не стандартных функций.

    курсовая работа [376,8 K], добавлен 14.01.2015

  • Основные концепции языков программирования, механизмы типизации данных. Описание языков программирования и методов трансляции. Конечные автоматы и преобразователи. Общие методы синтаксического анализа. Формальные методы описания языкового перевода.

    курс лекций [5,5 M], добавлен 04.12.2013

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

    презентация [674,9 K], добавлен 30.10.2013

  • Модель динамического программирования для решения задач оптимального распределения ресурсов. Принцип оптимальности, уравнение Беллмана. Двумерная и дискретная динамическая модель. Значение метода в решении прикладных задач различных областей науки.

    курсовая работа [400,2 K], добавлен 01.10.2009

  • Основные операции над матрицами. Формирование матрицы из файла. Ввод матрицы с клавиатуры. Заполнение матрицы случайными числами. Способы формирования двухмерных массивов в среде программирования С++. Произведение определенных элементов матрицы.

    курсовая работа [537,0 K], добавлен 02.06.2015

  • Методы решения задачи оптимального резервирования технической системы. Решение задачи методами неопределенных множителей Лагранжа и динамического программирования. Построение оптимальной схемы системы при нагруженном резервировании ее элементов.

    лабораторная работа [31,5 K], добавлен 10.06.2009

  • Понятие большой системы управления. Модель структурного сопряжения элементов. Организация многоуровневой структуры управления. Общая задача линейного программирования. Элементы динамического программирования. Постановка задачи структурного синтеза.

    учебное пособие [1,3 M], добавлен 24.06.2009

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

    контрольная работа [522,9 K], добавлен 05.08.2010

  • Методы языка программирования C#. Алгоритмизация и программирование задач на языке высокого уровня C#. Внутренний цикл, ветвление, внешний цикл, вложенные друг в друга структуры ветвления. Вывод элементов массива на экран. Остальные элементы матрицы.

    курсовая работа [250,2 K], добавлен 27.02.2015

  • Постановка задачи нелинейного программирования. Критерии оптимальности в задачах с ограничениями. Задачи с ограничением в виде равенств. Метод исключения переменных. Интерпретация условий Куна-Таккера. Функции нескольких переменных. Методы прямого поиска.

    реферат [330,0 K], добавлен 29.09.2008

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.