Metadata-Version: 2.1
Name: mcts
Version: 1.0.4
Summary: A simple package to allow users to run Monte Carlo Tree Search on any perfect information domain
Home-page: https://github.com/pbsinclair42/MCTS
Author: Paul Sinclair
Author-email: pbsinclair42@gmail.com
License: MIT
Description: # MCTS
        
        This package provides a simple way of using Monte Carlo Tree Search in any perfect information domain.  
        
        ## Installation 
        
        With pip: `pip install mcts`
        
        Without pip: Download the zip/tar.gz file of the [latest release](https://github.com/pbsinclair42/MCTS/releases), extract it, and run `python setup.py install`
        
        ## Quick Usage
        
        In order to run MCTS, you must implement a `State` class which can fully describe the state of the world.  It must also implement four methods: 
        
        - `getPossibleActions()`: Returns an iterable of all actions which can be taken from this state
        - `takeAction(action)`: Returns the state which results from taking action `action`
        - `isTerminal()`: Returns whether this state is a terminal state
        - `getReward()`: Returns the reward for this state.  Only needed for terminal states. 
        
        You must also choose a hashable representation for an action as used in `getPossibleActions` and `takeAction`.  Typically this would be a class with a custom `__hash__` method, but it could also simply be a tuple or a string.  
        
        Once these have been implemented, running MCTS is as simple as initializing your starting state, then running:
        
        ```python
        from mcts import mcts
        
        mcts = mcts(timeLimit=1000)
        bestAction = mcts.search(initialState=initialState)
        ```
        See [naughtsandcrosses.py](https://github.com/pbsinclair42/MCTS/blob/master/naughtsandcrosses.py) for a simple example.  
        
        ## Slow Usage
        //TODO
        
        ## Collaborating
        
        Feel free to raise a new issue for any new feature or bug you've spotted. Pull requests are also welcomed if you're interested in directly improving the project.
        
Keywords: mcts,monte,carlo,tree,search
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Description-Content-Type: text/markdown
