300 likes | 472 Views
ENERGY EDUCATION INC. Optimal Routing and Assignment of Consultants. About Energy Education, Inc. Who are they ? What do they do ?. Any Problems ? Manual scheduling Travel costs Staffing Meeting demand. What’s new about this problem?.
E N D
ENERGY EDUCATION INC. Optimal Routing and Assignment of Consultants
About Energy Education, Inc. • Who are they ? • What do they do ? • Any Problems ? • Manual scheduling • Travel costs • Staffing • Meeting demand
What’snewaboutthis problem? Differsfromclassicroutingandassignmentproblems:
CurrentStrategybySMEs (Heuristic) • Assignleftovervisits • Anyunmetclientdemandfromremainingconsultantsupply • Not optimized • Costly • Gatherinformation • Consultant supply • Client demand • Assignhome-areavisits • Checkwiththeskillsfirst • Reducecapacity • Final review • Calendarreviewedbymanagement • Iffoundinfeasible, rework • Assignnear-areavisits • Allocateconsultantstoclientsnearfixedvisits • Reducecapacity • Assignfixedvisits • Depending on clientdemand • Anchorpoint • Reducecapacity
Improvements • Currentmanualapproach • Usesgreedymethod. • Is laborintensive ( +16 hours / week ). • Not evencloseto optimal. • Hoff & Yucomesupwithmathematicalsolutionsthatwould • Minimize thenumber of flightsandconsultantsrequiredby EEI eachweek • Fullymeettheclientdemand. HOW DO THEY DO IT?
New Approach: Cluster First, Route Second Optimizes the process of routing consultants (Set Covering) Clustering Procedure Assignment & Routing Minimizes the number of flights (VRP)
Clustering 300 miles
Set Covering Problem M: # of client locations P: # of potential cluster location Cj: cost associated with cluster (j) Aij: 1, if distance between i and j ≤ 300 0, otw. Xj: 1, if cluster j is used 0, otw. Min
Alternatives P-median Maximal Covering • If they would limit themselves to use p cluster • There are p flights (fixed cost: p. flight cost) • If they would specify a budget • Maximize the number of clients are covered
Assigning Problem (VRP) Parameters Parameters • I:# of consultants to be assigned • C: # of clusters of clients to be scheduled • N: Maximum number of trip legs allowed for a consultant • S: # of skill levels • X(i,j,s): # of visits assigned to consultant i for cluster j for s type of visit • r(j,k): flight cost between clusters j and k • q(i,k): flight cost between consultant’ i’s home and cluster k • t(i,j,s): # of s-type fixed visits needed from consultant i to cluster j • d(k,s): demand for skill level s visit by cluster k • ai: # of shifts available from consultant I • wi: weekly wage for consultant i
u(i,s): y(i,j,k,n): y(i,0,k,1): y(i,j,(c+1),n): Decision Variables 1, if consultant i has skill level s 0, otw. 1, if consultatnti travels from cluster j to k on the nth leg of trip 0, otw. 1, if consultant i travels from home to cluster k on the 1st leg of trip 0, otw. 1, if consultant I returns home from cluster j on the nth leg of trip 0, otw.
Objective Function Travel cost from home to 1st cluster + wage Travel cost between clusters Travel cost for returning home
Constraints If consultant does not leave home on the first leg of a trip, he cannot go a cluster
Constraints The first leg of a trip must be the one in which consultant leaves home
Constraints Starting from the 2nd leg of a trip, a cluster will not be starting cluster of a new leg of a trip if it is not the destination in the previous leg
Constraints Consultant make no more trip after returning home
Constraints 1-) Consultant should return home if he leaves from home for a trip 2 & 3 -) Consultant travels from or to a particular cluster at most once in entire trip
Constraints Number of visits assigned to a consultant should be less than or equal to number of shifts available from this consultant
Constraints At least one visit is scheduled if a consultant stops over at a cluster
Constraints All fixed visits are scheduled
Constraints 1-) Consultant’s skill level 2-) Capacity constraint for consultant
What else can be included? If a client is served by two cluster, two different consultants travel to same client unnecessarily. • Add constraints which require one consultant enters and leaves a client exactly once. • Add sub-tour elimination constraints
ImplementationMethodology • SMEswill • Maintaineachconsultantsskill set matrix. • Tracktheconsultants’ availability. • Altertheclientdatabasewhennecessary. • Update thecost data forflights & contractconsultants. • Manuallyrunthesolver. • Publisheachconsultant’sschedule.
How valid is the optimal solution? • After 1 hour – not much of an improvement
Results of theImprovement • Flight Costs • Consultant VariableCosts
THANK YOU FOR YOUR ATTENTION Saygın Yağ & Çiğdem Ünver