Ito ang command na 2nash na maaaring patakbuhin sa OnWorks na libreng hosting provider gamit ang isa sa aming maramihang libreng online na workstation gaya ng Ubuntu Online, Fedora Online, Windows online emulator o MAC OS online emulator
PROGRAMA:
NAME
nash - hanapin ang nash equilibria ng dalawang taong hindi kooperatiba na laro
SINOPSIS
setupnash input laro1.ine laro2.ine
setupnash2 input laro1.ine laro2.ine
nash laro1.ine laro2.ine
2nash laro1.ine laro2.ine
DESCRIPTION
Ang lahat ng Nash equilibria (NE) para sa dalawang taong hindi nakikipagtulungan na laro ay kinukuwenta gamit ang dalawa
interleaved reverse search vertex enumeration hakbang. Ang input para sa problema ay dalawang m
sa pamamagitan ng n matrices A,B ng integers o rationals. Ang unang manlalaro ay ang row player, ang pangalawa
ay ang column player. Kung ang row i at column j ay nilalaro, ang player 1 ay makakatanggap ng Ai,j at player
2 tumatanggap ng Bi,j. Kung mayroon kang dalawa o higit pang cpus na magagamit, patakbuhin ang 2nash sa halip na nash bilang ang
Ang pagkakasunud-sunod ng mga laro sa pag-input ay hindi materyal. Ito ay tumatakbo sa parallel sa mga laro sa bawat order.
(Kung gumagamit ka ng nash, kadalasang tumatakbo ang program nang mas mabilis kung ang m ay <= n , tingnan sa ibaba.) Ang pinakamadali
paraan para magamit ang program nash o 2nash ay ang patakbuhin muna ang setupnash o ( setupnash2 tingnan sa ibaba )
sa isang file na naglalaman ng:
mn
matris A
matris B
hal. ang file game ay para sa isang laro na may m=3 n=2:
3 2
0 6
2 5
3 3
1 0
0 2
4 3
% setupnash game game1 game2
gumagawa ng dalawang H-representasyon, game1 at game2, isa para sa bawat manlalaro. Upang makuha ang
equilibria, tumakbo
% nash game1 game2
or
% 2nash game1 game2
Ang bawat row na nagsisimula sa 1 ay isang diskarte para sa row player na nagbubunga ng NE sa bawat row
simula 2 na nakalista kaagad sa itaas nito. Ang kabayaran para sa manlalaro 2 ay ang huling numero sa
linya simula 1, at vice versa. Hal: unang dalawang linya ng output: ang player 1 ay gumagamit ng row
probabilities 2/3 2/3 0 na nagreresulta sa isang payoff na 2/3 sa player 2. Player 2 ay gumagamit ng column
probabilities 1/3 2/3 na magbubunga ng kabayaran na 4 sa player 1. Kung ang parehong matrice ay nonnegative
at walang mga zero na column, maaari mong gamitin ang setupnash2:
% setupnash2 laro laro1 laro2
Ngayon ang polyhedra na ginawa ay polytopes. Ang output ng nash sa kasong ito ay isang listahan ng
unscaled probability vectors x at y. Upang gawing normal, hatiin ang bawat vector sa v = 1^T x at
u=1^T yu at v ay ang mga kabayaran sa mga manlalaro 1 at 2 ayon sa pagkakabanggit. Sa kasong ito, mas mababa
mga hangganan sa mga function ng kabayaran sa alinman o parehong mga manlalaro ay maaaring isama. Upang magbigay ng mas mababang
bound of r sa kabayaran para sa player 1 idagdag ang mga opsyon para mag-file ng game2 (oo nga
tama!) Upang magbigay ng mas mababang hangganan ng r sa kabayaran para sa player 2 idagdag ang mga opsyon sa file
laro1
mabawasan
0 1 1 ... 1 (n mga entry na dapat ibigay)
nakatali 1/r; (tandaan: kapalit ng r)
Kung hindi mo gustong gamitin ang 2-cpu program na 2nash, pakibasa ang sumusunod. Kung ang m ay
mas malaki kaysa sa n pagkatapos ay karaniwang tumatakbo nang mas mabilis si nash sa pamamagitan ng paglipat ng mga manlalaro. Ito ay nakamit
sa pamamagitan ng pagpapatakbo:
% nash game2 game1
Kung nais mong buuin ang game1 at game2 file sa pamamagitan ng kamay, tingnan ang lrslib gumagamit manwal[1]
Gumamit ng 2nash online gamit ang mga serbisyo ng onworks.net