Методы отсечения. Метод Гомори

Графический метод решения задач целочисленного программирования.

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

Если оптимальное решение этой задачи является целочисленным, то оно и является оптимальным для исходной задачи.

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

1. Оно должно быть линейным;

2. Должно отсекать найденный оптимальный не целочисленный план;

3. Не должно отсекать ни одного целочисленного плана.

Алгоритм графического решения задачи

Целочисленного программирования.

1. Построить систему координат x 1 0х 2 и выбрать масштаб.

2. Найти область допустимых решений (ОДР) системы ограничений задачи.

3. Построить целевую функцию, являющуюся линией уровня и на ней указать направление нормали.

4. Переместить линию целевой функции по направлению нормали через ОДР, чтобы она из секущей стала касательной к ОДР и проходила через наиболее удаленную от начала координат точку. Эта точка будет являться точкой экстремума, т.е. решением задачи.

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

5. Найти координаты, точки экстремума и значение целевой функции в ней. Если полученные значения не целочисленные, то перейти к следующему шагу.

6. Выделить у этих координат область с целочисленными значениями.

7. Определить новые координаты и построить граф.

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



Метод Гомори решения задач целочисленного программирования. Примеры решения экономических задач.

Данный метод основан на симплексном методе.

На первом этапе данная задача решается симплекс-методом, если полученное решение не целочисленное, то вводим дополнительное ограничение, которые должны быть:

Линейным;

Отсекать найденный оптимальный не целочисленный план;

Не должно отсекать ни одного целочисленного плана.

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

Ограничение накладывается на нецелочисленную переменную или на ту переменную, которая имеет большее дробное значение. Ограничение накладывается на не целочисленную переменную через не основные переменные. Ограничение составляется используя следующее правило: дробная часть свободного члена берётся с тем же знаком, который он имеет и в уравнении, а дробные части неосновных переменных - с противоположным знаком и выделяется положительная дробь. Например, {a}=a, {-a}={-A+a * }, где А - целая часть отрицательное число, а * -положительная дробь.

Получаем новое ограничение, вводим новую основную переменную, приведённое в формуле (1.2.3).

где x n+1 - нововведённая переменная,

x j - переменные не входящие в базис.

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

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

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

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

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

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

Задача. Контейнер объемом помещен на контейнеровоз грузоподъемностью 12т. Контейнер требуется заполнить грузом двух наименований. Масса единицы груза, объем единицы груза, стоимости приведены в таблице:

Вид груза т ден.ед.

Требуется загрузить контейнеровоз таким образом, чтобы стоимость перевозимого груза была максимальной.

Решим задачу методом Гомори.

Введем обозначения: х 1 – количество груза первого вида, х 2 – количество груза второго вида. Тогда экономико-математическая модель задачи примет вид:

Преобразуем математическую модель ЗЛП без учета целочисленности переменных к допустимому предпочтительному виду канонической формы:

По алгоритму основного симплекс-метода заполним симплексную таблицу решения ЗЛП:

*
-10 -12*
* 5/2 -1/2 19/2
1/2 1/2 5/2
-4* -30
2/5 -1/5 19/5
-1/5 3/5 3/5
8/5 26/5 -226/5

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

Замечание 9.1. Если имеется несколько дробных , то для той у которой дробная часть больше всего составляется ограничение.

Составим сечение Гомори для первого ограничения оптимальной симплекс-таблицы решения ЗЛП (так как ):

,

.

Преобразуем полученное ограничение к канонической форме с предпочтительной переменной:

.

Продолжим решение задачи двойственным симплекс-методом, включив новое ограничение в оптимальную симплекс-таблицу решения ЗЛП:

2/5 -1/5 19/5
-1/5 3/5 3/5
-2/5 -4/5 -4/5
8/5* 26/5 -226/5
-5/2
-42

Оптимальное решение расширенной ЗЛП удовлетворяет ограничению целочисленности.

Пусть оптимальный план, полученный симплекс-методом для задачи (5.1)-(5.3), следующий: и получен на базисе
Тогда последняя симплексная таблица имеет следующий вид:

Таблица 5.1

Приведённая к базису симплексная таблица для задачи целочисленного программирования

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

где и

Например,

.

Так как по условию
– неотрицательные целые числа, то и разностьтакже целое неотрицательное число.

Преобразуя это неравенство в уравнение, вычитая из его левой части целую неотрицательную дополнительную переменную
умножим уравнение на –1, добавим к последней симплексной таблице и, применяя симплексный метод (желательно двойственный), находим новый план. Если он не является целочисленным, то по последней симплексной таблице составляем новое дополнительное ограничение.

Если в оптимальном плане задачи (5.1)-(5.3) несколько дробных
то дополнительное ограничение составляют дляmax. Это ускоряет процесс получения оптимального целочисленного решения.

