Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Мат. программирование. Пениа Г.Г..doc
Скачиваний:
150
Добавлен:
21.02.2016
Размер:
4.97 Mб
Скачать

2.8 Дробно-линейное программирование

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

1. Систему ограничений приводят к каноническому виду:

где

  • основные переменные;

  • дополнительные переменные;

  • искусственные переменные.

  1. Знаменатель целевой функции обозначают через , это приво­дит к следующему:

  • появится дополнительное ограничение или;

  • функция цели приобретет вид .

  1. Все ограничения умножают на и к ним добавляют дополни­тельное соотношение.

  1. Вводят обозначения:

; ;;

; ;;.

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

  1. Задача приобрела каноническую форму, ее решение может быть выполнено симплексным методом. Учитывая, что индексы векторов должны соответствовать индексам переменных (,,и т.д.), вектор свободных членов обозна­чают через- это избавит от путаницы.

Таблица 1

Начальное симплекс-решение

Б

С

0

3

2

0

0

0

С.о.

0

-6

1

6

-1

0

0

1

0

0

0

0

-14

7

2

0

-1

0

0

1

0

0

0

0

-5

1

1

0

0

1

0

0

0

0

1

0

4

5

0

0

0

0

0

1

1/5

-строка

0

0

-3

-2

0

0

0

0

0

0

-строка

1

-20

12

13

-1

-1

0

0

0

0

Данной таблице соответствуют такие значения переменных:

; ;;;;;;;.

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

В таблице 1 получено три одинаковых симплексных отноше­ния, - все они равны нулю. При выборе ключевой строки руковод­ствуются правилом: берут ту, которая соответствует большему элементу ключевого столбца. В данном случае выбирают первую строку, и генеральный элемент равен 6.

Таблица 2

Вторая симплексная таблица

Б

С

0

3

2

0

0

0

С.о.

2

0

-1

1/6

1

-1/6

0

0

0

0

0

0

-12

40/6

0

2/6

-1

0

1

0

0

0

0

-4

5/6

0

1/6

0

1

0

0

0

1

5

19/6

0

5/6

0

0

0

1

6/19

-строка

-2

-16/6

0

-2/6

0

0

0

0

-строка

-7

59/6

0

7/6

-1

0

0

0

Второе решение выглядит так:

; ;;;;;;;.

Оно не оптимально.

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

Таблица 3

Третье симплексное решение

Б

С

0

3

2

0

0

0

С.о.

2

0

-28/40

0

1

-7/40

1/40

0

0

-

3

0

-72/40

1

0

2/40

-6/40

0

0

-

0

0

-100/40

0

0

5/40

5/40

1

0

-

1

428/40

0

0

27/40

19/40

0

1

40/428

-строка

0

-272/40

0

0

-8/40

-16/40

0

0

-строка

1

428/40

0

0

27/40

19/40

0

0

Третье решение:

.

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

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

Таблица 4

Четвертое симплексное решение

Б

С

0

3

2

0

0

0

С.о.

2

28/428

0

0

1

-56/428

24/428

0

-

3

72/428

0

1

0

70/428

-30/428

0

72/70

0

100/428

0

0

0

121/428

101/428

1

100/121

0

40/428

1

0

0

27/428

19/428

0

40/27

-строка

272/428

0

0

0

98/428

-42/428

0

Решение, соответствующее таблице 4, имеет вид:

, ,,,.

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

Таблица 5

Пятое симплексное решение

Б

С

0

3

2

0

0

0

2

21/121

1

0

0

0

20/121

56/121

3

4/121

0

1

0

0

-25/121

-70/121

0

100/121

0

0

0

1

101/121

428/121

0

5/121

0

0

1

0

-1/121

-27/121

-строка

54/121

0

0

0

0

-35/121

-98/121

В таблице 5 получено решение, удовлетворяющее условию опти­мальности:

, ,,,.

  1. Определяют значения исходных переменных:

Таким образом, решение задачи дробно-линейного программиро­вания будет следующим:

.

7. Дают, если возможно, геометрическую интерпретацию задачи:

  • находят область допустимых значений;

  • отмечают точки, соответствующие симплекс-таблицам.

Областью решений является треугольник . Первые ре­альные значения переменныхпоявились в четвертой симплекс­ной таблице, им соответствуют такие значения исходных неизвестных:. На графике – это вершина, она оптимальной не является. Оптимальное решение обеспечивает верши­на.

7

6

5

А

4

3

2

1

С

В

-5

-4

-3

-2

-1

0

1

2

3

4

5

6

-1

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

  1. По системе заданных ограничений строят область допустимых решений.

  2. Выбирают произвольное значение и строят соответствующую прямую– она обязательно пройдет через начало координат.

  3. Обозначим

  • если , то, поворачивая прямуюпротив часовой стрелки до опорного положения, получим точку минимума (для получения максимума прямую поворачивают по часовой стрелке);

  • если , то для получения минимума прямуюповорачивают по часовой стрелке до опорного положения (для максимума – против часовой стрелки).

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

Пример. Найти решение дробно-линейной задачи.

, рассмотрим 2 варианта функции

а)

б)

  1. Строим область допустимых решений – она определяется тремя неравенствами и представляем собой треугольник .

  1. Строим прямую

а)

б)

; ;

а) ;;;;

б) ;;;;