Optimal Dispatching of Welding Robots Cornelius Schwarz and Jörg Rambau Lehrstuhl für Wirtschaftsmathematik Universität Bayreuth Germany Aussois January
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 LP Bounds for 2 to 34 jobs 400 linear ordering time expanded network 350 300 250 gap in % 200 150 100 50 0 5 10 15 20 25 30 number of jobs
LP Bounds LP Bounds for 2 to 34 jobs 400 linear ordering time expanded network 350 300 250 gap in % 200 150 100 50 0 5 10 15 20 25 30 number of jobs 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 � o r , ( p , q , t ) ,..., ( p n r , q n r , t n r ) � → 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 � o r , ( p , q , t ) ,..., ( p n r , q n r , t n r ) � → completion by solving -server problem through remaining jobs → lower bound for LSP( � , � ). → Branch-and-Bound (B&B) over partial scheduled tours
Combinatorial bounds – Subproblem 4 3 2 b partial scheduled tours 1 a welding lines given transversal lines S R ? R 4 1 2 3 S a b time
Combinatorial bounds – Subproblem 4 subproblem 3 2 b 1 a start position welding lines end position given transversal lines S R possible transversal lines ? R 4 1 2 3 S a b time
Combinatorial Bounds – Subproblem Solution 4 solution of subproblem 3 2 b 1 a welding lines start position end position given transversal lines S R transversal lines of 1-server solution R 4 1 2 3 S a b time
Combinatorial Bounds – Subproblem Solution 4 solution of subproblem 3 2 b 1 a welding lines start position end position given transversal lines S R transversal lines of 1-server solution R 4 1 2 3 S a b not feasible! time
Combinatorial Bounds – Subproblem Solution 4 feasible heuristic solution 3 2 b 1 a welding lines transversal lines S R R 4 1 2 3 S a b time Bonus: Fixed tour algorithm (e.g., Tuchscherer) → feasible solution
Computational Results for Fixed Assignments LP Bounds for 2 to 34 jobs for fixed assignment 50 linear ordering time expanded network combinatorial relaxation 40 30 gap in % 20 10 0 5 10 15 20 25 30 number of jobs
Computational Results for Fixed Assignments LP Bounds for 2 to 34 jobs for fixed assignment 50 linear ordering time expanded network combinatorial relaxation 40 30 gap in % 20 10 0 5 10 15 20 25 30 number of jobs 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
Recommend
More recommend