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

Автор работы: Пользователь скрыл имя, 12 Февраля 2012 в 08:22, курсовая работа

Краткое описание

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

Содержимое работы - 1 файл

Егоров Эрик - 080105(1)-2..doc

— 115.00 Кб (Скачать файл)

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

               ƒi(xi-1)=min{C1(xi- bi)+ C2(xi- xi-1)+ ƒi+1(xi)},i=1,2,…,n,          (1.3.1)

где ƒn+1(xn)=0

Вычисления  начинаются с этапа n при xn=bn и заканчиваются на этапе 1. 

  1. Задача  замены оборудования.

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

     Предположим, что мы занимаемся заменой механизмов на протяжении n лет. В начале каждого  года принимается решение либо об эксплуатации механизма еще один год, либо о замене его новым. Обозначим  через r(t) и c(t) прибыль от эксплуатации t-летнего механизма на протяжении года и затраты на его обслуживание за этот же период. Далее пусть s(t) – стоимость продажи механизма, который эксплуатировался t лет. Стоимость приобретения нового механизма остается неизменной на протяжении всех лет и равна l.

Элементы  модели динамического программирования таковы:

1. Этап  і представляется порядковым  номером года і, і=1,2,...n.

2. Вариантами  решения на і-м этапе (т.е.  для і-ого года) являются альтернативы: продолжить эксплуатацию или  заменить механизм в начале і-ого года.

3. Состоянием  на і-м этапе является срок  эксплуатации t (возраст) механизма  к началу і-ого года.

     Пусть fi(t)-максимальная прибыль, получаемая за годы от і до n при условии, что в начале і-ого года имеется механизм t-летнего возраста.

     Рекуррентное  уравнение имеет следующий вид:

(1)-если  эксплуатировать механизм,

(2)-если  заменить механизм.

   

  1. Задача инвестирования.

     Предположим, что в начале каждого из следующих n лет необходимо сделать инвестиции P1, P2,., Pn соответственно. Вы имеете возможность вложить капитал в два банка: первый банк выплачивает годовой сложный процент r1, а второй - r2. Для поощрения депозитов оба банка выплачивают новым инвесторам премии в виде процента от вложенной суммы. Премиальные меняются от года к году, и для і-ого года равны qi1 и qi1 в первом и втором банках соответственно. Они выплачиваются к концу года, на протяжении которого сделан вклад, и могут быть инвестированы в один из двух банков на следующий год. Это значит, что лишь указанные проценты и новые деньги могут быть инвестированы в один из двух банков. Размещенный в банке вклад должен находится там до конца рассматриваемого периода. Необходимо разработать стратегию инвестиции на следующие n лет.

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

1.   Этап і представляется порядковым  номером года і, і=1,2,...n

2.   Вариантами решения на і-м этапе  (для і-ого года) являются суммы  Ii инвестиций в первый и второй банк соответственно.

3.   Состоянием xi на і-м этапе является сумма денег на начало і-ого года, которые могут быть инвестированы.

       Заметим, что по определению  Īi= xi-Ii

     Следовательно,     x1=P1,

xi=Pi+qi-1.1Ii-1+qi-1.2(xi-1- Ii-1)=P1+(qi-1.1-qi-12)Ii-1+ qi-1.2xi-1,                                                                                                              

где і=2,3,….,n. Сумма денег xi, которые могут быть инвестированы, включает лишь новые деньги и премиальные проценты за инвестиции, сделанные на протяжении (і-1)-го года.

     Пусть ƒi(xi)-оптимальная сумма инвестиций для интервала от і-го до n-го года при условии, что в начале і-го года имеется денежная сумма xi. Далее обозначим через si накопленную сумму к концу n-го года при условии, что Ii и (xi-Ii)-объемы инвестиций на протяжении і-го года в первый и второй банк соответственно. Обозначая αi=(1+ri), і=1,2, мы можем сформулировать задачу в следующем виде.

     Максимизировать z=s1+s2+….+sn,

где

      Si=Iiα1n+1-i + (хi- Ii2n+1-i=(α1n+1-i - α2n-1-i)Ii+ α1n+1-iхi, i=1,2,….,n-1,           (1.3.2)

                               Sn=(α1+ qn1- α2- qn2)In+(α2+ qn2n                                (1.3.3)

     Так как премиальные за n-й год являются частью накопленной денежной суммы  от инвестиций, в выражения для sn добавлены qn1и qn2. Итак, в данном случае рекуррентное уравнение для обратной прогонки в алгоритме динамического программирования имеет вид

ƒi i)=max{Si+ ƒi+1 i+1)}, i= 1,2,….,n-1,      

где xi+1 выражается через xi в соответствии с приведенной выше формулой, а fn+1(xn+1)=0. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

