OPTIMAL PHEROMONE UTILIZATION Roman Kecher Joint work with: Yehuda Afek and Moshe Sulamy Tel-Aviv...

Post on 23-Dec-2015

222 views 0 download

Transcript of OPTIMAL PHEROMONE UTILIZATION Roman Kecher Joint work with: Yehuda Afek and Moshe Sulamy Tel-Aviv...

OPTIMAL PHEROMONE UTILIZATION

Roman KecherJoint work with: Yehuda Afek and Moshe Sulamy

Tel-Aviv University

Ants Nearby Treasure Search

● Infinite grid● k ants

● Initially at the origin● Food at distance D

● Ants have to findthe food

● Optimal run-time: Ω(D + D2/k)[Feinerman, Korman, Lotker, Sereni, 2012]

W E

N

S

D

k (0,0)

Pheromones

● Ants emit pheromones[Lenzen, Radeva, 2013]

● Or not● And sense them

● No other communication

● Biological resource● Goal: minimize

pheromone count

W E

N

S

Ground Rules

● Every ant runs same algorithm (locally)● With same initial state

● Only uniform algorithms,ants have no knowledge of:

● k, total number of ants● D, distance to the food

Synchronous Model

● Rounds:all ants move onceper round

W E

N

S

Synchronous Model

● Rounds:all ants move onceper round

● Assumption: antemission scheme[Emek, Langner, Uitto, Wattenhofer, 2013]

● At most one ant isemitted in each round

W E

N

S

Asynchronous Model

W E

N

S

● Adversary repeatedlyschedules one ant

● Test&Set:● Sense and emit a

pheromone is oneatomic step

● Definition of Rounds:● Round ends when every

ant took at least one step● Only for (time) complexity

Ants Models

● FSM: Finite State MachinesConstant size memory

● TM: Turing MachinesUnlimited memory

● Both deterministic

Results

Lower Bound Algorithm

FSM(Deterministic)

TM(Deterministic)

Previously known: O(D2) pheromones [Lenzen, Radeva, 2013]

Results

Lower Bound Algorithm

FSM(Deterministic)

Ω(D) pheromonesto find the food

O(D) pheromonesO(D + D2/k) time

TM(Deterministic)

Previously known: O(D2) pheromones [Lenzen, Radeva, 2013]

Results

Lower Bound Algorithm

FSM(Deterministic)

Ω(D) pheromonesto find the food

O(D) pheromonesO(D + D2/k) time

TM(Deterministic)

Results hold for Synchronous and Asynchronous models

Previously known: O(D2) pheromones [Lenzen, Radeva, 2013]

Layers

● Definition: layer L● All grid cells at

distance L from origin

W E

N

S

L

W E

N

FSM Need Ω(D) Pheromones

● Assume FSM withS states

● Uses o(D) pheromones

● S+1 consecutivepheromone-free layers exist

● Path starts and ends in same state

● Infinite loopS

FSM Algorithms

W E

N

S

● Problem:FSM can’t count

● Solution:Use pheromonesas turning points

● Similar to the idea of guides[Emek, Langner, Uitto, Wattenhofer, 2013]

Asynchronous FSM Algorithm

W E

N

S

● Mark E, S, W, N

● Explore from N● N never longer

than E, S or W

● Test&Set preventsmultiple ants fromexploring same layer

Synchronous FSM Algorithm

W E

N

S

● Emission schemebreaks initialsymmetry

● But what happensif two ants collide?

● Veteran ants behavedifferently thanNewbie ants

VeteranNewbie

Results

Lower Bound Algorithm

FSM(Deterministic)

Ω(D) pheromonesto find the food

O(D) pheromonesO(D + D2/k) time

TM(Deterministic)

Results hold for Synchronous and Asynchronous models

Previously known: O(D2) pheromones [Lenzen, Radeva, 2013]

Results

Lower Bound Algorithm

FSM(Deterministic)

Ω(D) pheromonesto find the food

O(D) pheromonesO(D + D2/k) time

TM(Deterministic)

Ω(k) pheromonesfor optimal run time

O(k) pheromonesO(D + D2/k) time

Results hold for Synchronous and Asynchronous models

Previously known: O(D2) pheromones [Lenzen, Radeva, 2013]

Async TM Need Ω(k) Pheromones

W E

N

S

● Assume oneant does not emitpheromones

Async TM Need Ω(k) Pheromones

W E

N

S

● Assume oneant does not emitpheromones

● Consider samescheduling butwith extra ants

● All new ants followthat one ant

● Runtime remains thesame (but more ants)

Sync TM Need Ω(k) Pheromones

W E

N

S

● Emit one ant● Until all pheromones

are placed● Emit second ant

● Until all pheromonesare placed

● Continue● Delay is constant

● If no new pheromonesare placed, all followingants behave the same

Asynchronous TM Algorithm

W E

N

S

● TM can count!● Use pheromones

to assign IDs to ants

● Static partition● Explore layers

L = ID (mod Total)● Occasionally update

estimated Total

● Also works for thesynchronous model

ID = 1

ID = 2

1

2

1

11

1

1

1

1

22 22

2 22 22

2

2

2

2

2

2

11 1 11 1 1

11 1 11 1 1

1

1

1

1

1

1

1

1

1

1

2 22 22 22 22

2 22 22 22 22

2

2

2

2

2

2

2

2

2

2

2

2

2

2

Thanks

Questions?