Параметрическое моделирование сложных поверхностей и

advertisement
Parametrical modeling of
complex surfaces and
fabric materials
in clothes designing
3D
Construction of base three-dimensional model of product SBМ (s, P) the given form {s} and the fixed metric
characteristics {P}, adequate(answering) to average values of objects of the given class.
Parametrization of base model SMU (s, P, U), providing opportunity of generation of individual models with
given parameters U*: SMU* (s, P, U*), and the best conformity to the prototype.
3D -> 2D
Splitting of a three-dimensional surface into separate segments SMi (si, Pi, Ui*), development (display) of
three-dimensional segments (designing of preparations):
S=S, S,..., SN 
2D
Accommodation of flat elements on a sheet, in a strip, generally, in inconsistent areas of the any form.
Designing of cards (maps) opening a raw material: R=(R1,...,RK)
Construction of a route of movement nesting the tool for each card(map) opening R, manufacturing of
preparations providing the least labour input
2D -> 3D
Modelling of assemblage of an initial three-dimensional surface from flat preparations
3D
Visualization of results of designing, modelling of conditions of functioning of a projected product
3D
Parametric modeling
3
The Basic Idea
O
B
J
E
C
T
Get more
detail object
with TIS method
Using TIS interpolation for spatial data
reducing
Abstract
• Reduction of data array size is necessary for
geometric shape reconstructing. For storing this
spatial data with the least losses algorithm of
geometrical interpolation is used. The Interpolation
Algorithm by Trigonometric Interpolation Sums
(TIS) gives the good fitting for complex objects like
anatomical structures (body shape).
• This algorithm can be used then the initial
parameterization is implicitly known.
Interpolation algorithm
Parameterization
• Let M is the initial geometric structure. We need to solve the
parametric representation of M. Usually this parameterization is given
implicitly.
• However it easily to define the correspondence between bounded set
of nodes K(N1,…,Np) and M, i. e. to give the parameterization values
(x(u),y(u),z(u)) on discrete nodes k of set K(N1,…,Np).
• The interpolation of each coordinate function X(u), Y(u) и Z(u) can be
reached by using the approximation throw TIS technique which
describes in next slide.
• The bound of approximation error provides that the что approximate
parameterization (X(u),Y(u),Z(u)) converge to exact according as
increasing the number of nodes.
 ( s,t )   ( s,t )  H ( s,t )
2 N1 1  2 N 2 1

 ( s,t ) 
C
exp
i

k(
s

1
)

exp
i

j(
t

1
)








k,j

k 0 
j

0


Ck , j 
Ck ( t ) 

1 2 N 2 1
n
n
Ck (
1 )exp  i  j


2 N 2 n 0
N2
N2






