Workflow Resource Allocation & Multi-attribute auctions

Preview:

DESCRIPTION

Workflow Resource Allocation & Multi-attribute auctions. Abert Plà eXiT – University of Girona Advisors: Beatriz López & Javier Murillo. LIP6 Seminar – Université Pierre et Marie Curie Paris VI (12-2-2012). eXiT: Control Engineering and Intelligent Systems. University of Girona - PowerPoint PPT Presentation

Citation preview

1

Workflow Resource Allocation & Multi-attribute auctions

Abert PlàeXiT – University of Girona

Advisors: Beatriz López & Javier Murillo

LIP6 Seminar – Université Pierre et Marie Curie Paris VI (12-2-2012)

2

eXiT: Control Engineering and Intelligent Systems

• University of Girona

• Interests– Machine Learning– Workflows– Multi-Agent Systems– Auctions

• Domains:– Medicine– Logístics

• eXiT research group

• Interests– Case Based Reasoning– Multivariate statistical process

control– Signal Processing

– Electrical

3

Girona

4

• Preliminary Work– Domain– Workflow Monitoring & Modeling– MAS Workflow Management System

• Workflow Resource allocation through auctions– Auctions in workflows

• Multi-attribute auctions– GSP & Position Auctions– GSPMA2

– Results

Workflow Resource Allocation through Auctions

Hospital

Medical device manufacturers

Medical Device Maintenance Service

1. Preliminary Work

Hospital Medical Device Maintenance Service

Preliminary Work

• 2 type of workflows: [1]

– Expected workflows (Planned in advance using a planner)– Unexpected workflows (Faults in devices, delayed urgent

workflows, etc.)

[1] López et Al. 2010, Medical equipment maintenance support with service-oriented multi-agent services

Medical Device Maintenance Service

Preliminary Work

• Other requirements:– Deadlines - Technician licenses– Quality of Service - …– - Payments made a posteriori

Medical device manufacturers

Technicians

8

Preliminary Work

– Need to model the workflows of the MDMS• Petri nets (RAPN)

– Need to monitor concurrent workflows in the MDMS• Workflow Management System• Delay Detection

9

Workflow modeling

• Petri nets extension: Resource aware petrinets

10

Workflow modeling

• Resource-aware Petri net (include resources)

Type: TransportResources in the organization: 2Currently used resources: 1 Fireable

Type: TransportResources in the organization: 2Currently used resources: 2

Non Fireable

11

Workflow management system (WMS)

• Architecture

12

WMS MAS-WMS

• Monitoring using agents [1]

– 1 Workflow agent for each kind of workflow– 1 Resource agent for each resource

WF Agent A

WF Agent B

WF Agent C

WF Agent D

Resource Agent 1

Resource Agent 2

Resource Agent n

WMS

MAS-WMS

External Resource

Agent

[1]Pla et Al. 2011, Petri Net Based Agents for Coordinating Resources in a Workflow Management System

13

MAS-WMS

• Resource agent– Handles a resource– Defends its interests– Characterized by cost, capacity, category, etc.

• Workflow agents– Handles all the workflow instances of a workflow

pattern.– Resource allocation (Part 3)– Change workflow priority in case of delay

14

Workflow monitoring• Each task has an estimated execution time (e.g. MeanTaskTime)• The sum of MTT is the Workflow mean time• Token contains information about the initial workflow time

instant and the task initial time• Using the token information we can know the workflow elapsed

time (WET) and the time spent in the current task• WET+remainingTasks(mean time) > Wfdeadline• Early delay detection

MeanTaskTime1 = m1 MTT2 = m2

p0 p1 p2 p3 pf

WF_MeanTime = m1+m2+m3

MTT3= m3

Workflow Elapsed Time WF Deadline = prestablished

15

Workflow monitoring• Experiments: Workflow simulations

• Workflows: RMI and MEEM• Resources: 4 Technician Type A 1 Technician Staff Leader• Parameters: 500 time units p= 0.05

WMS detects a possible delay

Delay produced

16

Summary

• Workflows in Medical device maintenance service• How to model workflows including information about

the needed resources?– Resource Aware Petri Nets– Inclusion of Resource to Petri Nets

• How to monitor workflows and predict delays?– Monitorization on the task level– Workflow Management System

17

2. Workflow resource allocation through auctions

18

Resource allocation

• A workflow agent monitors and manages all the instances of a workflow type [1]– Call for auctions when they need resources

Resource Agent 1

Resource Agent 2

Workflow Agent A

Resource Type A

19

Resource allocation

• A workflow agent monitors and manages all the instances of a workflow type [1]– Call for auctions when they need resources

Resource Agent 1

Resource Agent 2

Workflow Agent A

Resource Type A

20

Resource allocation

• A workflow agent monitors and manages all the instances of a workflow type [1]– Call for auctions when they need resources

Resource Agent 1

Resource Agent 2

Workflow Agent A

Resource Type A

21

Resource allocation

• A workflow agent monitors and manages all the instances of a workflow type [1]– Call for auctions when they need resources

