# cristina neacsu, karen daniels university of massachusetts lowell

Post on 21-Dec-2015

217 views

Embed Size (px)

TRANSCRIPT

- Slide 1
- Cristina Neacsu, Karen Daniels University of Massachusetts Lowell
- Slide 2
- B-Spline Curves & Surfaces Used in geometric modeling, graphics Gerald Farin. Curves and Surfaces for Computer Aided Geometric Design, Academic Press, 1988 www.cs.columbia.edu/ ~laza/heart3D/ www.aerohydro.com/products/rg/ papers/nasa_rg1/nasaf1.htm Theo Pavlidis. Algorithms for Graphics and Image Processing, ComputerScience Press, 1982
- Slide 3
- B-Spline Curves B-Splines are defined by control polygons Periodic Cubic B-Spline Curves Use a special set of cubic blending functions that have only local influence and each curve segment depends only on the 4 neighboring control points. Current work assumption: non-self-intersecting control polygons (at most one inflection point per curve segment).
- Slide 4
- Sample Application Areas CAD Sensors Lethal Action Locate, Identify, Track, Observe Sensor Coverage Targeting
- Slide 5
- Spline Covering Problem Covering Items: set of spline bounded regions B = {B 1, , B j, , B m } Target Item: spline bounded region A Output: a solution such that Sample A and B Translated Bs cover A A B1B1 B2B2 NP-Hard
- Slide 6
- Approach Construct Inner polygonal approximation to B Outer polygonal approximation to A Combinatorial Covering Algorithm feasible infeasible Original instance feasible Construct Cover ? Construct Outer polygonal approximation to B Inner polygonal approximation to A Combinatorial Covering Algorithm feasibleinfeasible ? Original instance infeasible
- Slide 7
- Previous Work - Covering Solving an apparel trim placement problem using a maximum cover problem approach (IIE Transactions 1999 Grinde, Daniels) Translational polygon covering using intersection graphs (CCCG01 Daniels, Inkulu) A Combinatorial Maximum Cover Approach to 2D Translational Geometric Covering (CCCG03 Daniels, Mathur, Grinde) Rigid, 2D, Exact, Polygonal & Point, Translation 13 {3}1 {1} 12 {3} 6 {1} 5 {3} 4 {2} 3 {2} 2 {1} 11 {2} 10 {2} 9 {3} 8 {1} 7 {3} P
- Slide 8
- Previous Work - Splines Convex hull property & variation diminishing property [Gerald Farin. Curves and Surfaces for CAD. Academic Press 1988] Trisection method [Theo Pavlidis. Algorithms for Graphics and Image Processing. Computer Science Press 1982] Monotone partitioning of spline-bounded shapes [Daniels 92] Estimate on the distance between a B-spline curve and its control polygon [D. Lutterkort and J. Peters. Linear Envelopes for Uniform B-Spline Curves. 2000] L M A B C D P1P1 P2P2 P3P3 P4P4 l1l1 l2l2
- Slide 9
- Curve Polygonal Approximation Monotone partitioning of spline-bounded shapes [Daniels 92] Piecewise-linear approximations using midpoints, inflection points, starting points for each curve segment, tangents at these points, and intersection between these tangents.
- Slide 10
- Polygonal Approximation Number of Vertices The total number of vertices of the polygonal approximation is: where n is the number of control points of the control polygon, n N is the number of curve segments with an N- shaped control polyline, n V is the number of curve segments with a V-shaped control polyline, and n S is the number of curve segments with an S-shaped control polyline.
- Slide 11
- Polygonal Approximations K. Daniels, R. D. Bergeron, G. Grinstein. Line-monotonic Partitioning of Planar Cubic B-Splines. Computer and Graphics 16, 1 (1992), 55:68. D. Lutterkort and J. Peters. Linear Envelopes for Uniform B-Spline Curves. Curves and Surfaces Design: Saint-Malo 1999. P. J. Laurent, et al (Eds.). Vanderbilt University Press, 2000, p. 239:246. D. Lutterkort and J. Peters. Tight Linear Envelopes for Splines. Numerische Mathematik 89, 4 (2001), 735:748. Monotone envelope N (shaded) and rectangle-based envelope H (boldfaced) for non-N-shaped control polyline Monotone envelope N (shaded) and rectangle-based envelope H (boldfaced) for N-shaped control polyline
- Slide 12
- Polygonal Approximation Curve segment with non-N-shaped control polyline Theorem: For a non-N-shaped control polyline, X 1 and X 2 cannot both be outside C. Corollary: For a non-N-shaped control polyline, if X 1 or X 2 is outside C, then H exits C through P 2 P 2 2. C is the convex hull of SP 2 P 3 E H = {H 1, H 2 }, where H 1 is SX 1 M and H 2 is MX 2 E
- Slide 13
- Polygonal Approximation Curve Segment with nondegenerate-N-shaped control polyline Theorem: For a nondegenerate N-shaped control polyline, X 1 and X 2 cannot both be outside C. Corollary: For a nondegenerate-N-shaped control polyline, H can exit C only through SP 3 if X 2 is outside C, or through EP 2, if X 1 is outside C. H = N
- Slide 14
- Lagrangian-Cover Combinatorial Covering Procedure Lagrangian-Cover Q j s:Triangles:Groups: G1 G2 Q1 Q2 G3 T1 T2 T3 T4 T5 Grinde, Daniels. Solving an apparel trim placement problem using a maximum cover problem approach, IIE Transactions, 1999 Daniels, Mathur, Grinde. A Combinatorial Maximum Cover Approach to 2D Translational Geometric Covering, CCCG03 Group choices: G1 for Q1 G2 for Q2 and group k has been assigned to some Qj
- Slide 15
- Lagrangian Relaxation Lagrangian Dual: min LR( ), subject to >= 0 Lagrangian Relaxation LR( ) Lagrange Multipliers 1 2 3 4 1 2 3 maximize >=0 and subtractin g term < 0 removing constraints 4 minimize Lower bounds come from any feasible solution to 1 Grinde, Daniels. Solving an apparel trim placement problem using a maximum cover problem approach, IIE Transactions, 1999 Daniels, Mathur, Grinde. A Combinatorial Maximum Cover Approach to 2D Translational Geometric Covering, CCCG03
- Slide 16
- Lagrangian Relaxation Lagrangian Relaxation LR( ) LR( ) is separable SP1 SP2 Solve: if (1- i ) >=0 then set t i =1 else set t i =0 Solve: Redistribute: Solve j sub-subproblems - compute g kj coefficients - set to 1 g kj with largest coefficient For candidate values, solve SP1, SP2
- Slide 17
- Triangle Subdivision Invariant: T is a triangulation of P P uncovered triangle T T I II T
- Slide 18
- Results #mnlrABkTime 1.261226CC07 2.2122618NC017 3.34824CC821 4.3153351NN331573 5.3102233NN&C22452 6.481656CC311394 4. 6. AGENDA m = # of Bs n = # of points in As control polygon l = # of points in As polygonal approx. r = total # of points in Bs polygonal app. C = convex N = non-convex k = # points in subdivision C++, LEDA library 450 MHz SPARC Ultra
- Slide 19
- Results #mnlrABkTime 7.4153640NC361787 8.4122868NN312187 9.5173757NN&C371984 10.5163648NC362937 11.5132767NN271084 12.6153572NC371846* 12. 11. 8. AGENDA m = # of Bs n = # of points in As control polygon l = # of points in As polygonal approx. r = total # of points in Bs polygonal app. C = convex N = non-convex k = # points in subdivision
- Slide 20
- Future Work Remove constraint of single inflection point Cusps, loops Construct Inner polygonal approximation to B Outer polygonal approximation to A Combinatorial Covering Algorithm feasible infeasible Original instance feasible Construct Cover ? Construct Outer polygonal approximation to B Inner polygonal approximation to A Combinatorial Covering Algorithm feasibleinfeasible ? Original instance infeasible
- Slide 21
- Future Work continued Generalize further the covering problem Rigid, 2D, Exact, Spline, Translation this work: flexibleapproximate3Drotation future work: If I do not find an exact covering, can I modify Q j s control polygons such that they can cover P?
- Slide 22
- Slide 23
- Backup Polygonal Covering Q3Q3 Q1Q1 Q2Q2 Sample P and Q P1P1 P2P2 Translated Q Covers P Input: Covering Items: Q = {Q 1, Q 2,..., Q m } Target Items: P = {P 1, P 2,..., P s } Subgroup G of Output: a solution = { 1, , j,..., m },, such that Rigid, 2D, Exact, Polygonal & Point, Translation NP-hard
- Slide 24
- Backup Subdivision
- Slide 25
- Backup Number of points in polygonal approximation
- Slide 26
- Backup Each segment of a cubic B-spline curve is influenced by only 4 control points, and conversely each control point influences only 4 curve segments. pi pi 1 i p i+2 p i-1 p i+1 0 p1 p1 p2 p2 p3 p3 p4 p4 p5 p5 p0 p0 p1* p1*
- Slide 27
- Backup For segment i of a periodic cubic B-spline curve we have: withfor open curves and where F j,4 are called blending functions and they are: 0 u 1 F 2,4 F 3,4 F 1,4 F 4,4 F 1 1 u 0 u=1 F 2,4 F 3,4 F 1,4 F 4,4
- Slide 28
- Backup Periodic Cubic B-Spline Curves for open curves Periodic cubic B-spline curves are well suited to produce closed curves. In matrix notation: for closed curves p1 p1 p2 p2 p3 p3 p4 p4 p5 p5 p0 p0 1 2 5 4 3 0
- Slide 29
- Backup C 0 continuity ensures that there are no gaps or breaks between a curves beginning and ending points. C 1 continuity between two curve segments requires a common tangent line at their joining point; C1 continuity also requires C0 continuity. C 2 continuity requires that the two curves possess equal curvature at their joint.
- Slide 30
- Backup Variables: Parameters: Brought into objective function for Lagrangian Relaxation Lagrangian Relaxation is used as a heuristic since optimal value of Lagrangian Dual is no better than Linear Programming relaxation. exac