vis is an open source Python library for developing and comparing reinforcement learning algorithms by providing a standard API to communicate between learning algorithms and environments, as well as a standard set of environments compliant with that API
We are support Python 3.7, 3.8, 3.9, 3.10 on Linux and Windows
To install the base vis library, use:
-
Using pip:
Update later
-
Directly from source (recommended):
git clone https://github.com/ngoxuanphong/vis.git cd vis pip install -r requirements.txt
import env
env.make()
# Run game
print(env.run())
# Visualization one game
env.render(Agent = env.Agent_random)
#Play with bot in game
env.render(Agent = 'human')
import env
from numba import njit
import numpy as np
@njit()
def Agent(state, agent_data):
validActions = env.getValidActions(state)
actions = np.where(validActions==1)[0]
action = np.random.choice(actions)
return action, agent_data
env.make()
env.run(Agent, num_game = 1000, agent_model = [0], level = 0)
env.render(Agent = Agent)
Please refer to Wiki for complete usage details
vis includes 20 games, which are listed below along with the number of actions, observations, time run, win rate they have:
Game | Win-lv0 | win-lv1 | win-lv2 | Time-lv0 | Time-lv1 | Time-lv2 | Graphics | Link |
---|---|---|---|---|---|---|---|---|
Catan | 2440 | 354 | 7 | 252 | 230 | 183 | True | Catan |
CatanNoExchange | 2491 | 424 | 22 | 168 | 1021 | 96 | True | CatanNoExchange |
Century | 1970 | 7 | 36 | 61 | True | Century | ||
Durak | 2540 | 460 | 15 | 21 | True | Durak | ||
Exploding_Kitten | 2044 | 1695 | 24 | 35 | True | Exploding_Kitten | ||
Fantan | 2464 | 114 | 17 | 31 | Fantan | |||
GoFish | 2466 | 2517 | 497 | 9 | 34 | 13 | True | GoFish |
Imploding_Kitten | 1646 | 1274 | 62 | 51 | True | Imploding_Kitten | ||
MachiKoro | 2468 | 31 | 3 | 11 | 9 | 8 | True | MachiKoro |
Poker | 1100 | 1112 | 81 | 127 | True | Poker | ||
Sheriff | 2481 | 4 | 365 | 29 | 29 | 19 | True | Sheriff |
Splendor | 2517 | 21 | 4 | 105 | 154 | 85 | True | Splendor |
Splendor_v2 | 2632 | 9 | 4 | 50 | 180 | 123 | True | Splendor_v2 |
Splendor_v3 | 2700 | 681 | 28 | 34 | 33 | 41 | True | Splendor_v3 |
StoneAge | 2485 | 40 | 0 | 65 | 229 | 100 | True | StoneAge |
SushiGo | 2096 | 144 | 187 | 8 | 14 | 14 | True | SushiGo |
TicketToRide | 2017 | 0 | 84 | 313 | True | TicketToRide | ||
TLMN | 2532 | 766 | 279 | 23 | 25 | 31 | True | TLMN |
WelcomeToTheDungeon_v1 | 2512 | 830 | 5 | 11 | WelcomeToTheDungeon_v1 | |||
WelcomeToTheDungeon_v2 | 2458 | 889 | 443 | 8 | 11 | 23 | WelcomeToTheDungeon_v2 |
Please refer to Wiki for more details.