Design of Curves and Surfaces Using Multi-Objective Optimization

Similar documents
Lamarckian Repair and Darwinian Repair in EMO Algorithms for Multiobjective 0/1 Knapsack Problems

Multi-objective Optimization

Recombination of Similar Parents in EMO Algorithms

Incorporation of Scalarizing Fitness Functions into Evolutionary Multiobjective Optimization Algorithms

Comparison of Evolutionary Multiobjective Optimization with Reference Solution-Based Single-Objective Approach

A Similarity-Based Mating Scheme for Evolutionary Multiobjective Optimization

Multi-objective Optimization

A Distance Metric for Evolutionary Many-Objective Optimization Algorithms Using User-Preferences

Using ɛ-dominance for Hidden and Degenerated Pareto-Fronts

Approximation of 3D-Parametric Functions by Bicubic B-spline Functions

Multi-objective Optimization Algorithm based on Magnetotactic Bacterium

Towards Automatic Recognition of Fonts using Genetic Approach

Evolutionary multi-objective algorithm design issues

Multi-Objective Optimization using Evolutionary Algorithms

UNSTRUCTURED GRIDS ON NURBS SURFACES. The surface grid can be generated either in a parameter. surfaces. Generating grids in a parameter space is

Multi-Objective Optimization using Evolutionary Algorithms

Finding a preferred diverse set of Pareto-optimal solutions for a limited number of function calls

Approximation-Guided Evolutionary Multi-Objective Optimization

Computation Method for Evaluation of Surface Fine Structure by Highlight Lines

The Journal of MacroTrends in Technology and Innovation

Evolutionary Algorithms: Lecture 4. Department of Cybernetics, CTU Prague.

NCGA : Neighborhood Cultivation Genetic Algorithm for Multi-Objective Optimization Problems

Fairing Bicubic B-Spline Surfaces using Simulated Annealing

Development of Evolutionary Multi-Objective Optimization

EVOLUTIONARY algorithms (EAs) are a class of

Exploration of Pareto Frontier Using a Fuzzy Controlled Hybrid Line Search

Knot Insertion and Reparametrization of Interval B-spline Curves

Multiobjective Formulations of Fuzzy Rule-Based Classification System Design

SPEA2+: Improving the Performance of the Strength Pareto Evolutionary Algorithm 2

Topological Machining Fixture Layout Synthesis Using Genetic Algorithms

Multi-Objective Pipe Smoothing Genetic Algorithm For Water Distribution Network Design

Multi-Objective Optimization Using Genetic Algorithms

Revision of a Floating-Point Genetic Algorithm GENOCOP V for Nonlinear Programming Problems

Mechanical Component Design for Multiple Objectives Using Elitist Non-Dominated Sorting GA

High-Quality Shape Fitting for Aesthetic Modeling Based on Class A Condition

Local Modification of Subdivision Surfaces Based on Curved Mesh

Reference Point-Based Particle Swarm Optimization Using a Steady-State Approach

Assessing the Convergence Properties of NSGA-II for Direct Crashworthiness Optimization

Note on Industrial Applications of Hu s Surface Extension Algorithm

Evolutionary form design: the application of genetic algorithmic techniques to computer-aided product design

Fitting Uncertain Data with NURBS

DCMOGADES: Distributed Cooperation model of Multi-Objective Genetic Algorithm with Distributed Scheme

Decomposition of Multi-Objective Evolutionary Algorithm based on Estimation of Distribution

2) For any triangle edge not on the boundary, there is exactly one neighboring

Graphical User Interface For Multi-Objective Decision Support

Proceedings of the 2012 Winter Simulation Conference C. Laroque, J. Himmelspach, R. Pasupathy, O. Rose, and A.M. Uhrmacher, eds

NURBS: Non-Uniform Rational B-Splines AUI Course Denbigh Starkey

Efficient Degree Elevation and Knot Insertion for B-spline Curves using Derivatives

Evolutionary Multi-objective Optimization of Business Process Designs with Pre-processing

