- •Введение
- •Раздел I. Математические методы в исследовании операций.
- •1. Основные понятия.
- •2. Классификация моделей.
- •3. Выбор решения в условиях неопределенности.
- •4. Многокритериальные задачи.
- •Раздел II. Линейное программирование.
- •1. Математические модели задач линейного программирования.
- •Задача о пищевом рационе.
- •Задача производственного планирования.
- •Задачи раскроя.
- •2.Основная задача линейного программирования (озлп)
- •Найти неотрицательные значения переменных x1 , x2 , …, xn , которые удовлетворяли бы условиям-равенствам
- •3. Геометрическая интерпретация озлп.
- •4. Симплекс-метод.
- •4. Двойственные задачи линейного программирования.
- •5. Транспортная задача.
- •Раздел III. Графовые модели.
- •1.Элементы теории графов.
- •2. Задача о кратчайшем пути.
- •3. Кратчайший путь в ориентированном графе.
- •4. Построение графа наименьшей длины.
- •5. Транспортная задача в сетевой постановке.
- •6. Метод ветвей и границ.
- •7. Максимальный поток на сети.
- •Раздел IV. Динамическое программирование.
- •Раздел V. Имитационное моделирование
- •Теория игр.
- •Антагонистические матричные игры.
- •Задачи, приводимые к матричным играм.
- •Преобразование матричных игр.
- •Методы решения матричных игр.
- •Игры с природой.
- •Раздел VI. Теория массового обслуживания.
- •Задачи теории массового обслуживания.
- •Формула Литтла.
- •Простейшие системы массового обслуживания.
- •Решение задач
Раздел III. Графовые модели.
1.Элементы теории графов.
Н
G: d→[i,j]
Если каждому ребру соответствует упорядоченная пара вершин , то граф называется ориентированным графом, а ребро называется дугой и обозначается (i,j).
ПРИМЕР 3.1.
а) неориентированный граф б) ориентированный граф
Путь – это упорядоченная последовательность дуг, начало каждой из которых совпадает с концом предыдущей. Контур – путь, у которого начальная вершина совпадает с конечной. Для неориентированного графа аналогом понятия путь является – цепь, а контура - цикл.
Простой цикл – цикл, в котором любая пара вершин соединена не более чем одним ребром. Гамильтонов цикл – простой цикл, проходящий через все вершины графа.
ПРИМЕР 3.2.
а) неориентированный граф б) варианты Гамильтонова цикла
Связный граф – граф, у которого любая пара вершин может быть соединена цепью (для неориентированного графа) или путем (для ориентированного графа)
Дерево – неориентированный граф без циклов.
Остов графа – подграф неориентированного графа, являющийся деревом.
ПРИМЕР 3.3. Для предложенного графа существует 31 вариант остовов.
а) граф б) варианты остова
Если каждой вершине сопоставить число, то оно будет называться интенсивностью вершины. Если на множестве дуг задать числовую функцию, то каждое ребро приобретет вес.
П РИМЕР 3.4. Автомобилисту необходимо проехать из п.А в п.В.
10 0
А 7 В
4 2
Ориентированный связный граф, вершинам которого сопоставлены числа (интенсивности, пропускные способности) или дугам которого сопоставлены числа (стоимости, протяженности, пропускные способности), принято называть сетью.
Потоком на сети называется совокупность величин, заданных на множестве дуг, {xd}:
,
где – множество дуг, исходящих из вершины i, а – множество дуг, входящих в нее; bi – интенсивность вершины i.
Величина xd называется значением потока по дуге d и интерпретируется как количество продукта, пропускаемое по данной дуге
Сеть с заданными пропускными способностями дуг будем считать реальной, если в ней каждой выходящей дуге сопоставлено число, не превышающее суммарную пропускную способность всех входящих в соответствующую вершину дуг.
ЗАДАЧИ ОПТИМИЗАЦИИ НА СЕТИ.
Об оптимальном распределении грузопотоков на сети (транспортная задача)
О кратчайшем пути между двумя пунктами (вершинами.)
О совокупности дорог, соединяющих пункт отправления со всеми пунктами назначения (минимальный остов)
Об оптимальном пути для коммивояжера (оптимальный Гамильтонов цикл)
О максимальном потоке на сети.
2. Задача о кратчайшем пути.
ЗАДАЧА. Задан неориентированный граф. Функция стоимости - cij. Найти оптимальный путь между двумя вершинами.
АЛГОРИТМ МИНТИ.
Введем переменную c/ij =cij в начальный момент.
Пометим начальную вершину числом m0=0.
Для каждой помеченной вершины i будем метить те вершины, которые можно достичь из I по дугам с нулевым значением, т.е. mj=i еще не помеченные вершины j для которых c/ij=0. Пометки расставляем до тех пор, 1) пока не пометим конечную вершину пути или 2) пока нельзя будет сделать дальнейшие пометки. В случае 1) искомый путь (определяется по пометкам) найден и задача решена.
Для всех помеченных вершин I определим
Уменьшим c/ij при и перейдем к п.3
ПРИМЕР 3.5.
М 9 К
2 2 4 3
А 3 1 2 7 В
Р 5 Т
Пометим вершину А числом mA=0. Так как дальнейшая пометка невозможна, переходим к п.4: Δ=2, c/АМ=0, c/АР=1
Пометим вершину М: mМ=А. Δ=1, c/МР=0, c/АР=0, c/МТ=1, c/МК=8
Пометим вершину Р: mР=А. Δ=2, c/РК=3, c/РТ=4, c/МТ=0, c/МК=7
Пометим вершину Т: mТ=М. Δ=2, c/ТВ=5, c/ТК=0
Пометим вершину К: mК=Т. Δ=3, c/КВ=0
Пометим вершину В: mВ=К
Получили оптимальный путь: A→M→T→K→В. Длина пути=11
МЕТОД расстановки пометок.
ДАНО: (I,D,G) – неориентированный граф;
L(i,j) – длина ребра [i,j];
n, k – начальная и конечная вершины цепи.
НАЙТИ: min L(n, k)
АЛГОРИТМ
Пометим каждую вершину индексом λi
Примем λk =0; все остальные λi =∞
Найдем ребро (i,j), для которого λj –λi >L(i,j) и заменим λj =λ j +L(i,j)
Продолжим процесс до тех пор, пока существует хотя бы одно ребро, для которого можно уменьшить λj
Найдем путь движением от начальной вершины к конечной по убыванию индексов переходом по дугам, для которых λi –λj =L(i,j)
П
4 В
2 3 А
3 4 2
1
5 2 2
5 2
2
3 3 4 3
2 4 1
3
РЕШЕНИЕ