Post on 31-Dec-2015
Kevin Ross, UCSC, September 2005
1
Service Network Engineering
Resource Allocation and Optimization
Kevin RossInformation Systems & Technology
ManagementUniversity of California, Santa Cruz
September 2005
Kevin Ross, UCSC, September 2005
3
Service Networks
Source: www.capital.lv/ pics/news/data.jpg
Autonomous Computing (Utility
Computing / Data Center Management /Grid
Commputing)
Call Center Management
Utility Providers
Kevin Ross, UCSC, September 2005
4
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 2005
5
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 2005
6
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 2005
7
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
wayWork in progress
– Tradeoff analysis: • quality of service / load balancing / costs / throughput
– Pricing schemes and value of resources
Kevin Ross, UCSC, September 2005
8
Base Case: Parallel Queue networks
X = workload vector
S = service rate vector
SS = set of all possible service mode vectors
Dynamically select service mode S from S - based on workload X
X1
X2
Xq
XQ
……
Sq
S2
S1
SQ
……
… …
Kevin Ross, UCSC, September 2005
14
What about networks?
1
2
5
3
4
2
Serving one queue creates work in anotherKnown as feedback and forwarding
Kevin Ross, UCSC, September 2005
15
Network of Queues
1
2
3
4
5
2
Feedback and forwarding can be modeled with a similar framework
Kevin Ross, UCSC, September 2005
16
Network of Queues
1
2
3
4
5
2
0 0 1 0 0 0
0 0 0 1 0 0
0 0 0 0 2 0
0 0 0 0 0 1
0 0 0 1 0 0Transfer matrix T
1
2
3
4
5
1 2 3 4 5
Kevin Ross, UCSC, September 2005
17
Network of Queues
1
2
3
4
5
2
0 0 1 0 0 0
0 0 0 1 0 0
0 0 0 0 2 0
0 0 0 0 0 1
0 0 0 1 0 0
0 0 1 2 2
1
1
2
1
1
Arrivals =
Dep
artu
res
Kevin Ross, UCSC, September 2005
18
Network of Queues
1
2
3
4
5
2
1
1
1
-1
-1
Service = Departures - Arrivals
0
0
1
2
2
1
1
2
1
1
= -
Kevin Ross, UCSC, September 2005
19
Core Model: Example
X = backlog vector
S = service rate vector
X1
X2
X3
X5
X4
1
1
1
-1
-1
S
Q=5(# queues)
0 0 1 0 0 0
0 0 0 1 0 0
0 0 0 0 2 0
0 0 0 0 0 1
0 0 0 1 0 0
Kevin Ross, UCSC, September 2005
20
Core Model: Example
X = backlog vector
S = service rate vector
X1
X2
X3
X5
X4
1
1
1
-1
-1
S
Q=5(# queues)
0 0 1 0 0 0
0 0 0 1 0 0
0 0 0 0 2 0
0 0 0 0 0 1
0 0 0 1 0 0
Kevin Ross, UCSC, September 2005
21
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 2005
22
System Dynamics
t
tA
tStAtXtX
t
st
1
)(lim
)()()1()(
rate) (Arrival Load
Service)(
Arrival)(
Workload)(
tS
tA
tX
T
tST
tT
1
)(limAIM: Rate Stability:
Notation: Q-vectors
X1
X2
X(t-1)
A(t)
- S(t)
X(t)
Kevin Ross, UCSC, September 2005
23
R
What arrival rates can we consider?
1
2
S1
Stability Region R : vectors which could be served
S2
S3
S4
R = {: < m Sm for some sm > 0 with m = 1 }
S6
S5
Kevin Ross, UCSC, September 2005
24
Some Types of Algorithms
Offline• Know the arrival rates in advance• Randomized / Round RobinOnline• Arrival rate is not known• Adapt to Arrivals and Buffer backlog• Two main classes:
– Batch Schedules– Projective Cone Schedules
Kevin Ross, UCSC, September 2005
25
Projective Cone Scheduling (PCS) Algorithms
PCS: When the workload vector is X, choose the service configuration S that maximizes
max < S, BX > over S in SS
For a fixed matrix B that is positive diagonal
Kevin Ross, UCSC, September 2005
26
PCS Algorithm: Example
X1
X2
X3
X5
X4
6
0
0
0
1
3
2
0
3
1
0
3
5
0
0
0
0
1
1
6
S1 S2 S3 S4
5
6
3
2
4
X =
<S,BX> = 64 62 63 35
10
6
9
2
4
BX2 0 0 0 00 1 0 0 00 0 3 0 00 0 0 1 00 0 0 0 1
B =
max <S,BX>
Kevin Ross, UCSC, September 2005
27
When X is in cone C,
choose S = S(C) corresponding to that cone
The set of workload vectors X for which S* maximizes
< S, BX > is a convex cone
X1
X2
S4
S3
S2S1
X
PCS as a Cone Algorithm
Kevin Ross, UCSC, September 2005
28
Workload Drift in Cones
Workload drifts between cones over time
X1
X2
S4
S3
S2S1
Kevin Ross, UCSC, September 2005
29
What are the Cones?
1
0
0
1
2
1
S
S
1
0
0
2
2
1
S
S
75.0
75.0
1
0
0
1
3
2
1
S
S
S
75.0
75.0
1
0
0
25.1
3
2
1
S
S
S
10
01B
S1
S2
S1
S2
S3
Kevin Ross, UCSC, September 2005
30
Cone Boundaries: Varying B
75.0
75.0
1
0
0
1
3
2
1
S
S
S
10
01B
10
02B
21
12B
S1
S2
S3
Kevin Ross, UCSC, September 2005
31
00.2
0.40.6
0.81
00.2
0.40.6
0.81
0
0.2
0.4
0.6
0.8
1
X1
Workload Cones with identity matrix
X2
X3
In Higher Dimensions
100
020
001
B
00.2
0.40.6
0.81
00.2
0.40.6
0.81
0
0.2
0.4
0.6
0.8
1
X1
Workload Cones with diagonal matrix
X2
X3
100
010
001
B
3
4
3
,
8
0
0
,
0
8
0
,
0
0
94321 SSSS
S3
S2S1S4
Kevin Ross, UCSC, September 2005
32
Performance Comparison on Simple Network
0 100 200 300 400 500 600 700 800 900 10000
5
10
15
20
25
30
35
40
45
50Total Workload Comparison
Timeslot
Wor
kloa
d
PCS Algorithm
Randomized AlgorithmRound Robin Algorithm
Kevin Ross, UCSC, September 2005
33
5
5
5
10
0
0
0
10
0
0
0
10
4
3
2
1
S
S
S
S
100
010
001
B
100
010
002
B
175.00
75.010
005.0
B
Performance: Varying Parameters in B
Kevin Ross, UCSC, September 2005
34
Key Observation: Neighborhood Structure
If arrivals are bounded, workload can only jump to “neighboring cones”
X1
X1
S4
S3
S2S1
X(t)
Kevin Ross, UCSC, September 2005
35
Local PCS: When the workload vector is X and previous service was S-, choose the service configuration S that maximizes
max < S, BX > over S in N(S-)
X1
X1
S4
S3
S2S1
Local PCS
X
Kevin Ross, UCSC, September 2005
36
S6
S2
S3
S4
S5
S7
S1
S8
S6
S5
S4
S3
S8
S2
S7
S1
Local PCS: Graph Representation
Kevin Ross, UCSC, September 2005
38
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 2005
39
Sketch: Adding new modes
A new mode creates a new stability region
R
1
S1
S2
S3
S4
S6
S5
Snew
Kevin Ross, UCSC, September 2005
40
Sketch: Differential pricing
We have price-based stability frontiers
R
1
S1
S2
S3
S4
S6
S5
R2
Kevin Ross, UCSC, September 2005
41
Sketch: shifting costs
Boundaries of Cones become flexible
X1
X2
S4
S3
S2S1
X
Kevin Ross, UCSC, September 2005
42
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