SCIENCE LIFE

코딩으로 체험하는 물리 : 세종대 SW중심 교육사례

페이지 정보

본문

상상력과 창의력이 쑥쑥!

어려운 물리 현상, 코딩으로 해결


물리학은 자연에서 일어나는 현상을 논리적으로 이해하고, 이 현상을 설명하는 보편적인 법칙을 찾는 기초과학의 한 분야이다. 많은 사람이 물리는 재미없고 어려운 것으로 인식하고 있으며, 방정식 풀이나 수학적 계산에 능숙해야만 물리를 잘 할 수 있는 것으로 오해하고 있다. 실제 물리 문제를 해결하거나 혹은 물리 현상을 재현할 때 어떻게 적용해야 하는지를 어려워하는 것이다. 이러한 점에 착안해서‘일반물리 및 시뮬레이션’ 과목을 통해 컴퓨터 코딩을 활용해 물리 현상을 재현함으로써 물리 법칙에 대한 보다 깊은 이해를 돕는 과정을 구현해 보았다.



 과학기술정보통신부가 2015년부터 추진 한‘SW중심대학 지원사업’을 통해, 대한민국 대학의 SW교육은 크게 변화하고 있다. 2020년 현재 기준 SW중심대학으로 선정된 40개의 대학교는 대학교육을 SW중심으로 혁신함으로써 4차 산업혁명을 대비하는 SW전문인력 및 융합인재를 양성하고, 진정한 SW가치 확산을 실현하는 데 이바지하고 있다. 세종대학교는 2015년에 SW중심대학에 1기로 선정되었으며, 선정 이전에도 수시 합격자를 대상으로 입학전 SW교육과정인 예비대학을 운영하는 등, 비전공자 대상의 SW기초코딩 교육을 선도적으로 시작했다.



SW중심사회 선도하는,

글로벌 감각 갖춘 인재 양성

세종대 SW 인재 양성 교육 프로그램은 ‘SW중심대학 지원사업’의 기본방향을 바탕으로 세종대학교만의 특징과 장점을 살 려서 운영하고 있다. 세종대학교는 4차 산업혁명 시대를 대비할 수 있도록 SW전공 교육, SW융합교육 및 비전공자 SW교육을 혁신하여 글로벌 감각을 갖춘 SW인재를 양성하는 것을 목표로 한다. 이를 위해, 산업체의 최신 수요를 반영한 교육 체계를 개선하고 문제 해결형 SW 교과과정을 개발 하여, 이를 통한 수요자 중심의 SW전문 인력 양성 체계를 구축하였다. 특히, SW관련 학과의 역량을 통합하고 SW융합 분야와의 긴밀한 협조를 도모하기 위해 2017년 국내 최초로 신설한 SW융합 단과대학 내에 4개의 SW전공학과, 4개의 SW융합전공, 3개의 SW연계과정을 운영 중이다. 또한, 향후 모든 단과대학에 융합/연계 전공을 단계적으로 확대할 계획이다.

 모든 단과대학과의 융합을 고려한 SW융 합대학을 신설한 점과, 이를 중심으로 SW중심사회를 선도하는 경쟁력 있는 SW인재 양성을 추진한다는 점이 다른 대학과 구별되는 세종대학교의 특징이다. 세종대학교는 4차 산업형 SW인재 양성을 위한 방안으로 SW전공 교육, SW기초 교육, 산학협력을 포함한 혁신적인 SW교육 체계를 지원하는 10개 항목을 설정하고, 이 를 기반으로 SW교육 사업을 그림 1과 같이 추진하고 있다.

 그림 1에서 볼 수 있는 것처럼 각 항목은 독립적으로 달성되는 목표라기보다는, SW교육 효과의 최대 시너지가 발생하도 록 유기적으로 추진되어야 하는 상호 연결된 구성 요소이다. 이러한 추진 체계에 따라 SW중심으로 개편한 교육과정 하나를 소개하고자 한다.