Genetic algorithms and finite element coupling for mechanical optimization

Performance Assessment of DMOEA-DD with CEC 2009 MOEA Competition Test Instances

Finding Sets of Non-Dominated Solutions with High Spread and Well-Balanced Distribution using Generalized Strength Pareto Evolutionary Algorithm

Finding Tradeoffs by Using Multiobjective Optimization Algorithms

Communication Strategies in Distributed Evolutionary Algorithms for Multi-objective Optimization

International Conference on Computer Applications in Shipbuilding (ICCAS-2009) Shanghai, China Vol.2, pp

Until now we have worked with flat entities such as lines and flat polygons. Fit well with graphics hardware Mathematically simple

CHAPTER 2 MULTI-OBJECTIVE REACTIVE POWER OPTIMIZATION

Constrained modification of the cubic trigonometric Bézier curve with two shape parameters

9.0 References. [Appl89] Applegarth, I., Catley, D., Bradley, I., Clipping of B-spline patches at

Progressive Surface Modeling Based On 3D Motion Sketch

Lecture 5: Optimization of accelerators in simulation and experiments. X. Huang USPAS, Jan 2015

Optimizing Delivery Time in Multi-Objective Vehicle Routing Problems with Time Windows

MULTI-OBJECTIVE OPTIMIZATION

Dgp _ lecture 2. Curves

Late Parallelization and Feedback Approaches for Distributed Computation of Evolutionary Multiobjective Optimization Algorithms

A gradient-based multiobjective optimization technique using an adaptive weighting method

Finding Knees in Multi-objective Optimization

Multiobjective Job-Shop Scheduling With Genetic Algorithms Using a New Representation and Standard Uniform Crossover

An Evolutionary Multi-Objective Crowding Algorithm (EMOCA): Benchmark Test Function Results

Improving interpretability in approximative fuzzy models via multi-objective evolutionary algorithms.

CHAPTER 6 REAL-VALUED GENETIC ALGORITHMS

On The Effects of Archiving, Elitism, And Density Based Selection in Evolutionary Multi-Objective Optimization

SPEA2: Improving the strength pareto evolutionary algorithm

A NURBS-BASED APPROACH FOR SHAPE AND TOPOLOGY OPTIMIZATION OF FLOW DOMAINS

Les Piegl Wayne Tiller. The NURBS Book. Second Edition with 334 Figures in 578 Parts. A) Springer

Interpolating and approximating scattered 3D-data with hierarchical tensor product B-splines

Compromise Based Evolutionary Multiobjective Optimization Algorithm for Multidisciplinary Optimization

Hybrid Genetic Algorithms for Multi-objective Optimisation of Water Distribution Networks

Improved S-CDAS using Crossover Controlling the Number of Crossed Genes for Many-objective Optimization

An Exploration of Multi-Objective Scientific Workflow Scheduling in Cloud

R2-IBEA: R2 Indicator Based Evolutionary Algorithm for Multiobjective Optimization

Multiobjective Optimisation. Why? Panorama. General Formulation. Decision Space and Objective Space. 1 of 7 02/03/15 09:49.

COLLISION-FREE TRAJECTORY PLANNING FOR MANIPULATORS USING GENERALIZED PATTERN SEARCH

Reference Point Based Evolutionary Approach for Workflow Grid Scheduling

A Memetic Heuristic for the Co-clustering Problem

Parameterization for curve interpolation

Developing an Approach to Redesign Freeform Surfaces Using B-Spline Technique

Approximation Model Guided Selection for Evolutionary Multiobjective Optimization

Evolutionary Algorithms

Improved Pruning of Non-Dominated Solutions Based on Crowding Distance for Bi-Objective Optimization Problems

Genetic Model Optimization for Hausdorff Distance-Based Face Localization

Experimental Study on Bound Handling Techniques for Multi-Objective Particle Swarm Optimization

Need for Parametric Equations

Multi-Objective Memetic Algorithm using Pattern Search Filter Methods

