×

Robust generation of constrained B-spline curves based on automatic differentiation and fairness optimization. (English) Zbl 1381.65011

Summary: This paper details the use of automatic differentiation in form parameter driven curve design by constrained optimization. Computer aided design, computer aided engineering (CAD/CAE), and particularly computer aided ship hull design (CASHD) are typically implemented as interactive processes in which the user obtains desired shapes by manipulation of control vertices. A fair amount of trial and error is needed to achieve the desired properties. In the variational form parameter approach taken here, the system computes vertices so that the resulting curve meets the specifications and is optimized with respect to a fairness criteria. Implementation of curve design as an optimization problem requires extensive derivative calculations. The paper illustrates how the programming burden can be eased through the use of automatic differentiation techniques. A variational curve design framework has been implemented in Python, and applications to CASHD curve design are shown. The new method is robust and allows great flexibility in the selection of constraints. Offsets, tangents, and curvature may be imposed anywhere along the curve. Form parameters may also be used to define straight segments within a curve, require the curve to enclose specified forms, or specify relationships between curve properties.

MSC:

65D17 Computer-aided design (modeling of curves and surfaces)
65D07 Numerical computation using splines
65D25 Numerical differentiation
Full Text: DOI

References:

[1] Theano: a Python framework for fast computation of mathematical expressions
[2] Andersson, J.; Gillis, J.; Horn, G., CasADi: a symbolic framework with automatic differentiation (2012)
[3] Arbenz, P.; Gander, W., Solving nonlinear eigenvalue problems by algorithmic differentiation, Computing, 36, 3, 205-215 (1986) · Zbl 0582.65025
[4] Bell, B.; Walter, S., pycppad: a Python algorithm derivative package (2012)
[5] (Birk, L.; Harries, S., Optimistic - Optimization in Marine Design (2003), Mensch & Buch Verlag: Mensch & Buch Verlag Berlin)
[6] Bole, M., Parametric Generation of Yacht Hulls (1997), University of Strathclyde: University of Strathclyde Glasgow, UK
[7] Bole, M.; Lee, B., Integrating parametric hull generation into early stage design, Ship Technol. Res., 53, 115-137 (2006)
[8] Boyd, S.; Vandenberghe, L., Convex Optimization (2004), Cambridge University Press · Zbl 1058.90049
[9] Christianson, B., Automatic Hessians by Reverse Accumulation, Other Titles in Applied Mathematics (2008), SIAM: SIAM Philadelphia, PA · Zbl 0754.65022
[10] (Christodoulos, A.; Panos, M., The Encyclopedia of Optimization (2009), Springer) · Zbl 1156.90001
[11] Cox, M., The numerical evaluation of B-splines, IMA J. Appl. Math., 10, 2, 134-149 (1972) · Zbl 0252.65007
[12] de Boor, C., On calculating with B-splines, J. Approx. Theory, 6, 1, 50-62 (1972) · Zbl 0239.41006
[13] (de Boor, C., A Practical Guide to Splines (1978), Springer-Verlag: Springer-Verlag New York) · Zbl 0406.41003
[14] Eberhard, P.; Bischof, C., Automatic differentiation of numerical integration algorithms, Math. Comput., 68, 226, 717-731 (1999) · Zbl 1017.65062
[15] Giles, M., An Extended Collection of Matrix Derivative Results for Forward and Reverse Mode Algorithmic Differentiation (2001), Oxford University Computing Laboratory, Tech. Rep. No. 08
[16] Giles, M.; Ghante, D.; Duta, M., Using Automatic Differentiation for Adjoint CFD Code Development (2005), Oxford University Computing Laboratory, Tech. Rep. No. 05
[17] Griewank, A., On automatic differentiation, (Mathematical Programming: Recent Developments and Applications (1989), Kluwer Academic Publishers), 83-108 · Zbl 0696.65015
[18] Harries, S., Parametric Design and Hydrodynamic Optimization of Ship Hull Forms (1998), Technische Universität Berlin (D83): Technische Universität Berlin (D83) Berlin, Ph.D. thesis
[19] Harries, S.; Nowacki, H., Form parameter approach to the design of fair hull shapes, (10th International Conference on Computer Applications in Shipbuilding. 10th International Conference on Computer Applications in Shipbuilding, ICCAS ’99 (1999), Massachusetts Institute of Technology: Massachusetts Institute of Technology Cambridge, MA)
[20] Hovland, P.; Mohammadi, B.; Bischof, C., Automatic Differentiation and Navier-Stokes Computations (1998), Argonne National Laboratory, Tech. Rep. · Zbl 1041.76550
[21] Kim, H., Parametric Design of Ship Hull Forms (2004), Technische Universität Berlin (D83): Technische Universität Berlin (D83) Berlin, Ph.D. thesis
[22] Lee, A., ad: fast, transparent first- and second-order automatic differentiation (2008)
[23] Lin, R., Espath, L., Awruch, A., 2013. Shape Optimization of Axisymmetric Solids Using Automatic Differentiation and NURBS Parameterization. Asociacion Argentina de Mecanica Computacional.; Lin, R., Espath, L., Awruch, A., 2013. Shape Optimization of Axisymmetric Solids Using Automatic Differentiation and NURBS Parameterization. Asociacion Argentina de Mecanica Computacional.
[24] Luenberger, D.; Ye, Y., Linear and Nonlinear Programming (2008), Springer · Zbl 1207.90003
[25] Neidinger, R., Introduction to automatic differentiation and MATLAB object-oriented programming, SIAM Rev., 52, 545-563 (2010) · Zbl 1196.65048
[26] Nowacki, H., Five decades of computer-aided ship design, Comput. Aided Des., 42, 11, 956-969 (2010) · Zbl 1206.74004
[27] Nowacki, H.; Reed, M., Interactive creation of fair ship lines, J. Ship Res., 18, 96-112 (1974)
[28] (Nowacki, H.; Bloor, M.; Oleksiewicz, B., Computational Geometry for Ships (1995), World Scientific)
[29] Piegl, L.; Tiller, W., The NURBS Book (1997), Springer · Zbl 0868.68106
[30] Ramshaw, L., Blossoming: A Connect-the-Dots Approach to Splines (1987), Compaq Systems Research Center, Tech. Rep. 19
[31] Rogers, D., B-spline curves and surfaces for ship hull definition, (1st Int. Symposium on Computer-Aided Hull Surface Definition. 1st Int. Symposium on Computer-Aided Hull Surface Definition, Annapolis, MD (1977)), 79-96
[32] Rossum, G., Python Reference Manual (1995), Centrum voor Wiskunde en Informatica (CWI): Centrum voor Wiskunde en Informatica (CWI) Amsterdam, The Netherlands, Tech. Rep
[33] Walter, S., PYADOLC: a Python wrapper for ADOL-C (2008)
[34] Walter, S., AlgoPy: algorithmic differentiation in Python (2013)
[35] Westgaard, G., Construction of Fair Curves and Surfaces (2000), Technische Universität Berlin (D83): Technische Universität Berlin (D83) Berlin, unipub forlag
This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. In some cases that data have been complemented/enhanced by data from zbMATH Open. This attempts to reflect the references listed in the original paper as accurately as possible without claiming completeness or a perfect matching.