Какой из методов целочисленного программирования является комбинированным: контрольные, курсовые, доклады, лекции ,конспекты, рефераты

Содержание

ЭММ тест

КОНТРОЛЬНО-ТЕСТИРУЮЩИЕ ВОПРОСЫ по дисциплине «Математические методы в экономике»

  1. Что является объектом и языком исследования в экономико-математическом моделировании:

  1. различные типы производственного оборудования и методы его конструирования;

  2. экономические процессы и специальные математические методы;

  3. компьютерные программы и языки программирования.

  1. Какое матричное уравнение описывает замкнутую экономическую модель Леонтьева:

  1. (E – A)*X = C;

  2. A*X = X;

  3. A*X = E.

  1. Какое допущение постулируется в модели Леонтьева многоотраслевой экономики:

    1. выпуклость множества допустимых решений;

    2. нелинейность существующих технологий;

    3. линейность существующих технологий.

  1. Какое уравнение называется характеристическим уравнением матрицы А:

    1. (E – A)*X = Y;

    2. A*X = B;

    3. |A — lE| = 0.

  1. Множество n – мерного арифметического точечного пространства называется выпуклым, если:

    1. вместе с любыми двумя точками А и В оно содержит и весь отрезок АВ;

    2. счетно и замкнуто;

    3. равно объединению нескольких конечных множеств.

  1. Какая задача является задачей линейного программирования:

    1. управления запасами;

    2. составление диеты;

    3. формирование календарного плана реализации проекта.

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

    1. только неравенства;

    2. равенства и неравенства;

    3. только равенства.

  1. Тривиальными ограничениями задачи линейного программирования называются условия:

    1. ограниченности и монотонности целевой функции;

    2. не отрицательности всех переменных;

    3. не пустоты допустимого множества.

  1. Если в задаче линейного программирования допустимое множество не пусто и целевая функция ограничена, то:

    1. допустимое множество не ограничено;

    2. оптимальное решение не существует;

    3. существует хотя бы одно оптимальное решение.

  1. Симплекс-метод предназначен для решения задачи линейного программирования:

    1. в стандартном виде;

    2. в каноническом виде;

    3. в тривиальном виде.

  1. Неизвестные в допустимом виде системы ограничений задачи линейного программирования, которые выражены через остальные неизвестные, называются:

    1. свободными;

    2. базисными;

    3. небазисными.

  1. Правильным отсечением в задаче целочисленного программирования называется дополнительное ограничение, обладающее свойством:

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

    2. оно должно отсекать хотя бы одно целочисленное решение;

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

  1. Какой из методов целочисленного программирования является комбинированным:

    1. симплекс-метод;

    2. метод Гомори;

    3. метод ветвей и границ.

  1. Какую особенность имеет динамическое программирование как многошаговый метод оптимизации управления:

    1. отсутствие последействия;

    2. наличие обратной связи;

    3. управление зависит от бесконечного числа переменных.

  1. Вычислительная схема метода динамического программирования:

    1. зависит от способов задания функций;

    2. зависит от способов задания ограничений;

    3. связана с принципом оптимальности Беллмана.

  1. Какую задачу можно решить методом динамического программирования:

    1. транспортную задачу;

    2. задачу о замене оборудования;

    3. принятия решения в конфликтной ситуации.

  1. Метод скорейшего спуска является:

    1. методом множителей Лагранжа;

    2. градиентным методом;

    3. методом кусочно-линейной аппроксимации.

  1. Множители Лагранжа в экономическом смысле характеризуют:

    1. доход, соответствующий плану;

    2. издержки ресурсов;

    3. цену (оценку) ресурсов.

  1. Функция нескольких переменных называется сепарабельной, если она может быть представлена в виде:

    1. суммы функций одной переменной;

    2. произведения функций нескольких переменных;

    3. суммы выпуклых функций.

  1. Платежной матрицей называется матрица, элементами которой являются:

    1. годовые прибыли отраслевых предприятий;

    2. выигрыши, соответствующие стратегиям игроков;

    3. налоговые платежи предприятий.

  1. Верхней ценой парной игры является:

    1. гарантированный выигрыш игрока А при любой стратегии игрока В;

    2. гарантированный выигрыш игрока В;

    3. гарантированный проигрыш игрока В.

  1. Чистой ценой игры называется:

    1. верхняя цена игры;

    2. нижняя цена игры;

    3. общее значение верхней и нижней ценой игры.

  1. Возможно ли привести матричную игру к задаче линейного программирования:

    1. возможно;

    2. невозможно;

    3. возможно, если платежная матрица единичная.

  1. Кооперативные игры – это игры:

    1. с нулевой суммой;

    2. со смешанными стратегиями;

    3. допускающие договоренности игроков.

  1. Какие математические методы можно применять для принятия хозяйственных решений в условиях неопределенности:

    1. линейного программирования;

    2. массового обслуживания;

    3. динамического программирования.

  1. Главными элементами сетевой модели являются:

    1. игровые ситуации и стратегии;

    2. состояния и допустимые управления;

    3. события и работы.

  1. В сетевой модели не должно быть:

    1. контуров и петель;

    2. собственных векторов;

    3. седловых точек.

  1. Критическим путем в сетевом графике называется:

    1. самый короткий путь;

    2. самый длинный путь;

    3. замкнутый путь.

  1. Математической основой методов сетевого планирования является:

    1. аналитическая геометрия;

    2. теория электрических цепей;

    3. теория графов.

  1. Какая из данных экономико-математичеких моделей является однофакторной:

    1. модель материализованного технического прогресса;

    2. модель расширенного воспроизводства;

    3. модель естественного роста.

ОТВЕТЫ

на контрольно-тестирующие вопросы

1

b

11

b

21

c

2

b

12

a

22

с

3

c

13

с

23

a

4

c

14

a

24

c

5

a

15

с

25

b

6

b

16

b

26

c

7

c

17

b

27

a

8

b

18

c

28

b

9

c

19

a

29

c

10

b

20

b

30

c

7

Какую особенность имеет динамическое программирование как многошаговый метод оптимизации управления: a) отсутствие последействия

1.     Задача линейного программирования называется канонической, если система ограничений включает в себя:
a)    только неравенства;
b)    равенства и неравенства;
c)    только равенства. (*ответ к тесту*)
2.    Тривиальными ограничениями задачи линейного программирования называются условия:
a)    ограниченности и монотонности целевой функции;
b)    не отрицательности всех переменных; (*ответ к тесту*)
c)    не пустоты допустимого множества.
3.    Если в задаче линейного программирования допустимое множество не пусто и целевая функция ограничена, то:
a)    допустимое множество не ограничено;
b)    оптимальное решение не существует;
c)    существует хотя бы одно оптимальное решение. (*ответ к тесту*)
4.    Симплекс-метод предназначен для решения задачи линейного программирования:
a)    в стандартном виде;
b)    в каноническом виде; (*ответ к тесту*)
c)    в тривиальном виде.
5.    Неизвестные в допустимом виде системы ограничений задачи линейного программирования, которые выражены через остальные неизвестные, называются:
a)    свободными;
b)    базисными; (*ответ к тесту*)
c)    небазисными.
6.    Правильным отсечением в задаче целочисленного программирования называется дополнительное ограничение, обладающее свойством:
a)    оно должно быть линейным; (*ответ к тесту*)
b)    оно должно отсекать хотя бы одно целочисленное решение;
c)    оно не должно отсекать найденный оптимальный нецелочисленный план.
7.    Какой из методов целочисленного программирования является комбинированным:
a)    симплекс-метод;
b)    метод Гомори;
c)    метод ветвей и границ. (*ответ к тесту*)
8.    Какую особенность имеет динамическое программирование как многошаговый метод оптимизации управления:
a)    отсутствие последействия; (*ответ к тесту*)
b)    наличие обратной связи;
c)    управление зависит от бесконечного числа переменных.

