Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
samples / Stacionar / системный анализ / системный анализ.doc
Скачиваний:
31
Добавлен:
25.03.2015
Размер:
380.42 Кб
Скачать

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

Универсальным методом решения задач линейного программирования является симплекс-метод, который состоит из алгоритма отыскания какого-нибудь опорного среди решений системы и алгоритма последовательного перехода от полученного уже опорного решения к некоему новому. Этот процесс продолжается до получения оптимального решения.

Рассмотрим симплекс метод:

В вычислительной схеме симплекс-метода реализуется упорядоченный процесс, при котором, начиная с некоторой исходной допустимой угловой точки, осуществляется последовательный переход к другой точке (смежной). Выбор каждой последующей точки определяется правилами:

  1. каждая последующая угловая точка должна быть смежной предыдущей.

  2. Обратный переход к предшествующей точке производиться не может (иначе зацикливание).

Смежные угловые точки отличаются только одной переменной в каждой группе переменных. Эти группы переменных соответственно называются БАЗИСНЫМИ и СВОБОДНЫМИ.

Симплекс-метод требует приведения задачи к стандартному виду, в котором нет ограничений в виде неравенств (все ограничения имеют вид равенств).

Основная Задача Линейного Программирования (ОЗЛП): Z=CX

AX=B

X≥0

!!! В стандартной постановке все bi≥0. К такому виду следует приводить (домножить на -1)

!!! Приведение ограничения к форме равенства достигается путем введения в выражение такого ограничения дополнительной переменной: она прибавляется к левой части, если был знак ≤, и вычитается из левой части, если был знак ≥.

Когда выполняются условия Z=CX, AX=B, X≥0 и bi≥0, то задача задана в канонической форме.

Все условия системы для симплекс-метода надо записать в виде одного уравнения:

Приравниваем уравнения к нулю:

Z = CX => CX-Z0 = 0; AX = B => AX-B = 0, т.е.

C

Z

*

X

= 0

A

B

-1

Матрицу А преобразовать так, чтобы получить единичную матрицу ( I ):

┌ ┐┌ ┐

│ I ^B ││ X │= 0 I X = ^B

│ ││ -1 │

└ ┘└ ┘C – тоже преобразуется в ^C и ¯C

┌ ┐┌ ┐

│ ^C ¯C ^Z0 ││ X │= 0,

│ I ¯А ^B ││ -1 │

└ ┘└ ┘то есть векторы С и А разбились каждый на два:

(^C+¯C) X - ^Z0 = 0

( I+¯A) X - ^B = 0

Переменные, входящие в уравнения:

^C Х - ^Z0 = 0

I Х - ^B = 0

являются базисными, остальные – свободными. Если в результате построения мы получили все В≥0, то текущее решение является ДОПУСТИМЫМ. Теперь надо определить, нашли ли мы ОПТИМАЛЬНОЕ РЕШЕНИЕ. Если решается задача на min, то оптимум – при всех С≥0, если на max, то при С≤0. Если оптимум не найден, то нужно найти следующую смежную точку: одну из базисных переменных переместить в число свободных, а свободную – в базисные.

При этом выбирают ту переменную, которая оказывает максимальное влияние на целевую функцию.

По max ( | ¯сi | ) выбирается столбец i. А чтобы найти строку j: выбирается min (^bj/ai)

На месте разрешающего элемента ij должна стать 1, а остальные значения в этом столбце – обратиться в нуль.

Для этого:

  1. разрешающая строка нормируется – делиться на значение разрешающего элемента;

  2. разрешающий столбец преобразовывается в единичный с единицей в разрешающем элементе (домножением на некоторое число, такое, чтобы последующее сложение с опорной строкой давало 0 в опорном столбце).

После этого делается проверка на выполнение условий достижения оптимума (цикл).

Для отыскания первого опорного решения может быть использовано несколько способов:

1. Введение дополнительных переменных (для приведения неравенств к виду уравнений).

Эти дополнительные переменные собираются во вспомогательную функцию min w = ∑i xn+i

Первым шагом решения является минимизация этой функции. После чего дополнительные переменные можно исключить и решать дальше.

2. Метод штрафов

Дополнительные переменные вводятся в систему уравнений ограничений и одновременно в целевую функцию, причем эти переменные вводятся в целевую функцию с такими весовыми коэффициентами Мi, чтобы УХУДШИТЬ целевую функцию. (М отрицательные для поиска max и положительные для поиска min – обычно назначается как максимальный по модулю коэффициент во всех уравнениях, умноженный на 10)

3. Использование свойства двойственности.

Этот метод используется обычно тогда, когда получено опорное решение, но некоторые коэффициенты bi оказались отрицательными. Тогда, если в строке матрицы с этим коэффициентом есть элементы aij<0, то решение может быть получено. Иначе – решения нет.

При решении – если коэффициенты уменьшаются по модулю и количество отрицательных элементов уменьшается, то решение будет найдено. Иначе – зацикливание.

ИНТЕРПРЕТАЦИЯ СИМПЛЕКС-ТАБЛИЦЫ

По остаточным переменным определяется статус ресурса: если переменные не находятся в базисе (т.е. = 0) или в базисе, но b=0, то ресурсы – дефицитные. Остальные – недефицитные.

Ценность ресурсов – определяется по строке Z: коэффициенты в этой строке являются коэффициентами ценности ресурса.

Исследование на чувствительность требует перерасчетов: при определении изменения ограничений решение считается остающейся в той же точке, пока коэффициенты bi остаются положительными.

При изменении коэффициентов целевой функции нужно следить за знаком коэффициентов: для min они должны быть все >0 (для max - наоборот).