Kevin Ross, UCSC, September Service Network Engineering Resource Allocation and Optimization Kevin Ross Information Systems & Technology Management University of California, Santa Cruz September 2005
Kevin Ross, UCSC, September Service Networks X1X1 X2X2 XqXq XQXQ … …
Kevin Ross, UCSC, September Service Networks Source: pics/news/data.jpg Autonomous Computing (Utility Computing / Data Center Management /Grid Commputing) Call Center Management Utility Providers
Kevin Ross, UCSC, September Example: Human Resource Optimization Queues correspond to various jobs/requests A large pool of people with –Varying skill levels (speed of service) –Different costs (distance from job, rate of pay) Each configuration of people corresponds to a unique service mode We consider selecting the service mode, given –Constraints on resources –Current backlog of tasks to complete
Kevin Ross, UCSC, September Typical Scenarios … thousands of jobs / employees … interacting service requirements … deadlines … different costs for service … jobs of different priorities … we could hire more support … all the numbers are uncertain Service Network Engineering
Kevin Ross, UCSC, September Summary of Research Issues Allocating resources when there are –Large number of job types (classes) –Large number of service configurations –Dynamic demand levels –Interactive service constraints –Priority jobs –Variable costs
Kevin Ross, UCSC, September Key Findings Proved –a large class of scheduling algorithms are throughput-maximizing for service networks under very general conditions –we can optimize for quality of service performance –these algorithms scale well –we can implement the control in a distributed way Work in progress –Tradeoff analysis: quality of service / load balancing / costs / throughput –Pricing schemes and value of resources
Kevin Ross, UCSC, September Base Case: Parallel Queue networks X = workload vector S = service rate vector S S = set of all possible service mode vectors Dynamically select service mode S from S - based on workload X X1X1 X2X2 XqXq XQXQ … … SqSq S2S2 S1S1 SQSQ … … ……
Kevin Ross, UCSC, September Service Networks X1X1 X2X2 XqXq XQXQ … …
Kevin Ross, UCSC, September Service Networks X1X1 X2X2 XqXq XQXQ … …
Kevin Ross, UCSC, September Service Networks X1X1 X2X2 XqXq XQXQ … …
Kevin Ross, UCSC, September Service Networks X1X1 X2X2 XqXq XQXQ … …
Kevin Ross, UCSC, September Service Networks X1X1 X2X2 XqXq XQXQ … …
Kevin Ross, UCSC, September What about networks? Serving one queue creates work in another Known as feedback and forwarding
Kevin Ross, UCSC, September Network of Queues Feedback and forwarding can be modeled with a similar framework
Kevin Ross, UCSC, September Network of Queues Transfer matrix T
Kevin Ross, UCSC, September Network of Queues Arrivals = Departures
Kevin Ross, UCSC, September Network of Queues Service = Departures - Arrivals = -
Kevin Ross, UCSC, September Core Model: Example X = backlog vector S = service rate vector X1X1 X2X2 X3X3 X5X5 X4X S Q=5 (# queues)
Kevin Ross, UCSC, September Core Model: Example X = backlog vector S = service rate vector X1X1 X2X2 X3X3 X5X5 X4X S Q=5 (# queues)
Kevin Ross, UCSC, September Analytical and Practical Issues Performance –Throughput –Quality of service –Load balancing –Cost minimization Robustness –Assumptions required –Unreliable information –Adaptive to variation –Switching times Complexity –Huge number of configurations
Kevin Ross, UCSC, September System Dynamics AIM: Rate Stability: Notation: Q-vectors X1X1 X2X2 X(t-1) A(t) - S(t) X(t)
Kevin Ross, UCSC, September R What arrival rates can we consider? 11 22 S1S1 Stability Region R : vectors which could be served S2S2 S3S3 S4S4 R = { : 0 with m = 1 } S6S6 S5S5
Kevin Ross, UCSC, September Some Types of Algorithms Offline Know the arrival rates in advance Randomized / Round Robin Online Arrival rate is not known Adapt to Arrivals and Buffer backlog Two main classes: –Batch Schedules –Projective Cone Schedules
Kevin Ross, UCSC, September Projective Cone Scheduling (PCS) Algorithms PCS: When the workload vector is X, choose the service configuration S that maximizes S max over S in S For a fixed matrix B that is positive diagonal
Kevin Ross, UCSC, September PCS Algorithm: Example X1X1 X2X2 X3X3 X5X5 X4X S1S1 S2S2 S3S3 S4S X = = BX B = max
Kevin Ross, UCSC, September When X is in cone C, choose S = S(C) corresponding to that cone The set of workload vectors X for which S* maximizes is a convex cone X1X1 X2X2 S4S4 S3S3 S2S2 S1S1 X PCS as a Cone Algorithm
Kevin Ross, UCSC, September Workload Drift in Cones Workload drifts between cones over time X1X1 X2X2 S4S4 S3S3 S2S2 S1S1
Kevin Ross, UCSC, September What are the Cones? S1S1 S2S2 S1S1 S2S2 S3S3
Kevin Ross, UCSC, September Cone Boundaries: Varying B S1S1 S2S2 S3S3
Kevin Ross, UCSC, September In Higher Dimensions S3S3 S2S2 S1S1 S4S4
Kevin Ross, UCSC, September Performance Comparison on Simple Network
Kevin Ross, UCSC, September Performance: Varying Parameters in B
Kevin Ross, UCSC, September Key Observation: Neighborhood Structure If arrivals are bounded, workload can only jump to “neighboring cones” X1X1 X1X1 S4S4 S3S3 S2S2 S1S1 X(t)
Kevin Ross, UCSC, September Local PCS: When the workload vector is X and previous service was S -, choose the service configuration S that maximizes max over S in N(S - ) X1X1 X1X1 S4S4 S3S3 S2S2 S1S1 Local PCS X
Kevin Ross, UCSC, September S6S6 S2S2 S3S3 S4S4 S5S5 S7S7 S1S1 S8S8 S6S6 S5S5 S4S4 S3S3 S8S8 S2S2 S7S7 S1S1 Local PCS: Graph Representation
Kevin Ross, UCSC, September Local PCS S = Permutation Vectors For crossbar switch
Kevin Ross, UCSC, September Pricing and Resource Valuation Pricing scenarios: 1.We could add a new mode to the set of modes for a price 2.Each service mode has a different price associated with it 3.It costs to shift modes When should we pay and how much?
Kevin Ross, UCSC, September Sketch: Adding new modes A new mode creates a new stability region R 11 S1S1 S2S2 S3S3 S4S4 S6S6 S5S5 S new
Kevin Ross, UCSC, September Sketch: Differential pricing We have price-based stability frontiers R 11 S1S1 S2S2 S3S3 S4S4 S6S6 S5S5 R2R2
Kevin Ross, UCSC, September Sketch: shifting costs Boundaries of Cones become flexible X1X1 X2X2 S4S4 S3S3 S2S2 S1S1 X
Kevin Ross, UCSC, September Summary: Service Network Engineering Resource Management in –Dynamically changing complex networks –Call centers, Utility Computing, Networks, Workforce, etc. Challenges –Analytical Concepts of throughput, QoS, scalability, distributed control –Resource Valuation and Pricing