Optimal Dispatching of Welding Robots Cornelius Schwarz and Jrg - - PowerPoint PPT Presentation
Optimal Dispatching of Welding Robots Cornelius Schwarz and Jrg - - PowerPoint PPT Presentation
Optimal Dispatching of Welding Robots Cornelius Schwarz and Jrg Rambau Lehrstuhl fr Wirtschaftsmathematik Universitt Bayreuth Germany Aussois January Application: Laser Welding in Car Body Shops Application: Laser Welding
Application: Laser Welding in Car Body Shops
Application: Laser Welding in Car Body Shops
Question
How many laser sources are needed to supply the robots with energy – only one at a time – such that all weldings jobs can be processed in a given time?
The Laser Sharing Problem (LSP)
The Laser Sharing Problem (LSP)
Given
Robots, jobs, laser sources
The Laser Sharing Problem (LSP)
Given
Robots, jobs, laser sources
Task
Find an assignment of jobs to robots and robots to laser sources and a scheduled tour (i. e., an order of job start and end points with start and end times) for every robot so that
- all jobs are served
- robots assigned to identical laser sources
do not weld simultaneously
- the makespan is minimized
The Laser Sharing Problem (LSP)
Given
Robots, jobs, laser sources
Task
Find an assignment of jobs to robots and robots to laser sources and a scheduled tour (i. e., an order of job start and end points with start and end times) for every robot so that
- all jobs are served
- robots assigned to identical laser sources
do not weld simultaneously
- the makespan is minimized
Observation: LSP is NP-hard (reduction of TSP)
The Laser Sharing Problem (LSP)
Given
Robots, jobs, laser sources
Task
Find an assignment of jobs to robots and robots to laser sources and a scheduled tour (i. e., an order of job start and end points with start and end times) for every robot so that
- all jobs are served
- robots assigned to identical laser sources
do not weld simultaneously
- the makespan is minimized
Observation: LSP is NP-hard (reduction of TSP) Remark: Collision avoidance skipped for the moment
The Laser Sharing Problem (LSP)
Given
Robots, jobs, laser sources
Task
Find an assignment of jobs to robots and robots to laser sources and a scheduled tour (i. e., an order of job start and end points with start and end times) for every robot so that
- all jobs are served
- robots assigned to identical laser sources
do not weld simultaneously
- the makespan is minimized
Observation: LSP is NP-hard (reduction of TSP) Remark: Collision avoidance skipped for the moment Problem: Driving times ⇒ artificial data for computational results
Goal
Goal
Solve LSP of industrial scale ≈ jobs, ≤ robots, ≤ laser sources
Goal
Solve LSP of industrial scale ≈ jobs, ≤ robots, ≤ laser sources
So far:
- [Tuchscherer et. al. ]: jobs for fixed robot paths with
MILP and cplex
- [Schneider ]: ≈ jobs, robots, ≤ laser sources
(– days CPU-time)
Goal
Solve LSP of industrial scale ≈ jobs, ≤ robots, ≤ laser sources
So far:
- [Tuchscherer et. al. ]: jobs for fixed robot paths with
MILP and cplex
- [Schneider ]: ≈ jobs, robots, ≤ laser sources
(– days CPU-time)
New: [R. & Schwarz ]
- jobs, robots, – laser sources
solved to optimality in min
- jobs, robots, – laser sources
solved to optimality in h (optimal solution found in min with provable gap < )
LP Bounds
50 100 150 200 250 300 350 400 5 10 15 20 25 30 gap in % number of jobs LP Bounds for 2 to 34 jobs linear ordering time expanded network
LP Bounds
50 100 150 200 250 300 350 400 5 10 15 20 25 30 gap in % number of jobs LP Bounds for 2 to 34 jobs linear ordering time expanded network
Makespan ⇒ weak LP Bounds
-Server Problem
welding lines possible transversal lines
-Server Problem
welding lines possible transversal lines
robot only → rural postman problem
-Server Problem
welding lines possible transversal lines
robot only → rural postman problem NP-hard, but fast solvable for the scale of the LSP (≈ jobs)
-Server Problem
welding lines possible transversal lines
robot only → rural postman problem NP-hard, but fast solvable for the scale of the LSP (≈ jobs) (e.g., by concorde [Applegate, Bixby, Chvátal, Cook])
Combinatorial Bounds – Idea
LSP with Fixed Assignments
Assume:
- robot-laser assignment (r) ∈ {laser sources}
- job-robot assignment (r) ⊆ {jobs}
→ LSP( , )
Combinatorial Bounds – Idea
LSP with Fixed Assignments
Assume:
- robot-laser assignment (r) ∈ {laser sources}
- job-robot assignment (r) ⊆ {jobs}
→ LSP( , ) Given a partial scheduled tour
- r,(p,q,t),...,(pnr,qnr,tnr)
→ completion by solving -server problem through remaining jobs → lower bound for LSP( , ).
Combinatorial Bounds – Idea
LSP with Fixed Assignments
Assume:
- robot-laser assignment (r) ∈ {laser sources}
- job-robot assignment (r) ⊆ {jobs}
→ LSP( , ) Given a partial scheduled tour
- r,(p,q,t),...,(pnr,qnr,tnr)
→ completion by solving -server problem through remaining jobs → lower bound for LSP( , ). → Branch-and-Bound (B&B) over partial scheduled tours
Combinatorial bounds – Subproblem
welding lines given transversal lines
R S R S
time
?
1 2 3
1 2 3 4
4 a
a
b
b
partial scheduled tours
Combinatorial bounds – Subproblem
welding lines given transversal lines start position end position possible transversal lines
R S R S
time
?
1 2 3
1 2 3 4
4 a
a
b
b
subproblem
Combinatorial Bounds – Subproblem Solution
welding lines given transversal lines start position end position transversal lines of 1-server solution
R S R S
time
1 2 3
1 2 3 4
4 a
a
b
b
solution of subproblem
Combinatorial Bounds – Subproblem Solution
welding lines given transversal lines start position end position transversal lines of 1-server solution
R S R S
time
1 2 3
1 2 3 4
4 a
a
b
b
solution of subproblem
not feasible!
Combinatorial Bounds – Subproblem Solution
welding lines transversal lines
R S R S
time
1 2 3
1 2 3 4
4 a
a
b
b
feasible heuristic solution
Bonus: Fixed tour algorithm (e.g., Tuchscherer) → feasible solution
Computational Results for Fixed Assignments
10 20 30 40 50 5 10 15 20 25 30 gap in % number of jobs LP Bounds for 2 to 34 jobs for fixed assignment linear ordering time expanded network combinatorial relaxation
Computational Results for Fixed Assignments
10 20 30 40 50 5 10 15 20 25 30 gap in % number of jobs LP Bounds for 2 to 34 jobs for fixed assignment linear ordering time expanded network combinatorial relaxation
Observations
- Combinatorial bounds yield much better gaps.
- Evaluation very fast (< . s) using concorde.
Solving the LSP
Solving the LSP
Finding an optimal assignment
- robot-laser assignment by simple enumeration
(few candidates)
- job-robot assignment by B&B
Solving the LSP
Finding an optimal assignment
- robot-laser assignment by simple enumeration
(few candidates)
- job-robot assignment by B&B
B&B for job-robot assignment:
Solving the LSP
Finding an optimal assignment
- robot-laser assignment by simple enumeration
(few candidates)
- job-robot assignment by B&B
B&B for job-robot assignment:
. partial assignments → nodes
Solving the LSP
Finding an optimal assignment
- robot-laser assignment by simple enumeration
(few candidates)
- job-robot assignment by B&B
B&B for job-robot assignment:
. partial assignments → nodes . -server problems → lower bounds
Solving the LSP
Finding an optimal assignment
- robot-laser assignment by simple enumeration
(few candidates)
- job-robot assignment by B&B
B&B for job-robot assignment:
. partial assignments → nodes . -server problems → lower bounds TSP again!
Solving the LSP
Finding an optimal assignment
- robot-laser assignment by simple enumeration
(few candidates)
- job-robot assignment by B&B
B&B for job-robot assignment:
. partial assignments → nodes . -server problems → lower bounds . schedule fixed tours → upper bounds (only leaves)
Solving the LSP
Finding an optimal assignment
- robot-laser assignment by simple enumeration
(few candidates)
- job-robot assignment by B&B
B&B for job-robot assignment:
. partial assignments → nodes . -server problems → lower bounds . schedule fixed tours → upper bounds (only leaves) . leaf lower bound ≤ upper bound → candidate
Solving the LSP
Finding an optimal assignment
- robot-laser assignment by simple enumeration
(few candidates)
- job-robot assignment by B&B
B&B for job-robot assignment:
. partial assignments → nodes . -server problems → lower bounds . schedule fixed tours → upper bounds (only leaves) . leaf lower bound ≤ upper bound → candidate . node lower bound > upper bound → pruning
Collisions
Collisions
Collision model
Collisions
Collision model
- line-line collisions: pair of robot movements
that must not overlap in time
Collisions
Collision model
- line-line collisions: pair of robot movements
that must not overlap in time
- line-point collisions: robot movement and a robot position
that must not overlap in time (important, since waiting robots are obstacles!)
Collisions
Collision model
- line-line collisions: pair of robot movements
that must not overlap in time
- line-point collisions: robot movement and a robot position
that must not overlap in time (important, since waiting robots are obstacles!)
Very important:
Collisions
Collision model
- line-line collisions: pair of robot movements
that must not overlap in time
- line-point collisions: robot movement and a robot position
that must not overlap in time (important, since waiting robots are obstacles!)
Very important:
- Tuchscherer scheduling + collision-avoidance
→ collision-free Tuchscherer scheduling (MILP)
Collisions
Collision model
- line-line collisions: pair of robot movements
that must not overlap in time
- line-point collisions: robot movement and a robot position
that must not overlap in time (important, since waiting robots are obstacles!)
Very important:
- Tuchscherer scheduling + collision-avoidance
→ collision-free Tuchscherer scheduling (MILP)
- New B&B node: partial tours for each robot (not scheduled)
Collisions
Collision model
- line-line collisions: pair of robot movements
that must not overlap in time
- line-point collisions: robot movement and a robot position
that must not overlap in time (important, since waiting robots are obstacles!)
Very important:
- Tuchscherer scheduling + collision-avoidance
→ collision-free Tuchscherer scheduling (MILP)
- New B&B node: partial tours for each robot (not scheduled)
→ Lower bound by (Tuchscherer scheduling of partial tours) plus (-server solutions for the rest)
Collisions
Collision model
- line-line collisions: pair of robot movements
that must not overlap in time
- line-point collisions: robot movement and a robot position
that must not overlap in time (important, since waiting robots are obstacles!)
Very important:
- Tuchscherer scheduling + collision-avoidance
→ collision-free Tuchscherer scheduling (MILP)
- New B&B node: partial tours for each robot (not scheduled)
→ Lower bound by (Tuchscherer scheduling of partial tours) plus (-server solutions for the rest) → Upper bound by (collision-free Tuchscherer scheduling
- f (partial tours plus -server solutions for the rest))
Conclusions
Benefit of combinatorial bounds
- Sometimes better bounds than LP based ones
- Key observation:
Large scale (original problem) ↔ small scale (subproblem)
Conclusions
Benefit of combinatorial bounds
- Sometimes better bounds than LP based ones
- Key observation:
Large scale (original problem) ↔ small scale (subproblem)
Future directions:
- Verify results with realistic robot driving times
(e. g., calculated by SimPro from Kuka)
- Other applications (winter gritting, …)
Conclusions
Benefit of combinatorial bounds
- Sometimes better bounds than LP based ones
- Key observation:
Large scale (original problem) ↔ small scale (subproblem)
Future directions:
- Verify results with realistic robot driving times
(e. g., calculated by SimPro from Kuka)
- Other applications (winter gritting, …)