1 2 N1 1
n
n 
 1, t )exp  i k
 (


2 N1 n  0
N1
N1 


 ( υ1 ,υ2 ) h(υ1 ,υ2 )
- ( -υ ,υ )

1 2
 ( υ1 ,υ2 )  
- (υ1 ,-υ2 )

 ( -υ1 ,-υ2 )
, для 0  υ1  1, 0  υ2  1
, для -1  υ1  0, 0  υ2  1
, для 0  υ1  1, -1  υ2  0
, для -1  υ1  0, -1  υ2  0
h( s,t )  W2  ( s,t )  W1  ( s,t )
 ( s,t )   ( s,t )  W1  ( s,t )
W1 f   s,t  
f  0,t  1  s   f 1,t  s
W2 f   s,t  
f  s,0 1  t   f  s,1 t
The initial data
On each layer some points
Examples
Human body representation with grid
• There are some
examples of
algorithm
implementations
then human body
was interpolated.
• The initial data
points are
presented on the
left picture.
• The result of TIS
interpolation on the
right picture.
Examples
Human body representation

There are some examples of interpolation with different level
of detail (number of resulting set points).
21 level, 13 point
21 level, 25 point
31 level, 37 point
13
Compression of geometric
information of complex objects
using parametric presentation
Problem of complex objects
• On the other hand there is no simple method to
describe complex objects in the same manner. We
can read parameters, but we can’t create the object on
their basis. Thus, we are forced to use uncompressed
(raw) data for such objects.
Stature: 170 cm
Chest: 88 cm
Hips: 92 cm
Problem of complex objects (cont.)
• In this case each object with new parameters
must be created manually or received from
external sources.
Problem solving
• The main purpose consists in creating a method for
generating complex objects defined by parameters, as
in the case with simple objects. This will compress a
class of complex objects into a small number of
parameters.
General idea of the method
• The main idea consists in applying a deformation to a
base model of the object until it will satisfy new
parameters (=constraints).
• А base (prototype) model performs a role of a keeper
of the object class form. All generated models also
will have the same geometric structure as the base
model.
• The base model consists of individually deformable
parts, e.g. layers. Each part has individual
deformation coefficients.
. Calculation of some parameters on
mannequin model (external and internal
parameters)
Main stages
•
•
•
•
Determination of information about
structure of surface of object
Choice of parameters of object
Building of surface
Visualization of results
Object generation method
• Criterion function consists of two parts:
1) deformations value, which represents the
difference between the base and current object; 2)
penalty function, which represents the difference
between required parameters and current
parameters of the object.
• A minimum of this criterion function and the values
of deformation coefficients in the first part of the
criterion function at the minimum will generate an
object which will satisfy the parameters set and the
deformation applied to the object will be as small as
possible.
• The deformation coefficients can be for example
coefficients of affine deformation.
Information about structure of surface of object
Horizontal layers
information about structure of
surface of object
Information about structure of surface of object
Horizontal layers (Base model)
main layers
auxiliary layers
Base model
Parameters of object
Parameters
•
Heights of layers
Measurement:
heights of anthropometrical points
Parameters of object
Parameters
•
Girths of layers
Measurement:
lengths of layer’s convex hulls
L - length
Parameters of object
Parameters
•
Diameters of layers
Measurement:
transverse diameters
d
Building of surface
Deformations of base model
Operations for layers:
•
•
Displacement
Scaling
Scaling
Scaling realized along each coordinate axis with own
scaling factor.
Building of surface
Deformations of base model.
•
Displacement
Operation for layers:
Displacement along vector
v - vector
Building of surface
Deformations of base model.
•
Operation for layers:
w1
Scaling
w2
Scaling factors:
along X
along Y
Scaling
w2
i 
w1
h2
 2i 
h1
h2
h1
Building of surface
Method
Main goal:
•
minimum deformations
P*  { p*i , j }
- set of points of base model
P  { pi , j }
- set of points of built model
If we use scaling factors then
P  P ( ) .
P
P*
Building of surface
Method
Main goal:
•
minimum deformations
P
Points displacement function:
P*
f ( P)  ( P  P)( P  P)
*
Minimum deformations:
Constraints:
must be satisfied
*
T
f ( P( ))  min
hi ( P( ))  0

- optimization
problem
Parameters of object
Parameters
• Distances and lengths
Measurement:
distances and lengths between
anthropometrical points
Parameters of object
Parameters
•
H
Height
Main parameters:
Height
Girth of bosom
Girth of hips
Girth of bosom
Girth of hips with
account of salient of
belly
Other parameters for main layers of standard figures of
body are found according to tabular data of State
standard, using main parameters.
Object generation method (cont.)
• The parameters of the object describe its
geometry, e.g. girths, diameters, distance
between points, etc.
• Because of the total number of the parameters
required for correct object generation can be
significant, it is recommended to split
parameters into two parts: 1) master — major
object parameters; 2) slave — parameters which
can be calculated on the basis of master
parameters. Thus, slave parameters can be
calculated automatically.
Example
• As an example we consider a compression of a female
mannequin torso using parameterization.
• As a base model we will use a model obtained by a 3D
laser scan. The base model is sliced into 25 horizontal
layers, 100 points per layer. Each layer has two
deformation coefficients: affine deformation in x and y
axis.
• For parameterization we will use existing GOST
standard of female body dimensions used in clothing
industry. There are three master parameters in it:
stature, chest and hips girth. The standard also
defines many slave parameters, but we are using only
9 additional from them.
Example (cont.)

