8
1 Distributed Resource Allocation via Local Strategies presentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas Distributed Resource Allocation via Local Strategies BT Exact & Goldsmiths College, University of London Dr. Marian Ursu & Dr. Botond Virginas Distributed Resource Allocation via Local Strategies presentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas Collaborator formulate as single optimisation problem and employ iOpt formulate as multiple optimisation problem and attempt to extend iOpt for this formulation formulate as multiple optimisation problem and develop own optimisation algorithm formulate as trading problem and develop own trading algorithms not considered Distributed Resource Allocation via Local Strategies presentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas outline part #1: reiterate basic principles part #2: prototype solution: design and implementation part #3: prototype solution: results and analysis part #4: general directions for further work Distributed Resource Allocation via Local Strategies presentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas part #1 basic principles Distributed Resource Allocation via Local Strategies presentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas location B location C location H location Y location Z formulation as a trading problem shortages agent surpluses agent location A GUI GUI local manager configuration control beginning of process during process Distributed Resource Allocation via Local Strategies presentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas results may be portable to other areas, outside ‘resource allocation’ more flexible : provides better means for controlling local behaviour resource allocation via agents and local strategies more accurate representation of the “real life” system natural formulation for distributed computations motivation does not mean it will achieve better performance gives local managers a better sense of control and thus its prospects of acceptance/success are higher possible increase in efficiency over other solutions travelling planning problem – “hot” research area (Chris)

presentation for the web - Goldsmiths, University of Londonmas01mu/presentations/distarms.pdf · 2 Distributed Resource Allocation via Local Strategies presentation by Marian Ursu,

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: presentation for the web - Goldsmiths, University of Londonmas01mu/presentations/distarms.pdf · 2 Distributed Resource Allocation via Local Strategies presentation by Marian Ursu,

1

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

Distributed Resource Allocation via Local Strategies

BT Exact & Goldsmiths College, University of LondonDr. Marian Ursu & Dr. Botond Virginas

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

Collaborator

formulate as single optimisationproblem and employ iOpt formulate as multiple

optimisation problem and attempt to extend iOpt for this formulation

formulate as multiple optimisation problem and develop own optimisation algorithm

formulate as trading problem and develop own trading algorithms

not considered

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

outline

• part #1: reiterate basic principles• part #2: prototype solution: design and implementation• part #3: prototype solution: results and analysis• part #4: general directions for further work

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

part #1basic principles

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

location Blocation C

location H

location Y location Z

formulation as a trading problem

shortages agent

surpluses agent

location A

GUI

GUI

local manager

configuration

control

beginning of process

during process

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

results may be portable to other areas, outside ‘resource allocation’

more flexible : provides better means for controlling local behaviour

resource allocation via agents and local strategies

more accurate representation of the “real life” system

natural formulation for distributed computations

motivation

does not mean it will achieve better performance

gives local managers a better sense of control and thus its prospects of acceptance/success are higher

possible increase in efficiency over other solutions

travelling planning problem – “hot” research area (Chris)

Page 2: presentation for the web - Goldsmiths, University of Londonmas01mu/presentations/distarms.pdf · 2 Distributed Resource Allocation via Local Strategies presentation by Marian Ursu,

2

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

basic design : 4 step communication protocol

• [shortages] local choices; broadcast requests (not binding) • [surpluses] local choices; reply with offers (not binding)• [shortages] local choices; reply with contract proposal (binding)• [surpluses] local choices; reply with agreed contracts (binding)

shortages agent

location X

surpluses agent

location Y

• simple but versatile process; many extensions possible:• surpluses have initiative; bidding; more steps in

communication protocol … (discuss later)

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

part #2prototype solution — design and implementation

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

data model — assumptions

• a jobs-agent holds a number of jobs that have to be carried out at a particular site

• each job has the duration of one day• a job is characterised by an id a required skill and a day when it is

required• a shortage is a job to which the requesting job-agent and its location

are associated• an engineers-agent holds a number of engineers and the days when

they are idle• an engineer has an id and a set of skills• a surplus is an engineer with an attached day when he is idle and the