2. Решение задачи инвестирования 

     Фирма хочет инвестировать 3000 тыс. руб. и  на 500 тыс. руб. меньше каждый последующий год. Срок инвестирования 4 года. Первый банк выплачивает годовой сложный процент 6,5% и премиальные на протяжении следующих четырех лет в размере 1,4; 1,9; 2,5; и 2,7% соответственно. Годовой сложный процент, предлагаемый вторым банком, на 0,4% ниже, чем предлагает первый банк, но его премиальные на 0,4% выше. Найти максимизации накопленного капитала к концу четвертого года.

         Дано:

P1= 3000 тыс. руб., P2= 2500 тыс. руб., P3= 2000 тыс. руб., P4= 1500 тыс. руб.

α1(1+0,065)=1,065, α2(1+0,065-0,004)=1,061.

q11=0,014; q21=0,019; q31=0,025; q41=0,027;

q12=0,018; q22=0,023; q32=0,029; q42=0,031.

     Решение:

     Этап 4.

ƒ4 4)=max{S4},

где

S4=(α1+ q41- α2- q42)I4+(α2+ q424=(1,065+0,027-1,061-0,031)I4+(1,061+0,031)х4=

=0I4+1,029х4.

       Функция S4 является линейной по I4, и, следовательно, ее максимум достигается при I4 = 0 из-за нулевого коэффициента при I4. Следовательно, оптимальное решение для этапа 4 может быть представлено в следующем виде.

Таблица 1.

Данные  полученные на этапе 4.

Оптимальное решение
Состояние ƒ4 4) I4
x4 1,029*х4 0

     Этап 3.

ƒ3 3)=max{S3+ ƒ4 4)},

где

S3=(1,0652-1,0612)I3+1,0612х3=0,008504I3+1,125721х3

х4=1500-0,004I3+0,029х3.

     Следовательно,

ƒ3 3)=max{0,008504I3+1,125721х3+1,029(1500-0,004I3+0,029х3)}=

= max{1543,5+0,004388I3+ 1,09588х3}.

Таблица 2.

Данные  полученные на этапе 3.

Оптимальное решение
Состояние ƒ3 3) I3
х3 1543,5+1,100268*х3 х3

     Этап 2.

ƒ2 2)=max{S2+ ƒ3 3)},

где

S2=(1,0653-1,0613 )I2+1,0613 х2=0,0135597I2+1,1943899х2

x3=2000-0,004I2+0,023х2 . 

     Следовательно,

ƒ22)=max{0,0135597I2+1,1943899 х2+1543,5+1,100268(2000-

-0,004I2+0,023х2)}= max{3744,036+0,0091587I2+ 1,219696х2}.

Таблица 3.

Данные  полученные на этапе 2.

Оптимальное решение
Состояние ƒ2 2) I2
х2 3744,036+1,2288547*х2 х2

     Этап 1.

ƒ1 1)=max{S1+ ƒ22)},

где

S1=(1,0654-1,0614)I1+1,0614 х1=0,0192187I1+1,2672476 х1

x2=2500-0,004I1+0,018х1. 

     Следовательно,

ƒ11)=max{0,0192187I1+1,2672476х1+3744,036+1,2288547(2500-

-0,004I1+0,018х1)}=max{6816,1727+0,0143033I1+ 1,2893663х1}.

Таблица 4.

Данные  полученные на этапе 1.

Оптимальное решение
Состояние ƒ1 1)             I1
х1=3000 тыс. руб. 7005,3025+0,0278516*х1 3000 тыс. руб.

     При вычисление в обратном направлении  получаем следующее

х2=2500-0,004*3000+0,018*3000=2542 тыс. руб.

x3=2000-0,004*2542+0,023*2542=2048,298тыс. руб.

х4=1500-0,004*2048,298+0,029*2048,298=1551,2075тыс. руб.  

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

Таблица 5.

Оптимальное решение

Год Оптимальное решение Решение, принимаемое  инвестором Накопление
1 I1= х1 Инвестировать  х1=3000 тыс. руб. в первый банк S1=10727,18тыс. руб.
2 I2= х2 Инвестировать  х2=2500  тыс. руб. в первый банк S2=6816,1727тыс. руб.
3 I3= х3 Инвестировать  х3=2000тыс. руб. в первый банк S3=3744,036тыс. руб.
4 I4= 0 Инвестировать  х4=1500тыс. руб. во второй банк S4=1543,5тыс. руб.
Всего                                                                                            22830,888тыс. руб.

     Выводы:

     1) в первый год инвестор принимает решение инвестировать 3000тыс. руб. в первый банк. Во второй год инвестировать 2500тыс. руб. в первый банк.  В третий год инвестор принимает решение инвестировать 2000тыс. руб. во второй банк. В четвертый год инвестировать 1500тыс. руб. во второй  банк.

      2) первый год накопление капитала составит 10727,18тыс. руб. Во второй год 6816,1727тыс. руб. В третий 3744,036тыс. руб. В четвертый 1543,5тыс. руб.

     3) максимизации накопленного капитала к концу четвертого года будет равна 22830,888тыс. руб.

 

Заключение 

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

Информация о работе Динамическое программирование