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

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ

УФИМСКИЙ ГОСУДАРСТВЕННЫЙ АВИАЦИОННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

ФИЛИАЛ В Г. ИШИМБАЙ

Кафедра Физики и Математики

Отчет по лабораторной работе №3

по предмету «Теория принятия решений»

на тему: Линейное программирование.

Вариант задания №7.

Выполнил: студент гр. АТП-308

Шарипов Д.В.

Принял: к. ф.-м. н., ст. преп.

Мугафаров М.Ф.

Ишимбай 2007

Цель работы: решить задачу линейного программирования тремя способами: 1) графическим методом; 2) симплекс – методом; 3) при помощи средства «Поиск решения» в Microsoft Excel.

Краткие теоретические сведения.

  • Графический способ решения задач линейного программирования в случае 2 независимых переменных (хотя возможно решение в случае 3 переменных). Алгоритм решения задач: 1) изобразить область, соответствующую системе неравенств 2) если целевая функция имеет вид: f(x1,x2)=c1x1+c2x2, то очевидно: . Следовательно вектор градиента имеет вид: grad(f)=(c1,c2). На плоскости изобразить вектор градиента и перпендикулярную ему линию уровня функции f 3) для нахождения максимума функции f требуется перемещать линию уровня параллельным переносом в направлении вектора градиента. Для нахождения минимума линию уровня следует перемещать в направлении противоположном градиенту. Перемещение линии уровня продолжать до тех пор, пока она имеет общие точки с областью допустимых решений 4) при достижении «крайнего положения» перемещение прекратить, зафиксировать полученный ответ. В зависимости от конкретной задачи ответом может служить: одна точка; все точки некоторого отрезка; бесконечно удаленная точка.

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

  • Способ поиска максимума или минимума функции помощи средства «Поиск решения» в Microsoft Excel основывается на встроенных функциональных возможностях программы Microsoft Excel. Краткий алгоритм: 1) в меню «Сервис» в разделе «Надстройки» необходимо активизировать функцию «поиск решения» 2) выделить область листа размером 2х2, в ячейки этой области будут занесены результаты решения, а именно координаты точки максимума или минимума, соответственно 3) в соседних клетках ввести значения, которые лежат в левой и правой частях неравенств 4) в отдельной таблице размера 1х2 запишем значение целевой функции 5) вызвать средство «поиск решения», в качестве целевой ячейки выбрать ту, в которой хранится значение целевой функции, выбрать вариант максимум или минимум, в окне «изменяя ячейки» указать ячейки, содержащие x1 и x2, добавить каждое из ограничений, указав в виде ссылки ячейку левой части неравенства и правой части, выставив между ними требуемый знак 6) в параметрах установить неотрицательные значения 7) нажав на кнопку «выполнить», получить результат.

Задание:

Найти максимум и минимум функции при заданных ограничениях:

Решить задачу линейного программирования тремя способами:

  • симплекс-методом

  • графическим методом

  • средством «Поиск решения» в программе Microsoft Excel

Выполнение работы

Решим поставленную задачу графическим методом.

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

Найдем градиент функции :

На плоскости переменных и изобразим вектор-градиент и перпендикулярную ему линию уровня . Перемещая линию уровня вдоль вектора-градиента, мы придем в бесконечность, т.е. . Таким образом, исследуемая функция не имеет точки максимума. Перемещая линию уровня в направлении антиградиента , получим «точку выхода» с координатами A(2;2). При этом исследуемая функция принимает свое минимальное значение равное

Решим поставленную задачу симплекс-методом.

Найдем минимум исследуемой функции.

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

(1)

Из системы уравнений (1) видно, что в качестве свободных переменных проще всего выбрать . Тогда базисные переменные выражаются через свободные так:

(2)

Если положить все свободные переменные равные нулю, то, используя систему уравнений (2), получим базисное решение:

Это базисное решение является недопустимым, так как не выполняются условия:

Пусть . Тогда из системы уравнений (2) следует, что:

Используя систему уравнений (2) найдем базисное решение с учетом :

Так как свободными переменными стали и , то необходимо «переразрешить» систему уравнений (2), а именно выразить переменную , ставшей базисной, через переменные , и подставить полученное выражение в оставшиеся уравнения системы:

(3)

Этому набору свободных и базисных переменных соответствует базисное решение:

Значение целевой функции при данном базисном решении:

Найденное базисное решение является недопустимым, поскольку не выполняется условие

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

Пусть . Тогда из системы уравнений (3) следует, что:

Используя систему уравнений (3) найдем базисное решение с учетом :

Так как свободными переменными стали и , то необходимо «переразрешить» систему уравнений (3), а именно выразить переменную , ставшей базисной, через переменные , и подставить полученное выражение в оставшиеся уравнения системы:

(4)

Этому набору свободных и базисных переменных соответствует базисное решение:

Значение целевой функции при данном базисном решении:

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

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

Найдем максимум исследуемой функции.

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

(5)

Из системы уравнений (5) видно, что в качестве свободных переменных проще всего выбрать . Тогда базисные переменные выражаются через свободные так:

(6)

Если положить все свободные переменные равные нулю, то, используя систему уравнений (6), получим базисное решение:

Это базисное решение является недопустимым, так как не выполняются условия:

Пусть . Тогда из системы уравнений (6) следует, что:

(7)

Используя систему уравнений (6) найдем базисное решение с учетом :

Так как свободными переменными стали , и , то необходимо «переразрешить» систему уравнений (6), а именно выразить переменную , ставшей базисной, через переменные ,,и подставить полученное выражение в оставшиеся уравнения системы:

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

(8)

Этому набору свободных и базисных переменных соответствует базисное решение:

Значение целевой функции при данном базисном решении:

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

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

Пусть . Тогда из системы уравнений (8) следует, что:

(9)

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

Решим поставленную задачу с помощью средства «Поиск решения» в программе Microsoft Excel.

Структура листа в Microsoft Excel.

x1

x2

F

0

0

=3*A2+3*B2

Ограничение 1

=A2-2*B2

2

Ограничение 2

=-2*A2+B2

6

Ограничение 3

=2*A2+B2

6

Ограничение 4

=A2+2*B2

6

Найдем минимум исследуемой функции :

x1

x2

F

2

2

12

Найдем максимум исследуемой функции :

x1

x2

F

107374184,4

107374184,4

644245106,4

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

Вывод.

В результате проделанной работы были приобретены навыки при решении задач линейного программирования с помощью графического метода, симплекс-метода и при помощи средства «Поиск решения» в Microsoft Excel.

Соседние файлы в папке Лабораторная работа №3 [Ишимбай]
  • #
    02.05.201414.34 Кб11Книга1.xls
  • #
    02.05.2014353.79 Кб13№3.doc