Example of the program work:
Base model
Generated model
Example (cont.)
• Modeling consists of two stages: 1) All layers of
the base model are set to their final height as
specified in the standard; 2) The optimization
problem is solved using penalty function and
conjugate gradient methods.
• The result of the solving is 50 deformation
coefficients. The deformation coefficients are
applied to the base model.
Example (cont.)
Stature: 158
Chest: 84
Hips: 88
Stature: 176
Chest: 92
Hips: 96
Stature: 176
Chest: 120
Hips: 136
Some results
Body surface.
Front view
Base model
H : 185,3 cm.
GB: 94,96 cm.
GH: 97,34 cm.
H : 170 cm.
GB: 88 cm.
GH: 92 cm.
H : 164 cm.
GB: 96 cm.
GH: 104 cm.
H – height, GB – girth of bosom, GH – girth of hips
Body surface.
Base model
H : 185,3 cm.
GB: 94,96 cm.
GH: 97,34 cm.
3D view
H : 170 cm.
GB: 88 cm.
GH: 92 cm.
H : 164 cm.
GB: 96 cm.
GH: 104 cm.
H – height, GB – girth of bosom, GH – girth of hips
43
Деформация базовой модели
 
P*  Pij*
 
P  Pij
– множество точек базовой модели
– множество точек модели, полученной из базовой модели применением серии
деформационных преобразований и соответствующей индивидуальным характеристикам.
P  M 3M 2 M1P*
M1 – оператор масштабирования по оси z, M2 – оператор переноса, M3 – оператор растяжения (сжатия).
1
0
M1  
0
0

 - параметр масштабирования по оси аппликат
1
0
M2  
0


0
1
0
0
0 0
0 0

 0
0 1 
0 0
0 0

1 0
  1
0
1
0
(  , , ) – вектор переноса соответственно по осям абсцисс, ординат, аппликат.

0
M3  
0
0

 ,  ,
0

0
0
0 0 
0 0  0

 0  0
0 1  0
0

0
0
0
0
1
0
– коэффициенты растяжения (сжатия) вдоль осей координат.
0
0

0
1
Criterion function and
constraints
In general case the criterion function can be
presented as follows:
Q( P)  P  P P  P    ri H (hi ( P))  min
*
*
T
k
i 1
where:
P P - is set of points of the new object;
*
*
P
P - is set of points of the base object;
HH(hhi i(PP))  - is penalty function;
hii ((P
P )) - is parameters of the new object.
P
Spinal deformities in sagittal plane
Spinal deformities in sagittal plane evening-out of normal physiological spinal
curvature is observed (flat back); increase
in lumbar lordosis with low-grade cervical
lordosis and thoracic spinal kyphosis
(plano-concave back); increase in all spinal
curvatures (round-concave back); increase
in thoracic spinal hypnosis with decrease
lumbar lordosis and cervical lordosis
(slouch).
46
Spinal deformities in frontal plane
I Spinal deformities in frontal
plane are characterized by
asymmetries of the trunk in
the shoulder blade area,
lateral spinal curvature.
47
Локализации искривлений позвоночника
а
б
в
г
д
a – шейно-грудной; б – грудной; в – комбинированный;
г – грудопоясничный; д – поясничный.
48
Параметризация нарушений осанки
 РП №74 – глубина шеи;
 РП №78 – глубина талии I;
 РП №78 – глубина талии II;
Тип сколиоза – зона локализации
солиотической дуги;
Направленность дуги;
d1 – смещение вершины дуги
(верхней);
d2 – смещение вершины нижней
дуги;
49
The scheme of backbone parameters for
characteristic of its shape and spatial orientation
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Kinematics and dynamic parameters
Wc – the central angle of an arch of a cervical section of a backbone;
Wt – the central angle of an arch of a thoracic section of a backbone;
Wl – the central angle of an arch of a lumbar section of a backbone;
Lc – the length of a chord of an arch of a cervical section of a backbone;
Lt – the length of a chord of an arch of a thoracic section of a backbone;
Ll – – the length of a chord of an arch of a lumbar section of a backbone;
Fc – angulation of a chord of a cervical section of a backbone to Z-axis;
Ft – angulation of a chord of a thoracic section of a backbone to Z-axis;
Fl – angulation of a chord of a lumbar section of a backbone to Z-axis;
Hb – the height of ventral section of a vertebra;
Hd – the height of ventral section of a disk;
Fb – angulation of a vertebra to Z-axis;
Fd – angulation of a disk to Z-axis;
Gb – the angle between adjacent vertebras;
Ls – the length of a backbone.
In a kinematic chain the coordinates of the ends of its parts are marked as i=0
… 24.
Then the length of a link corresponding to height ventral part of a body of a
vertebra can be determined .
Height of a disk.
Angle of a declination of a body of a vertebra in sagital planes.
The length of a chord of an arch.
Моделирование нарушений осанки
в сагиттальной плоскости
Для моделирования нарушений осанки в сагиттальной плоскости был
выбран метод деформации свободной формы. На i-ый слой базовой
модели Pi* было наложено преобразование M i(1-) перенос по оси ординат.
Тогда точки данного слоя новой модели Pi можно найти по
соотношению:
Pi  M i(1) Pi*
Точки i-ого слоя базовой и новой модели, а также оператор переноса
можно представить в матричном виде:
 x i*, j 
