Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

М-Чм-зао-09

.pdf
Скачиваний:
16
Добавлен:
29.03.2015
Размер:
591.95 Кб
Скачать

Рис.3.1.

Таким образом, конечно разностная СЛАУ сформирована и имеет вид (3.19). Далее можно приступать к ее решению любым известным вам способом. На рабочем листе Excel (рис.3.1) система решена с использованием надстройки поиск решения.

y0

 

= 1,00

 

33,33y0 − 45,83y1 +16,67 y2

 

 

= 0,83

 

32,14y1 − 46,94y2

+17,86y3

 

= 0,71

(3.19)

31,25y2

− 47,66y3

+18,75y4

= 0,63

 

 

30,56y3

− 48,15y4 +19,44y5

= 0,56

 

 

 

− 5,00y4 + 5,00y5

= 0,50

 

21

Полученное решение Y (1,000; 1,245; 1,474; 1,673; 1,829; 1,930) можно принять за первую итерацию (первое приближение) решения исходной задачи на разностной сетке Ωn , n=5.

3.2.2. Построение второй итерации

Для нахождения второй итерации сделаем сетку вдвое гуще (n=10, шаг h=0,1) и повторим приведенный выше алгоритм.

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

Последовательность действий.

1.Сделаем копию листа Excel (рис.3.1) для n=5 на новый лист.

2.В ячейку В2 введем число разбивок n=10.

Рис.3.2.

3.Выделим блок ячеек А12:Н12 и скопируем его вниз до 9-го узла, т.е. до х=1.9, рис.3.2.

4.Введем значения an, bn , dn (n=10) в ячейки Е18, F18, H18 в соответствии с формулами (3.9-3.10). Таким образом, будет сформирована конечно разностная СЛАУ.

5.Решив эту систему, получим второе приближение исходной краевой задачи с шагом h=0.1. Это решение приведено на рис.3.3.

Рис.3.3.

22

6. Сравним полученные приближения. Для наглядности удобно построить графики этих двух приближений (двух сеточных функций) на одной координатной сетке, рис.3.4.

3.2.3. Порядок построения графиков приближенных решений краевой задачи.

Данные для построения графиков двух приближений (итераций) находятся на двух листах книги Excel и приведены для двух разностных сеток

Ω10 и Ω5 (h=0,1 и h=0,2)

1.Построим график решения задачи для разностной сетки с шагом

h=0,2 (n=5).

2.Активизируем уже построенный график и выберем команду:

меню Диаграмма\Добавить данные

Рис.3.4.

3.В окне Новые данные укажем данные xi, yi cо второго листа для разностной сетки с шагом h/2 (n=10).

4.В окне Специальная вставка установим флажки в полях:

Øновые ряды,

Øкатегории (значения по оси х) в первом столбце.

Как видно из приведенных данных, два приближенных решения краевой задачи (две сеточные функции) отличаются друг от друга не более, чем на 5%.

Поэтому за приближенное решение исходной задачи принимаем вторую итерацию, т.е.

Y (1,000; 1,124; 1,246; 1,364; 1,478; 1,584; 1,683; 1,772; 1,849; 1,914; 1,964)

23

Контрольная работа №4

Тема. Численные методы решения задач оптимизации. Линейное программирование

З а д а н и е

Решить задачу линейного программирования графическим методом и на ЭВМ. Сравнить полученные решения. Исходные данные приведены в приложении 4.

Указания к выполнению четвертой работы 4.1. Теоретические сведения

Общая постановка задачи линейного программирования (ЛП)

Требуется найти экстремум (min/max) линейной функции (функции цели) от n независимых проектных параметров x1 , x2 ,.., xn

 

n

 

zmin = c1x1 + c2 x2 + ... + cn xn = åci xi

(4.1)

 

i=1

 

при ограничениях в виде неравенств (равенств):

 

a11x1 + a12 x2 + .........

+ a1n xn b1

 

a21x1 + a22 x2 +.........

+ a2n xn £ b2

 

........................................

..

(4.2)

am1x1 + am 2 x2 + .........

+ amn xn £ bm

 

xi > 0, i = 1,2,..n

 

 

Множество X (x1, x2 ,.., xn ) , удовлетворяющее условиям (4.2) называется

областью допустимых решений ( D ).

Допустимое решение X * ( x1* , x2 * ,.., xn * ) , которое минимизирует целевую функцию (4.1), называется оптимальным решением.

Геометрический метод решения задач линейного программирования

Геометрический метод решения используется для случая n=2, когда задача линейного программирования содержит два проектных параметра.

Постановка задачи. Требуется найти экстремум целевой функции

zmin = c1 x1 + c2 x2 ,

(4.1’)

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

a1 x1 + b1 x2 £ d1

 

a2 x1 + b2 x2 £ d 2

(4.2)

.......... .......... ...

am x1 + bm x2 £ d m x1 ³ 0; x2 ³ 0

24

Геометрический смысл задачи рассмотрим на следующем примере.

Пример 4.1. Минимизировать целевую функцию

zmin = 1- x1 - x2

(4.3)

при следующих ограничениях:

 

 

