Design of Curves and Surfaces by Multi Objective Optimization - PowerPoint PPT Presentation

1 / 54
About This Presentation
Title:

Design of Curves and Surfaces by Multi Objective Optimization

Description:

Fitting finding surfaces (curves) as close as possible to a ... In order to encourage diversity in the population fitness is reduced for similar solutions. ... – PowerPoint PPT presentation

Number of Views:99
Avg rating:3.0/5.0
Slides: 55
Provided by: rony2
Category:

less

Transcript and Presenter's Notes

Title: Design of Curves and Surfaces by Multi Objective Optimization


1
Design of Curves and Surfaces by Multi Objective
Optimization
  • Rony Goldenthal
  • Michel Bercovier
  • School of Computer Science and Engineering
  • The Hebrew University of Jerusalem

2
Introduction
  • This work is about curves and surfaces
  • Fitting finding surfaces (curves) as close as
    possible to a given set of points.
  • Design/Fairing generate a surface achieving
    certain quality measures design objective
    (minimal length, minimal curvature,).

3
Introduction cont.
  • Fitting alone is not sufficient, a certain
    quality of the resulting surface must be ensured.
  • Design alone is not sufficient, the surface must
    relate to some real world geometry fitting is
    required.
  • How to optimize several functions at once ?

4
Multiple Objective Functions
  • Suppose we want to incorporate several design
    objectives into a single optimization process
  • Approximation error under L2 or Linf
  • Elastic energy
  • Length/Area
  • Class A criterions
  • How to optimize several functions at once ?

5
Previous work
  • M. Alhanaty, M. Bercovier R. Goldenthal, M.
    Bercovier
  • Optimal Control in CAGD
  • Decouple fitting from design
  • For each knot/parametrization configuration
  • Solve the state equation (fitting)
  • Evaluate the cost function
  • Minimize the cost function (design objective)

6
Standard Approach Weighted Sum of Objective
Functions
  • Limitations
  • Result depends on weights.
  • Some solutions cannot be reached.
  • Multiple runs of the algorithm are required in
    order to get the whole picture.
  • Difficult to select weights cost functions may
    be in different scales.

7
ANSWER Multi Objective Optimization
  • Multi objective solution does not have a single
    optimal solution, but an optimal solution set.
  • Possibility to implement a decision tool.
  • Natural set up for Genetic Algorithms.

8
Genetic algorithms for the single objective
problem
  • The control variables knot vector,
    parametrization and NURBS weights modeled as
    chromosomes.
  • Motivation for choosing single objective GA
  • Highly non-linear behavior of knot vector
    modification
  • Support splines of any order (degree)
  • Support highly non linear cost functions
  • Support non-derivable cost functions
  • Elegant handling of constrains and singular
    conditions

9
Single Objective Genetic Algorithm (SOGA) -
outline
  • Start Generate random population of n
    individuals.
  • Fitness Evaluate the f(x) of all x in the
    population.
  • New population Create a new population from the
    old population.
  • Replace the old population with the new one.
  • Test for end condition, stop, and return the
    best solution in current population.
  • Loop Go to step 2.

10
Single Objective Genetic Algorithm (SOGA) -
outline
  • Start Generate random population of n
    individuals.
  • Fitness Evaluate the f(x) of all x in the
    population.
  • New population Create a new population by these
    steps (n times)
  • Selection Select two parents from the
    population according to their fitness.
  • Crossover performed with a crossover
    probability.
  • Mutation performed with a mutation probability.
  • Accepting Place new offspring in the new
    population.
  • Replace the old population with the new one.
  • Test for end condition, stop, and return the
    best solution in current population
  • Loop Go to step 2.

11
GA - Example
  • The parents
  • t0 0,0,0,0,0.14,0.29,0.43,0.57,0.71,0.86,1,1,1,
    1
  • t1 0,0,0,0,0.22,0.34,0.45,0.55,0.66,0.78,1,1,1,
    1
  • Their encoding
  • et0 0.14,0.14,0.14,0.14,0.14,0.14,0.14
  • et1 0.22,0.12,0.11,0.10,0.11,0.12,0.22
  • One Point crossover with split point 4
  • ec0 0.14,0.14,0.14,0.14,0.14,0.12,0.22
  • Normalization
  • ec0 0.14,0.14,0.14,0.14,0.14,0.11,0.21

12
GA Example cont.
  • Mutation
  • Before
  • ec0 0.14,0.14,0.14,0.14,0.14,0.11,0.21
  • After
  • ec0 0.14,0.13,0.13,0.15,0.14,0.11,0.21

13
The Parents
14
Crossover
15
Mutation
16
Multi Objective Genetic Algorithm
  • Multi objective optimization has an optimal
    solution set.
  • The main advantage of GA for MOO is that GA keeps
    a population and not a single solution.
  • The main difference between SOGA and MOGA is in
    the selection process.

17
MOGA - Selection
  • Better than and worse than relationships no
    longer hold.
  • Relationship among individuals is defined as
    domination relationship.

18
Domination
  • For any two solutions x1 and x2
  • x1 is said to dominate x2 if these conditions
    hold
  • x1 is not worse than x2 in all objectives.
  • x1 is strictly better than x2 in at least one
    objective.
  • If one of the above conditions does not hold x1
    does not dominate x2.

19
Pareto Optimal Set
  • Non-dominated set the set of all solutions which
    are not dominated by any other solution in the
    sampled search space.
  • Global Pareto optimal set there exist no other
    solution in the entire search space which
    dominates any member of the set.

20
Multi Objective Genetic Algorithm cont.
  • In each generation the non-dominated set is
    maintained, fitness is adjusted according to the
    domination of each individual.
  • In order to encourage diversity in the population
    fitness is reduced for similar solutions.