Какую особенность имеет динамическое программирование как многошаговый метод оптимизации управления: a) отсутствие последействия

1.    Задача линейного программирования называется канонической, если система ограничений включает в себя:
a)    только неравенства;
b)    равенства и неравенства;
c)    только равенства. (*ответ к тесту*)
2.    Тривиальными ограничениями задачи линейного программирования называются условия:
a)    ограниченности и монотонности целевой функции;
b)    не отрицательности всех переменных; (*ответ к тесту*)
c)    не пустоты допустимого множества.
3.    Если в задаче линейного программирования допустимое множество не пусто и целевая функция ограничена, то:
a)    допустимое множество не ограничено;
b)    оптимальное решение не существует;
c)    существует хотя бы одно оптимальное решение. (*ответ к тесту*)
4.    Симплекс-метод предназначен для решения задачи линейного программирования:
a)    в стандартном виде;
b)    в каноническом виде; (*ответ к тесту*)
c)    в тривиальном виде.
5.    Неизвестные в допустимом виде системы ограничений задачи линейного программирования, которые выражены через остальные неизвестные, называются:
a)    свободными;
b)    базисными; (*ответ к тесту*)
c)    небазисными.
6.    Правильным отсечением в задаче целочисленного программирования называется дополнительное ограничение, обладающее свойством:
a)    оно должно быть линейным; (*ответ к тесту*)
b)    оно должно отсекать хотя бы одно целочисленное решение;
c)    оно не должно отсекать найденный оптимальный нецелочисленный план.
7.    Какой из методов целочисленного программирования является комбинированным:
a)    симплекс-метод;
b)    метод Гомори;
c)    метод ветвей и границ. (*ответ к тесту*)
8.    Какую особенность имеет динамическое программирование как многошаговый метод оптимизации управления:
a)    отсутствие последействия; (*ответ к тесту*)
b)    наличие обратной связи;
c)    управление зависит от бесконечного числа переменных.

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

Симплекс-метод предназначен для решения задачи линейного

Программирования +: в каноническом виде

Неизвестные в допустимом виде системы ограничений задачи линейного программирования, которые выражены через остальные неизвестные, называются : +: базисными

Симплексный метод — это вычислительная процедура, основанная на

принципе последовательного улучшения решений при переходе от одной

базисной точки (базисного решения) к другой. При этом значение целевой

функции:+: улучшается

Базисным решением является одно из возможных решений, находящихся: -: в пределах области допустимых значений +: в вершинах области допустимых значений

Симплекс-метод основан на проверке на оптимальность:+: вершины за вершиной симплекса

Симплекс это:+: выпуклый многоугольнике n- мерном пространстве с n+1 вершинами не лежащими в одной гиперплоскости

S: Множество переменных, образующих единичную подматрицу, принимается за начальное базисное решение:

-: значения этих переменных равны свободным членам. Все остальные вне базисные переменные не равны нулю.

-: значения этих переменных равны нулю. Все остальные вне базисные переменные равны свободным членам.

-: значения этих переменных равны нулю. Все остальные вне базисные переменные не равны нулю.

+: значения этих переменных равны свободным членам. Все остальные вне базисные переменные равны нулю.

 

 

V2: Двойственность влинейном программировании

 

 

I:

S: Как называются переменные двойственной задачи?

 

-: дополнительными переменными +: объективно обусловленными переменными -: объективно обусловленными оценками -: искусственными переменными

 

 

V2: Транспортная задача

 

I:

S: Транспортная задача формулируется следующим образом: Найти такие объемы перевозок для каждой пары «поставщик-потребитель», чтобы 1) мощности всех поставщиков были использованы полностью; 2) спрос всех потребителей был удовлетворен:

-: 3) суммарные затраты на перевозки были минимальные




+: 3) суммарные затраты на перевозки были максимальные -: 3) мощности всех поставщиков и мощности всех потребителей должны быть равны

-: 3) мощности всех поставщиков должны быть больше мощностей всех потребителей

 

I:

S: Целевая функция транспортной задачи обычно записывается так, что бы:

-: суммарные затраты стремились к нулю

+: суммарные затраты стремились к минимуму

-: суммарные затраты стремились к максимуму

-: суммарная прибыль стремилась к максимуму нулю

 

I:

S: Ограничения транспортной задачи представляет собой:

-: систему неравенств

-: систему неравенств и уравнений

-: область допустимых решений

+: систему уравнений

 

I:

S: Коэффициенты в системе ограничений транспортной задачи представляет собой:

-: равны единице

— : большие нуля

+: равны единице или нулю

-: меньше или равны нулю

 

I:

I: S: Транспортная задача
будет закрытой, если . ..

S: Метод северо-западного угла предполагает планирование поставок в: +: верхнюю левую ячейку -: верхнюю правую ячейку -: нижнюю левую ячейку -: нижнюю правую ячейку

 

 

_. а = О 5 Ь = О +. йг=40 Ь = 45 а = 45 Ь = 40


 


I: S: Транспортная задача
будет закрытой, если … +. а = 40 Ь = 70 с= 100 1 1
а = 26? й =155 с = 25 0 ‘& = 0 с = 0
_. д = и о = и с _. а = 40 й = 70 с = 120 •j 1
I: S: Транспортная задача
будет открытой, если. .. +: a=40, b=30 -: a=13, b=23 -: a=100, b=110 -: a=30, b=40
S: Транспортная задача будет закрытой, если
-: а=35, b=20 -: а=35, b=15 -: а=35, b=30 +: а=35, b=25
I: S: Пусть имеется два поставщика мощностью 80 и 90 и три потребителя мощностью 40; 50 и 60. Затраты на перевозки от первого поставщика к


D c1Jxx2I7UGMUx+mCveCSOe4wu3ie/zur86Zd/QYAAP//AwBQSwMEFAAGAAgAAAAhACNSxWLeAAAA CAEAAA8AAABkcnMvZG93bnJldi54bWxMj0FPg0AUhO8m/ofNM/FGF2zFiixNY/RkYkrx4HFhX4GU fYvstsV/7/Okx8lMZr7JN7MdxBkn3ztSkCxiEEiNMz21Cj6q12gNwgdNRg+OUME3etgU11e5zoy7 UInnfWgFl5DPtIIuhDGT0jcdWu0XbkRi7+AmqwPLqZVm0hcut4O8i+NUWt0TL3R6xOcOm+P+ZBVs P6l86b/e6115KPuqeozpLT0qdXszb59ABJzDXxh+8RkdCmaq3YmMF4OCKFkt7zmr4AEE+1GyTFcg atZrkEUu/x8ofgAAAP//AwBQSwECLQAUAAYACAAAACEAtoM4kv4AAADhAQAAEwAAAAAAAAAAAAAA AAAAAAAAW0NvbnRlbnRfVHlwZXNdLnhtbFBLAQItABQABgAIAAAAIQA4/SH/1gAAAJQBAAALAAAA AAAAAAAAAAAAAC8BAABfcmVscy8ucmVsc1BLAQItABQABgAIAAAAIQAr0tOerwIAALEFAAAOAAAA AAAAAAAAAAAAAC4CAABkcnMvZTJvRG9jLnhtbFBLAQItABQABgAIAAAAIQAjUsVi3gAAAAgBAAAP AAAAAAAAAAAAAAAAAAkFAABkcnMvZG93bnJldi54bWxQSwUGAAAAAAQABADzAAAAFAYAAAAA » filled=»f» stroked=»f»>


