Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методы оптимизации / Презентация к лекциям по курсу Методы оптимизации Раздел 8.pptx
Скачиваний:
184
Добавлен:
01.06.2015
Размер:
307.32 Кб
Скачать

Пример 6.3­5

При дополнительных переменных х3 и х4 для ограничений 1 и 2 задачи из примера 6.3­4 оптимальная симплекс­таблица соответствующей задачи линейного программирования имеет следующий вид.

Оптимальным непрерывным решением является х1 = , x2 = , x3 = 0, x4 = 0 и z = Целочисленное отсечение получается в предположении, что все переменные задачи являются целочисленными. Заметим также, так как коэффициенты исходной целевой функции являются целочисленными, то и значение z, соответствующее целочисленному решению, должно быть целочисленным.

Информация,

 

оптимальному

уравнений.

Так как в этом примере z, х1 и х2 должны быть целочисленными и все они на данный момент имеют дробные значения в оптимальной симплекс­таблице, любое из трех уравнений можно использовать в качестве производящей строки для построения отсечения. Выберем (произвольно) дли этой цели z­уравнение.

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

Разложение

следующему уравнению.

При переносе всех целочисленных слагаемых в левую часть уравнения, а всех дробных слагаемых в правую

Поскольку все переменные в рассматриваемой задаче принимают целочисленные значения,

левая часть последнего уравнения должна быть целочисленной, откуда следует, что и

правая часть также должна

следующим образом.

Поскольку х3, х4 0, выражение в скобках является неотрицательным.

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

Это и есть отсечение, порожденное 2-строкой. Нетрудно убедиться, что ранее найденное оптимальное непрерывное решение

х3 = 0, х4 = 0 не удовлетворяет отсечению. Действительно, так как х3 = х4 = 0, отсечение не удовлетворяется (оно приводит к неравенству

1 0). Следовательно, если мы присоединим отсечение к конечной симплекс-таблице, то оптимальное решение новой симплекс-таблицы будет "двигаться" в направлении выполнения ограничения целочисленности.

Можно таким же образом построить отсечение, исходя из производящей х1 - Рассмотрим сначала х1 -

строку. Имеем

(производящая х1 - строка).

Операция разложения приводит к уравнению

Соответствующим

Аналогично,

(производящая х2 -

строка)

записывается

Следовательно, имеет вид

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

Выбирая

х2 - строкой, записываем

его следующим

 

 

(отсечение 1).

Таблица представляет оптимальное, но недопустимое решение. Для восстановления допустимости решения применим двойственный симплекс-метод (см. раздел 4.5), что приведет к следующей симплекс- табли

Из-за дробных значений переменных x1 и х3 последнее решение все еще нецелочисленное. Выберем x - строку в качестве производящей, т.е.

Соответствующее

(отсечение2).

получаем

Применение двойственного симплекс-метода приводит к следующей симплекс

Оптимальное решение (х1 = 4, x2 = 3, z = 58), определяемое последней

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

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

Важность этого продемонстрируем следующем примере. Рассмотрим ограничение

х1, х2 0 и целые.

С точки зрения решения соответствующей задачи ЦЛП это ограничение преобразуется в уравнение неотрицательной дополнительной

Применение дробного отсечения предполагает, что ограничение имеет допустимое целочисленное решение по всем переменным, т.е. х1, х2 и s1.

Рассмотрев это уравнение, можем сказать, что оно может иметь допустимое целочисленное решение переменных х1 и х2 лишь в том случае, если

переменная s1 принимает нецелочисленные значения. Следовательно,

применение дробного отсечения приведет к недопустимому целочисленному решению, так как все переменные х1, х2 и s1 не могут

одновременно быть целочисленными. Тем не менее ограничение имеет допустимые целочисленные решения для рассматриваемых переменных х1 и

х2.

Есть две возможности исправить эту ситуацию.

1. Можно умножить все ограничения на соответствующую константу для устранения дробей. Например, приведенное выше ограничение умножается на 6, что приводит к неравенству 6x1 + 2x2 39. Любое целочисленное

решение переменных х1 и х2 автоматически дает целочисленное значение

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

2. Можно использовать специальные отсечения, именуемые частично- целочисленными. Они ориентированы на решение задач, в которых лишь часть переменных должна принимать целочисленные значения, а остальные (включая дополнительные) остаются непрерывными. Детальное изложение таких отсечений в этой главе не рассматривается.

8.4. ЗАКЛЮЧЕНИЕ

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

1.Аппроксимировать целочисленные переменные непрерывными, где это возможно.

2.Сузить, насколько возможно, интервалы допустимых значений целочисленных переменных.

3.Избегать в модели ЦЛП использования нелинейных элементов.

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

Соседние файлы в папке Методы оптимизации