33.jpg
55.jpg

KAIST부설 한국과학영재학교 온라인 과학매거진 코스모스

  • 블랙 페이스 북 아이콘
  • 블랙 인스 타 그램 아이콘

유체, 딥러닝과 만나다

9월 20 업데이트됨

여러분 들은 모두 알파고와 이세돌 9단의 바둑경기에 대해서 들어보셨을 것입니다. 2016년부터 지금까지 사회를 화끈하게 달구고 있는 소재인 인공지능은 현재 자연어 처리, 사물 인식, 다양한 문제 해결 , 최적화 등 많은 분야에서 사람들에게 도움을 주고 있습니다. 이런 인공지능이 물리 현상을 시뮬레이션을 하는데 에도 활용될 수 있다면 어떨까요? 이 글에서는 인공지능, 딥 러닝이 어떻게 물리 현상을 시뮬레이션 했고 이것이 추후 어떠한 방향을 발전해 나갈 수 있는지에 대해서 알아봅시다.


기존의 유체역학 시뮬레이션

현존하는 유체역학 시뮬레이션의 대부분은 밀레니엄 문제로 유명한 나비에-스토크스 방정식과 연속 방정식을 품으로서 계산됩니다. 아래 수식에서도 볼 수 있듯이 많은 편미분에 독립 변수만 해도 공간 좌표 3개, 시간 1개, 총 해서 4개나 됩니다. 이렇게 복잡한 방정식의 경우에는 방정식의 해를 해석적으로 구할 수는 없고 컴퓨터를 사용하여야만 풀 수 있게 됩니다. 컴퓨터로 푸는 과정을 간단히 설명하자면, 우리가 풀고자 하는 상황의 시공간(파이프 속의 유체 유동을 보고 싶다면 파이프를 여러개의 작은 정육면체 공간으로 나눈다)을 여러개로 쪼개고 (이산화 하고) 각각에 점마다 유체 입자의 속력과 압력을 근사적으로 계산하여야 구할 수 있습니다.

나비에-스토크스 방정식(x component만, 위)과 연속 방정식(아래)
유체 시뮬레이션의 한 예시, 색깔은 각 부분에서의 압력을 보여줌
난류 시뮬레이션
물 튀김 시뮬레이션

하지만, 위의 방법은 완벽하지도 효과적이지도 못합니다. 컴퓨터를 사용하여 미분방정식의 해를 구할 때에는 시공간을 작은 부분으로 나누어서 해를 구하기 때문에 근사해를 구하게 됩니다. 그래서 더욱 정확한 해를 구하기 위해서는 시공간을 더 작게 조각내어야 하고 해를 구하기 위한 시간도 기하급수적으로 늘어나게 됩니다. 또한, 위 모델은 물이 땅 바닥에 부딪혀 튀기는 모습이나 난류 등을 모델링 하기 위해서는 조금 더 복잡한 항들과 수식을 적용해 주어야 합니다. 심지어 물이 따른 곳과 충돌해 부서지는 모습 등을 시뮬레이션을 하기 위해서는 더 작게 조각내어야 합니다. 그럼 이런 어렵고 복잡하고 오래걸리는 유체 문제들을 최대한 빨리 풀고 해를 보기 위해서는 어떠한 방법을 사용해야 할지에 대해서 알아보도록 하겠습니다.


딥러닝과 유체 시뮬레이션

딥러닝은 우리가 정답을 알고 있는 데이터의 집합들로부터 어떠한 트렌드나 규칙을 찾아내어 정답을 모르는 데이터에 그 규칙을 적용시킴으로서 정답을 예측할 수 있는 컴퓨터 알고리즘의 일종이다. 이 설명은 어찌 보면 우리가 물리 법칙을 발견하는 과정과 비슷하다. 실험을 통해 얻은 많은 데이터를 바탕으로 모든 상황에서 적용될 수 있는 하나의 규칙, 이론을 개발해내어 자연세계에 대한 이해를 넓혀 나가는 것이 물리이기 때문이다.

딥러닝 알고리즘의 인풋 영상, 작은 부분의 물리 현상을 학습시킴으로서 큰 물리 현상을 구축해나간다.

