Это команда 2nash, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.
ПРОГРАММА:
ИМЯ
nash - найти равновесия по Нэшу в некооперативных играх двух человек
СИНТАКСИС
сетапнаш вход game1.ine game2.ine
setupnash2 вход game1.ine game2.ine
Нэш game1.ine game2.ine
2наш game1.ine game2.ine
ОПИСАНИЕ
Все равновесия Нэша (NE) для некооперативной игры двух участников вычисляются с использованием двух
чередующиеся шаги перебора вершин обратного поиска. Вход для задачи - два метра
на n матриц A, B целых чисел или рациональных чисел. Первый игрок находится в ряду, второй
является игроком колонны. Если воспроизводятся строка i и столбец j, игрок 1 получает Ai, j и игрок
2 получает Bi, j. Если у вас есть два или более доступных процессора, запустите 2nash вместо nash в качестве
порядок входных игр не имеет значения. Он работает параллельно с играми в каждом порядке.
(Если вы используете nash, программа обычно работает быстрее, если m <= n, см. Ниже.) Самый простой
способ использовать программу nash или 2nash - сначала запустить setupnash или (setupnash2 см. ниже)
в файле, содержащем:
млн
матрица A
матрица B
например. файл game предназначен для игры с m = 3 n = 2:
3 2
0 6
2 5
3 3
1 0
0 2
4 3
% setupnash игра game1 game2
производит два H-представления, game1 и game2, по одному для каждого игрока. Чтобы получить
равновесия, бег
% Нэш игра1 игра2
or
% 2nash игра1 игра2
Каждая строка, начинающаяся с 1, представляет собой стратегию для игрока строки, дающего NE с каждой строкой.
начало 2 указано непосредственно над ним. Выплата для игрока 2 - это последнее число на
начало строки 1, и наоборот. Например: первые две строки вывода: игрок 1 использует строку
вероятности 2/3 2/3 0, в результате чего игрок 2 получит выплату 3/2. Игрок 2 использует столбец
вероятности 1/3 2/3, дающие выигрыш 4 игроку 1. Если обе матрицы неотрицательны
и не имеют нулевых столбцов, вместо этого вы можете использовать setupnash2:
% setupnash2 игра game1 game2
Теперь полученные многогранники являются многогранниками. Результатом nash в этом случае является список
немасштабированные векторы вероятности x и y. Чтобы нормализовать, разделите каждый вектор на v = 1 ^ T x и
u = 1 ^ T yu и v - выплаты игрокам 1 и 2 соответственно. В этом случае ниже
могут быть включены границы функций выигрыша для одного или обоих игроков. Чтобы дать более низкий
границу r на выплату для игрока 1 добавить параметры в файл game2 (да, это
правильно!) Чтобы дать нижнюю границу выигрыша для игрока 2, добавьте параметры в файл
game1
минимизировать
0 1 1 ... 1 (должно быть начато n записей)
связанная 1 / r; (примечание: величина, обратная r)
Если вы не хотите использовать программу 2nash с двумя процессорами, прочтите следующее. Если m равно
больше, чем n, то nash обычно работает быстрее за счет перестановки игроков. Это достигается
запустив:
% Нэш игра2 игра1
Если вы хотите создать файлы game1 и game2 вручную, см. лрслиб пользователь руководство[1]
Используйте 2nash онлайн с помощью сервисов onworks.net