https://medium.com/@monocosmo77/how-multiagent-systems-behave-part1-advanced-machine-learning-1b891a4f71c