A Process Planning and Optimization System for

Laminated Object Manufacturing Application

by
Anthony PANG
IEEM Dept.,
Hong Kong University of Science & Technology

Presentation Outline
1. Problem Description
2. Geometric Algorithm for Solid Level Process Planning
a.
b.
c.
d.

Convex Cover of the Build Part
Part Orientation Determination
Cutting Plane Generation
Internal Octree-based Grid Generation

3. Optimization of Layer level Cutting Path
a.
b.
c.

Genetic Algorithm
Genetic Algorithm with 3-opt
ATSP-Assign Iteration (Tucker’s formulation)

4. Operation Sequence for Proposed System
5. System Architecture
6. Conclusion

LOM Process Description

Section Area Layer Problems: (a) Wasted effort in cutting hatch grids (b) Wasted time due to poor path planning Lowest Section Layer .Problem Description Build object Traditional Hatching Grids Max.

Solid Model Level Optimization Convex Cover Cutting Plane Generation Cutting Plane .

Finding Good Parting Planes 1. Find the parting planes . Find the ‘best’ parting line 3. Orient the part on the machine 2.

Part Orientation Determination Vertical Orientation (assumed as given) Depends on surface finish considerations Wmin Horizontal Orientation Method:  The minimum projection width algorithm Algorithm: Project on XY Plane Rotating Caliper on CH(projection) PART paper advance pick-up roll X-width Z feed roll Y X .

Cutting Plane Determination .

Cutting Plane Determination .

Parting Line Determination (a) Flattest Parting Line vc1 vc6 vc5 v1 vc2 v7 vc4 v6 v5 v2 v9 v4 v8 vc3 y v3 .

. P C t1 PCs PCr v1 PCu1 P C t2 PCv1 PCu2 v7 v6 v5 v2 v9 v4 y PCv2 PCw v8 y v3 Polygons and vertex visibility (Dijkstra) .Parting Line Determination.

..Cutting Plane Determination .

Inside the Convex Hull: Octree cuts Object Enumeration Octree .

The Geometric Planning Sequence .

Solid Model Level Process Planning .

Solid Model Level Process Planning .

12 22.06 87.28 Reduction SL V .53 43.3 0 37479 37479 784413 0 0 6755260 6755260 18171 0 14246 14246 52540 0 48041 48041 2834 0 3045 3045 Bounding Box Cutting Plane Grids Total % 1114.92 0 438.75 6818 0 760 760 16825 4267 966 26477 17724 14423 33.84 29378.23 48.41 40.7 10530.2 12539.66 21.63 0 87.53 30.30 33.3 218813.72 12200700 0 450001 450001 3136580 0 1726700 0 3598830 5141063 0 4451709 1 3084892 1 13.84 438.29 4237.04 22.7 206676.27 317.83 49.0 24699.15 116749 0 10530.99 22.7 221805.06 45.74 43.7 367932.Performance Comparison Surface Area TestCase Traditional CH with Rect CH with Octree Toyplane Traditional CH with Rect CH with Octree Brake Casing Traditional CH with Rect CH with Octree Cover Traditional CH with Rect CH with Octree Cimplex Traditional CH with Rect CH with Octree Golf Iron Traditional CH with Rect CH with Octree Part Convex Hull 447.5 73094 0 2544 2544 137018 65325 26929 262652 241544 203148 8.51 110.00 19.7 40.82 2405.06 2675.3 25200 0 1451 1451 49887 20208 13391 93258 79276 72459 14.96 2198.

Laser Path Planning For Each Layer 3 8 9 4 9 7 2 10 5 15 14 11 1 13 12 10 11 6 13 8 7 14 5 12 4 6 1 3 2 .

all Xi' s and Yij' s can either be 0.using two variables to depict these decisions: vi1 Xi = | 1 if start vertex of arci is vi1 | 0 if start vertex of arci is vi2 Yij = | 1 if the i-th arc drawn is arcj | 0 otherwise Clearly. Which is the next arc to be machined 2. Problem description Two decisions at each step: 1. What is the sense of drawing arci vj1 vi2 curve j .Laser Path Planning For Each Layer . or 1 curve i vj2 ..

