KR20230090208A - Energy-momentum conservation method and apparatus for real-time simulation of deformable objects - Google Patents

Energy-momentum conservation method and apparatus for real-time simulation of deformable objects Download PDF

Info

Publication number
KR20230090208A
KR20230090208A KR1020220045628A KR20220045628A KR20230090208A KR 20230090208 A KR20230090208 A KR 20230090208A KR 1020220045628 A KR1020220045628 A KR 1020220045628A KR 20220045628 A KR20220045628 A KR 20220045628A KR 20230090208 A KR20230090208 A KR 20230090208A
Authority
KR
South Korea
Prior art keywords
energy
momentum
deformable body
total
vertex
Prior art date
Application number
KR1020220045628A
Other languages
Korean (ko)
Inventor
한정현
기민형
Original Assignee
고려대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 고려대학교 산학협력단 filed Critical 고려대학교 산학협력단
Publication of KR20230090208A publication Critical patent/KR20230090208A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/17Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation

Abstract

본 발명은 실시간 변형체 시뮬레이션을 위한 에너지-운동량 보존 방법 및 장치를 개시한다. 본 발명에 따르면, 실시간 변형체 시뮬레이션을 위한 에너지-운동량 보존 장치로서, 프로세서; 및 상기 프로세서에 연결되는 메모리를 포함하되, 상기 메모리는, 상기 변형체의 질량 및 상기 변형체를 구성하는 메쉬의 각 꼭짓점의 현재 시점의 위치를 입력 받고, 상기 메쉬의 각 꼭지점의 다음 시점의 위치를 탐색하기 위한 목적함수에 상기 변형체의 총 선형 운동량, 총 각 운동량 및 총 에너지를 포함하는 구속조건과 상기 변형체의 운동량에 의한 에너지 및 상기 총 에너지를 보간하기 위한 파라미터를 도입하고, 상기 로컬/글로벌 반복을 통해 상기 목적함수의 근사해를 탐색하도록, 상기 프로세서에 의해 실행되는 프로그램 명령어들을 저장하는 에너지-운동량 보존 장치가 제공된다. The present invention discloses an energy-momentum conservation method and apparatus for real-time deformable body simulation. According to the present invention, an energy-momentum conservation device for real-time deformable body simulation, comprising: a processor; And a memory connected to the processor, wherein the memory receives the mass of the deformable body and the position of each vertex of the mesh constituting the deformable body at the current viewpoint, and searches the position of the next viewpoint of each vertex of the mesh. A constraint condition including the total linear momentum, total angular momentum, and total energy of the deformable body and a parameter for interpolating the energy due to the momentum of the deformable body and the total energy are introduced into the objective function for An energy-momentum conservation device is provided that stores program instructions executed by the processor so as to search for an approximate solution of the objective function through

Description

실시간 변형체 시뮬레이션을 위한 에너지-운동량 보존 방법 및 장치{Energy-momentum conservation method and apparatus for real-time simulation of deformable objects}Energy-momentum conservation method and apparatus for real-time simulation of deformable objects

본 발명은 실시간 변형체 시뮬레이션을 위한 에너지-운동량 보존 방법 및 장치에 관한 것이다. The present invention relates to a method and apparatus for conserving energy-momentum for real-time deformable body simulation.

실시간 변형체 시뮬레이션의 종래 기술로 2014년 국제학회인 SIGGRAPH에서 발표된 “Projective Dynamics: Fusing Constraint Projection for Fast Simulation” (이하, PD) 논문의 기술이 대표적이다. As a conventional technology of real-time deformable body simulation, the technology of “Projective Dynamics: Fusing Constraint Projection for Fast Simulation” (hereinafter referred to as PD) presented at the international conference SIGGRAPH in 2014 is representative.

상기한 논문에서는 변형체의 위치와 속도에 대한 수치 적분 문제를 최적화 문제로 변환하고, quasi-Newton 법을 반복적으로 진행하여 해당 최적화 문제의 근사해를 찾는다. In the above paper, the numerical integration problem of the position and velocity of the deformable body is converted into an optimization problem, and the quasi-Newton method is repeatedly performed to find an approximate solution of the optimization problem.

한편, 에너지-운동량 보존 기법의 종래 기술로는 2018년 국제학회인 SIGGRAPH에서 발표된 “FEPR: Fast Energy Projection for Real-Time Simulation of Deformable Objects”가 대표적이다. 이는 임의의 변형체 시뮬레이션을 통해 얻은 결과(위치 및 속도)를 에너지-운동량 곡면에 반복적으로 투영시켜 에너지-운동량을 보존한다. Meanwhile, “FEPR: Fast Energy Projection for Real-Time Simulation of Deformable Objects” presented at SIGGRAPH, an international conference in 2018, is representative of the conventional energy-momentum conservation technique. This preserves the energy-momentum by repeatedly projecting the results (position and velocity) obtained through the random deformable body simulation onto the energy-momentum surface.

물리적으로 변형체의 총 에너지와 운동량은 모두 보존되어야 하나, 상기한 변형체 시뮬레이션 기법(PD)은 과도한 근사 때문에 시뮬레이션이 진행됨에 따라 에너지와 운동량이 급격하게 감쇠하는 문제가 있다. Physically, both the total energy and momentum of the deformable body must be conserved, but the above deformable body simulation technique (PD) has a problem in that energy and momentum rapidly decay as the simulation proceeds due to excessive approximation.

