linear programming manufacturing with
play

Linear Programming- Manufacturing with Computational Geometry - PowerPoint PPT Presentation

Yazd Univ. Linear Programming- Manufacturing with Computational Geometry Molds Manufacturing with Molds Half-plane intersection problem Computing 1395-2 intersection of two convex polygons Linear Programming Randomized Linear


  1. Yazd Univ. Linear Programming- Manufacturing with Computational Geometry Molds Manufacturing with Molds Half-plane intersection problem Computing 1395-2 intersection of two convex polygons Linear Programming Randomized Linear Programming 1 / 36

  2. Casting process Yazd Univ. Computational Geometry Manufacturing with Molds Half-plane intersection problem Computing intersection of two convex polygons Linear Programming Randomized Linear Programming 2 / 36

  3. The Geometry of Casting top facet ordinary facet Yazd Univ. Every ordinary facet f has a corresponding facet in Computational the mold, which we denote by ˆ f . Geometry castable object Manufacturing with Molds Half-plane intersection problem Computing intersection of two top facet convex polygons Linear Programming Randomized Linear Programming 3 / 36

  4. The Geometry of Casting Question: Yazd Univ. Given an object P , can it be removed from its mold by a single translation? Computational In other words, we want to decide whether a direction � Geometry d exists such that P can be translated to infinity in direction � Manufacturing with d without intersecting the interior of the mold during the Molds translation. Half-plane intersection problem Observation: Computing intersection of two Every ordinary facet f must move away from, or slide convex polygons along, its corresponding facet ˆ f of the mold. Linear Programming Randomized Linear Programming 4 / 36

  5. The Geometry of Casting Angle between two vectors in 3d: Yazd Univ. The angle of the vectors is the smaller of the two angles measured in the plane determined by them. Computational Geometry Manufacturing with Molds Half-plane intersection problem Computing intersection of two convex polygons Linear Programming Randomized Linear Programming 5 / 36

  6. Lemma 4.1 P can be removed from its mold in direction d if and only if d makes an angle of at least π/ 2 with the outward Yazd Univ. normal of all ordinary facets of P . Computational Geometry f Manufacturing with Molds P Half-plane � d intersection problem p Computing intersection of two convex polygons η ( ˆ � f ) Linear Programming Randomized Linear Programming 6 / 36

  7. 1-1 corresponding between direction and points Yazd Univ. z Computational Geometry z = 1 Manufacturing with Molds Half-plane intersection problem Computing intersection of two convex polygons Linear y Programming Randomized Linear Programming x 7 / 36

  8. By Lemma 4.1 η = ( � � η x , � η y , � η z ) : outward normal of an ordinary facet � d = ( d x , d y , 1) : removal direction Yazd Univ. η, � η.� ∠ ( � d ) ≥ π/ 2 ⇐ ⇒ � d ≤ 0 Computational η x × d x + � � η y × d y + � η z ≤ 0 Geometry This inequality describe a half-plane in the plane Manufacturing with z = 1 . Molds Half-plane intersection problem Computing intersection of two convex polygons Linear Programming Randomized Linear Programming 8 / 36

  9. An object P is castable, for a fixed top facet ⇐ ⇒ the Yazd Univ. intersection of half-planes is non-empty. Computational If the intersection problem is solvable in O ( A ) time, Geometry then the castability problem can be solved in O ( An ) time. Manufacturing with Molds We will solve the intersect5ion problem in O ( n ) Half-plane expected time. intersection problem Theorem 4.2: In O ( n 2 ) expected time and using Computing intersection of two O ( n ) storage it can be decided whether a polyhydron convex polygons with n facets is castable. Linear Programming Randomized Linear Programming 9 / 36

  10. Half-plane intersection problem Problem: Yazd Univ. Given a set H = { h 1 , h 2 , . . . , h n } of half-planes, find the intersection of them. Computational Geometry Given a set of n linear constraints in two variables, is there a point in the plane, find all points that satisfy Manufacturing with all the constraints. Molds Half-plane intersection Note: problem Computing For casting problem, we do not need to find the intersection of two convex polygons intersection of half-planes. Here we consider a more Linear general problem. Programming Randomized Linear Programming 10 / 36

  11. Half-plane intersection problem Observations: Since a half-plane is convex, the intersection of Yazd Univ. half-planes is convex. Computational Geometry Since the intersection is convex, every half-plane bounding line can contribute at most one edge. Manufacturing with A few examples of intersections of half-planes: Molds Half-plane (i) (ii) (iii) intersection problem Computing intersection of two convex polygons Linear Programming Randomized Linear Programming (iv) (v) 11 / 36

  12. Computing the intersection of n half-planes An straightforward divide-and-conquer algorithm: Yazd Univ. Algorithm I NTERSECT H ALFPLANES ( H ) Input. A set H of n half-planes in the plane. Computational Output. The convex polygonal region C : = � h ∈ H h . Geometry if card ( H ) = 1 1. then C ← the unique half-plane h ∈ H 2. Manufacturing with else Split H into sets H 1 and H 2 of size ⌈ n / 2 ⌉ and ⌊ n / 2 ⌋ . 3. Molds C 1 ← I NTERSECT H ALFPLANES ( H 1 ) 4. Half-plane intersection C 2 ← I NTERSECT H ALFPLANES ( H 2 ) 5. problem C ← I NTERSECT C ONVEX R EGIONS ( C 1 , C 2 ) 6. Computing intersection of two convex polygons Time complexity: Linear Programming � O (1) Randomized Linear if n = 1 Programming T ( n ) = 2 T ( n/ 2) + O ( n log n ) if n > 1 T ( n ) ∈ O ( n log 2 n ) . 12 / 36

  13. Computing the intersection of n half-planes An straightforward divide-and-conquer algorithm: Yazd Univ. Algorithm I NTERSECT H ALFPLANES ( H ) Input. A set H of n half-planes in the plane. Computational Output. The convex polygonal region C : = � h ∈ H h . Geometry if card ( H ) = 1 1. then C ← the unique half-plane h ∈ H 2. Manufacturing with else Split H into sets H 1 and H 2 of size ⌈ n / 2 ⌉ and ⌊ n / 2 ⌋ . 3. Molds C 1 ← I NTERSECT H ALFPLANES ( H 1 ) 4. Half-plane intersection C 2 ← I NTERSECT H ALFPLANES ( H 2 ) 5. problem C ← I NTERSECT C ONVEX R EGIONS ( C 1 , C 2 ) 6. Computing intersection of two convex polygons Time complexity: Linear Programming � O (1) Randomized Linear if n = 1 Programming T ( n ) = 2 T ( n/ 2) + O ( n log n ) if n > 1 T ( n ) ∈ O ( n log 2 n ) . 12 / 36

  14. Computing the intersection of n half-planes Question: Can we compute the intersection of two convex polygons in o ( n log n ) time? Yazd Univ. Answer: Yes, we can. Computational Geometry Manufacturing with Molds Half-plane intersection problem Computing intersection of two convex polygons Linear Programming Randomized Linear Programming v e 1 e 2 13 / 36

  15. Computing the intersection of n half-planes Question: Can we compute the intersection of two convex polygons in o ( n log n ) time? Yazd Univ. Answer: Yes, we can. Computational Geometry Manufacturing with Molds Half-plane intersection problem Computing intersection of two convex polygons Linear Programming Randomized Linear Programming v e 1 e 2 13 / 36

  16. Computing intersection of two convex polygons Yazd Univ. Computational Geometry h 2 Manufacturing with h 1 Molds h 3 Half-plane intersection right boundary problem Computing intersection of two h 4 convex polygons left boundary Linear h 5 Programming Randomized Linear Programming L left ( C ) = h 3 , h 4 , h 5 L right ( C ) = h 2 , h 1 14 / 36

  17. Computing intersection of two convex polygons We use a plane sweep algorithm: Yazd Univ. Note: At most 4 line segments intersect the sweep line. Computational Geometry C 1 C 2 Manufacturing with Molds right edge C1 = nil left edge C2 Half-plane intersection problem right edge C2 Computing left edge C1 intersection of two convex polygons Linear Programming Randomized Linear Programming 15 / 36

  18. Computing intersection of two convex polygons Yazd Univ. At each event point some new edge e appears on the boundary. Computational Geometry To handle the edge e : several cases: e belongs to C 1 or to C 2 , and whether it is on the left or the right Manufacturing with boundary. Molds Half-plane We consider the case when e is on the left boundary intersection problem of C 1 . Computing p : the upper endpoint of e . intersection of two convex polygons Three case (based on C ): Linear (1) the edge with p as upper endpoint, Programming Randomized Linear (2) the edge with e ∩ left _ edge _ C 2 as upper Programming endpoint, and (3) the edge with e ∩ right _ edge _ C 2 as upper endpoint. 16 / 36

  19. Computing intersection of two convex polygons It performs the following actions. Yazd Univ. Computational Geometry (i) (ii) p p Manufacturing with Molds e right edge C2 Half-plane right edge C2 intersection problem Computing e intersection of two convex polygons Linear Programming Randomized Linear Programming 17 / 36

  20. Computing intersection of two convex polygons Yazd Univ. p Computational Geometry Manufacturing with Molds e Half-plane intersection problem Computing intersection of two convex polygons left edge C2 Linear Programming Randomized Linear Programming 18 / 36

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend