KR101727022B1 - 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법 및 장치 - Google Patents

전산유체역학에서 최적 2차 변수 계산 경로 제안 방법 및 장치 Download PDF

Info

Publication number
KR101727022B1
KR101727022B1 KR1020150183064A KR20150183064A KR101727022B1 KR 101727022 B1 KR101727022 B1 KR 101727022B1 KR 1020150183064 A KR1020150183064 A KR 1020150183064A KR 20150183064 A KR20150183064 A KR 20150183064A KR 101727022 B1 KR101727022 B1 KR 101727022B1
Authority
KR
South Korea
Prior art keywords
variable
calculation
graph
path
dependent
Prior art date
Application number
KR1020150183064A
Other languages
English (en)
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 한국과학기술정보연구원
Priority to KR1020150183064A priority Critical patent/KR101727022B1/ko
Application granted granted Critical
Publication of KR101727022B1 publication Critical patent/KR101727022B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • 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/11Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Operations Research (AREA)
  • Algebra (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명은 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법에 관한 것으로서, a) 2차 변수 종속 그래프의 2차 변수 계산식들의 계산비용을 추정하는 단계, (b) 상기 추정된 계산비용을 상기 2차 변수 종속 그래프의 간선에 가중치로 설정하는 단계, (c) 상기 가중치가 설정된 2차 변수 종속 그래프를 유향 그래프로 변환하는 단계를 포함한다.

Description