Resource Agent 1

Resource Agent 2

Workflow Agent A

Resource Type A

AUCTION!

22

Reverse auction

• Workflow agent: the auctioneer– The buyer– Different attributtes to be fullfilled– Time Restritctions (Starting & Ending Time)– Resource Category (E.g. Tehcnician License)– Quality– …

• Resource agents: the bidders- The sellers- The one with the lowest bid wins the auction

23

Resource allocation

24

Resource allocation• We have analyzed WDP using attributes independently [1]

• Price– Balanced market price– Providers equilibrium– Decrease costs for workflow agent– Suitable for internal & external providers– + Delays

• Time– Shortens workflow timings– Reduces number of delays– Indicated for dealing with internal providers– Arises cost– Faster resources can increase their prices

[1] Pla, Murillo and López 2011. Workflow resource allocation throught auctions

25

Part 3 – Multi-attribute auctions

26

Multi-attribute auctions

Not only satisfy the restriction

27

Multi-attribute auctions

Not only satisfy the restriction

C 10:10 11.17 250€

Maybe ending before witha small price increase ishelpful for the whole system

28

Multi-attribute auctions

Evaluation function

Score

Determines the auctioneer

preferencesand the winner

29

Multi-attribute auctions: attributes

• Deadlines• Quality• Resource Licenses• Ecological Footprint• Safety• Tolerance• …

30

Multi-attribute auction: The keys

• Evaluation function/WDP:– Multi-criteria functions

• How much to pay?– Vickrey?– First price?– Second price?– Our solution: Inspired on Google GSP auctions

31

Position auctions: GSP

• Used to assign a set of positions:– Internet advertising

– Pay per click• Generalized second price – The winning bid pays (or receives) the amount that

bided the second best bidder

[2][1]

[1] Varian 2007. Position auctions.[2] Athey and Ellison, 2011. Position auctions with consumer search

32

Position Auctions: Google Adsense

• Example: 1 position available for the “ipod” google search

Bidder Bidded payperclick

Payperclick Nº clicks Revenue

Cdiscount 0.07 0.05

eBay 0.05

Mp3markt 0.045

Fnac 0.03

Darty 0.025

Apple 0.01

33

Position Auctions: Google Adsense

Cdiscount: 0.05€ per click10000 clicks

500€

Apple: 0.01€ per click1000000 clicks

10000€

What if….

34

Position Auctions: Google Adsense

• Google adds a “quality” parameter which indicates the probability of a user to click an advert. [1]

• It is based in google traffic statistics, google page rank, etc.

• The parameter is provided by google itself. (The auctioneer)

[1] Varian 2007. Position auctions.

35

Position Auctions: Google AdsenseBided Ppc “Quality” Score (Ppc * Q)

Cdiscount 0.07 7 0.49eBay 0.05 15 0.75Mp3markt 0.045 2 0.90Fnac 0.03 30 0.99Darty 0.025 20 0.50Apple 0.01 100 1.00

• Pay the minimum to beat the next bidder:• ppc(bi) = score(bi+1)/qi • ppc(apple) = 0.99/100 = 0.0099€ per click

• Google revenue: 0.0099€ * 1.000.000 clicks = 99999€

36

Multi-attribute GSP auctions

• In Google Adsense the attributes are provided for the auctioneer, so they cannot be falsified.

• In the workflow domains, the attributes are provided by the bidders. Bidders can lie.

37

Workflow resource allcoation

• Task allocation for workflows:– Reverse auctions • Auctioneers are the buyers• Lowest bid wins

– Payment after the task is done– Bundle of attributes provided by the bidders

• GSPMA2: Generalized Second Price Multi-Attribute Auction

38

GSPMA2: Generalized Second Price Multi-Attribute Auction

• Based on Google GSP• Evaluation function to score and rank the bids• The winning bidder receives the amount that it

should have bided to beat the score of its following bid

• When breaking the agreement with the auctioneer (false attribute bid) they payment received is reduced in order to meet the same score with the “real” attributes.

39

GSPMA2: Evaluation Function

• Multi-criteria function that unifies the attributes and the bid:– Product (as in Google Ads)– Sum– Weighted Product– Weighted Sum– Aggregated Indices…

• Linear & cardinal preferences

40

GSPMA2: Payment

• The winning bidder recieves the amount that it should have bidded to match the second best bid:

f(payment,a1i,…an

i) = f(bi,a1i+1,…an

i+1)Price End Time License* Score (product)

Bidder A 9 15 2 270

Bidder B 15 12 1 180

*1 is equivalent to the best license

payment * 12 * 1 = 270payment = 270 / (12)

payment = 22.5

41

GSPMA2: Payment

• Otherwhise, if the the resource breaks the agreement, the winning bidder recieves an amount which gives to te task attributes the same score as the initial bid

f(payment,a1’i,…an’

i) = f(bi,a1i,…an

i)

42

GSPMA2: Payment

f(payment,a1’i,…an’

i) = f(bi,a1i,…an

i)