1 0 0 0 
 x i*, j 
 * 
0 1 0  
 * 
yi, j 
*
y

i
(
1
)
*
i
,
j

Pi 
Mi  
Pi   * 
 z i* 
0 0 1 0 
 zi 






 1 
 1 
0 0 0 1 
i – значение переноса по оси ординат для i-ого
слоя.
52
Моделирование нарушений осанки
во фронтальной плоскости
Для моделирования нарушений осанки во фронтальной плоскости был
использован метод деформации с помощью шнура.
Шнур
определяется набором параметров:
W , R, s , r , f
R
W
— исходная параметрическая кривая;
— параметрическая кривая шнура;
— скаляр, контролирующий радиус
масштабирования вокруг кривой;
r
— скаляр, контролирующий радиус
влияния вокруг кривой;
f : R   0,1 — непрерывная монотонно убывающая
функция влияния кривой шнура.
s
 
53
Моделирование нарушений осанки
во фронтальной плоскости
В нашем случае исходная кривая R повторяет форму спины базовой
модели. Она задается набором точек в трехмерном пространстве:
p iR  ( x iR , y iR , z iR ).
Координаты R для i-ого слоя совпадают с координатами точки
середины спины соответствующего слоя базовой модели:
x x
R
i
*
i , 50
 0,
y iR  y i*,50   i ,
z iR  z i* .
Кривая шнура моделирует нарушение осанки и определяется набором
точек:
W
W
W
W
p i  ( x i , y i , z i ).
Координаты шнура W для i-ого слоя осям ординат и аппликат
совпадают с координатами исходной кривой R. Координату шнура по
оси абсцисс назовем смещением точки шнура и будем обозначать  i .
xW
i  i ,
R
yW

y
i
i ,
R
zW

z
i
i .
54
Моделирование нарушений осанки
во фронтальной плоскости
Смещение j–ой точки i–ого слоя новой модели  i , j . можно определить
по соотношению:
i, j  (i  x iR )  F ( Pi , j , piR )
где F ( x i , j , x iR )  ( g 2  1) 2. Здесь:
g
( x i*, j  x iR ) 2  ( y i*, j   i  y iR ) 2
r
Тогда координаты точек новой модели с учетом возможных нарушений
осанки в сагиттальной плоскости можно записать соотношением:
Оператор
M i(,2j)
Pi , j  M i(,2j) M i(1) Pi*,j
может быть представлен в матричном виде:
M i(,2j)
1 0
0 1

0 0

0 0
0 i, j 
0 0 
1 0 

0 1 
. Тогда
M i(,2j) M i(1)
1
0

0

0
0 0 i, j 
1 0  i 
0 1 0 

0 0 1 
55
Оптимизационная задача
Для того чтобы деформации, применяемые к базовой модели, были
минимальными, необходимо решит оптимизационную задачу, целевая
функция которой имеет вид:
N
K
M
i
j
k 1
Q( P(  ,  ))   ( i  i , j ) 2   rk H (h k ( P(  ,  )))  min
Где:
 ,
