Emergence of Collective Behaviors in Hub-Based Colonies using Grammatical Evolution
Aadesh Neupane
Problem
- Design collective behaviors is cumbersome
- Requires experts for modeling
Solution
- 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
Presentation Structure
- Thesis Statement
- Related Work
- Evolutionary Robotics
- Neural Nets
- Distributed Evolution
- Grammatical Evolution
- Genotype
- Santa Fe Trail
- Mapping
- Evolutionary Robotics
- GEESE
- Validation
- Effectiveness
- Robustness
- Breadth
Thesis Statement
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.
Related Work - Evolutionary Robotics
Reference: Evolution of collective behaviors for a real swarm of aquatic surface robots
- Swarm behaviors like homing, dispersion, clustering and monitoring by Duarte et. at
- Validation of scalability, flexibility, and robustness on transferred controller
Neural Network based controllers
Merits
- Easy mapping from sensory inputs into actuators values
- Provides generalized solutions
- Only a few human inputs needed
Demerits
- Issues with reverse engineering
- Insights on collective behavior difficult
- Almost impossible to modify the behaviors
Related Work - Evolutionary Robotics
Reference: Evolution of collective behaviors for a real swarm of aquatic surface robots
Neural Network based controllers
Related Work - Evolutionary Robotics
Reference: GESwarm: Grammatical Evolution for the Automatic Synthesis of Collective Behaviors in Swarm Robotics
- Foraging problem using GE by Ferrante et. al.
- Preconditions, low-level behavior and actions gave behaviors
Grammatical Evolution (GE) based controllers
Advantages
Disadvantages
- BNF grammar and objective function
- Analyzing and modifying collective behaviors easier
- Primitive low-level rules defined by experts
- Mapping to raw sensors and actuators values difficult
Related Work - Distributed Evolution
Reference: odNEAT: An algorithm for distributed online, onboard evolution of robot behaviours
odNEAT
- Online distributed evolution of Neural networks
- Applicable for online learning in groups of embodied agents (robots)
- Performs well in aggregation task
Combination of best features from all these works?
- An online distributed Grammatical Evolution
Related Work - Grammatical Evolution
BNF Grammar
Population of Genome
Corresponding Phenotype
![](https://s3.amazonaws.com/media-p.slid.es/uploads/658435/images/4595592/GE_overall.png)
Grammatical evolution: Evolving programs for an arbitrary language
Grammatical Evolution
BNF Grammar
<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\)
- N -> Set of all non-terminals
- T -> Set of all terminals
- P -> Set of productions that map \(N\) to \(T\)
- S -> Initial start symbol
Grammatical Evolution
Santa Fe Trail
![](https://s3.amazonaws.com/media-p.slid.es/uploads/658435/images/4595658/SantaFeTrail.gif)
- Objective
- Find all food using maximum of 600 moves
- 32 x 32 cells
- Optimal trail
- 144 cells
- 89 food
- 55 gaps
- Actions :
- Left
- Right
- Forward
Grammatical Evolution
Genome/ Genotype / Individual
![](https://s3.amazonaws.com/media-p.slid.es/uploads/658435/images/4595646/genome.png)
- Defines the proceedings of left-derivation
- \({Codon}\) is a group of symbols, usually 4 or 8.
Grammatical Evolution - BNF Grammar
Mapping
- Let \(c\) be codon integer
- \(A\) denotes the left-most non-terminal in the derivation
- \(r_A\) denotes the number of right-hand side rules associated with the production of \(A\)
-
RHSRule = \(c\%r_A\)
Phenotype
- The output from the mapping process is the phenotype
- The phenotype represents a valid expansion of the BNF grammar
- \(if\_food\_ahead(move, left)\)
Example of Grammatical Evolution
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
![](https://s3.amazonaws.com/media-p.slid.es/uploads/658435/images/4596848/genome_value.png)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/658435/images/4596850/table.png)
Grammatical Evolution
GE Pipeline
![](https://s3.amazonaws.com/media-p.slid.es/uploads/658435/images/4597842/GE.png)
GEESE
![](https://s3.amazonaws.com/media-p.slid.es/uploads/658435/images/4596860/robot_genome_2.png)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/658435/images/4596862/robot_genome.png)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/658435/images/4596864/robot_genome_1.png)
GEESE
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 !
GEESE Pipeline
![](https://s3.amazonaws.com/media-p.slid.es/uploads/658435/images/4597925/geese.png)
Swarm Behaviors
- Primitive Behaviors
- Function that maps the set of sensor values to actuator commands
- Behaviors as state-machine or behavior trees
- Examples
- GO_TO_HUB
- FOLLOW_LIGHT
- SEND_SIGNAL
Thesis Statement
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.
Validation
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 |
Validation
![](https://s3.amazonaws.com/media-p.slid.es/uploads/658435/images/4597929/box_plot_standard.png)
Effectiveness
Validation
Robustness
![](https://s3.amazonaws.com/media-p.slid.es/uploads/658435/images/4597958/environment.png)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/658435/images/4597958/environment.png)
Evolved BT
Single Source Foraging problem
Multiple Source Foraging problem
Validation
Breadth
![](https://s3.amazonaws.com/media-p.slid.es/uploads/658435/images/4597958/environment.png)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/658435/images/4597977/ill_fourmis_4_ret.jpg)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/658435/images/4597981/grammar_swarm.png)
Swarm BNF Grammar
Foraging problem
Cooperative Transport problem
Acknowledgement
This work has been funded by ONR grant number N000141613025.
Thank You!
proposal-thesis
By Aadesh Neupane
proposal-thesis
Thesis proposal
- 502