t vj1 cij curve j bij curve i dij vj2 Z jt ) Z jt  X j X t a jt  X j (1  X t )b jt  (1  X j ) X t c jt  (1  X j )(1  X t )d jt . Problem formulation n Y j 1 1j aij [ X j a 0 j  (1  X j ) a1 j ] + vi2 vi1 n Y j 1 nj [ X j a1 j  (1  X j ) a 0 j ] + n 1 n n  Y ( Y i 1 j 1 ij t 1 i 1...Laser Path Planning For Each Layer .

Kill a fraction of the worst solution. Sort populations based on performance of the solutions 3. Mate the better solutions randomly to create next generation 5.Genetic Algorithm Basics 1. e. Generate a large number of random solutions population 2. Worst 20% 4. Rank. Repeat Step 2-4 until an acceptable solution performance obtained .g.

.. .v2 • if Yi = 1.v1.1] • if Yi = 0. v1 and v2. each with two (possibly coincident) vertices..to...GA Methodology Two-chromosome organism • X-chromosome and Y-chromosome Each chromosome has the same number of genes.nArcs] • ith gene = K implies ith curve to be machined by the tool is curve K.to. then that curve machined from v2. Input : nArcs arcs. nArcs. Setup of the genes : X-chromosome : permutation of [1. then the i-th curve machined from v1. Y-chromosome : array of [0.

08 seconds for 100 iterations* *Real-time ‘optimization’ can be done .Layer Level Cutting Path Optimization Genetic Algorithm Example Results : Naive path (Traditional) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 Non-cutting distance 14.7547 units Iteration Time 0 sec GA path 1 2 3 4 5 6 7 9 8 11 14 12 13 10 19 16 17 18 15 20 21 22 Non-cutting distance 11.2814 units Iteration Time 12.

Jump-distances: GA + c 2-Opt d b e2 [current] pa + bc + dq e1 a q p [2-opt options] pa + bd + cq pb + ac + dq pb + ad + cq pc + ad + bq pc + bd + aq pd + bc + aq pd + ac + bq GA + 3-Opt c e f d e3 e2 q 1 1 a 4 p 3 2 b e1 2 3 4 .Improving the GA…….

Another way to do the path planning Assume: Start vertex of each Curve is given => Asymmetric Traveling Salesman Problem Assume: The Sequence of visiting each Curve is fixed => Assignment problem Strategy: Iterate between the ATSP and the Assignment .

. i  1.. uj arbitrary. n 11 33 j 1 n Y ij i 1 [Tucker] ui . j  1. p = max no of arcs visited by tool . 44 i = 1. i  j ui. . n  1..n.uj + pYij  p-1.The ATSP n 1 minimize: n Z   YijDij 22 i 1 j 1 subject to: n Y ij  1. j = 1…n.

xt 1   +   x t 2    +    xt 3    +   x t 4    =  1 t 1 P t+ 2 P t+ 2 1 t+ 1 3 minimize t1 t+ 1 1 t+ 1 2 X n1 t1 arct+2    +   Dt 2  xt 2    +   Dt 3  xt 3    +   Dt 4  x t 4  ) xt 1   +   x t 3    +    xt 11    +   xt 1 2      1 xt 2    +   x t 4    +    x t 1 3    +   x t1 4      1 t+ 1 4 2 .The Assignment Problem…… arct P t X 1 X X P t 2 arct+1 t 1 P t+ 1 X 1 X t 2 X t 3 X t 4 P t+ 1 2  ( D  x s.t.

256 layers Full part.6% .Performance comparisons Toy plane. (GA performance) Total Jumping Distance Traditional method 298625 GA with 3-Opt method 243589 % Saving (jump time) 25.

Operation sequence for proposed system Operation Sequence Flowchart: Load/Design the 3D solid model in the system Calculate the convex hull of the part Determine the optimal parting direction Generate the parting/cutting planes Generate the internal Octree-based waste grids Slice the object with all the artifacts into layers Optimize the laser cutting operation for each layer by 3-Opt GA algorithm .

System Architecture CAD Solid Model Surface Model Tessellation (STL) Slice data (uniform) User or API’s Build direction Artifacts Slice data (adaptive) .

System Architecture Data Flow Part model Application Layer Core Utilities CAD system Object Transformations STL Design Tessellation Part Level Artifacts Feature-based Model Slicing . Artifact Planning Geometry Engine Layer Geometry Convex Hull Slice Planning Minimum box cover Spline Approximation Tool Motion Data ..... ... Tool Motion Planning Optimization Engine Machine Control Data Machine Control Planning Genetic Algorithm .

CAD/CAM support system for Laminated Object Manufacturing Main Features: 1. Reduced waste cut 3. Geometric Based 2.Conclusion Accomplishments: Developed an Process Planning. Optimization-Driven. Optimized laser cutting motion 4. Open-Architecture system .

of Computer Integrated Manufacturing. David Lam. David C. Atlanta. April 2001 Ajay Joneja. April 2002 . 2001. Matthew Yuen. Sept 7-9. Matthew Yuen. . J. Anthony Pang.” Proceedings of DETC98 ASME Conference. 388-400.” Proceedings of the Intl Conference on RP and Mfg. Katta G. “Some geometric techniques to Reduce Build time in LOM. PA. 13.” ASME DETC. 5. “Tool Path Optimization in Layered Manufacturing. 2001 Ajay Joneja. “A Genetic Algorithm for Path planning in rapid prototyping .” Int. September 13–16. June 6-8. DFM conference. Ajay Joneja. 33(4): 345-355. “A New Architecture for CAD/CAM Systems for Rapid Prototyping. Matthew Yuen. GA.” IIE Transactions. Anthony Pang. Ajay Joneja. “A CAD/CAM system for process planning and optimization in LOM. “A CAD/CAM system for vector-based layered manufacturing systems. Ajay Joneja. TsingHua Univ.” Proceedings of International CIRP Design Seminar. Beijing. “An Integrated CAD/CAM System for Rapid Prototyping Applications. Anthony Pang. Pittsburgh.Journal: Publications Anthony Pang. Ajay Joneja. David Lam. Conference: Ajay Joneja. 1998. Matthew Yuen. Stockholm. David Lam. Sweden. Anthony Pang. Anthony Pang.” IIE Transactions. Anthony Pang. 2000.C. Leung Chi Chiu. 34(4):335-347. July 21-23. vol. David Lam. Murty. no. Matthew Yuen. Lam. 1998.

Future Work 1. Improved disassembly method (Automated Disassembly Checking) 4. LOM methods improvement: multiple parts 2. Nonlinear programming optimization for the path planning problem . Extension to other RP technologies (SLS) 3.

7500 1.7500 5.500 0 2.7500 1.ust.7500 1.7500 6.7500 1.500 1.7500 2.hk/dfaculty/ajay/projects/rp.500 !L3 0 0.2500 6.7500 1.7500 1.7500 2.2500 0 6.000 0 3.7500 6.7500 4. L5.7500 1.7500 !L4 0 1.000 3.500 0 3.7500 0 1.L3 (L4).7500 3.2500 0 3.2500 3.7500 4.7500 5.2500 3.DSL File !1 1 0.7500 3.2500 2.7500 2.2500 http://iesu5.500 2.7500 0.2500 1.500 0.2500 4.7500 5.2500 4.500 0.2500 2.7500 4.500 6.7500 0 3.500 2.7500 1. L6) !3 !L1 0 0.7500 3.7500 5.00100 !2 (L1 (L2).7500 1.7500 2.500 1.000 !L5 1 1 5.html .7500 4.7500 1 1 2.7500 2.2500 3.7500 3.7500 4.500 0 2.2500 2.Some thoughts on Direct Slice Formats Sample Slice Geometry Corresponding .7500 3.500 0 0.2500 3.7500 4.2500 2.7500 !L6 0 3.7500 1.000 3.2500 6.500 0 1.2500 !L2 0 1.500 0 6.2500 6.7500 3.7500 2.

The TsingHua Machine .

Result of the tested sample parts .

p = max no of arcs visited by tool l2 l1 l3 u1 – u2 + 3Y12  2 u1 – u3 + 3Y13  2 u2 – u3 + 3Y23  2 u2 – u1 + 3Y21  2 u3 – u1 + 3Y31  2 u3 – u2 + 3Y32  2 Assume cutting l1 then go to l2 Y12 = 1 u1 – u2  -1 Y21  1 u2 – u1  -1 Assume cutting l1 then go to l2 and finally go to l3 Y12 = 1 & Y23 = 1 If Y31 = 1 u1 – u2  -1 & u2 – u3  -1 u3 – u1  -1 u1  u3 u3  u2 & u2  u1 Contradictory condition .uj + pYij  p-1.n.Illustration of the Tucker’s formulation [Tucker] ui . j = 1…n.. i  j ui. i = 1.. uj arbitrary.