43
Dynamic Allocation in Honey Bee and Internet Server Colonies Sunil Nakrani, Computing Lab., University of Oxford, England, UK Craig Tovey, ISyE, Georgia Institute of Technology, Atlanta, USA

Dynamic Allocation in Honey Bee and Internet Server Colonies Sunil Nakrani, Computing Lab., University of Oxford, England, UK Craig Tovey, ISyE, Georgia

  • View
    216

  • Download
    0

Embed Size (px)

Citation preview

Dynamic Allocation in Honey Bee and Internet

Server Colonies

Sunil Nakrani, Computing Lab., University of Oxford, England, UK

Craig Tovey, ISyE, Georgia Institute of Technology, Atlanta, USA

Natural Systems Research & Education

Honey bee colony foraging (Bartholdi, Seeley, Tovey & VandeVate, J. Th. Bio. 1993); food storing to cue nectar intake (Seeley & Tovey, Animal Beh. 1993)

Dominance hierarchy formation (Chase, Tovey, et al., Proc. Nat. Acad. Sci 2002, Behaviour 2003); natural selection mechanism

Biomimetic heuristic for allocating resources in a web-hosting facility (Nakrani & Tovey, Proc. MASI II, 2003)

Time lags and overdiscounting of environmental costs, hedging value of environmental investments; replacement policies under technological change (Regnier, Sharp & Tovey, IE Trans.)

Assessing systems (Tovey, Ausenda); adjusting GDP for natural systems deterioration

Sustainability intro in sophomore course (2030); topics course on root causes of env. problems and sustainability (4833); stat and design sustainability projects

OR

->

BIO

BIO

->

OR

O

R -

> E

NV

Introduction

Web-Hosting Facility Rationale Benefits

Server Allocation Problem: allocate servers amongst web-apps to maximize revenue

Honey Bee Colony: allocate foragers amongst flower patches to maximize nectar intake

Introduction Approach: Honey Bee Heuristics-waggle

dance Map web-apps to flower patches, servers

to bees Solution Mapping: dance floor--> advert

board Algorithms and Simulation Model Results Conclusions, biological insight Future work

Web-Hosting Facility

Internet

Web-App

Hosting Center

Users

Web-Hosting Model

Benefits: Economy of scale: Resource sharing

means increase in utilization and better availability

Web-App shielded from over-provisioning

Web-Hosting Optimisation

Web-App: pay-per-use Service Level Agreement (SLA)

Hosting Center: Allocate servers among Web-Apps to “maximize” revenue (s.t. changeover downtime)

Users: Unpredictable and highly variable request pattern

Web-Hosting Optimisation Server

Allocation Problem: Allocate servers among web-Apps to “maximize” revenue

Server Allocation Problem Current Techniques: Threshold and Ad-

hoc Rule based, Continuous tracking of load metrics by large operations staff, Manual management Static provisioning altered approx. once a

month Current Literature– Jayram et. al. (2001),

Chase et. al. (2001) Commercial Domain: Proprietary methods

Honey Bee Colony Approx. 20-50

thousand bees in a colony

One queen Few drones Rest workers

Honey Bee Colony

Typically requires 60 lb of honey per year to survive

25% of workers engaged in food collection (nectar, pollen)

Exploit food sources (flower patches) from surrounding countryside

Honey Bee Colony

Flower Patches: Availability varies daily and seasonally; Quality depends on exploitation, flower

type, micro-climate etc.. Round trip time (nectar collection time)

Colony: Exploit flower patches efficiently to satisfy nectar requirement

Forager Allocation Problem Forager

Allocation Problem: Allocate forager bees among flower patches to “Maximize” nectar intake

Problem Mapping Server

Allocation Problem: Single Server Web-Apps + User Group of servers

(cluster) serving users at one web-app

Forager Allocation Problem: Forager Bee Flower Patches Group of foragers

collecting nectar at a specific flower patch

Problem Mapping Server

Allocation Problem: Request service

time depends on Web-App

Find a user to serve

Forager Allocation Problem: Travel Time

depends on Flower Patch

Nectar collection time at the patch

Problem Mapping Server

Allocation Problem: Value-Per-

Request-Served Varying rates of

user request arrivals and balking behaviors

Forager Allocation Problem: Nectar quality

(sugar content) Varying flower

patch density, quality, and replenishment rate

Problem Mapping Server

Allocation Problem: Server Migration

Time (purge current Web-App and load new Web-App)

Forager Allocation Problem: Time to learn the

location of the flower patch and successful discovery (Seeley, T.D.)

Forager Allocation Mechanism Active foragers

return to the hive with nectar and profitability rating of the visited flower patch

Interact with food-storer bees to offload nectar (waiting time provides feedback on nectar flow into the hive)

Forager Allocation Mechanism: Feedback sets

threshold for enlisting signal (Waggle Dance)

Profitability + signal threshold = Waggle dance duration

Forager Allocation Mechanism: Waggle dance