• If the real ending time is 14payment * 14 * 11 = 180

payment = 180/14payment = 12.85

Price End Time License* Score (product)

Bidder A 9 15 2 270

Bidder B 15 12 1 180

43

GSPMA2: Payment

• Example of evaluations and payments when using just the ending time attribute:

44

GSPMA2: Incentive comptibility

• With this mechanism truthful bidding is the dominant strategy [1]

– Exactness– Monotonicity– Critical– Participation

• Tried to find a counter-example using a constraint solver (Z3). It does not exist.

• Requirement: evalutaion function must be strictly monotonic

[1] Lehman, O’Callaghand and Shoham 2002, Truth revelation in approximately efficient combinatorial auctions

45

GSPMA2: Performance

• Comparation with another Multi-attribute auction mechanism: – Parkes Vickrey Multi-attribute adaptation [1]

• Parameters for the task/resource allocation:– Minimum initial time and Maximum Ending Time – Resource licenses (1 to 10 where)– Economic cost

• Agents strategies:– Cheating [2]– Adaptative [3]

[1] Parkes and Kalagnanam 2005, Iterative multiattribute vickrey auctions.[2] Muñoz and Murillo 2008, Agent UNO: Winner in the 2nd Spanish ART competition[3] Lee and Szymanski 2005, A novel auction mechanism for selling time-sensitive e-services

46

GSPMA2: Performance

• Comparation with Parkes 2005 mechanism:

Cheatingagents

Adaptative agents

47

GSPMA2: Performance

• Comparation with Parkes 2005 mechanism:

Cheatingagents

Adaptative agents

GSPMA2: Performance

• Switching cheating strategy to adaptative strategy

Cheaters

GSPMA2: Performance

• Comparation with Parkes 2005 mechanism:

– More efficient against cheating agents– Less delayed workflows

– More expensive for the workflows

50

Conclusions

• Managing unexpected workflows in a Medical Device Maintenance Service.

• Need to allocate workflow tasks to resources.• Reverse multi- attribute auctions– Quality, time, licenses, etc.

• Generalized Second Price multi-attribute auctiosn

51

Current work

• Adapt GSPMA2 to combinatorial auctions:– Combine VCG auctions with GSPMA2 • Select winners and scores using VCG• Transform scores to payments using GSPMA2 fafa

– Test incentive compatibility

– Apply to new domains

52

Future Work• Repetitive auctions

• Multicriteria functions– Test the incentive compatibility for other MCf– Is the best way to evaluate the bid?

• Non linear preferences

• Test new cheating agents

53

Workflow Resource Allocation through Auctions

Abert PlàeXiT – University of Girona

Advisors: Beatriz López & Javier Murillo

54

55

56

57

Multi-attribute auction: The keys

• Vickrey auction example

Price End Time Value (price*end_time)

Auctioneer rank

Bid 1 100€ 1 100 2

Bid 2 150€ 0.5 75 1

Bid 3 250€ 0.9 225 3

Part 4 – Multi-attribute auctions

58

Multi-attribute auction: Vickrey problem

• Vickrey auction example (second price)

Price End Time Value (price*end_time)

Auctioneer rank

Bid 1 100€ 1 100 2

Bid 2 150€ 0.5 75 1

Bid 3 250€ 0.9 225 3

Part 4 – Multi-attribute auctions

59

Multi-attribute auction: Vickrey problem

• Vickrey auction example (second price)

Price End Time Value (price*end_time)

Auctioneer rank

Bid 1 100€ 1 100 2

Bid 2 150€ 0.5 75 1

Bid 3 250€ 0.9 225 3

BID 2 wants 150€ Gets 100€ NOT FAIR!

Part 4 – Multi-attribute auctions

60

Multi-attribute auction: Vickrey problem

Pay function acording to WDP (value function):· How much better is the winner than the second?· Related with the evaluation function

Pay = 100* (1/0.5) = 200

Price End Time Value (price*end_time)

Auctioneer rank

Bid 1 100€ 1 100 2

Bid 2 150€ 0.5 75 1

Bid 3 250€ 0.9 225 3

61

Multi-attribute auction: Vickrey problem

Pay function acording to WDP (value function):Example 1: proportional

Pay =sec(bid_price)* sec(bid_time)/Win(bid_time)Pay = 100* (1/0.5) = 200

Price End Time Value (price*end_time)

Auctioneer rank

Bid 1 100€ 1 100 2

Bid 2 150€ 0.5 75 1

Bid 3 250€ 0.9 225 3

BID 2 wants 150€ Gets 200€ FAIR!

62

What to study

• Evaluation functions– Multicriteria

• How evaluation function, WDP and payment mechanism are related– How to avoid cheating in repetitive auctions

• Is it incentive compatible?…

• Is it a good smart solution?

Part 4 – Multi-attribute auctions

63

64

• Repetitive

65

Workflow resource allocation through auctions

2 Workflow typesMany instantiations (under demand)

All need resources!Part 3 – – Resource allocation (auctions)

Recommended