Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Линейное программирование



Содержание

 

Введение ..3

1. Линейное программирование. ....4

1.1. Построение математической модели ЗЛП.. ....4

1.2. Решение ЗЛП графическим методом. ....5

1.3. Решение ЗЛП алгебраическим методом. ....6

1.4. Решение ЗЛП симплекс – методом. ....8

1.5. Решение ЗЛП методом искусственного базиса. ....10

2. Решение ЗЦЛП методом Гомори. ....13

3. Булевское программирование. Метод Баллаша. ....18

4. Поиск глобального экстремума функции…... ....20

4.1. Метод Хука – Дживса. ....20

4.2. Метод градиентного спуска с поятоянным шагом. ....26

5. Одномерная минимизация…. ....27

6. Дополнительное задание. ....32

Заключение. ....39

Список используемой литературы…. ....40



Введение

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

Первые работы в этом направлении были сделаны в России ещё в 1937 году. Основной задачей математического планирования в то время была “Оптимизация перевозки угля к узлам реализации за минимальную цену”. Первым её рассматривал русский учёный Л.В. Контарович, авторство которого получило мировое признание.

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

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

 



Линейное программирование

Решение методом искусственного базиса

Ограничения – неравенства                         Ограничения – равенства

     
 


-3x1 - 5x2 + 25  0                             x3 = -3x1 – 5x2 + 25

-2x1 + 2x2 + 6  0                                        x4 = - 2x1 + 2x2 + 6

x1 + 2x2 – 3  0                                 ξ1 = -x1 – 2x2 + x5 +3                                 x1 + x2 – 2  0                                       ξ2 = - x1 – x2 + x6 + 2

xi  0,                                                    xi  0, ξ1  0

 

F = - 2x1 + x2 à min  ʄ = - 2x1 – 3x2 + x5 + x6 + 5

Свободные х1, х2

Преобразуем систему для решения симплекс – методом                                                                             

 

x3 = 25 - (3x1 + 5x2 ) 

x4 = 6 - ( 2x1 - 2x2 )  

ξ1 = 3 - ( x1 +  2x2 -  x5)       

ξ2 = 2 - (x1 + x2 - x6 )

     

        

F=0 – ( 2x1 – x2)             ʄ = 5 – ( 2x1 + 3x2 – x5 – x6)

 

 

  β x1 x2 x5 x6
x3 25 -15/4 3 -5/4 5 -5/2 0 5/4 0 0
x4 6 3/2 2 1/2 -2 1 0 1/2 0 0
ξ1 3 3/2 1 1/2 2 1/2 -1 -1/2 0 0
ξ2 2 -3/4 1 -1/4 1 -1/2 0 1/4 -1 0
F 0 3/4 2 1/4 -1 1/2 0 -1/4 0 0
ʄ 5 -9/4 2 -3/4 3 -3/2 -1 3/4 -1 0

 

 

  β x1 x5 x6
x3 85/4 7/4 5/4 0
x4 15/2 5/2 1/2 0
x2 3/2 3/2 -1/2 0
ξ2 5/4 3/4 1/4 -1
F 3/4 9/4 -1/4 0
ʄ 11/4 5/4 -1/4 -1

 

На данном этапе все свободные члены равны дробным числам, следовательно данный способ не может быть использован для решения данной задачи.

 

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

 


Решить ЗЦЛП

3.1Решение ЗЦЛП методом Гомори:

 

F = x1 + 2x2à max


5x1 + 7x2 ≤ 21

-x1 + 3x2 ≤ 8

x1,x2 ≥ 0

x1, x2 –целые

 

Приведём к канонической форме

 

-F = - x1 - 2x2 à  min

 

- 5x1 - 7x2 ≥ -21

x1 - 3x2 ≥ - 8

 

Решим с помощью симплекс – метода

 

-5x1 – 7x2 + 21 = x3

x1 – 3x2 + 8 = x4

 

x3 = 21 – ( 5x1 + 7x2 )

x4 = 8 – ( -x1 + 3x2 )

 

-F = 0 – ( x1 + 2x2 ) àmin

 

    β x1 x2
x3   21     -56/3 5     7/3 7   -7/3
x4 8       8/3 -1   -1/3 3     1/3
-F   0   -16/3 1     2/3 2    -2/3

 

λ = 1/3

 

 

    β x1 X4
x3 7/3     7/22 22/3   3/22 -7/3   -7/22
X2   8/3     7/66 -1/3   1/22 1/3   -7/66
-F   -16/3   -35/66 5/3   -5/22 -2/3   35/66

λ = 3/22

 

    β X3 X4
X1   7/22         3/22     -7/22      
X2   61/22       1/22     5/22      
-F   -129/22     -5/22       -3/22     

 

F опт = 129/22

 

XT ={ 7/22, 61/22 , 0 , 0 }

 

β1 = 7/22 – 0 = 7/22

α13 = 3/22 – 0 =3/22

α14 = 15/22 – 0 = 15/22

 

