Algorithms for Identifying Rigid Subsystems in Geometric Constraint - - PowerPoint PPT Presentation

algorithms for identifying rigid subsystems in geometric
SMART_READER_LITE
LIVE PREVIEW

Algorithms for Identifying Rigid Subsystems in Geometric Constraint - - PowerPoint PPT Presentation

Algorithms for Identifying Rigid Subsystems in Geometric Constraint Systems Christophe Jermann, LINA, University of Nantes Bertrand Neveu, Gilles Trombettoni, INRIA/I3S/CERTIS, Sophia Antipolis Contents Definitions Geometric


slide-1
SLIDE 1

Algorithms for Identifying Rigid Subsystems in Geometric Constraint Systems

Christophe Jermann,

LINA, University of Nantes

Bertrand Neveu, Gilles Trombettoni,

INRIA/I3S/CERTIS, Sophia Antipolis

slide-2
SLIDE 2

16/11/2005 Christophe Jermann, FJCP 2005

2

Contents

Definitions

– Geometric Constraint Satisfaction Problems (GCSP) – Rigidity – Structural Approximations

Algorithms for Rigidity Detection

– Objects-Constraints Network – Distribute Function – ES_Rigid Algorithm – Other Rigidity Related Algorithms

Conclusion

slide-3
SLIDE 3

16/11/2005 Christophe Jermann, FJCP 2005

3

Contents

Definitions

– Geometric Constraint Satisfaction Problems (GCSP) – Rigidity – Structural Approximations

Algorithms for Rigidity Detection

– Objects-Constraints Network – Distribute Function – ES_Rigid Algorithm – Other Rigidity Related Algorithms

Conclusion

slide-4
SLIDE 4

16/11/2005 Christophe Jermann, FJCP 2005

4

A GCSP S=(O,C) is composed of :

– O = geometric objects

Geometric Constraint Satisfaction Problem

slide-5
SLIDE 5

16/11/2005 Christophe Jermann, FJCP 2005

5

A GCSP S=(O,C) is composed of :

– O = geometric objects (lines, …)

Geometric Constraint Satisfaction Problem

slide-6
SLIDE 6

16/11/2005 Christophe Jermann, FJCP 2005

6

A GCSP S=(O,C) is composed of :

– O = geometric objects (lines, points, …)

Geometric Constraint Satisfaction Problem

slide-7
SLIDE 7

16/11/2005 Christophe Jermann, FJCP 2005

7

A GCSP S=(O,C) is composed of :

– O = geometric objects (lines, points, …) – C = geometric constraints

Geometric Constraint Satisfaction Problem

slide-8
SLIDE 8

16/11/2005 Christophe Jermann, FJCP 2005

8

A GCSP S=(O,C) is composed of :

– O = geometric objects (lines, points, …) – C = geometric constraints (incidences, …)

Geometric Constraint Satisfaction Problem

slide-9
SLIDE 9

16/11/2005 Christophe Jermann, FJCP 2005

9

A GCSP S=(O,C) is composed of :

– O = geometric objects (lines, points, …) – C = geometric constraints (incidences, distances, …)

Geometric Constraint Satisfaction Problem

slide-10
SLIDE 10

16/11/2005 Christophe Jermann, FJCP 2005

10

A GCSP S=(O,C) is composed of :

– O = geometric objects (lines, points, …) – C = geometric constraints (incidences, distances, …) – A solution = position,

  • rientation, dimensions
  • f each object satisfying

all the constraints

Geometric Constraint Satisfaction Problem

slide-11
SLIDE 11

16/11/2005 Christophe Jermann, FJCP 2005

11

  • Relative to movements

Rigidity

slide-12
SLIDE 12

16/11/2005 Christophe Jermann, FJCP 2005

12

Rigidity

  • Relative to movements

– Displacements

slide-13
SLIDE 13

16/11/2005 Christophe Jermann, FJCP 2005

13

Rigidity

  • Relative to movements

– Displacements (translations, …)

slide-14
SLIDE 14

16/11/2005 Christophe Jermann, FJCP 2005