jobs agent to which he is assigned

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

sam

ple

data

SURPLUSES Skills

Engineers Agent Location Engineer Id Skills Day 1 Job Day 2 Job Day 3 Job 1 2 3 4 5 6 7 1 5 e1 1, 2 e2 1, 2 e3 2, 3, 4, 5 2 6 e4 2, 3 e5 1, 2 e6 5 3 7 e7 5, 6 e8 6, 7

SHORTAGES

Jobs Agent Location Job Id Skill Day 1 Eng Day 2 Eng Day 3 Eng 1 1 job1 1 job2 2 job3 5 job4 3 job5 4 2 2 job6 4 job7 5 job8 5 job9 1 job10 2 3 3 job11 1 job12 2 job13 1 job14 3 job15 5

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

implementation

• technology: Java’s BEA Web-Logic Business Platform• employ one topic for all messaging• synchronisation required for the implementation of the 4 step

communication protocol• via one monitor (agent) and messaging

• “extra” 2 steps implemented • reporting• reset of iteration-variables (implementation motivated)

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

basic algorithm — step 0 — launch

Master start broadcasting

_JobsAn

_JobsA1

TOPIC

‘broadcast’ can start

Monitor start broadcasting

Page 3: presentation for the web - Goldsmiths, University of Londonmas01mu/presentations/distarms.pdf · 2 Distributed Resource Allocation via Local Strategies presentation by Marian Ursu,

3

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

basic algorithm — step 1

• jobs agents broadcast requests for jobs to engineers agents• all local shortages are broadcast to all engineers agents

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

step 1 — broadcast requests for jobs

_JobsAn

Monitor

_JobsA1

source skill day

JA1 S1 1

JA1 S2 1

JAn S3 1

JA1 S2 2

JAn S4 5

broadcasting complete

_EngsAm

_EngsA1

TOPIC

‘compileAndSendOffers’ can start

‘compileAndSendOffers’ can start

JA1 finished broadcast

JAn finished broadcast

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

basic algorithm — step 2

• engineers agents compile and respond with offers for jobs• the offers for each jobs agent are compiled independently from the

others• the offers for each day are compiled independently from the

others• the algorithm for compiling offers is “first found first served”• offers are non-binding

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

step 2 — send offers

_EngsAm

Monitor

_EngsA1

to skill day

JA1 S1 1

JA3 S2 1 JA1 S3 1

JA6 S2 2

_JobsAn

_JobsA1

TOPIC

‘selectAndSendProposals’ can start

‘selectAndSendProposals’ can start

from

EA1

EA1

EAm

EA1

JAn S4 5 EAm

offering complete complete

EA1 finished offers

EAm finished offers

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

basic algorithm — step 3

• jobs agents select offers and send contract proposals• selection:

• if more than one offers are made for one job, select the one from the nearest location

• if more than one job are similarly near, select the first one (yet again, “first found first served”)

• if a single offer is made for one job, select it• contract proposals are binding

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

step 3 — send contract proposals

_JobsAn

Monitor

_JobsA1

to skill day

EA4 S1 1

EA1 S2 1 EAm S3 1

EA7 S2 2

_EngsAm

_EngsA1

TOPIC

‘selectAndSendContracts’ can start

‘selectAndSendContracts’ can start

from

JA1

JA1

JAn

JA1

EA2 S4 5 JAn

proposals complete complete complete

JA1 finished proposals

JAm finished proposals

Page 4: presentation for the web - Goldsmiths, University of Londonmas01mu/presentations/distarms.pdf · 2 Distributed Resource Allocation via Local Strategies presentation by Marian Ursu,

4

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

basic algorithm — step 4

• engineers agents select contract proposals and sendcontracts• selection:

• if more than one contact proposals are made for one surplus (engineer-day), select the one from the nearest location

• if more than one propsal are similarly near, select the first one (yet again, “first found first served”)

• if a single contract proposals is made for one surplus, select it• contracts are binding

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

step 4 — send contracts (endorse proposals)