이에, 상기한 에너지-운동량 보존 기법(FEPR)을 적용하면 에너지는 완벽히 보존되나, 운동량은 제대로 보존하지 못한다. 또한, 이는 추가적인 연산이므로 시뮬레이션 속도 저하에 주된 요인이 된다. Accordingly, when the energy-momentum conservation technique (FEPR) is applied, energy is perfectly conserved, but momentum is not properly conserved. In addition, since this is an additional operation, it is a major factor in slowing down the simulation.

US 등록특허 7,610,184US registered patent 7,610,184

상기한 종래기술의 문제점을 해결하기 위해, 본 발명은 변형체 시뮬레이션에 있어 에너지-운동량을 모두 보존하고, 연산 과정을 대폭 감소시킨 실시간 변형체 시뮬레이션을 위한 에너지-운동량 보존 방법 및 장치를 제안하고자 한다. In order to solve the above problems of the prior art, the present invention is to propose a method and apparatus for preserving energy-momentum for real-time deformable body simulation that preserves all energy-momentum in deformable body simulation and significantly reduces the calculation process.

상기한 바와 같은 목적을 달성하기 위하여, 본 발명의 일 실시예에 따르면, 실시간 변형체 시뮬레이션을 위한 에너지-운동량 보존 장치로서, 프로세서; 및 상기 프로세서에 연결되는 메모리를 포함하되, 상기 메모리는, 상기 변형체의 질량 및 상기 변형체를 구성하는 메쉬의 각 꼭짓점의 현재 시점의 위치를 입력 받고, 상기 메쉬의 각 꼭지점의 다음 시점의 위치를 탐색하기 위한 목적함수에 상기 변형체의 총 선형 운동량, 총 각 운동량 및 총 에너지를 포함하는 구속조건과 상기 변형체의 운동량에 의한 에너지 및 상기 총 에너지를 보간하기 위한 파라미터를 도입하고, 상기 로컬/글로벌 반복을 통해 상기 목적함수의 근사해를 탐색하도록, 상기 프로세서에 의해 실행되는 프로그램 명령어들을 저장하는 에너지-운동량 보존 장치가 제공된다. In order to achieve the above object, according to an embodiment of the present invention, an energy-momentum conservation device for real-time deformable body simulation, comprising: a processor; And a memory connected to the processor, wherein the memory receives the mass of the deformable body and the position of each vertex of the mesh constituting the deformable body at the current viewpoint, and searches the position of the next viewpoint of each vertex of the mesh. A constraint condition including the total linear momentum, total angular momentum, and total energy of the deformable body and a parameter for interpolating the energy due to the momentum of the deformable body and the total energy are introduced into the objective function for An energy-momentum conservation device is provided that stores program instructions executed by the processor so as to search for an approximate solution of the objective function through

상기 구속조건에는 상기 변형체의 속도가 포함되며, 상기 속도는 각 꼭지점의 위치 및 시간 단계크기를 포함하는 역방향 오일러 근사로 대체될 수 있다. The constraints include the velocity of the deformable body, and the velocity can be replaced by backward Euler approximation including the position of each vertex and the time step size.

상기 변형체의 운동량에 의한 에너지는 다음의 수학식으로 정의될 수 있다. The energy due to the momentum of the deformable body can be defined by the following equation.

[수학식][mathematical expression]

Figure pat00001
Figure pat00001

여기서,

Figure pat00002
는 i번째 메쉬 꼭짓점의 질량, P는 총 선형 운동량, L은 총 각 운동량,
Figure pat00003
는 관성 텐서의 역수임here,
Figure pat00002
is the mass of the ith mesh vertex, P is the total linear momentum, L is the total angular momentum,
Figure pat00003
is the reciprocal of the inertia tensor

상기 구속조건은 다음의 수학식으로 정의될 수 있다.The constraint may be defined by the following equation.

[수학식][mathematical expression]

Figure pat00004
Figure pat00004

여기서,

Figure pat00005
Figure pat00006
Figure pat00007
를 보간하기 위한 파라미터임here,
Figure pat00005
Is
Figure pat00006
and
Figure pat00007
is a parameter for interpolating

상기 목적함수는 다음의 수학식으로 정의될 수 있다. The objective function may be defined by the following equation.

[수학식][mathematical expression]

Figure pat00008
Figure pat00008

여기서,

Figure pat00009
이고,
Figure pat00010
은 정규화 가중치임here,
Figure pat00009
ego,
Figure pat00010
is the regularization weight

상기 프로그램 명령어들은, SQP(Sequential Quadratic Programming)을 통해 상기 근사해를 탐색할 수 있다. The program instructions may search for the approximate solution through sequential quadratic programming (SQP).

상기 파라미터는

Figure pat00011
Figure pat00012
인 경우 1에 가까운 값을 가질 수 있다. The above parameters are
Figure pat00011
and
Figure pat00012
may have a value close to 1.