14

Rigidity

  • Relative to movements

– Displacements (translations, …)

slide-15
SLIDE 15

16/11/2005 Christophe Jermann, FJCP 2005

15

Rigidity

  • Relative to movements

– Displacements (translations, rotations)

slide-16
SLIDE 16

16/11/2005 Christophe Jermann, FJCP 2005

16

Rigidity

  • Relative to movements

– Displacements (translations, rotations)

slide-17
SLIDE 17

16/11/2005 Christophe Jermann, FJCP 2005

17

Rigidity

  • Relative to movements

– Displacements (translations, rotations)

slide-18
SLIDE 18

16/11/2005 Christophe Jermann, FJCP 2005

18

Rigidity

  • Relative to movements

– Displacements (translations, rotations)

slide-19
SLIDE 19

16/11/2005 Christophe Jermann, FJCP 2005

19

Rigidity

  • Relative to movements

– Displacements (translations, rotations) – Deformations

slide-20
SLIDE 20

16/11/2005 Christophe Jermann, FJCP 2005

20

Rigidity

  • Relative to movements

– Displacements (translations, rotations) – Deformations

slide-21
SLIDE 21

16/11/2005 Christophe Jermann, FJCP 2005

21

Rigidity

  • Relative to movements

– Displacements (translations, rotations) – Deformations

slide-22
SLIDE 22

16/11/2005 Christophe Jermann, FJCP 2005

22

Rigidity

  • Relative to movements

– Displacements (translations, rotations) – Deformations

Rigid = only displacements ~ well-constrained

slide-23
SLIDE 23

16/11/2005 Christophe Jermann, FJCP 2005

23

Rigidity

Studied in:

– Structural topology (points-distances) – Theory of mechanisms => robots – CAD

Motivation:

– Is a given structure rigid ? – What are the over/under-determined subparts ? – Why is there no solution to the GCSP ? – What are the redundant constraints ? – Find a geometric assembly of the GCSP. – ...

slide-24
SLIDE 24

16/11/2005 Christophe Jermann, FJCP 2005

24

Characterization principle:

– Count the number of movements M – Count the number of displacements D – A GCSP S=(O,C) is:

  • ver-rigid if ∃ S’⊆ S such that M(S’)<D(S’)

rigid if M(S) =D(S) and S is not over-rigid under-rigid if M(S) >D(S) and S is not over-rigid

Difficulty: – No polynomial and general way of counting

M and D

Rigidity

slide-25
SLIDE 25

16/11/2005 Christophe Jermann, FJCP 2005

25

Approximation based on a count of the

degrees of freedom (DOF)

– Intuition: 1 DOF = 1 independent movement

Number of Movements M

M M M

slide-26
SLIDE 26

16/11/2005 Christophe Jermann, FJCP 2005

26

Approximation based on a count of the

degrees of freedom (DOF)

– Intuition: 1 DOF = 1 independent movement – DOF(object)= number of independent variables

Number of Movements M

M M M

slide-27
SLIDE 27

16/11/2005 Christophe Jermann, FJCP 2005

27

Approximation based on a count of the

degrees of freedom (DOF)

– Intuition: 1 DOF = 1 independent movement – DOF(object)= number of independent variables – DOF(constraint)= number

  • f independent equations

Number of Movements M

M M M

slide-28
SLIDE 28

16/11/2005 Christophe Jermann, FJCP 2005

28

Approximation based on a count of the

degrees of freedom (DOF)

– Intuition: 1 DOF = 1 independent movement – DOF(object)= number of independent variables – DOF(constraint)= number

  • f independent equations

– DOF(GCSP) =

DOF(objects) – DOF(constraints)

Number of Movements M

M M M

slide-29
SLIDE 29

16/11/2005 Christophe Jermann, FJCP 2005

29

Number of Displacements D

D D D

Classical approximation: number of

displacements (rotations+translations) of a rigid-body in dimension

  • Structural Rigidity:

– S is over-s_rigid if ∃ S’⊆ S such that

  • – S is s_rigid if , and S is not over-