_EngsAm

Monitor

_EngsA1

to skill day

LA S2 1

LZ S3 1

LQ S2 2

_JobsAn

_JobsA1

TOPIC

next iteration

from

L1

LX

L2

start broadcasting complete

EA1 finished offers

EAm finished offers next iteration

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

overall design

EngsAcollectAndFilterRequestscompileAndSendOfferscollectAndFilterProposalssetAndSendContracts

JobsAbroadcastJobscollectandFilterOfferscompileAndSendProposalsreceiveContracts

MonitorlaunchBroadcastingcheckFinishedBroadcastingcheckFinishedSendingOfferscheckFinishedSendingProposalscheckFinishedSendingContractsallocationStepCompleted

for other details refer to the source code

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

part #3prototype solution — results and analysis

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

user interface

• data inputted directly in the source code (‘Master.java’)• results reported both to the standard output and to files• data imported from files to Excell• visualisation – “by hand”• for a prototype, this was the simplest solution

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

dist

AR

MS

_v.9

—da

tase

t #1

—1

itera

tion

1 2 3 4 5 6

1

2

3

4

5

6

7

8

9

7 8 9

�������� ����

�������� ����

� ������� ���� �������� ����

� �����������

�������� ����

LO C AT IO N S

Page 5: presentation for the web - Goldsmiths, University of Londonmas01mu/presentations/distarms.pdf · 2 Distributed Resource Allocation via Local Strategies presentation by Marian Ursu,

5

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

distARMS_v.9 — dataset #1 — 1 iteration

S U RP L US E S D ay-w hen-id le is hashed S k il ls

E n gin eers Agen t L ocation E ng ineer Id S k ills D ay 1 Jo b D ay 2 Jo b D ay 3 Job 1 2 3 4 5 6 7 1 5 e1 1 , 2 job11 e2 1 , 2 job12 e3 2 , 3, 4 , 5 job6 job14 2 6 e4 2 , 3 job2 e5 1 , 2 job1 e6 5 job15 3 7 e7 5 , 6 job3 e8 6 , 7

S H O R TAG E S

Job s Ag en t L ocation Job Id S k ill D ay 1 Job sA D ay 2 Job sA D ay 3 Jo bsA 1 1 job1 1 e5 job2 2 e4 job3 5 e7 job4 3 job5 4 2 2 job6 4 e3 job7 5 job8 5 job9 1 job10 2 3 3 job11 1 e1 job12 2 e2 job13 1 job14 3 e3 job15 5 e6

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

dist

AR

MS

_v.9

—da

tase

t #2

—1

itera

tion

1 2 3 4 5 6

1

2

3

4

5

6

7

8

9

7 8 9

� �� �� �� � ����

� �� ����� ����

�������� ����

� �� ����� ���� �������� ����

�������� ����

�������� ����

LO C A T IO N S

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

SURPLUSES Day-when-idle is hashed Skills

Engineers Agent Location Engineer Id Skills Day 1 Job Day 2 Job Day 3 Job Day 4 Job Day 5 Job 1 2 3 4 5 1 5 e1 1, 2, 4 job10 job4 job20 e2 1, 2 job11 job5 e3 4, 5 job12 job14 2 6 e4 1, 3 job13 e5 2, 3 e6 2, 3 3 7 e7 2, 3 job22 job24 e8 2, 3 job25

distARMS_v.9 — dataset #2 — 1 iteration

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

distARMS_v.9 — dataset #2 — 1 iteration

SHORTAGES

Jobs Agent Location Job Id Skill Day 1 Eng Day 2 Eng Day 3 Eng Day 4 Eng Day 5 Eng 1 1 job1 1 e1 job2 2 job3 5 job4 1 e1 job5 2 e2 job6 1 job7 5 job8 3 job9 3 2 2 job10 1 job11 2 e2 job12 5 e3 job13 1 e4 job14 5 e3 job15 5 job16 5 job17 3 3 3 job18 3 job19 5 job20 2 e1 job21 4 4 4 job22 3 e7 job23 5 job24 2 e7 job25 3 e8

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

