Title: A Coordination Model for Distributed Personnel Planning
1A Coordination Model for Distributed Personnel
Planning
- Patrick De Causmaecker, Peter Demeester, Greet
Vanden Berghe, Bart Verbeke - http//ingenieur.kahosl.be/projecten/dingo
2Introduction
- Dingo Negotiation in distributed personnel
scheduling - Exchange of employees between departments that
are understaffed using agent technology - Suitable / adaptable for many real-world problems
(dynamic settings)
3Objective and approach
- Interviews with 11 companies
- Classification of personnel scheduling problems
(based on scheduling difficulties)
4Classification
- Permanence centred
- police, hospitals
- Mobility centred
- home health care, health and safety board
- Fluctuation centred
- distribution, employment agency
- fast food, call centres (from literature)
- Project centred
- consulting, software development
5Generalisation
- Position in scheduling space
- Personnel have qualifications and preferences
- Duty/task require employees with qualifications
- Time shifts, periods, holidays,
- Personnel-Time plane contract, holidays (many
legal constraints) - Duties-Time plane coverage per shift
- Personnel-Duties plane qualifications
6Simplification
- Personnel-Time
- Assign employees to each department
- Use a tabu search algorithm to find solution per
department - Distribution of personnel among duties
- One software agent for each duty (department!)
- Negotiation in exchange of personnel
7Case study
- Distribution company, warehouse
- A lot of distribution involved
- Personnel are polyvalent every employee has
several qualifications - Ideal test case!
- In our model
- every task department
- Every department represented by agent
- How organise exchange of personnel among the
departments? - Coordination model for this exchange?
8Coordination model
- Opt to use Contract Net Protocol
- Contracting?
- Two interchangeable roles
- Manager defines sub problems coordinates the
whole problem - contractor executes sub task (possibly using sub
contractors) - Bid process to find a solution
- Announce a task (manager)
- Evaluate task (contractors)
- Bid (contractors)
- Evaluate and grant bid (manager)
- Coordinate evaluate the whole (manager)
9CNP
contactors
contractors
contractors
manager
manager
manager
10Contract Net Protocol (CNP)
- Pros
- Dynamic task allocation to reach better contracts
- Agent population is dynamic
- Load balancing emerges naturally from bidding
process - High fault tolerance
- Cons
- No conflict resolution
- Assumes passive, generous, honest agents
- Communication intensive, high network load
11Coordination mechanism for distributed personnel
planning
- Contract Net Protocol (actually 3 X CNP)
- Only exchange of personnel, no need for an
agreement - 3 kinds of agents
- OmbudsAgent (OA)
- Department Agent (DA)
- Employee Agent (EA)
12Ombuds Agent
Employee Agentj
Department Agenti
CFP
Every one sends most expensive cost time slot.
Result of local search algorithm
CNP
(Cost, T)i
Take highest cost
send timetable to every personnel member
ACCEPT PROPOSAL
CNP
Send others a REJECT
REJECT PROPOSAL
CFP Qmax, Tmax
Evaluate every proposed change and generate
corresponding cost
CFP Qmax, Tmax
Every involved agent evaluates its own
constraints and generates a cost
CNP
Cost
Costi
If Costi lt threshold, then change is accepted
Involved Department Agents exchange personnel and
adapt department timetable for that shift
ACCEPT PROPOSAL
ACCEPT PROPOSAL
REJECT PROPOSAL
REJECT PROPOSAL
Otherwise not
Sends agents that have done changes a new CFP
CFP
Only these agents that have done changes send
their costs
(Cost, T)i
13Ombuds Agent
Department Agenti
Employee Agentj
CFP
Every one sends most expensive cost timeslot.
Result of local search algorithm
CNP
(Cost, T)i
Choose highest cost
Send personal timetable to every member of
personnel
ACCEPT PROPOSAL
Send others a REJECT
REJECT PROPOSAL
- OA sends CFP to all DA
- Every DA starts local tabu search algorithm
- Every EA (belonging to the department) gets its
initial timetable of DA - Every DA sends highest cost time slot
- OA selects highest cost
14OmbudsAgent
Department Agenti
Employee Agentj
CNP
CFP Qmax, Tmax
Evaluate every proposed change and generate
corresponding cost
CFP Qmax, Tmax
Every involved agent evaluates its own
constraints and generates a cost
CNP
Cost
Costi
If Costi lt threshold, then change is accepted
Involved Department Agents exchange personnel and
adapt department timetable for that shift
ACCEPT PROPOSAL
ACCEPT PROPOSAL
REJECT PROPOSAL
REJECT PROPOSAL
Otherwise not
CFP
Sends agents that have done changes a new CFP
Only these agents that have done changes send
their costs
(Cost, T)i
15Coordination model
- OA sends question to all DA containing a shift
and qualification - Proposed change is evaluated by DA AND EA
- EA evaluates personal constraints generates
extra cost when department changes - DA generates cost if there is under coverage
- DA sends lowest cost
- From all received costs OA chooses lowest cost
- Change is executed
- DA adapts personnel
- Chosen EA adapts work spot
- Starting all over again!!!
16Implementation issues
- Jade De facto agent environment for Java
- some facilities for CNP (Initiator Responder)
- Although still a lot of complex programming
- problems with a large number of agents
- Mozart Oz multi-paradigm, distributed
programming language - functionality for agents
17Comment
- We make no difference between departments,
qualifications and tasks - Make no use of employee agents during tabu search
- Communication between agents would be a
bottleneck - Employee agents are created after tabu search
- If lots of personnel only create employee agents
when they are needed
18Future
- Jade?
- Mozart Oz
- Communication between tabu search algorithm
(implemented in Java) and coordination model
(implemented in Oz) XML-RPC - Testing with real data!
19Questions?