This is a WIP attempt to create a library for Agent-Based Models simulation using pure Go.
Key interfaces:
Code specifying behaviour of the agent:
type Agent interface {
Run()
}See models/ for examples.
Code describing properies of the world:
type World interface {
Tick() // mark the beginning of the next time period
}See worlds/ for examples of worlds.
Code for representing World with Agents in a visual form:
type UI interface {
Stop()
Loop()
}See ui/ for examples.
See examples/.
MIT