САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
КАФЕДРА МАТЕМАТИЧЕСКОЙ ТЕОРИИ ИГР И СТАТИСТИЧЕСКИХ РЕШЕНИЙ
Бебяков Александр Михайлович
Выпускная квалификационная работа бакалавра
Теоретико-игровое моделирование передачи
данных в беспроводных сетях
Направление 010300
Фундаментальная информатика и информационные технологии
Научный руководитель,
кандидат физ.-мат. наук,
доцент
Седаков А. А.
Санкт-Петербург
2016
Содержание
Введение ........................................................................................................ 3
Постановка задачи ....................................................................................... 5
Обзор литературы ........................................................................................ 8
Глава 1. Математическое описание задачи ............................................... 9
1.1. Модель сети ..................................................................................... 9
1.2. Биматричная игра передачи данных ............................................ 11
1.3. Алгоритм Лемке-Хоусона ............................................................ 12
1.4. Расчет характеристик ................................................................... 15
Глава 2. Задача поиска ожидаемого времени завершения передач
данных при равновесных стратегиях ....................................................... 17
2.1. Схема поиска ................................................................................. 17
2.2. Пример ........................................................................................... 18
Глава 3. Реализация алгоритма ................................................................. 24
3.1. Анализ и выбор инструментов реализации ................................. 24
3.2. Реализация в среде MATLAB ....................................................... 26
Выводы ........................................................................................................ 29
Заключение ................................................................................................. 30
Список литературы .................................................................................... 31
2
Введение
Телекоммуникационные технологии имеют особое значение в жизни
современного общества, поскольку в настоящее время без применения
телекоммуникационных систем ни одна служба и ни одно предприятие не
сможет проводить оптимальное управление элементами своей структуры,
отсутствие доступа к своевременной информации может приводить к
огромным издержкам и упущенным выгодам. Во многих отраслях
деятельности человека наличие устойчивой оперативной связи является
одним из важнейших факторов развития. Таким образом, благосостояние
государства напрямую зависят от уровня качества и эффективности
телекоммуникационных и информационных технологий.
Применение беспроводных сетей занимает значимое место в комплексе
мер,
направленных
на
автоматизацию
производственных
процессов,
организационной и кадровой работы предприятий, а также в системах
обеспечения безопасности, поскольку применение кабельных средств связи
не всегда экономически целесообразно [1], а внесение кардинальных
изменений в инфраструктуру уже существующих систем иногда совершенно
неприемлемо.
технологии
Беспроводные
выбора
сети
сотовой
эффективных
и
топологии,
надежных
реализующие
маршрутов
находят
применение в производственных помещениях с наличием радиочастотных
помех. С анализом данных сетей можно ознакомиться в работе [2].
Идея отделения уровня управления от уровня передачи данных в
программно-конфигурируемых сетях предоставляет возможности создания
собственных протоколов маршрутизации, а также систем адаптирующихся к
изменяющимся условиям функционирования. Подобные технологии очень
востребованы так, как позволяют создавать надежные и легкие в
эксплуатации решения. В статье [3] отмечаются такие преимущества
подхода, как упрощенная настройка сети, возможность более гибкого
решения
задач
безопасности,
маршрутизации,
3
управления
полосой
пропускания с ориентацией на тонкую настройку систем под задачи каждого
конкретного потребителя.
Актуальность теоретико-игрового моделирования передачи данных в
беспроводных сетях подтверждается необходимостью разработки и создания
систем маршрутизации способных производить оптимальное распределение
нагрузки с целью эффективного использования ресурсов сети. Также одной
из важных задач является выбор класса систем связи для реализации в
различных сферах деятельности общества с учетом требований к качеству
обслуживания
(QoS)
и
обеспечению
энергоэффективности
работы
автономных мобильных устройств, простоты, экономичности и скорости
создания системы таких устройств.
Теория игр позволяет проводить анализ оптимальных стратегий в
процессах с двумя или более сторонами, преследующими свои интересы.
Каждый из участников таких процессов, обладая собственной целью,
вынужден выбирать стратегию, результат применения которой может
зависеть от принятых стратегий остальных участников. Теория игр
предоставляет возможность участникам, обладающим информацией о
характеристиках сторон, выбирать стратегии, оптимизирующие собственный
выигрыш.
Целью данной работы является моделирование передачи данных в
беспроводной сети с применением аппарата теории игр и определение
требуемых характеристик данной сети. Для достижения поставленной цели
решаются задачи построения математической модели передачи данных как
неантагонистической игры, реализации алгоритма решения игры с помощью
программных
средств
и
задача
определения
значения
характеристик на основе поведения участников системы.
4
заявленных
Постановка задачи
Рассматривается модель программно-определяемой беспроводной сети
на базе стандарта 802.11, состоящей из двух подсетей, представляющих
организации в сети, автономных общих точек доступа и точки доступа (далее
сток),
являющейся
пограничным
маршрутизатором
данной
сети
подключенным к более общей сети.
Каждая из подсетей представлена базовой станцией (далее источник
данных) и промежуточными точками доступа данной подсети.
Точка доступа не являющаяся ни источником данных, ни стоком будет
называться промежуточным узлом.
Между любыми двумя узлами i и j определена оцененная вероятность
tij успешной передачи данных по прямой связи, которая предполагается
неизменной. Подтверждение передачи данных происходит без ошибок.
Известна базовая пропускная способность каждого узла системы.
Все точки доступа в сети считаются фиксированными, но возможно
временное
изменение
топологии
системы
вследствие
того,
что
промежуточные узлы способны переходить в неактивное состояние для
экономии электроэнергии или для проведения профилактических действий.
Режим работы для каждого из промежуточных узлов задает вероятности
нахождения
в
активном
состоянии.
Данные
изменения
топологии
контролируются так, чтобы не была нарушена связь между каждым из
источников и стоком. В периоды передачи данных изменения состояний
узлов не производятся.
Перед
источниками
поставлена
задача
выбора
маршрута
с
оптимальным временем передачи информации, исходя из знаний о таких
характеристиках сети, как активность промежуточных узлов во время
текущего периода пересылки, вероятность успешной передачи информации
по непосредственному соединению для любых двух узлов, базовые
пропускные способности всех узлов. В качестве оценки времени передачи по
маршруту источники используют численную характеристику LAETT [4].
5
Расчет LAETT для каждого источника производится на основе принятого им
маршрута и нагрузки на сеть определяемой путем передачи избранным
другим источником. Источники принимают решение о выборе маршрута
передачи данных одновременно и независимо. Реализация данного типа
маршрутизации требует централизованной фиксации каналов передачи, что
достигается в программно-определяемых сетях.
В качестве оценки времени передачи при фиксировании маршрутов x и
y источников 1 и 2 соответственно в данной модели применяется
характеристика LAETT оцененного времени передачи по маршруту с учетом
нагрузки на сеть. Для передачи напрямую между узлами i и j вводится:
,
где S – объем данных, который необходимо переслать из i в j, ETXij –
рассчитываемое количество попыток пересылки данных из i в j [5], γij –
коэффициент качества связи, величина RCi задаваемая
характеризует остаточную пропускную способность узла i, Bi - базовая
пропускная способность узла i, Ni - множество потоков передачи проходящих
через узел i, fik – скорость передачи через узел i используемая потоком k, γik –
коэффициент качества связи - полагается равным 1.
В рассматриваемой модели S полагается равным 1 для обоих
источников, γij считается равным 1, ETXij принимается равным значению
обратному
вероятности
tij
успешной
передачи
данных
от
i
к
j
непосредственно, для всех tij > 0:
Оценкой времени передачи по всему маршруту z является сумма:
(1)
6
Расчет LAETT для каждого пути передачи может быть произведен
после установления обоих маршрутов, поскольку источники выбирают
маршруты передачи одновременно и независимо. LAETT(x, y) оценивает
время передачи данных по заданному маршруту x с учетом имеющейся
нагрузки сети, определяемой наличием передачи данных по маршруту y:
(2)
,
Если маршруты проходят через один узел, то при фиксации потоков
передачи данных происходит равное распределение пропускной способности
узла
для
обслуживания
пересылки
по
каждому
из
маршрутов
и,
следовательно:
(3)
,
где RCi (y) – остаточная пропускная способность узла i при наличии нагрузки
на сеть определяемой маршрутом передачи y, с учетом равномерного деления
базовой пропускной способности Ci > 0 узла i для пересылки данных на
каждом из маршрутов.
Пусть
для
оценки
эффективности
передачи
данных
в
сети,
определяемой топологией, пропускными способностями и заданными
режимами работы промежуточных узлов, в данной модели применяется
функция, принимающая наибольшее среди значений LAETT для источников 1
и 2 в зависимости от выбранных ими маршрутов x и y соответственно:
φ (x, y) = max(LAETT (x, y), LAETT (y, x)),
(4)
Значение функции предполагает собой время завершения всех передач в сети
с момента начала одновременной пересылки данных от источников 1 и 2.
Требованием к решению задачи является соблюдение условия
равновесия по Нэшу при выборе вероятностного распределения определения
маршрутов передачи данных от первого и второго источников.
7
Обзор литературы
В статье [6] была отмечена значимость задачи моделирования и
построения программно-конфигурируемых сетей (ПКС), а также проведено
описание
разработки
автоматизированной
программной
системы
моделирования программно-определяемых сетей основанных на протоколе
OpenFlow. Изучение графовых моделей и потоков распределения трафика
пользователей при формировании протоколов маршрутизации в ПКС
рассматривается в работе [7]. Статья [8] посвящена обзору «метрик» применяемых протоколами маршрутизации числовых характеристик путей
передачи данных. При разработке метрик возможен учет различных
факторов системы: количество узлов, через которое потребуется передать
пакет
информации,
энергетическая
стоимость
пересылки,
полоса
пропускания канала, надежность соединения. В результате вычисления
подобных
«метрик»
маршрутизаторы
получают
возможность
непосредственного сравнения маршрутов с точки зрения того или иного
критерия эффективности. «Метрика» LAETT, применяемая в данной работе,
охарактеризована как способствующая распределению нагрузки по всей сети.
Классические принципы построения сетей представлены в книге [9]. В
работе [10] была рассмотрена возможность применения решения Нэша
задачи о сделках в качестве подхода к управлению в крупномасштабных
сетях, в том числе маршрутизации. Книга [11] производит обзор элементов
теории графов и теории игр и их приложений к различным стратегическим
задачам в сетевых моделях.
8
Глава 1. Математическое описание задачи
1.1. Модель сети
В рамках рассматриваемой задачи предлагается модель системы,
состоящей из двух источников данных (обозначены номерами 1 и 2), стока
(номер 3), в который необходимо доставлять данные, k1 промежуточных
узлов первой подсети {4, … , k1+3}, k2 промежуточных узлов второй подсети
{k1+4, … , k1+k2+3}, k3 общих промежуточных узлов {k1+k2+4, … ,
k1+k2+k3+3}, где k1, k2, k3 ≥ 0, а также связей с определенным качеством tij ∈
[0; 1] между этими элементами, задаваемым в форме матрицы T [(k)×(k)] (где
k = k1+k2+k3+3) вероятностей tij того, что пакет данных, отправленный из i,
будет без ошибок принят в j при непосредственной передаче. Для каждого
узла i сети указывается его базовая пропускная способность Ci > 0. Модель
наглядно представима в форме графа G (V, E) с вершинами V = {v1, v2, v3, … ,
vk}, дугами E = {eij: соединяет vi и vj | tij > 0}, весами tij дуг eij.
В рамках задачи передачи данных от источников в сток выдвинуты
следующие предположения относительно вида матрицы T:
Передача пересылаемых данных в источники не предполагается –
первые два столбца T нулевые. Передача пересылаемых данных из стока в
сеть не производится – третья строка T нулевая. Главная диагональ T
заполнена нулями, так как узлы не посылают данные себе. Передача
рассматриваемых данных в какую-либо подсеть извне не предполагается –
элементы, дополняющие столбцы блока (строки 4, … , k1+3 и столбцы 4, … ,
k1+3) нулевые, за исключением первой строки, и элементы, дополняющие
столбцы блока (строки k1+4, … , k1+k2+3и столбцы k1+4, … , k1+k2+3)
нулевые, за исключением второй строки.
Промежуточные узлы в период передачи данных могут быть
активными и неактивными. Состояние сети определяется бинарным вектором
l = (1, 1, 1, l4, … , lk) активности узлов (если узел i активен, то li = 1, иначе li =
0). Ему соответствует граф Gl (V, El). При неактивности узла, через него не
9
могут проходить маршруты, все дуги инцидентные его вершине не могут
быть использованы для передачи и удаляются, следовательно, El = E \ {e |
дуга e инцидентна vi, i: li = 0}. Вероятности активности каждого узла
задаются вектором p = (1, 1, 1, p4, … , pk) установленного режима работы, где
pi > 0, i = 4, … , k и полагается, что два источника и сток активны всегда.
Состояние l системы является допустимым, если в Gl (V, El) существует
маршрут от первого источника до стока, а также маршрут от второго
источника до стока. Обозначим множество допустимых состояний как S. В
каждой задаче число h = |S| допустимых состояний однозначно определяется
топологией системы, задающей граф G(V, E).
Для каждого состояния l ∈ S сети вероятность нахождения системы в
нем определим как
(5)
Таким образом, изначально заданные режимом работы вероятности
активности узлов pi определяют вектор распределения вероятности P = (P1,
… , Ph) нахождения системы в допустимых состояниях при условии, что
рассматриваются только допустимые состояния.
Источники 1 и 2 одновременно выбирают свой маршрут передачи для
текущего состояния l системы среди всех простых цепей (чередующаяся
последовательность вершин и рёбер, в которой любые два соседних элемента
инцидентны и все вершины различны [12]) от своего передатчика до стока в
графе Gl.(V, El).
Источники стремятся минимизировать ожидаемое время передачи
данных, в качестве которого принимается характеристика LAETT (x, y) (2),
которая оценивает время передачи данных по заданному маршруту x с
учетом имеющейся нагрузки сети, определяемой наличием пересылки
данных по маршруту y.
10
1.2. Биматричная игра передачи данных
Рассмотрим семейство биматричных игр Γl (Al, Bl) = (Xl, Yl, Al, Bl)
определяемых допустимыми состояниями l ∈ S.
В каждой из игр Γl (Al, Bl) игрок 1 – первый источник способный
производить
запрос
выделения
маршрута
передачи
данных
среди
работающих узлов в сток. Игрок 2 - второй источник со способностью
запроса фиксации маршрута пересылки своих данных через активные узлы в
сток.
Чистая стратегия i игрока 1 в состоянии l есть маршрут передачи
данных xi среди конечного множества всех маршрутов Xl, |Xl| = m (простых
цепей от первого источника данных до стока через промежуточные узлы)
игрока 1 в допустимом состоянии l.
Чистой стратегией i игрока 2 в состоянии l является маршрут передачи
данных yi среди конечного множества всех маршрутов Yl, |Yl| = n (простых
цепей от второго источника данных до стока через промежуточные узлы)
игрока 2 в допустимом состоянии l.
Так как игроки стремятся минимизировать ожидаемое время передачи
по выбранному ими маршруту, в качестве значения выигрыша игрока 1 (2)
при реализации ситуации в чистых стратегиях (xi, yj), где xi ∈ Xl, yj ∈ Yl,
можно
принять
число
обратное
значению
характеристики
LAETT,
вычисленному для маршрута x = xi (yj), принимая во внимание нагрузку на
сеть, создаваемую передачей данных игроком 2 (1) по маршруту y = yj (xi).
Значение LAETT(x, y) вычисляется по формуле (2), где
(6)
Тогда значения aij (bij) матрицы Al (Bl) выигрышей игрока 1 (2)
задаются как:
(7)
(8)
11
Множеством смешанных стратегий игрока 1 в состоянии l является Ul
={u | uem = 1, u ≥ 0m, u ∈ Rm}, где em = (1, … , 1)T ∈ Rm, 0m = (0, … , 0)T ∈ Rm.
Множеством смешанных стратегий игрока 2 в состоянии l является Vl
={v | ven = 1, v ≥ 0n, v ∈ Rn}, где en = (1, … , 1)T ∈ Rn, 0n = (0, … , 0)T ∈ Rn.
В состоянии l выигрыши игроков 1 и 2 в смешанных стратегиях в
ситуации (u, v) определим как Kl1(u, v) = uAlvT, Kl2(u, v) = uBlvT, u ∈ Ul, v ∈ Vl.
Таким образом, вводится смешанное расширение Γl*(Al, Bl) игры Γl (Al,
Bl) – бескоалиционная игра двух лиц Γl*(Al, Bl) = (Ul, Vl, Kl1, Kl2,).
В рамках поставленной задачи решением игры является нахождение
пары (u*, v*), которая является равновесия по Нэшу:
(9)
(10)
Известно [13], что равновесие по Нэшу в смешанных стратегиях
существует в конечных биматричных играх.
Решение может быть найдено алгоритмом Лемке-Хоусона с входными
параметрами (Al, Bl).
1.3. Алгоритм Лемке-Хоусона
Алгоритм, вычисляющий равновесие по Нэшу в смешанных стратегиях
в биматричных играх, заданных входными параметрами – (A, B) – матрицами
[m×n] выигрышей игроков 1 (m чистых стратегий) и 2 (n чистых стратегий)
соответственно. Доказано [14], что равновесие будет найдено алгоритмом
при условии, что A, B – матрицы, состоящие из положительных элементов.
Пусть M = {1, 2, … , m} и N = {m + 1, m + 2, … , m + n} – множества
индексов чистых стратегий игроков 1 и 2 соответственно. Спектром
смешанной стратегии u = (u1, … , um) игрока 1 называется множество S(u) = {i
| ui > 0}. Спектр смешанной стратегии v = (vm+1, … , vm+n) игрока 2
определяется аналогично. (u, v) – равновесие по Нэшу в игре, заданной (A, B),
cо скалярами α = uAvT и β = uBvT выигрышей игроков 1 и 2 соответственно
12
тогда и только тогда, когда для любого i ∈ S(u) и j ∈ S(v) выполняется (AvT)i =
α ≥ (AvT)k, k = 1, … , m и (uB)j = β ≥ (uB)k, k = m+1, … , m+n, что аналогично
утверждению: либо ui = 0, либо чистая стратегия j - лучшая ответная
стратегия второго игрока, также либо vj = 0, либо чистая стратегия i - лучшая
ответная стратегия второго игрока.
Тогда можем записать для любого равновесия по Нэшу (u, v):
AvT ≤ α∙em,
BTuT ≤ β∙en,
или
AvT + z T = α∙em,
BTuT + r T = β∙en,
где em = (1, … , 1)T ∈ Rm, en = (1, … , 1)T ∈ Rn, z = (z1, … , zm) ≥ 0, r = (rm+1, … ,
rm+n) ≥ 0, zi ≠ 0 тогда и только тогда, когда ui = 0, i = 1, …., m, rj ≠ 0 тогда и
только тогда, когда vj = 0, j = m+1, … , m+n. Можем получить:
Av′T + z′T = em,
(11)
BTu′T + r′T = en,
(12)
где v′ = v / α, z′ = z / α, u′ = u / β, r′ = r / β. Можем заметить, что
v = v′ α, u = u′ β и задача поиска u и v сводится к нахождению u′ и v′. Запишем
формулы (11), (12) в матричном виде:
(Em A) (z′ v′)T = em+n,
(13)
(BT En) (u′ r′)T = en+n,
(14)
где Em и En - единичные матрицы порядка m и n соответственно. Из
ограничений на вид z и u, а также на вид r и v, можно определить, что m+n
переменных из 2m+2n (zi′ и ui′, при i = 1, … , m, rj′ и vj′, при j = m+1, … , m+n)
должны быть равны нулю, а оставшиеся вычислимы из формул (13), (14).
Пусть u′ характеризуется ярлыком L(u′), v′ - ярлыком L(v′):
L(u′) = {i | ui′ = 0} ⋃ {j | rj′ = 0}
L(v′) = {i | vi′ = 0} ⋃ {j | zj′ = 0}
Ярлык пары (u′, v′) определяется как
L(u′, v′) = L(u′) ⋃ L(v′)
13
Говорится, что (u′, v′) имеет полный ярлык, если L(u′, v′) = M ⋃ N = {1,
2, … , m + n}.
Ситуация, выражаемая парой смешанных стратегий (u = u′β,
v = v′α), является равновесием по Нэшу в биматричной игре (A, B) тогда и
только тогда, когда (u′, v′) имеет полный ярлык.
Множество
всех
возможных
пар
(u′,
v′)
можно
представить
многогранником W = {(u′, v′) ∈ Rm × Rn | u′ ≥ 0, uem = 1, Av′T ≤ em, v′ ≥ 0, vem =
1, BTu′T ≤ em }, где
,
Идея алгоритма состоит в направленном переборе пар (u′, v′),
находящихся в вершинах W совершая переходы по ребрам таким образом,
чтобы попеременно заменять один из элементов ярлыков L(u′) и L(v′), до тех
пор, пока не будет найдена пара с полным ярлыком. Поиск начинается с
выхода из вершины ((0, … , 0), (0, … , 0)) имеющей полный ярлык.
Рассмотрим следующую интерпретацию алгоритма [15].
Начальному шагу алгоритма соответствует назначение таблиц (B* R* λ)
= (BT En en) и (Z* A* γ) = (Em A em) соответственно, где en = (1, … , 1)T ∈ Rn, em
= (1, … , 1)T ∈ Rm,. Задается столбец ярлыков L1 = (m+1, m+2 … , m+n) для
первой таблицы и L2 = (1, 2 … , m) для второй. В качестве вспомогательных
значений для таблиц 1 и 2 определяются h1 = 1, h2 = 1 соответственно.
Полагается, что для следующего шага будет использована таблица (B* R* λ)
и ярлык i = 1.
Далее преобразования таблиц (B* R* λ) и (Z* A* γ) совершаются
попеременно (с текущей таблицей D = (B* R* λ) или (Z* A* γ), определенным
для нее столбцом ярлыков L = L1 или L2 соответственно, вспомогательным
14
значением h = h1 или h2 соответственно и последним из извлеченных ярлыков
i) следующим образом:
1) Из неотрицательных элементов столбца di (i столбец таблицы D)
найти такой элемент c = dji ,что отношение dj(m+n) / dji является
минимальным;
2) для каждой строки dk, k ≠ j произвести преобразование: dk := (с∙dk dki∙dj)/h, где h – вспомогательное значение для таблицы D;
3) в столбце ярлыков L для таблицы D извлечь ярлык j и заменить на i;
4) вспомогательное значение h для таблицы D заменить на c.
На каждом шаге u′ = (u1′, … , um′), v′ = (vm+1′, … , vm+n′):
,
,
L(u′) = (M ⋃ N) \ {i | i ∈ L1},
L(v′) = (M ⋃ N) \ {i | i ∈ L2}
Алгоритм завершает работу, когда L(u′, v′) = L(u′) ⋃ L(v′) = M ⋃ N.
Результатом является равновесная по Нэшу ситуация (u, v), где
,
1.4. Расчет характеристик.
Результаты моделирования могут быть использованы для оценки
различных характеристик модели сети, находящихся в зависимости от
определенного поведения источников.
15
В качестве подобных оценок в каждом из состояний l ∈ S относительно
принятых распределений вероятностей ul и vl случайного выбора маршрута
будем рассматривать функции вида:
,
(15)
где m и n – число маршрутов в состоянии l ∈ S для первого и второго
источника соответственно, ul : ulem = 1, ul ≥ 0m, u ∈ Rm, vl : vlen = 1, vl ≥ 0n, vl ∈
Rn, ul и vl – распределения вероятности выбора маршрутов для источников 1 и
2 соответственно.
Так как допустимые состояния сети независимы и составляют полную
группу событий в данной задаче, общую характеристику модели сети будем
определять как математическое ожидание соответствующих величин в
состояниях l ∈ S:
(16)
В данной работе будем рассматривать характеристику, расчет которой
основан на формуле (4).
16
Глава 2. Задача поиска ожидаемого времени завершения
передач данных при равновесных стратегиях
2.1. Схема поиска.
1.
Определить количества промежуточных узлов k1, k2, k3 в первой
подсети,
второй
подсети
и
общих
промежуточных
узлов
соответственно.
2.
Задать элементы (p4, … , pk) вектора p = (1, 1, 1, p4, … , pk) вероятностей
активности узлов, где k = k1 + k2 + k3 + 3.
3.
Указать матрицу T, элементы tij которой заданы вероятностью
успешной передачи данных от узла i узлу j по прямому беспроводному
подключению в рамках рассматриваемой задачи (см. требования к T в
пункте 1.1) при условии, что все узлы находятся в активном состоянии.
4.
Задать базовые пропускные способности узлов Ci.
5.
Определить граф G(V, E) через множество вершин V = {v1, v2, v3, … , vk}
соответствующих узлам сети и множество связей E = {eij: соединяет vi и
vj | tij > 0}.
6.
Произвести в графе G(V, E) поиск всех простых цепей с началом в
вершине v1 и концом в вершине v3, обозначив их множество как M.
7.
Произвести в графе G(V, E) поиск всех простых цепей с началом в
вершине v2 и концом в вершине v3, обозначив их множество как N.
8.
Перебирая все возможные бинарные векторы состояний l = (1, 1, 1, l4,
… , lk), определить каждое допустимое состояние следующим образом:
для каждого i: li = 0 удалить из множеств Ml и Nl (изначально
принимающих значения M и N соответственно) простые цепи
содержащие vi. Если в результате и Ml, и Nl содержат как минимум
один элемент, то состояние сети l является допустимым, а Ml и Nl
образуют множества маршрутов в состоянии l для игроков 1 и 2
соответственно. Множество всех допустимых состояний – S.
17
9.
В каждом состоянии l ∈ S определить множества чистых стратегий Xl =
(x1, … , xm) игрока 1, Yl = (y1, … , yn), перечислив маршруты из Ml и Nl
соответственно.
10.
Вычислить матрицы Al и Bl, используя (7) и (8).
11.
Используя алгоритм Лемке-Хоусона на начальных данных (Al, Bl) найти
равновесную по Нэшу ситуацию в чистых стратегиях (ul*, vl*).
12.
Вычислить φl (ul*, vl*) по формуле (15).
13.
Найти P используя (5), Произвести расчет Φ по формуле (16).
2.2. Пример.
1.
Зададим количества промежуточных узлов k1 = 1, k2 = 1, k3 = 8 в
первой подсети, второй подсети и общих промежуточных узлов
соответственно.
2.
Укажем p = (1, 1, 1, 0.6, 0.7, 0.95, 0.9, 0.7, 0.6, 0.8, 0.6 0.8, 0.8).
3.
Определим матрицу T:
T=
4.
0
0
0
0.85
0
0.93
0
0
0
0
0
0
0
0
0
0
0
0.8
0.7
0.7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0.9
0.9
0
0
0
0
0
0
0
0
0
0
0
0
0
0.95
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0.85
0
0
0
0.87
0
0
0
0
0
0
0
0
0.87
0
0
0.8
0
0.83
0
0
0
0
0
0
0
0
0
0.8
0
0
0
0.75
0
0
0
0
0
0
0
0.87
0
0
0
0.9
0
0
0
0
0
0
0
0
0
0.83
0
0.9
0
0.8
0.6
0
0
0.75
0
0
0
0
0
0.75
0
0.8
0
0
0
0
0.8
0
0
0
0
0
0
0
0.6
0
0
0.85 0.87
Определим C = (2, 4, 4, 2, 1, 3, 2, 2, 2, 2, 2, 2, 2).
18
5.
На рис. 1 представлен граф G(V, E).
0.75
3
12
0.75
9
0.9
0.8
0.8
0.8
4
0.9
0.6
0.83
11
13
8
0.9
0.75
0.87
2
0.8
0.95
5
10
0.7
1
0.93
0.87
0.7
6
0.85
7
Рис. 1.
6.
Выпишем все простые цепи в графе G(V, E) с началом в вершине v1 и
концом в вершине v3 в M = {(1, 4, 8, 6, 7, 10, 11, 12, 3), (1, 4, 8, 6, 7, 10,
11, 13, 3), (1, 4, 8, 9, 12, 3), (1, 4, 8, 9, 12, 11, 13, 3), (1, 4, 8, 11, 12, 3), (1,
4, 8, 11, 13, 3), (1, 4, 9, 8, 6, 7, 10, 11, 12, 3), (1, 4, 9, 8, 6, 7, 10, 11, 13, 3),
(1, 4, 9, 8, 11, 12, 3), (1, 4, 9, 8, 11, 13, 3), (1, 4, 9, 12, 3), (1, 4, 9, 12, 11,
13, 3), (1, 6, 7, 10, 11, 8, 9, 12, 3), (1, 6, 7, 10, 11, 12, 3), (1, 6, 7, 10, 11, 13,
3), (1, 6, 8, 9, 12, 3), (1, 6, 8, 9, 12, 11, 13, 3), (1, 6, 8, 11, 12, 3), (1, 6, 8,
11, 13, 3)} где каждому x - элементу M соответствует маршрут
проходящий последовательно через вершины с индексами равными
элементам вектора x. |M| = 19.
7.
Выпишем все простые цепи в графе G(V, E) с началом в вершине v2 и
концом в вершине v3 в N = {(2, 5, 10, 7, 6, 8, 9, 12, 3), (2, 5, 10, 7, 6, 8, 9,
12, 11, 13, 3), (2, 5, 10, 7, 6, 8, 11, 12, 3), (2, 5, 10, 7, 6, 8, 11, 13, 3), (2, 5,
10, 11, 8, 9, 12, 3), (2, 5, 10, 11, 12, 3), (2, 5, 10, 11, 13, 3), (2, 6, 7, 10, 11,
8, 9, 12, 3), (2, 6, 7, 10, 11, 12, 3), (2, 6, 7, 10, 11, 13, 3), (2, 6, 8, 9, 12, 3),
(2, 6, 8, 9, 12, 11, 13, 3), (2, 6, 8, 11, 12, 3), (2, 6, 8, 11, 13, 3), (2, 7, 6, 8, 9,
12, 3), (2, 7, 6, 8, 9, 12, 11, 13, 3), (2, 7, 6, 8, 11, 12, 3), (2, 7, 6, 8, 11, 13,
3), (2, 7, 10, 11, 8, 9, 12, 3), (2, 7, 10, 11, 12, 3), (2, 7, 10, 11, 13, 3)}, где
19
каждому y - элементу N соответствует маршрут проходящий
последовательно через вершины с индексами равными элементам
вектора y. |N| = 21.
8.
Множество S допустимых состояний содержит 178 векторов по 13
элементов.
Рассмотрим шаги 9-12 только для состояния l = (1, 1, 1, 1, 1, 0, 0, 1, 1, 1,
1, 1, 1), которое определяет граф Gl(V, El):
0.75
3
12
0.75
9
0.9
0.8
0.8
0.8
4
0.9
0.6
0.83
11
13
8
0.9
0.75
2
0.8
5
0.95
10
1
6
7
Рис. 2.
9.
Определим множества чистых стратегий – маршрутов игроков в графе
Gl(V, El) (рис. 2.)
Xl = (x1 (1, 4, 8, 9, 12, 3), x2 (1, 4, 8, 9, 12, 11, 13, 3), x3 (1, 4, 8, 11, 12, 3),
x4 (1, 4, 8, 11, 13, 3), x5 (1, 4, 9, 8, 11, 12, 3), x6 (1, 4, 9, 8, 11, 13, 3), x7 (1,
4, 9, 12, 3), x8 (1, 4, 9, 12, 11, 13, 3)), |Xl| = 8.
Yl = (y1 (2, 5, 10, 11, 8, 9, 12, 3), y2 (2, 5, 10, 11, 12, 3), y3 (2, 5, 10, 11, 13,
3)), |Yl| = 3.
20
10.
Вычислим Al и Bl:
11.
Составим таблицы (B* R* λ):
9
10
λ
L1
1
2
3
4
5
6
7
8
11
9
0.17
0.15
0.17
0.19
0.15
0.17
0.18
0.17
1
0
0
1
10
0.29
0.25
0.25
0.29
0.25
0.29
0.29
0.25
0
1
0
1
11
0.31
0.23
0.27
0.23
0.27
0.23
0.31
0.23
0
0
1
1
3
4
5
6
7
8
(Z* A* γ):
L2
1
2
9
10
11
γ
1
1
0
0
0
0
0
0
0
0.21
0.28
0.32
1
2
0
1
0
0
0
0
0
0
0.14
0.18
0.17
1
3
0
0
1
0
0
0
0
0
0.21
0.24
0.29
1
4
0
0
0
1
0
0
0
0
0.23
0.27
0.22
1
5
0
0
0
0
1
0
0
0
0.17
0.21
0.25
1
6
0
0
0
0
0
1
0
0
0.18
0.23
0.20
1
7
0
0
0
0
0
0
1
0
0.28
0.34
0.40
1
8
0
0
0
0
0
0
0
1
0.18
0.20
0.19
1
Начнем с введения ярлыка 1 в первую таблицу:
21
L1
1
2
3
4
5
6
7
8
9
10
11
λ
9
0.00
0.01
0.01
0.02
0.00
0.01
0.01
0.02
0.31
0.00
-0.17
0.15
10
0.00
0.01
0.00
0.03
0.00
0.03
0.00
0.01
0.00
0.31
-0.29
0.02
1
0.31
0.23
0.27
0.23
0.27
0.23
0.31
0.23
0.00
0.00
1.00
1.00
d1 = 0.3110. Был извлечен ярлык 11.
L(u′,v′) = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11}.
L2
1
2
3
4
5
6
7
8
9
10
11
γ
1
0.40
0.00
0.00
0.00
0.00
0.00
-0.32
0.00
-0.01
0.00
0.00
0.08
2
0.00
0.40
0.00
0.00
0.00
0.00
-0.17
0.00
0.01
0.01
0.00
0.23
3
0.00
0.00
0.40
0.00
0.00
0.00
-0.29
0.00
0.00
0.00
0.00
0.11
4
0.00
0.00
0.00
0.40
0.00
0.00
-0.22
0.00
0.03
0.03
0.00
0.18
5
0.00
0.00
0.00
0.00
0.40
0.00
-0.25
0.00
0.00
0.00
0.00
0.16
6
0.00
0.00
0.00
0.00
0.00
0.40
-0.20
0.00
0.02
0.03
0.00
0.21
11
0.00
0.00
0.00
0.00
0.00
0.00
1.00
0.00
0.28
0.34
0.40
1.00
8
0.00
0.00
0.00
0.00
0.00
0.00
-0.19
0.40
0.02
0.01
0.00
0.21
d2 = 0.4037. Был извлечен ярлык 7.
L(u′,v′) = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11}.
L1
1
2
3
4
5
6
7
8
9
10
11
λ
9
-0.01
0.01
0.00
0.02
0.00
0.01
0.00
0.01
0.31
0.00
-0.18
0.13
10
0.00
0.01
0.00
0.03
0.00
0.03
0.00
0.01
0.00
0.31
-0.29
0.02
7
0.31
0.23
0.27
0.23
0.27
0.23
0.31
0.23
0.00
0.00
1.00
1.00
d1 = 0.3110. Был извлечен ярлык 1.
L(u′,v′) = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}.
В результате работы алгоритма Лемке-Хоусона найдена равновесная по
Нэшу ситуация - пара (ul*, vl*) = ((0, 0, 0, 0, 0, 0, 1, 0), (0, 0, 1)),
которая соответствует выбору маршрутов (1, 4, 9, 12, 3) и (2, 5, 10,
22
11, 13, 3) источниками 1 и 2 соответственно, когда система
находится в состоянии l = (1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1).
12.
В состоянии l значение характеристики φl (ul*, vl*) = 1∙1∙φl (x7, y3) =
max(LAETTl (x7, y3), LAETTl (y3, x7)) = max(2.4771, 3.2156) = 3.2156, где
x7 соответствует (1, 4, 9, 12, 3), y3 соответствует (2, 5, 10, 11, 13, 3).
В данной системе существует еще 177 состояний, в которых алгоритм
находит результаты.
13.
P – вектор распределения вероятностей реализации каждого из
допустимых состояний содержит 178 значений. Ожидаемое время
завершения передач данных Φ = 3.754.
23
Глава 3. Реализация алгоритма
3.1. Анализ и выбор инструментов реализации
Алгоритм строит математическую модель сети по исходным данным
путем построения графа. В результате преобразований графа находятся все
допустимые состояния системы, в каждом из которых определяются
возможные маршруты. Из множества маршрутов игроки стараются выбрать
те,
в
которых
ожидаемое
время
передачи
данных
меньше.
При
возникновении конфликта интересов в сокращении времени передачи
информации используется принцип равновесия по Нэшу для определения
смешанной стратегии каждого игрока – вероятностного распределения
выбора маршрутов. Подобная информация может быть использована для
расчета различных численных характеристик модели, предполагая, что
поведение игроков соответствует спрогнозированному.
Для получения результатов разработанной схемы, необходимого при
решении поставленной задачи, требуется инструмент для реализации этого
алгоритма. В качестве такого инструмента было выбрано вычислительное
устройство
(компьютер)
с
установленным
специализированным
программным обеспечением.
Для реализации алгоритма были доступны следующие пакеты
программ:
MATLAB
GNU Octave
Scilab
Mathcad
MATLAB
Matlab – это кроссплатформенный пакет программ предназначенный
для математических вычислений, моделирования различных процессов и
программирования. Он ориентирован прежде всего на работу с матрицами,
численные расчеты, визуализацию и создание приложений. Большая часть
24
функций написана на внутреннем языке и доступна для прочтения и
модификации.
Пакет включает в себя множество модулей, которые являются
совместимыми
приложениями
специализированный
позволяющими
функционал,
такой
добавлять
как:
к
проектам
проектирование
и
моделирование динамических систем (Simulink), использование модели
конечных автоматов (Stateflow), работа с нейронными сетями и нечеткой
логикой, оптимизация алгоритмов, а также взаимодействие с другими
программными продуктами.
Matlab имеет богатые возможности по визуализации различного вида
информации. Они включают в себя двухмерные и трехмерные графики,
анимацию, а также интегрирование готовых моделей из САПР. [16]
GNU Octave
GNU
Octave
–
система,
предназначенная
для
математических
вычислений, имеющая открытый исходный код. Она использует язык
совместимый с Matlab. Функционал тоже практически соответствует этому
программному продукту.
Octave предоставляет возможности для решения математических задач,
моделирования, работы с вещественными и комплексными матрицами,
решения
дифференциальных
уравнений,
работы
с
линейными
и
нелинейными алгебраическими уравнениями, интегрирования функций.
Также дополняется динамически загружаемыми модулями. [17]
Scilab
Scilab – пакет программ для различных расчетов. По функционалу во
многом схож с Matlab. Имеет множество инструментов для работы с
функциями, полиномами, матрицами, дифференциальными уравнениями,
интегральными функциями. [18]
Совместим с Matlab, LabVIEW, C++ и Java. Scilab кроссплатформенный
и имеет открытый исходный код.
Mathcad
25
Mathcad – программа для создания интерактивных документов с
вычислениями и визуализацией. Математические функции задаются в
графическом виде, а не как программный код, что делает их более удобными
для восприятия. В Mathcad есть интеграция с другими программными
продуктами
базами
данных.
Возможности
Mathcad
расширяются
подключением специализированных библиотек. [19]
В качестве среды для реализации алгоритма был выбран пакет
MATLAB ввиду того, что в нем реализовано множество функций обработки
матриц и представлены инструменты обработки больших объемов данных.
3.2. Реализация в среде MATLAB
Был реализован в формате функции [u, v] = Lemke_Howson(A, B)
рассмотренный в пункте 4.3. алгоритм Лемке-Хоусона поиска равновесия по
Нэшу в смешанных стратегиях в биматричных играх. Функция принимает на
вход две матрицы A и B, представляющие собой матрицы полезности для
игроков 1 и 2 соответственно. Выходными значениями функции являются
два вектора u и v - равновесные по Нэшу смешанные стратегии игроков 1 и 2,
которые удовлетворяют (9), (10).
Составлена функция [Z, I] = DFS(T, t, s), производящая поиск в графе
определенном матрицей смежности T всех простых цепей zi (выражаемых в
форме векторов с последовательным перечислением номеров точек
маршрута) с началом в точке с номером s и концом в вершине с номером t и
соотнесенных с ними вспомогательных бинарных векторов idxi. Эти векторы
содержат true для idxij, если zi содержит вершину j, false иначе. Перечисление
цепей реализовано поиском в глубину. Входные данные – матрица T, целые
числа t и s. Выход – массив ячеек Z = {zi} и логическая матрица I = (idxij).
Реализована функция [laett] = Laett(ETX, RC, z) расчета численной
характеристики LAETT(z) (1) на основании входных данных: матрица ETX =
(ETXij), вектор RC = (RCi), вектор маршрута z. Выход – число laett - значение
LAETT(z) (1).
26
В функции [A_, B_] = Laetts(ETX, C, X, Y, I_x, I_y) производится
расчет матриц A = (aij) и B = (bij) на основании входных данных: матрица
ETX, вектор C, массив ячеек маршрутов первого игрока X = {xi} и второго
игрока Y = {yi}, соответствующие им вспомогательные логические матрицы
I_x = (idx_xik), I_y = (idx_yjk). Перечисляя все i = 1, … , |X| и j = 1, … , |Y| в
цикле находятся векторы RC (RCk = Ck /2, при k: idx_xik = true и idx_yjk = true ,
RCk = Ck, иначе) (3) и aij = Laett(ETX, RC, xi), bij = Laett(ETX, RC, yj) Выход –
матрицы A_ = (aij) и B_ = (bij).
Функция [u, v, value] = Step(ETX, C, X_l, Y_l, I_lx, I_ly) производит
определение распределений u и v (выбора маршрутов из X_l и Y_l со
вспомогательными логическими матрицами I_lx и I_ly соответственно
определенными в некотором состоянии) являющихся равновесными по Нэшу
смешанными стратегиями в игре определяемой матрицами выигрышей A =
1./А_ и B = 1./B_ (7), (8) (где [A_, B_] = Laetts(ETX, C, X_l, Y_l, I_lx, I_ly)).
Решение игры осуществляется функцией [u, v] = Lemke_Howson(A, B). На
основании данных стратегий можно определить value = max(u∙A∙v, u∙B∙v) (4)
– ожидаемое время с начала пересылки до завершения всех передач данных.
Входные параметры: матрица ETX, вектор C, массивы ячеек маршрутов X_l
и Y_l, соответствующие им вспомогательные логические матрицы I_lx и I_ly.
Выход функции – векторы u и v, скаляр value.
Функция [Z_l, I_l] = Ch(Z, I, l) предназначена для выбора множества
маршрутов Z_l в состоянии l из множества маршрутов Z = {zi} применяя
соотнесенную с ним матрицу I = {idxij} следующим образом: если множество
{lj | j: idxij = true} состоит из элементов равных true (проверяется функцией
all()), то в Z_l добавляется маршрут zi, в I_l добавляется строка idxi. Входные
данные – массив ячеек Z = {zi}, логическая матрица I = (idxij), логический
вектор l. На выходе функции – массив ячеек Z_l = {z_li} и логическая
матрица I_l = (idx_lij).
Функция [result] = job(k, T, p, C) определяет матрицу ETX = (etxij) (etxij
= 0, если tij = 0, etxij = 1/tij, иначе) (6) T_ = (t_ij) (t_ij = 0, если tij = 0, t_ij = 1,
27
иначе), находит [X, I_x] = DFS(T_, 1, 3), [Y, I_y] = DFS(T_, 2, 3). Затем,
последовательно перечисляя все бинарные векторы вида l = (1, 1, 1, l4, … , lk),
находятся множества маршрутов в каждом состоянии [X_l, I_lx] = Ch(X, I_x,
l), [Y_l, I_ly] = Ch(Y, I_y, l) и определяется допустимость состояния l (X_l и
Y_l не пусты). Для допустимого состояния l функцией [ul, vl, valuesl] =
Step(ETX, C, X_l, Y_l, I_lx, I_ly) находятся равновесные по Нэшу
распределения ul и vl вероятностей выбора маршрутов из X_l и Y_l, в P
записывается значение соответствующее l (Pl = prod(p(l))∙prod(1-p(~l))).
После завершения всех итераций цикла вычисляется P = P./sum(P) (5) и
result = P∙values (16) – искомая числовая характеристика. Входные
параметры: число k узлов в сети, матрица T со свойствами таковой из пункта
1.1., p – вектор, С – вектор. Выход – скаляр result.
28
Выводы
В ходе работы была проведена разработка схемы поиска числовых
характеристик беспроводной сети с применением аппарата теории игр для
моделирования передачи данных как неантагонистической игры.
Данная схема поиска определяет равновесные по Нэшу смешанные
стратегии выбора маршрута передачи данных из источника в сток и на их
основании дает числовую характеристику сети. В работе характеристикой
выступает значение ожидаемого времени завершения передач данных, но
возможен поиск и других числовых характеристик сети определяемых на
равновесных стратегиях. Представленная схема будет работать для таких
характеристик похожим образом, и находить требуемые решения.
Работа схемы проиллюстрирована на примере решения задачи поиска
указанной характеристики. При выполнении работы были реализованы
функции в среде MATLAB для автоматизации расчетов необходимых при
решении задачи.
29
Заключение
В процессе проведенной работы получены следующие результаты:
1. Составлено математическое описание задачи выбора маршрута
передачи
данных
в
беспроводных
сетях,
моделируемой
в
форме
неантагонистической игры.
2. Реализован алгоритм теоретико-игрового моделирования передачи
данных в беспроводных сетях для исполнения средствами пакета MATLAB.
3. Рассмотрен метод поиска числовых характеристик сети на основании
моделирования равновесного по Нэшу выбора маршрутов передачи данных в
системе.
Возможна дальнейшая разработка методов поиска характеристик для
подобных систем. В качестве альтернативного направления исследования
допустимо рассмотрение координации действий при выборе маршрутов.
30
Список цитируемой литературы
1. Пятибратов А. П., Гудыно Л. П., Кириченко А. А. Вычислительные
системы, сети и телекоммуникации / Под ред. А. П. Пятибратова. М.:
КНОРУС, 2013. С. 273-309.
2. Байчаров С. Выбор технологии беспроводного обмена данными для
решения
задач
автоматизации
систем
жизнеобеспечения
офисно-
производственных помещений // Беспроводные технологии. Электрон.
журн.
2007.
№
2.
URL:
http://www.wireless-
e.ru/articles/technologies/2007_2_58.php (дата обращения 20.04.2016).
3. Коломеец А. Е., Сурков Л. В. Моделирование сетей SDN в среде Nicira //
Инженерный вестник МГТУ им. Н.Э. Баумана. Электрон. журн., 2014. №
6.
URL:
http://engbul.bmstu.ru/doc/708106.html
(дата
обращения
17.03.2016).
4. Aiache H., Conan V., Lebrun L., Rousseau S. A load dependent metric for
balancing Internet traffic in Wireless Mesh Networks // 5th IEEE International
Conference on Mobile Ad Hoc and Sensor Systems, 2008. P. 629-634.
5. Esposito P. M., Campista M. E. M., Moraes I. M., Costa L. H. M. K., Duarte
O. C. M. B., Rubinstein M. G. Implementing the Expected Transmission Time
Metric for OLSR Wireless Mesh Networks // 1st IFIP Wireless Days, 2008. P.
1-5.
6. Сурков Л. В., Коломеец А. Е. Автоматизированная программная система
моделирования SDN-сетей // Инженерный вестник МГТУ им. Н.Э.
Баумана.
Электрон.
журн.,
2015.
№
3.
URL:
http://engbul.bmstu.ru/doc/708106.html (дата обращения 17.03.2016).
7. Лемешко А. В., Вавенко Т. В. Разработка и исследование потоковой
модели адаптивной маршрутизации в программно-конфигурируемых
сетях с балансировкой нагрузки // Доклады ТУСУР, 2013. №3 (29) С. 100108.
8. Датьев И. О. Маршрутные метрики многошаговых беспроводных
самоорганизующихся сетей // Труды Кольского научного центра РАН,
31
2015. №3 (29) С. 115-136.
9. Дибров М. В. Маршрутизаторы. Красноярск: СФУ, 2008. 389 с.
10. Blocq G., Orda A. How good is bargained routing? // INFOCOM, 2012
Proceedings IEEE, 2012. P. 2453-2461.
11. Easley D., Kleinberg J. Networks, Crowds, and Markets: Reasoning about a
Highly Connected World. Cambridge University Press, 2010. 833 p.
12. Новожилова Л. М. Конечные графы и их приложения. СПб: Издательство
СПбГУ, 2008. 234 с.
13. Петросян Л. А., Зенкевич Н. А., Шевкопляс Е. В. Теория игр. 2-е изд.,
перераб. и доп. СПб.: БХВ-Петербург, 2012. С. 129-134.
14. Бородакий Ю.В., Загребаев А.М., Крицына Н.А., Кулябичев Ю.П.,
Шумилов Ю.Ю. Нелинейное программирование в современных задачах
оптимизации. М.: НИЯУ МИФИ, 2011. С. 105-125.
15. B. von Stengel Equilibrium computation for two-player games in strategic and
extensive form // Algorithmic Game Theory, Cambridge Univ. Press,
Cambridge, 2007. P. 53-78.
16. Иглин С. П. Теория вероятностей и математическая статистика на базе
MATLAB. Харьков: НТУ "ХПИ", 2006. 612 c.
17. Алексеев Е. Р., Чеснокова О. В. Введение в Octave для инженеров и
математиков. М.: ALT Linux, 2012. 368 с.
18. Тропин И. С., Михайлова О. И., Михайлов А. В. Численные и
технические расчеты в среде Scilab. М.: 2008. 65 c.
19. Очков. В.Ф. Mathcad 14 для студентов и инженеров: русская версия.
СПб.: BHV, 2009. 512 c.
32
Отзывы:
Авторизуйтесь, чтобы оставить отзыв