본 프로젝트는 포항공과대학교 딥러닝 수업의 일환으로 수행되었습니다. PINN(Physics-Informed Neural Network)을 활용한 첫 프로젝트였던 만큼, 프로젝트를 성공적으로 마무리할 수 있도록 함께 고민하고 협력해 준 팀원들에게 깊은 감사의 마음을 전합니다.
1. 프로젝트 개요
- 프로젝트 기간: 25.04 ~ 25.09
- 목표: 초기 조건(초기 전압)이 서로 다른 배터리들의 SoC(State of Charge)를 추정한다. 특히 학습하지 않은 시간 구간(외삽 구간)에서 정확도를 개선한다.
- 사용 기술: LSTM, Hyper-LR-PINN(저랭크 PINN + 하이퍼네트워크), 1RC 등가회로 모델
- 개발 환경: A100
- 데이터 개요: 초기 전압 조건이 서로 다른 배터리 19개. 입력은 시간 t, 전류 I(t), 단자전압 Vₜ(t)다. 데이터셋 출처 배터리 시뮬레이션 데이터.
2. 문제 정의
SoC는 배터리의 현재 충전 상태를 나타내는 지표다. 과충전·과방전 방지, 수명 유지, 에너지 관리에 쓰인다.
해결하려는 문제는 SoC 추정 자체다. 기존 접근은 크게 두 갈래였다.
모델 기반 (EKF) — 데이터가 적어도 동작하고 물리적 통찰을 반영한다. 그러나 모델 정확도에 의존하고, 초기값에 민감하며, 노화·일반화에 약하다. 실제로 초기 SoC를 잘못 주거나 모델이 틀리면 추정이 발산했다.
데이터 기반 (LSTM) — 다양한 패턴을 학습하고 노화에 적응한다. 그러나 대량의 학습 데이터가 필요하고, 블랙박스라 물리적 통찰이 없다. 데이터가 적은 경우(1,000 포인트) 외삽 구간 성능이 떨어져 RMSE가 0.0415에 그쳤다.
핵심 질문: 적은 데이터와 학습하지 않은 구간에서도 정확하면서 물리적으로 타당한 SoC 추정을 할 수 있는가.
3. 왜 PINN(Hyper-LR-PINN)을 사용했는가
데이터 기반 LSTM은 물리 통찰이 없어 외삽에 약했다. 모델 기반 EKF는 모델과 초기값에 의존했다.
두 접근의 장점을 합치기 위해 LSTM에 물리 정보를 결합한 Hyper-LR-PINN을 선택했다. 기대한 효과는 다음 네 가지다.
- Physical Insight: 전기화학 거동을 모델 물리식으로 통합
- Data Adaptability: 다양한 패턴 학습
- Data Efficiency: 물리 제약으로 데이터 요구량 감소
- Generalization Enhancement: 미학습 조건에서 성능 향상
요약하면, 적은 데이터와 미학습 조건에서의 일반화를 노렸다.
4. 데이터와 문제 설정
- 사용 데이터: 초기 전압 조건이 다른 배터리 19개. 데이터셋 출처는 [추가 정보 필요].
- 입력 변수: t(시간), I(t)(전류), Vₜ(t)(단자전압)
- 출력 변수: SoC(t). 중간 단계에서 분극전압 V̂₁(t; SoC₀)를 출력한다.
- 사전 파라미터: U_oc(SoC), R₀(SoC), R₁(SoC), C₁(SoC). 오프라인 배터리 파라미터 추정으로 사전에 구한다.
- 학습 데이터 구성: 1,000개 또는 10,000개 시간 포인트로 학습하고, 학습에 쓰지 않은 시간 포인트(테스트)로 평가한다.
5. 모델 설계
전체는 2단계 예측과 3개 손실로 구성된다.

[그림: PINN 모델 구조]
Step 1 — LSTM V(t), I(t), Δt를 입력해 SoC를 1차 추정한다. V(t), I(t), Δt → LSTM → SôC(t)
Step 2 — Hyper-LR-PINN SoC₀와 (t, SôC(t))를 입력해 분극전압 V̂₁(t; SoC₀)를 예측한다. 이어서 단자전압을 다음과 같이 재구성한다.
V̂ₜ(t) = U_oc(SoC₀) − I(t)·R₀(SoC₀) − V̂₁(t; SoC₀)
Physics Constraint (1RC 등가회로 ODE)
dV₁(t)/dt = −V₁(t) / (R₁C₁) + I(t) / C₁ = N(t, V₁), V₁(0) = 0
Vₜ(t) = U_oc − I(t)·R₀ − V₁(t)
(여기서 N[·]은 미분 연산자)
Loss Function 구성
| PINN loss | ‖ dV̂₁/dt − N(t, V̂₁) ‖₂² + ‖ V̂₁(0) − 0 ‖₂² | 분극전압이 등가회로 물리식과 초기 조건을 만족하도록 강제 |
| LSTM loss | ‖ SôC(t) − SoC(t) ‖₂² | 예측 SoC를 실제 SoC에 맞춤 |
| Regression loss | ‖ V̂ₜ(t) − Vₜ(t) ‖₂² | 재계산한 단자전압을 실측값에 맞춤 |
| Total | ℒ_Total = ℒ_PINN + ℒ_LSTM + ℒ_Reg | — |