потребителям соответственно равны 2, 5, 6; от второго 4, 7, 3. Определг суммарные затраты на перевозки методом наименьших затрат.

+: 530

 

I:

S: Пусть имеется два поставщика мощностью 80 и 90 и три потребителя мощностью 40; 50 и 60. Затраты на перевозки от первого поставщика к потребителям соответственно равны 2, 5, 6; от второго 4, 7, 3. Определите суммарные затраты на перевозки при оптимальном плане перевозок.

+: 530

 

I:

S: Пусть имеется два поставщика мощностью 80 и 90 и три потребителя

мощностью 40; 50 и 60. Затраты на перевозки от первого поставщика к

потребителям соответственно равны 2, 5, 6; от второго 4, 7, 3. Сколько

продукции останется для фиктивных потребителей при оптимальном плане

перевозок.

+ : 1-го — 0; 2 — го 20

 

I:

S: Пусть имеется два поставщика мощностью 80 и 90 и три потребителя мощностью 40; 50 и 60. Затраты на перевозки от первого поставщика к потребителям соответственно равны 2, 5, 6; от второго 4, 7, 3. Как изменятся суммарные затраты, если затраты на перевозку единицы груза от второго поставщика ко второму потребителю снизятся на 1?

-: — 1 +: — 10 -: — 40 -: — 20

 

I:

S: Транспортная задача решается методом потенциалов.

 

Тогда значение потенциала v3 равно.

-: 24 -: 7 -: 60

+: 11

V2: Целочисленное линейное программирование I:

S: Какое из следующих утверждений истинно? 1-ый алгоритм Гомори используется при решении

A) целочисленной задачи линейного программирования

B) частично целочисленной задачи линейного программирования

 

-: A - да, B - — да
-: A - нет, B — да
-: A - нет, B — нет
+: А - — да, В — нет
I:    

S: Правильным отсечением в задаче целочисленного программирования называется дополнительное ограничение, обладающее свойством: +: оно должно быть линейным

-: оно должно отсекать хотя бы одно целочисленное решение

-: оно не должно отсекать найденный оптимальный нецелочисленный план

 

I:

S: Какой из методов целочисленного программирования является

комбинированным

-: симплекс-метод

-: метод Гомори

+: метод ветвей и границ

 

I:

S: Какое из следующих утверждений истинно?

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

A) задачей целочисленного программирования,

B) задачей Булевского программирования +: A — да, B — нет

-: A — да, B — да -: A — нет, B — нет -: A — нет, B — да

 

I:

S: Какое из следующих утверждений истинно? Задача о коммивояжере относится к задачам

A) дискретного программирования

B) целочисленного программирования -: A — нет, B — нет

+: А — да, В — да -: A — да, B — нет -: A — нет, B — да

 

I:

S: Алгоритмы методов отсечения разработаны для решения…

+: полностью или частично целочисленных и дискретных задач линейного

программирования

-: полностью целочисленных задач нелинейного программирования -: полностью целочисленных задач линейного программирования -: полностью целочисленных задач выпуклого программирования

 

I:

S: В алгоритме метода ветвей и границ на 1-м шаге находится решение

задачи линейного программирования

-: с учетом целочисленности

-: без учета не целочисленных ограничений

+: без учета целочисленности

-: без учета всех ограничений

 

I:

S: В алгоритме метода ветвей и границ на 2-м шаге. ..

-: находится решение задачи линейного программирования без учета всех ограничений

-: находится решение задачи линейного программирования без учета целочисленности

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



■ABB

I:

S: В алгоритме метода ветвей и границ на 3-м шаге…

-: находится решение задачи линейного программирования без учета целочисленности

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

+: находим решение двух задач с ограничениями на компоненту I:

S: В алгоритме метода ветвей и границ на 4-м шаге…

-: находится решение задачи нелинейного программирования без учета целочисленности

-: находится решение задачи линейного программирования без учета всех ограничений

+: строятся в случае необходимости дополнительные ограничения и получаем оптимальный целочисленный план либо устанавливаем неразрешимость задачи

-: находится решение задачи линейного программирования без учета целочисленности

 

I:

S: В задачах целочисленного программирования неизвестные параметры

могут принимать. ..

-: только положительные значения

+: только целочисленные значения

-: любые значения

-: только отрицательные значения

 

I:

S: Общая формула построения правильного отсечения для всех алгоритмов запишется в следующем виде:


+: Z= -Y0R+E(-Y1R)X1 Z больше или равно 0

S: Метод ветвей и границ является…



+: нерегулярным -: расходящимся -: регулярным -: асимптотическим

 

I:

S: Правильные отсечения в методах отсечения должны быть…

+: линейными -: нелинейными

 

 

Типы задач оптимизации — Смешанное целочисленное программирование и программирование с ограничениями

Задачи смешанного целочисленного программирования (MIP)

Задача смешанного целочисленного программирования (MIP) — это проблема, в которой некоторые из переменных решения ограничены целыми значениями (т. е. целые числа, такие как -1, 0, 1, 2 и т. д.) в оптимальном решении. Использование целочисленных переменных значительно расширяет круг полезных задач оптимизации, которые вы можете определить и решить.

Важным частным случаем является переменная решения X 1 , которая должна быть равна 0 или 1 в решении.Такие переменные называются 0–1 или двоичными целочисленными переменными и могут использоваться для моделирования решений «да» / «нет», например, строить ли завод или покупать оборудование. Однако целочисленные переменные делают задачу оптимизации невыпуклой, и поэтому намного труднее решить . Память и время решения могут возрасти на экспоненциально до , когда вы добавите больше целочисленных переменных.

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

Задачи программирования с ограничениями (CP)

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

Программирование ограничений определяет ограничения «более высокого уровня», которые применяются к целочисленным переменным. Наиболее распространенным и полезным ограничением более высокого уровня является ограничение alldifferent , которое требует, чтобы набор переменных решения n предполагал некоторую перестановку (неповторяющийся порядок) целых чисел от 1 до n .

Например, для набора из 5 переменных решения такие значения, как 1, 2, 3, 4, 5 или 5, 4, 3, 2, 1 для переменных, будут удовлетворять этому ограничению, но любое присвоение того же значения к двум или более различным переменным (например,грамм. 1, 2, 3, 1, 4) нарушили бы все другие ограничения. Таким образом, присвоение должно быть упорядочиванием или перестановкой целых чисел от 1 до 5.

Классическим примером задачи программирования ограничений является задача коммивояжера : продавец планирует посетить N городов и должен проехать различные расстояния между ними. их. В каком порядке он должен посещать города, чтобы минимизировать общее пройденное расстояние, при этом посещая каждый город ровно один раз?

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

Решение проблем MIP и CP

Так как задачи MIP и CP невыпуклые, они должны быть решены каким-то систематическим и потенциально исчерпывающим поиском. «Классический» метод решения этих проблем называется Branch and Bound . Этот метод начинается с поиска оптимального решения «релаксации» проблемы без целочисленных ограничений (с помощью стандартных линейных или нелинейных методов оптимизации).Если в этом решении переменные решения с целочисленными ограничениями имеют целочисленные значения, то дальнейшая работа не требуется. Если одна или несколько целочисленных переменных имеют нецелочисленные решения, метод Branch and Bound выбирает одну такую ​​переменную и «ветки», создавая две новые подзадачи, в которых значение этой переменной более жестко ограничено. Эти подзадачи решаются, и процесс повторяется до тех пор, пока не будет найдено решение, удовлетворяющее всем целочисленным ограничениям.