본 발명의 다른 측면에 따르면, 프로세서 및 메모리를 포함하는 장치에서 실시간 변형체 시뮬레이션을 위한 에너지-운동량 보존 방법으로서, 상기 변형체의 질량 및 상기 변형체를 구성하는 메쉬의 각 꼭짓점의 현재 시점의 위치를 입력 받는 단계; 상기 메쉬의 각 꼭지점의 다음 시점의 위치를 탐색하기 위한 목적함수에 상기 변형체의 총 선형 운동량, 총 각 운동량 및 총 에너지를 포함하는 구속조건과 상기 변형체의 운동량에 의한 에너지 및 상기 총 에너지를 보간하기 위한 파라미터를 도입하는 단계; 및 상기 로컬/글로벌 반복을 통해 상기 목적함수의 근사해를 탐색하는 단계를 포함하는 에너지-운동량 보존 방법이 제공된다. According to another aspect of the present invention, as an energy-momentum conservation method for real-time simulation of a deformable body in a device including a processor and a memory, the mass of the deformable body and the position of each vertex of the mesh constituting the deformable body at the current time are received. step; To interpolate the constraint condition including the total linear momentum, total angular momentum, and total energy of the deformable body and the energy by the momentum of the deformable body and the total energy in the objective function for searching the position of the next time point of each vertex of the mesh introducing a parameter for; and searching for an approximate solution of the objective function through the local/global iteration.

본 발명의 또 다른 측면에 따르면, 상기한 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체가 제공된다. According to another aspect of the present invention, a computer readable recording medium on which a program for performing the above method is recorded is provided.

본 발명에 따르면, 에너지-운동량을 더 정확히 보존하면서도 연산량을 감소시킬 수 있는 장점이 있다. According to the present invention, there is an advantage in that the amount of calculation can be reduced while more accurately preserving the energy-momentum.

또한, 본 발명에 따르면, Projective Dynamics의 최적화 문제를 에너지-운동량에 대한 구속-최적화 문제로 변환하기 때문에 변형체 시뮬레이션에서 에너지 및 운동량을 정확히 보존할 수 있는 장점이 있다. In addition, according to the present invention, since the optimization problem of Projective Dynamics is converted into a constraint-optimization problem for energy-momentum, there is an advantage of accurately conserving energy and momentum in deformable body simulation.

도 1은 본 발명의 바람직한 일 실시예에 따른 실시간 변형체 시뮬레이션을 위한 에너지-운동량 보존 장치의 구성을 도시한 도면이다.
도 2는 본 실시예에 따른 기법과 종래 기법의 변형체 시뮬레이션 결과를 나타낸 도면이다.
도 3은 시간에 따른 총 에너지, 탄성 에너지 및 각 운동량을 나타낸 도면이다.
도 4는 본 실시예에 따른 기법과 종래 기법의 Solver iteration(반복 횟수)에 따른 에너지 그래프를 나타낸 도면이다.
1 is a diagram showing the configuration of an energy-momentum conservation device for real-time deformable body simulation according to a preferred embodiment of the present invention.
2 is a diagram showing deformable body simulation results of a technique according to the present embodiment and a conventional technique.
3 is a diagram showing total energy, elastic energy, and angular momentum over time.
4 is a diagram showing an energy graph according to the solver iteration (number of iterations) of the technique according to the present embodiment and the conventional technique.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.Since the present invention can make various changes and have various embodiments, specific embodiments are illustrated in the drawings and described in detail.

그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. However, this is not intended to limit the present invention to specific embodiments, and should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention.

본 발명은 변형체에 관한 현재 시점에서의 정보를 이용하여 다음 시점(n+1번째) 프레임의 변형체 시뮬레이션 결과인 위치와 속도를 찾기 위해, 역방향 오일러(backward Euler) 수치 적분법에서 유도된 목적함수를 사용한다. The present invention uses the objective function derived from the backward Euler numerical integration method to find the position and velocity, which are the results of simulation of the deformable body of the next frame ( n +1th), using information at the current time of the deformable body. do.

전술한 바와 같이, 역방향 오일러 기반의 종래의 PD 솔버(Solver)는 안정적이기는 하나 운동량과 총 에너지를 보존하지 못하고 과도한 감쇠가 발생하는 문제가 있어 본 실시예에서는 에너지-운동량 구속조건을 도입하여 상기한 문제점을 해결한다. As described above, although the conventional PD solver based on backward Euler is stable, it does not conserve momentum and total energy and has a problem in that excessive damping occurs. In this embodiment, the energy-momentum constraint is introduced to Solve the problem.

도 1은 본 발명의 바람직한 일 실시예에 따른 실시간 변형체 시뮬레이션을 위한 에너지-운동량 보존 장치의 구성을 도시한 도면이다. 1 is a diagram showing the configuration of an energy-momentum conservation device for real-time deformable body simulation according to a preferred embodiment of the present invention.

도 1을 참조하면, 본 실시예에 따른 장치는 프로세서(100) 및 메모리(102)를 포함할 수 있다. Referring to FIG. 1 , the device according to the present embodiment may include a processor 100 and a memory 102 .

프로세서(100)는 컴퓨터 프로그램을 실행할 수 있는 CPU(central processing unit)나 그 밖에 가상 머신 등을 포함할 수 있다. The processor 100 may include a central processing unit (CPU) capable of executing a computer program or other virtual machines.