1 2 3 4 5 6

1

2

3

4

5

6

7

8

9

7 8 9

������������

������������

������������

������������ ������������

������������

������������

s1, s2, s4

s1, s2 s4, s5

s1

s2

s5

s1

s5

s2

DAY1

dist

AR

MS

_v.9

—da

tase

t #2

—1

itera

tion the offer for s1 (J2)

from E1 was made via the eng {s1, s2, s4}

(the same as for J1); this is why the eng

{s1, s2} was assigned to s2 in J2

in one run of the program, the eng {s1, s2, s4} was assigned to J1 (see above) and in another run to J2

(still for s1); the behaviour of the

program is “non-deterministic”

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

1 2 3 4 5 6

1

2

3

4

5

6

7

8

9

7 8 9

������������

������������

������������

������������ ������������

������������

������������

s1, s2, s4

s1, s2 s3

s5

s1, s3

s2, s3

s2, s3 s2, s3 s2, s3 s3

s2

s4

s2 s3

DAY5

dist

AR

MS

_v.9

—da

tase

t #2

—1

itera

tion

an example of a bad allocation

this is due to the “first found first served” algorithm

eng {s1, s2, s4} is the one to be offered to J3 for s2 and thus s4(J3) remains uncovered; both jobs would have been covered if {s1, s2} had been offered for s2(J3)

Page 6: presentation for the web - Goldsmiths, University of Londonmas01mu/presentations/distarms.pdf · 2 Distributed Resource Allocation via Local Strategies presentation by Marian Ursu,

6

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

distARMS_v.11 — dataset #2 — 3 iterations

SURPLUSES Day-when-iddle | Allocation (iteration) Skills

Engineers Agent Location Engineer Id Skills Day 1 Job Day 2 Job Day 3 Job Day 4 Job Day 5 Job 1 2 3 4 5

1 5 e1 1, 2, 4 •••••••••••• j1(1) •••••••••••• j4(1) •••••••••••• j20(1)

e2 1, 2 •••••••• j2(1) •••••••• j5(1) ••••••••

e3 4, 5 •••••••• j12(1) •••••••• •••••••• j14(1)

2 6 e4 1, 3 •••••••• j13(1) •••••••• j8(3) •••••••• j17(2)

e5 2, 3 •••••••• •••••••• j9(3)

e6 2, 3 •••••••• ••••••••

3 7 e7 2, 3 •••••••• j22(1) •••••••• j24(1)

e8 2, 3 •••••••• j18(2) •••••••• j25(1)

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

distARMS_v.11 — dataset #2 — 3 iterations

SHORTAGES

Jobs Agent Location Job Id Skill Day 1 Eng Day 2 Eng Day 3 Eng Day 4 Eng Day 5 Eng

1 1 job1 1 e1(1) job2 2 e2(1) job3 5 job4 1 e1(1) job5 2 e2(1) job6 1 job7 5 job8 3 e4(3)

job9 3 e5(3) 2 2 job10 1 job11 2 job12 5 e3(1)

job13 1 e4(1) job14 5 e3(1) job15 5 job16 5

job17 3 e4(2) 3 3 job18 3 e8(2) job19 5 job20 2 e1(1)

job21 4 4 4 job22 3 e7(1) job23 5 job24 2 e7(1)

job25 3 e8(1)

the

algo

rithm

con

verg

esan

d te

rmin

ates

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

distARMS_v.11 — datasets #3 and #4

• 5 runs are exemplified• non-deterministic behaviour due to:

• technology• small alterations to program, but which did not alter at all the

algorithm and the data structures employed• e.g., changes to a “System.out.println” statement

• changes to data structures (but not to the “arrangement” of data)• e.g., use of vector instead of array, but preserved the order of the

elements

• good performance in terms of convergence • even with this simple algorithm!

• run takes less than 1 minute; terminates in 2 iterations

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

1 2 3 4 5 6

1

2

3

4

5

6

7

8

9

7 8 9

10

12

11

10 11 12