Offline
- Offline Phase: 모든 조건에 대해 하이퍼네트워크와 LR-PINN 파라미터를 학습한다.
6. 학습 및 실험
하이퍼파라미터
| LSTM Hidden Dim | 94 | 94 | 94 | 94 |
| LSTM Layers | 4 | 4 | 4 | 4 |
| Hypernet Hidden Dim | — | 94 | — | 94 |
| Hypernet Layers | — | 4 | — | 4 |
| Iteration | 1,000 | 1,000 | 2,000 | 1,000 |
| Learning rate | 0.0013 | 0.0013 | 0.0013 | 0.0013 |
학습 과정에서 발생한 문제: LSTM 단독으로는 외삽 구간 예측이 저하되어 RMSE 0.0415로 목표 성능에 미달했다.
해결 방법: 손실에 (1) 분극전압이 등가회로 물리식과 초기 조건을 만족하게 하는 항, (2) 예측 SoC로 재계산한 단자전압을 실측값에 맞추는 항을 추가했다.
실험 조건: 1,000 포인트 / 10,000 포인트 학습 × Offline / Online 단계로 나눠 비교했다. 평가는 학습하지 않은 시간 포인트(테스트)로 수행했다.
7. 결과 분석

주요 성능 결과
| 구분조건 | MAE | MSE | |
| EKF (baseline) | — | 0.0127 | 0.0613 |
| LSTM | Offline, 1,000 pt | 0.0290 | 0.0415 |
| Ours | Offline, 1,000 pt | 0.0047 | 0.0189 |
| LSTM | Offline, 10,000 pt | 0.0039 | 0.0071 |
| Ours | Offline, 10,000 pt | 0.0024 | 0.0067 |
8. 시행착오
문제
LSTM 단독으로 외삽 구간 SoC를 예측하자 성능이 저하됐다. RMSE 0.0415로 목표 성능에 미달했다.
원인
데이터 기반 모델이 물리 법칙을 반영하지 못했다. 블랙박스 특성상 학습 구간을 벗어난 영역의 일반화가 약했다.
해결 방법
손실 함수에 두 항을 추가해 모델이 물리 법칙을 따르도록 설계했다. 하나는 분극전압이 등가회로 물리식과 초기 조건을 만족하게 하는 항이고, 다른 하나는 예측 SoC로 재계산한 단자전압을 실측값에 일치시키는 항이다.
배운 점
물리 제약을 추가하면 외삽 구간 성능 저하 문제를 개선할 수 있다. RMSE를 0.0189까지 낮춰 기존 LSTM 대비 약 54.5% 개선했다.
9. 프로젝트 회고
- 잘한 점: 물리 제약을 결합해 외삽·저데이터 조건에서 정확도를 개선했고, 학습 파라미터를 38% 줄였다. EKF와 단독 LSTM보다 낮은 MAE/RMSE를 달성했다.
- 아쉬운 점: 지배 미분방정식이 배터리 시스템을 완전히 설명한다고 가정했다. 실제 거동이 이 가정에서 벗어나면 일반화가 제한될 수 있다.
- 다시 수행한다면: 현재는 학습 전에 오프라인으로 파라미터(R₀, R₁, C)를 튜닝한다. 이를 학습과 통합한 온라인 파라미터 추정으로 바꾸고 싶다.
- 다음 단계 개선: 2RC 이상의 등가회로로 확장하면 현실성이 높아진다. 다만 고차 시스템은 손실 항이 늘어나 균형 조정이 필요하다.
'스마트팩토리 프로젝트' 카테고리의 다른 글
| [연구실 과제] VLA 성능 향상을 위한 데이터 수집 (1) | 2026.06.29 |
|---|---|
| [연구실 과제] 조립 공정 통합 관제 시스템 개발 (0) | 2026.06.29 |
| [연구실 과제] 조립 불량 검사 기반 제품 적재 공정 자동화 (0) | 2026.06.29 |
| [연구실 과제] 3D Pick & Place (0) | 2026.06.29 |
| [산학과제] 도메인 분리 표현 학습으로 내부 균열 탐지 모델 성능 개선 (0) | 2026.06.24 |