В) если недопустимости есть, т.е. M
3) Для i
При необходимости корректируем N ; если перспективных вариантов нет, то возвращаемся назад и пересчитываем условия.
4)
5) Если ранее был получен рекорд, то проверяем правило 3.
Получили набор свободных переменных N.
6)
N
J.
y
z j
N
N'
J. y
zj
1.6.5 Сведение ЗЦП в общей постановке к задаче с булевыми переменными
Пусть все условия, необходитмые для метода Балаша выполняются, т.е. задача на минимум, ограничения типа
2)
3)
4)
1.7 ПРИБЛИЖЕННОЕ РЕШЕНИЕ. ИСПОЛЬЗОВАНИЕ ТОЧНЫХ МЕТОДОВ И ТОЧНОРЕШАЕМЫХ ЗАДАЧ
Задача целочисленного программирования:
x(2)
Если для x условия принадлежности области D выполняются, то решение допустимое x' ; если для x' достигается экстремум целевой функции, то решение оптимальное x * .
Любое допустимое решение можно считать приближенным с некоторой точностью.
Относительная погрешность: (4).
Если погрешности равны 0, то приближенное решение является точным. Если абсолютная погрешность не равна нулю, то (3) и (4) служат для оценки качества или точности приближения. n
Запишем функцию цели в виде: f ( x)
При этом если c j одного знака, то использование (3) и (4) являются оправданными. Если c j разных зна-
В этом случае f ( x) может оказаться малой разностью больших величин.
Такая погрешность будет всегда для разности близких величин. И такое положение, не зависящее от слагаемых величин, не допустимо, следовательно, использование (4) здесь не уместно. Для такого случая за f ( x*) f ( x')
На этом примере видно, что в каждом конкретном случае оценка решения производится исходя из содержательной постановки задачи и тесно связана с ней.
Все ЗЦП можно разделить на 2 класса:
1) задачи, для которых легко найти допустимые решения, а значит решить приближенно; поиск точного решения задач может быть очень трудным;
2) Задачи, для которых трудно найти допустимое решение, поиск приближенного решения сопоставим по трудностям с нахождением точного решения.
К задачам 1-го класса относятся эвристические алгоритмы поиска приближенного решения.
Задачи 2-го класса используют для получения приближенного решения следующие методы:
1) аппроксимация на основе точных методов и точно решаемых задач;
2) методы локальной оптимизации;
3) случайного поиска;
4) случайного поиска с локальной оптимизацией; 5) методы, использующие специфику задачи.
Если последовательность допустимых решения слишком длинная, то ее можно прервать на любом шаге l и принять xl за приближенное решение.
Например, метод Лэнда и Дойга на каждой большой итерации строит допустимый целочисленный план – рекорд. Если рекорды упорядочить по (7), то прервав последовательность рекордов на любом шаге, получим решение приближенное соответствующей точности.
Метод отсечения Гомори не порождает приближенных решений, т.к. первое допустимое решение является точным решением задачи.
Все методы ветвей и границ порождают приближенное решение.
Пусть f ( x*) - рекорд, z - верхняя граница целевой функции.
Таким образом, методы ветвей и границ порождают не только приближенное решение, но и дают оценку их отклонения от оптимума (если известно z ).
1.7.2 Использование точно решаемых задач для получения приближенного решения
В рамках метода ветвей и границ используется прием релаксации ограничений. Применительно к ЗЦП он состоит в отбрасывании условия целочисленности и в переходе к задаче ЛП.
Задача ЛП решается точно, и если исходная задача на максимум, то получается соответствие: f ( x')
Аналогичным образом, задача о назначении может быть использована при релаксации задачи коммивояжера путем отбрасывания условия запрещения подциклов.
32