메모리(102)는 고정식 하드 드라이브나 착탈식 저장 장치와 같은 불휘발성 저장 장치를 포함할 수 있다. 착탈식 저장 장치는 콤팩트 플래시 유닛, USB 메모리 스틱 등을 포함할 수 있다. 메모리(102)는 각종 랜덤 액세스 메모리와 같은 휘발성 메모리도 포함할 수 있다.Memory 102 may include a non-volatile storage device such as a non-removable hard drive or a removable storage device. The removable storage device may include a compact flash unit, a USB memory stick, and the like. Memory 102 may also include volatile memory, such as various random access memories.

메모리(102)에는 실시간 변형체 시뮬레이션을 위한 에너지-운동량 보존을 위한 프로그램 명령어들이 저장된다. The memory 102 stores program instructions for energy-momentum conservation for real-time deformable body simulation.

본 실시예에 따른 프로그램 명령어들은, 변형체의 질량 및 상기 변형체를 구성하는 메쉬의 각 꼭짓점의 현재 시점의 위치를 입력 받고, 상기 메쉬의 각 꼭지점의 다음 시점의 위치를 탐색하기 위한 목적함수에 상기 변형체의 총 선형 운동량, 총 각 운동량 및 총 에너지를 포함하는 구속조건과 상기 변형체의 운동량에 의한 에너지 및 상기 총 에너지를 보간하기 위한 파라미터를 도입하고, 상기 로컬/글로벌 반복을 통해 상기 목적함수의 근사해를 탐색한다. The program instructions according to the present embodiment receive the mass of the deformable body and the position of each vertex of the mesh constituting the deformable body at the current viewpoint, and convert the deformable body to an objective function for searching the position of the next viewpoint of each vertex of the mesh. A constraint condition including the total linear momentum, total angular momentum, and total energy of and parameters for interpolating the energy by the momentum of the deformable body and the total energy are introduced, and an approximate solution of the objective function is obtained through the local/global iteration. explore

본 실시예에 따른 구속조건에는 변형체의 속도가 포함되며, 상기 속도는 각 꼭지점의 위치 및 시간 단계크기를 포함하는 역방향 오일러 근사로 대체된다. 또한, 변형체의 운동량에 의한 에너지를 별도로 정의하여 변형체 시뮬레이션에서 에너지-운동량이 보존될 수 있도록 한다. Constraints according to this embodiment include the velocity of the deformable body, and the velocity is replaced by backward Euler approximation including the position of each vertex and the time step size. In addition, energy by the momentum of the deformable body is separately defined so that energy-momentum can be conserved in the deformable body simulation.

이하에서는 역방향 오일러 수치 적분법을 우선 설명한 후 본 실시예에 따른 실시간 변형체 시뮬레이션을 위한 에너지-운동량 보존 방법을 상세하게 설명한다. Hereinafter, the backward Euler numerical integration method will be first described, and then the energy-momentum conservation method for real-time deformable body simulation according to the present embodiment will be described in detail.

m개의 꼭짓점으로 구성된 메쉬(변형체)의 상태는 3차원 공간에서 꼭짓점 위치

Figure pat00013
와 속도
Figure pat00014
의 집합으로 설명될 수 있으며, 변형체의 상태는 물리 법칙에 의해 시간이 지남에 따라 이산 시간 샘플
Figure pat00015
에서 점진적인 변화를 나타낸다. The state of a mesh (transform) composed of m vertices is the vertex position in 3D space.
Figure pat00013
with speed
Figure pat00014
can be described as a set of discrete time samples over time by the laws of physics
Figure pat00015
represents a gradual change in

Figure pat00016
의 상태가 주어지면, 오일러 수칙 적분은 다음과 같이
Figure pat00017
의 위치 및 속도를 포함하는 다음 상태를 근사적으로 구할 수 있다.
Figure pat00016
Given the state of , the Euler's Law integral is
Figure pat00017
The following state including the position and velocity of can be approximated.

Figure pat00018
Figure pat00018

여기서, h는 시간 단계 크기, M은 질량 행렬(mass matrix),

Figure pat00019
는 외부 힘,
Figure pat00020
는 내부 힘으로서
Figure pat00021
이고, 여기서
Figure pat00022
는 j번째 유한 요소의 위치 에너지를 나타낸다. where h is the time step size, M is the mass matrix,
Figure pat00019
is the external force,
Figure pat00020
is the internal force
Figure pat00021
and here
Figure pat00022
represents the potential energy of the j-th finite element.

수학식 1은 다음과 같이 표현된다. Equation 1 is expressed as follows.

Figure pat00023
Figure pat00023

여기서,

Figure pat00024
이다. here,
Figure pat00024
am.

수학식 2에서 새로운 상태

Figure pat00025
를 찾는 방법은 다음의 목적함수
Figure pat00026
를 최소화하는
Figure pat00027
를 찾는 최적화 문제로 변환될 수 있다. In Equation 2, the new state
Figure pat00025
The way to find is the following objective function
Figure pat00026
to minimize
Figure pat00027
can be transformed into an optimization problem to find

Figure pat00028
Figure pat00028

이하에서 표기의 단순화를 위해

Figure pat00029
대신 x를 사용한다. In order to simplify the notation below
Figure pat00029
use x instead.

PD 기법의 새로운 것 중 하나는 보조 투영 변수

Figure pat00030
와 2차 거리 측정을 위해 사용하는 아래와 같은 잠재적 함수
Figure pat00031
를 선택하는데 있다. One of the novelties of the PD technique is the auxiliary projection variable
Figure pat00030
and the latent function used to measure the second order distance:
Figure pat00031
is to choose

