КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Симплекс- метод решения задачи линейного программирования. Симплекс- таблицы.Симплекс метод разрабатывался применительно к задачам линейного программирования, в которых множество решений D представляло собой симплекс в пространстве Rn т.е. D={x=Rn| , }, где n- мерным симплексом Sn называется выпуклая оболочка n- точек (x1,x2,x3,…,xn) не лежащих на одной (n-2) мерной плоскости. Симплекс- это n- мерный выпуклый многогранник имеющий в точности n- вершин. Решение соответствующей исходной точки называется начальным решением. Базисом матрицы А называется набор m линейно независимых столбцов. А матрица размерности (mxn) Алгоритм симплекс- метода: Для решения данной задачи необходимо выполнить следующие шаги: Шаг 1: Инициализация Разложим по исходному базису B={Aj1, Aj2,…., Ajm} небазисные вектор- столбцы матрицы А, т.е. найти координаты xj=B-1 b, вектор- столбцов Аi в базисе В. Разложение базисных вектор- столбцов известны xij=Ej. Также известны значения базисных переменных соответствующие базису В. Шаг 2. Условия оптимальности. Для каждого j от 1 до n вычислить симплекс- разность. Если все симплекс- разности больше 0, то процесс решения задачи окончен и решение оптимальное, иначе перейти к шагу 3. Шаг 3. Условие отсутствия решения задачи. Выяснить существует ли хотя бы одна симплекс разность меньше 0.в этом случае процесс решения задачи окончен. Целевая функция задачи не ограничена. Если существует, то перейти к шагу 4. Шаг 4: Итерация Выбрать симплекс разность меньше 0 и с условием . Соответствующие вектор столбцу xj небазисная переменная х вводится в базис. Вычислить отношение для всех i для которых хit>0 и найти минимальное из этих отношений. Соответствующие k-ой строке матрицы А текущая базисная переменная выводится из базиса, при этом t- ая вводится в базис переменная принимает значение и выполняется шаг 2. Симплекс- таблица Процесс нахождения экстремума с помощью симплекс-метода оформляется в виде специальных симплекс-таблиц. Симплекс-таблица составляется для каждой итерации по определенным правилам, что облегчает перебор базисных решений и позволяет избежать случайных ошибок. симплекс-таблица представляет собой расширенную матрицу системы ограничений с некоторыми дополнительными столбцами и строками. Симплекс- таблица размерности (m+1)*(n+2) m- количество базисных переменных; n- количество всех переменных. M=
Построение симплекс-таблицы для задачи ЛП вида:
базисные переменные ( )- решение является допустимым и базисным, а исходная базисная матрица является единичной. Начальное заполнение таблиц будет иметь вид:
Столбец таблицы который вводится в базис называется ведущим столбцом. Строка таблицы соответствующая вектору выводимому из базиса называется ведущей строкой. Элемент стоящий на пересечении ведущей строки и ведущего столбца называется ведущим элементом. Пересчет симплекс- таблицы по закону:
Элемент ведущей строки делим на ведущие элементы. Все элементы в ведущем столбце ,кроме ведущего заменяем не 0. Заменяем номер ведущей строки на номер ведущего столбца. Если в предыдущей таблице есть отрицательная симплекс- разность, то решение не является оптимальным, необходимо пересчитать таблицу еще раз.
2. Геометрическая интерпретация решения задачи линейного программирования. Определение. Непустое множество планов общей (основной) задачи линейного программирования называется многогранником решений. Свойство. Если основная задача линейного программирования имеет оптимальный план, то максимальное значение целевая функция принимает в одной из вершин многогранника решений. Вершину многогранника решений, в которой целевая функция принимает максимальное значение, найти не сложно, если задача содержит не более двух переменных (в обшем случае задача, записанная в основной форме, содержит не более двух свободных переменных, то есть п-r < 2, где п -число переменных, r— ранг матрицы, составленной из коэффициентов в системе ограничений задачи). Найдем решение задачи, состоящей в определении максимального значения функции F = c1x1+c2x2 (*) при условиях (1) (2) Каждое из неравенств (1), (2) геометрически определяет полуплоскость соответственно с граничными прямыми ai1x1 + ai2x2 =bi , i = 1,...k, x1 = 0, х2 = 0. Областью решений системы является множество точек, принадлежащих всем полуплоскостям, называемое в двумерном случае многоугольником решений. Исходная задача линейного программирования состоит в нахождении вершины многоугольника решений, в которой целевая функция (*) принимает максимальное значение. Такая вершина существует тогда, когда многоугольник решений не пуст и на нем целевая функция ограничена сверху. Для определения этой вершины построим линию уровня с1х1 + с2х2 = h, проходящую через многоугольник решений, и будем перемещать ее в направлении вектора С = (c1c2), ортогонального ей, до тех пор пока она не пройдет через последнюю общую точку с многоугольником решений. Координаты этой точки и определяют оптимальный план задачи. Отметим, что нахождение минимального значения линейной функции при данной системе ограничений отличается от нахождения ее максимального значения при тех же ограничениях лишь тем, что линия уровня с1х2 + c2x2 = h перемещается не в направлении вектора С = (с1, с2), а в противоположном направлении.
|