Istnieje wiele sposobów na narysowanie gry sekwencyjnej „ręcznie”. Rysując grę mam na myśli:
Wyświetlanie punktów decyzyjnych graczy, dostępnych akcji i wypłat.
Czy jest jakiś sposób, aby to zrobić w języku R lub podobnym języku programowania wysokiego poziomu? Mówiąc dokładniej: nie chcę kreślić równań geometrycznych, chcę zdefiniować strukturę (gracze, punkty, połączenia, wypłaty) i zlecić programowi wykreślić.
Obecnie przeglądam pakiet „igraph”, ale mam pewne trudności z etykietowaniem, więc zastanawiam się, czy jest lepszy sposób.
game-theory
r
Giskard
źródło
źródło
Odpowiedzi:
Mathematica ma możliwość tworzenia i rysowania wykresów.
Tak więc, jeśli zbudowałeś wykres w Mathematica, możesz wykreślić go przy użyciu wybranych ustawień.
W Mathematica możesz użyć TreeGraph jako sposobu na zbudowanie wykresu, a TreePlot jako sposobu na wykreślenie go. Na przykład poniższy kod generuje drzewo z węzłami oznaczonymi współrzędnymi i ma podobny format, co chcesz:
Należy również pamiętać, że istnieją pakiety graficzne, takie jak TikZ w Tex, które mają bardzo potężne możliwości rysowania wykresów. TikZ jest jednak najczęściej używany w środowiskach uniksowych i nie będzie przechowywać struktur danych ani wykonywać obliczeń takich jak Mathematica. Jest to czysto graficzna możliwość rysowania.
Wykres użyty jako ilustracja ma czcionkę zwykle używaną w TeX, więc prawdopodobnie został stworzony z TikZ lub innym pakietem TeX. Jeśli chcesz, aby równanie Mathematica wyglądało tak, możesz użyć funkcji TraditionalForm lub jawnie określić czcionkę Computer Modern.
źródło
LaTeX z
forest
forest
Pakiet LaTeX pozwala narysować drzewo gry z bardzo prostej składni. Po skopiowaniu wstępnie ustawionego szablonu do preambuły LaTeX, można zbudować drzewo gry za pomocą zagnieżdżonej[]
składni, a następnie program zajmie się rozmieszczeniem węzłów / odstępami itp.Oto przykład z
forest
podręcznika („Drzewo decyzyjne” w rozdziale 5.1):Eksplorator teorii gier
Teoria gier Explorer jest rozwijany przez kilku ludzi na LSE. Pozwala użytkownikom na wprowadzanie gier matrycowych lub tworzenie rozbudowanych gier poprzez GUI. Wydaje się również, że jest w stanie konwertować pomiędzy zwykłymi i rozbudowanymi grami. Dodatkowo oprogramowanie zawiera solver, który szuka równowagi Nasha wprowadzonej gry.
Zrzuty ekranu:
źródło
Jeśli korzystasz z LaTeX, możesz również rysować drzewa gry za pomocą
istgame
pakietu opartego na TikZ.Podręcznik zawiera wiele przykładów z pełnymi kodami, w tym:
Dzięki
istgame
pakietowi możesz rysować drzewa gry tak, jak rysujesz je ręcznie.źródło
Użyłem LaTeXa z pakietem tikz. Do wygenerowania tej gry Centepede wykorzystano następujący kod:
Oto inny przykład:
Kod powyższej gry to:
źródło
Dla Twojej wygody
Jeśli jesteś zainteresowany
istgame
pakietem, możesz to zrobić (aby narysować przykłady Amita):W przypadku stonogi:
Sama struktura drzewa jest łatwa do narysowania.
W innym przykładzie:
Ponownie struktura drzewa jest łatwa do narysowania.
(DODANE) Jeśli chcesz, aby drzewo było na wschód :
źródło