H (hk ( P(,  )))  hk ( P(,  ))
2
Параметры, задаваемые пользователем, образуют систему
ограничений, общий вид которых можно представить следующей
формулой:
hk ( P)  d k  0
56
Ограничения
Ограничения, фиксирующие нарушения
плоскости:
осанки в сагиттальной
hk ( P )  (( y i 1, j 1   i 1 )  ( y i 2, j 2   i 2 )) 2  d k  0,
Ограничения, фиксирующие нарушения
плоскости:
осанки во фронтальной
hk ( P )  (( x i , j 1   i , j 1 )  ( x i , j 2   i , j 2 )) 2  d k  0,
57
Ограничения
№ Огр.
Наименование
РП
Слои
1
глубина шеи
№74
1, 10
2
глубина талии I
№78
10, 20
3
глубина талии II
№79
20, 24
Тип сколиоза
Смещение вершины дуги
4
Смещение вершины верхней
дуги
5
Смещение вершины нижней
дуги
Шейно-грудной
№7
Грудной
№ 13.
Грудопоясничный
№ 17
Поясничный
№ 19
№ 13
Комбинированный
№ 20
58
Результаты моделирования
Р: 158 мс; Ог: 92 см; Об: 96 см
Гш: 5 см; Гт1: 6 см;
Гт2: 8.5 см
Гш: 8 см; Гт1: 13 см;
Гт2: 4 см
59
Результаты моделирования
Р: 158 мс;
Ог: 92 см;
Об: 96 см
Тип:1;
d1: -5 см;
d2: 0 см;
Тип:2;
d1: 5 см;
d2: 0 см;
Тип:3;
d1: 5 см;
d2: 0 см;
Тип:
Тип:4;
d1: 5 см;
d2: 0 см;
Тип:5;
d1: 5 см;
d2: -4 см;
1
2
3
4
5
–
–
–
–
–
шейно- грудной;
грудной;
грудопоясничный;
поясничный;
комбинированный.
60
Scoliosis of the first degree
. Scoliosis of the second degree
Animation
63
64
3D  2D
Unfolding of surfaces
with non-zero Gaussian
curvature
65
A power functions method and surfaces deformation unfolding technology
S – исходная трехмерная поверхность, заданная набором трехмерных точек ,
i=1,...,N; j=1,...,M и ребра остовного графа.
Pi , j
Power functions
Eсж 
Eр 

i  k 1, j l 1

i  k 1, j l 1
2
1
S P
i, j
RP
i, j
,Pk ,l 
,Pk ,l 


Eи 

i 1,N , j 1,M
4
 T  P 
i, j
Eсдв 

i 1,N , j 1,M
3
 B  P 
i, j
Eо  E р  Eсж  Eсдв  Eи  min
66
а)
б)
Квазиразвертка 1/8 сферы: а) с условиями Чебышева; б) с ограничениями
на деформации материала
67
2D
Nesting
68
Nesting for manufacturing
69
70
71
Разработка и исследование методов
и алгоритмов построения
кратчайших гамильтоновых циклов
на множестве отрезков и
φ – объектов на плоскости
72
Предметная область
• Карты раскроя
73
Цепи и циклы на
множестве отрезков
Граф задан множеством отрезков
В простой цепи на отрезках все дуги пересекаются только в точках
начала и конца
Рис.1 Множество отрезков
Рис.2 Гамильтонов цикл на
множестве отрезков
74
Методы решения задачи
• Полный перебор, лексикографический
перебор,
• Принцип жадности (метод ближайшего
соседа, метод включения ближайшего
города,
метод
самого
дешевого
включения)
• Метод ветвей и границ
• Генетический алгоритм
• Метод построения выпуклой оболочки
75
Целевая функция
n1
 n1

F ( L)  min   li   Lij ,
i , j 0
 i 0

где i – отрезок Si, i = 0, 1, …, n - 1, li – длина отрезка Si,
Lij– расстояние между отрезками Si и Sj,
(i, j = 0, 1,…, n - 1)
Lij  K , K – множество допустимых перемещений (маршрутов).
n
n


F ( L)  min   li    N int  Lij ,
i , j 0
 i 1

Nint - число самопересечений пути,
φ – коэффициент штрафной функции.
76
Колония муравьев
•
•
•
•
Простые агенты
Память и зрение
След феромона
Положительная обратная связь
77
Метод колонии муравьев
• Основные понятия: муравей, феромон,
память муравья, маршрут
• Основные параметры: видимость пути,
привлекательность пути (важность
феромона),
коэффициент
смежности, уровень использования
знаний
78
Поведение муравьев
Рис. 9. Маршрут следования муравьев от гнезда к источнику
пищи. Процент выбравших более короткий путь
79
Метод колонии муравьев
Муравьи:
• оставляют феромон на пути следования,
• заполняют список табу, т.е. обладают памятью,
• оценивают
важность
феромона
и
видимость
близлежащей точки,
• живут в среде, где время дискретно,
• поведение
муравьев
регулируется с помощью
положительной обратной связи,
• муравьи способны двигаться по замкнутой фигуре,
• начинают двигаться одновременно со всех исходных
точек.
80
Алгоритм поведения
муравья
Вероятность перемещения k – го муравья из точки i в точку j на t-ом
шаге определяется

  

 ij t    vis j
