Пред.
След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO
ГЛАВА 13. ЛОКАЛЬНЫЙ ПОДХОД к ЗАДАЧАМ ДИСКРЕТНОГО ПРОГРАММИРОВАНИЯЛокальный подход, развитый в дискретном анализе (см. Журавлев формализации класса задач, которые поддаются разбиению на последовательность «блоков», в определенном смысле слабо связанных между собой. При этом полный перебор переменных по всей задаче удается существенно снизить, заменяя его суммой переборов по блокам — правда, с определенным ростом требований к памяти. Впоследствии локальный подход был распространен на более широкий класс задач в работах Финкельштейна [31], [34]. Этот общий подход и будет изложен в настоящей главе. § 1. Предварительные рассмотрения1.1. Пусть имеется следующая задача дискретного программирования с сепарабельной целевой функцией. Задача Z. Максимизировать
при условиях
Подчеркнем, что никаких ограничений (типа линейности, выпуклости и т. п.) на функции Введем матрицу инциденций
Алгоритм, предложенный в [34], предназначен для решения квазиблочных задач, т. е. задач, в которых множества индексов обладающие определенными свойствами:
Здесь
Рис. 13.1.1. Матрица инциденций Введем обозначение
Матрица инциденций элементы матрицы инциденций могут находиться только в одной из заштрихованных клеток (т. е. в одном из блоков). Блоки на рис. 13.1.1 слабо связаны между собой. Иначе говоря, если зафиксировать все переменные из
и рассмотреть задачу (1.1) — (1.3) при дополнительном условии (1.7), то задача распадется на две независимые задачи: Алгоритм, предложенный в [34], эффективен для квазиблочных задач с не слишком большими блоками, т. е. для таких задач, в которых полный перебор
проделать невозможно, но можно произвести перебор
при объеме одновременно хранимой информации, не превышающем
1.2. Теперь, следуя работе Финкельштейна [31], предположим, что к условиям (1.1) — (1.3) добавлены еще следующие «сепарабельные» ограничения, содержащие все переменные:
Задачу, определяемую условиями Введем некоторые дополнительные обозначения. Вектор переменных
Далее обозначим
Под
Фиксированное значение вектора
если
1.3. Поясним идею алгоритма для решения задачи Рассмотрим два вектора: вектор
Допустим теперь, что для некоторого вектора
I. Если выполнены условия (1.13) — (1-17), то вектор
то получаем следующее утверждение: II. Если выполнены условия
Алгоритм, излагаемый ниже, является непосредственным обобщением алгоритма для задачи
|
1 |
Оглавление
|