그래서 딥러닝 알고리즘에 다음 사진과 같이 간단간단한 기본적인 물리 현상을 학습시킨다. 위의 사진을 보면 물 분자 2개가 충돌하여 튀기는 것부터, 다중 물 방울 충돌 까지 큰 물리 현상을 이루는 작은 부분들이 녹아 있음을 확인 할 수 있다. 여기서 학습시키는 현상들은 정밀한 유체역학 시뮬레이션의 의해 생성된 영상으로 현존하는 물리 법칙을 만족하도록 제작된 영상들이다. 이러한 영상을 학습시킨 딥러닝 알고리즘에 우리가 해석하고 싶은 상황의 모델을 넣고 알고리즘을 실행시키게 되면 위에서 살펴보았던 기존의 방법으로부터 구한 영상과 별 차이가 없음을 확인 할 수 있다. 고로, 물리 법칙을 만족시키면서 최대 10배 빠르게 양질의 영상을 얻어낼 수 있다는 것이다. 이는 굉장히 혁명적인 연구라고 할 수 있다. 이 기술이 어디에 쓰일 수 있는지는 다음 섹션에서 알아보고 잠시 두 시뮬레이션의 정확도를 비교하는 영상을 보도록 하자.



그래서 이 기술은 어디에 쓰일 수 있는데?

최근, 이렇게 빠른 시간 안에, 실시간으로 새로운 영상을 만들어 낼 수 있는 기술은 많은 주목을 받고 있다. 크게 두가지 상업적, 산업적 측면에 있어서라고 볼 수 있다. 메이플스토리, 심지어는 배틀그라운드등과 같은 고사양의 게임을 하더라도 바다나 강의 모습을 보면 좀 주변 환경과는 다르게 부자연스럽고 배경과 잘 어울리지 않음을 느낄 수 있을 것이다. 이 이유는 물리학적 법칙을 따르지 않는 그냥 임의의 파도 영상이나 물 표면이 움직이는 영상을 반복해서 재생하고 있기 때문이다. 이러한 부분에서 실시간 혹은, 실시간 근처에서 유체의 유동을 근사해 줄 수 있는 시뮬레이션을 사용해주게 되면 유저 입장에서 훨씬 더 실감나고 생생한 게임 환경을 만날 수 있다. 이는 실제로 넥슨과 같은 게임 업체에서 많은 연구가 진행 되오던 부분이다. 또한, 산업적 측면에서는 새로운 시제품을 만들기 위해 여러 가지 구조를 만들고 시뮬레이션으로 테스트 하던 과정이 10시간 걸렸다면 위 딥러닝을 사용하게 될 경우 1시간으로 단축할 수 있다는 점이다. 이와 같이 물리와 컴퓨터 공학의 만남은 단순히 물리, 공학에서만 쓰이는 것이 아닌 예술, 여가, 산업 모든 방면에서 영향을 끼칠 수 있다는 것이다.


<참고자료>

[1] Um, Kiwon, Xiangyu Hu, and Nils Thuerey. "Liquid splash modeling with neural networks." Computer Graphics Forum. Vol. 37. No. 8. 2018.

[2] Anderson, John David, and J. Wendt. Computational fluid dynamics. Vol. 206. New York: McGraw-Hill, 1995.

[3] Tompson, Jonathan, et al. "Accelerating eulerian fluid simulation with convolutional networks." Proceedings of the 34th International Conference on Machine Learning-Volume 70. JMLR. org, 2017.

[4] https://www.youtube.com/watch?v=OV0ivJB2lyI&t=25s


<이미지>

[1] Google Image

[2] Um, Kiwon, Xiangyu Hu, and Nils Thuerey. "Liquid splash modeling with neural networks." Computer Graphics Forum. Vol. 37. No. 8. 2018.


<동영상>

[1] https://youtu.be/so-dCZNTe4w


Physics 학생기자 홍석찬

2019년 겨울호

지식더하기

유체역학, 컴퓨터공학

조회 521회
Picture4.jpg
워터마크_white.png

KOSMOS는 KSA Online Science Magazine of Students의 약자로,

KAIST부설 한국과학영재학교 학생들이 만들어나가는 온라인 과학매거진 입니다.

​본 단체와 웹사이트는 KAIST부설 한국과학영재학교의 지원으로 운영되고 있습니다.

저작물의 무단 전재 및 배포시 저작권법 136조에 의거 최고 5년 이하의 징역 또는 5천만원 이하의 벌금에 처하거나 이를 병과할 수 있습니다. 

© 2018 한국과학영재학교 온라인 과학매거진 KOSMOS. ALL RIGHTS RESERVED. Created by 김동휘, 윤태준.

운영진 연락처