Figure pat00032
Figure pat00032

Figure pat00033
는 양의 가중치이고,
Figure pat00034
는 이산 미분 연산자에 대한 희소 행렬이다.
Figure pat00033
is a positive weight,
Figure pat00034
is a sparse matrix for the discrete differential operator.

수학식 3의

Figure pat00035
를 수학식 4로 대체하면 다음과 같은 증강된 목적함수
Figure pat00036
를 얻을 수 있다. of Equation 3
Figure pat00035
Replacing with Equation 4, the following augmented objective function
Figure pat00036
can be obtained.

Figure pat00037
Figure pat00037

수학식 5의 첫 번째 항은 x를 y쪽으로 이동시키는 관성으로 작용하고, 두 번째 항은 x의 변형에 패널티를 주는 탄성으로 작용한다. The first term of Equation 5 acts as an inertia that moves x toward y, and the second term acts as an elasticity that penalizes the deformation of x.

PD 기법은 반복적 교대 최적화 기술을 사용하고, 여기서,

Figure pat00038
(초기화)이고,
Figure pat00039
Figure pat00040
는 로컬 및 글로벌 단계에서 최소화된다. The PD technique uses an iterative shift optimization technique, where:
Figure pat00038
(initialization),
Figure pat00039
and
Figure pat00040
is minimized in the local and global steps.

로컬 단계에서

Figure pat00041
는 고정되고,
Figure pat00042
는 풀어진다. at the local level
Figure pat00041
is fixed,
Figure pat00042
is released

Figure pat00043
Figure pat00043

여기서,

Figure pat00044
는 요소 유형(예를 들어, 사면체 또는 스프링)에 따라 정의되는 구속조건 집합체(constraint manifold)이다. here,
Figure pat00044
is a constraint manifold defined according to the element type (e.g. tetrahedron or spring).

글로벌 단계에서

Figure pat00045
가 고정되고 수학식 5의 목적함수가 최소화되도록
Figure pat00046
가 풀어진다. at the global level
Figure pat00045
is fixed and the objective function of Equation 5 is minimized
Figure pat00046
is released

이는 다음과 같은 선형 방정식 시스템으로 나타낼 수 있다. This can be expressed as a system of linear equations:

Figure pat00047
Figure pat00047

여기서,

Figure pat00048
이다. here,
Figure pat00048
am.

시스템 행렬

Figure pat00049
은 Symmetric positive-definite이고, 로컬/글로벌 반복 동안 일정하게 유지된다. system matrix
Figure pat00049
is symmetric positive-definite and remains constant during local/global iterations.

PD 기법은 근사 Hessian 행렬을 이용하여 수학식 5를 최소화하는 quasi-Newton 방법이므로, PD 기법에서 로컬/글로벌 단계의 단일 반복은 다음과 같이

Figure pat00050
에 대한 최적화 문제로 다시 나타낼 수 있다. Since the PD technique is a quasi-Newton method that minimizes Equation 5 using an approximate Hessian matrix, a single iteration of the local/global step in the PD technique is as follows
Figure pat00050
It can be re-expressed as an optimization problem for

Figure pat00051
Figure pat00051

여기서,

Figure pat00052
이다. here,
Figure pat00052
am.

Figure pat00053
는 찾는 것은 다음 선행 시스템을 푸는 것과 같다.
Figure pat00053
is equivalent to solving the following preceding system.

Figure pat00054
Figure pat00054

Figure pat00055
계산에는 로컬 단계가 포함되며, 수학식 9의 해로
Figure pat00056
를 업데이트하는 것은 글로벌 단계와 같다.
Figure pat00055
The calculation includes a local step, as a solution of Equation 9.
Figure pat00056
Updating the is the same as the global step.

본 실시예에서는 PD 기법의 과도한 감쇠를 해결하기 위해 에너지-운동량 보존조건(구속조건)을 도입하며, 다음과 같이 총 선형 운동량(total linear momentum,

Figure pat00057
), 총 각 운동량(total angular momentum,
Figure pat00058
) 및 총 에너지(
Figure pat00059
)의 3가지의 중요한 물리량을 고려한다. In this embodiment, the energy-momentum conservation condition (constraint condition) is introduced to solve the excessive damping of the PD technique, and the total linear momentum,
Figure pat00057
), total angular momentum,
Figure pat00058
) and total energy (
Figure pat00059
) considers three important physical quantities.

메쉬 구성에서 상기한 물리량은 다음과 같이 정의된다. In the mesh configuration, the above physical quantities are defined as follows.

Figure pat00060
Figure pat00060

여기서,

Figure pat00061
,
Figure pat00062
Figure pat00063
는 각각 i번째 꼭짓점의 질량, 속도 및 위치를 나타낸다. here,
Figure pat00061
,
Figure pat00062
and
Figure pat00063
represent the mass, velocity and position of the ith vertex, respectively.

본 실시예에 따르면, 수학식 10의 복잡도를 줄이기 위해 역방향 오일러 근사

Figure pat00064
로 v를 대체하면 운동량과 에너지는 다음과 같이 정의된다. According to this embodiment, inverse Euler approximation to reduce the complexity of Equation 10
Figure pat00064
Substituting v with , the momentum and energy are defined as:

