640 likes | 805 Views
Workflow Resource Allocation through Auctions. Abert Plà eXiT – University of Girona Advisors: Beatriz López & Javier Murillo. eXiT: Control Engineering and Intelligent Systems. University of Girona Interests Machine Learning Workflows Multi-Agent Systems Auctions Domains:
E N D
Workflow Resource Allocation through Auctions AbertPlà eXiT – University of Girona Advisors: Beatriz López & Javier Murillo
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
Workflow Resource Allocation through Auctions • 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
1. Preliminary Work Medical device manufacturers 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.) Hospital Medical Device Maintenance Service [1] López et Al. 2010, Medical equipment maintenance support with service-oriented multi-agent services
Preliminary Work • Other requirements: • Deadlines - Technician licenses • Quality of Service - … • - Payments made a posteriori Medical device manufacturers Medical Device Maintenance Service Technicians
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
Workflow modeling • Petri nets extension: Resource aware petrinets
Workflow modeling • Resource-aware Petri net (include resources) Type: Transport Resources in theorganization: 2 Currentlyusedresources: 1 Fireable Type: Transport Resources in theorganization: 2 Currentlyusedresources: 2 Non Fireable
Workflow management system (WMS) • Architecture
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 ResourceAgent 1 ResourceAgent 2 ExternalResourceAgent ResourceAgent n WMS WF Agent C WF Agent D MAS-WMS [1]Pla et Al. 2011, Petri Net Based Agents for Coordinating Resources in a Workflow Management System
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
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 p0 p1 p2 p3 pf MeanTaskTime1 = m1 MTT2 = m2 MTT3= m3 WF_MeanTime = m1+m2+m3 Workflow Elapsed Time WF Deadline = prestablished
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 Delay produced WMS detects a possible delay
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
Resource allocation • A workflow agent monitors and manages all the instances of a workflow type [1] • Call for auctions when they need resources WorkflowAgent A Resource Type A ResourceAgent 1 ResourceAgent 2
Resource allocation • A workflow agent monitors and manages all the instances of a workflow type [1] • Call for auctions when they need resources WorkflowAgent A Resource Type A ResourceAgent 1 ResourceAgent 2
Resource allocation • A workflow agent monitors and manages all the instances of a workflow type [1] • Call for auctions when they need resources WorkflowAgent A Resource Type A ResourceAgent 1 ResourceAgent 2
Resource allocation • A workflow agent monitors and manages all the instances of a workflow type [1] • Call for auctions when they need resources WorkflowAgent A Resource Type A AUCTION! ResourceAgent 1 ResourceAgent 2
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
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. Workflowresource allocation throughtauctions
Multi-attribute auctions Notonlysatisfytherestriction
Multi-attribute auctions Not only satisfy the restriction Maybe ending before with a small price increase is helpful for the whole system C 10:10 11.17 250€
Multi-attribute auctions Evaluation function Score Determines the auctioneer preferences and the winner
Multi-attribute auction: The keys • Evaluation function/WDP: • Multi-criteria functions • How much to pay? • Vickrey? • First price? • Second price? • Our solution: Inspired on GSP auctions
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 [1] [2] [1] Varian2007. Position auctions. [2] Athey and Ellison, 2011. Position auctions with consumer search
Position Auctions: Google Adsense • Example: 1 position available for the “ipod” google search
Position Auctions: Google Adsense Whatif…. Cdiscount: 0.05€ per click 10000 clicks 500€ Apple: 0.01€ per click 1000000 clicks 10000€
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.
Position Auctions: Google Adsense • 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€
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.
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
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.
GSPMA2: Evaluation Function • Multi-criteria function that unifies the attributes and the bid: • Product (as in Google Ads) • Sum • Weighted Product • Weighted Sum … • Linear preferences
GSPMA2: Payment • The winning bidder recieves the amount that it should have bidded to match the second best bid: f(payment,a1i,…ani) = f(bi,a1i+1,…ani+1) payment * 12 * 1 = 270 payment = 270 / (12) payment = 22.5 *1 isequivalenttothebestlicense
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,…ani)
GSPMA2: Payment f(payment,a1’i,…an’i) = f(bi,a1i,…ani) • If the real ending time is 14 payment * 14 * 11 = 180 payment = 180/14 payment = 12.85
GSPMA2: Payment • Example of evaluations and payments when using just the ending time attribute:
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
GSPMA2: Performance • Comparation with another Multi-attribute auction mechanism: • ParkesVickrey 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 Kalagnanam2005, Iterativemultiattributevickreyauctions. [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
GSPMA2: Performance • Comparation with Parkes 2005 mechanism: Adaptative agents Cheating agents
GSPMA2: Performance • Comparation with Parkes 2005 mechanism: Adaptative agents Cheating 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
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
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