GT HEURISTIC FOR SOLVING MULTI OBJECTIVE JOB SHOP SCHEDULING PROBLEMS

HYBRID GENETIC ALGORITHM WITH GREAT DELUGE TO SOLVE CONSTRAINED OPTIMIZATION PROBLEMS

Module 1 Lecture Notes 2. Optimization Problem and Model Formulation

Sparse Matrices Reordering using Evolutionary Algorithms: A Seeded Approach

An External Archive Guided Multiobjective Evolutionary Approach Based on Decomposition for Continuous Optimization

Tracking Minimum Distances between Curved Objects with Parametric Surfaces in Real Time

Transcription:

Design of Curves and Surfaces Using Multi-Objective Optimization Rony Goldenthal and Michel Bercovier Abstract. Design by optimization of curves and surfaces is a powerful design technique. The mathematical modeling of the design problem often results in a multi-objective optimization (MOO) problem which cannot be handled as such by traditional single objective optimization algorithms. Hence an evolutionary MOO algorithm is used to handle this case. The use of MOO algorithm enhances the design process by enabling optimization of several design objectives at once. The algorithm is used for the optimization of NURBS curves and surfaces. The optimization variables are the knot vectors, the parametrizations and the NURBS weights; all of which are set automatically during the optimization process as those who define the optimal surface with respect to the design objectives. 1. Introduction Design by optimization of curves and surfaces is a powerful design technique. In this framework the quality of the surface is measured using a certain function, then an optimization algorithm is applied in order to optimize the function to improve the quality of the surface. Often, the initial data is not a surface, but some measurement points in space which roughly define the shape of the surface. The surface should approximate the shape defined by these measurement points. In order to assure that the surface approximates the measurement points, a functional which measures the distance between the surface and the points is defined. This functional is to be minimized as well. Furthermore, in order to guaranty robustness of the optimization algorithm and in order to prevent certain singular situations fairness terms may be added. The fairness terms are often functionals to be optimized. Thus a typical design by optimization easily ends up with several functionals to optimize, therefore a multi-objective algorithm is 1

2 R. Goldenthal M. Bercovier required. Multi-objective optimization problems do not have in general a unique optimal solution. Rather the result is a set of candidate solutions. Traditional optimization algorithms such as conjugate gradient and Newton based approaches are only suited for single functional to be optimized. Previous works dealt with this general situation in several ways: augmenting all the functionals into a single functional by setting importance to each functional (weights) and summing all the functional into a single one [9, 11, 13, 2, 3]; splitting the optimization process into several phases and optimizing each functional separately [22, 4] or modeling the problem as an optimal control problem, in this case the fitting part becomes the state function and the design objective is the cost function [1, 12]. The above approaches allow to plug a multi objective problem into single objective optimization algorithm and obtain results (These approaches clearly do not solve the multi objective problem as such). In this work a real multi objective algorithm will be used in order to handle all functionals resulting from the design by optimization approach. The result of the optimization process is set of NURBS surfaces or curves of arbitrary degree. The optimization variables are the NURBS weights (poles) w, knot vector u, v and parametrization s, t, Once multi-objective algorithm is used new design possibilities arise: the user can freely choose more than one design objective in order to better express his design needs. By using a real multi objective algorithm there is no need to apriory compromise between the different functionals: no weights need to be assigned to each functional; all the functionals are optimized at once and the result is a set of solutions which represent optimal trade off between the different functionals. As opposed to traditional surface fitting algorithms, our method sets all the parameters automatically as those which optimize the design objectives, i.e. no need to set parameterization, knot vectors or NURBS weights. The resulting optimization algorithm is highly automatic (few parameters to set), robust, effective and capable of handling highly non-linear (even non-derivable) design objectives. 2. Problem Statement The group of surfaces dealt with in this work are tensor product NURBS surfaces of arbitrary degree. A tensor product NURBS surface is defined as n 1 S(u,v) = i=0 m 1 j=0 P i,j R i,j (s,t) (1) Where P i,j are the control points of the surface and R i,j (s,t) are the NURBS basis function which depend on w, the poles, u, v the horizontal