Figure pat00065
Figure pat00065

본 실시예에서는 새로운 상태

Figure pat00066
가 에너지와 운동량을 보존하도록 최적화 문제의 해를 제한하는 것을 목표로 한다. In this embodiment, the new state
Figure pat00066
We aim to constrain the solution of the optimization problem so that is conserves energy and momentum.

Figure pat00067
,
Figure pat00068
Figure pat00069
Figure pat00070
에서 보존해야 할 물리량이라 하고,
Figure pat00071
인 닫힌 시스템에서
Figure pat00072
Figure pat00073
이다.
Figure pat00067
,
Figure pat00068
and
Figure pat00069
cast
Figure pat00070
is the physical quantity to be conserved in
Figure pat00071
In a closed system where
Figure pat00072
and
Figure pat00073
am.

그러나 일반적으로 중력과 같은 외력을 고려할 때 전달된 에너지의 대략적인 양으로 각 물리량을 업데이트해야 한다. However, in general, each physical quantity should be updated with an approximate amount of energy transferred when considering an external force such as gravity.

Figure pat00074
Figure pat00074

그러나, 수학식 12는 에너지와 운동량 사이의 종속성을 고려하지 않기 때문에 에너지와 운동량 사이에 양립하지 못하는 상황이 발생할 수 있다. However, since Equation 12 does not consider the dependence between energy and momentum, a situation in which energy and momentum are incompatible may occur.

예를 들어,

Figure pat00075
Figure pat00076
와 같은 상황을 가정하면,
Figure pat00077
는 0이 아닌 운동 에너지를 반환하지만, 0이어야 하는
Figure pat00078
과 양립하지 못한다. 즉, 모든 구속조건을 만족하는 해가 존재하지 않는 문제가 있을 수 있다. for example,
Figure pat00075
and
Figure pat00076
Assuming a situation like
Figure pat00077
returns non-zero kinetic energy, but
Figure pat00078
is incompatible with That is, there may be a problem in which there is no solution that satisfies all constraints.

이를 위해, 본 실시예에 따르면 운동량에 의한 에너지를 다음과 같이 정의한다. To this end, according to this embodiment, energy by momentum is defined as follows.

Figure pat00079
Figure pat00079

Figure pat00080
는 관성 텐서의 역수를 나타내며,
Figure pat00081
를 사용하여 근사화된다.
Figure pat00080
represents the reciprocal of the inertia tensor,
Figure pat00081
is approximated using

그런 다음 구속조건을 다음과 같이 정의한다. Then the constraints are defined as:

Figure pat00082
Figure pat00082

여기서,

Figure pat00083
Figure pat00084
Figure pat00085
를 보간하고, 이에 따라 본 실시예에 따른 최적화 문제는 다음과 같이 정의된다. here,
Figure pat00083
Is
Figure pat00084
and
Figure pat00085
interpolates , and accordingly, the optimization problem according to the present embodiment is defined as follows.

Figure pat00086
Figure pat00086

여기서,

Figure pat00087
는 수학식 5에서 정의된 것이고,
Figure pat00088
은 정규화 가중치이다. here,
Figure pat00087
Is defined in Equation 5,
Figure pat00088
is the normalization weight.

본 실시예에 따르면, 반복적인 기법인 SQP(Sequential Quadratic Programming)을 통해 근사해를 찾으며, 목적함수에 추가된

Figure pat00089
는 상기한 바와 같이
Figure pat00090
Figure pat00091
를 보간하는 최적의
Figure pat00092
를 찾기 위해 사용된다. According to this embodiment, an approximate solution is found through SQP (Sequential Quadratic Programming), an iterative technique, and the
Figure pat00089
As mentioned above
Figure pat00090
and
Figure pat00091
Optimal to interpolate
Figure pat00092
is used to find

Figure pat00093
는 최적화를 통해 구해지고,
Figure pat00094
Figure pat00095
이 서로 양립할 수 있을 때,
Figure pat00096
는 0이 되고 K는 버려진다. 그렇지 않으면
Figure pat00097
는 에너지가 운동량과 양립할 수 있음을 보장한다.
Figure pat00093
is obtained through optimization,
Figure pat00094
and
Figure pat00095
When these are compatible with each other,
Figure pat00096
becomes 0 and K is discarded. Otherwise
Figure pat00097
guarantees that energy is compatible with momentum.

상기한 가정의

Figure pat00098
Figure pat00099
에서
Figure pat00100
는 1에 가깝게 된다. above mentioned family
Figure pat00098
and
Figure pat00099
at
Figure pat00100
becomes close to 1.

도 2는 본 실시예에 따른 기법과 종래 기법의 변형체 시뮬레이션 결과를 나타낸 도면이고, 도 3은 시간에 따른 총 에너지, 탄성 에너지 및 각 운동량을 나타낸 도면이다. 2 is a diagram showing simulation results of a deformable body of a technique according to the present embodiment and a conventional technique, and FIG. 3 is a graph showing total energy, elastic energy, and angular momentum over time.