<그림1> 세종대학교의 SW교육 추진 체계



 SW중심대학 이전의 세종대학교 소프트웨어학과는‘ 일반물 리 및 실험’과목을 교양과정으로 수강하여야 했다. 이 과목은 물리학 이론을 학습하고 실제 기구를 사용해 실험하는 것으로 진행됐다. 하지만 필자는 기구를 사용하는 방식이 아닌 컴퓨터를 활용하는 방식을 고민하였다. 그 결과, 물리 현상을 코딩으로 재현하는 과목으로 다시 설계하여 2017년 1학기부터 ‘일반물리 및 시뮬레이션’이라는 과목으로 개설하여 운영 중이다.


컴퓨터 코딩 통해 물리 현상을 시뮬레이션하다

 물리학은 자연에서 일어나는 현상을 논리적으로 이해하고, 이 현상을 설명하는 보편적인 법칙을 찾는 기초과학의 한 분야이다. 물리학에서 지금까지 발견한 물리 법칙들은 짧은 문장과 단순한 수학 방정식으로 표현될 수 있다. 이러한 이유로 다른 학문과 다르게 암기의 고 통이 없으며, 이해와 통찰의 학문으로 자리매김하고 있다. 하지만 많은 사람이 물리는 재미 없고 어려운 것으로 인식하고 있으며, 방정식 풀이나 수학적 계산에 능숙해야만 물리를 잘 할 수 있는 것으로 오해하고 있다.

 필자도 학교에서 학생들이 물리 법칙이나 원리는 어렴풋이 이해하면서도 물리 문제를 정확히 풀지 못하거나 물리적인 원리를 자신있게 설명하지 못하는 경우를 많이 경험했다. 이런 학생들이 물리 법칙과 그에 따른 방정식을 모르는 것은 결코 아니다. 다만, 이를 실제 물리 문제를 해결하거나 혹은 물리 현상을 재현할 때 어떻게 적용해야 하는지를 어려워하는 것이다. 이러한 점에 착안해서 ‘일반물리 및 시뮬레이션 ’과목은 물리 계산만을 컴퓨터에 맡기는 방식으로 설계된 것이 아니라 이와 더불어 컴퓨터 코딩을 활용해 물리 현상을 재현함으로써 물리 법칙에 대한 보다 깊은 이해를 돕는다.

 코딩을 통해 물리 현상을 시뮬레이션한다는 것은 반복적이고 지루한 계산을 컴퓨터에 맡기는 것이기도 하지만 코딩 자체가 물리학적 기본 원리의 이해에 도움을 주기도 한다. 공이 자유 낙하하는 경우만 보더라도 중력에 의해 공의 속도가 시간에 따라 바뀌고, 또 속도에 따라 위치가 바뀌는 것으로 공의 운동 자체가 시간에 따른 반복이다. 즉, 반복문 구조를 코딩하면서 자연스럽게 물체 운동의 기본 원리를 습득할 수 있는 것이다. 공의 자유낙하와 같이 단순한 움직임뿐만 아니라 자연에서 일어나는 일반적인 물리 현상도 수학 방정식과 논리적인 짧은 문장으로 표현될 수 있다는 것은 매우 놀라운 것이다. 갈릴레오는“ 자연이라는 위대한 책은 그 것을 쓴 언어를 알고 있는 사람만이 읽을 수 있다. 그리고 그 언어는 바로 수학이다.”라 고까지표현했을정도로자연 그 자체가 수학을 바탕으로 논리적으로 구성된 것으로 생각했음을 알 수 있다. 또한 “이런 언어, 즉 수학이 없다면 어두운 미로를 방황하는 것 과 같다.”라고 덧붙이기도 했다. 갈릴레오 는 물리 세계를 정확히 이해하려면 수학적 사고를 바탕으로 논리적으로 기술해야 한다고 주장한 것이다. 이는 물리 현상을 논리적인 구조로 이루어진 수학의 언어, 즉 프로 그래밍으로 재현할 수 있음을 의미한다. ‘일반물리 및 시뮬레이션’ 과목의 수업 진행 순서는 전통적인 방식과 크게 다르지 않다. 물리학의 주요 개념을 먼저 학습한 후, 물리 현상에 대해 실험을 수행한다. 다 만, 실제 기구를 이용한 실험이 아닌 컴퓨터 코딩을 이용한 실험을 진행할 뿐이다. 수강생들은 이 방식을 통하여 물리적인 원리와 방정식을 보다 직관적으로 이해할 수 있고, 논리적인 코딩을 함으로써 계산적 사고와 반복적 사고에 익숙해지게 된다. 그림 2는 이 과목에서 진행된 용수철 운동 시뮬레이션 실험의 예로 약 100줄의 짧은 코드로 두 개의 추가 달린 용수철의 복잡한 3차원 운동을 실시간으로 재현 할 수 있음을 보여준다.



 