x1 - x2 ³ -1,

 

3x1

+ 2x2 ³ 6,

(4.4)

3x1

+ x2 £ 9,

 

x1 ³ 0,x2 ³ 0.

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

Y

L3

 

 

L2

 

 

 

 

 

M (2,3)

L1

3

 

о

 

 

 

 

 

 

п

 

 

о

 

 

 

р

 

 

 

н

 

 

 

а

2

 

 

я

 

 

р

 

 

 

п

 

 

 

я

 

 

 

м

 

 

 

а

 

 

 

я

1

 

 

R

 

 

 

=

 

 

 

-

 

 

 

4

-1

1

2

3

 

 

R

 

 

=

 

R=0

-

 

1

 

 

R

 

 

=

 

 

1

 

 

Строим полуплоскости

Pi (i=1,2 ...5), отвечающие

всем неравенствам системы (4.4). Пересечение всех

полуплоскостей есть замкнутый многоугольник

D (рис.4.1)

 

Приравняем функцию

цели

(4.1) к некоторой

постоянной R:

X

1- x1 - x2 = R .

Это уравнение определяет на плоскости семейство линии, вдоль

которых функция цели

Рис.4.1.

принимает одно и то же значение R. Эти линии называются линиями уровнями функции z. При изменении R от -∞ до +∞, линии уровня смещаются параллельно самим себе, зачеркивая всю плоскость. Требуется среди всех точек области D найти такую, в которой функция цели принимает наименьшее значение. Координаты этой точки и вляются решением задачи.

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

необходимо решить СЛАУ

x1 - x2 = -1, 3x1 + x2 = 9.

25

Координаты этой точки М(2,3) и есть решение задачи, т.е. в этой точке функция цели достигает своего минимума, т.е. zmin = -4, при x1 = 2, x2 = 3.

4.2. Решение задач линейного программирования с использованием приложения Excel

Пример 4.2. Решить пример 4.1, используя возможности таблиц Excel

Порядок решения

Систему неравенств (4.4) приведем к виду:

x1

- x2 +1 ³ 0,

 

3x1 + 2x2 - 6 ³ 0,

(4.5)

- 3x1 - x2 + 9 ³ 0,

x1

³ 0,

 

x2

³ 0

 

1.Подготовим таблицу как показано на рис.4.2. Ячейки, содержащие

целевую функцию (С12) и проектные параметры х1, х2 (изменяемые ячейки) В9:С9 тонируем. Для контроля счета в ячейки В9:С9 введем единицы. Значения

проектных параметров х1=1 и х2=1 можно рассматривать как нулевое приближение решения задачи.

2.В ячейки В3:D7 введем коэффициенты системы ограничений (4.5).

3.В ячейку E3 введем формулу для вычисления левой части первого ограничения, т.е. E3=СУММПРОИЗВ($B$9:$C$9;B3:C3)-D3, и после ввода скопируем ее вниз до конца таблицы. Будет не лишним проверить результаты счета для заданных значений х1=1 и х2=1.

Рис.4.2.

4. В ячейке C12 запишем формулу для целевой функции (4.3):

C12=1-В9-С9.

5. Минимизацию целевой функции (4.3) при ограничениях (4.4) выполним с помощью надстройки Excel Поиск решения. Для этого выделим ячейку С12. Выберем команду меню Сервис\Поиск решения и в появившемся

26

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

6.Щелкнем на кнопке Выполнить. Результат решения будет иметь вид, как показано на рис.4.2.

7.Результаты можно сохранить или отказаться (Восстановить исходные значения). Можно получить один из видов отчетов (Результаты, Устойчивость, Пределы). Отчет можно оформить на отдельном листе Книги с соответствующим именем.

Рис.4.3.

Таким образом, функция цели (4.3) при ограничениях (4.4) достигает своего минимума zmin = −4 при x1 = 2, x2 = 3, что соответствует решению этой же задачи геометрическим методом.

27

Контрольная работа №5

Тема. Численные методы решения задач оптимизации. Линейное программирование.

З а д а н и е

Составить математическую модель задачи линейного программирования: определить проектные параметры, записать целевую функцию и ограничения на проектные параметры. Решить задачу на ЭВМ. Выбрать задачу в соответствии с вариантом в приложении 5.

Рекомендации к выполнению работы №5

Основные стандартные схемы построения математических моделей задач линейного программирования и методы их решения приведены в [1]. Здесь приведены лишь некоторые из них.

Пример 5.1. Задача планирования производства.

Цех производит два вида продукции (Продукт1 и Продукт2) стоимостью соответственно 5 у.е. и 5,5 у.е. (усл. единиц).

На производстве действуют ограничения по ресурсам: сырье; трудовые затраты; транспортные расходы (аренда машины для вывоза продукции).

Расход каждого ресурса на изготовление того и другого продукта, количество ресурса в распоряжении цеха приведены в табл.5.1

 

 

 

Таблица 5.1

Используемые

Расход ресурсов на

Количество ресурса

 

ресурсы

изготовление

в распоряжении

 

 

Продукта1

Продукта2

цеха

 

 

 

 

 

 

