EwoutH / World-model-prototype

A quick and dirty prototype to discover the processes and technical challenges of building and ABM world model.
GNU Lesser General Public License v2.1
1 stars 1 forks source link

Database and structure of agents and their states #5

Open EwoutH opened 9 months ago

EwoutH commented 9 months ago

As I experiment more with behaviours, it seems we need some kind of database of states. Especially if you want to insert an object (agent), that will have some internal properties and states. Those sometimes need to be read and sometimes be updated by an agent (related to #4).

Therefore, we might need some central database of states, which have at least a:

Maybe more.

They also need to be split out between agent states and model states. Also, we might have high-level categories of agents, like Human, (other) Animal, AI, etc.). Should an state always mean the same thing for all agents, or is it allowed to differ between them? (my current guess would be: Have a default for all agents, which can be changed for certain categories).

The big question is how are we properly going to maintain all that, link it to behaviours, etc.

Is this just going to be a giant list? Dictionary? Some more advanced structure?

EwoutH commented 9 months ago

By using Mixin in #4 we might not directly need this as a formal, implemented construct. However, it might be good to implement it anyway, since if we don't, it can accidentally happen that two behaviors modify the same state, both think it means something different.