Toplevel simulation

From Control Systems Technology Group
Revision as of 12:49, 5 December 2015 by S129520 (talk | contribs)
Jump to navigation Jump to search

Back to: PRE2015_2_Groep1

Top level behavioural algorithm

Outline of the idea for an algorithm, based on the ideas presented in [Liu B Chen P Wang G], [Qi G Song P Li K] and [Nicolis S Detrain C Demolin D Deneubourg J]:

Initially (i.e. when the blackboard is empty): all robots departing from the CZ are assigned a search task (need to implement a good search algorithm)

  • when pile is found by a robot: add the pile to the blackboard (coordinates and pheromones)

When a robot departs from CZ when the blackboard is non-empty:

  • decide (stochastically) whether to search or to forage (based on size of blackboard)
  • if decided to go forage, pick a pile from the blackboard (stochastically based on pheromones)
  • then if pile is picked, if paths are known, pick a path based on pheromones, else (if no paths are known yet): move in the direction of the pile in such a way that if obstacles are encountered a way around them it is found stochastically. Keep track of the path.

When a robot arrives at a pile: update pheromones (if path is kept track of, add path to blackboard) and go to que of pile

At every time step, some pheromone "evaporates" from the blackboard.

n.b. in the dropping the pheromones and in choosing whether to search or to forage, USE aspects come in to play:

  • how much priority should rescuing known victims get over searching for new victims?
  • how much more priority should a pile get if we know it has n victims? (Later to be added to simulation)
  • should nearby piles get priority over harder to reach piles?
  • should only path length matter, or should e.g. safety play a role in dropping path pheromones? (We may add this later, but for now we'll ignore this)