, j  allowed k ,


k
Pij (t )     im t   vism 
 mallowedk
 0,
в противном случае

 ij  , j  i  1




, m  i 1

im
vis j  
vism  
af
,
j

i

1
,
p

p


i
j 1
af , m  i  1, pi  pm 1
 
allowedk - список отрезков, ещё не пройденных k-ым муравьём,
ηij – видимость пути (функция, обратно пропорциональная расстоянию между двумя
точками);феромона на (i, j), af – adjacent force – коэффициент смежности;
τij - величина
α и β - параметры, контролирующие относительный приоритет феромона τ на пути
и видимости
следующего отрезка (важность феромона и коэффициент видимости пути
соответственно)
81
где
Алгоритм поведения
муравья


  
 max  ij t    ij  , q  q0
s   jallowedk

r , в противном случае
где q - случайное число на отрезке [0, 1],
q0 - параметр баланса между использованием
накопленных знаний и исследованием новых решений
(0 ≤ q0 ≤ 1),
r - случайный отрезок, выбранный на основе
вероятностей, посчитанных по формуле вероятности
выбора
82
Механизм обратной связи
В процессе построения решения муравьи изменяют количество
феромона на дугах, по которым они прошли (локальное
обновление феромона). Дуги, включенные в лучший маршрут,
изменяют свой вес согласно правилу глобального обновления
феромона.
 ij t  1  1      ij t      ij
где ρ - коэффициент локального испарения феромона,
Δτij - величина добавления феромона на дуге (i,j).
 ij   
max
 jz
zallowed k  j 
где γ – некоторый параметр (0 ≤ γ < 1),
allowedk - список отрезков, еще не пройденных k-ым муравьем
83
Механизм обратной связи
 ij t  1  1  g   ij t   g   ij
где g - коэффициент глобального испарения феромона,
Δτij - величина добавления феромона на дуге (i,j).
 

 Lgb 1, i, j   global _ best _ tour
 ij  

0, в противном случае