Альтернативные методы, такие как генетические и эволюционные алгоритмы, случайным образом генерируют возможные решения, удовлетворяющие целочисленным ограничениям.Такие начальные решения обычно далеки от оптимальных, но эти методы затем преобразуют существующие решения в новые решения-кандидаты с помощью таких методов, как целочисленной или сохраняющей перестановку мутации и кроссовера , которые продолжают удовлетворять целочисленным ограничениям, но могут иметь лучшую цель. значения. Этот процесс повторяется до тех пор, пока не будет найдено достаточно «хорошее решение». Как правило, эти методы не могут «доказать оптимальность» решения.

Смешанное целочисленное программирование (MIP) — Учебник по основам

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

Основы программирования смешанных целых чисел

Задачи, которые чаще всего решаются программой решения параллельного смешанного целочисленного программирования Gurobi, имеют вид:

Цель: минимизировать c T x
Ограничения: A x = b (линейные ограничения)
l ≤ x ≤ u (связанные ограничения)
некоторые или все xj должны принимать целочисленные значения (ограничения целостности)

Ограничения интегральности позволяют моделям MIP отражать дискретный характер некоторых решений. Например, переменная, значения которой ограничены 0 или 1, называемая двоичной переменной, может использоваться для определения того, предпринимаются ли какие-либо действия, такие как строительство склада или покупка новой машины.

Решатель Gurobi MIP также может решать модели с квадратичной целью и / или квадратичными ограничениями:

Цель: минимизировать x T Q x + q T x
Ограничения: A x = b (линейные ограничения)
l ≤ x ≤ u (связанные ограничения)
x T Q i x + q i T x ≤ b i (квадратичные ограничения)
некоторые или все x должны принимать целочисленные значения (ограничения целостности)

Модели

MIP с квадратичной целью, но без квадратичных ограничений, называются задачами смешанного целочисленного квадратичного программирования (MIQP). Модели MIP с квадратичными ограничениями называются задачами смешанного целочисленного программирования с квадратичными ограничениями (MIQCP). Модели без каких-либо квадратичных функций часто называют проблемами смешанного целочисленного линейного программирования (MILP).

Далее следует описание алгоритма, используемого Гуроби для решения моделей MILP. Расширение MIQP и MIQCP в основном простое, но мы не будем описывать их здесь.

Разветвленная

Задачи смешанного целочисленного линейного программирования обычно решаются с использованием алгоритма ветвей и границ, основанного на линейном программировании.

Обзор

Базовое ветвление и граница на основе LP можно описать следующим образом. Начнем с оригинального МИП. Не зная, как решить эту задачу напрямую, мы снимаем все ограничения целостности. Результирующий LP называется релаксацией линейного программирования исходной MIP. Затем мы можем решить эту LP. Если результат удовлетворяет всем ограничениям целостности, даже если они не были явно наложены, то нам очень повезло. Это решение является оптимальным решением исходной MIP, и мы можем остановиться.Если нет, как это обычно бывает, то обычная процедура состоит в том, чтобы выбрать некоторую переменную, которая ограничена целым числом, но значение которой в релаксации LP является дробным. Для аргументации предположим, что эта переменная равна x, а ее значение в релаксации LP равно 5,7. Затем мы можем исключить это значение, в свою очередь, наложив ограничения x ≤ 5.0 и x ≥ 6.0.

Если исходный MIP обозначен как P 0 , то мы могли бы обозначить эти два новых MIP как P 1 , где x ≤ 5,0, и P 2 , где x ≥ 6.0 накладывается. Переменная x тогда называется переменной ветвления , и говорят, что у нас есть , разветвленная на x, создавая два суб-MIP P 1 и P 2 . Должно быть ясно, что если мы можем вычислить оптимальные решения для каждого из P 1 и P 2 , то мы сможем выбрать лучшее из этих двух решений, и оно будет оптимальным для исходной проблемы, P 0 . Таким образом, мы заменили P 0 двумя более простыми (или, по крайней мере, более ограниченными) MIP.Теперь применим ту же идею к этим двум MIP, решая соответствующие релаксации LP и, при необходимости, выбирая переменные ветвления. При этом мы генерируем то, что называется деревом поиска . MIP, сгенерированные процедурой поиска, называются узлами дерева, а P 0 обозначается как корневой узел . Листья дерева — это все узлы, от которых мы еще не ответили. В общем, если мы достигнем точки, в которой мы можем решить или иным образом избавиться от всех листовых узлов, то мы решим исходную MIP.

Fathomed и действующие узлы

Для завершения нашего описания (основанного на LP) ветвления и границы нам необходимо описать дополнительную логику, которая применяется при обработке узлов дерева поиска. Предположим, что наша цель — минимизировать цель, и предположим, что мы только что решили LP-релаксацию некоторого узла в дереве поиска. Если случается, что все ограничения целостности в исходной MIP удовлетворяются в решении на этом узле, то мы знаем, что нашли допустимое решение для исходной MIP.Затем мы делаем два важных шага. Во-первых, мы обозначаем этот узел как вместо . Нет необходимости выполнять ветвление на этом узле; это постоянный лист дерева поиска. Во-вторых, мы анализируем информацию, предоставленную только что найденным возможным решением, следующим образом. Обозначим лучшее целочисленное решение, найденное в любой момент поиска, как действующее . На момент начала поиска у нас нет действующего лица. Если у целочисленного допустимого решения, которое мы только что нашли, значение целевой функции лучше, чем у текущего действующего оператора (или если у нас нет действующего оператора), мы записываем это решение как новое действующее лицо вместе со значением его целевой функции.В противном случае никаких текущих обновлений не требуется, и мы просто продолжаем поиск.

Есть две другие возможности, которые могут привести к обнаружению узла. Во-первых, может случиться так, что ветвь, которая привела к текущему узлу, добавила ограничение, которое сделало релаксацию LP невозможной. Очевидно, что если этот узел не содержит допустимого решения релаксации ЛП, то он не содержит целочисленного допустимого решения. Вторая возможность состоит в том, что оптимальное решение для релаксации найдено, но его объективная ценность больше, чем у нынешнего лидера.Ясно, что этот узел не может дать лучшего интегрального решения и снова может быть найден.

Наилучшая граница и разрыв

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

Presolve, плоскости резки, эвристика, параллелизм

В последние годы в области смешанного целочисленного программирования возможности алгоритмов MIP значительно улучшились.Четыре из самых крупных участников: предварительное решение , плоскость резки , эвристика и параллелизм . Теперь мы дадим общий обзор этих четырех компонентов.

Presolve

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

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

x 1 + x 2 + x 3 ≥ 15
x 1 ≤ 7
x 2 ≤ 3
x 3 ≤ 5

Очевидно, что единственный способ удовлетворить все эти ограничения — это если x 1 = 7, x 2 = 3 и x 3 = 5. В этом случае мы можем заменить эти переменные, полностью исключив их из формулировки вместе с указанными выше четырьмя ограничениями.Список таких возможных сокращений, из которых это только одно, довольно обширен и может иметь огромное влияние на общий размер проблемы.

Вышеупомянутая редукция — это то, что мы назвали бы LP-предварительной редукцией, так как ее достоверность не зависит от ограничений целочисленности. Пример сокращения, специфичного для MIP, следующий. Предположим, что x1 и x2 — неотрицательные целые переменные и что наша формулировка включает ограничение следующего вида:

2 x 1 + 2 x 2 ≤ 1.

Разделив обе стороны этого ограничения на 2, получим:

x 1 + x 2 ≤ ½.

