앞선 글에서는 디자인 탐색이 왜 필요한지, 그리고 평행좌표(Parallel Coordinates) 차트가 다변수 설계 의사결정에 왜 유용한지 살펴봤다.
이번 글에서는 Valentis의 Design Explorer 기능을 통해, 해석 결과 데이터에서 제약조건과 목적함수를 어떻게 동시에 정의하고, 그 결과를 어떻게 인터랙티브하게 탐색하는지 살펴본다.
설명을 구체화하기 위해 다음 데모 사례를 기준으로 진행한다.
데모 — 전자장치 열유동해석 (30 시나리오)
- 입력 변수 3개: 팬 설치 위치(m), PCB 간격(m), 히트싱크 핀 높이(m)
- 출력 변수 8개: 내부 평균 온도, 팬 입구 유량, 칩·PCB별 최대 온도 등
- 제약조건 2개: 내부 평균 온도 ≤ 17 °C, 메인 칩 최대 온도 ≤ 35 °C
디자인 탐색 기능이 하는 일
Valentis 디자인 탐색은 시나리오 해석 결과, 즉 입력 변수와 출력 결과를 불러와 다음 작업을 한 화면에서 수행한다.
- 제약조건(Constraint) 필터링 — 조건을 만족하는 케이스만 남긴다
- 목적함수(Objective) 점수화 — 0~1로 정규화한 가중 합산 점수로 후보를 정렬한다
- Top 3 카드 표시 — 1·2·3순위 설계안의 입력·출력을 카드 형태로 비교한다
- 평행좌표 차트 — 입력과 출력을 한 화면에서 동시에 시각화한다
- 드래그 필터링 — 차트 축의 범위를 조정하면 결과가 즉시 테이블에 반영된다
엑셀에서 다중 필터를 적용하고, 색을 칠하고, 가중합 공식을 직접 작성하던 작업이 카드 입력과 차트 인터랙션으로 대체된다.
1단계: 데이터 불러오기
Design Explorer를 시작하는 방법은 크게 세 가지다. 일반적으로 권장되는 흐름은 첫 번째다.
원클릭 자동 분석에서 이어받기 — 권장 흐름
가장 빠른 경로는 Data Transposition 탭의 원클릭 자동 분석 기능을 그대로 활용하는 것이다.
Data Transposition은 해석 결과를 입력·출력 구조로 정리해주는 모듈이다. 이 좌측 패널에는 원클릭 자동 분석을 위한 제약조건 빌더가 함께 포함되어 있다.
여기서 제약조건과 목적함수를 정의한 뒤 Run 버튼을 누르면, 백엔드에서 다음 흐름이 한 번에 실행된다.
- 민감도 분석
- 디자인 탐색 — 데이터와 제약조건이 전달되고 Find Design까지 자동 수행
- 메타모델 학습
- 적응형 샘플링
- 신뢰성 해석 (Monte Carlo)
- 파레토 최적화
즉, 자동 분석이 끝난 뒤 사이드바에서 Design Explorer 탭으로 이동하면 데이터, 제약조건, 결과(Top 3·테이블·평행좌표 차트)가 이미 반영되어 있다. 별도로 데이터를 다시 불러올 필요가 없다.
데모 케이스에서는 좌측 패널에 두 개의 출력 조건을 추가한 뒤 Run을 한 번 눌렀고, Design Explorer 탭에서 곧바로 결과를 확인할 수 있었다.
Use DT Data — 디자인 탐색 탭에서 직접 불러오기
Data Transposition으로 데이터만 정리해 두고 자동 분석은 실행하지 않은 경우, Design Explorer 탭의 Use DT Data 버튼으로 입력·출력을 자동 연결할 수 있다.
DT에서 부여된 입력/출력 마커를 그대로 이어받기 때문에 별도의 매핑 작업이 필요 없다.
데모 데이터에서는 “DT: 입력 3개 / DT: 출력 8개”로 표시된다.
CSV로 직접 열기
DT를 거치지 않고 입력 CSV와 출력 CSV를 각각 불러올 수도 있다.
- INPUT — 케이스별 입력 파라미터 값
- OUTPUT — 케이스별 해석 결과 값
각 파일은 첫 행에 변수명, 둘째 행부터 케이스별 데이터가 이어지는 구조다. 한글이 포함된 CSV도 인코딩을 자동으로 감지한다.
이전에 저장한 Analysis Intelligence 세션(.json)을 Load Session으로 불러오면 시나리오, DT, 민감도, 디자인 탐색 데이터가 함께 복원된다.
2단계: 제약조건과 목적함수 정의
자동 분석 흐름이든 단독 실행 흐름이든, 조건을 정의하는 방식은 동일하다. 데이터를 불러오면 Add Constraint / Objective 카드가 활성화된다.
이 카드 하나에서 제약조건과 목적함수를 모두 정의한다. 두 항목을 하나의 폼으로 통합한 이유는 단순하다. 둘 다 “특정 변수에 대한 조건”이라는 공통 구조를 가지기 때문이다.
차이는 가중치(Weight) 값에서 결정된다.
Type / Parameter / Condition
먼저 어떤 변수를 대상으로 조건을 정의할지 선택한다.
- Type — Input 또는 Output
- Parameter — 해당 그룹의 변수 목록에서 선택
- Condition —
<(minimize),>(maximize),=(target)
Value와 Weight — 제약조건과 목적함수의 분기점
핵심은 Weight 값이다.
- Weight = 0 → 제약조건(CON) Value를 반드시 입력하며, 이 값이 필터 기준이 된다.
- Weight > 0 → 목적함수(OBJ) 가중치가 점수 계산에 사용된다. Value가 함께 입력되어 있으면 필터 임계값으로도 작동한다.
데모 케이스에서 정의한 두 조건은 다음과 같다.
| Type | Parameter | Condition | Value | Weight | 의미 |
|---|---|---|---|---|---|
| Output | GG Av Temperature (Fluid) | < | 17 | 1 | 내부 평균 온도를 17 °C 미만에서 최소화 |
| Output | VG Main Chip Max Temp | < | 35 | 1 | 메인 칩 최대 온도를 35 °C 미만에서 최소화 |
두 항목 모두 Weight를 1로 설정해 OBJ로 등록했다. Value 17과 35는 임계값으로 작동해 이를 초과하는 케이스는 제외되고, Weight 1은 두 변수를 동시에 최소화하기 위한 정규화 점수 계산에 사용된다.
만약 “17 °C 미만이기만 하면 모두 동일하게 평가”하고 싶다면 Weight를 0으로 두면 된다. 반대로 데모처럼 “조건은 만족하면서 가능한 한 낮게”를 원한다면 Weight에 양수를 부여한다.
추가된 조건은 Constraints & Objectives 카드에 누적되며, CON은 노랑, OBJ는 파랑 배지로 구분된다. ✏ 버튼으로 인라인 수정, ✕ 버튼으로 삭제할 수 있다.
3단계: 최적 설계안 찾기
Find Design 버튼을 누르면 다음 절차가 자동으로 실행된다.
- 모든 케이스에 대해 조건을 검사하고 실현 가능(Feasible) 케이스만 추린다.
- 각 목적함수를 해당 변수의 min/max 기준으로 0~1 범위로 정규화한다.
- 방향(min/max/target)에 따라 점수를 계산한다.
- 가중합으로 케이스별 종합 점수를 산출하고, 점수가 낮은 순서로 정렬한다.
정규화 기반이기 때문에 온도(°C), 유량(m³/s), 무게(kg)처럼 단위와 크기가 다른 목표도 같은 척도로 비교할 수 있다.
원클릭 자동 분석 흐름에서는 이 단계가 자동으로 수행되어, Design Explorer 탭으로 이동한 순간 이미 결과가 표시되어 있다.
4단계: 결과 시각화
데모 케이스의 결과 화면을 따라가보면 다음과 같다.
우측에 Top 3 카드와 실현 가능 케이스 테이블이 한 화면에 정리된다.
Summary Bar
전체 30개 설계 중 11개 실현 가능 · 목적함수 기준 정렬
30개 시나리오 중 두 온도 조건을 모두 통과한 케이스가 11개로 좁혀졌고, 이 11개가 가중합 점수를 기준으로 정렬된 상태다.
Top 3 카드
🥇🥈🥉 메달과 함께 1~3순위 설계안의 입력·출력 전체가 카드 형태로 표시된다.
데모에서 상위 3개의 핵심 수치를 정리하면 다음과 같다.
| Rank | Case | Score | Fan 위치 |
PCB 간격 |
핀 높이 | 내부 평균 |
메인 칩 | 작은 칩 | 작은 PCB | 메인 PCB |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 4 | 0.0000 | 0.0406 | 0.0241 | 0.0145 | 15.348 | 30.696 | 30.025 | 24.883 | 38 |
| 2 | 30 | 0.0413 | 0.0436 | 0.0222 | 0.0133 | 15.401 | 31.156 | 30.184 | 24.622 | 38 |
| 3 | 26 | 0.0683 | 0.0513 | 0.0270 | 0.0149 | 15.401 | 31.564 | 29.838 | 24.898 | 38 |
(온도 단위 °C, 입력 단위 m)
가중합 점수 기준으로 1순위가 된 Case 4는 “내부 평균 온도”와 “메인 칩 최대 온도”를 동시에 가장 낮게 만든 설계안이다. 두 목적함수만 보면 명확한 1순위다.
하지만 표를 조금 더 자세히 보면 다른 해석도 가능하다.
- 작은 칩 최대 온도가 가장 낮은 후보는 Rank 3 — Case 26, 29.838 °C
- 작은 PCB 최대 온도가 가장 낮은 후보는 Rank 2 — Case 30, 24.622 °C
- 메인 PCB 최대 온도는 세 케이스 모두 38 °C로 동일 — 이 출력은 현재 입력 변수보다 다른 인자의 영향을 더 크게 받고 있을 가능성이 있다
즉, “어떤 부품을 가장 보호해야 하는가”에 따라 최적 후보는 달라질 수 있다. 메인 칩이 가장 중요한 한계 부품이라면 Rank 1이 적절하지만, 작은 칩이 열적으로 더 취약하다면 Rank 3도 다시 검토할 가치가 있다.
이것이 Top 3 카드가 의도하는 핵심이다. 점수 1등만 보는 것이 아니라, 후보들의 입력·출력 패턴을 함께 비교하는 것이다. 처음 정의한 두 개의 목적함수 외에도 실제 의사결정에서는 다른 부품 온도, 제작성, 공차 같은 기준이 함께 고려된다.
Feasible Designs 테이블
실현 가능한 11개 케이스 전체가 Rank, Case No., Score와 함께 표로 정리된다. 입력 컬럼은 파랑 헤더, 출력 컬럼은 녹색 헤더로 구분된다.
실현 가능 케이스가 많을 경우 화면에는 일부만 표시하고, 전체 결과는 CSV로 내보낼 수 있다.
Parallel Coordinates 차트
이 화면의 핵심은 평행좌표 차트다.
각 케이스는 Rank 컬러바(파랑→빨강)를 따라 색이 입혀진 꺾은선으로 표현된다.
입력 변수 3개와 출력 변수 8개가 11개의 수직 축으로 나란히 배치되고, 11개의 실현 가능 케이스는 각 축을 가로지르는 하나의 꺾은선으로 표현된다.
- 입력 변수: Fan 위치, PCB 간격, 핀 높이
- 출력 변수: GG 내부 평균 온도, Fan 입구 유량, SG 출구 유량, SG 출구 Bulk 온도, 작은 칩 최대 온도, 메인 칩 최대 온도, 작은 PCB 최대 온도, 메인 PCB 최대 온도
선의 색은 Rank를 따라 파랑(상위) → 녹색 → 주황 → 빨강(하위)으로 그라데이션되며, 오른쪽에는 Rank 컬러바가 함께 표시된다.
데모 차트에서 즉시 읽히는 패턴은 다음과 같다.
- 메인 PCB 최대 온도 축(맨 오른쪽) 모든 선이 38 °C 근처에 모여 있다. 이 부품은 현재 설계 범위에서 입력 변수 변화에 크게 반응하지 않는다는 뜻이다.
- 메인 칩 최대 온도 축 파랑(상위) 선은 30 °C대 초반에, 빨강(하위) 선은 32~34 °C 영역에 분포한다. 메인 칩 온도가 이번 가중합 점수에 큰 영향을 주고 있음을 시각적으로 확인할 수 있다.
- Fan 위치 축 파랑 선들은 비교적 좁은 범위(0.04~0.05 m)에 모이는 반면, 빨강 선들은 0.06 m 이상까지 퍼져 있다. Fan을 너무 멀리 배치한 설계가 하위 순위로 밀리는 경향이 보인다.
이런 시각적 단서는 단순 정렬 표에서는 잘 드러나지 않는다. 평행좌표 위에서 색의 분포만 보더라도 “어떤 입력이 점수를 끌어내리는가”의 윤곽을 빠르게 파악할 수 있다.
5단계: 인터랙티브 탐색
결과를 확인하는 데서 끝나지 않는다. 차트 위에서 직접 조건을 좁히고, 그 영향이 다른 변수에 어떻게 나타나는지 즉시 확인할 수 있다.
차트 축 드래그로 범위 필터링
평행좌표 차트의 각 축을 드래그하면 해당 변수에 범위 필터가 적용된다.
예를 들어 데모에서 “메인 칩 최대 온도” 축을 30~31 °C 구간으로 좁히면, 범위 밖의 선은 회색으로 흐려지고 범위 안의 선만 강조된다. 동시에 아래 Feasible Designs 테이블의 해당 케이스도 옅은 파란색 배경으로 하이라이트된다.
이 방식으로 다음과 같은 질문에 즉시 답할 수 있다.
“메인 칩 온도를 31 °C 이하로 더 좁히면 Fan 위치는 어떤 범위에 모이는가?” “PCB 간격을 0.022~0.025 m로 제한했을 때 작은 칩 온도는 어디까지 내려가는가?” “내부 평균 온도를 15.4 °C 이하로 제한했을 때, 메인 PCB 온도도 38 °C 아래로 떨어지는 케이스가 있는가?”
처음 정의한 목적함수 외의 변수도 사후 조건으로 추가해볼 수 있다는 점이 평행좌표 드래그 필터의 장점이다.
여러 축에 동시에 범위를 지정하면 AND 조건으로 동작한다. 한 축에서 두 구간을 지정하면 OR 조건으로 탐색할 수도 있다.
테이블 행 클릭으로 케이스 강조
반대로 테이블에서 행을 클릭하면 차트의 해당 케이스 선만 빨강으로 강조되고, 나머지 선은 거의 투명하게 처리된다.
예를 들어 Rank 1(Case 4)을 클릭하면 그 한 줄만 부각되어, 다른 10개 케이스와 입력·출력 차이를 시각적으로 비교할 수 있다.
6단계: 보고서 내보내기
분석이 끝나면 Export 카드에서 두 가지 형식으로 결과를 저장할 수 있다.
HTML Report
브라우저에서 바로 인쇄 가능한 A4 가로 보고서가 생성된다. 보고서에는 다음 내용이 자동으로 정리된다.
- Analysis Summary — 제약조건, 목적함수 가중치 분포(%), Feasibility 비율과 해석 코멘트, 1순위 설계안 요약
- Constraints & Objectives — 정의된 모든 조건의 역할, 타입, 파라미터, 조건, 값, 가중치
- Top 3 Designs — 1·2·3순위 카드를 입력·출력으로 분리해 표시
- All Feasible Designs — 실현 가능 케이스 전체 테이블
Feasibility 비율에 따라 코멘트도 자동 생성된다. 데모처럼 30개 중 11개가 통과한 경우(36.7%)에는 “일부 케이스만 통과 — 제약 완화 또는 시나리오 보강 검토”와 같은 코멘트가 함께 표시된다.
의사결정자가 보고서만 보더라도 현재 설계 범위가 적절한지 판단할 수 있도록 구성한 부분이다.
상단의 PDF 저장 버튼을 누르면 A4 가로 형식으로 바로 출력할 수 있다.
Results CSV
실현 가능 케이스 전체를 Rank, Case No., Score, 입력 컬럼, 출력 컬럼 순으로 CSV로 내보낸다. 엑셀이나 후속 분석 도구에서 추가 가공이 필요할 때 활용할 수 있다.
디자인 탐색 이후의 흐름
원클릭 자동 분석을 사용했다면 디자인 탐색 결과뿐 아니라 메타모델, 신뢰성, 파레토 결과도 함께 준비되어 있다. 각 탭으로 이동하면 다음 검토를 이어갈 수 있다.
- 메타모델 — 30개의 해석 결과로 설계 공간 전체를 예측하는 모델(Kriging 등)을 구성하고, 1순위 설계 주변에 더 좋은 후보가 있는지 탐색한다.
- 신뢰성 해석 — 1순위 설계가 입력 변동에 얼마나 둔감한지 Monte Carlo로 검증한다.
- 파레토 최적화 — 내부 평균 온도와 메인 칩 온도를 가중합이 아닌 다목적 기준으로 비교한다.
세션은 통합 JSON 파일 하나로 저장되기 때문에, 같은 입력-출력 데이터를 기반으로 민감도부터 파레토까지 끊김 없이 작업을 이어갈 수 있다.
마무리
좋은 설계 결정은 한 줄의 숫자에서 나오지 않는다.
조건을 만족하는 후보들 사이에 어떤 트레이드오프가 존재하는지, 제약을 조금 완화하면 어떤 후보가 추가되는지, 1순위와 2순위는 어떤 점에서 다른지를 함께 봐야 한다.
Valentis 디자인 탐색은 이 과정을 카드 입력과 차트 드래그만으로 수행할 수 있도록 설계되어 있다. 원클릭 자동 분석을 활용하면 데이터 정리, 제약 정의, 디자인 탐색, 메타모델, 신뢰성, 파레토까지 한 번의 Run으로 이어진다.
엑셀 필터, 색칠, 정렬, 가중합 공식으로 흩어져 있던 작업이 하나의 화면과 하나의 보고서로 정리된다.
“어떤 설계안이 조건을 만족하는가?” “그중 어떤 것이 가장 좋은가?” “다른 후보는 무엇이 다른가?”
이 세 질문에 시각적으로 답하는 것이 디자인 탐색의 가치다.
키워드: 디자인 탐색 도구, Design Explorer, 설계 시각화, 다변수 해석, 평행좌표 차트, Parallel Coordinates, 제약조건 필터링, 목적함수 가중치, 실현 가능 영역, CAE 후처리, 트레이드오프 분석, 전자장치 열유동해석, Valentis Design Explorer