<그림2> 2개의 추가 달린 용수철 운동 시뮬레이션




그림3 수강생들이 제작한 물리 기반 어플리케이션




물리 교육과정을 SW중심으로 개발, 다양한 교과과정 개발

 코딩을 통해 물리학적 원리를 체득한 수강생들은 더 나아가 물리 현상을 이용하여 게임 등 의 응용 어플리케이션을 제작하는 프로젝트도 수행하였다. 그림 3은 본 교과목을 수강한 학 생이 만든 어플리케이션들로 중력, 마찰력, 공기 저항력 등의 다양한 힘을 다루는 내용이 포 함되어 있다. 이 과목의 만족도를 측정하고 의견을 분석하기 위해 수강생 대상 설문조사를 실시하였다. 그 결과 73.8%(응답자 42명 중 31명)의 학생이 물리와 코딩을 학습하는데 효율 적이라고 응답하였다. 특히, 코딩을 통해 실제로 접하기 어려운 물리 현상을 시뮬레이션하고 제어할 수 있다는 것 흥미를 느끼는 것으로 나타났다. 다만, 코딩을 처음 접하는 학생은 시뮬레이션 환경 설정과 이에 따라 코딩 논리 구조를 설계하는 것에 어려움을 겪는 것으로 파악하였다. 이러한 결과를 참고하여 복잡한 코딩은 지양하고 흥미로운 시뮬레이션 예제를 추가한 온라인공개강좌,‘ 일반인을위한물리코딩’를개발하였고, 이를2018년부터K-MOOC1) 사 이트에 개설하였다. 또한, 2020년부터는 세종대학교 수시합격자를 위한 예비대학 과정으 로도 제공하고 있다. 그림 1에서 제시된 SW교육 추진체계에 따라 정리하면, 먼저 물리 교육 과정을 SW중심으로 개발하여 SW전공교육을 혁신하였으며, 이후 일반인 누구나 무료로 수 강할 수 있도록 개방하여 SW 가치확산에 이바지하였다. 예비대학생을 위한 교과과정에도 편입시켜 SW기초 교육과정의 수준과 다양성도 향상시켰다. 세종대학교는 지금까지 살펴본 물리학 교과과정 외에도 전통적인 교과목들을 SW중심으로 개편하는 노력을 하고 있다. 또한, 4차산업혁명을 대비하는 SW융합인재 양성을 위한 인 공지능, 빅데이터, 가상/증강현실 관련 교과과정 개발에도 매진하고 있다.



송오영 교수는 서울대학교 전기공학부 를 졸업한 후, 동 대학원 전기컴퓨터공학 부에서 석사 및 박사학위를 받았다. 서울대 자동화연구소의 선임연구원으로 근무한 후, 현재 세종대학교 소프트웨어학과 교수로 재직 중이다. 연구 분야는 컴퓨터 그래픽스, 물리 기반 애니메이션, 인공지능, 기계 학습, 가상현실이며, 최근에는 물리 기반 애니 메이션과 기계 학습을 접목한 연구에 관심이 많다. 미국 어도비 연구소 및 영국 브래드포드대학교 등과 교류하고 있으며, 해외 공동 연구 프로젝트도 활발히 수행하고 있다.