Skip to main content

An Agent Based Modelling Engine tailored for Reinforcement Learning.

Project description

Build Status Coverage Status License: GPL v3

Designed and developed by Sever Topan

Features

Engine

At its core, AdjSim is an agent-based modelling engine. It allows users to define simulation environments through which agents interact through ability casting and timestep iteration. The framework is targeted towards agents that behave intelligently, for example a bacterium chasing down food. However, the framework is extremely flexible - from enabling physics simulation to defining an environment in which Conway’s Game of Life plays out! AdjSim aims to be a foundational architecture on top of which reinforcement learning can be built.

Graphical Simulation Representation

The simulation can be viewed in real time as it unfolds, with graphics are rendered and animated using PyQt5. Below are four of the distinct examples packadged with AdjSim, ranging from bacteria to moon system simulation.

Bacteria Demo

Predator Prey Demo

GOL Demo

Jupiter Demo

Post Simulation Analysis Tools

Agent properties can be marked for tracking during simulation, allowing for viewing the results of these values once the simulation completes. For example, we can track the population of each different type of agent, or the efficacy of the agent’s ability to meet its intelligence module-defined goals.

| QLearning Graph| Predator Prey Graph | |:————-:|:————-:|

Intelligence Module

Perhaps the most computationally interesting aspect of AdjSim lies in its intelligence module. It allows agents to set goals (for example, the goal of a bacterium may be to maximize its calories), and assess its actions in terms of its ability to meet its goals. This allows the agents to learn which actions are best used in a given situation. Currently the intelligence module implements Q-Learning, but more advanced reinforcement learning techniques are coming soon!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

adjsim-2.1.0.tar.gz (24.6 kB view details)

Uploaded Source

Built Distribution

adjsim-2.1.0-py3-none-any.whl (25.9 kB view details)

Uploaded Python 3

File details

Details for the file adjsim-2.1.0.tar.gz.

File metadata

  • Download URL: adjsim-2.1.0.tar.gz
  • Upload date:
  • Size: 24.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for adjsim-2.1.0.tar.gz
Algorithm Hash digest
SHA256 f11f96c8ed88bfa0ddaca8fe16a097270320a70bb9fbdde109a5b9c22da18597
MD5 3d54a83792b6859b7a25b9911c70e82e
BLAKE2b-256 b61daf6fc35e501d332392effa84c31a1f3eb5a6d353eb1af5644a5aaf4c7ab6

See more details on using hashes here.

File details

Details for the file adjsim-2.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for adjsim-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b205e3de6f5af6f39432dcb237f84342bfeeeab37b244343a787a938d84858a5
MD5 6098dfebd1a17e06fec0d1a67cf77337
BLAKE2b-256 758252d1692063925c649376ea35f7ab2f1913dccd616b2291086f5e628bef0f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page