Поскольку x 1 и x 2 оба должны быть целыми, это неравенство явно означает, что x 1 + x 2 ≤ 0, и, следовательно, в силу неотрицательности x 1 = x 2 = 0. Следовательно, обе эти переменные и это ограничение могут быть удалены из формулировки. Отметим также, что это сокращение отличается по характеру от первого в том смысле, что мы фактически сократили набор допустимых решений для LP-релаксации, хотя набор целочисленных допустимых решений остался прежним.Такой тип ужесточения может иметь решающее значение для решения целочисленной программы и является одной из причин того, что предварительное решение MIP является важным инструментом в решении для MIP, в гораздо большей степени, чем предварительное решение LP при решении линейных программ.

Рубанки

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

Вот один простой пример режущей плоскости. Предположим, что наша формулировка включает следующее ограничение:

6 x 1 + 5 x 2 + 7 x 3 + 4 x 4 + 5 x 5 ≤ 15,

, где x 1 — x 5 ограничены как двоичные.Кроме того, предположим, что мы только что решили релаксацию ЛП и что эти переменные принимают следующие значения в этой релаксации ЛП: x 1 = 0, x 2 = 1, x 3 = x 4 = x 5 = 3/4. Это нежелательное решение можно исключить с помощью следующего наблюдения: поскольку 7 + 4 + 5 = 16> 15, невозможно, чтобы x 3 = x 4 = x 5 = 1, и, следовательно, следующее новое Неравенство является допустимым дополнением к данному MIP: x 3 + x 4 + x 5 ≤ 2.Поскольку 3/4 + 3/4 + 3/4 = 9/4> 2, новое неравенство отсекает текущее решение. Это неравенство является примером так называемого чехла ранца .

Здесь читатель может спросить, почему мы просто не добавили это новое ограничение или сокращение в начале. Причин несколько. Во-первых, обычно существует огромное количество таких дополнительных ограничений. Было бы слишком дорого найти их все, и, вероятно, невозможно было бы добавить их все в модель. Вторая причина заключается в том, что добавление ограничений делает решение LP-релаксации все труднее.Мы хотим добавить эти ограничения, только если знаем, что они помогут. Разумное добавление таких ограничений может иметь огромное положительное влияние на процесс решения.

Эвристика

Наша следующая тема в этом обсуждении — эвристика. Мы представили концепцию действующего оператора во введении к ветвям и границам. Наличие хороших сотрудников и их максимально быстрый поиск может быть чрезвычайно ценным при поиске MIP по ряду причин. Во-первых, может оказаться невозможным решить проблему с доказуемой оптимальностью.Например, базовый MIP может быть слишком сложным, или может быть наложенное пользователем ограничение на количество времени, в течение которого мы можем позволить нашему алгоритму MIP работать. В любом случае мы хотим иметь наилучшее возможное решение при прекращении связи. Наличие хороших реальных решений также помогает процессу поиска до прекращения. Чем лучше объективное значение действующего оператора, тем более вероятно, что значение релаксации LP превысит его (в задаче минимизации) и, следовательно, приведет к обнаружению узла.

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

Параллельность

Как отмечалось в начале этого обсуждения, решатель Gurobi MIP работает параллельно. Основным источником параллелизма является тот факт, что разные узлы в поиске MIP-дерева могут обрабатываться независимо. Однако, вероятно, очевидно, что корневой узел предоставляет ограниченные возможности параллелизма. Таким образом, модели, которые исследуют большие деревья поиска, могут довольно эффективно использовать ядра, в то время как модели, которые проводят большую часть своего времени выполнения в корневом узле, более ограничены в своей способности использовать несколько ядер.

Прочие важные ингредиенты

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

Поведение большинства описанных здесь стратегий и методов можно настроить с помощью параметров Гуроби. Хотя некоторые модели могут выиграть от настройки параметров, наша цель при разработке и создании Gurobi Optimizer состояла в том, чтобы настройки по умолчанию работали как можно лучше для широкого диапазона моделей. Как правило, вам не нужно беспокоиться о деталях того, как работают различные методы, или о том, как следует настроить связанные параметры.

Этот сайт использует файлы cookie для повышения производительности. Если ваш браузер не принимает файлы cookie, вы не можете просматривать этот сайт.


Настройка вашего браузера для приема файлов cookie

Существует множество причин, по которым cookie не может быть установлен правильно. Ниже приведены наиболее частые причины:

  • В вашем браузере отключены файлы cookie. Вам необходимо сбросить настройки своего браузера, чтобы он принимал файлы cookie, или чтобы спросить вас, хотите ли вы принимать файлы cookie.
  • Ваш браузер спрашивает вас, хотите ли вы принимать файлы cookie, и вы отказались. Чтобы принять файлы cookie с этого сайта, используйте кнопку «Назад» и примите файлы cookie.
  • Ваш браузер не поддерживает файлы cookie. Если вы подозреваете это, попробуйте другой браузер.
  • Дата на вашем компьютере в прошлом. Если часы вашего компьютера показывают дату до 1 января 1970 г., браузер автоматически забудет файл cookie. Чтобы исправить это, установите правильное время и дату на своем компьютере.
  • Вы установили приложение, которое отслеживает или блокирует установку файлов cookie. Вы должны отключить приложение при входе в систему или уточнить у системного администратора.

Почему этому сайту требуются файлы cookie?

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


Что сохраняется в файле cookie?

Этот сайт не хранит ничего, кроме автоматически сгенерированного идентификатора сеанса в cookie; никакая другая информация не фиксируется.

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

% PDF-1.3 % 413 0 объект > endobj xref 413 230 0000000016 00000 н. 0000004952 00000 н. 0000012580 00000 п. 0000012738 00000 п. 0000012904 00000 п. 0000013099 00000 п. 0000013288 00000 п. 0000013514 00000 п. 0000013707 00000 п. 0000013938 00000 п. 0000014169 00000 п. 0000014390 00000 п. 0000014586 00000 п. 0000014789 00000 п. 0000015005 00000 п. 0000015210 00000 п. 0000015424 00000 п. 0000015618 00000 п. 0000015845 00000 п. 0000016083 00000 п. 0000016355 00000 п. 0000016587 00000 п. 0000016763 00000 п. 0000016920 00000 н. 0000017190 00000 п. 0000017381 00000 п. 0000017590 00000 п. 0000017797 00000 п. 0000018003 00000 п. 0000018277 00000 п. 0000018541 00000 п. 0000018759 00000 п. 0000018963 00000 п. 0000019147 00000 п. 0000019319 00000 п. 0000019516 00000 п. 0000019831 00000 п. 0000020186 00000 п. 0000020238 00000 п. 0000020398 00000 н. 0000020563 00000 п. 0000020794 00000 п. 0000021031 00000 п. 0000021184 00000 п. 0000021386 00000 п. 0000021549 00000 п. 0000021658 00000 п. 0000021710 00000 п. 0000021801 00000 п. 0000022327 00000 п. 0000022562 00000 п. 0000023007 00000 п. 0000023363 00000 п. 0000023595 00000 п. 0000023791 00000 п. 0000023975 00000 п. 0000024149 00000 п. 0000024352 00000 п. 0000024549 00000 п. 0000024745 00000 п. 0000024984 00000 п. 0000025227 00000 п. 0000025481 00000 п. 0000025694 00000 п. 0000025886 00000 п. 0000026060 00000 п. 0000026299 00000 п. 0000026555 00000 п. 0000026820 00000 н. 0000027133 00000 п. 0000027350 00000 п. 0000027563 00000 п. 0000027817 00000 н. 0000028029 00000 п. 0000028248 00000 п. 0000028474 00000 п. 0000028694 00000 п. 0000029000 00000 н. 0000029052 00000 п. 0000029208 00000 п. 0000029377 00000 п. 0000029631 00000 п. 0000029854 00000 п. 0000030155 00000 п. 0000030406 00000 п. 0000030653 00000 п. 0000030895 00000 п. 0000031146 00000 п. 0000031484 00000 п. 0000031840 00000 п. 0000032337 00000 п. 0000032530 00000 н. 0000032706 00000 п. 0000032908 00000 н. 0000033105 00000 п. 0000033157 00000 п. 0000033413 00000 п. 0000033576 00000 п. 0000033812 00000 п. 0000034014 00000 п. 0000034191 00000 п. 0000034441 00000 п. 0000034607 00000 п. 0000034844 00000 п. 0000035050 00000 п. 0000035206 00000 п. 0000035572 00000 п. 0000035624 00000 п. 0000035764 00000 п. 0000036013 00000 п. 0000036252 00000 п. 0000036443 00000 п. 0000036653 00000 п. 0000036919 00000 п. 0000037126 00000 п. 0000037342 00000 п. 0000037536 00000 п. 0000037730 00000 п. 0000037913 00000 п. 0000038086 00000 п. 0000038275 00000 п. 0000038482 00000 п. 0000038689 00000 п. 0000038866 00000 п. 0000039339 00000 п. 0000039673 00000 п. 0000040200 00000 н. 0000040418 00000 п. 0000040608 00000 п. 0000040821 00000 п. 0000040998 00000 н. 0000041209 00000 п. 0000041397 00000 п. 0000041599 00000 п. 0000041791 00000 п. 0000041988 00000 п. 0000042230 00000 п. 0000042476 00000 п. 0000042652 00000 п. 0000042855 00000 п. 0000043069 00000 п. 0000043230 00000 н. 0000043422 00000 п. 0000043612 00000 п. 0000043794 00000 п. 0000044025 00000 п. 0000044194 00000 п. 0000046881 00000 п. 0000047070 00000 п. 0000047270 00000 п. 0000047467 00000 п. 0000047672 00000 п. 0000047928 00000 п. 0000048115 00000 п. 0000048284 00000 п. 0000048489 00000 н. 0000048665 00000 п. 0000048899 00000 н. 0000049134 00000 п. 0000049333 00000 п. 0000049598 00000 п. 0000049825 00000 п. 0000050048 00000 н. 0000050279 00000 н. 0000050516 00000 п. 0000050727 00000 п. 0000050969 00000 п. 0000051168 00000 п. 0000051385 00000 п. 0000051582 00000 п. 0000051812 00000 п. 0000051992 00000 п. 0000052185 00000 п. 0000052403 00000 п. 0000052971 00000 п. 0000053295 00000 п. 0000053496 00000 п. 0000054440 00000 п. 0000054624 00000 п. 0000054803 00000 п. 0000054994 00000 п. 0000055214 00000 п. 0000055375 00000 п. 0000055562 00000 п. 0000055759 00000 п. 0000055930 00000 п. 0000056140 00000 п. 0000056352 00000 п. 0000056530 00000 п. 0000056741 00000 п. 0000056974 00000 п. 0000057131 00000 п. 0000057324 00000 п. 0000057560 00000 п. 0000057739 00000 п. 0000057975 00000 п. 0000058186 00000 п. 0000058386 00000 п. 0000058621 00000 п. 0000058790 00000 н. 0000058950 00000 п. 0000059002 00000 п. 0000059326 00000 п. 0000059557 00000 п. 0000059727 00000 н. 0000059932 00000 н. 0000060111 00000 п. 0000060285 00000 п. 0000060468 00000 п. 0000060674 00000 п. 0000060919 00000 п. 0000061095 00000 п. 0000061300 00000 п. ? qFH {‘uN & OX ~ P #! SCSe ԨS | ЄaxphBN! k (u8LMm 튟 yCIW7) [4 di] / ő «* $ O # 9 & X9 & | ‘] Dxx9Sy’8w% 0 य़ $ KaTVS0YD1 Cx \ ⏩nͯ «/ м.»mNgxaɳGlM_ |) HO} Jp2z & r $ ii.`W;

Смешанная целочисленная оптимизация — Институт операционных исследований

Руководитель группы смешанной целочисленной оптимизации: Роберт Вайсмантель

Mixed Integer Optimization решает задачи математической оптимизации с двумя типами переменных: переменные, принимающие значения в целочисленной области, и переменные, принимающие значения в непрерывной области. Тот факт, что проблемы смешанной целочисленной оптимизации естественным образом возникают во многих контекстах, привел к повышенному интересу к разработке сильных алгоритмов для различных вариантов проблемы.К сожалению, проблемы смешанной целочисленной оптимизации гораздо менее понятны, чем их «несмешанные» аналоги, такие как целочисленное программирование или линейное / выпуклое программирование. Это неудивительно, поскольку для решения проблем смешанной целочисленной оптимизации необходимо преодолеть несколько новых технических проблем, которые не проявляются в более изученных несмешанных аналогах.

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

Смешанная целочисленная линейная оптимизация

Смешанные целочисленные задачи линейной оптимизации или MILP — это задачи оптимизации, включающие только линейные функции и конечное число переменных. Существует множество методов решения, которые в основном можно разделить на основные и двойные методы. Стандартный (двойной) подход к решению MILP заключается в применении методов плоскости сечения. Здесь лежащая в основе MILP используется для построения последовательности задач линейной оптимизации, которые возникают в результате последовательного добавления линейных ограничений, так называемых плоскостей сечения, до тех пор, пока оптимальное решение одной из задач линейной оптимизации не будет удовлетворять требованиям целостности. Для многих комбинаторных задач можно вывести несколько семейств секущих плоскостей, используя внутреннюю комбинаторную структуру задачи. К сожалению, подобные подходы кажутся иллюзорными для общих MILP. Генерация секущих плоскостей обычно основана на целевой функции и заданном наборе линейных уравнений и неравенств. Большинство доступных в настоящее время алгоритмов секущих плоскостей основаны на геометрических концепциях. Чтобы создать сильные режущие плоскости, нужно понимать взаимодействие между алгеброй и геометрией.Перспективными классами секущих плоскостей являются так называемые безрешеточные многогранники. Структура и алгоритмическое использование этого типа режущих плоскостей является центральным направлением исследований в IFOR для решения проблем MILP.

Оптимизация выпуклой смеси с целыми числами

Принимая во внимание, что задачи смешанной целочисленной линейной оптимизации являются естественными смешанными целочисленными аналогами линейных программ, задачи смешанной целочисленной выпуклой оптимизации или MICP обобщают выпуклые задачи на смешанные целочисленные области. Неудивительно, что решение MICP в целом является сложной задачей.Уже в чисто непрерывном случае, т. Е. Классические задачи выпуклой оптимизации, могут быть решены только с определенной точностью. Кроме того, даже в чисто целочисленном случае с постоянной размерностью уже является проблемой изобрести эффективные алгоритмы. Классическая выпуклая оптимизация имеет ряд сильных преимуществ по сравнению со смешанным целочисленным случаем: в нашем распоряжении есть необходимые и достаточные условия оптимальности, мощная теория двойственности и надежные алгоритмы для достаточно больших подклассов этих проблем.Среди всех подклассов выпуклой оптимизации полуопределенное программирование играет выдающуюся роль: практически каждая область инженерии нашла приложения полуопределенного программирования. Более того, этот класс особенно хорошо подходит для методов внутренней точки, семейства эффективных алгоритмов для выпуклой оптимизации. Однако сложность, присущая методу внутренних точек, ограничивает размер проблем, с которыми они могут справиться. В последние годы были разработаны новые и более дешевые подходы для решения гораздо более крупных полуопределенных задач.Эти алгоритмы, называемые методами первого порядка, являются очень сложными расширениями старых методов градиента. Область их применения и впечатляющие возможности ускорения, которые они предлагают, еще полностью не изучены. Многие стратегии разработки все еще могут быть исследованы для их дальнейшего улучшения, чтобы сделать их незаменимым инструментом для решения полуопределенных задач огромного размера или повысить их универсальность в контексте смешанной целочисленной выпуклой оптимизации.

Ниже мы перечисляем некоторые текущие проекты IFOR в этой области.

Смешанная целочисленная выпуклая минимизация (Т. Ортель, Р. Вайсмантель)

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

Методы зеркального спуска (М.Баес, Т. Эртель, Р. Вайсмантель)

Этот проект решает проблему минимизации выпуклой функции над выпуклым множеством с дополнительным требованием, чтобы некоторые переменные были целыми числами. Известно, что эта задача NP-трудна, даже если рассматриваемая функция кусочно линейна. Однако нас интересуют алгоритмические подходы к этой проблеме, где жесткость откладывается до реализации оракула. Если этот оракул может быть реализован за полиномиальное время, то и сама проблема может быть решена за полиномиальное время.Возникает естественный вопрос, можно ли эффективно реализовать этот оракул для задач с двумя целочисленными переменными, и если да, то как можно расширить такую ​​подпрограмму для решения общих смешанных целочисленных выпуклых задач. Первым шагом в этом проекте является разработка алгоритма за конечное время для смешанной целочисленной выпуклой оптимизации. На втором этапе основное внимание следует уделять эффективности алгоритма.

Минимизация липшицевых сильно выпуклых функций над целыми точками в многогранниках (М.Баес, Р. Вайсмантель)

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

Смешанная целочисленная нелинейная оптимизация

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

Ниже мы перечисляем некоторые текущие проекты IFOR в этой области.

Оптимизация целочисленного полинома в фиксированной размерности (К. Земмер, Р. Вайсмантель)

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

Смешанно-целочисленная нелинейная оптимизация с приложениями в химической инженерии (М. Баллерстайн, Д. Майклс, Р. Вейсмантел)

Общий подход к глобальной оптимизации состоит в сочетании методов локального поиска с алгоритмами, вычисляющими строгие глобально допустимые границы для оптимального значения функции базового MINLP.Это достигается путем построения и решения иерархии (смешанных целочисленных) выпуклых релаксаций. Для этого нелинейности, участвующие в описании модели, обычно заменяются выпуклыми недо- и вогнутыми переоценками. Ключевым шагом для получения разумных оценок является построение сильных выпуклых релаксаций. Самая точная выпуклая недо- и самая точная вогнутая переоценка называются выпуклой и выпуклой оболочкой функции и известны только для нескольких специальных классов функций. Целью этого исследовательского проекта является разработка новых математических методов глобальной оптимизации MINLP. Полезность разработанных алгоритмов продемонстрирована на примере MINLP, возникающих в контексте Центра совместных исследований SFB / TR 63 «InPROMPT — интегрированные химические процессы в жидких многофазных системах», финансируемого Немецким исследовательским фондом (DFG).

Произошла ошибка при настройке вашего пользовательского файла cookie

Произошла ошибка при настройке вашего пользовательского файла cookie

Этот сайт использует файлы cookie для повышения производительности.Если ваш браузер не принимает файлы cookie, вы не можете просматривать этот сайт.

Настройка вашего браузера на прием файлов cookie

Существует множество причин, по которым cookie не может быть установлен правильно. Ниже приведены наиболее частые причины:

  • В вашем браузере отключены файлы cookie. Вам необходимо сбросить настройки своего браузера, чтобы он принимал файлы cookie, или чтобы спросить вас, хотите ли вы принимать файлы cookie.
  • Ваш браузер спрашивает вас, хотите ли вы принимать файлы cookie, и вы отказались.Чтобы принять файлы cookie с этого сайта, используйте кнопку «Назад» и примите файлы cookie.
  • Ваш браузер не поддерживает файлы cookie. Если вы подозреваете это, попробуйте другой браузер.
  • Дата на вашем компьютере в прошлом. Если часы вашего компьютера показывают дату до 1 января 1970 г., браузер автоматически забудет файл cookie. Чтобы исправить это, установите правильное время и дату на своем компьютере.
  • Вы установили приложение, которое отслеживает или блокирует установку файлов cookie.Вы должны отключить приложение при входе в систему или уточнить у системного администратора.

Почему этому сайту требуются файлы cookie?

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

Что сохраняется в файле cookie?

Этот сайт не хранит ничего, кроме автоматически сгенерированного идентификатора сеанса в cookie; никакая другая информация не фиксируется.

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

Подход линейного программирования со смешанным целым числом к ​​сокращению метаболических сетей в масштабе генома | BMC Bioinformatics

Базовый MILP для расчета минимальной подсети

Мы всегда предполагаем, что наша сеть находится в устойчивом состоянии, т. Е. Sv = 0, с ограничениями на скорость реакции l v u . Каждый функционал \ (f \ in \ mathcal {F} \) описывается системой линейных неравенств: D f v d f .Например, мы можем потребовать, чтобы реакция биомассы проходила по крайней мере на 99% от ее максимальной скорости: v Bio ≥0,99 · макс. ( v Био ).

Мы будем использовать двоичные переменные a и ∈ {0,1}, чтобы указать, несет ли реакция и поток в подсети. Таким образом, нам нужно соотношение a и = 0 тогда и только тогда, когда v и = 0. Для необратимой реакции i ∈Irrev этого можно добиться с помощью ограничений вида

$$ \ begin {array} {* {20} l} & \ delta \, a_ {i} \ leq v_ {i} \ leq Ma_ {i}. \ end {array} $$

(1)

Для обратимых реакций мы используем другую двоичную переменную \ (\ bar {a} _ {i} \) и ограничения

$$ \ begin {array} {* {20} l} & \ delta \, a_ {i} — M \, \ bar {a} _ {i} \ leq v_ {i} \ leq M \, a_ {i} — \ delta \, \ bar {a} _ {i}, \ quad a_ {i} + \ bar {a} _ {i} \ leq 1.\ end {array} $$

(2)

Этот тип ограничений называется большим ограничением M , где M ≫0 — достаточно большая константа, например некоторая верхняя граница скорости потока. При δ > 0 мы обозначаем порог, указывающий, выше какой скорости потока реакция считается активной. Практически δ будет выбрано между 1e −06 и 1e −04 .

Чтобы заставить защищенные необратимые реакции переносить поток, мы используем ограничения a и = 1 для всех i P Irr = P Rxns ∩Иррев.Обеспечение потока через защищенную обратимую реакцию может быть реализовано аналогичным образом с ограничениями \ (a_ {i} + \ bar {a} _ {i} = 1, \) для всех i P Ред. = P Rxns ∩Rev.

Для любого защищенного метаболита м P Мет , пусть Rxn м — множество реакций с участием м .По Ред. м обозначим множество обратимых реакций в Rxn m . Если Rxn m содержит по крайней мере одну защищенную реакцию r , метаболит m будет защищен реакцией r . {\ text {Rxns }} = \ emptyset \ right \} \).