도 2 내지 도 3은 변형체의 탄성 및 회전 운동 시뮬레이션을 나타낸 것으로서, 도 2 내지 도 3에 도시된 바와 같이, 본 실시예에 따른 기법이 종래기술에 비해 에너지-운동량을 잘 보존하는 것을 확인할 수 있다. 2 and 3 show simulations of elasticity and rotational motion of the deformable body, and as shown in FIGS. 2 and 3, it can be confirmed that the technique according to the present embodiment preserves energy-momentum well compared to the prior art. .

또한, 도 4는 본 실시예에 따른 기법과 종래 기법의 Solver iteration(반복 횟수)에 따른 에너지 그래프를 나타낸 도면이다. 4 is a diagram showing an energy graph according to the solver iteration (number of iterations) of the technique according to the present embodiment and the conventional technique.

본 실시예에 따른 기법은 종래기술에 비해 현저히 적은 반복 횟수를 사용하는 점을 확인할 수 있다. It can be seen that the technique according to the present embodiment uses a significantly smaller number of iterations than the prior art.

상기한 본 발명의 실시예는 예시의 목적을 위해 개시된 것이고, 본 발명에 대한 통상의 지식을 가지는 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가가 가능할 것이며, 이러한 수정, 변경 및 부가는 하기의 특허청구범위에 속하는 것으로 보아야 할 것이다.The embodiments of the present invention described above have been disclosed for illustrative purposes, and those skilled in the art having ordinary knowledge of the present invention will be able to make various modifications, changes, and additions within the spirit and scope of the present invention, and such modifications, changes, and additions will be considered to fall within the scope of the following claims.

Claims (10)

실시간 변형체 시뮬레이션을 위한 에너지-운동량 보존 장치로서,
프로세서; 및
상기 프로세서에 연결되는 메모리를 포함하되,
상기 메모리는,
상기 변형체의 질량 및 상기 변형체를 구성하는 메쉬의 각 꼭짓점의 현재 시점의 위치를 입력 받고,
상기 메쉬의 각 꼭지점의 다음 시점의 위치를 탐색하기 위한 목적함수에 상기 변형체의 총 선형 운동량, 총 각 운동량 및 총 에너지를 포함하는 구속조건과 상기 변형체의 운동량에 의한 에너지 및 상기 총 에너지를 보간하기 위한 파라미터를 도입하고,
상기 로컬/글로벌 반복을 통해 상기 목적함수의 근사해를 탐색하도록,
상기 프로세서에 의해 실행되는 프로그램 명령어들을 저장하는 에너지-운동량 보존 장치.
As an energy-momentum conservation device for real-time deformable body simulation,
processor; and
Including a memory coupled to the processor,
the memory,
Receiving the mass of the deformable body and the position of each vertex of the mesh constituting the deformable body at the current time point,
To interpolate the constraint condition including the total linear momentum, total angular momentum, and total energy of the deformable body and the energy by the momentum of the deformable body and the total energy in the objective function for searching the position of the next time point of each vertex of the mesh Introduce parameters for
To search for an approximate solution of the objective function through the local / global iteration,
An energy-momentum conservation device for storing program instructions executed by the processor.
제1항에 있어서,
상기 구속조건에는 상기 변형체의 속도가 포함되며, 상기 속도는 각 꼭지점의 위치 및 시간 단계크기를 포함하는 역방향 오일러 근사로 대체되는 에너지-운동량 보존 장치.
According to claim 1,
The constraint condition includes the velocity of the deformable body, and the velocity is replaced by an inverse Euler approximation including a position of each vertex and a time step size.
제1항에 있어서,
상기 변형체의 운동량에 의한 에너지는 다음의 수학식으로 정의되는 에너지-운동량 보존 장치.
[수학식]
Figure pat00101

여기서,
Figure pat00102
는 i번째 메쉬 꼭짓점의 질량, P는 총 선형 운동량, L은 총 각 운동량,
Figure pat00103
는 관성 텐서의 역수임
According to claim 1,
An energy-momentum conservation device in which the energy by the momentum of the deformable body is defined by the following equation.
[mathematical expression]
Figure pat00101

here,
Figure pat00102
is the mass of the ith mesh vertex, P is the total linear momentum, L is the total angular momentum,
Figure pat00103
is the reciprocal of the inertia tensor
제3항에 있어서,
상기 구속조건은 다음의 수학식으로 정의되는 에너지-운동량 보존 장치.
[수학식]
Figure pat00104

여기서,
Figure pat00105
Figure pat00106
Figure pat00107
를 보간하기 위한 파라미터임
According to claim 3,
The constraint is an energy-momentum conservation device defined by the following equation.
[mathematical expression]
Figure pat00104

here,
Figure pat00105
Is
Figure pat00106
and
Figure pat00107
is a parameter for interpolating
제4항에 있어서,
상기 목적함수는 다음의 수학식으로 정의되는 에너지-운동량 보존 장치.
[수학식]
Figure pat00108

여기서,
Figure pat00109
이고,
Figure pat00110
은 정규화 가중치임
According to claim 4,
The objective function is an energy-momentum conservation device defined by the following equation.
[mathematical expression]
Figure pat00108

