- Designing collective behaviors is cumbersome
- Requires experts for modeling
- Evolutionary computation to generate collective behaviors
$$\frac{dR}{dt} = -aR + vnD , R(0) = R_0$$
$$\frac{dO}{dt} = aR -bO +cE, O(0) = O_0$$
$$\frac{dE}{dt} = q(D)bO - cE, E(0) = E_0$$
$$\frac{dA}{dt} = p(D)bO - mA + wnD$$
$$\frac{dD}{dt} = mA - nD, D(0) = D_0$$
Reference: Stability of choice in the honey bee nest-site selection process
The interaction of hundreds of agents within the framework of distributed grammatical evolution will increase the effectiveness of evolving collective behaviors of bio-swarms. The evolved behaviors can be reused for different collective problems that have similar properties. Furthermore, with a slight variation of the objective function, the same set of primitive behaviors, encoded in the grammar, can lead to collective behaviors over a wider range of collective problems.
Reference: Evolution of collective behaviors for a real swarm of aquatic surface robots
Merits
Demerits
Reference: Evolution of collective behaviors for a real swarm of aquatic surface robots
Reference: GESwarm: Grammatical Evolution for the Automatic Synthesis of Collective Behaviors in Swarm Robotics
Advantages
Disadvantages
Reference: odNEAT: An algorithm for distributed online, onboard evolution of robot behaviours
- A multi-agent Grammatical Evolution
Reference: Behavior Trees for Evolutionary Robotics
BNF Grammar
Population of Genome
Corresponding Phenotype
Grammatical evolution: Evolving programs for an arbitrary language
<code> ::= <code> | <progs>
<progs> ::= <condition> | <prog2> | <prog3> | <op>
<condition> ::= if_food_ahead(<progs>, <progs>)
<prog2> ::= prog2(<progs>, <progs>)
<prog3> ::= prog3(<progs>, <progs>, <progs>)
<op> ::= left | right | move
- Santa Fe Trail
- Represented by tuple \(N, T, P, S\)
RHSRule = \(c\%r_A\)
RHSRule = \(c\%r_A\)
<code> ::= <code> | <progs>
<progs> ::= <condition> | <prog2> | <prog3> | <op>
<condition> ::= if_food_ahead(<progs>, <progs>)
<prog2> ::= prog2(<progs>, <progs>)
<prog3> ::= prog3(<progs>, <progs>, <progs>)
<op> ::= left | right | move
Node | Succeeds | Fails | Running |
---|---|---|---|
Sequence | If all children succeed | If one child fails | If one child returns running |
Selector | If one child succeeds | If all children fail | If one child returns running |
Action | Task completion | Task impossible to complete | Task being computed |
Condition | If true | If false | Never |
Hello! Neighbour!
How are you doing with the phenotype in this environment?
Hello!
I collected 35 oz of water with the phenotype.
Take my genome and perform magic using genetic operators !
The interaction of hundreds of agents within the framework of distributed grammatical evolution will increase the effectiveness of evolving collective behaviors of bio-swarms. The evolved behaviors can be reused for different collective problems that have similar properties. Furthermore, with a slight variation of the objective function, the same set of primitive behaviors, encoded in the grammar, can lead to collective behaviors over a wider range of collective problems.
Claim | Metric |
---|---|
Effectiveness | Quality solutions in fewer generations |
Robustness | Same behavior for both single and multiple foraging problem |
Breadth |
Solutions for Foraging and cooperative transport problem |
Solves the Santa Fe Trail in 324 steps
Single Source Foraging problem
Multiple Source Foraging problem
Cooperative Transport
Nest Maintenance
Claims from thesis | Evidence |
---|---|
Effectiveness | Least number of steps for SantaFe Trail problem. |
Robustness | Transferability of evolved behaviors in foraging problems |
Breadth | Applicability of same BNF grammar for different swarm tasks |
Novelty | Combination of GE with BT |
This work has been funded by ONR grant number N000141613025.