Для связи в whatsapp +905441085890

Математическая постановка задачи линейного программирования

Математическая постановка задачи линейного программирования

Из рассмотрения задач математического программирования следует, что в общем виде решить их практически невозможно. Целесообразно рассматривать отдельные классы (виды) задач. Для каждого такого класса удается сформулировать алгоритм решения, приемлемый только для данного класса задач. Наиболее разработанными в математическом программировании являются задачи линейного программирования.

Целевая функция в них линейна, а условия-ограничения содержат линейные равенства и линейные неравенства. Переменные могут быть подчинены или не подчинены требованию неотрицательности. Примерами задач линейного программирования являются уже сформулированные в гл. I задача о питании, транспортная задача и т.п. Одна и та же задача линейного программирования может быть записана в различной форме. Говорят, что задача линейного программирования записана в канонической форме, если все ее ограничения, кроме Математическая постановка задачи линейного программирования, представляют собой равенства. Если все ограничения имеют вид неравенств, то задача записана в стандартной форме.

Для записи задачи линейного программирования в различной форме применяются следующие приемы.

  • Точка минимума функции Математическая постановка задачи линейного программирования, совпадающая с точкой максимума функции —Математическая постановка задачи линейного программирования.
  • Ограничения в виде неравенств
Математическая постановка задачи линейного программирования

можно представить в виде равенств, использовав новые переменные

Математическая постановка задачи линейного программирования

называемые слабыми:

Математическая постановка задачи линейного программирования

Для неравенства

Математическая постановка задачи линейного программирования

можно взять Математическая постановка задачи линейного программирования и получить равенство

Математическая постановка задачи линейного программирования

Ограничение в виде равенства

Математическая постановка задачи линейного программирования

можно заменить двумя неравенствами:

Математическая постановка задачи линейного программирования

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

Математическая постановка задачи линейного программирования

их можно заменить Математическая постановка задачи линейного программирования неравенствами

Математическая постановка задачи линейного программирования

Если на переменную Математическая постановка задачи линейного программирования, и , не наложено условие неотрицательности, ее можно заменить двумя неотрицательными переменными Математическая постановка задачи линейного программирования и Математическая постановка задачи линейного программирования, положив Математическая постановка задачи линейного программирования. Если имеется Математическая постановка задачи линейного программирования таких переменных Математическая постановка задачи линейного программирования, то их можно заменить Математическая постановка задачи линейного программирования неотрицательными переменными Математическая постановка задачи линейного программирования и Математическая постановка задачи линейного программирования, положив Математическая постановка задачи линейного программирования.

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

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

Математическая постановка задачи линейного программирования

Говорят, что система (2.1) линейных уравнений совместна, если она имеет, по крайней мере, одно решение. Система (2.1) называется избыточной, если одно из уравнений можно выразить в виде линейной комбинации остальных. Система (2.1) несовместна, если ранг матрицы Математическая постановка задачи линейного программирования равен Математическая постановка задачи линейного программирования, ранг расширенной матрицы этой системы (с присоединенным столбцом Математическая постановка задачи линейного программирования) больше Математическая постановка задачи линейного программирования.

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

Решение системы (2.1) называют базисным, если все свободные переменные равны нулю. Если система уравнений имеет решение, то она имеет и базисное решение. Решение системы уравнений (2.1) называют допустимым, если все его компоненты неотрицательны. Если система линейных уравнений обладает допустимым решением, то она имеет и базисное допустимое решение. Совокупность всех допустимых решений системы (2.1) есть выпуклое множество или, другими словами, множество решений задачи линейного программирования выпукло. Так как это множество образовано плоскостями (гиперплоскостями), то оно имеет вид выпуклого многогранника. Базисное допустимое решение соответствует крайней точке выпуклого многогранника (его грани или вершине).

Если существует оптимальное решение задачи линейного программирования, то существует базисное оптимальное решение.

Целевая функция задачи линейного программирования есть уравнение плоскости (или гиперплоскости для числа переменных больше трех). Пусть в вершинах выпуклого многоугольника мы установили «столбы», высота которых определяет значения целевой функции в данной вершине. На эти «столбы» наложим плоскость (графическое представление целевой функции). Очевидно, что максимальное и минимальное значения целевая функция задачи линейного программирования достигает либо в вершине выпуклого многогранника, либо на одной из его граней. Таким образом, решение (решения) задачи линейного программирования лежит в вершинах выпуклого многогранника и для его нахождения надо вычислить значения целевой функции в вершинах выпуклого многогранника, определяемого условиями-ограничениями задачи.

Эта теория взята со страницы лекций по предмету «математическое программирование»:

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

Возможно эти страницы вам будут полезны:

Графическое решение задач математического программирования
Простейшая оптимизационная задача
Симплекс-метод — основной метод решения задач линейного программирования
Метод полного исключения Жордана для решения систем линейных алгебраических уравнений