- •Глава 4. Линейное программирование
- •4.1. Постановка задачи
- •В общем случае модель задачи лп имеет вид
- •4.2. Примеры задач линейного программирования
- •Задача составления рациона или как экономно питаться
- •4.2.2. Задача оптимального планирования
- •4.2.3. Сбалансированная транспортная задача
- •4.2.4. Общая распределительная задача
- •4.2.5. Задача планирования работы оборудования
- •4.2.6. Игра двух лиц с нулевой суммой как задача линейного программирования
- •4.2.7. Резюме
- •4.3. Формы записи задач линейного программирования и способы приведения к ним
- •4.3.1. Каноническая форма задач лп
- •4.3.2. Стандартная форма задачи лп
- •4.4. Упрощение модели
- •4.5. Основные понятия лп. Свойства задач лп
- •4.6. Геометрия задач лп
- •4.7. Выделение вершин допустимого множества
- •4.8. Методы решения задач лп
- •4.9. Симплекс-метод
- •4.9.1. Харатеристика метода
- •4.9.2. Переход от одного базисного решения к другому
- •4.9.3. Признак оптимальности. Основные этапы симплекс-метода
- •4.9.4. Построение начального базисного решения
- •4.9.5. Связь между параметрами последовательных итераций
- •4.9.6. Алгоритм симплекс-метода
- •4.9.7. Примеры
- •4.9.8. Учет двусторонних ограничений
- •4.10. Модифицированный алгоритм
- •4.11. Двойственность задач лп
- •4.11.1. Запись двойственной задачи в симметричном случае
- •4.11.2. Интерпретация двойственной задачи
- •4.11.3. Запись двойственной задачи в общем случае
- •4.11.4. Теоремы двойственности
- •4.11.5. Двойственный симплекс-метод
- •4.12. Параметрический анализ
- •4.12.1. Параметрирование вектора ограничениий
- •4.12.2. Параметрирование коэффициентов линейной формы
- •4.13. Задания для самостоятельной работы
4.7. Выделение вершин допустимого множества
Из последнего вывода возникает вопрос: как отличить вершины допустимого множества от других решений задачи? Для поиска ответа снова обратимся к геометрическим представлениям.
Пусть каноническая модель содержит переменных иm линейно-независимых равенств.Тогда размерность пространства переменныхk=-m. Как показано выше (рис. 4.2),на каждой границе допутимого множества одна из переменных равна нулю. Вk –мерном пространстве вершина образуется пересечениемk гиперплоскостей. Поэтому в нейk переменных заведомо равны нулю и толькоmпеременных могут быть ненулевыми, т.к.-k=-+m=m. Если из вершины сместиться в любом направлении, то число ненулевых переменных увеличвается. Так при сдвиге из вершины С (рис. 4.2) по ребру в сторону вершины В к ненулевым переменным добавлятсяx4. В точках, не лежащих на границах условий, все переменные не равны нулю. Из линейной алгебры известно, что решение системы уравнений с рангом m содержит m базисныхпеременных и-mсвободных (небазисных). Если все свободные переменные равны нулю, то решение называетсябазисным. Следовательно, каждой вершине множестваD соответствуетнекоторое базисное решение системы равенств.
На самом деле в вершине могут пересекаться более k гиперплоскостей (на плоскости – больше двух прямых; в трехмерном пространстве, например, вершина не в основании пирамиды образуется пересечением плоскостей, число которых может быть больше 3-х – по числу вершин многоугольника в ее основании). Тогда в нуль обращается болееk переменных. Такие базисные решения (вершины) называют вырожденными, и задачи, имеющие хотя бы одно вырожденное решение, также называют вырожденными. Число “лишних” плоскостей () определяет степень вырожденности. Поэтому в общем случае в базисном решении число ненулевых переменных равно m- и можно определить базисное решение как решение, в котором число ненулевых переменных не больше m. В любом другом решении таких переменных больше m.
Однако не каждое базисное решение соответствует вершине допустимого множества, так как пересечение k или более гиперплоскостей имеет место и вне этого множества. Это наглядно видно и на рис.4.2, где k =2. Учитывая, что на каждой границе одна переменная равна нулю, с одной стороны границы эта перемнная будет положитльной, а с другой отрицательной. В допустимом множестве все переменные неотрицательны. Таким образом, мы легко отделяем базисные решения, соотвтствующие вершинам множества D, от базисных решений, им не соответствующих. Базисное решение с неотрицательными переменными будем называть допустимым базисым решением или опорным планом (решением).
Вывод: оптимальное решение задачи ЛП следует искать среди опорных решений, геометрически – в вершинах (крайних точках) допустимого множества.
Так как число вершин всегда конечно, то, казалось бы, задача может быть легко решена путем исследования всех вершин. Оценим такую возможность.
Известно, что число базисных решений системы линейных уравнений сn переменными и рангомr определяется сочетанием
Из них примерно 40% опорных. Возьмем небольшую задачу ЛП: 10 неравенств с 10 переменными. В канонической форме будем иметь систему уравнений с 20 переменными и рангом r=10. Получаем 184756 базисных решений и, значит, порядка 70 тысяч вершин (опорных решений). Столько раз нужно вычислить координаты вершин и значение критерия, а затем сравнить. Если учесть, что реальные задачи содержат сотни и тысячи ограничений и переменных, то становится ясным, что такой способ решения неприемлем даже при самых мощных компьютерах. В таких случаях приходится обращаться к соответствующим методам решения линейных задач.