u1 = -7/22 – ( - 3/22 x3 – 15/22 x4 )

 

    β X3 X4
X1   7/22    -7/22  3/22        1 -7/22   -15/22
X2   61/22     -7/66 1/22     1/3 5/22   -5/22  
U1   -7/22   7/3 -3/22   -22/3 -15/22       5
-F   -129/22   35/66 -5/22   -5/3   -3/22   25/22

 

λ = - 22/3

 

 

    β U1 X4
X1   0   7/15  1   -22/15 -1   1/5
X2   8/3          0 1/3       0 0      0  
X3   7/3   7/15 -22/3   -22/15 5     1/5
-F   -16/3   -7/15 -5/3   22/15   1   -1/5

 

λ = 1/5

 

    β U1 X3
X1   7/15       -7/15     1/5        
X2   8/3               1/3            0         
X4     7/15          -22/15     1/5         
-F   -29/5       -1/5      -1/5    

 

Fопт = 29/5

 

XT ={ 7/15, 8/3 , 0 , 7/15 }

 

β2 = 8/3 – 2 = 2/3

α2u1 = 1/3 – 0 = 1/3

α23 = 0

 

u2 = -2/3 – ( - 1/3 u1 – 0 x3 )

 

 

    β U1 X3
X1   7/15    14/5 -7/15   -7/5 1/5      0
X2   8/3       -2/3      1/3       1 0       0
X4     7/15 44/15   -22/15   -22/5 1/5      0
U2 -2/3           2 -1/3      -3  0       0
-F   -2 9/5      6/15 -1/5    -3/5 -1/5      0

 

λ = -3

 

    β U2 X3
X1   7/5     -7/5        1/5    
X2   2       1     0    
X4     17/15     -22/5       1/5  
U1 2               -3     0  
-F   -2 7/5       -3/5     -1/5          

Fопт = 27/5

 

XT ={ 7/5, 2 , 0 , 17/5 }

 

β1 = 7/5 – 1 = 2/5

α21u2 = 3/5 – 0 = 3/5

α13 = 1/5

 

u2 = -2/5 – ( - 3/5 u2 – 1/5 x3 )

 

                                                   

 

    β U2 X3
X1   7/5   -2/5 -7/5   -3/5 1/5       1
X2   2        0 1      0 0        0
X4     17/15    -2/5  -22/5   -3/5  1/5       1
U1 2            0 -3         0 0        0
U3 -2 /5         2     -3/5           3 -1/5       -5 
-F   -2 7/5      2/5 -3/5      3/5 -1/5       -1

 

 

λ = -5

 

 

    β U2 U3
X1   1        -2     1           
X2   2            1           0           
X4     3          -5     1           
U1 2                 -3              0            
X3   2               3            -5          
-F   -5       0       -1           

F опт = 5

 

XT ={ 1, 2 , 2 , 3}


Задача 1

 

F = x1 + 2x2 à min

 

5x1 + 7x2 ≤ 21

-x1 + 3x2 ≤ 8

x2 ≤ 2

x1 ≥ 2

x1,x2 ≥ 0

 

Эта задача решения не имеет. 

 

Задача 2

 

F = x1 + 2x2 à min

 

5x1 + 7x2 ≤ 21

-x1 + 3x2 ≤ 8

x2 ≤ 2

x1 ≤ 1

x1,x2 ≥ 0

 

x3 = 21 – ( 5x1 + 7x2 )

x4 = 8 – ( -x1 + 3x2 )

x5 = 2 – (x2 )

x6 = 1 – ( x1 )

 

-F = 0 – ( x1 + 2x2 ) à min

 

 

  β x1 x2
x3     21   -14 5   0 7   -7
x4     8   -6 -1   0 3   -3
x5     2   2 0   0 1   1
x6     1   0 1   0 0   0 
-F     0   -4 1   0 2   -2

 

λ = 1

 

  β x1 x5
x3     7     -5 5    -5 -7   0
x4     2   1 -1   1 -3     0
x2     2   0 0   0 1   0
x6   1   1 1   1 0   0 
-F     -4   -1 1     -1 -2     0

 

λ = 1

 

 

 

  β x6 x5
x3     2      -5     -7       
x4     3        1         -3     
x2     2        0         1        
x1     1         1        0          
-F     -5      -1      -2     

 

F опт = 5

XT ={ 1, 2 , 2 , 3 , 0 , 0}

 

 

Дерево ветвления задачи:

 

 

F =129/22

 

 

F=27/5

F =5
4. Решение задачи булевского программирования о распределении капиталовложения.

4.2Булевское программирование. Метод Баллаша

Задание:

Вариант

Проект

Расходы (млн. грн. в год)

Прибыль (млн. грн)
1-й год 2-й год 3-й год  

19

  1 4 6 3   10
2 9 7 8 15
3 7 9 9 10
4 5 5 6 25
5 6 4 6 20
Доступный капитал 30 30 30  

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

Суть этого метода сводится к следующему:

1) расположить переменные по возрастанию коэффициентов при них в целевой функции;