전산유체역학에서 최적 2차 변수 계산 경로 제안 방법 및 장치{METHOD AND APPARATUS FOR PROVIDING OPTIMAL SECONDARY VARIABLE CALCULATION PATH IN FLUID DYNAAMICS}
본 발명은 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법 및 장치에 관한 것으로서, 더욱 상세하게는 2차 변수 종속 다중그래프를 일반적인 가중 유향그래프로 변환하여 2차 변수 계산을 위한 최단 경로를 결정할 수 있도록 하는 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법 및 장치에 관한 것이다.
전산유체역학은 유체 현상을 기술한 비선형 편미분 방정식인 나비에-스톡크스 방정식(Navier-Stokes Equation)을 이산화하여 대수 방정식으로 변환하고, 이를 수치 알고리즘을 사용하여 문제를 풀고 해석하는 학문이다.
CFD 계산 결과는 압력, 속도, 밀도 등의 다양한 변수들이 2차원 배열 형태로 저장될 수 있으며, 이러한 변수들 간의 상호관계에 의해 새로운 변수의 배열(이상 변수로 표기)을 계산할 수도 있다.
CFD 솔버에서는 다양한 종류의 변수를 생성할 수 있지만, 모든 변수를 계산하여 저장하기에는 계산 시간이 지나치게 오래 걸리거나 저장 공간을 너무 많이 필요로 하는 등 여러 문제가 존재하여 대부분의 경우 필수적인 주요 변수들(이상 초기 변수)만 저장하고, 2차적인 변수들(이상 2차 변수)은 계산 시간 이후에 후처리 과정에서 유동해석 분석 도구 등을 이용해서 계산하는 경우가 많다. 이러한 2차 변수들은 초기 변수로부터 여러 수학 및 통계적인 연산을 이용해서 새롭게 계산될 수 있다.
그러나 기존의 유동해석 분석 도구들은 2차 변수의 생성을 위한 최단 경로를 자동으로 제시하지 못했다. 따라서 사용자가 목표 변수를 계산하기 위한 모든 계산 경로를 파악하고, 해당 경로에 따라 순차적으로 변수들의 계산을 수행하도록 해야 했다. 또한 이를 위해 사용자는 다수의 UI 조작이 필요하게 되어 유동해석 분석 도구의 사용성 저하를 가져왔다.
선행기술1: 한국등록특허 제1,030,732호(2011.04.26 공고)
본 발명의 목적은 전산유체역학 시뮬레이션의 결과로 생성되는 유동해석 데이터의 분석 및 가시화 작업에서 임의의 초기 변수가 제시되었을 때, 해당 변수들을 이용해서 목표 변수를 계산하기 위한 최적의 변수 계산 경로를 제안하는 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법 및 장치를 제공함에 있다.
본 발명의 다른 목적은 2차 변수 종속 다중그래프의 간선에 가중치를 적용하기 위한 2차 변수 계산식의 계산 비용 추정 방법하고, 이를 이용하여 2차 변수 종속 다중그래프를 일반적인 가중 유향 그래프로 변환할 수 있는 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법 및 장치를 제공하는 것이다.
본 발명의 또 다른 목적은 2차 변수 종속 다중그래프를 일반적인 가중 유향그래프로 변환하여 최단 경로를 결정할 수 있도록 하는 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법 및 장치를 제공하는 것이다.
한편, 본 발명이 이루고자 하는 기술적 과제는 이상에서 언급한 기술적 과제로 제한되지 않으며, 이하에서 설명할 내용으로부터 통상의 기술자에게 자명한 범위 내에서 다양한 기술적 과제가 포함될 수 있다.
본 발명의 일 측면에 따르면, (a) 2차 변수 종속 그래프의 2차 변수 계산식들의 계산비용을 추정하는 단계, (b) 상기 추정된 계산비용을 상기 2차 변수 종속 그래프의 간선에 가중치로 설정하는 단계, (c) 상기 가중치가 설정된 2차 변수 종속 그래프를 유향 그래프로 변환하는 단계를 포함하는 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법이 제공된다.
상기 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법은 특정 2차 변수 계산이 요청되는 경우, 상기 변환된 유향 그래프에서 주어진 초기 변수를 이용하여 특정 2차 변수 계산을 위한 경로들을 검색하는 단계, 상기 검색된 경로들 중에서 계산비용이 가장 적은 경로를 최적 경로로 제시하는 단계를 더 포함할 수 있다.
상기 (a)단계는, 2차 변수 계산식을 분석하여 기본 연산으로 나누고, 기 설정된 기본 연산들의 가중치를 적용하여 각 변수 계산식의 계산비용을 추정할 수 있다.
상기 (b) 단계는, 상기 2차 변수 종속 그래프에서 서로 연결된 두 정점간 계산비용의 차이를 구하는 단계, 상기 구해진 계산비용의 차이를 해당 간선의 가중치로 설정하는 단계를 포함할 수 있다.
상기 (c)단계는, 상기 2차 변수 종속 그래프에서 각 변수의 종속조건들을 정점으로 생성하고, 상기 생성된 두 정점을 잇는 새로운 간선을 추가하는 단계, 상기 2차 변수 종속 그래프 내 모든 정점의 모든 종속 조건에 대해 정점 및 간선 추가 작업의 완료에 의해 유향 그래프가 생성되는 단계를 포함할 수 있다.
상기 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법은 새로운 정점이 추가된 경우, 해당 정점을 구성하는 변수들의 종속조건들의 조합을 정점으로 생성하고, 생성된 정점을 잇는 새로운 간선을 추가하는 단계를 더 포함할 수 있다.
본 발명의 다른 측면에 따르면, 2차 변수 종속 그래프의 2차 변수 계산식들의 계산비용을 추정하여 2차 변수 종속 그래프의 간선에 가중치로 설정하는 계산비용 추정부, 상기 가중치가 설정된 2차 변수 종속 그래프를 유향 그래프로 변환하는 유향 그래프 변환부를 포함하는 전산유체역학에서 최적 2차 변수 계산 경로 제안을 위한 장치가 제공된다.
상기 전산유체역학에서 최적 2차 변수 계산 경로 제안을 위한 장치는 특정 2차 변수 계산이 요청되는 경우, 상기 변환된 유향 그래프에서 주어진 초기 변수를 이용하여 특정 2차 변수 계산을 위한 경로들을 검색하고, 상기 검색된 경로들 중에서 계산비용이 가장 적은 경로를 최적 경로로 제시하는 최적 경로 제공부를 더 포함할 수 있다.
상기 계산비용 추정부는 2차 변수 계산식을 분석하여 기본 연산으로 나누고, 기 설정된 기본 연산들의 가중치를 적용하여 각 변수 계산식의 계산비용을 추정할 수 있다.
또한, 상기 계산비용 추정부는 상기 2차 변수 종속 그래프에서 서로 연결된 두 정점간 계산비용의 차이를 구하고, 상기 구해진 계산비용의 차이를 해당 간선의 가중치로 설정할 수 있다.
상기 유향 그래프 변환부는 상기 2차 변수 종속 그래프에서 각 변수의 종속조건들을 정점으로 생성하고, 상기 생성된 두 정점을 잇는 새로운 간선을 추가하여, 상기 2차 변수 종속 그래프를 유향 그래프로 변환할 수 있다.
또한, 상기 유향 그래프 변환부는 새로운 정점이 추가된 경우, 해당 정점을 구성하는 변수들의 종속조건들의 조합을 정점으로 생성하고, 생성된 정점을 잇는 새로운 간선을 추가할 수 있다.
본 발명에 따르면, 전산유체역학 시뮬레이션의 결과로 생성되는 유동해석 데이터의 분석 및 가시화 작업에서 임의의 초기 변수가 제시되었을 때, 해당 변수들을 이용해서 목표 변수를 계산하기 위한 최적의 변수 계산 경로를 제안할 수 있다.
또한, 2차 변수 종속 다중그래프를 일반적인 가중 유향그래프로 변환하여 최단 경로를 결정할 수 있다.
또한, 초기 변수들이 주어졌을 때 목표 변수를 계산하기 위한 최적의 계산 경로를 찾음으로써, 유동해석 분석 도구의 사용성을 향상시킬 수 있다.
한편, 본 발명의 효과는 이상에서 언급한 효과들로 제한되지 않으며, 이하에서 설명할 내용으로부터 통상의 기술자에게 자명한 범위 내에서 다양한 효과들이 포함될 수 있다.
도 1은 전산유체역학에서 다루는 변수를 설명하기 예시도, 도 2는 2차 변수 종속 그래프를 설명하기 위한 예시도이다.
도 3은 종속 다중 그래프를 설명하기 위한 예시도이다.
도 4는 본 발명의 실시 예에 따른 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법을 나타낸 흐름도이다.
도 5는 본 발명의 실시예에 따른 2차 변수 종속 그래프내 간선들의 가중치를 설정하는 방법을 나타낸 흐름도이다.
도 6은 본 발명의 실시예에 따른 기본 연산의 가중치를 설명하기 위한 예시도이다.
도 7은 본 발명의 실시예에 따른 변수 계산식의 가중치를 설명하기 위한 예시도이다.
도 8은 본 발명의 실시예에 따른 유향 그래프 변환 방법을 나타낸 흐름도이다.
도 9는 본 발명의 실시예에 따른 전산유체역학에서 최적 2차 변수 계산 경로 제안이 가능한 컴퓨팅 장치의 구성을 개략적으로 나타낸 블럭도이다.
이하, 첨부된 도면들을 참조하여 본 발명에 따른 '전산유체역학에서 최적 2차 변수 계산 경로 제안 방법 및 장치'을 상세하게 설명한다. 설명하는 실시 예들은 본 발명의 기술 사상을 당업자가 용이하게 이해할 수 있도록 제공되는 것으로 이에 의해 본 발명이 한정되지 않는다. 또한, 첨부된 도면에 표현된 사항들은 본 발명의 실시 예들을 쉽게 설명하기 위해 도식화된 도면으로 실제로 구현되는 형태와 상이할 수 있다.
한편, 이하에서 표현되는 각 구성부는 본 발명을 구현하기 위한 예일 뿐이다. 따라서, 본 발명의 다른 구현에서는 본 발명의 사상 및 범위를 벗어나지 않는 범위에서 다른 구성부가 사용될 수 있다.
또한, 각 구성부는 순전히 하드웨어 또는 소프트웨어의 구성만으로 구현될 수도 있지만, 동일 기능을 수행하는 다양한 하드웨어 및 소프트웨어 구성들의 조합으로 구현될 수도 있다. 또한, 하나의 하드웨어 또는 소프트웨어에 의해 둘 이상의 구성부들이 함께 구현될 수도 있다.
또한, 어떤 구성요소들을 '포함'한다는 표현은, '개방형'의 표현으로서 해당 구성요소들이 존재하는 것을 단순히 지칭할 뿐이며, 추가적인 구성요소들을 배제하는 것으로 이해되어서는 안 된다.
도 1은 전산유체역학에서 다루는 변수를 설명하기 예시도, 도 2는 2차 변수 종속 그래프를 설명하기 위한 예시도, 도 3은 종속 다중 그래프를 설명하기 위한 예시도이다.
도 1을 참조하면, 각 변수의 계산식을 보면 특정 변수들의 조합으로 한 변수의 계산이 가능하다. 이때, 변수 a를 계산하기 위해 변수 b와 c가 필요하다고 하면, 변수 a는 변수 b와 c에 종속된다고 할 수 있다.
예를 들어, pressure를 계산하기 위해서는 density와 temperature가 필요하므로, pressure는 density와 temperature에 종속된다고 할 수 있다. Velocity magnitude나 temperature와 같이 다양한 변수들과 종속관계인 변수들도 존재하는데, velocity magnitude의 경우 velocity vector로부터 계산이 가능함과 동시에, Mach number와 speed of sound로부터도 계산이 가능하다. 이처럼 변수 간 상관관계의 경우, velocity magnitude는 7개, temperature의 경우 6개의 종속관계가 존재한다.
이러한 변수의 계산식을 그래프로 표현하면, 도 2와 같은 2차 변수 종속 그래프가 될 수 있다.
2차 변수 종속 그래프는 정점과 정점을 연결하는 간선으로 이루어진다. 여기서, 정점은 변수를 의미하고, 간선은 각 변수 간의 종속 관계를 나타낸다. 정점을 기준으로 화살표의 방향이 들어오는 간선은 진입 간선, 나가는 간선은 진출 간선이고, 각 정점은 진입 간선으로 연결된 정점에 종속되며, 진출 간선으로 연결된 정점을 종속한다. 하나의 정점에는 서로 모양과 색깔이 다른 간선이 다수 연결되는데, 해당 정점은 서로 같은 모양과 색깔의 진입 간선으로 연결된 정점들의 조합에 종속적이다.
예를 들어, velocity magnitude의 경우 velocity vector와는 검은 실선의 진입 간선으로 연결되어, velocity vector 단일 변수에 종속적인 반면, Mach number와 speed of sound와는 붉은 실선의 진입 간선으로 연결되어 Mach number와 speed of sound의 조합에 종속적이 된다.
도 2의 종속 그래프 상에서 보행(walk)을 할 때 각 정점은 종속 조건을 충족하는 진입 간선의 여러 조합들 중 하나 이상으로부터 입력이 들어와야 진출 간선을 통해 다음 정점으로 나갈 수 있다. 이러한 제약 조건으로 인해 종속 그래프에서 주어진 초기 변수들을 이용하여 2차 변수(목표 변수)를 계산하기 위한 최단 경로를 구하는 문제는 매우 복잡해진다. 특히, 도 2의 종속 그래프는 각 정점의 입력 차수와 출력 차수가 복수일 수 있고, 순환이 존재할 수 있을 뿐만 아니라, 두 정점 사이에 두 개 이상의 간선이 존재할 수 있는 유향 다중그래프이다.
2차 변수 종속 그래프가 다중 그래프 G=(V, E)라고 할 때, 간선 {u,v}∈E, (u,v∈E)는 종속 관계에 있는 두 변수(정점) u와 v를 연결한다. 간선 {a,b}는 정점 b가 a에 종속적이라는 의미이고, a에서 b방향으로 화살표가 그려진다. 본 발명에서는 한 변수에 대해 각 종속 조건을 구성하는 변수들의 조합을 '< >' 부호를 이용하여 표기하고, 해당 변수의 모든 종속 조건의 집합을 'D(변수)'로 표기한다. D(변수) 내부에는 동일한 종속 조건이 존재할 수 없다. 또한, 충족 조건을 구성하는 모든 변수의 합집합을 U(변수)라 표기한다.
예를 들어, 도 3과 같은 종속 다중 그래프를 참조하면, 변수 a가 변수 b, c의 조합 또는 b, c의 조합에 종속적이라면, 종속 조건 D(a)={<b,c>, <b,d>}이고, U(a)={b,c,d}이다. 이때, 간선의 집합 E에는 {b, a}, {c, a}, {b, a}, {d, a}가 포함된다. E에 간선 {b, a}가 2개 이상 추가되므로, 종속 그래프 G는 다중그래프이다.
이러한 종속 다중 그래프는 각 정점이 진입 간선으로 연결된 정점에 종속적이기 때문에, 각 종속 조건을 만족하는 진입 간선들의 집합에서 모두 입력이 들어와야 진출 간선으로 출력이 가능하다. 이 제약 조건으로 인해 2차 변수 종속 그래프에서 초기 변수들과 2차 변수(목표 변수) 간의 최단 경로를 찾는 문제는 매우 복잡하다. 특히, 한 변수에 여러 종류의 서로 다른 종속 관계가 존재하기 때문에 주어진 초기 변수의 조합으로 원하는 2차 변수(목표 변수)의 계산이 가능한지, 가능하다면 최단 경로가 무엇인지를 예측하는 것은 매우 어렵다. 특히, 각 계산식은 그 계산량이 차이가 있고, 사용하는 하드웨어나 소프트웨어 라이브러리에 따라 계산 비용이 서로 다르기 때문에 어느 경로의 계산 비용이 가장 작은지 예측하는 문제는 더욱 어려워진다.
도 1과 같이 2차 변수 계산식의 계산 비용은 계산식마다 다르기 때문에, 2차 변수 종속 그래프에서 구한 최단 경로가 가장 계산 비용이 적은 경로라고 단정할 수 없다. 이러한 문제를 해결하기 위해 본 발명에서는 2차 변수 계산식의 계산 비용 추정하고, 추정된 계산 비용을 2차 변수 종속 그래프의 간선에 가중치로 적용하며, 2차 변수 종속 다중그래프를 일반적인 가중 유향 그래프로 변환하여 최단 경로를 결정한다.
이하 도면을 참조하여, 최적 2차 변수 계산 경로 제안 방법에 대해 설명하기로 한다.
도 4는 본 발명의 실시 예에 따른 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법을 나타낸 흐름도이다.
도 4를 참조하면, 컴퓨팅 장치는 2차 변수 종속 그래프의 2차 변수 계산식들의 계산비용을 추정하여 2차 변수 종속 그래프의 간선에 가중치로 설정한다(S402). 즉, 컴퓨팅 장치는 2차 변수 계산식마다 계산 비용을 휴리스틱하게 추정한다. 예컨대, 2차 변수 계산식을 분석하여 기본 연산으로 나누고, 각 기본 연산의 복잡도에 따라 계산 비용을 추정할 수 있다. 컴퓨팅 장치가 2차 변수 종속 그래프의 간선에 가중치를 설정하는 방법에 대한 상세한 설명은 도 5를 참조하기로 한다.
S402가 수행되면, 컴퓨팅 장치는 가중치가 설정된 2차 변수 종속 그래프를 유향 그래프로 변환한다(S404). 이때, 컴퓨팅 장치는 가중치가 설정된 2차 변수 종속 그래프를 변수와 각 변수의 종속조건들을 정점으로 하는 유향 그래프로 변환한다. 컴퓨팅 장치가 유향 그래프로 변환하는 방법에 대한 상세한 설명은 도 6을 참조하기로 한다.
그런 후, 특정 2차 변수 계산이 요청되면(S406), 컴퓨팅 장치는 유향 그래프에서 주어진 초기 변수를 이용하여 특정 2차 변수 계산을 위한 경로들을 검색하고(S408), 검색된 경로들 중에서 계산비용이 가장 적은 경로를 최적 경로로 제시한다(S410). 즉, 초기 변수를 포함하는 특정 2차 변수 계산 요청이 수신되면, 컴퓨팅 장치는 유향 그래프에서 주어진 초기변수들로 조합 가능한 초기 변수와 특정 2차 변수 사이의 모든 경로를 구하고, 구해진 경로별로 간선들에 설정된 가중치를 연산하여 최저 비용의 경로를 선택한다.
S404를 통해 생성된 가중 유향 그래프는 순환(cycle)을 포함하고, 음수 가중치를 가지지 않으므로, 데이크스트라 알고리즘(Dijkstra Algorithm) 등 순환을 허용하지만 음수 가중치를 허용하지 않는 그래프 상에서의 정점 간 최단 거리를 구할 수 있는 알고리즘을 이용하면 최단 경로를 구할 수 있다. 만약, 구한 최단 경로의 거리가 무한대(∞)라면 주어진 초기 변수들로 목표 변수를 구할 수 없다.
도 5는 본 발명의 실시예에 따른 2차 변수 종속 그래프내 간선들의 가중치를 설정하는 방법을 나타낸 흐름도, 도 6은 본 발명의 실시예에 따른 기본 연산의 가중치를 설명하기 위한 예시도, 도 7은 본 발명의 실시예에 따른 변수 계산식의 가중치를 설명하기 위한 예시도이다.
도 5를 참조하면, 컴퓨팅 장치는 2차 변수 계산식을 분석하여 기본 연산으로 나누고(S502), 기 설정된 기본 연산들의 가중치를 적용하여 각 변수 계산식의 계산비용을 추정한다(S504). 즉, 컴퓨팅 장치는 2차 변수 계산식을 분석하여 기본 연산으로 나누고, 각 기본 연산의 복잡도에 따라 계산 비용을 추정한다.
예를 들어, 도 6과 같이 기본 연산의 종류와 연산별 계산비용이 설정되어 있다고 가정하여 설명하기로 한다. 도 1에 도시된 각 변수 계산식의 계산비용을 도 6에 도시된 계산비용을 이용하여 추정하면, 도 7과 같을 수 있다.
각 변수의 계산 방법은 본 발명에서 제시한 방법보다 더욱 많기 때문에 실제 계산 비용은 계산 경로에 따라 달라질 수 있다. 도 6의 연산별 계산 비용은 계산 하드웨어에 따라 달라질 수 밖에 없기 때문에, 본 발명에서는 이를 휴리스틱하게 추정할 수 있다. 특히, 고유값(eigen value) 계산의 경우 3X3 행렬에 대해 행렬식(determinant)를 구한 뒤 3차 방정식을 푸는 방법으로 나누어 추정할 수 있다.
S504의 수행 후, 컴퓨팅 장치는 2차 변수 종속 그래프에서 서로 연결된 두 정점간 계산비용의 차이를 구하고(S506), 구해진 계산비용의 차이를 해당 간선의 가중치로 설정한다(S508). 이때, 컴퓨팅 장치는 간선이 연결된 두 변수의 값이 계산된 경우, 해당 간선의 가중치를 '0'으로 설정할 수 있다.
이러한 계산 비용의 차이를 각 간선에 가중치 형태로 반영하게 되면, 2차 변수 종속 그래프는 가중 그래프(weighted graph)가 되어, 그 그래프에서 구한 최단 경로가 실제 최소의 계산 비용의 경로로 볼 수 있다.
도 8은 본 발명의 실시예에 따른 유향 그래프 변환 방법을 나타낸 흐름도이다.
도 8을 참조하면, 컴퓨팅 장치는 2차 변수 종속 다중 그래프에서 각 변수의 종속조건들을 정점으로 생성하고(S802), 생성된 두 정점을 잇는 새로운 간선을 추가한다.(S804),
그런 후, 컴퓨팅 장치는 2차 변수 종속 다중그래프 내 모든 정점의 모든 종속 조건에 대해 정점 및 간선 추가 작업이 완료되었는지를 판단한다(S806).
S806의 판단결과, 정점 및 간선 추가 작업이 완료되었으면, 2차 변수 종속 다중 그래프를 유향 그래프로 변환된다(S808).
즉, 컴퓨팅 장치는 2차 변수 종속 다중 그래프에서의 최단 경로 문제를 일반적인 유향 그래프에서의 최단 경로 문제로 변환하기 위해, 2차 변수 종속 다중 그래프 G=(V, E)로부터 변수 V와 각 변수의 종속 조건들을 정점으로 하는 새로운 그래프 G'=(V', E')를 생성한다. 즉, 도 3과 같이 a라는 변수가 bc의 쌍에 종속적이라면, b, c의 쌍을 별도의 정점 (b, c)로 생성하여 V'에 삽입하고, 두 정점을 잇는 새로운 간선 {(b, c), a}를 E'에 추가한다. 그러면, 도 9와 같은 유향 그래프가 생성될 수 있다.
S806의 수행 후, 새로운 정점이 추가되면(S810), 컴퓨팅 장치는 해당 정점을 구성하는 변수들의 종속조건들의 조합을 정점으로 생성하고(S812), 생성된 정점을 잇는 새로운 간선을 추가한다(S814).
컴퓨팅 장치는 정점 및 간선 추가 작업을 2차 변수 종속 다중그래프 내 모든 정점의 모든 종속 조건(D∀ v∈V)에 대해 수행하는데, 이러한 작업은 종속 그래프 내의 모든 정점들뿐만 아니라 새롭게 추가되는 정점에 대해서도 재귀적으로 수행된다. 이때, 새롭게 생성되는 정점의 종속 조건은 해당 정점을 구성하는 변수들의 종속 조건들의 조합으로 구성된다.
예를 들어, D(b) = {<d>, <e, f>}이고, D(c) = {<g>, <h>}라면, D(b, c) = {<d, g>, <d, h>, <e, f, g>, <e, f, h>}일 수 있다.
만약, 조합하는 종속 조건들에 동일한 변수가 존재한다면, 중복해서 나열하지 않고 한번만 나열한다. 예를 들어, D(b) = {<d>, <e, f>}이고, D(c) = {<g>, <e>}라면, D(b, c) = {<d, g>, <d, e>, <e, f, g>, <e, f>}일 수 있다.
이러한 재귀적인 정점 추가 작업은 추가되는 정점의 모든 종속 조건들이 초기 변수로부터 조합 가능한 경우, 유향 그래프(G')에 정점과 간선이 이미 존재하는 경우, 정점과 간선의 추가로 유향 그래프(G')에 고리(loop)가 생성된 경우, 모든 정점의 종속 조건들을 추가한 경우 등의 조건을 만족할 멈춘다. 추가되는 정점의 모든 종속 조건들이 초기 변수로부터 조합 가능하면, 해당 정점과 각 초기 변수의 정점들을 간선들로 연결한다. 또한, 유향 그래프(G')에 정점과 간선이 이미 존재하면, 동일한 간선이 2번 삽입되어, 다중 그래프가 되므로 이를 방지해야 한다. 또한, 정점과 간선의 추가로 유향 그래프에 고리가 생성되면, 고리를 생성한 정점과 간선을 삭제한다. 또한, 모든 정점의 종속 조건들을 추가하면, 더 이상 정점이 남아 있지 않으므로, 정점 추가 작업을 멈춘다.
각 정점의 종속 조건의 집합 D(v)에는 서로 중복되는 조건이 존재하지 않으므로 새롭게 생성되는 그래프에서 각 정점 사이의 간선은 단일하고, 따라서 이 그래프는 다중 그래프가 아니다.
도 9는 본 발명의 실시예에 따른 전산유체역학에서 최적 2차 변수 계산 경로 제안이 가능한 컴퓨팅 장치의 구성을 개략적으로 나타낸 블럭도이다.
도 9를 참조하면, 전산유체역학에서 최적 2차 변수 경로 제안이 가능한 컴퓨팅 장치(900)는 계산 비용 추정부(910), 유향 그래프 변환부(920), 저장부(930), 최적 경로 제공부(940), 제어부(950)를 포함한다.
계산 비용 추정부(190)는 2차 변수 종속 그래프의 2차 변수 계산식들의 계산비용을 추정하여 2차 변수 종속 그래프의 간선에 가중치로 설정한다.
유향 그래프 변환부(920)는 가중치가 설정된 2차 변수 종속 그래프를 유향 그래프로 변환한다. 이때, 유향 그래프 변환부(920)는 가중치가 설정된 2차 변수 종속 그래프를 변수와 각 변수의 종속조건들을 정점으로 하는 유향 그래프로 생성한다.
저장부(930)에는 2차 변수 종속 그래프, 2차 변수 종속 그래프에 대응하는 유향 그래프에 대한 정보가 저장된다.
저장부(930)는 컴퓨팅 장치(900)의 동작 제어 시 필요한 프로그램과, 그 프로그램 수행 중에 발생되는 데이터를 저장한다.
최적 경로 제공부(940)는 특정 2차 변수 계산이 요청되면, 유향 그래프에서 주어진 초기 변수를 이용하여 특정 2차 변수 계산을 위한 경로들을 검색하고, 검색된 경로들 중에서 계산비용이 가장 적은 경로를 최적 경로로 제시한다.
한편, 계산 비용 추정부(910), 유향 그래프 변환부(920), 저장부(930), 최적 경로 제공부(940) 각각은 컴퓨팅 장치상에서 프로그램을 실행하기 위해 필요한 프로세서 등에 의해 각각 구현될 수 있다. 이처럼 계산 비용 추정부(910), 유향 그래프 변환부(920), 저장부(930), 최적 경로 제공부(940)는 물리적으로 독립된 각각의 구성에 의해 구현될 수도 있고, 하나의 프로세서 내에서 기능적으로 구분되는 형태로 구현될 수도 있다.
제어부(950)는 계산 비용 추정부(910), 유향 그래프 변환부(920), 저장부(930), 최적 경로 제공부(940)를 포함하는 컴퓨팅 장치(100)의 다양한 구성부들의 동작을 제어하는 구성이다.
이러한 제어부(950)는 적어도 하나의 연산 장치를 포함할 수 있는데, 여기서 상기 연산 장치는 범용적인 중앙연산장치(CPU), 특정 목적에 적합하게 구현된 프로그래머블 디바이스 소자(CPLD, FPGA), 주문형 반도체 연산장치(ASIC) 또는 마이크로 컨트롤러 칩일 수 있다.
한편, 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법은 프로그램으로 작성 가능하며, 프로그램을 구성하는 코드들 및 코드 세그먼트들은 당해 분야의 프로그래머에 의하여 용이하게 추론될 수 있다. 또한, 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법에 관한 프로그램은 전자장치가 읽을 수 있는 정보저장매체(Readable Media)에 저장되고, 전자장치에 의하여 읽혀지고 실행될 수 있다.
이와 같이, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 실시 형태로 실시될 수 있다는 것을 인지할 수 있을 것이다. 따라서 이상에서 기술한 실시 예들은 예시적인 것일 뿐이며, 그 범위를 제한해놓은 한정적인 것이 아닌 것으로 이해해야만 한다. 또한, 도면에 도시된 순서도들은 본 발명을 실시함에 있어서 가장 바람직한 결과를 달성하기 위해 예시적으로 도시된 순차적인 순서에 불과하며, 다른 추가적인 단계들이 제공되거나, 일부 단계가 삭제될 수 있음은 물론이다.
본 명세서에서 기술한 기술적 특징과 이를 실행하는 구현물은 디지털 전자 회로로 구현되거나, 본 명세서에서 기술하는 구조 및 그 구조적인 등가물 등을 포함하는 컴퓨터 소프트웨어, 펌웨어 또는 하드웨어로 구현되거나, 이들 중 하나 이상의 조합으로 구현 가능하다. 또한 본 명세서에서 기술한 기술적 특징을 실행하는 구현물은 컴퓨터 프로그램 제품, 다시 말해 처리 시스템의 동작을 제어하기 위하여 또는 이것에 의한 실행을 위하여 유형의 프로그램 저장매체 상에 인코딩된 컴퓨터 프로그램 명령어에 관한 모듈로서 구현될 수도 있다.
컴퓨터로 판독 가능한 매체는 기계로 판독 가능한 저장 장치, 기계로 판독 가능한 저장 기판, 메모리 장치, 기계로 판독 가능한 전파형 신호에 영향을 미치는 물질의 조성물 또는 이들 중 하나 이상의 조합일 수 있다.
또한, 본 명세서에서 기술한 "컴퓨터에서 판독 가능한 매체"는 프로그램 실행을 위해 명령어를 프로세서로 제공하는데 기여하는 모든 매체를 포함한다. 구체적으로 데이터 스토리지 디바이스, 광디스크, 자기 디스크 등과 같은 비휘발성 매체, 동적 메모리 등과 같은 휘발성 매체와 데이터를 전송하는 동축 케이블, 구리 와이어, 광섬유 등과 같은 전송 매체를 포함하지만 이에 한정되지는 않는다.
한편, 본 명세서에 첨부된 도면에 도시된 블록도와 순서도에 포함된 본 발명의 기술적 특징을 실행하는 구성들은 상기 구성들 사이의 논리적인 경계를 의미한다.
그러나 소프트웨어나 하드웨어의 실시 예에 따르면, 도시된 구성들과 그 기능들은 독립형 소프트웨어 모듈, 모놀리식 소프트웨어 구조, 코드, 서비스 및 이들을 조합한 형태로 실행되며, 저장된 프로그램 코드, 명령어 등을 실행할 수 있는 프로세서를 구비한 컴퓨터에서 실행 가능한 매체에 저장되어 그 기능들이 구현될 수 있으므로 이러한 모든 실시 예 역시 본 발명의 권리범위 내에 속하는 것으로 보아야 할 것이다.
따라서, 첨부된 도면과 그에 대한 기술은 본 발명의 기술적 특징을 설명하기는 하나, 이러한 기술적 특징을 구현하기 위한 소프트웨어의 특정 배열이 분명하게 언급되지 않는 한, 단순히 추론되어서는 안된다. 즉, 이상에서 기술한 다양한 실시 예들이 존재할 수 있으며, 그러한 실시 예들이 본 발명과 동일한 기술적 특징을 보유하면서 일부 변형될 수 있으므로, 이 역시 본 발명의 권리범위 내에 속하는 것으로 보아야 할 것이다.
또한, 순서도의 경우 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 가장 바람직한 결과를 얻기 위하여 도시된 것으로서, 도시된 특정한 순서나 순차적인 순서대로 그러한 동작들을 반드시 실행되어야 한다거나 모든 도시된 동작들이 반드시 실행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티 태스킹과 병렬 프로세싱이 유리할 수 있다. 아울러, 이상에서 기술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징될 수 있다는 점을 이해하여야 한다.
이와 같이, 본 명세서는 그 제시된 구체적인 용어에 의해 본 발명을 제한하려는 의도가 아니다. 따라서, 이상에서 기술한 실시 예를 참조하여 본 발명을 상세하게 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 본 발명의 범위를 벗어나지 않으면서도 본 실시 예들에 대한 개조, 변경 및 변형을 가할 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 권리범위에 포함되는 것으로 해석되어야 한다.
900 : 컴퓨팅 장치 910 : 계산 비용 추정부
920 : 유향 그래프 변환부 930 : 저장부
940 : 최적 경로 제공부 950 : 제어부

Claims (12)

  1. (a) 2차 변수 종속 그래프의 2차 변수 계산식들의 계산비용을 추정하는 단계;
    (b) 상기 추정된 계산비용을 상기 2차 변수 종속 그래프의 간선에 가중치로 설정하는 단계;
    (c) 상기 가중치가 설정된 2차 변수 종속 그래프를 유향 그래프로 변환하는 단계;를 포함하고,
    상기 (b) 단계는,
    상기 2차 변수 종속 그래프에서 서로 연결된 두 정점간 계산비용의 차이를 구하는 단계;
    상기 구해진 계산비용의 차이를 해당 간선의 가중치로 설정하는 단계를 포함하는 것을 특징으로 하는 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법.
  2. 제1항에 있어서,
    특정 2차 변수 계산이 요청되는 경우, 상기 변환된 유향 그래프에서 주어진 초기 변수를 이용하여 특정 2차 변수 계산을 위한 경로들을 검색하는 단계; 및
    상기 검색된 경로들 중에서 계산비용이 가장 적은 경로를 최적 경로로 제시하는 단계를 더 포함하는 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법.
  3. 제1항에 있어서,
    상기 (a)단계는,
    2차 변수 계산식을 분석하여 기본 연산으로 나누고, 기 설정된 기본 연산들의 가중치를 적용하여 각 변수 계산식의 계산비용을 추정하는 것을 특징으로 하는 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법.
  4. 삭제
  5. 제1항에 있어서,
    상기 (c)단계는,
    상기 2차 변수 종속 그래프에서 각 변수의 종속조건들을 정점으로 생성하고, 상기 생성된 두 정점을 잇는 새로운 간선을 추가하는 단계; 및
    상기 2차 변수 종속 그래프 내 모든 정점의 모든 종속 조건에 대해 정점 및 간선 추가 작업의 완료에 의해 유향 그래프가 생성되는 단계를 포함하는 것을 특징으로 하는 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법.
  6. 제5항에 있어서,
    새로운 정점이 추가된 경우, 해당 정점을 구성하는 변수들의 종속조건들의 조합을 정점으로 생성하고, 생성된 정점을 잇는 새로운 간선을 추가하는 단계를 더 포함하는 것을 특징으로 하는 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법.
  7. 2차 변수 종속 그래프의 2차 변수 계산식들의 계산비용을 추정하여 2차 변수 종속 그래프의 간선에 가중치로 설정하는 계산비용 추정부;
    상기 가중치가 설정된 2차 변수 종속 그래프를 유향 그래프로 변환하는 유향 그래프 변환부;를 포함하고,
    상기 계산비용 추정부는 상기 2차 변수 종속 그래프에서 서로 연결된 두 정점간 계산비용의 차이를 구하고, 상기 구해진 계산비용의 차이를 해당 간선의 가중치로 설정하는 것을 특징으로 하는 전산유체역학에서 최적 2차 변수 계산 경로 제안을 위한 장치.
  8. 제7항에 있어서,
    특정 2차 변수 계산이 요청되는 경우, 상기 변환된 유향 그래프에서 주어진 초기 변수를 이용하여 특정 2차 변수 계산을 위한 경로들을 검색하고, 상기 검색된 경로들 중에서 계산비용이 가장 적은 경로를 최적 경로로 제시하는 최적 경로 제공부를 더 포함하는 전산유체역학에서 최적 2차 변수 계산 경로 제안을 위한 장치.
  9. 제7항에 있어서,
    상기 계산비용 추정부는 2차 변수 계산식을 분석하여 기본 연산으로 나누고, 기 설정된 기본 연산들의 가중치를 적용하여 각 변수 계산식의 계산비용을 추정하는 것을 특징으로 하는 전산유체역학에서 최적 2차 변수 계산 경로 제안을 위한 장치.

  10. 삭제
  11. 제7항에 있어서,
    상기 유향 그래프 변환부는 상기 2차 변수 종속 그래프에서 각 변수의 종속조건들을 정점으로 생성하고, 상기 생성된 두 정점을 잇는 새로운 간선을 추가하여, 상기 2차 변수 종속 그래프를 유향 그래프로 변환하는 것을 특징으로 하는 전산유체역학에서 최적 2차 변수 계산 경로 제안을 위한 장치.
  12. 제7항에 있어서,
    상기 유향 그래프 변환부는 새로운 정점이 추가된 경우, 해당 정점을 구성하는 변수들의 종속조건들의 조합을 정점으로 생성하고, 생성된 정점을 잇는 새로운 간선을 추가하는 것을 특징으로 하는 전산유체역학에서 최적 2차 변수 계산 경로 제안을 위한 장치.
KR1020150183064A 2015-12-21 2015-12-21 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법 및 장치 KR101727022B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150183064A KR101727022B1 (ko) 2015-12-21 2015-12-21 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150183064A KR101727022B1 (ko) 2015-12-21 2015-12-21 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법 및 장치

Publications (1)

Publication Number Publication Date
KR101727022B1 true KR101727022B1 (ko) 2017-04-14

Family

ID=58579470

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150183064A KR101727022B1 (ko) 2015-12-21 2015-12-21 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법 및 장치

Country Status (1)

Country Link
KR (1) KR101727022B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101975753B1 (ko) * 2018-07-24 2019-05-07 한국과학기술정보연구원 Cfd 변수 정보의 계산 경로를 다각화하는 장치, 방법 및 컴퓨터 판독 가능한 기록 매체

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011022660A (ja) * 2009-07-13 2011-02-03 Canon Inc 流体の数値計算装置
JP2015191333A (ja) * 2014-03-27 2015-11-02 株式会社Kddi研究所 検出装置、検出方法及び検出プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011022660A (ja) * 2009-07-13 2011-02-03 Canon Inc 流体の数値計算装置
JP2015191333A (ja) * 2014-03-27 2015-11-02 株式会社Kddi研究所 検出装置、検出方法及び検出プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101975753B1 (ko) * 2018-07-24 2019-05-07 한국과학기술정보연구원 Cfd 변수 정보의 계산 경로를 다각화하는 장치, 방법 및 컴퓨터 판독 가능한 기록 매체

Similar Documents

Publication Publication Date Title
TWI645301B (zh) 使用類神經網路處理器計算卷積
TW201837737A (zh) 使用一矩陣運算單元之深度串接
US10509683B2 (en) Modeling resource usage for a job
CN109074349A (zh) 处理数据以表征电池的热行为
US20210209270A1 (en) Distributed tensor network contraction scheme with splitting based on dynamic ordering
US20190347381A1 (en) Techniques for generating graph-based representations of complex mechanical assemblies
Gastaldi et al. Jacobian projection reduced-order models for dynamic systems with contact nonlinearities
JP2019046038A (ja) 評価関数変換装置及びプログラム
RU2018121964A (ru) Оптимизация взаимодействий пользователя при сегментации
Suman et al. Investigation and implementation of model order reduction technique for large scale dynamical systems
KR101727022B1 (ko) 전산유체역학에서 최적 2차 변수 계산 경로 제안 방법 및 장치
JP7497516B2 (ja) 等式制約を代数モデルに課すための射影方法
EP3340088A1 (en) Product design validation by automatic determination of simulation analysis types based on design parameters
CN117201308A (zh) 网络资源分配方法、系统、存储介质及电子设备
JP7455773B2 (ja) 求解装置およびプログラム
JP7301801B2 (ja) ハイパーパラメータチューニング方法、装置及びプログラム
JP6067596B2 (ja) ペアリング演算装置、マルチペアリング演算装置、プログラム
Kuna et al. Finite element method
JP6660248B2 (ja) 目的変数予測装置、方法及びプログラム
Tolla A survey of some linear programming methods
JP6604060B2 (ja) 情報処理装置、情報処理方法及びプログラム
Verriest Inversion of state-dependent delay
Hao et al. A stochastic homotopy tracking algorithm for parametric systems of nonlinear equations
KR102298706B1 (ko) 메모리 사용을 절감할 수 있는 유체해석 장치, 방법 및 컴퓨터 프로그램
Flores et al. Numerical methods in multibody system dynamics

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant