- •1.1. Введение.
- •1.2. Оптимизационные задачи в 2.
- •1.4. Понятие о nр-полноте.
- •Условие целочисленности решения задачи лп.
- •Критерий полной унимодулярности.
- •Задача о назначениях.
- •Задача коммивояжера.
- •2. Принятие решений и элементы теории игр.
- •2.1. Задачи многокритериальной оптимизации.
- •2.3. Игры.
- •Дележи.
- •3. Сетевые модели.
- •3.1. Способы задания графов.
- •3.2. Изоморфизм графов.
- •П оиск простейших узких мест графа за o(|e|).
- •3.3. Остовные деревья.
- •Описание алгоритма Прима:
- •Корректность алгоритма Прима.
- •3.4. Кратчайшие пути в графах. Волновой алгоритм построения дкп (Дейкстра)
- •Нахождение кратчайшего пути для ациклического орграфа
- •3.5. Потоковые задачи Задача о максимальном потоке (змп).
- •На входе: матрицы а –пропускных способностей, и c – цен, c ij 0 - стоимость пропуска единицы потока по ребру (I,j), f0 - ограничение на величину потока.
- •3.6. Приближенное решение np-полных задач.
- •Задача о максимальной клике.
- •3.7. Точные методы решения np-полных задач.
- •4. Элементы теории массового обслуживания.
- •4.1. Пуассоновский поток событий
- •4.2. Моделирование простейшего потока.
- •4.3. Процессы гибели и размножения.
- •Классификация систем массового обслуживания:
- •4.4. Открытая система м | м | 1 (один врач).
- •4.5. Замкнутые системы с резервированием. Будем различать горячий и холодный резервы, т.Е. Исправные, но включенные или выключенные приборы.
- •4.6. Задачи проектирования сетей технического обслуживания.
- •3.5. Алгоритм Тарьяна (для планарных графов мод строится за o(n)).
Условие целочисленности решения задачи лп.
Для того, чтобы x было целочисленным можно потребовать, чтобы все были целыми. Для этого достаточно, чтобы был равен 1. - это n равенств, которые выбираются способами из m неравенств.
Квадратная целочисленная матрица A называется унимодулярной, если ее определитель равен 1 или 0. Матрица размера , где называется вполне унимодулярной, если все ее определители n-го порядка равны 1 или 0.
Критерий полной унимодулярности.
Матрица размерности m×n, m≥n, состоящая из элементов 0, 1, -1, является вполне унимодулярной, если в каждом столбце содержится не более 2-х ненулевых элементов, а строки можно так разбить на 2 подмножества, что для каждого столбца с двумя ненулевыми элементами оба элемента лежат в одном подмножестве тогда и только тогда, когда эти элементы имеют разные знаки.
Доказательство проводится индукцией по размерности матриц.
Пусть для некоторого k критерий выполняется. Проверим его для k+1.
Существует столбец из нулевых элементов определитель = 0.
Существует столбец с одним ненулевым элементом определитель k+1-го порядка = 1 (-1)*(определитель k-го порядка)= 1.
Столбец имеет два ненулевых элемента. ???
Линейная комбинация строк равна 0 определитель = 0. ■
Задача о назначениях.
Есть n работников и n работ. Если i-й работник будет выполнять j-ю работу, то будет достигнута некоторая полезность cij. Как назначить работников на работы, чтобы суммарная полезность была максимальной? Пусть =1, если i-й работник выполняет j-ю работу, и 0, если нет. При этом: и
Каждый работник может выполнять только одну работу, т.е. i .
Каждая работа выполнялась только одним работником, т.е. j .
Снимем условие целочисленности и запишем ограничения 1-2 в виде::
x11+x21+…+xn1 =1 x11+x12+…+x1n =1
… и … ,
x1n+x2n+…+xnn =1 xn1+xn2+…+xnn =1
В матричной форме Ax = 1, где (x11 … x1n x21 … x2n ... xn1 ... xnn),
а матрица A имеет вид:
1 |
… |
0 |
1 |
… |
0 |
… |
1 |
… |
0 |
0 |
E |
0 |
0 |
E |
0 |
… |
0 |
E |
0 |
0 |
… |
1 |
0 |
… |
1 |
… |
0 |
… |
1 |
1 |
… |
1 |
0 |
… |
0 |
… |
0 |
… |
0 |
0 |
… |
0 |
1 |
… |
1 |
… |
0 |
… |
0 |
0 |
… |
0 |
0 |
… |
0 |
… |
1 |
… |
1 |