1

2

3

4

5

6

7

8

9

10 11

12

13

2 ��������

3 ��������

1 ��������

4 ��������

5 �������� 7 ��������

6 ��������

8 ��������

9 ��������

11 ��������

12 �������� 10 ��������

13 ��������

14 ��������

18 ��������

17 ��������

15 ��������

16 ��������

20 ��������

19 �������� 21 ��������

22 ��������

23 ��������

1

2

3

4

5

6

dist

AR

MS

_v.1

1 —

data

set #

3 —

1 ite

ratio

n —

run#

1

drawback:e13 should have been allocated to JA6 (purple), because it is nearerexplanation:- EA2 made offer (e8 or e9) for the same job of JA6(purple) for which EA4 made the offer (via e13);- JA6 chose an engineer from EA2 (although EA2 and EA4 are at the same distance, the offer from EA2must have arrived first);- in next step EA2 chose the proposals made by JA2solution- make offers for skills not for jobs- the drawback would have still remained if EA2 would have made offers for both purple jobs

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

dist

AR

MS

_v.1

1 —

data

set #

3 —

1 ite

ratio

n —

run#

2

1 2 3 4 5 6

1

2

3

4

5

6

7

8

9

7 8 9

10

12

11

10 11 12

1

2

3

4

5

6

7

8

9

10 11

12

13

2 ��������

3 ��������

1 ��������

4 ��������

5 �������� 7 ��������

6 ��������

8 ��������

9 ��������

11 ��������

12 �������� 10 ��������

13 ��������

14 ��������

18 ��������

17 ��������

15 ��������

16 ��������

20 ��������

19 �������� 21 ��������

22 ��������

23 ��������

1

2

3

4

5

6

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

dist

AR

MS

_v.1

1 —

data

set #

3 —

2 ite

ratio

ns

1 2 3 4 5 6

1

2

3

4

5

6

7

8

9

7 8 9

10

12

11

10 11 12

1

2

3

4

5

6

7

8

9

10 11

12

13

2 ��������

3 ��������

1 ��������

4 ��������

5 ��������

7 ��������

6 ��������

8 ��������

9 ��������

11 ��������

12 �������� 10 ��������

13 ��������

14 ��������

18 ��������

17 �������� 15 ��������

16 ��������

20 ��������

19 �������� 21 ��������

22 ��������

23 ��������

1

2

3

4

5

6

Page 7: presentation for the web - Goldsmiths, University of Londonmas01mu/presentations/distarms.pdf · 2 Distributed Resource Allocation via Local Strategies presentation by Marian Ursu,

7

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

dist

AR

MS

_v.1

1 —

data

set #

4 —

1 ite

ratio

n —

run#

3

1 2 3 4 5 6

1

2

3

4

5

6

7

8

9

7 8 9

10

12

11

10 11 12

1

2

3

4

5

6

7

8

9

10 11

12

13

2 ��������

3 ��������

1 ��������

4 ��������

5 �������� 7 ��������

6 ��������

8 ��������

9 ��������

11 ��������

12 �������� 10 ��������

13 ��������

14 ��������

18 ��������

17 ��������

15 ��������

16 ��������

20 ��������

19 �������� 21 ��������

22 ��������

23 ��������

1

2

3

4

5

6

26 ��������

24 ��������

25 �������� 27 ��������

30 ��������

31 ��������

29 ��������

28 ��������

32 ��������

33 ��������

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

dist

AR

MS

_v.1

1 —

data

set #

4 —

2 ite

ratio

ns

1 2 3 4 5 6

1

2

3

4

5

6

7

8

9

7 8 9

10

12

11

10 11 12

1

2

3

4

5

6

7

8

9

10 11

12

13

2 ���� ����

3 ���� ����

1 ���� ����

4 ���� ����

5 ���� ���� 7 ���� ����

6 ���� ����

8 ���� ����

9 ���� ����

11 ���� ���� 12 ���� ����

10 ���� ����

13 ���� ����

14 ���� ����

18 ���� ����

17 ���� ����

