跳转到主要内容

基于Devaine等人(2017年)的实现,在基于代理的框架中实现心灵游戏理论。

项目描述

tomsub:使用Python进行心灵理论模拟

PyPI version pip downloads Code style: black python version license github actions pytest github actions docs CodeFactor

一个用于代理模拟的Python包。该包提供了一个计算生态系统,用于研究和比较假设的心灵理论(ToM)机制的计算模型,并使用它们作为实验刺激。该包特别包括一个易于使用的变分贝叶斯k-ToM模型实现,该模型由Devaine等人(2017)开发。该模型已被证明能够捕捉个人和群体水平的社会技能差异,包括在临床人群和灵长类动物物种之间。它也被认为是与其他人和心理状态递归表示方面最佳的心灵理论计算模型之一。我们提供了一系列关于如何在基于游戏理论的模拟和实验刺激中实现k-ToM模型以及多种简单类型的ToM机制(包括如何指定自定义的ToM模型)的教程,并展示了如何分析结果数据。

📰 新闻

  • 2022年3月7日
    • 该论文已被《行为研究方法》期刊接受,发表时间为2022年(点击查看)
  • 版本号:1.1.5
    • 添加了新的绘图功能
    • 速度和内存优化,以及多核模拟支持 🏎
    • 添加了工作流程以确保依赖项正在更新
    • 微调错误
  • 版本号:1.1.0
    • 引入了与MATLAB实现的速度比较,显示出tomsup实现的速度明显更快。
    • 引入了全面的测试套件,关于如何运行它,请参阅FAQ。
    • 代码覆盖率提升至86%,代码质量提升至A级。
    • 引入了文档网站。
    • 添加了持续集成,以确保该包始终按预期工作,支持mac、windows和linux测试。
    • 引入了新的标志 🌟
  • 版本号:1.0.0
    • tomsup发布了第一个版本,并发布了在psyarxiv上的预印本。
    • 引入了一系列教程,帮助您开始使用tomsup。

🔧 设置和安装

tomsup支持Python 3.6或更高版本。我们强烈建议您从pip安装tomsup。如果您还没有安装pip,您可以从官方pip网站安装它,否则,运行

pip install tomsup 
详细说明

您也可以通过以下方式直接从GitHub安装

pip install git+https://github.com/KennethEnevoldsen/tomsup.git

或者更明确地

git clone https://github.com/KennethEnevoldsen/tomsup.git
cd tomsup
pip3 install -e .

tomsup入门

要开始使用tomsup,我们建议您阅读教程文件夹中的教程。我们建议您从简介开始。

这些教程以Jupyter Notebook的形式提供。如果您没有安装Jupyter Notebook,有关安装和运行的说明可以在此处找到。

教程 内容 文件名 打开方式
文档 tomsup的文档
简介 这是对tomsup功能的介绍,遵循论文中的实现。 paper_implementation.ipynb Open In Colab
创建代理 这是创建新代理的示例。 Creating_an_agent.ipynb Open In Colab
指定内部状态 这是一篇关于如何在k-ToM代理上指定内部状态的简要指南。 specifying_internal_states.ipynb Open In Colab
Psychopy实验 这是如何在实验中实现tomsup的示例。 不是笔记本,而是一个文件夹,psychopy_experiment Open in Github

🤔 问题和使用Q&A

要报告问题或请求功能,请使用GitHub问题跟踪器。否则,请使用讨论论坛

FAQ

如何测试代码和运行测试套件?

tomsup附带了一个全面的测试套件。为了运行测试,您通常需要克隆存储库并从源代码构建tomsup。这将安装在requirements.txt中定义的所需开发依赖项和测试实用程序。

pip install -r requirements.txt
pip install pytest

python -m pytest

这将运行tomsup/tests文件夹中的所有测试。

可以使用以下命令运行特定测试

python -m pytest tomsup/tests/<DesiredTest>.py

代码覆盖率 如果您想检查代码覆盖率,可以运行以下命令

pip install pytest-cov

python -m pytest--cov=.
tomsup在X上运行吗?

tomssup旨在在所有主要操作系统上运行,包括Windows(最新版本)、MacOS(Catalina)和最新版本的Linux(Ubuntu)。请注意,这些只是tomsup正在积极测试的系统,如果您在类似系统(例如较早版本的Linux)上运行,该包可能也会在那里运行。

文档是如何生成的?

tomsup使用sphinx生成文档。它使用Furo主题和自定义样式。

要创建文档,您可以运行

# install sphinx, themes and extensions
pip install sphinx furo sphinx-copybutton sphinxext-opengraph

# generate html from documentations

make -C docs html

使用此作品

许可证

tomsup是在Apache License, Version 2.0下发布的。

引用

如果您使用此作品,请引用

@article{waade2022introducing,
  title={Introducing tomsup: Theory of mind simulations using Python},
  author={Waade, Peter T and Enevoldsen, Kenneth C and Vermillet, Arnault-Quentin and Simonsen, Arndis and Fusaroli, Riccardo},
  journal={Behavior Research Methods},
  pages={1--35},
  year={2022},
  publisher={Springer}
}

项目详情


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分布

tomsup-1.3.1.tar.gz (40.8 kB 查看哈希值)

上传时间

构建分布

tomsup-1.3.1-py2.py3-none-any.whl (42.4 kB 查看哈希值)

上传时间 Python 2 Python 3

支持者