21
NURBS Curve
  • Input points 28
  • Control points 20
  • Order 6
  • Cost Functions
  • L2 approximation error
  • Curve Length
  • Curvature

22
NURBS Curve
  • Approximation Error 1.12
  • Curve Length 3.322
  • Curvature 2,082

23
NURBS Curve
  • Approximation Error 0.36
  • Curve Length 3.46
  • Curvature 191.48

24
NURBS Curve
  • Approximation Error 0.075
  • Curve Length 3.69
  • Curvature 419.32

25
NURBS Curve
  • Approximation Error 0.0258
  • Curve Length 3.707
  • Curvature 2467.4

26
NURBS Surface I
  • Order 4,4
  • Input points 8,8
  • Control Points 8,8
  • Cost functions
  • Surface Area
  • Surface Curvature

27
NURBS Surface
  • Surface Area 174
  • Surface Curvature 4.9e-29

28
NURBS Surface
  • Surface Area 155.77
  • Surface Curvature 0.099

29
NURBS Surface
  • Surface Area 155.16
  • Surface Curvature 0.04

30
NURBS Surface
  • Surface Area 154.72
  • Surface Curvature 0.12

31
NURBS Surface II
  • Order 4,4
  • Input points 16,16
  • Control Points 5,5
  • Cost functions
  • Approximation Error
  • Surface Curvature

32
NURBS Surface
  • Approximation Error 5.807
  • Surface Curvature 3.39

33
NURBS Surface
  • Approximation Error 5.19
  • Surface Curvature 3.56

34
NURBS Surface
  • Approximation Error 2.46
  • Surface Curvature 5.23

35
NURBS Surface
  • Approximation Error 1.348
  • Surface Curvature 9.95

36
NURBS Surface
  • Approximation Error 1.256
  • Surface Curvature 11.51

37
NURBS Surface
  • Approximation Error 0.937
  • Surface Curvature 20.84

38
Summary
  • Decision tool for approximation and design.
  • Use of Multi Objective Genetic algorithm.
  • Result is a set of non-dominated solutions.
  • Implementation supports NURBS curves and
    surfaces of arbitrary order.
  • Optimization variables
  • Knot vector
  • Parameterization
  • NURBS weights

39
Summary
  • Support for various design objective
  • Curves
  • Length
  • Curvature
  • Approximation Error L2/Linf
  • Surfaces
  • Curvature
  • Wilmore surfaces
  • Surface Area
  • Approximation error L2,Linf

40
  • Thank You!
  • ronygold_at_cs.huji.ac.il
  • http//www.cs.huji.ac.il/ronygold

41
Extra slides
42
Applications
  • Surface fitting and design has numerous
    applications mainly in theses areas
  • Industrial design.
  • Computer graphics.
  • Statistics.

43
Genetic Algorithms in CAD
  • Genetic algorithms in CAD,
  • G. Renner and A. Ekárt
  • Data fitting with a spline using a real-coded
    genetic algorithm,
  • F. Yoshimoto, T. Harada and Y. Yoshimoto
  • Genetic algorithms in free form curve design,
  • A. Márkus, G. Renner and A.J. Váncza

44
GA - Encoding
  • Each individual contains 3 chromosomes
  • One for Parametrization s.
  • One for Knot vector t.
  • One for the NURBS weights w.
  • Each chromosome is encoded by real valued
    numbers.
  • Intervals between two adjacent vector entries are
    actually stored (for s and t).

45
GA Initial Population
  • The initial population was generated randomly
    while respecting validity constrains
  • Positive NURBS weights.
  • Monotonically increasing parametrization and knot
    vector.
  • Sum of all intervals in parametrization and
  • knot vector equals curves length.
  • Population size proportional to (d.o.f).

46
GA Fitness Evaluation
  • Interpolation/approximation must be performed
    prior to fitness evaluation.
  • For each individual in the population the fitness
    is evaluated.
  • Violation of Schoenberg-Whitney condition is
    penalized by the fitness evaluation.

47
GA - Crossover
  • Modified one point crossover used for each
    chromosome with the following modification
  • The sum of all the intervals that make the knot
    vector and the parametrization must remain fixed.

48
GA - Mutation
  • The mutation must respect these constrains
  • All intervals must be positive.
  • Sum of all intervals must remain constant.
  • The mutation process (identical for all
    chromosomes)
  • Randomly select 2 intervals i,j.
  • Randomly select x s.t. x lt min(v(i),v(j)).
  • update v(i) v(i) x
  • v(j) v(j) x

49
GA - Selection
  • In SOGA selecting two parents is done is done
    randomly, when the probability of each individual
    to be a parent is proportional to its fitness.
  • Tournament, based on the above principle was used.

50
NURBS Curve
  • Approximation Error 1.08
  • Curve Length 3.328
  • Curvature 926.1

51
NURBS Curve
  • Approximation Error 0.4
  • Curve Length 3.42
  • Curvature 206.53

52
NURBS Curve
  • Approximation Error 0.004961
  • Curve Length 3.61
  • Curvature 11,733.6

53
NURBS Curve
  • Approximation Error 0.07
  • Curve Length 62,101
  • Curvature 144.42

54
Previous works
  • P. Laurent-Gengoux, M. Mekhilef, Optimization of
    a NURBS representation
  • J. Loos, G. Greiner, H-P Seidel, Modeling of
    surfaces with fair reflection line pattern
  • G. Brunnet, J. Keifer, Inerpolation with
    minimal-energy splines
Write a Comment
User Comments (0)
About PowerShow.com