15 ���� ����

16 ���� ����

20 ���� ����

19 ���� ���� 21 ���� ����

22 ���� ����

23 ���� ����

1

2

3

4

5

6

26 ���� ����

24 ���� ����

25 ���� ����

27 ���� ����

30 ���� ���� 31 ���� ����

29 ���� ����

28 ���� ����

33 ���� ����

32 ���� ����

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

analysis of this particular implementation

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

simple algorithm yet very promising results

• simple algorithm• “first found first served” for offers [Engs]” +

“nearest location” + then, “first found first served” for proposals [Jobs] + “nearest location” + then, “first found first served” for contracts [Engs]

• day-independent allocations• offers compiled independently for different jobs agents

• good results• good convergence towards optimal solution

• use of resources is maximised within smallest neighbourhood

• more refined/complex algorithms should lead to even better results

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

non-deterministic behaviour

• non-deterministic behaviour within similarly good solutions• due to technology (message handling by the topic)• due to syntax (within same semantics); both

• syntax of parts not related to allocation algorithm• syntax of parts related to allocation algorithm

• sensitive to ordering of data

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

offers

• first found first served (illustrated)• surpluses that match unallocated shortages may be left unused;

possible (partial) solutions:• run many iterations of the algorithm – OK • do not use an engineer in more than one offer per day (too restrictive)• explore heuristics

• e.g. “if an engineer was used in an offer for a certain day, then attempt to use another engineer for another offer for that day (assuming that the former engineer could be used in the latter offer as well); however, if no other engineer is available for the other offer, then still use the first engineer (rather than not being able to make an offer)”

• in other words: balance the number of offers in which engineers are involved

• explore optimisation criteria• maximise number of offers made and minimise number of engineers sent (or

travelling distance)

• drawback due to offers being made on jobs not on skills (illustrated)

Page 8: presentation for the web - Goldsmiths, University of Londonmas01mu/presentations/distarms.pdf · 2 Distributed Resource Allocation via Local Strategies presentation by Marian Ursu,

8

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

other directions for development

• go beyond the model of independent days• balance allocations on periods greater than one day

• employ database in implementation• data analysis could be substantially facilitated

• extend the data model• engineers’ preferences (for jobs, locations, days, …)• composite jobs (requiring different skills, prerequisite jobs, …)• importance of jobs; variable duration of jobs; …• …

• …

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

part #4general directions for further work

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

emergent behaviour + intelligence in leaves

• the behaviour of the distributed algorithm proposed here is difficult to predict as soon as the number of resources and surpluses becomes a second digit figure • experiments and good analysis tools (both analytical and visual)

are required for the identification of trends

• hypothesised trends may then be proved mathematically

• this is a rich research area• the AI community displays an ever growing interest in emergent

behaviour in distributed intelligent systems• there is a conceptual move towards the principle “the

intelligence is in the leaves” (MIT Media Lab)

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

heuristics vs. local optimisation

• a local strategy (within an agent) can be expressed either as a set of rules or as a set of criteria • rules – describe how the solution is to be constructed• criteria – describe what the solution should look like

• although rules seem to lead to a procedural approach, it is possible to develop a (declarative) language in which to expressheuristics and have this language interpreted

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

algorithm

• collaboration heuristics• e.g., use “preferred partners” have preference (sic!)

• competition heuristics• strategies to attract resources/requests

• ask for more than you need

• system of penalties• pay if you cannot honour what you requested/advertised for

• ordering/importance of heuristics• e.g., soft and strong (heuristics/constraints)

• timing• eliminate the 4 step synchronisation algorithm

• resources: keep local reserves

Distributed Resource Allocation via Local Strategiespresentation by Marian Ursu, 1 December 2003 @ Adastral Park, BT © Marian Ursu & Botond Virginas

analysis of results

• define• acceptable/satisfactory solution• good and bad solution• better, when comparing two solutions

• define algorithms and tools that can be used in the measuring ofthese qualitative descriptors • DB queries• statistical measures (data mining like algorithms)• visualisation techniques