где Lgb - длина наименьшего пути (global_best_tour), найденного
со времени начала поиска
84
Основные параметры
алгоритма
Таблица 1. Параметры алгоритма
Наименование параметра
Обозначение
Рекомендуемое
значение
AntsN
n (=числу отрезков)
№ п/п
1
Число муравьев
2
Коэффициент важности
феромона
α
0,5 - 1
3
Коэффициент видимости пути
β
1-5
4
Уровень использования знаний
q0
0,3 – 0,5
5
Коэффициент глобального
испарения
g_Evaporation
0,5
6
Коэффициент локального
испарения
l_Evaporation
0,1
7
Коэффициент смежности
AdjacentForce
0-1
85
Процедура принятия
решения
1. Инициализация. Создание муравьев. Распределение муравьев.
Создание tabu-list.
2. Поиск решения. Построение матрицы решения. Вычисление
вероятности выбора следующего отрезка для каждого муравья, выбор
и
включение
с
список
пройденных
следующего
отрезка.
Последовательность действий повторяется n -1 раз для всех муравьев.
Поиск начинается одновременно со всех отрезков. Изменение весов
дуг, включенных в маршрут.
3. Выбор лучшего пути. Расчет длины маршрута, выбор лучшего.
4. Обновление феромона. Глобальное обновление феромона.
5. Начало новой итерации. Очищение списков. Повторение
процедуры с учетом опыта предшествующих муравьев, оставивших
след феромона на ребрах графа.
86
Характер процесса
решения
а)
б)
Рис. 17. Решение на 5 (а, длина 2354.5 мм),
6 (б, длина 2072.3 мм),
8 (в, длина 2049.3 мм) итерациях алгоритма
в)
87
Примеры решений
Рис.19а). Произвольное
множество отрезков
Рис.19б). Множество отрезков
с ломаными
Рис.19. Примеры работы алгоритма
88
Примеры решений
а)
б)
в)
Рис. 20. Простейшие карты раскроя, а, б при малом
значении коэффициента смежности, в – при большом
значении коэффициента смежности
89
Примеры решений
Рис. 21. Пример построения цикла на карте раскроя
90
Временная (вычислительная) сложность
алгоритмов
S(n) – временная (вычислительная) сложность
алгоритмы – время решения задачи,
n – размерность задачи.
Пример 1. Поиск элемента в списке (поиск черной
кошки в темной комнате)
А={ a1, a1, . . . an }
S(n) = n
Пример 2.
Поиск ближайшей пары
точек
S(n) = n (n-1)/2  n2
Пример 3.
Триангуляция Делоне
S(n) = n3
Формальное
определение
триангуляции:
планарный
граф,
получающийся
при
соединении точек A
отрезками, такой, что
нельзя добавить ни
одного нового отрезка
без
нарушения
планарности (т.е без
пересечения отрезками
друг друга). При этом
граница триангуляции
будет,
очевидно,
выпуклой
оболочкой
Пример 4. Задача коммивояжера
S(n) = n! (n!  (n/e)n
Пример 5. Раскрой прямоугольников S(n) = 4n
Пример 6. Фигурный раскрой
S(n) = Nn
Пример 7. Построение маршрутов на
отрезках S(n) = (2n)!
Влияние технического совершенствования на
полиномиальные и экспоненциальные алгоритмы
Функция
временн
ой
сложнос
ти
Размеры наибольшей задачи,
разрешимой за 1 ч
На
современных
ЭВМ
На ЭВМ, в 100
раз более
быстрых
На ЭВМ, в
1000 раз
более быстрых
n
N1
100 N1
1000 N1
n2
N2
10 N2
31.6 N2
n3
N3
4.64 N3
10 N3
n5
N4
2.5 N4
3.98 N4
2n
N5
6.64 + N5
9.97 + N5
3n
N6
4.19 + N6
6.29 + N6
Максимальная размерность задач, разрешимых
за данное время
Функция
временной
сложности
Время решения задачи
1 сек.
102 сек.
1.7 мин.
106 сек.
12 суток
108 сек.
3 года
1010 сек.
3 века
1000 n
103
105
109
1011
1013
100 n2
102
103
105
106
2.6 * 107
10 n3
46
2.1 * 102
4.6 * 103
2.1 * 104
105
2n
19
26
39
46
53
3n
12
16
25
29
33
2D  3D
Assemblage
101
From pattern to clothing
Pattern for
base model
Initial pattern and
mannequin location
Result of
imposition
102
Сборка трехмерных изделий из плоских заготовок
Триангуляция ткани и взаимодействие между узлами (частицами) ткани
d  d T  d D dV

 f j t  ,


d t  d xj  d x j d x j
j  1,N
 M x  C x   K x   f 

d  x d  x v




dt  x  dt  v   M 1 f ( x,v ) 
Начальные условия:
x t 0  x0
0
Краевые условия:
x S  0,
x t 0  0
0
f внутр t
0 0
0
где S – поверхность геометрической фигуры.
103
Дискретная модель ткани
Пример структуры ткани
Прямоугольный случай
P11 ... P1n
{Pij }  ... ... ...
Pm1 ... Pmn
104
Дискретная модель ткани
Частично равномерная сетка - N частиц,
P1
Pi 1
{Pi } 
...
P2 ... Pi
... ...
... ... ...
... Pn
105
Частично равномерная сетка
106
Дискретная модель ткани
Произвольный пример
xi , j  ( j  1)  ( x1, j  x M , j ) / M  x1, j ;
xi , j  (i  1)  ( xi ,1  xi , N ) / N  xi , N ;
M - количество узлов левой и правой границы N - верхней и нижней107
Дискретная модель ткани
Произвольный фрагмент ткани,
неравномерная сетка – размер модели M*N,
M- количество узлов левой и правой границы,
N - количество узлов верхней и нижней;
xi , j  ( j  1)  ( x1, j  x M , j ) / M  x1, j ;
xi , j  (i  1)  ( xi ,1  xi , N ) / N  xi , N ;
108
Дискретная модель ткани
Неравномерная сетка
109
Взаимодействия между частицами
1) Растяжение
сжатие,
2) Сдвиг,
3) Изгиб.
110
Взаимодействия между частицами
Растяжение-сжатие
Fs  k (l0  l ),
k
- Коэффициент жесткости
111
Оценка растяжений
Максимальное
растяжение, %
Среднее
растяжение, %
Максимальное
растяжение по
вертикали, %
Максимальное
растяжение по
горизонтали, %
2,5
31,9
9,5
13,5
16,8
3,5
23,5
6,8
9,5
12,0
4,5
18,2
5,2
7,2
9,2
5,5
16,4
4,2
6,0
7,9
6,5
15,1
3,5
5,0
6,7
7,5
12,2
3,1
4,3
5,9
11,5
9,3
2,0
2,8
4,0
15,5
6,7
1,4
2,2
3,1
k
112
Взаимодействия между частицами
Сдвиг
Ft  t (0   ),
 t - Линейный коэффициент сдвига
