경사하강법을 이용한 배터리 전압곡선 피팅3

오주환·2023년 6월 12일
1

지난번 포스트에서는 다항전압변동모델을 실제 배터리 휴지전압측정값에다 피팅해보고, 또 400초 피팅결과와 1400초 피팅결과를 비교하였다.

하지만 다항전압변동모델은 단순히 relaxation model에서 피팅만을 위한 수식일 뿐 실제 배터리 등가회로 모델을 반영하지 못한다는 치명적인 결함이 있다.
이러한 생각에 1, 2차 테브난 등가회로 모델의 전압변동식aet/τ+dae^{t/\tau}+d을 포기하지 못하던 중 이에 관한 좋은 논문을 발견했다.
참고논문

핵심 원리는 다음 수식과 같은데, 배터리가 휴지기에 들어가면서 생기는 화학적인 변화도 고려하여 시정수(τ\tau)가 시간에 비례하여 증감한다는 것이다.

이번 포스트에서는 이를 이용하여 실제로 피팅해보고, 또 300초 피팅결과와 1400초 피팅결과 ocv오차가 어느정도 생기는 지 보겠다.
또 추가적으로 경사하강 알고리즘에서 기울기손실(vanishing gradient)문제가 심해서 학습효과가 떨어짐을 발견하여 최적화 알고리즘으로 모멘텀최적화 기법을 사용하였다. (다음 포스트에서는 위 논문에서처럼 유전 알고리즘을 통해 구현해봐야겠다)
또 초기 10초 배터리 휴지전압은 비선형적인 현상이 크므로 빼고 학습을 진행했다.

학습률0.00001, 모멘텀(r)=0.99, 학습횟수: 100000
위 그림은 1400초 전압휴지데이터를 피팅한 것을 바탕으로 ocv를 예측한 것이고 그 아래가 400초 피팅 결과을 바탕으로 1400초전압과 ocv를 예측한 결과이다.


1400초 대비 400초 ocv는 0.00396057459%의 오차로 상당히 정확했다
근데 사실 아직 초기값 설정(하이퍼 파라미터) 문제는 해결하지 못했다.. 대충 맞아보이는걸로 찍다가 되는 값으로 설정하고 학습시키는 중..
떄문에 local minimum 문제를 해결하지 못하고 있다.

profile
Quantami

0개의 댓글