Metadata-Version: 2.1
Name: Dooders
Version: 1.3.0
Summary: Dooders is an open-source research project focused on the 
Home-page: https://github.com/csmangum/Dooders
Download-URL: https://github.com/csmangum/Dooders/archive/refs/tags/v0.3.0.tar.gz
Author: Chris Mangum
Author-email: csmangum@gmail.com
License: MIT
Keywords: Artificial Intelligence,Simulation,AI Agents,Cognitive Agents,Evolutionary Algorithms,Emergent Behavior,Open-Source,Research Project,Digital Environment,Machine Learning,Agent-Based Model,Reinforcement Learning,AI Environment,Causal Control,Energy Consumption,Autonomous Agents,AI Development,Virtual Reality,Simulated Reality,AI Research,Computational Intelligence,Interactive Simulation,AI Evolution,Complex Systems,Life Simulation
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Operating System :: OS Independent
Description-Content-Type: text/markdown
License-File: LICENSE.md
Requires-Dist: fastapi
Requires-Dist: imageio
Requires-Dist: matplotlib
Requires-Dist: networkx
Requires-Dist: pandas
Requires-Dist: Pillow
Requires-Dist: plotly
Requires-Dist: psycopg2-binary
Requires-Dist: pydantic
Requires-Dist: pygame
Requires-Dist: pytest
Requires-Dist: python-dotenv
Requires-Dist: pyyaml
Requires-Dist: scikit-learn
Requires-Dist: scipy
Requires-Dist: tqdm
Requires-Dist: structlog


# Dooders

![dooders logo](./docs/dooder_logo.png)

> Reality works; simulate it.  
  
## Overview

Dooders is an open-source research project focused on the development of artificial intelligent agents in a simulated reality. The project aims to enable the conditions and mechanisms for cognitive agents to evolve and emerge in a digital environment.

A [Dooder](docs/Dooder.md) is an agent object in the simulation with an amount of causal control. It acts in the simulation only as long as it consumes [Energy](https://github.com/csmangum/Dooders/blob/main/docs/Energy.md).

Take a look on how a Dooder will [learn and act](https://github.com/csmangum/Dooders/blob/main/docs/Learning.md), get an overview of the [core components](https://github.com/csmangum/Dooders/blob/main/docs/Core.md) of the library, or read [why I started the project](https://github.com/csmangum/Dooders/blob/main/docs/Why.md).

I will also be documenting experiments in [substack](https://rememberization.substack.com/p/experiment-list). Including the results from my [first experiment](https://rememberization.substack.com/p/experiment-1-single-simulation).

***The code, content, and concepts will change over time as I explore different ideas.***  

***Everything in this repository should be considered unfinished and a work-in-progress***
  
### How to use it

```python
from dooders import Experiment

experiment = Experiment()

experiment.simulate()

experiment.experiment_summary()


# Example output using the default settings
# This simulation ended after 53 cycle when 
# all Dooders died from starvation

{'SimulationID': 'XGZBhzoc8juERXpZjLZMPR',
 'Timestamp': '2023-03-09, 18:20:33',
 'CycleCount': 53,
 'TotalEnergy': 634,
 'ConsumedEnergy': 41,
 'StartingDooderCount': 10,
 'EndingDooderCount': 0,
 'ElapsedSeconds': 0,
 'AverageAge': 14}
```
For more details, see the [Quick Start guide](docs/QuickStart.md).  