Сырье

3

6

18

 

Трудовые затраты

6

4

24

 

Транспортные расходы

2

1

не менее 2

 

 

 

 

 

 

Стоимость продукта

5у.е.

5,5у.е.

 

 

 

 

 

 

 

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

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

виде

zmax = 5 x1+ 5,5 x2

(5.1)

Ограничения записываем из условия ресурсов, которыми располагает

цех.

ì3x1 + 6x

2

£ 18

-

потребность в сырье

 

 

ï

+ 4x

2

£ 24

-

трудовые ресурсы

 

 

ï6x1

.

(5.2)

í

+ x2

³ 2 -

 

 

ï2x1

 

транспортные расходы

 

 

ï

 

 

³ 0

 

 

 

 

îx1 ³ 0, x2

 

 

 

 

 

 

 

 

 

28

 

 

Пример 5.2.. Транспортная задача.

На 3-х цементных заводах производится цемент одной и той же марки в количествах соответственно 100, 130, 170 тонн. Цемент следует доставить на четыре завода ЖБК, потребляющих его соответственно в количествах 150, 120, 80, 50 тонн. Стоимости (у.е.) перевозок одной тонны продукта с i-го (i=1,2,3) завода на j-ый (j=1,2,3,4) ЖБК приведены в таблице 5.2. Спланировать перевозки так, чтобы их общая стоимость была минимальной.

Решение. В качестве проектных параметров xij выберем количество (т) продукта, перевозимого с i-го (i=1,2,3) завода на j-ый (j=1,2,3,4) ЖБК.

 

 

 

 

 

Таблица 5.2.

 

Стоимость перевозки

 

 

Объем

 

 

Цементный

(у.е.)

 

Количество .

производств

 

 

завод

 

перевозимого продукта (т)

а (т)

 

 

 

ЖБК-1

ЖБК-2

ЖБК-3

ЖБК-4

 

 

 

 

3

5

7

11

 

 

 

1

x11

x12

x13

x14

100

 

 

 

 

 

 

 

 

 

 

 

1

4

6

3

 

 

 

2

x21

x22

x23

x24

130

 

 

 

 

 

 

 

 

 

 

 

5

8

12

7

 

 

 

3

x31

x32

x33

x34

170

 

 

 

 

 

 

 

 

 

 

Объем пот-

150

120

80

50

 

 

 

ребления

 

 

 

 

 

 

 

Тогда целевая функция (общая стоимость перевозок) имеет вид:

 

 

 

zmin =3x11 +5x12 +7х13+11х14+

 

 

 

 

+x21 +4x22 +6x23+3x24+

 

 

 

 

+5x31 +8x32.+12x33+7x34

(5.3)

Ограничения записываем из условия, что вывозится весь произведенный на каждом заводе цемент (первые 3-и) и что каждый ЖБК полностью обеспечивается цементом.

x11 +x12 +х13+х14=100 x21 +x22 +x23+x24=130 x31 +x32.+x33+x34=170

(5.4)

x11 +x21 +х31=150 x12 +x22 +x32=120 x13 +x23.+x33=80 x14 +x24.+x34=50

xij³0 (i=1,2,3; j=1,2,3,4)

29

Пример 5.3. Задача рационального раскроя.

При серийном производстве некоторого изделия из полос проката длиной 5000мм необходимо вырезать 3 вида заготовок.

Количество и длины заготовок: заготовка №1 длиной 1655мм, 1шт.

2 длиной 1050мм, 5шт. 3 длиной 210мм, 1шт.

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

Решение.

Оптимизацию будем производить исходя из минимальных отходов полос проката при их раскрое.

1) Составим таблицу-карту раскроя (табл.5.3):

 

 

 

 

 

 

Таблица 5.3.

Cпос

Количество

Полезно

Длина

Количество

об

заготовок длиной

используемая

отходов

полос

раск

 

(мм)

 

длина (мм)

(мм)

 

роя

1655

1050

210

 

 

 

1

3

0

0

4965

35

x1

2

2

1

1

4570

430

x2

3

1

3

0

4805

195

x3

4

0

4

1

4410

590

x4

Таким образом, получилось 4-е способа раскроя полос.

2)В качестве проектных параметров возьмем : xi количество прокатных полос, раскроенных i-способом, i=1.2,3,4.

3)Определим длину отходов при каждом способе раскроя.

4)В качестве функции цели возьмем суммарную длину отходов, которая должна быть минимальной:

zmin = 35x1 + 430x2 + 195x3 + 590x4

(5.5)

5) Запишем ограничения из условия, что для 12-и изделий необходимо: заготовок №1 – 12 шт.

заготовок №2 – 12*5 шт. заготовок №3 – 12 шт.

Т.е.

3x1 + 2x2 + x3 + 0 × x4

³ 12ü

 

 

0 × x1 + x2 + 3x3 + 4x4

ï

 

 

³ 60ï

по количеству заготовок

(5.6)

x2

+ x4

³ 12

ý

ï

 

 

xi

³ 0,

i = 1,2,3,4

ï

 

 

þ

 

 

 

 

 

30