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

Решение задачи линейного программирования.

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

(1)

Теорема. Если множество планов задачи (1) не пусто и целевая функция сверху ограничена на этом множестве, то задача (1) имеет решение.

Теорема. Если множество допустимых планов имеет крайние точки и задача (1) имеет решение, то среди крайних точек найдется оптимальная.

Метод исключения Жордана-Гаусса для системы линейных уравнений.

Большинство из существующих численных методов решения задач линейного программирования использует идею приведения системы линейных уравнений

которая в матричной форме записывается в виде , к более удобному виду с помощью так называемого метода Жордада-Гаусса.

В первом уравнении системы отыскивается коэффициент , отличный от нуля. С помощью этого коэффициента обращаются в нуль коэффициенты при переменной в остальных уравнениях системы. Для этого первое уравнение умножается на число и прибавляется к уравнению с номером , . Затем первое уравнение делится на число . Это преобразование называется элементарным преобразованием. Полученная эквивалентная система обладает тем свойством, что переменная присутствует только в первом уравнении, и притом с коэффициентом 1. Переменная называется базисной переменной.

Аналогичная операция совершается поочередно с каждым уравнением системы; при этом всякий раз преобразуются все уравнения и выполняется список базисных переменных.

Результатом применения метода Жордада-Гаусса является следующее: либо устанавливается, что система несовместна, либо выявляются и отбрасываются все «лишние» уравнения; при этом итоговая система уравнений имеет вид

, ,

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

Полученную системы уравнений называют приведенной системой, соответствующей множеству номеров базисных переменных.

Симплекс-метод.

Симплекс –метод, метод последовательного улучшения плана, является в настоящее время основным методом решения задач ЛП.

Рассмотрим каноническую задачу ЛП

(2)

где векторы , матрица и . Множество планов в задаче (2) будем обозначать через и будем предполагать, что все угловые точки являются невырожденными.

, где вектор определяется формулой .

Теорема. Если в угловой точке выполняется условие , то — решение задачи (2).

Теорема. Для того, чтобы угловая точка являлась решением задачи (2), необходимо и достаточно, чтобы в ней выполнялось условие .

Алгоритм симплекс-метода.

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

Шаг 0. Задать целевой вектор , матрицу условий , вектор ограничений и множество базисных индексов . Сформировать базисную матрицу и вектор .

Шаг 1. Вычислить матрицу и вектор .

Шаг 2. Вычислить вектор потенциалов и оценки .

Шаг 3. Если для всех , то остановиться: вектор — базисный вектор оптимального плана; иначе перейти на шаг 4.

Шаг 4. Выбрать произвольный индекс и вычислить вектор .

Шаг 5. Если , то остановиться: ; иначе перейти на шаг 6.

Шаг 6. Сформировать множество индексов и вычислить .

Шаг 7. В множестве индекс заменить на индекс , в матрице — вектор — на вектор , в векторе — компоненту на . Перейти на шаг 1.

1