pyHPDM! ================================ python Human Probabilistic Decision-Modelling (pyHPDM) is a framework for modelling and fitting the responses of people to probabilistic decision making tasks. Prerequisites ************* This code has been tested using ``Python 2.7``. Apart from the standard Python libraries it also depends on the `SciPy `_ librariesand a few others listed in ``requirements.txt``. For those installing Python for the first time I would recommend the `Anaconda Python distribution `_. Installation ************ For now this is just Python code that you download and use, not a package. Usage ***** The framework has until now either been run with a run script or live in a command-line (or `jupyter notebook `_). A task simulation can be simply created by running ``simulation.simulation()``. Equally, for fitting participant data, the function is ``dataFitting.data_fitting``. For now, no example data has been provided. More complex example running scripts can be found in ``./runScripts/``. Here, a number of scripts have been created as templates: ``runScript_sim.py`` for simulating the ``probSelect`` task and ``runScript_fit.py`` for fitting the data generated from ``runScript_sim.py``. A visual display of the interactions in one of these scripts will soon be created. A new method of passing in the fitting or simulation configuration is to use a YAML configuration file. This is done, for both simulations and data fitting, using the function ``start.run_script`` For example, to run the YAML configuration equivalent to the ``runScript_sim.py`` from a command line would be :``start.run_script('./runScripts/runScripts_sim.yaml')``. Testing ******* Testing is done using `pytest `_. License ******* This project is licenced under the `MIT license `_. Documentation ************* The documentation can be found on `readthedocs `_ or in ``./doc/_build/html``, with the top level file being ``index.html`` To update the documentation you will need to install Sphinx and a set of extensions. The list of extensions can be found in ``./doc/conf.py``. To update the documentation follow the instruction in ``./doc/readme.md`` Contents: .. toctree:: :maxdepth: 4 simulation dataFitting data taskGenerator tasks modelGenerator model fitAlgs outputting utils Indices and tables ================== * :ref:`genindex` * :ref:`modindex` * :ref:`search`