s_rigid

– S is under-s_rigid if , and S is not

  • ver-s_rigid
slide-30
SLIDE 30

16/11/2005 Christophe Jermann, FJCP 2005

30

Degree of rigidity (DOR), depending on the

geometric properties in the GCSP

  • Extended Structural Rigidity:

– S is over-es_rigid if ∃ S’⊆ S such that

  • – S is es_rigid if , and S is not over-

es_rigid

– S is under-es_rigid if , and S is not

  • ver-es_rigid

Number of Displacements D

D D D

slide-31
SLIDE 31

16/11/2005 Christophe Jermann, FJCP 2005

31

Structural Rigidities: Comparison

SubGCSP Rigidity DOF s_rigidity (++) DOR es_rigidity AB well 5

  • ver

5 well AF under 7 under 6 under ABCD under 6 well 5 under ACDE well 5

  • ver

5 well ACDEF

  • ver

5

  • ver

6

  • ver

ABCDEF

  • ver

6

  • ver

6

  • ver
slide-32
SLIDE 32

16/11/2005 Christophe Jermann, FJCP 2005

32

Contents

Definitions

– Geometric Constraint Satisfaction Problems (GCSP) – Rigidity – Structural Approximations

Algorithms for Rigidity Detection

– Objects-Constraints Network – Distribute Function – ES_Rigid Algorithm – Other Rigidity Related Algorithms

Conclusion

slide-33
SLIDE 33

16/11/2005 Christophe Jermann, FJCP 2005

33

Objects-Constraints Network

slide-34
SLIDE 34

16/11/2005 Christophe Jermann, FJCP 2005

34

  • Objects-Constraints Network
slide-35
SLIDE 35

16/11/2005 Christophe Jermann, FJCP 2005

35

  • Objects-Constraints Network
slide-36
SLIDE 36

16/11/2005 Christophe Jermann, FJCP 2005

36

  • Objects-Constraints Network
  • !
slide-37
SLIDE 37

16/11/2005 Christophe Jermann, FJCP 2005

37

  • Objects-Constraints Network
  • !
slide-38
SLIDE 38

16/11/2005 Christophe Jermann, FJCP 2005

38

  • Objects-Constraints Network
  • !
slide-39
SLIDE 39

16/11/2005 Christophe Jermann, FJCP 2005

39

  • Objects-Constraints Network
  • !
slide-40
SLIDE 40

16/11/2005 Christophe Jermann, FJCP 2005

40

Distribute Function - Principle

Maximum flow = optimal distribution of the

constraints’ DOFs on the objets’ DOFs

Non-saturated constraint = subGCSP with less than 0 DOFs (over-constrained)

Overload K = fix K independent

displacements

Non-saturated constraint = subGCSP with less than K DOFs

Apply K=d(d+1)/2+1 on a constraint "

Non-saturated constraint, capacity-flow=1 => s_rigid

subGCSP

Non-saturated constraint, capacity-flow>1 => over-

s_rigid subGCSP

slide-41
SLIDE 41

16/11/2005 Christophe Jermann, FJCP 2005

41

Distribute Function - Example

  • !
slide-42
SLIDE 42

16/11/2005 Christophe Jermann, FJCP 2005

42

  • !
  • Distribute Function - Example
slide-43
SLIDE 43

16/11/2005 Christophe Jermann, FJCP 2005

43

  • !
  • Distribute Function - Example
slide-44
SLIDE 44

16/11/2005 Christophe Jermann, FJCP 2005

44

  • !
  • Distribute Function - Example
slide-45
SLIDE 45

16/11/2005 Christophe Jermann, FJCP 2005

45

  • !
  • Distribute Function - Example
slide-46
SLIDE 46

16/11/2005 Christophe Jermann, FJCP 2005

46

  • !
  • #$% & '#()

$ *#$+,(-$,

Distribute Function - Example

slide-47
SLIDE 47

16/11/2005 Christophe Jermann, FJCP 2005

47

New Distribute Function

Problem of the Distribute function:

– Nothing ensures the subGCSP S induced by a single

constraint verifies D(S)=d(d+1)/2

2 modifications:

– A virtual constraint R is dedicated to the overload

distribution, and can be linked to any subset of objects

– The overload K is adaptive: it becomes DOR+1

R non-saturated = subGCSP well- or over-es_rigid

Results in:

– Geometrically meaningful – Detects extended structural rigidity

slide-48
SLIDE 48

16/11/2005 Christophe Jermann, FJCP 2005

48

New Distribute Function - Example

  • !
slide-49
SLIDE 49

16/11/2005 Christophe Jermann, FJCP 2005

49

  • !
  • New Distribute Function - Example
slide-50
SLIDE 50

16/11/2005 Christophe Jermann, FJCP 2005

50

  • !
  • New Distribute Function - Example
slide-51
SLIDE 51

16/11/2005 Christophe Jermann, FJCP 2005

51

  • !
  • New Distribute Function - Example
slide-52
SLIDE 52

16/11/2005 Christophe Jermann, FJCP 2005

52

  • !
  • New Distribute Function - Example
slide-53
SLIDE 53

16/11/2005 Christophe Jermann, FJCP 2005

53

  • !
  • New Distribute Function - Example
slide-54
SLIDE 54

16/11/2005 Christophe Jermann, FJCP 2005

54

  • !
  • New Distribute Function - Example
slide-55
SLIDE 55

16/11/2005 Christophe Jermann, FJCP 2005

55

  • !
  • New Distribute Function - Example

#$% & '#() $ $+,

slide-56
SLIDE 56

16/11/2005 Christophe Jermann, FJCP 2005

56

ES_Rigid Algorithm

Goal:

– Identify a well- or over-rigid subGCSP

Principle:

. ": apply Distribute constraint by constraint – New algorithm: apply new Distribute subGCSP by

subGCSP

Problem:

– The number of subGCSPs is exponential !

Solution:

– Apply only to DOR-minimal subGCSPs

DOR-minimal =

– GCSP containing no subGCSP with the same DOR

slide-57
SLIDE 57

16/11/2005 Christophe Jermann, FJCP 2005

57

Complexity

Distribute: same as Hoffmann et al.’s

– Dominated by flow distribution: /00122

ES_Rigid:

– Hoffmann: O(mn2(n+m)) in any dimension – New algorithm:

Compute the set of DOR-Minimal subGCSPs: /3

. 4%*, -&*,,56&$*7 . $ $$$89$-&:$&' . --$-%$ $ *-%$-&*,

Number of DOR-Minimal subGCSPs: /02 in dimension

Complexity /0/310122

Overhead ~linear in 2D, ~quadratic in 3D

slide-58
SLIDE 58

16/11/2005 Christophe Jermann, FJCP 2005

58

Other Algorithms

Over-ES_Rigid:

– Set overload to K=DDR instead of DDR+1

Well-ES_Rigid:

– Apply ES_Rigid, then Over-ES_Rigid until the

  • btained subGCSP is well-es_rigid

Minimize-ES_Rigid:

– Remove objects one by one as long as they are not

necessary, using ES_Rigid to determine this.

slide-59
SLIDE 59

16/11/2005 Christophe Jermann, FJCP 2005

59

Contents

Definitions

– Geometric Constraint Satisfaction Problems (GCSP) – Rigidity – Structural Approximations

Algorithms for Rigidity Detection

– Objects-Constraints Network – Distribute Function – ES_Rigid Algorithm – Other Rigidity Related Algorithms

Conclusion

slide-60
SLIDE 60

16/11/2005 Christophe Jermann, FJCP 2005

60

Contribution:

– A new family of algorithms for the main rigidity related

issues, based on a new and better characterization of rigidity.

Future Works

– Experimental validation of the approach:

Evaluate practical feasibility (complexity !) Measure gain in reliability and generality

– Deal with the DOR problem:

Identify new classes of GCSPs for which the problem is easy Propose new practical heuristics to avoid theorem proving as

much as possible

Conclusion