here,
Figure pat00109
ego,
Figure pat00110
is the regularization weight
제5항에 있어서,
상기 프로그램 명령어들은, SQP(Sequential Quadratic Programming)을 통해 상기 근사해를 탐색하는 에너지-운동량 보존 장치.
According to claim 5,
The program commands search for the approximate solution through SQP (Sequential Quadratic Programming).
제6항에 있어서,
상기 파라미터는
Figure pat00111
Figure pat00112
인 경우 1에 가까운 값을 갖는 에너지-운동량 보존 장치.
According to claim 6,
The above parameters are
Figure pat00111
and
Figure pat00112
An energy-momentum conservation device with a value close to 1 for .
프로세서 및 메모리를 포함하는 장치에서 실시간 변형체 시뮬레이션을 위한 에너지-운동량 보존 방법으로서,
상기 변형체의 질량 및 상기 변형체를 구성하는 메쉬의 각 꼭짓점의 현재 시점의 위치를 입력 받는 단계;
상기 메쉬의 각 꼭지점의 다음 시점의 위치를 탐색하기 위한 목적함수에 상기 변형체의 총 선형 운동량, 총 각 운동량 및 총 에너지를 포함하는 구속조건과 상기 변형체의 운동량에 의한 에너지 및 상기 총 에너지를 보간하기 위한 파라미터를 도입하는 단계; 및
상기 로컬/글로벌 반복을 통해 상기 목적함수의 근사해를 탐색하는 단계를 포함하는 에너지-운동량 보존 방법.
An energy-momentum conservation method for real-time deformation body simulation in a device including a processor and a memory,
receiving a mass of the deformable body and a position of each vertex of a mesh constituting the deformable body at a current viewpoint;
To interpolate the constraint condition including the total linear momentum, total angular momentum, and total energy of the deformable body and the energy by the momentum of the deformable body and the total energy in the objective function for searching the position of the next time point of each vertex of the mesh introducing a parameter for; and
An energy-momentum conservation method comprising the step of searching for an approximate solution of the objective function through the local / global iteration.
제8항에 있어서,
상기 구속조건에는 상기 변형체의 속도가 포함되며, 상기 속도는 각 꼭지점의 위치 및 시간 단계크기를 포함하는 역방향 오일러 근사로 대체되는 에너지-운동량 보존 방법.
According to claim 8,
The constraint condition includes the velocity of the deformable body, and the velocity is replaced by an inverse Euler approximation including a position of each vertex and a time step size.
제8항에 따른 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체.


A computer-readable recording medium on which a program for performing the method according to claim 8 is recorded.


KR1020220045628A 2021-12-14 2022-04-13 Energy-momentum conservation method and apparatus for real-time simulation of deformable objects KR20230090208A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210178279 2021-12-14
KR20210178279 2021-12-14

Publications (1)

Publication Number Publication Date
KR20230090208A true KR20230090208A (en) 2023-06-21

Family

ID=86989716

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220045628A KR20230090208A (en) 2021-12-14 2022-04-13 Energy-momentum conservation method and apparatus for real-time simulation of deformable objects

Country Status (1)

Country Link
KR (1) KR20230090208A (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7610184B1 (en) 2006-01-23 2009-10-27 Itt Manufacturing Enterprises, Inc. Sector meshing and neighbor searching for object interaction simulation

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7610184B1 (en) 2006-01-23 2009-10-27 Itt Manufacturing Enterprises, Inc. Sector meshing and neighbor searching for object interaction simulation

Similar Documents

Publication Publication Date Title
US11907830B2 (en) Neural network architecture using control logic determining convolution operation sequence
US11556778B2 (en) Automated generation of machine learning models
WO2018039011A1 (en) Asychronous training of machine learning model
Acary Energy conservation and dissipation properties of time‐integration methods for nonsmooth elastodynamics with contact
CN109584357B (en) Three-dimensional modeling method, device and system based on multiple contour lines and storage medium
JP4783586B2 (en) Stretching by mesh parameterization using spectral analysis
JP6991983B2 (en) How and systems to train machine learning systems
GB2560600A (en) Nueral Network Hardware
Calandriello et al. Distributed adaptive sampling for kernel matrix approximation
Trobec et al. Parallel scientific computing: theory, algorithms, and applications of mesh based and meshless methods
Ouyang et al. Anderson acceleration for nonconvex ADMM based on Douglas‐Rachford splitting
Vo et al. Streaming simplification of tetrahedral meshes
US11893687B2 (en) Segmenting a 3D modeled object representing a mechanical assembly
Sommer et al. Automatic differentiation on differentiable manifolds as a tool for robotics
Huang et al. Inverse kinematics using dynamic joint parameters: inverse kinematics animation synthesis learnt from sub-divided motion micro-segments
US11886832B2 (en) Operation device and operation method
KR20230090208A (en) Energy-momentum conservation method and apparatus for real-time simulation of deformable objects
Wang et al. Learning elastic constitutive material and damping models
KR20220146901A (en) Method and Apparatus for Accelerating Simultaneous Localization and Mapping
Han et al. QuickFPS: Architecture and algorithm co-design for farthest point sampling in large-scale point clouds
Tsigkanos et al. CCSDS 123.0-B-1 multispectral & hyperspectral image compression implementation on a next-generation space-grade SRAM FPGA
Wu et al. Streaming Approach to In Situ Selection of Key Time Steps for Time‐Varying Volume Data
CN111612102B (en) Satellite image data clustering method, device and equipment based on local feature selection
US20230360327A1 (en) Generating three-dimensional representations for digital objects utilizing mesh-based thin volumes
US20230315947A1 (en) Structural design using finite-element analysis