В [5] дополнительным требованием является указание минимального количества активных реакций. Мы не включаем это ограничение по следующим причинам. Сначала мы будем искать минимальное количество активных реакций, при которых выполняются все остальные требования. Во-вторых, в [5] минимальное количество активных реакций всегда установлено равным 1. Поскольку существуют реакции, которые вынуждены переносить поток, это ограничение является избыточным.

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

$$ \ begin {align} & \ mathbf {(MinNW-0)} \ \ min \ sum_ {i \ in \ text {Rxn}} a_ {i} + \ sum_ {k \ in \ text {Rev} } \ bar {a} _ {k} \\ & S v = 0, \ l \ leq v \ leq u & & \\ & D_ {f} v \ leq d_ {f} & \ forall f \ in \ mathcal {F} & \\ & \ delta \, a_ {i} \ leq v_ {i} \ leq Ma_ {i} & \ forall i \ in \ text {Irrev} & \\ & \ delta \, a_ {i} — M \, \ bar {a} _ {i} \ leq v_ {i} \ leq M \, a_ {i} — \ delta \, \ bar {a} _ {i} & \ forall i \ in \ text {Rev} & \\ & a_ {i} + \ bar {a} _ {i} \ leq 1 & \ forall i \ in \ text {Rev} & \\ & a_ {i} = 1, \ enspace a_ { k} + \ bar {a} _ {k} = 1 & \ forall i \ in P ^ {\ text {Irr}}, \ forall k \ in P ^ {\ text {Rev}} & \\ & \ sum_ {i \ in \ text {Rxn} _ {m}} a_ {i} + \ sum_ {i \ in \ text {Rev} _ {m}} \ bar {a} _ {i} \ geq 1, & \ forall m \ in {p ^ {Met} _ {0}} & \\ & v_ {i} \ in \ mathbb {R}, \ enspace a_ {i} \ in \ {0,1 \} & \ forall i \ in \ text {Rxn} & \\ & \ bar {a} _ {k} \ in \ {0,1 \} & \ forall k \ in \ text {Rev} & \ end {align} $$

