What is a swarm? A swarm is a group that solves a common problem by emergent behavior. In doing so, swarm participants work together without a central commander, following only their own simple rules. With this behavior, they show advantages in robustness, scalability and adaptability.
Together they are stronger. An individual ant would hardly stand a chance of surviving alone. However, they come together to form ant colonies consisting of thousands or even millions of ants. Each ant in the colony knows exactly what to do, whether it is collecting food, building nests, defending the colony against enemies, or caring for the queens and their offspring. Ants do not need leaders; they follow their own rules. For example, if an ant discovers food, it quickly returns to the nest and brings reinforcements. It leaves a scent trail for others to follow, leading them directly to the source of food.In the world of fish, the swarm is also a successful model: about a quarter of all fish species spend their entire lives in a school. In a school, individual fish are much better protected against predators. When fish move in a school, they follow simple rules: follow the fish next to you, stay close, but not too close.
Use swarms for optimizing technical systems. The concept of swarm intelligence is likely to be adapted in technical systems of various kinds. The increased complexity in our systems asks for a self-organized way to handle individual, interacting components. When selecting a swarm member, the members should be understandable/plausible to enable trust in the proposed solution.
Criteria for swarm members:
- Should be “many”, similar entities
- Have to be able to take decisions
- Must be able to detect (dynamic) data from the (local) environment
- React to information from local neighborhoods
When individuals interact with one another and/or their environment following defined rules, they can display collective behavior that effectively solves complex tasks. Systems engineered with the principles of swarm intelligence typically showcase distinct characteristics, including parallel and distributed processing and control, scalable performance, adaptability to dynamic variations, and resilience to losses and individual component failures.
The self-organized scheduler for the EMDCs in ACES.
In the ACES project, we have exactly the situation that we prefer for engineering a self-organized system: complexity. The foundation of our engineering concept lies in employing swarm agents to represent demand and supply entities. Each incoming microservice/pod shows a demand interest for the resources provided by the EMDC. Thus, they represent the demand swarm agent. Conversely, supply swarm agents are the resources, available from a pool of resources (e.g., CPU cores, GPU cores, RAM and NVM). These agents collaborate within an EMDC environment, orchestrating processes of workload placement.
Decisions are made on two levels: by pods (intra-cluster) and by cluster heads (inter-cluster):
- INTER CLUSTER LEVEL: Pods request/release resources and balance supply/demand by communication with other pods.
- INTRA CLUSTER LEVEL: Cluster heads divert a complete pod to another cluster head.
0 Comments