Skip to content

Snow cannon consolidate agent functions #5

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 58 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
58 commits
Select commit Hold shift + click to select a range
c7a8ec3
Create smartplayer.py
dtekinoglu Apr 8, 2024
b2e5d21
Update smartplayer.py
dtekinoglu Apr 8, 2024
2a3ee32
Create gametree.py
dtekinoglu Apr 8, 2024
f0a0f61
Update gametree.py
dtekinoglu Apr 8, 2024
834ca2d
Update gametree.py
dtekinoglu Apr 8, 2024
aa6ebfd
Update gametree.py
dtekinoglu Apr 8, 2024
9cde70b
Commented out line 42 of pypokerengine/api/game.py to allow the code …
ThorMead Apr 11, 2024
44758ef
Create .gitignore
Snow-cannon Apr 13, 2024
3eaf11b
Merge pull request #1 from dtekinoglu/ThorMead-windows-compatibility-…
ThorMead Apr 15, 2024
9a1a796
Swapped from laptop to PC
ThorPMead Apr 20, 2024
9c0ec0d
Added checks for each type of hand, and general sampling from a deck
ThorMead Apr 20, 2024
0d09307
Added handDistribution() method
ThorMead Apr 20, 2024
2ea896a
Small tweeks to handDistribution()
ThorMead Apr 22, 2024
268895e
Updates game tree to generate from given history
Snow-cannon Apr 22, 2024
04c6548
Adds proper generation from given history
Snow-cannon Apr 22, 2024
56ef463
Cleared up format and implemented observer player
Barricature Apr 22, 2024
f01cf06
Corrects pot calculations in game tree generation
Snow-cannon Apr 22, 2024
d30902a
Merge pull request #2 from dtekinoglu/ThorMead-hand-probabilities
Snow-cannon Apr 23, 2024
f73842d
Cleans up game tree file
Snow-cannon Apr 23, 2024
45a38d1
Adds back base propagation code for searching
Snow-cannon Apr 23, 2024
d7fb69b
Merge pull request #3 from dtekinoglu/snow-cannon-update-game-tree
ThorMead Apr 23, 2024
cd564dd
Optimizations to hand distribution calculations
ThorPMead Apr 23, 2024
1e06f7f
Added splat and small optimizations
ThorMead Apr 23, 2024
8adabbc
Optimizes calculating possible hand distributions
Snow-cannon Apr 24, 2024
c77d681
small tweeks
ThorPMead Apr 24, 2024
6afce21
Rough draft of Opponent Action
Barricature Apr 25, 2024
1c578b2
added some comments
Barricature Apr 25, 2024
240ced8
got rid of last_action, opponent action is not continuous in the game…
Barricature Apr 25, 2024
0f00f12
fixed really awkward interval division
Barricature Apr 25, 2024
39fe3ae
Checked for convergence of distributions and slight modifications to …
ThorPMead Apr 25, 2024
243298a
Merge pull request #4 from dtekinoglu/Iris_RL
Snow-cannon Apr 25, 2024
670ff94
Merge pull request #5 from dtekinoglu/ThorMead-Probability-Optimization
ThorMead Apr 25, 2024
d9b8004
Merge pull request #6 from dtekinoglu/ThorMead-Convergence-Tests
ThorMead Apr 25, 2024
2f7a48f
added method to calcualte odds of win/loss/tie for each hand
ThorMead Apr 30, 2024
ea42a7e
Switching from laptop to PC
ThorPMead Apr 30, 2024
4fb9fa3
Optimizes handDistribution function
Snow-cannon Apr 30, 2024
6200477
updated getWinLossTieOdds() arguments
ThorMead Apr 30, 2024
5de5a3c
Moved winlosstieodds.py into handprobability.py
ThorMead Apr 30, 2024
3ba9090
Merge pull request #7 from dtekinoglu/ThorMead-WinLossTieOdds
Snow-cannon Apr 30, 2024
5b6d3fc
Adds move choices to gametree.py
Snow-cannon May 1, 2024
265e191
Creates treeplayer agent
Snow-cannon May 1, 2024
ef8c7a1
Moves gametree and handprobabilities to top level folder. Updates tes…
Snow-cannon May 1, 2024
f2efa4c
Oh man this is a mess
ThorPMead May 1, 2024
e2694ac
made some new agents, evil and stump
ThorPMead May 2, 2024
ab5ab6e
Implements hold-based agent and smart hole-based agent
Snow-cannon May 3, 2024
142a879
Merge pull request #8 from dtekinoglu/snowcannon-traverse-gametree
Snow-cannon May 3, 2024
99dbedc
Adds training functionality for EvilJr agent
Snow-cannon May 7, 2024
490097f
TRAINED HAND CUTOFFS!!
ThorPMead May 7, 2024
dad293a
Renamed to Group1Player
Snow-cannon May 9, 2024
71494f5
Merge pull request #10 from dtekinoglu/snowcannon-weight-training
Snow-cannon May 9, 2024
f2f9c8f
Adds weights to agent directly. Creates untrained version for further…
Snow-cannon May 9, 2024
6e1ae5f
Merge pull request #11 from dtekinoglu/snow-cannon-weight-replacement
Snow-cannon May 9, 2024
b006a71
Corrects agent name scheme
Snow-cannon May 9, 2024
c381ecf
Removes comments in TreePlayer
Snow-cannon May 9, 2024
97ee1f7
Removes comments from Group 11 and testperf
Snow-cannon May 9, 2024
554b781
Cleans up train.py
Snow-cannon May 9, 2024
35dcf83
Merge pull request #12 from dtekinoglu/snow-cannon-cleanup
Snow-cannon May 9, 2024
6f1a29b
Combines all utility functions into Group11Player.py
Snow-cannon May 10, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
162 changes: 162 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,162 @@
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class

# C extensions
*.so

# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt

# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/
.pytest_cache/
cover/

# Translations
*.mo
*.pot

# Django stuff:
*.log
local_settings.py
db.sqlite3
db.sqlite3-journal

# Flask stuff:
instance/
.webassets-cache

# Scrapy stuff:
.scrapy

# Sphinx documentation
docs/_build/

# PyBuilder
.pybuilder/
target/

# Jupyter Notebook
.ipynb_checkpoints

# IPython
profile_default/
ipython_config.py

# pyenv
# For a library or package, you might want to ignore these files since the code is
# intended to run in multiple environments; otherwise, check them in:
# .python-version

# pipenv
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
# However, in case of collaboration, if having platform-specific dependencies or dependencies
# having no cross-platform support, pipenv may install dependencies that don't work, or not
# install all needed dependencies.
#Pipfile.lock

# poetry
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
# This is especially recommended for binary packages to ensure reproducibility, and is more
# commonly ignored for libraries.
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
#poetry.lock

# pdm
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
#pdm.lock
# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
# in version control.
# https://pdm.fming.dev/#use-with-ide
.pdm.toml

# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
__pypackages__/

# Celery stuff
celerybeat-schedule
celerybeat.pid

# SageMath parsed files
*.sage.py

# Environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/

# Spyder project settings
.spyderproject
.spyproject

# Rope project settings
.ropeproject

# mkdocs documentation
/site

# mypy
.mypy_cache/
.dmypy.json
dmypy.json

# Pyre type checker
.pyre/

# pytype static type analyzer
.pytype/

# Cython debug symbols
cython_debug/

# PyCharm
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
# and can be added to the global gitignore or merged into this file. For a more nuclear
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
#.idea/

/.vscode
Loading