Конфликтующие функциональные возможности

В тематическом исследовании, рассмотренном в [5], результирующая подсеть должна поддерживать две желаемые функциональные возможности: как при аэробных, так и анаэробных условиях не менее 99. 9 % максимальной скорости роста следует сохранить. Эти два требования не могут быть реализованы с одним и тем же вектором потока v , потому что они подразумевают два противоположных состояния реакции \ (\ phantom {\ dot {i} \!} R _ {\ mathrm {o} _ {2}} \) который транспортирует O 2 в сеть. Нам понадобится вектор v с \ (\ phantom {\ dot {i} \!} V _ {\ mathrm {o} _ {2}} \ geq \ delta \) и \ (\ phantom {\ dot {i } \!} v _ {\ mathrm {o} _ {2}} = 0 \) одновременно, что невозможно.

MinNW-0 вычисляет один возможный вектор потока v сети. Но для получения подсети, которая выполняет две функции, нам нужен один вектор потока, который удовлетворяет аэробным условиям, а другой — для анаэробных условий, см. Рис. 1. Чтобы реализовать это с помощью одного MILP, мы должны изменить MinNW-0. Сначала ищем вектор потока v 0 , который содержит защищенные метаболиты и защищенные реакции. Кроме того, для каждой функции \ (j \ in \ mathcal {F} \) мы ищем вектор потока v j удовлетворительно D j v j d j и соответствующие двоичные переменные. Например, на рис. 1 у нас будет a 1 = 1 в случае 1a) и a 1 = 0 в случае 1b).{j} _ {k} \ in \ {0,1 \} \ qquad \ qquad \ qquad \ qquad \ qquad ~~~~~ \ forall j \ in \ {0, \ ldots, | \ mathcal {F} | \}, \ forall k \ in \ text {Rev} & \ end {align} $$

minNW вычисляет подсеть с минимальным количеством активных реакций при удовлетворении всех требований.

Пример для minNW

Сеть на рис.1 a выполняет функции в отношении аэробных условий, а сеть на рис. b соответствует анаэробным условиям.Комбинация минимальных подсетей, соответствующих каждой функциональности, не приводит к минимальной подсети для обеих, см. Рис. 1. Минимальная подсеть для этого примера приведена на рис. 1 d.

Вычисление всех минимальных подсетей

Существуют сценарии, в которых нам нужно вычислить более одной подсети. Например, рассмотрим случай, когда минимальная глубина резкости для (требование (4)) больше 1. Если подсеть, вычисленная с помощью minNW, не имеет требуемой глубины dof , мы должны вычислить другую подсеть.Более того, вычисленная минимальная подсеть не обязательно должна быть уникальной. Таким образом, могут существовать разные подсети, которые все удовлетворяют требованиям и имеют одинаковое количество активных реакций. Таким образом, нас может заинтересовать поиск всех минимальных подсетей. Для вычисления различных подсетей мы можем использовать MILP minNW итеративным способом. {k} _ {i}} = 0 \).Таким образом (10) гарантирует, что по крайней мере одна неактивная реакция станет активной или по крайней мере одна активная реакция станет неактивной в новом растворе.

Итеративно решая minNW и добавляя ограничения (10) на каждом шаге, теперь мы можем перечислить все минимальные подсети.

Уменьшение количества двоичных переменных

Для дальнейшего повышения эффективности мы будем использовать информацию магнитной связи [19–22]. Сначала напомним некоторые основные определения из анализа магнитной индукции (FCA).{\ text {Rxn}} \ mid Sv = 0, v_ {i} \ geq 0, \ forall i \ in \ text {Irrev} \ right \} \). На этапе предварительной обработки заблокированные реакции будут удалены из сети, что также сделано в [5]. Таким образом, с этого момента мы предполагаем, что в сети есть только разблокированные реакции.

Учитывая две разблокированные реакции r, s ∈Rxn, мы говорим, что r является частично связанным с s , и записываем r s , если v р = 0⇔ v с = 0, для всех v C 0 . Отношение r s рефлексивно, транзитивно и симметрично и, следовательно, определяет отношение эквивалентности на Rxn. Это означает, что множество реакций Rxn можно разбить на классы эквивалентности [ r ] = { s ∈Rxn∣ r s }. Он следует за \ (\ text {Rxn} = \ bigcup _ {[r] \ in \ overline {\ text {Rxn}}} \; [r] \), где \ (\ overline {\ text {Rxn}} \ ) обозначает множество всех классов эквивалентности. Класс эквивалентности может быть представлен любым из своих элементов.Мы говорим, что r является представителем [ r ] или что [ r ] является классом соединения r . Обратите внимание, что [ r ] = [ r ] iff r s . С биологической точки зрения классы связывания можно интерпретировать как подмножества реакций, которые всегда вместе активны в установившемся состоянии, аналогично понятию подмножеств ферментов в [6].

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

На основе отношения эквивалентности r s , теперь мы используем двоичные переменные, соответствующие классам связи [ r ], вместо того, чтобы иметь двоичные переменные для каждой отдельной реакции.{j} _ {[r ‘]} \ in \ {0,1 \} \ qquad \ qquad \ qquad \ qquad ~~~~~~~ \ forall j \ in \ {0, \ ldots, | \ mathcal { F} | \}, \ forall [r ‘] \ in \ overline {\ text {Rev}} & \ end {align} $$

Здесь | [ r ] | обозначает мощность класса связи [ r ]. Таким образом, мы вычисляем наименьшую подсеть по количеству активных реакций, а не по количеству активных представителей. \ (\ overline {\ text {Irrev}} \) обозначает представителей необратимых реакций, а \ (\ overline {\ text {Rev}} \) — обратимых реакций. {k} _ {[r]} \ left (1 \, — \, a _ {[r]} \ right) \ geq 1, \, \, \, \, k = 1,2, \ dots \ end { выровнено} $$

(11)

При использовании представителей нам понадобится только \ (| \ overline {\ text {Rxn}} | \) вместо | Rxn | бинарные переменные. Для многих полногеномных сетей это уменьшает количество переменных 0-1 примерно на 1/2, см. Примеры в таблице 1.

Таблица 1 Количество представителей для различных полногеномных метаболических сетей (вычислено с помощью F2FC [20]) .