SCHEDULING IN FLEXIBLE ROBOTIC
MANUFACTURING CELLS
HAKAN GÜLTEKİN
The System:
Input Buffer
Mc 1
Mc 2
...
Parts
Robot
Linear Tracks
HAKAN GULTEKIN
Mc m
Output Buffer
General Assumptions:
• No buffers between the workstations.
• Robot loads and unloads the machines and transports
the parts between the machines.
• Robot never loads an already loaded machine and never
unloads an empty machine.
HAKAN GULTEKIN
General Assumptions:
• Maximize production rate = minimize cycle time
• Cycle time: Long run average time to produce one part
• Loading and unloading times, ei or e.
• Robot travel times are dij or d.
HAKAN GULTEKIN
Robot move sequence:
Alternative 1:
Mc 1
Mc 2
HAKAN GULTEKIN
Robot move sequence:
Alternative 1:
Mc 1
Mc 2
HAKAN GULTEKIN
Robot move sequence:
Alternative 1:
Mc 1
Mc 2
HAKAN GULTEKIN
Robot move sequence:
Alternative 1:
Mc 1
Mc 2
HAKAN GULTEKIN
Robot move sequence:
Alternative 2:
Mc 1
Mc 2
HAKAN GULTEKIN
Robot move sequence:
Alternative 2:
Mc 1
Mc 2
HAKAN GULTEKIN
Robot move sequence:
Alternative 2:
Mc 1
Mc 2
HAKAN GULTEKIN
Part input sequence:
• Multiple or identical parts to be processed.
Multiple Parts Case:
Mc 1
Mc 2
Different sequences of parts result in different production rates.
HAKAN GULTEKIN
Part input sequence:
• Multiple or identical parts to be processed.
Identical Parts Case:
Mc 1
Mc 2
Different sequences of parts result in identical production rates.
HAKAN GULTEKIN
Robot move cycles:
• Cyclic production: Production by repeating a fixed
sequence of robot moves. Easy to implement and control.
• n-unit cycle: Sequence of robot moves that load and
unload each machine exactly n times in which the initial
and final states of the cell are the same.
S1:A0A1A2
S2:A0A2A1
HAKAN GULTEKIN
S12S21:A0A1A0A2A1A2
Previous results (identical parts):
• 1-unit cycles are optimal for two and three machine cells.
• If P1+P2 < 2d, S1 is optimal. If P1+P2 > 2d, S2 is optimal.
If P1+P2 = 2d, both perform equally well.
• Six 1-unit cycles in three machine cells.
HAKAN GULTEKIN
Previous results (identical parts):
• 1-unit cycles need not be optimal for cells with four or
greater number of machines.
• m! 1-unit cycles
• Algorithm to find the best 1-unit cycle.
HAKAN GULTEKIN
Previous results (multiple parts):
• Two Machine Case:
• 1-unit cycles need not be optimal even in two
machine cells
• Algorithm that simultaneously finds the optimal
part input sequence and robot move sequence.
HAKAN GULTEKIN
Previous results (multiple parts):
• Three Machine Case:
• Fix the robot move cycle to one of the six 1-unit
robot move cycles and find the part input sequence.
• NP-Hard for 2 out of 6 1-unit cycles.
• Suboptimal! Worst case?
HAKAN GULTEKIN
Other special cell configurations:
• Parallel machines
• More than 1 robots
• Dual gripper robots
• Different assumptions on e, d and Pi’s
• Robotic cells with buffers in front of the machines
• Different objective functions
HAKAN GULTEKIN
Assumptions pertinent to this study:
• CNC machines.
• Operational flexibility: ability to interchange the
ordering of operations.
• Process flexibility: ability to perform multiple
operations on the same machine.
• Each part has a number of operations to be performed on
the machines.
HAKAN GULTEKIN
The problem:
Find the allocation of the operations to the
machines and the corresponding robot move
sequence that jointly minimize the cycle time.
HAKAN GULTEKIN
Definitions:
k-allocation type : Part operations (o1,o2,o3,o4,o5)
k
k
M1
M2
(o1,o2)
(o2,o3,o5)
(o4)
(o3,o4,o5)
(o1,o4)
(o1,o2,o3,o5)
(o1,o2)
(o2,o3,o5)
(o4)
(o3,o4,o5)
(o1,o4)
(o1,o2,o3,o5)
HAKAN GULTEKIN
Example:
• Assume a 2-m/c robotic cell and consider robot
move cycle S2.
• Let e=1, d=2, o1=13, o2=17, o3=10, o4=5, o5=5
P = 50
1-allocation S2: P1=o1+o3=23, P2=o2+o4+o5=27
TS2(1)= 4e+4d+max{2e+4d, P1, P2} = 39
2-allocation S2: P11=o1+o3=23, P12=o2+o4+o5 = 27,
P21=o2+o4+o5=27, P22=o1+o3 = 23.
TS2(2)= 4e+4d+1/2max{2e+4d, P11, P22}
+1/2max{2e+4d, P21, P12} = 37
HAKAN GULTEKIN
2-machine case:
• Limited tool magazine capacity
• In most cases number of required tools exceeds the
tool magazine capacity
Then for each part we have 3 sets of operations:
1. Operations that can only be processed on the first
machine with total processing time P1.
2. Operations that can only be processed on the second
machine with total processing time P2.
3. Operations that can be processed on both machines
with total processing time P.
HAKAN GULTEKIN
2-machine case:
The problem:
Find the allocation of the operations that are in the
third set to the machines and the corresponding
robot move sequence that jointly minimize the
cycle time.
HAKAN GULTEKIN
2-machine case:
Theorem:
1.
2.
If P1 + P2 ≥ 2d, then S2 gives the minimum cycle time,
Else,
2.1. If 2P + P1 + P2 ≤ 2d, then S1 gives the minimum cycle time
2.2. Else,
2.2.1. If 2P1 + P2 + P ≤ 2e + 6d, then S12S21 gives the
minimum cycle time,
2.2.2. Else, depending on the allocations of the operations for
S2 either S2 or S12S21 gives the minimum cycle time.
HAKAN GULTEKIN
2-machine case:
P2 = aP1
HAKAN GULTEKIN
2-machine case:
• Note that whenever P = 0, then there is no allocation
problem and the result reduces to:
S1 is optimal if P1+P2 < 2d and S2 is optimal otherwise.
The problem as well as the result becomes identical to
two machine identical parts case.
HAKAN GULTEKIN
2-machine case:
Duplicate all cutting tools: P1 = P2 = 0.
HAKAN GULTEKIN
A new robot move cycle:
• Tproposed= 4e+2(m+1)d
+1/m(max{0, P-2(m-1)e-(m-1)(m+2)d})
HAKAN GULTEKIN
Lower bound:
max{2(m+1)(e+d)+min{P, d}, 4e+4d+P/m}
First component:
- Load and unload all machines once: 2(m+1)e,
- Travel from input buffer to output buffer and return
back: 2(m+1)d,
- For all machines either wait or do some other activity:
∑min{Pi,d} ≥ min{P,d}.
HAKAN GULTEKIN
Lower bound:
max{2(m+1)(e+d)+min{P, d}, 4e+4d+P/m}
Second component:
- Either wait or do some other activity: Pi,
- Unload Mi: e,
- Transport to M(i+1): d,
- Load M(i+1): e,
- Transport to M(i-1): 2d,
- Unload M(i-1): e,
- Transport to Mi: d,
- Load Mi: e.
4e+4d+maxi{Pi} ≥ 4e+4d+P/m
HAKAN GULTEKIN
2-machine case:
• The new robot move cycle gives the minimum cycle time.
• Changing the layout from
in-line robotic cell to robotcentered cell reduces the
cycle time of the new cycle
even further.
HAKAN GULTEKIN
Example:
o1 = 40, o2 = 45, o3 = 50, o4 = 60, o5 = 50, o6 = 55
e = 2, d = 10
Allocation:
M1
o1,o4
P1=100
M2
o2,o6
M3
P2=100
o3,o5
P3=100
TS6 = 4e+4d+max{4e+8d, P1, P2, P3} = 148
Tproposed = 1/3(max{12e+24d, P+8e+14d}) = 152
HAKAN GULTEKIN
m-machine case:
Theorem:
The proposed cycle gives the minimum cycle time if:
• (m-2)d ≤ 2e or
• P ≤ 2(m2-1)e+(m2+2m-2)d.
Theorem:
For (m-2)d > 2e and P > 2(m2-1)e+(m2+2m-2)d, using
the proposed cycle instead of the optimal robot move
cycle has the following worst case performance bound:
m 3m 2
1 2
m 6m 2
2
m=3
m=4
m=5
m=6
HAKAN GULTEKIN
1.08
1.157
1.226
1.384
Optimal number of machines:
Theorem:
Proposed cycle with optimal number of machines
dominates all traditional robot move cycles with optimal
number of machines.
Theorem:
The optimal number of machines, m*, for the proposed
cycle is either 1 / 2d (2e d ) or
1 / 2d (2e d ) 1
where 4e 2 20ed 17d 2 4dP.
HAKAN GULTEKIN
Bicriteria Robotic Cell Scheduling:
• No existing studies considering cost objectives in
robotic cell scheduling literature.
• Minimize manufacturing cost vs Minimize cycle time.
• Manufacturing Cost = Machining Cost+Tooling Cost
HAKAN GULTEKIN
Bicriteria Robotic Cell Scheduling:
HAKAN GULTEKIN
Bicriteria Robotic Cell Scheduling:
Cost
Total cost
Machining cost
Tooling cost
Pl
Pu
Processing time
HAKAN GULTEKIN
Bicriteria Robotic Cell Scheduling:
• Increasing the processing times reduces the cost but
may increase the cycle time.
• Reducing the processing times increases the cost but
may reduce the cycle time.
• Find the set of efficient solutions.
HAKAN GULTEKIN
Bicriteria Robotic Cell Scheduling:
Dominated Solution
Manufacturing
cost
Nondominated Solutions
A
C
B
Cl
Tl
Tu
HAKAN GULTEKIN
Cycle time
Bicriteria Robotic Cell Scheduling:
Manufacturing
cost
C
S1
S2
T
HAKAN GULTEKIN
Cycle time
QUESTIONS
www.ie.bilkent.edu.tr/~robot
HAKAN GULTEKIN
© Copyright 2026 Paperzz