Рассмотрим геометрический смысл введения дополнительного ограничения (см. рис. 5.2). Пусть в точке A многогранника решений Q функция Z достигает максимального значения Z (A )=max, но координаты точки A – дробные. Тогда введенные ограничения по целочисленности I и II от области Q отсекают область с угловой точкой
, координаты которой целочисленные и в которой линейная функция достигает максимального значения.

Рис.5.2. Геометрический смысл ограничения Гомори

Метод Гомори рассмотрим на примере следующей задачи.

Пример 5.1. Найти максимальное значение функции

при условиях

Дать геометрическую интерпретацию решения задачи.

Решение. Для определения оптимального плана задачи (5.5)-(5.8) сначала находим оптимальный план задачи (5.5)-(5.7):

Таблица 5.2


базис
план
– неоптимальный,
.

Таблица 5.3

Симплекс-таблица, приведённая к базису

,
– неоптимальный, базис
,
.

Таблица 5.4

Симплекс-таблица, приведённая к базису

Оптимальный план
, базис
. Этот оптимальный план не является оптимальным планом задачи (5.5)-(5.8), поскольку две компонентыиимеют нецелочисленное значение. При этом дробные части этих чисел
равны между собой. Поэтому для одной из этих переменных составляется дополнительное ограничение. Составим, например, такое ограничение для переменной(чаще берут первую строку). Из последнейсимплекс-таблицы имеем:

.

Таким образом, к системе ограничений задачи (5.5)-(5.7) добавляем неравенство

Теперь находим максимальное значение функции (5.5) при выполнении условий (5.6), (5.7) и (5.9). В условие (5.9) вводим дополнительную переменную :

Таблица 5.5

Ввод в симплекс-таблицу дополнительной переменной

Выберем .
базис.

Таблица 5.6

Приведение симплекс-таблицы к базису

Базис
.
.

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

Геометрическая интерпретация решения задачи.

Рис.5.3. Геометрическая интерпретация решения задачи

Областью допустимых решений задачи (5.5)-(5.7) является многоугольник ОАВС D (рис. 5.3). Из рисунка видно, что максимальное значение целевая функция принимает в точке
т.е.
является оптимальным планом. Так как этот план не является оптимальным планом задачи (5.5)-(5.8) (числаи дробные), то вводится дополнительное ограничение

Исключая из этого неравенства иподстановкой вместо них соответствующих значений из уравнений системы ограничений (5.6), получим
.

.

Этому неравенству соответствует полуплоскость, ограниченная прямой
отсекающей отмногоугольника ОАВСD треугольник EFC .

Как видно из рисунка, областью допустимых решений полученной задачи является многоугольник OABEFD . В точке E (9;4) этого многоугольника целевая функция данной задачи принимает максимальное значение. Так как координаты точки Е – целые числа и неизвестные
ипринимают целочисленные значения при подстановке в уравнения (5.6) значений
и
то
является оптимальным планом задачи (5.5)-(5.8). Это следует и из таблицы симплекс-метода.

Замечание к использованию метода Гомори: если в первоначальный базис задачи входили искусственные векторы, то при составлении дополнительного ограничения искусственные переменные необходимо опустить.

Вопросы для самопроверки

    Области применения целочисленного программирования.

    Постановка задачи целочисленного программирования.

    Графический способ решения задачи целочисленного программирования.

    Алгоритм метода Гомори.

    Правило составления дополнительного ограничения (сечения Гомори).

    Геометрический смысл введения сечения Гомори.

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

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

Пусть Х* = (х1, х2, …,хm, …, хn) – оптимальный план найденный по симплекс методу, где базисом являются векторы А1, А2,…,Аm. Пусть хi дробное число (число в столбце В в iой строке). Тогда возможно, что в iой строке:

1. все хij целые, это означает, что задача не имеет целочисленного решения

2. некоторые хij дробные

Пусть [хi] и [хij] целые части чисел хi и хij, а {хi } и { хij } – дробные части.

Обозначим qi = {хi} и qij = { хij } и составим разности.

(qi1Х1+ qi1Х2+…+ qi1Хn)- qi ≥0

Преобразуем неравенство в уравнение умножив его на (-1) и добавив новую переменную Хn+1 и добавив новую строку в симплекс таблице (а значит и столбец). Решаем далее двойственным симплекс методом, если найденный план не является целочисленным, то процесс добавления новой переменной, строки и столбца в симплекс таблице повторяем.

Если в оптимальном плане несколько нецелочисленных компанент, то дополнительное ограничение составляем для максимального qi.

Вы также можете найти интересующую информацию в научном поисковике Otvety.Online. Воспользуйтесь формой поиска:

Еще по теме 47 Метод Гомори: основные идеи и краткое описание алгоритма. Экономический смысл введения дополнительного ограничения.:

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


Статьи по теме