performed just inside the hive entrance (Dance floor)

foragers follow dance to learn flower patch location

Suboptimal allocation in static sense

fi(xi) ´ return from xi bees at patch i Max i fi(xi)

s.t. xi ¸ 0i xi · N

OPTIMUM fi

0(xi) = 8 i2 A xi = 0 8 i A equalize marginal

return at active patches

BEE HEURISTIC fi(xi)/xi = 8 i2 A xi = 0 8 i A equalize average

return at active patches

Properties of Heuristic Solution(from BSTV 93)

Usually not optimalFactor-2 approximation even under

very weak conditionsConvergence proved by potential

function argumentValidated experimentally in a honey

bee colony

Solution Mapping Server

Allocation Advert Advert Board Advert Duration Reading an Advert

Forager Allocation Waggle Dance Dance Floor Dance Duration Following Waggle

Dance

Simulation Model: Honey Bee

Advert Board

Post/Read Adverts

Post/Read Adverts

MigrateRepurpose

Web-App: B

Web-App: A

Web-App IDDuration Time

Web-App IDDuration Time

Users: A

Users: B

Simulation Model: Greedy

Users: A

Users: B

MigrateRepurpose

Web-App: B

Web-App: A

Compute optimal policyfor next interval based on present queue status, present allocation, and user arrival from lastinterval

New Policy

New Policy

Simulation Model: Greedy

St = state of world at start period t (customers,servers)

At = arrivals (times, types) in period tP(, S, A) = profit using from state S

with arrivals Af(,S,A) = next state of world using

from S with arrivals At

G = arg max P(, St, At-1)

St+1 = f(tG, St, At)

Simulation Model: Others

Users: A

Users: B

MigrateRepurpose

Web-App: B

Web-App: A

Offline OmniscientComputation

New Policy

New Policy

Simulation Model: Omniscient Optimum

S=state, A=arrival, P( )=profit, f( )=next state

A1,, An known

vn+1(Sn+1) = 0 (no salvage value)

vt (St) = max{P(,St,At) + vt+1(f(,St,At))}

tOpt(St) = arg max {P(,St,At) + vt+1(f(,St,At))}

Omniscient Optimum Computation

Parallel implementation runs in 24 hours

Discretized space of possible states Inner loop function that we maximize

is theoretically concave … … but not concave numerically

Simulation Model: Optimal-Static

S=state, A=arrival, P( )=profit, f( )=next state

A1,, An known

s.t. St+1 = f(, St, At)

Test Case: Synthetic User Load

Test Case: Real Internet Trace

Result: Synthetic User Load

02468

1012

Reve

nue

(100K)

2Web-App

3Web-App

Facility configuration

Relative PerformanceOmni.HoneyGreedyOpt-Stat

Result: Internet Service Trace Load

02468

101214

Revenue (

100K

)

2 Web-App

3 Web-App

Facility Configuration

Relative Performance Omni.HoneyGreedyOpt-Stat

Adaptability to Synthetic Variable Load

0

0.2

0.4

0.6

0.8

1

Norm

alise

d P

erf

.

(1:1) (10:1) (15:1) (25:1) (30:1)

HTTP Request Variability

Performance(3 Web-sites)

Omni.HoneyGreedyOpt-Stat

Synthetic Load: Low Variability

0

0.2

0.4

0.6

0.8

1

Norm

alise

d

Perf

.

(2:1

)

(3:1

)

(4:1

)

(5:1

)

(6:1

)

(7:1

)

(8:1

)HTTP Request Variability

Performance(3 Web-sites)

Omni.HoneyGreedyOpt-Stat

Conclusions

Bee heuristic: works well, effective in highly dynamic environment

Competitive against standard heuristics

Bee heuristic: Not tuned, Common sense scaling parameters used

Conclusions

Trade-off static optimality for responsiveness Static optimization requires equalization

of derivatives (marginal rate bee) Bee heuristic has no marginal “bee”

but, instead, has ability to migrate several “bees” at the same time and avoids problem of measuring f’ under variability

Conclusions

Patch I Patch II

900

899

500

501

Nectar intake increases if:

Future Work

Test to see if we were lucky or robust Scale up to more patches/web-apps Make autonomic --more feedback loops Power … imitate indolent bees? Convergence rates Compare with IBM’s online network

algorithm

Some other interesting stuff Dominance hierarchies: first

experimental validation of a self-organizing social structure in animals (Chase, Tovey, Martin & Manfredonia 02)

Time lags of environmental costs: mean 10 years vs. mean 5 years for other types. (Regnier & Tovey)

Opportunities for Sr. Design sustainability projects

Some Big OR Questions in Natural Systems

Individual versus group selection: classic argument against latter is essentially an OR proof, but why do forests thrive?

Discounting and EPV, intergenerational equity and intraperiod utility. Relationship to future growth? Intraperiod utility and discounting is almost equivalent to linear utility, Sobel 2000