- •Министерство образования и науки Украины
- •I. Математические основы программирования
- •II. Общий вид задачи линейного программирования
- •III. Методы решения общей задачи линейного программирования
- •IV. Двойственные задачи линейного программирования
- •V. Распределительные методы
- •Vі. Элементы нелинейного программирования
- •VII. Элементы теории игр
- •2.1 Постановка задач линейного программирования
- •2.2 Графический метод решения задач линейного программирования
- •2.3 Симплексный метод
- •2.4 Двойственные задачи и их решение
- •2.5 Анализ матричной игры
- •2.6 Метод потенциалов
- •2.7. Задачи о назначении
- •2.8 Дробно-линейное программирование
- •2.9 Параметрическое программирование
- •3.1. Постановка задач линейного программирования
- •3.2. Графический метод
- •3.3. Симплексный метод и двойственные задачи
- •3.4. Матричные игры
- •3.5. Транспортные задачи
- •3.6. Задачи о назначении
- •3.7. Решить задачи дробно-линейного программирования
- •3.8. Параметрическое программирование
- •3.9. Целочисленное линейное программирование
- •4.1 Пакет "The management scientist"
- •Диапазоны целевых коэффициентов
- •4.2 Пакет qsb
- •Математическое программирование
2.8 Дробно-линейное программирование
Если в задаче с линейными ограничениями задана дробно-линейная целевая функция, то такая задача может быть преобразована к традиционному виду путем несложных преобразований. Преобразованная модель может быть разрешена симплексным методом, а найденное решение трансформировано в решение исходной задачи дробно-линейного программирования. Все этапы алгоритма проиллюстрируем на конкретном примере.
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 получено решение, удовлетворяющее условию оптимальности:
, ,,,.
Определяют значения исходных переменных:
Таким образом, решение задачи дробно-линейного программирования будет следующим:
.
7. Дают, если возможно, геометрическую интерпретацию задачи:
находят область допустимых значений;
отмечают точки, соответствующие симплекс-таблицам.
Областью решений является треугольник . Первые реальные значения переменныхпоявились в четвертой симплексной таблице, им соответствуют такие значения исходных неизвестных:. На графике – это вершина, она оптимальной не является. Оптимальное решение обеспечивает вершина.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||
|
|
|
|
|
|
|
|
|
|
|
|
7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
А |
|
|
|
|
|
|
|
|
|
| ||
|
|
|
|
|
|
|
|
|
|
|
|
4 |
|
|
|
|
|
|
|
|
|
|
|
| ||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||
|
|
|
|
|
|
|
|
|
|
|
|
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
С |
|
|
|
|
В |
|
|
| ||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||
|
|
-5 |
|
-4 |
|
-3 |
|
-2 |
|
-1 |
|
0 |
|
|
1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Замечание. Дробно-линейную задачу с двумя переменными можно решать графическим методом, основываясь на таких правилах:
По системе заданных ограничений строят область допустимых решений.
Выбирают произвольное значение и строят соответствующую прямую– она обязательно пройдет через начало координат.
Обозначим
если , то, поворачивая прямуюпротив часовой стрелки до опорного положения, получим точку минимума (для получения максимума прямую поворачивают по часовой стрелке);
если , то для получения минимума прямуюповорачивают по часовой стрелке до опорного положения (для максимума – против часовой стрелки).
Определив оптимальные точки, находят их координаты – это и будут оптимальные значения переменных, после чего вычисляют величину функции цели.
Пример. Найти решение дробно-линейной задачи.
, рассмотрим 2 варианта функции
а) |
б) |
Строим область допустимых решений – она определяется тремя неравенствами и представляем собой треугольник .
Строим прямую
а)
б)
; ;
а) ;;;;
б) ;;;;