2) принять некоторый набор значений X, удовлетворяющий всем ограничениям;

3) значение целевой функции при удовлетворении п. 2 принять в качестве дополнительного фильтрующего ограничения (фильтра);

4) методом перебора X определить значение фильтрующего ограничения и проверить удовлетворение его заданным ограничениям;

5) если при некотором наборе X   значение фильтрующего огра­ничения окажется для целевой функции лучшим, следует от первона­чального набора перейти к новому и продолжить процедуру.

 

 

Составим математическую модель данной ЗЛП с булевскими переменными

1: 4x1 + 9x2 + 7x3+ 5x4+6x5 ≤ 30

2: 6x1 + 7x2 + 9x3 + 5x4 + 4x5 ≤ 30

3: 3x1+ 8x2 + 9x3 + 6x4 + 6x5 ≤ 30

F = 10x1 + 15x2 + 10x3 + 25x4 + 20x5 à max

 

Примем значение целевой функции на наборе 00000 за фильтрующее.

 

X1

X2

X3

X4

X5

 Выполнение ограничений

F 1 2 3
1 0 0 0 0 0 0 + + + Fф=0
2 0 0 0 0 1 20 + + + 20
3 0 0 0 1 0 25 + + + 25
4 0 0 0 1 1 45 + + + 45
5 0 0 1 0 0 10       -
6 0 0 1 0 1 30       -
7 0 0 1 1 0 35       -
8 0 0 1 1 1 55 + + + 55
9 0 1 0 0 0 15       -
10 0 1 0 0 1 35       -
11 0 1 0 1 0 40       -
12 0 1 0 1 1 60 + + + 60
13 0 1 1 0 0 25       -
14 0 1 1 0 1 45       -
15 0 1 1 1 0 50       -
16 0 1 1 1 1 70 + + + 70
17 1 0 0 0 0 10       -
18 1 0 0 0 1 30       -
19 1 0 0 1 0 35       -
20 1 0 0 1 1 55       -
21 1 0 1 0 0 20       -
22 1 0 1 0 1 40       -
23 1 0 1 1 0 45       -
24 1 0 1 1 1 65       -
25 1 1 0 0 0 25       -
26 1 1 0 0 1 45       -
27 1 1 0 1 0 50       -
28 1 1 0 1 1 70       -
29 1 1 1 0 0 35       -
30 1 1 1 0 1 55       -
31 1 1 1 1 0 60       -
32 1 1 1 1 1 80 -     -

 

 

Фильтрующее ограничение:

 

Максимальное значение 70 функция достигает на наборе 01111. С помошью фильтра Баллаша колличество вычислений было сокращено на 39%.




Заключение

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

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

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



Список использованной литературы

1. Методические указания для изучения дисциплины «Прикладная математика» для студентов специальности «Компьютерные системы и сети» Раздел «Решение задач целочисленного линейного программирования» дневной и заочной форм обучения/ Сост. Балакирева И.А., Скатков А.В.– Севастополь: Изд-во СевНТУ, 2000. –13 с.

2. Методические указания к индивидуальным занятиям и подготовке к курсовой работе по разделу «Решение задач линейного программирования и анализ оптимального решения на ЭВМ» дисциплины «Прикладная математика» для студентов специальности 7.091501 «Компьютерные системы и сети» дневной формы обучения /Сост. Л.П. Луговская, Н.А. Скаткова. – Севастополь: Изд-во СевНТУ, 2009. – 15 с.

3. Реклейтис Г., Рейвиндран А., Регсдел К. Оптимизация в технике: в 2-х томах. Пер. с англ./ Г. Реклейтис,- М.: Наука, 1984.- Т.1.- 352 с. – Т.2.- 320 с.

 

Содержание

 

Введение ..3

1. Линейное программирование. ....4

1.1. Построение математической модели ЗЛП.. ....4

1.2. Решение ЗЛП графическим методом. ....5

1.3. Решение ЗЛП алгебраическим методом. ....6

1.4. Решение ЗЛП симплекс – методом. ....8

1.5. Решение ЗЛП методом искусственного базиса. ....10

2. Решение ЗЦЛП методом Гомори. ....13

3. Булевское программирование. Метод Баллаша. ....18

4. Поиск глобального экстремума функции…... ....20

4.1. Метод Хука – Дживса. ....20

4.2. Метод градиентного спуска с поятоянным шагом. ....26

5. Одномерная минимизация…. ....27

6. Дополнительное задание. ....32

Заключение. ....39

Список используемой литературы…. ....40



Введение

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

Первые работы в этом направлении были сделаны в России ещё в 1937 году. Основной задачей математического планирования в то время была “Оптимизация перевозки угля к узлам реализации за минимальную цену”. Первым её рассматривал русский учёный Л.В. Контарович, авторство которого получило мировое признание.

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

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

 



Линейное программирование


Поделиться:



Последнее изменение этой страницы: 2019-05-07; Просмотров: 169; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.089 с.)
Главная | Случайная страница | Обратная связь