Design of Curves and Surfaces Using MOO 3 and vertical knot vectors, the orders d u,d v of the surface and s, t the parametrization. The input for the optimization problem is: a set of measurements (input points) Q = Q 0,0,...,Q N 1,M 1 R d, d = 2,3 the orders of the surface and the number of control points to be used n,m. a set of design objectives J 0 (S(s,t)),...,J k (S(s,t)) to guide the optimization process, see section. The optimization variables are the NURBS poles w, knot vectors s, t and parametrization u, v. Linear least squares fitting is used to create a surface (calculate the control points P i,j ) from the input points, Q i,j. This fitting depends on the the optimization variables. The quality of this surface is determined by evaluating all the selected design objectives on it. The goal of the optimization process is to produce a set of NURBS surfaces which approximates the input points Q and are optimal with respect to the specified design objectives. 2.1. Design Objectives As seen in [11], the use of genetic algorithm for curve optimization allows usage of highly non-linear and even non-derivable design objectives. For curves, the same design objectives as in [11] are used. For surfaces, the following design objectives were implemented: 2.1.1 Approximation Error Measuring approximation error is norm specific, in gradient based methods usually the L 2 norm is used because it is derivable. n 1 J = min( i=0 m 1 j=0 S(s i,t i ) Q i,j 2 ) (2) There are situations, however, in which measuring approximation error is more natural under the L norm. Using genetic algorithm both equations can be optimized. The approximation error under L norm is: J = max( S(s i,t j ) Q i,j ),i = 0,...,n 1;j = 0,...,m 1 In both cases the distance between the surface and the points Q measured at the parametrization points s i, t j. It is important to note that when using the approximation error as a design objective the optimization variables are modified in order to reduce the error. While during

4 R. Goldenthal M. Bercovier the linear least squares fitting mentioned in section the surface which minimizes the L 2 approximation error with respect to the current optimization variables is found. 2.1.2 Surface Area Surface area can be valuable design objective in conjunction with approximation error since optimizing it can help controlling artifacts due to over-fitting. 1 1 J = ds ds ds dt dsdt 2.1.3 Surface Elastic Energy 0 0 Optimizing this term generally produces visually pleasing surfaces. J = 1 1 0 0 κ 2 min + κ 2 max da Where A is the surface area. This is a highly non-linear term, by using genetic algorithm it is possible optimize this exact term and not use an approximating term (such as the norm of the second derivatives). Using multiple-objective optimization any combination of the above is possible. 2.2. Optimizing NURBS Surfaces The handling of the parameterization and knot vector is similar to [11] with the main difference that for surfaces there are two parametrization and knot vectors instead of one for curves. Incorporating the NURBS weights makes the optimization process considerably more complex and time consuming: The number of degrees of freedom (DOF) is largely increased: When optimizing only the knot vector and parametrization the number of DOF is proportional to n + m (sizes of parameterization in horizontal and vertical direction), while during NURBS weights optimization the number of DOF is proportional to n m since there is one weight for each control point. The calculation of the derivatives becomes more complex (see [19]). Given the optimization variables u, v, s, t, w linear least squares fitting is used to find the control points d that define the surface which best approximates the given input points Q. In order for the surface to have the specified weights w and still approximate the input points, the technique described in [14] was used: Let M be the collocation matrix used for non-rational B-Spline surface fitting; Q x, Q y, Q z are the coordinates of Q, the data to be fitted; diag(x)

