
- •Определение модели. Моделирование как метод исследования систем. Этапы моделирования.
- •Этапы моделирования:
- •Этапы моделирования:
- •Симплексный метод (назначение метода, приведение систем к предпочтительному виду (3 случая), построение начального опорного плана).
- •Назначение метода
- •Приведение к предпочтительному виду (3 случая). Построение начального опорного плана (x0)
- •Назначение метода
- •Симплексный метод (назначение метода, признаки бесконечного множества решений, неограниченности целевой функции, несовместности системы).
- •Правила построения двойственных задач
- •П ример
- •Вторая теорема двойственности или теоремао дополняющей нежесткости.
- •Транспортная задача (тз). Постановка тз в матричной и математической форме, методы нахождения начального опорного плана.
- •Теорема о ранге матрицы.
- •Графы (понятие, определение, орграф, мультиграф, связный граф, дерево). Матричный способ задания графов.
- •Способы задания графов:
- •Алгоритм Прим, Краскал (назначение, пошаговая реализация).
- •Алгоритм Флойда (назначение, пошаговая реализация).
- •Задача нахождения кратчайших цепей между всеми парами узлов в сети. Алгоритм Флойда.
- •Алгоритм Форда-Фалкерсона (назначение, пошаговая реализация).
- •Алгоритм Форда-Фалкерсона:
- •Алгоритм Дейкстры (назначение, пошаговая реализация).
- •Алгоритм Дейкстры:
- •Алгоритм Басакера-Гоуэна:
- •Алгоритм Клейна. (Назначение, пошаговая реализация).
- •Алгоритм Клейна
- •Матричные игры. Определение понятий: игра, исход игры, функция выигрыша, максимин, минимакс, седловая точка, решение игры.
- •Смешанные стратегии. Оптимальные смешанные стратегии, цена игры, доминирующие стратегии, методы упрощения платежных матриц.
- •Графический метод решения матричных игр.
- •25) Решение матричных игр сведением к задаче линейного программирования.
- •Для игрока а:
Алгоритм Форда-Фалкерсона:
Шаг0: в процессе работы алгоритма каждая вершина относится к 1 из 3 множеств (непомеченные вешины, помеченные, но не просмотренные, просмотренные (окрашенные))
Шаг1: пометим вершину S меткой S(S+; бесконечность), остальные – непомеченные
Шаг2: пусть V – некоторая помеченная но не окрашенная вершина. Рассмотрим все соседние с V непомеченные вершины. Для каждой из таких вершин U возможны следующие ситуации:
А) существует прямая дуга (V, U) и f(V, U) < C(V, U) тогда вершина U получает пометку U(V+;C(V, U) - f(V, U))
Б) если существует обратная дуга (V, U) и поток f(V, U)>0 то тогда U получает пометку U (V-; f(V, U))
В) существует прямая дуга (V, U) и f(V, U) = C(V, U) или существует обратная дуга (V, U) и f(V, U) = 0 тогда вершина U не помечается.
Когда все соседние с V вершины проанализированы, V переходит в множество просмотренных вершин.
Шаг3: повторяем шаг2 до тех пор пока не возникнет 1 из следующих ситуаций:
А) все вершины графа разбиты на 2 подмножества: 1е - просмотренные (окрашенные), 2е - непомеченные вершины, включающие в себя вершину Т. Тогда в сети построить максимальный поток мощности V и минимальный разрез (ХХ*), где Х – окрашенные вершины.
Б) если вершина Т получила пометку то в сети существует увеличивающий путь с C в Т, который можно определить идя из Т обратно к С. Для найденного пути определяют величину ξ(епсилент) для увеличения мощности потока. На прямых дугах найденного пути величину потока увеличиваем на ξ, на обратных – уменьшаем. Мощность потока V = V предыдущая + ξ. Переходим к шагу 1.
Алгоритм Дейкстры (назначение, пошаговая реализация).
Постановка задачи: пусть задан ориентированный граф G=(v,е) с заданными положительными длинами ребер. Найти длину кратчайшего пути и сам путь, соединяющего 2 произвольные фиксированные вершины s и t, где s – начало, а t – конец пути.
Пример: компании, занимающиеся грузоперевозками, необходимо составить маршруты движения ее автотранспорта для различных городов. Каждый перекресток = узел, каждая дуга = отрезок дороги, связывающий отдельные перекрестки. Если на рисунке нет стрелок, то это значит «туда и обратно». Если дорога односторонняя, то ставят стрелку в направлении движения. Каждой дуге ставится в соответствие число, равное длине участка дороги и называемое длиной.
Алгоритм Дейкстры:
Шаг 0: в процессе работы алгоритма все вершины U имеют пометку:
Временная - l’(u)
Постоянная - l(u)
l’(u) – это длина от узла s до вершины U кратчайшая на данном шаге алгоритма
l(u) – это длина кратчайшей цепи из S в U
узел S получает постоянную пометку l(s)=0, все остальные вершины имеют пометку l’ = ∞
Шаг 1: пусть вершина U имеет постоянную пометку l(u). Рассмотрим все узлы, имеющие временные пометки и соседние с U. Т.е. такие узлы V, которые имеют временную пометку l’(v) и существует дуга (u,v).
Шаг 2: пересчитаем временные пометки для всех соседних узлов v. L’(v)=min {l(u) + (u,v) ; l’(v) }
Шаг 3: находим l(r) = min {l’(r)}. Из всех временных пометок выбираем минимальную и делаем ее константой. Переходим к ШАГУ 1. Алгоритм заканчивает свою работу, когда все узлы в сети имеют постоянные пометки.
Алгоритм Басакира-Гоуэна (назначение, пошаговая реализация).
Постановка
задачи:
задана сеть к каждой дуге которой
поставлено в соответствие 3 числа: с(х,
у) – пропускная способность, f
(x,y)–
поток, d(x,y)
– стоимость провоза единицы потока по
дуге x,y.
Требуется пропустить в сети допустимый
поток заданной величины v
или максимальный поток минимальной
стоимости.
.