Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
15
Добавлен:
01.05.2014
Размер:
142.85 Кб
Скачать

Кафедра МО ЭВМ

ОТЧЕТ

по лабораторной работе № 4 по дисциплине

"Методы оптимизации"

Решение прямой и двойственной задачи ”

Вариант №5

Выполнили: Воробьёв А.В.

Ламеров Д.Ю.

Швецов М.Н.

Шефер Е.В.

Факультет КТИ

Группа № 4352

Проверил Балтрашевич В.Э.

«Выполнено» «____» _______ ____

Подпись преподавателя __ _

Санкт-Петербург

2006

Цели работы:

а. Постановка задачи линейного программирования и ее решение с помощью стандартной программы.

б. Исследование прямой и двойственной задачи.

Краткие общие сведения

Если исходная задача линейного программирования представлена в виде:

найти минимум функции ƒ = (c, x) на множестве

, (4.1).

то двойственная задача может быть сформулирована следующим обра­-зом:

найти максимум функции (B, λ) на множестве

где AT — матрица транспонированная к А.

Двойственная к двойственной задаче есть исходная задача.

Известно, что если существует решение исходной задачи, то су­ществует решение и двойственной задачи, причем значения экстрему­мов совпадают. При этом координаты экстремальной точки для двойст­венной задачи являются коэффициентами чувствительности результата в исходной задаче по коэффициентам вектора B.

Рассмотрим видоизмененную исходную задачу:

найти min(C, X) на множестве { х: Х ≥ О, Аx ≥ В + ε * еi }, где ε>0,

Если исходная задача имеет единственное решение, то при малых ε>0 и видоизмененная задача имеет решение; причем если -значение минимума, то существует . Оказыва­-ется, что β есть i -я координата оптимальной точки для двойст­венной задачи.

Для проведения лабораторной работы составлена программа, обеспечивающая решение задачи линейного программирования при зада­нии с терминала исходных значений параметров.

  1. Описание задачи

Рассмотрим множество X = x  Rn, x ≥ 0, Ax  b,b - вектор размерности m, A - матрица размерности mn.

f(x) = (c, x)- целевая функция (линейная)

Задача min f(x)-?, при xX - прямая задача линейного программирования.

Задача max (b, )-?, при с  Aт,  ≥ 0 - двойственная ЗЛП.

Известно, что если существует решение исходной задачи, то существует решение и двойственной задачи, причем значения экстремумов совпадают,

т.е. min(c, x) = (c, x*) = max (b, ) (при   0, с  Aт)

Таким образом, решение исходной ЗЛП может быть сведено к решению новой (т.е. двойственной) ЗЛП: максимизация (b, ) по множеству, определенному условиями с  AT,   0.

  1. Формулировка задачи

Для изготовления двух видов продукции P1, P2 используют три вида сырья: S1, S2, S3. Запасы сырья, количество единиц сырья, за­трачиваемых на изготовление единицы продукции, а также величина прибыли, получаемая от реализации единица продукции, приведены в таблице.

Таблица

Виды сырья

Запас сырья

Количество единиц сырья, идущих на изготовление единицы продукции

P1

P2

S1

20

2

5

S2

40

8

5

S3

30

5

6

Прибыль от единицы продукции первого вида составляет 50 р., второго вида - 40 р.

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

  1. Исследование задачи

/ 2 5\ / 20 \ / 50 \

ДАНО: A = ¦ 8 5 ¦ ; b = ¦ 40 ¦ ; с = \ 40 /

\ 5 6 / ; \ 30 /

Прямая задача:

min (c, x)-?, при x ≥ 0, Ax  b

целевая функция:

f = 20x1+40x2+30x3;

ограничения:

y1: 2x1 + 8x2 + 5x3 ≥ 50;

y2: 5x1 + 5x2 + 6x3 ≥ 40;

Двойственная задача:

max (b, )-?, при  ≥ 0, AT ≤ c

целевая функция:

f = 501 +402;

ограничения:

y1: 21 +52 ≤ 20

y2: 81 +52 ≤ 40

y3: 51 +62 ≤ 30

Решение:

Координаты оптимальной точки:

x1=0.000

x2=4.348

x3=3.043

Решение:

Координаты оптимальной точки:

1=3.913

2=1.739

Значение целевой функции f = 256.217

Значение целевой функции f = 256.217

3.1. Определение коэффициентов чувствительности исходной задачи

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

/ 2 5 \ / 20 \ / 50 \

ДАНО: A = ¦ 8 5 ¦ ; b = ¦ 40 ¦ ; с = \ 40.001 /

\ 5 6 / ; \ 30 /

Прямая задача:

min (c, x)-?, при x ≥ 0, Ax  b

целевая функция:

f = 20x1+40x2+30x3;

ограничения:

y1: 2x1 + 8x2 + 5x3 ≥ 50;

y2: 5x1 + 5x2 + 6x3 ≥ 40.001;

Решение:

Координаты оптимальной точки:

x1=0.000

x2=4.348

x3=3.044

Значение целевой функции f = 256.219

3.2. Определение коэффициентов чувствительности целевой функции задачи

по компонентам вектора C

/ 2 5 \ / 20 \ / 50 \

ДАНО: A = ¦ 8 5 ¦ ; b = ¦ 40 ¦ ; с = \ 40.001 /

\ 5 6 / ; \ 30 /

Двойственная задача:

max (b, )-?, при  ≥ 0, AT ≤ c

целевая функция:

f = 501 +40.0012;

ограничения:

y1: 21 +52 ≤ 20

y2: 81 +52 ≤ 40

y3: 51 +62 ≤ 30

Решение:

Координаты оптимальной точки:

1=3.913

2=1.739

Значение целевой функции f = 256.219

Выводы:

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