Design of Curves and Surfaces Using MOO 5 a diagonal matrix whose entries are the vector x. t = M w X = diag(q x ) Y = diag(q x ) Z = diag(q z ) v x = X t v y = Y t v z = Z t The position of the surface s control points (multiplied by their weights) P x, P y, Pd z are given by least solution of the following equations: d x = M v x d y = M v y d z = M v z Another complexity rising from NURBS optimization lies in the non-linear nature of local weight modification. Using a robust optimizer such as a genetic algorithm this non-linearity can be handled. The extra effort done in order to support NURBS is important since non-rational B-splines cannot precisely represent important family of curves and surfaces including circles, ellipses, spheres, cylinders, etc. (a) length: 3.932; L 2 approximation error: 0.00014 (b) length: 3.909; L 2 approximation error: 0.00021 (c) length: 3.965; L 2 approximation error: 0.00154 Fig. 1. Curves (a) and (b) are not-dominated with respect to each other. i.e. it cannot be decided which one is better with respect to the design objectives. Curve (c), on the other hand, is dominated by both (a) and (b); it is worse than both other curves. 3. Optimization Process Multi-objective optimization (MOO) algorithm must be used in order to efficiently optimize all the design objectives at once. The results shown in this work are produced using NSGAII [5] Other algorithms (NSGA [21] and SPEA [23] were tested and produced comparable results.

6 R. Goldenthal M. Bercovier 3.1. Domination and the Pareto-Optimal Set When trying to optimize more than one (potentially conflicting) functionals better-than and worse-than relationship do not longer hold. For example, when optimizing approximation error and curve length These design objective are conflicting since the longer the curve is the more it is able to fit the input points. Examine the three curves in figure 1: c 1 has length of 3.932 and approximation error of 0.00014; c 2 has length of 3.909 and approximation error of 0.00021; c 3, on the other hand, has length of 3.965 and approximation error of 0.00154. It can be easily seen than c 1 and c 2 are better in both objectives than c 3. It cannot be determined, however, without applying further knowledge if c 1 or c 2 is better. c 1 and c 2 are said to dominate the solution c 3. c 3 is sub-optimal with regard to the other curves and therefore is not part of the optimal solution set. This relationship between c 1 and c 2 is said to be non-dominated with respect to each other. The goal of a multi-objective algorithm therefore is to find as many solutions as possible from the set of non-dominated solutions, also known as the Pareto optimal set. Another important goal is to have the solutions as diverse as possible in the solution space. The reason for this is to reduce bias towards any specific design objective. For a more formal definition of domination and the Pareto optimal set, see [6]. 3.2. Evolutionary Algorithms Evolutionary algorithms [10] are natural choice for multi-objective optimization [6] since at each step the algorithms keeps a population, which is a set of solutions instead of a single, optimal, solution. The use of single objective evolutionary algorithm in CAD proved to be a powerful technique [11, 20, 15, 16] because of its robustness and efficient handling of highly non-linear objective functions and constrains. The extension from single objective to multi-objective is straight-forward. The main difference is in the selection step. In this step the individuals are sorted into dominated and non-dominated solutions. The selection of parents for the next generation favors non-dominated individuals. The result of the algorithm is the set of non-dominated solutions in the last generation of the algorithm. See [5, 21, 6, 23, 18] for more details about this step. See figure 2 for a schematic description of the optimization process. 4. Results The library MOMHLib++ [17, 18] was used for the implementation of the above MOO algorithms. The IRIT solid modeling environment [8] was used for the NURBS related routines. 4.1. Curve Optimization

Design of Curves and Surfaces Using MOO 7 Population Initialization random u,v,s,t uniform w Fitness Evaluation For each individual: create surface by fitting; evaluate all design objectives Selection Select parents for breeding: prefer among not dominated set New Generation create offspring by crossover of two parents mutate new offspring add offspring to new generation Replace Generations Check Termination Fig. 2. Schematic flow chart of the optimization process In figure 3 three NURBS curves are displayed. It is an interpolation example with 14 input points; the order of the curves is 4. Below each curve the relative place in the non-dominated set is displayed. The x-axis represents the length of the curve, the y-axis represents the elastic energy. As mentioned before since the design objective are conflicting, it cannot be determined which of the curves is the best. The designer must, using his aesthetic sense or other other heuristic decide which curve to select. 4.2. Surface Optimization Figure 4 displays an approximating surface example. 144 input points are approximated using 36 control points and 6th order surfaces (in both directions). The design objectives are: L 2 approximation error, surface area and surface elastic energy. Table 1 summarizes the design objective results for this example. It can be seen that the extreme surfaces: i.e. surfaces with best design objective in one of the objectives, look less appealing than surfaces with overall good objective values. 5. Discussion In general the result of MOO is a set of solutions and not a single solution. At first it may seem as a drawback, but for this application, it is considered as one of its strengths. Design, in principle, is a decision making process, either by a computer or by a human designer. By using single objective optimization all the decisions are done by the optimization software leaving little freedom for the user (human designer). Since some surface qualities are hard to measure using mathematical equations (for example beauty of the surface) such consideration cannot be part of a single objective optimization process. On the other hand, using MOO, the user can select any surface from the final non-dominated set since they are all optimal, with respect to the measureable design objectives. During this selection high level decision such as the beauty of the surface can be taken into consideration. A different, interesting, approach suggested in [7] is to use the non-dominated set in order to come up with innovative design principles.

8 R. Goldenthal M. Bercovier Sub-figure Approximation Error Area Elastic Energy (a) 0.155 1.191 20.120 (b) 0.090 1.204 28.626 (c) 0.158 1.049 36.593 (d) 0.092 1.099 37.156 (e) 0.063 1.282 93.550 (f) 0.214 1.039 97.648 Tab. 1. Comparison of design objective values among the surfaces figure 4 6. Conclusion In this work a multi objective optimization algorithm was suggested for design by optimization of curves and surfaces. This approach seems promising due to the robustness and efficiency of evolutionary algorithms combined with the design flexibility resulting from multi-objective optimization. Optimizing the knots, parametrization and NURBS weights exploits maximal degrees of freedom of the surface and therefore high quality results may be obtained. 7. References 1. Alhanaty, M., Bercovier M., Curve and surface fitting and design by optimal control methods, Computer-Aided Design, Vol. 33, No. 2, pp. 167 182, 2001. 2. Bloor, M.I.G, Wilson, M.J, Hagen, H., The smoothing properties of variational schemes for surface design, Computer Aided Geometric Design, Vol. 12, pp. 381 394, 1995. 3. Brunnett, G., Hagen H., Santarelli P., Variational design of curve and surfaces, Surveys on Mathematics for Industry, Vol 3. pp. 1 27, 1993. 4. Brunnett, G., Kiefer, J., Interpolation with minimal-energy splines. Computer-Aided Design, Vol. 26, No. 2, pp. 137 144, 1994. 5. Deb, K., Goel T., Controlled elitist non-dominated sorting genetic algorithms for better convergence, Proc. of the First International Conference on Evolutionary Multi-Criterion Optimization, Lecture Notes in Computer Science E. Zitzler, K. Deb, L. Thiele, C.A. Coello Coello, D. Corne (eds.) vol 1993, Springer, Berlin (2001), 67 81. 6. Deb, K., Evolutionary algorithms for multi-criterion optimization in engineering design, Evolutionary Algorithms in Engineering and Computer Science, Miettinen K., Mäkelä, M. M., Neittaanmäki, P., and

Design of Curves and Surfaces Using MOO 9 Periaux J. (eds.), John Wiley Sons, Ltd, Chichester, UK, pp. 135 161, 1999. 7. Deb, K., Chaudhuri, S., Jain, P., Gupta, N.,Maji H., and Reddy, R., Discovering innovating design principles using multiple conflicting objectives International Congress Evolutionary Methods for Design, Optimization and Control with Applications to Industrial Problems, Bugeda, G., Désidéri, J.-A, Périaux, J., Schoenauer, M., and Winter G. (eds.), 2003 8. Elbar, G., IRIT solid modeling environment, http://www.cs.technion.ac.il/ irit/ 9. Laurent-Gengoux, P., Mekhilef M., Optimization of a NURBS representation, Computer-Aided Design 2 (1981), 699 710. 10. Goldberg, D. E., Genetic Algorithms in Search Optimization and Machine Learning, Addison-Wesley, 1989 11. Goldenthal, R., Bercovier, M., Spline curve approximation and design over the knots using genetic algorithms, International Congress Evolutionary Methods for Design, Optimization and Control with Applications to Industrial Problems, Bugeda, G., Désidéri, J.-A, Périaux, J., Schoenauer, M., and Winter G. (eds.), 2003 12. Goldenthal, R., Bercovier, M., Spline curve approximation and design over the knots, Computing, Springer-Verlag Wien,Vol. 72, num. 1-2, pp. 53 64, April 2004 13. Loos, J., Greiner, G., Seidel,H.-P., Modeling Surfaces with Fair Reflection Line Pattern, Proceedings of the 1999 International Conference on Shape Modelling and Applications, Aizu-Wakamatsu, pp. 256-263. 1999. 14. Ma, W., Knuth, J.-P., NURBS curve and surface fitting and interpolation, Mathematical Methods for Curves and Surfaces, M. Dæhlen, T. Lyche, and L. L. Schumaker (eds.), Vanderbilt University Press, Nashville, 1995 pp. 315 322 15. Markus, A., Renner G., and Vancza, J., Genetic algorithms in free form curve design, Mathematical Methods for Curves and Surfaces, Vanderbilt University Press,pp 343 354. 1995. 16. Markus, A., Renner, G., and Vancza, J., Spline interpolation with genetic algorithms, Proceedings of the 1997 International Conference on Shape Modelling and Applications, Aizu-Wakamatsu, pp. 47 54. 1997. 17. Jaszkiewicz, A., MOMHLib++: Open source Multiple- Objective MetaHeuristics Library in C++, http://wwwidss.cs.put.poznan.pl/ jaszkiewicz/momhlib/

10 R. Goldenthal M. Bercovier 18. Jaszkiewicz, A., Comparative study of multiple-objective metaheuristics on the bi-objective set covering problem and the pareto memetic algorithm, Annals of Operations Research, 131 (1-4), pp. 135 158, October 2004 19. L. Piegl, W. Tiller, The NURBS Book, 2nd Edition, New York: Springer-Verlag. 1997. 20. Renner G. (ed.), Computer-Aided Design, Genetic Algorithms, Vol 35, Issue 8. pp. 707 769, 2003. 21. Srinivas N., Deb K., Multiple objective optimization using nondominated sorting in genetic algorithms, Evolutionary Computation, 2, 2, 221-248, 1994. 22. Westgaard, G., Nowacki H., Construction of fair surfaces over irregular meshes, ACM Symposium on Solid Modeling and Applications, Proceedings of the sixth ACM symposium on Solid modeling and applications, pp. 88 98, 2001. 23. Zitzler E., Thiele L., Multiobjective evolutionary algorithms: a comparative case study and the strength pareto evolutionary algorithm, IEEE Transactions on Evolutionary Computation, 3, 4, 257 271, 1999. Rony Goldenthal and Michel Bercovier Hebrew University Jerusalem, Israel {ronygold,berco}@cs.huji.ac.il http://www.cs.huji.ac.il/labs/cad

Design of Curves and Surfaces Using MOO 11 (a) length: 3.454; elastic energy: 200.588 (b) length: 3.525; elastic energy: 108.755 (c) length: 3.606; elastic energy: 52.197 (d) shortest curve (e) a compromise between length and elastic energy (f) curve with the least elastic energy Fig. 3. Different solutions from the non-dominated set. Design objective are curve length and elastic energy. Below each curve is displayed its relative position in the final non-dominated set. The y axis represents the elastic energy and the x axis represents the length.

12 R. Goldenthal M. Bercovier (a) 0.155; 1.191; 20.120 (b) 0.090; 1.204; 28.626 (c) 0.158; 1.049; 36.593 (d) 0.092; 1.099; 37.156 (e) 0.063; 1.282; 93.550 (f) 0.214; 1.039; 97.648 Fig. 4. Different solutions from the non-dominated set; the values under each figure are the approximation error, surface area and elastic energy respectively (these are the design objectives). Table 1 summarizes these results