113
Взаимодействия между частицами
Изгиб
Fb  b cos( / 2),
 b - Линейный коэффициент изгиба
114
Взаимодействия изгиба и сдвига
b  0.05
b  0.5
b  1
t  0.005
t  0.01
t  0.05
115
Вычислительные схемы
Движение системы описывается обобщенными перемещениями
r  {ri }, ri (t )   xi (t ), yi (t ), zi (t ).
Уравнение движения частицы
mi ri ci ri  mi g  Fint (ri , rj )  0,
j  Ri
Ri - множество индексов узлов, связанных с i-м узлом
116
Матричное представление
Уравнение движения системы:
Mr '' Cr ' Mg  Fint (r )  0,
M - матрица описывающая распределение масс ткани,
C - матрица демпфирования.
1
r ''  M F (r , r '),
F (r , r ' )
- функция, описывающая действие внутренних
и внешних сил на ткань.
r'  v
1
v'  M F (r , v)
117
Явный метод Эйлера
rn 1  rn  hvn
vn 1  vn  hM 1 F (rn , vn )
r0 , v0
1)
2)
3)
известны и определяются начальными условиями
rn  2  2rn 1  rn F (rn , vn )

2
h
m
F ( Rn , vn )
3 d 2 R 10h d 3 R
n
 

 3  ...
2
m
2 dt
6 dt
2    1   2 h 2
 ~h
n
  1   2 h 2 ;
h  1
118
Схема с перешагиванием
rn 1  rn  hvn 1
vn 1  vn  hM 1 F (rn , vn )
r0 , v0
1)
2)
3)
известны и определяются начальными условиями
rn 1  2rn  rn 1 F (rn , vn )

2
h
m
F ( Rn , vn )
d 2 R h2 d 4 R
n
   2   4  ...
m
dt
12 dt
 ~h
n
2
2    1     2 h 2
2 h 2 2 h 2
4
  1 

1 2 2
2
2
h
h  2
119
Неявный метод Эйлера
rn 1  rn  hvn 1
vn 1  vn  hM 1 F (rn 1 , vn1 )
rn 1  2rn  rn 1 F (rn 1 , vn 1 )

2
h
m
 ~h
n
2    1  2   2 h 2
1   2h2
 
1  2h2
120
Неявный метод - реализация
vn  v

 r  

   h 1
 v   M F (rn  r , vn  v) 
F (r , v)
F (r , v)
r 
v
F (rn  r , vn  v)  F (rn , vn ) 
r
v
121
Неявный метод - реализация
vn  v



r
  

   h

F
(
r
,
v
)

F
(
r
,
v
)
1


 v   M ( F (rn , vn )  r r  v v) 
Av  b
F (r , v)
2 F ( r , v )
A M h
h
v
r
F (r , v) 

b  h F (r , v)  h
vn 
r


122
Неявный метод - реализация
вычисление
F / r
Fn
F
F
A M h
 h2
v
r
Решение системы
F / v
b  h( Fn  h
Av  b
F
v(tn ))
r
относительно
v
обновление значений r и v.
123
Моделирование взаимодействий
дискретной модели ткани с твердым многогранным объектом
rin, j1  ( xin, j 1 , yin, j 1 , zin, j 1 ) - начало вектора,
r  (x , y , z )
n
i, j
n
i, j
n
i, j
n
i, j
- конец вектора перемещения частицы.
124
Моделирование
взаимодействий
дискретной модели ткани с твердым многогранным объектом
Разбиение области занимаемой объектом
x  xmin
indexx 
 1,
( xmax  xmin ) / N x
Nx
- количество интервалов по координате x
125
Моделирование
взаимодействий
дискретной модели ткани с твердым многогранным объектом
Определение номера области для точки
index  index x  N y  N z  index y  N z  index z  1
126
Начальное расположение
127
Моделирование сборки
Необходимо учитывать
взаимодействия изгиба между выкройками
128
Результаты
129
Результаты
130
131
The end
135
Download