Ex) Article Title, Author, Keywords
Ex) Article Title, Author, Keywords
2021; 31(1): 109-130
Published online February 28, 2021 https://doi.org/10.29275/jerm.2021.02.31.1.109
Copyright © Korea Society of Education Studies in Mathematics.
강한별, 이미숙, 조한혁
The purpose of this study is to develop a curriculum of school mathematics and artificial intelligence regarding max-min problems. We also developed a coding environment for a designed curriculum that can be accessed and utilized at codingmath.org without any additional installation. The curriculum uses an evolution strategy-based gradient descent method founded on a school probability and statistics curriculum with an experiment using dice; this curriculum is designed to work when the function is not differentiable and is ultimately linked to a calculus-based gradient descent method. The coding environment, in which even middle school students can visualize the min-max problem of f(x, y), uses a three-dimensional function graph with minimal coding inputs and explores the gradient descent process using a two-dimensional Python animation. This study, which is an attempt to combine mathematical problem solving and computational thinking in the context of max-min problems, further discusses ideas regarding the ways to integrate AI and coding in mathematics education.
4차 산업혁명 시대를 살아가는 우리는 영화ㆍ동영상ㆍ음악 추천 시스템, 스마트 폰의 시리(Siri)나 빅스비(Bixby), 기가지니, 무인자동차 등 삶의 대부분의 영역에서 인공지능(AI)을 활용한 기술들을 마주하며 살아가고 있다. 수많은 영역에서 마치 요술램프처럼 우리의 문제들을 해결해주고 있는 인공지능의 기저에는 사실 다름 아닌 수학이 자리 잡고 있다. 인공지능은 어제 오늘의 일이 아닌 1950년대부터 연구되어오던 것으로, 최근 컴퓨팅 파워의 비약적인 발전과 함께 수학적 모형 및 알고리즘의 개발, 네트워크의 발전으로 인해 그 연구와 성과가 더욱 활성화되고 있다(Ministry of Science and ICT, 2018).
이러한 변화의 흐름 속에서 교육부는 인공지능을 학교 교육에 적극 도입하는 2가지 방안으로 초등학교 저학년(1, 2학년)을 대상으로 인공지능을 활용한 ‘똑똑! 수학탐험대’ 서비스를 제공하였으며, 2021년 2학기부터 고등학교에서 ‘인공지능 기초’와 ‘인공지능 수학’으로 진로 선택과목을 신설함을 확정 고시하였다(Ministry of Education, 2020b). 이러한 방안은 기술적 측면에서 인공지능을 수준별 개별화 학습과 자기 주도적 학습을 위한 교육플랫폼에 적용하는 것과, 내용적 측면에서 인공지능을 교과 학습으로 포함하는 것이라 해석된다.
초ㆍ중등교육에서 인공지능을 사용한 국외 논문을 체계적으로 분석한 Shin(2020)의 연구결과 에 따르면, 관련된 국외 연구의 대부분은 인공지능을 교육시스템이나 교육플랫폼에 적용하는 것이었고 수학교육 맥락에서의 구체적인 사례로는 단계형 ITS(Intelligent Tutoring System, 이하 ITS), 대화형 ITS, 협력학습 시스템이 있었다. 다른 선행연구에서는 대부분의 국내 연구들이 주로 인공지능과 관련된 기술의 활용과 교육공학적 관점에서 이루어졌다고 하였다(Park, 2020; Shin, 2019). 또한 여러 선행연구에서 인공지능 관련 기술을 교육에 활용하는 것 못지않게 인공지능의 원리와 개념을 이해하기 위한 수학교육이 요구된다는 주장을 볼 수 있다(Heo, 2020; Ko, 2020; Lee, 2020; Lee & Huh, 2018; Lee, Lee, & Ham, 2020; Weintrop, Beheshti, Horn, Orton, Jona, Trouille, & Wilenskys, 2016). 이는 인공지능 분야에서 수학의 유용성을 인식하고 인공지능에 필요한 수학 개념을 통해 인공지능을 이해하고 활용할 수 있도록 인공지능 수학 과목의 내용을 편성하는 것을 목표로 하는 교육부의 취지와 부합한다고 볼 수 있다(Ministry of Education, 2020a, 2020b).
본 연구의 목표는 인공지능을 기술적으로 적용하기보다 수학교과와의 내용적 융합을 위하여 진화전략(Evolution Strategy)기반의 최대ㆍ최소 문제의 탐구과정과 이를 위한 코딩환경을 개발하고 구현하는 것이다. 인공지능의 지도학습은 input 데이터에 대응하는 output 데이터가 주어져 있는 상황에서, output 데이터와 인공지능의 예측 사이의 오차를 최소화하는 알고리즘으로 문제를 해결한다. 인공지능의 핵심적인 작동원리인 오차에 대한 손실함수의 최적화는 학교수학에서 다루고 있는 최대ㆍ최소의 문제와 연결되어 설명될 수 있다. 오차를 최소화하는 방법으로서 기존에 널리 알려진 미분 기반의 경사하강법(Gradient Descent)은 대학의 인공지능 관련 교과는 물론 향후 고등학교에 도입될 ‘인공지능 수학’ 과목에서도 핵심적인 개념이다. 하지만 미분을 활용한 경사하강법은 고등수학의 내용을 다루기 때문에 중학생들이 이해하기가 쉽지 않으므로, 이를 대체하는 방법으로 인공지능의 진화전략을 기반으로 하는 최대ㆍ최소 문제의 탐구과정과 이를 위한 코딩환경을 설계하였다.
본 연구의 내용은 2019년 S대 과학영재교육원 수리정보분과 중학교 2학년과 3학년 학생들을 지도한 것을 바탕으로 하였으나, 영재원 대상이 아닌 일반 학생들까지 쉽게 접근할 수 있도록 아주 친숙하고 낮은 수준부터 시작하여 심화 수준까지의 탐구과정으로 재구성하였다. 영재원 대상이 아닌 일반학생이 접근할 수 있도록 구성한다는 뜻은
본 연구에서 설계된 탐구과정과 코딩환경은 필요한 현장교육에서 수정과 적용이 가능하도록 온라인 코딩환경으로 공개하여 제공한다.
선행연구에서 밝힌 진화전략은 블랙박스 최적화 알고리즘의 한 분류로서 자연 진화에 착안한 휴리스틱 탐색 절차(heuristic search procedures)를 가진다. 자연 진화와 같이 각 반복(세대)마다, 파라미터의 집단(유전형)은 작은 변화(돌연변이)를 가지며 비용함수(적합도)를 평가한다. 가장 높은 평가점수의 파라미터는 다음 세대로 전달하며, 비용함수가 완전히 최적화될 때까지 이와 같은 절차를 반복한다(Rechenberg & Eigen, 1973; Schwefel, 1977; Salimans, Ho, Chen, & Sutskever, 2017, p. 2에서 재인용). 여기서 말하는 블랙박스 최적화는 최적화하려는 비용함수(목적함수)에 대하여 파라미터 공간에 있는 개체에 대한 적합도 평가값 이외의 어떤 부가적인 정보를 필요로 하지 않는다(Sehnke, Osendorfer, Rückstieß, Graves, Peters, & Schmidhuber, 2010). 또한, 진화 알고리즘은 집단(population)을 어떻게 표현하는지와 돌연변이의 결합방식에 따라 다양하게 세분화된다. 본 연구에서 따르는 진화전략 알고리즘은 Salimans et al.(2017)과 Sehnke et al.(2010)의 논문에서 구현한 것으로 다음의 수식이 핵심 아이디어이다.
진화전략을 한마디로 표현하자면 표본이 정규분포를 따를 때, 개념적으로 표본의 함숫값을 이용해 미분에 근사시키는 것이다. 수식에서 살펴볼 수 있듯이 진화전략은 개체의 평가 방법 외에는 문제에 대한 정보를 거의 필요로 하지 않기 때문에, 거의 모든 종류의 최적화 문제에 적용될 수 있다. 비용함수(목적함수)는 해석적 형태일 필요는 없으며, 시뮬레이션 결과가 비용함수로 사용될 수도 있다. 또한 선형 및 비선형 제약조건을 갖는 고차원, 멀티모달의 비선형 문제를 해결하는 데에 활용되어 많은 시험 사례에서 반복적인 다른 방법에 비해 성공적임이 입증되었다(Hwang, 2002; Salimans et al., 2017).
본 연구는 이러한 진화전략의 아이디어를 재조직하여 중학교 수준에서 미분 없이도 평균의 개념만 가지고도 조작할 수 있는 활동부터 고등학교 수준에서 다루는 미분 및 다양한 확률ㆍ통계적 지식을 진화전략을 활용하여 통합하는 최대ㆍ최소 탐구과정을 설계한다. 나아가 고등학교 차원에서는 진화전략의 수학적 아이디어를 이해하고 추론하여 중학교 차원의 내용을 재조명하며 다양한 함수의 최대ㆍ최소 탐구로 나아가도록 나선형(spiral)으로 연계되는 탐구과정을 설계한다.
본 연구는 학생들이 탐구를 통해 얻는 결과의 타당성을 확보하기 위해 진화전략을 교육적으로 재해석하여 학생들의 수준에서 추론하고 이해할 수 있는 스토리텔링으로 해석하였다. 다음은 스토리텔링을 위해 제시되는 상황과 진화전략에 대한 재해석이다.
산 정상에서 평지에 있는 마을로 내려가는 도중 길을 잃었다고 상상해보자. 설상가상으로 안개가 자욱하게 깔려 코앞의 상황밖에 볼 수 없는데 가진 것이라고는 등산스틱뿐이다. 이러한 상황에서 마을로 내려가기 위해선 어떻게 해야 할까? 아마도 등산스틱으로 주변을 두드려보며 경사가 아래로 향하는 방향으로 한 걸음 한 걸음 내딛어가며 내려가야 할 것이다. 최적화 방법으로 널리 알려진 경사하강법은 비용함수의 값을 최소화하기 위해 경사(gradient)를 이용하여 현재의 위치에서 경사의 반대방향으로 일정 크기만큼 이동하는 것을 반복하는 것이다. 한마디로 미분을 통해 경사를 구하고 경사가 낮은 쪽으로 조금씩 내려가는 것으로, 수학적 개념이 인공지능에 활용되는 대표적인 예이다.
진화전략은 고등학교 미분이 다루는 경사를 미분 없이 확률ㆍ통계로 근사시키는 것으로, 안개가 자욱하게 깔려 있어 등산스틱으로 주변에 대한 정보를 얻듯이 등산스틱 대신에 여러 마리의 로봇개미를 주변에 뿌려서 그 주변위치의 높이(함숫값)에 대한 정보를 얻는 것으로 스토리텔링 할 수 있다. 높이(함숫값)에 대한 정보를 얻기 위한 표본의 분포는 확률의 영역에서 다루며 얻은 표본의 수치적 처리는 통계의 영역에서 분석하여 경사가 아래로 향하는 곳으로 반복하여 나아가는 것을 진화전략 알고리즘의 핵심적인 스토리텔링으로 삼을 수 있다.
본 연구는 앞 절의 (ㄱ)의 수식을 쉽게 스토리텔링하여 현재의 위치에서 주변에 로봇개미들을 random하게 뿌려 그 위치의 높이에 해당하는 정보를 얻고, 높이(함숫값)를 가중치로 삼아서 위치의 변화량의 평균을 구하는 것으로 해석하였다. (ㄱ)에서
수학자이자 컴퓨터 과학자, 교육자였던 Papert는 발달심리학자 Piaget와 3년간의 공동연구를 통해 Piaget로 대표되는 구성주의(Constructivism) 와 구별되는 구성주의(Constructionism) 교육철학을 정립하였다(Papert & Harel, 1991; Ackermann, 2001). Papert(1972)는 중학교 기하에 소개되는 도형의 핵심이 선분과 각이고, 그것을 흰 눈이 내린 운동장에서 발자국으로 만들려면 앞으로 가고 옆으로 도는 행동에 있음에 착안하여, 중학교 유클리드 기하의 5개의 공리(axiom)와 자와 컴퍼스라는 2개의 도구 대신에 “가자”와 “돌자”라는 2개의 핵심적인 스토리텔링(powerful idea) 명령으로 기하 도형을 만들고 거북 및 동료 학습자들과 수학적 의사소통을 할 수 있는 코딩환경으로 ‘Logo’ 수학나라(Mathland)를 개발하였다. 영어단어 ‘construction’은 기하에서 작도라는 뜻이 있는데, 이러한 이유로 Papert는 자신의 구성주의를 Constructionism이라 불렀다(Papert & Harel, 1991). Constructionism의 핵심은 지식은 단순히 전이되는 것이 아니라 학습자가 마음속에서 능동적으로 구성하는 것이라는 Constructivism의 기본 관점을 전승하면서, 학습자가 전략적으로 주어진 교수 환경을 도구(media)로 상호작용하며 수학적 지식과 기호를 물리적 구성 활동을 통해 내면화 하는 것에 있다(Papert, 1980; Ackermann, 2001; Choi, 2020; Chung, 2020). Logo는 이러한 학습자의 구성을 위해 ‘가자’와 ‘돌자’와 같은 거북이를 움직이는 명령어들과 조건, 제어, 반복 등의 명령을 통하여 화면에 그림을 그리는 컴퓨터 기반 학습 환경이다(Cho, 2003; Choi, 2020). Papert는 자신의 Logo를 실제의 세계에 존재하는 문제와 유사한 제한된 환경의 문제공간으로서 이상적인 마이크로월드(Microworld) 환경이 될 수 있다고 하였다(Papert, 1980; Kim, 2004).
마이크로월드는 적절한 과제와 교육 체계가 있을 때 제한된 환경 내에서 대상에 대한 조작(operations)을 통해 학습자의 수준에 맞게 자신에게 의미있는 세계를 구성하고, 조작에 의해 결합된 대상을 또 다른 하나의 대상으로 인식하면서 구조화해나가는 경험을 제공하는 컴퓨터 환경을 지칭한다(Clements & Sarama, 2002; Kim, 2004; Choi, 2020). 마이크로월드에서 학생들은 대상에 대한 조작을 통해 학습자에게 의미있는 세계를 구성하며 지식을 습득하고, 컴퓨터 화면을 통해 피드백을 돌려받아 학습과정의 사고를 반성할 수 있다(Hoyles, Noss, & Adamson, 2002). 수학적 마이크로월드는 수학적 대상물들(objects)과 대상물들의 수학적 조작(operations)의 법칙이 있는 마이크로 공간으로, 학습자가 수학적 개념과 구조를 능동적으로 구성하도록 유도하기 위해서는 수학적 objects와 operations을 학습자의 탐구 능력에 맞도록 고안되고 표현되어 제시되어야 한다(Cho, 2003).
본 연구에서는 특별히 부등식 영역에서의 최대ㆍ최소 문제 상황으로 이어질 수 있는 이변수 함수의 탐구를 위해, 원소나열법과 조건제시법으로 수학적 대상을 만들고 또한 자유로운 조작 활동이 가능하도록 설계된 Constructionism 기반 3차원 터틀크래프트(Turtlecraft) 마이크로월드 환경을 도입한다. 또한 온라인 환경에서 최대ㆍ최소 탐구를 파이썬 코딩으로 할 수 있도록 구글 코랩(Google Colab, 이하 Colab)을 활용하여 파이썬 코드의 핵심부분을 학생들이 직접 조작해보며 직관적인 이해와 수학 실험을 할 수 있는 환경을 설계한다. 과거의 마이크로월드가 PC 기반의 개인적 탐구환경이었다면, 본 연구에서는 온라인 기반의 수학적 마이크로월드 환경을 설계하여 교육현장에 바로 적용될 수 있도록 하였다.
마인크래프트(Minecraft) 게임은 학생들에게 아주 인기 있는 3차원 게임환경이다. 터틀크래프트(Turtlecraft)는 마인크래프트와 유사한 3차원 좌표계 마이크로월드로 방정식과 함수 그리고 논리로 이루어진 조건식을 만족시키는 해집합을 통해 다양한 함수의 그래프와 입체적인 구조물 등을 조건제시법 코딩으로 만들 수 있도록 설계되었다(Chung & Cho, 2020; Chung, 2020). 이러한 특성을 바탕으로 터틀크래프트는 초등수학의 내용부터 고등수학 이상의 수학적 대상을 구현하는데 활용될 수 있으며, 실제로 공간능력(Lee, 2016; Jeong, Lee, & Cho, 2016), 자유학기제(Kim, Seo, & Cho, 2018), 대수적 코딩(Jeong & Cho, 2020), 수학적 창의성의 발현과의 관계(Chung & Cho, 2020)등 수학교육 현장에 연계하는 연구들이 있다.
본 연구에서는 최대ㆍ최소 문제의 시각화와 탐구를 위하여 3차원 터틀크래프트 코딩환경과 2차원 파이썬 애니메이션을 Colab 환경을 통해 접근한다. 터틀크래프트와 Colab 환경은 별도의 설치 없이도 인터넷 환경의 웹브라우저를 통하여 곧바로 사용할 수 있는 코딩환경이다.
최대ㆍ최소 문제 상황으로 연계되는 다양한 함수
본 절에서는 서로 다른 두 주사위의 눈의 합과 같은 교과서 내의 친숙한 예시에서 출발하여 수학적 표현을 기반으로 한 코드를 통해 간단한 이변수 일차함수
먼저 교과서 내의 친숙한 예시인 서로 다른 두 주사위의 눈의 합에서 탐구를 시작해본다.
3D Turtlecraft visualization 이는 두 주사위의 눈이 모두 1이 나오면 1 + 1 = 2층에 블록을 쌓고 두 눈이 모두 6이 나오면 6 + 6 = 12층에 블록을 쌓는 것으로, 빨간색 동그라미로 표시된 것과 같이 각각 3차원 좌표 (1, 1, 2), (6, 6, 1 2)에 대응한다. 아래의 코드는 1부터 6까지
터틀크래프트에서는 블록의 종류마다 번호가 매겨져 있어서 학생들은
이는 두 주사위의 눈이 모두 1이 나오면
터틀크래프트에는 수학적 개념이 담긴 다양한 내장함수들이 있다. 이 내장함수들은 최대ㆍ최소 탐구에 핵심이 되는 이변수 함수
예를 들어
이러한 탐구를 바탕으로 학생들에게 보다 현실감 있는 수학적 구성물의 예시로 산과 호수 등의 지형을 만들어보며 최대ㆍ최소 문제 상황을 접근해본다.
이처럼 학생들은 조건제시법, 집합 등의 수학적 표현을 기반으로 한 코드를 활용하여 간단한 이변수 일차함수에서부터 피라미드, 원뿔, 여러 지형이나 구조물 등을 조건을 만족하는 해집합으로 접근하여, 창의적으로 코딩하고 탐구해보며 다양한 최대ㆍ최소 문제 상황을 시각화할 수 있다(learning by making). 이러한 터틀크래프트를 활용한 3차원 시각화 및 구성주의 학습은 다음 절에서 다루는 파이썬을 통한 2차원 시각화와 애니메이션을 통한 최대ㆍ최소 탐구로 연계된다.
본 연구에서는 파이썬 언어로 된 코드의 실행을 위해서 별도의 설치 없이 사용자가 인터넷 환경의 웹브라우저를 통하여 바로 클라우드 컴퓨팅을 할 수 있는 Colab에 가상 실습환경 구현하였다.
수학적 실험탐구에서는 터틀크래프트에서 다루었던 다양한 함수에 대하여 2차원 등고선으로 표현하고 구체적인 계산과 함께 애니메이션을 만들어 최대ㆍ최소 탐구과정을 시각화하여 제공한다.
본 연구는 함수식 및 수학적 내용이 담긴 핵심 코드를 조작하며 최대ㆍ최소 문제 탐구는 물론 확률ㆍ통계적 지식이나 인공지능에 쓰이는 개념들을 안내하도록 스토리코딩하여 탐구환경을 설계하였다.
또한, 탐색하고자 하는 여러 함수를 드롭다운 형식을 통하여 선택하도록 하면 학생들이 코딩언어로 표현한 수학식을 입력할 때 생길 수 있는 오류에 대한 통제가 가능하다. 이렇게 설계된 환경에서는 입력의 조합을 달리 선택하여 시행할 때마다 다른 출력 결과를 즉시로 확인할 수 있다.
더불어 Colab에서 제공하는 탐구환경은 파이썬 코드는 물론 주석, 이미지, 동영상 등을 첨부할 수 있어 교육용 자료를 제작하거나 학생들끼리 서로 공유하며 소통을 하며 협력학습을 하기에 유용한 환경을 제공한다.
구현된 수학적 실험탐구의 다른 특징은 실행결과화면에서 함수의 그래프를 2차원 등고선으로 표현하며 주어진 초기 위치에서 최댓값 또는 최솟값으로 찾아가는 모습을 시간에 따라 화살표의 이동으로 표현한 애니메이션을 구현한 점이다.
더 나아가 심화된 학습을 위해서는 구현된 입력 화면을 더블클릭하여 소스코드를 제공 받을 수 있으며, 스토리텔링으로 이해하고 있는 진화 전략의 알고리즘이 어떻게 구현되어 있는지 확인할 수 있다. 또한 이는 다른 설정을 적용한 실행 코드로 수정 가능하기 때문에 다양한 탐색으로 확장이 가능하다.
본 장에서는 중학교차원의 직관적인 모형에서부터 정규분포를 도입하는 진화전략의 단계별 도입전략 및 스토리텔링에 대해 살펴본다.
본 절에서는 진화전략의 핵심 아이디어를 중학교 차원에서 재조직하여 단계적으로 탐구해본다. 먼저 일변수 함수에서 탐구를 시작하여 서로 다른 주사위를 던져서 나올 수 있는 두 눈의 합이 그렸던
앞서 진화전략의 수식 중
먼저 로봇개미를 뿌릴 때, 편향된 정보조사가 되지 않도록 고르게 뿌려야 함을 스토리텔링하여 제시할 수 있다. 이와 관련한 개념으로 초등학교부터 배우는 평균의 개념을 도입하면
이제 앞에서 다루었던 서로 다른 주사위를 던져서 나올 수 있는 두 눈의 합의 상황으로 돌아가 이변수 함수로 나아가본다.
학생들은 간단한 산수를 통해
일련의 과정은 간단한 평균의 개념만 가지고도 직관적인 스토리텔링과 컴퓨터의 계산능력을 활용해 기초적인 최적화를 진행한 것이다. 물론 기초적인 모형은
로봇개미의 분포와 관련하여 학생들이 직관적으로 떠올릴 수 있는 로봇개미의 배치로
한편 자원의 한정된 상황, 예를 들어 로봇개미를 작동시키기 위한 배터리 시간 제약 등의 효율성에 대한 스토리텔링을 통해 로봇개미의 표본추출(sampling)의 필요성을 제시하고, 로봇개미의 개체수를 줄이는 전략으로 균등분포(uniform distribution)와 정규분포(normal distribution)를 도입할 수 있다.
학생들에게는 정규분포보다는 균등분포가 직관적으로 randomness에 더 가까울 수 있다. 이에 먼저 균등분포를 적용한 탐구들을 통해 원하는 최댓값 혹은 최솟값 근처에서 진동 가능성, 가까운 정보를 더 많이 반영하는 것의 필요성 등을 살펴보고 그 과정을 스토리텔링하여 정규분포의 도입을 유도한다.
물론 표준편차(
지금까지는 여러 함수의 정의역이 이산집합인 경우로 함수의 그래프가 이산적(discrete)으로 그려졌다면, 정의역이 연속(continuous)인 경우를 포함하여 함수의 최대ㆍ최소 탐색을 확장한다. 앞선 장의
앞선 과정들을 통한 알고리즘을 쉽게 표현하면 현재위치를 기준으로 정규분포를 따르는 로봇개미들을 주변에 random하게 뿌려
이를 바탕으로 본 절에서는 진화전략을 미분 불가능한 경우의 다양한 연속함수
확률ㆍ통계의 개념으로 미분 없이도 최대ㆍ최소를 탐구할 수 있는 진화전략은 고등학교를 넘어 대학교 수학교육까지 연계될 수 있다. 다음의
일련의 과정은 앞서 Constructionism 기반 코딩 환경에서 구성주의 학습으로 그렸던 다양한
진화전략을 다양한 최대ㆍ최소 문제 상황에 적용하는 탐구와 더불어 진화전략의 알고리즘을 스토리코딩하며 코드를 분석하고 파라미터들을 조작하는 과정을 통해 고등학교 확률ㆍ통계의 수학적인 개념이나 인공지능에서 사용되는 여러 개념들을 살펴볼 수 있다.
먼저 지금껏 확률ㆍ통계의 학습에서 주로 교과서 내의 주어진 자료의 분산과 표준편차(
다음으로 매 시행마다 로봇개미들을 통해 경사(gradient)의 근삿값을 얻었어도 그 값을 다르게 반영하면 최적화가 다르게 진행될 수 있음을 탐구할 수 있다. 이와 관련한 개념으로 학습률(learning rate)을 보폭(step size)이라 한다면 보폭이 너무 크면
앞서 학생들이 정의역이 이산집합인 경우에
지금까지의 과정에서 본 절의 알고리즘은 매 시행마다 200마리의 로봇개미들을 랜덤하게 뿌려서 각각의 [로봇개미의 위치변화량]×[높이(함숫값)]들의 평균을 구하며, 그 과정에서 함숫값에 대한 표준화를 한다. 사실 이 과정은 컴퓨터로는 몇 초 밖에 걸리지 않지만 손으로 일일이 계산하기에는 거의 불가능할 정도로 매우 방대한 양이다. 해당 알고리즘을 살펴보면 실제로 이 200개의 data를
마지막으로 실제 최적화에서 주요한 문제인 local maximum/minimum에 대해서도 살펴볼 수 있다.
로젠브록 함수(Rosenbrock function) 는 실제 인공지능에서 사용되는 최적화 연구자 차원의 함수로 그 그래프는
본 연구에서 다룬 진화알고리즘을 적용해보면
지금까지 진화전략의 핵심 아이디어를 함수의 그래프가 그리는 지형의 최대ㆍ최소 문제에 적용해봄으로써 여러 긍정적인 측면과 함께 한계점 또한 탐구해보았다. 본 연구에서 사용한 진화 전략 파이썬 코드는 100줄도 안 되는 아주 짧은 것으로, 실제 인공지능에 활용되는 코드에 비하면 매우 단순한 코드이기에 한계점이 있는 것은 당연하지만 한편으로는 그 아이디어 하나만으로도 다양한 탐구가 가능하기에 진화전략이 실제로 왜 이렇게 각광을 받는지 알 수 있다.
2021년부터 인공지능 수학이 고등학교 선택과 목으로 도입되는 상황에 맞추어, 본 연구는 중학교 차원의 직관적인 최적화 방법에서부터 시작하여 확률ㆍ통계 기반의 진화전략으로 최대ㆍ최소 문제를 도입하였으며, 궁극적으로 인공지능 수학에 도입되는 미분 기반의 경사하강법으로 융합될 수 있도록 하였다. 구체적으로 본 연구는 피라미드와 원뿔 등과 관계된 최대ㆍ최소 문제 상황을 도입하고, 진화전략의 아이디어를 주사위 실험으로 재조직하여 미분 없이 평균의 개념만 가지고도 탐구를 시작할 수 있도록 하였으며, 나아가 인공지능 수학의 경사하강법과 융합될 수 있도록 탐구과정을 설계하여 제시하였다. 또한 codingmath.org 주소의 인공지능 수학 공지를 통해 학생들은 설계된 Colab 파이썬 코딩환경과 터틀크래프트 코딩환경에 접근할 수 있으며, 그곳에서 직접 코딩기반의 탐구를 수행할 수 있도록 본 연구에 사용된 모든 코드가 설명과 함께 제시되어 있다. 본 연구에서 제시한 진화전략 기반의 최대ㆍ최소 문제 탐구과정과 이를 위한 코딩환경은 다음과 같은 특징과 시사점을 내포하고 있다.
첫째, 미분을 다루지 않는 저학년 학생을 위해 확률ㆍ통계 기반의 진화전략으로 경사하강법을 도입하고, 심화된 수준에서는 미적분 기반의 경사하강법까지 연계시킨다. 이렇게 확률ㆍ통계와 미적분을 융합하는 탐구과정을 통해 서로 다른 영역이라고 여겨질 수 있는 미분과 확률ㆍ통계에 대한 통합적 시각을 제공한다.
둘째, 최대ㆍ최소 문제를 수학적 실험이 가능토록 재구성하여, 학습자의 직관적 이해와 코딩 기반의 수학적 탐구활동을 통해 접근한다. What-if 질문을 만들고 컴퓨터를 이용해 시각화하고 계산하며 수학적 논리로 뒷받침한다. 이러한 탐구활동을 통해 자연스럽게 3차원 좌표와 등고선, 함수
셋째, 컴퓨터와 함께 자신의 문제를 해결하는 컴퓨팅 사고력(Computational Thinking) 역량을 키운다. 학생들이 수학적 아이디어를 바탕으로 컴퓨터와 함께 문제를 해결하는 자신감과 욕구를 키우는 것은 인공지능 기반의 4차 산업혁명 시대에 필요한 수학적 역량과 컴퓨팅 사고력 역량을 기를 수 있는 좋은 계기이다. 나아가 일련의 과정은 플래피버드 게임 코딩이나 주가탐구로 발전이 가능할 것이다.
요사이 인공지능 시대에 필요한 수학교육을 위해 기존 교육과정 내의 변화의 움직임은 물론 자유학년제, 방과 후 교실, 영재센터와 같은 교육기관 등에서도 다양한 시도들이 이루어지고 있다. 탐구의 과정에서 살펴보았듯이 행렬, 알고 리즘과 순서도 등과 같이 현 교육과정에서는 다루고 있지 않지만 컴퓨터와 함께 다루어질 때 재조명 될 수 있는 많은 수학적 개념이 있다. 진화전략 역시 컴퓨팅 파워의 발전과 함께 그 수학적 아이디어가 재조명 되어 다양한 분야에 활용되는 것이다. 종이가 없었던 시대의 수학교육과 종이가 있는 환경의 수학교육을 비교할 수 있듯이, 정적인 교육 환경에서 다루어지지 못했던 많은 개념들을 컴퓨터의 동적인 환경에서 새롭게 이해하고 적용할 필요가 있다. 이러한 노력을 바탕으로 컴퓨터와 함께 문제를 해결하는 AI시대에 꼭 필요한 수학적 역량을 기를 수 있는 다양한 교육과정들이 필요할 것이다.
1) 표기를 단순화하기 위해 1차원
2) 터틀크래프트 : codingmath.org, Colab URL: codingmath.org 주소의 공지사항에 “인공지능 수학 (최대최소)”
3) 최대ㆍ최소 문제와 관련하여 현행 교육과정에서 다루고 있는 내용으로 경제수학의 부등식의 영역과 선형계획법을 들 수 있다. Choi, Lee, & Kim(2010)은 기존의 선형계획법을 지도하는 데에 있어서, 학생들이 단순히
4) 복셀(voxel)은 부피(volume)와 화소(pixel)의 합성어로, 2차원 평면을 구성하는 최소 단위인 화소의 개념을 3차원 공간의 최소 단위인 큐브(cube)로 확장한 것이다(Chung, 2020).
5)
6) codingmath.org 주소의 공지사항 중 “인공지능 수학 (최대최소)”에서 “(클릭) 파이썬 탐구자료 및 코딩환경 바로가기” 링크를 클릭하면 Colab을 통한 탐구환경으로 연결된다.
7) 본 절에서는 중학생들의 이해를 돕기 위하여
8) Randomness의 필요성을 위해 고등학교 차원의 경우 경사하강법과 관련하여 Stochastic Gradient Descent가 Batch Gradient Descent에 비해 갖는 이점들과 연관지어 설명하는 스토리텔링도 생각해 볼 수 있다.
9) 예를 들어 최댓값이나 최솟값 근처가 아닌 곳에서는 균등분포를 적용한 알고리즘의 진행속도가 더 빠를 수도 있다.
2021; 31(1): 109-130
Published online February 28, 2021 https://doi.org/10.29275/jerm.2021.02.31.1.109
Copyright © Korea Society of Education Studies in Mathematics.
강한별, 이미숙, 조한혁
The purpose of this study is to develop a curriculum of school mathematics and artificial intelligence regarding max-min problems. We also developed a coding environment for a designed curriculum that can be accessed and utilized at codingmath.org without any additional installation. The curriculum uses an evolution strategy-based gradient descent method founded on a school probability and statistics curriculum with an experiment using dice; this curriculum is designed to work when the function is not differentiable and is ultimately linked to a calculus-based gradient descent method. The coding environment, in which even middle school students can visualize the min-max problem of f(x, y), uses a three-dimensional function graph with minimal coding inputs and explores the gradient descent process using a two-dimensional Python animation. This study, which is an attempt to combine mathematical problem solving and computational thinking in the context of max-min problems, further discusses ideas regarding the ways to integrate AI and coding in mathematics education.
4차 산업혁명 시대를 살아가는 우리는 영화ㆍ동영상ㆍ음악 추천 시스템, 스마트 폰의 시리(Siri)나 빅스비(Bixby), 기가지니, 무인자동차 등 삶의 대부분의 영역에서 인공지능(AI)을 활용한 기술들을 마주하며 살아가고 있다. 수많은 영역에서 마치 요술램프처럼 우리의 문제들을 해결해주고 있는 인공지능의 기저에는 사실 다름 아닌 수학이 자리 잡고 있다. 인공지능은 어제 오늘의 일이 아닌 1950년대부터 연구되어오던 것으로, 최근 컴퓨팅 파워의 비약적인 발전과 함께 수학적 모형 및 알고리즘의 개발, 네트워크의 발전으로 인해 그 연구와 성과가 더욱 활성화되고 있다(Ministry of Science and ICT, 2018).
이러한 변화의 흐름 속에서 교육부는 인공지능을 학교 교육에 적극 도입하는 2가지 방안으로 초등학교 저학년(1, 2학년)을 대상으로 인공지능을 활용한 ‘똑똑! 수학탐험대’ 서비스를 제공하였으며, 2021년 2학기부터 고등학교에서 ‘인공지능 기초’와 ‘인공지능 수학’으로 진로 선택과목을 신설함을 확정 고시하였다(Ministry of Education, 2020b). 이러한 방안은 기술적 측면에서 인공지능을 수준별 개별화 학습과 자기 주도적 학습을 위한 교육플랫폼에 적용하는 것과, 내용적 측면에서 인공지능을 교과 학습으로 포함하는 것이라 해석된다.
초ㆍ중등교육에서 인공지능을 사용한 국외 논문을 체계적으로 분석한 Shin(2020)의 연구결과 에 따르면, 관련된 국외 연구의 대부분은 인공지능을 교육시스템이나 교육플랫폼에 적용하는 것이었고 수학교육 맥락에서의 구체적인 사례로는 단계형 ITS(Intelligent Tutoring System, 이하 ITS), 대화형 ITS, 협력학습 시스템이 있었다. 다른 선행연구에서는 대부분의 국내 연구들이 주로 인공지능과 관련된 기술의 활용과 교육공학적 관점에서 이루어졌다고 하였다(Park, 2020; Shin, 2019). 또한 여러 선행연구에서 인공지능 관련 기술을 교육에 활용하는 것 못지않게 인공지능의 원리와 개념을 이해하기 위한 수학교육이 요구된다는 주장을 볼 수 있다(Heo, 2020; Ko, 2020; Lee, 2020; Lee & Huh, 2018; Lee, Lee, & Ham, 2020; Weintrop, Beheshti, Horn, Orton, Jona, Trouille, & Wilenskys, 2016). 이는 인공지능 분야에서 수학의 유용성을 인식하고 인공지능에 필요한 수학 개념을 통해 인공지능을 이해하고 활용할 수 있도록 인공지능 수학 과목의 내용을 편성하는 것을 목표로 하는 교육부의 취지와 부합한다고 볼 수 있다(Ministry of Education, 2020a, 2020b).
본 연구의 목표는 인공지능을 기술적으로 적용하기보다 수학교과와의 내용적 융합을 위하여 진화전략(Evolution Strategy)기반의 최대ㆍ최소 문제의 탐구과정과 이를 위한 코딩환경을 개발하고 구현하는 것이다. 인공지능의 지도학습은 input 데이터에 대응하는 output 데이터가 주어져 있는 상황에서, output 데이터와 인공지능의 예측 사이의 오차를 최소화하는 알고리즘으로 문제를 해결한다. 인공지능의 핵심적인 작동원리인 오차에 대한 손실함수의 최적화는 학교수학에서 다루고 있는 최대ㆍ최소의 문제와 연결되어 설명될 수 있다. 오차를 최소화하는 방법으로서 기존에 널리 알려진 미분 기반의 경사하강법(Gradient Descent)은 대학의 인공지능 관련 교과는 물론 향후 고등학교에 도입될 ‘인공지능 수학’ 과목에서도 핵심적인 개념이다. 하지만 미분을 활용한 경사하강법은 고등수학의 내용을 다루기 때문에 중학생들이 이해하기가 쉽지 않으므로, 이를 대체하는 방법으로 인공지능의 진화전략을 기반으로 하는 최대ㆍ최소 문제의 탐구과정과 이를 위한 코딩환경을 설계하였다.
본 연구의 내용은 2019년 S대 과학영재교육원 수리정보분과 중학교 2학년과 3학년 학생들을 지도한 것을 바탕으로 하였으나, 영재원 대상이 아닌 일반 학생들까지 쉽게 접근할 수 있도록 아주 친숙하고 낮은 수준부터 시작하여 심화 수준까지의 탐구과정으로 재구성하였다. 영재원 대상이 아닌 일반학생이 접근할 수 있도록 구성한다는 뜻은
본 연구에서 설계된 탐구과정과 코딩환경은 필요한 현장교육에서 수정과 적용이 가능하도록 온라인 코딩환경으로 공개하여 제공한다.
선행연구에서 밝힌 진화전략은 블랙박스 최적화 알고리즘의 한 분류로서 자연 진화에 착안한 휴리스틱 탐색 절차(heuristic search procedures)를 가진다. 자연 진화와 같이 각 반복(세대)마다, 파라미터의 집단(유전형)은 작은 변화(돌연변이)를 가지며 비용함수(적합도)를 평가한다. 가장 높은 평가점수의 파라미터는 다음 세대로 전달하며, 비용함수가 완전히 최적화될 때까지 이와 같은 절차를 반복한다(Rechenberg & Eigen, 1973; Schwefel, 1977; Salimans, Ho, Chen, & Sutskever, 2017, p. 2에서 재인용). 여기서 말하는 블랙박스 최적화는 최적화하려는 비용함수(목적함수)에 대하여 파라미터 공간에 있는 개체에 대한 적합도 평가값 이외의 어떤 부가적인 정보를 필요로 하지 않는다(Sehnke, Osendorfer, Rückstieß, Graves, Peters, & Schmidhuber, 2010). 또한, 진화 알고리즘은 집단(population)을 어떻게 표현하는지와 돌연변이의 결합방식에 따라 다양하게 세분화된다. 본 연구에서 따르는 진화전략 알고리즘은 Salimans et al.(2017)과 Sehnke et al.(2010)의 논문에서 구현한 것으로 다음의 수식이 핵심 아이디어이다.
진화전략을 한마디로 표현하자면 표본이 정규분포를 따를 때, 개념적으로 표본의 함숫값을 이용해 미분에 근사시키는 것이다. 수식에서 살펴볼 수 있듯이 진화전략은 개체의 평가 방법 외에는 문제에 대한 정보를 거의 필요로 하지 않기 때문에, 거의 모든 종류의 최적화 문제에 적용될 수 있다. 비용함수(목적함수)는 해석적 형태일 필요는 없으며, 시뮬레이션 결과가 비용함수로 사용될 수도 있다. 또한 선형 및 비선형 제약조건을 갖는 고차원, 멀티모달의 비선형 문제를 해결하는 데에 활용되어 많은 시험 사례에서 반복적인 다른 방법에 비해 성공적임이 입증되었다(Hwang, 2002; Salimans et al., 2017).
본 연구는 이러한 진화전략의 아이디어를 재조직하여 중학교 수준에서 미분 없이도 평균의 개념만 가지고도 조작할 수 있는 활동부터 고등학교 수준에서 다루는 미분 및 다양한 확률ㆍ통계적 지식을 진화전략을 활용하여 통합하는 최대ㆍ최소 탐구과정을 설계한다. 나아가 고등학교 차원에서는 진화전략의 수학적 아이디어를 이해하고 추론하여 중학교 차원의 내용을 재조명하며 다양한 함수의 최대ㆍ최소 탐구로 나아가도록 나선형(spiral)으로 연계되는 탐구과정을 설계한다.
본 연구는 학생들이 탐구를 통해 얻는 결과의 타당성을 확보하기 위해 진화전략을 교육적으로 재해석하여 학생들의 수준에서 추론하고 이해할 수 있는 스토리텔링으로 해석하였다. 다음은 스토리텔링을 위해 제시되는 상황과 진화전략에 대한 재해석이다.
산 정상에서 평지에 있는 마을로 내려가는 도중 길을 잃었다고 상상해보자. 설상가상으로 안개가 자욱하게 깔려 코앞의 상황밖에 볼 수 없는데 가진 것이라고는 등산스틱뿐이다. 이러한 상황에서 마을로 내려가기 위해선 어떻게 해야 할까? 아마도 등산스틱으로 주변을 두드려보며 경사가 아래로 향하는 방향으로 한 걸음 한 걸음 내딛어가며 내려가야 할 것이다. 최적화 방법으로 널리 알려진 경사하강법은 비용함수의 값을 최소화하기 위해 경사(gradient)를 이용하여 현재의 위치에서 경사의 반대방향으로 일정 크기만큼 이동하는 것을 반복하는 것이다. 한마디로 미분을 통해 경사를 구하고 경사가 낮은 쪽으로 조금씩 내려가는 것으로, 수학적 개념이 인공지능에 활용되는 대표적인 예이다.
진화전략은 고등학교 미분이 다루는 경사를 미분 없이 확률ㆍ통계로 근사시키는 것으로, 안개가 자욱하게 깔려 있어 등산스틱으로 주변에 대한 정보를 얻듯이 등산스틱 대신에 여러 마리의 로봇개미를 주변에 뿌려서 그 주변위치의 높이(함숫값)에 대한 정보를 얻는 것으로 스토리텔링 할 수 있다. 높이(함숫값)에 대한 정보를 얻기 위한 표본의 분포는 확률의 영역에서 다루며 얻은 표본의 수치적 처리는 통계의 영역에서 분석하여 경사가 아래로 향하는 곳으로 반복하여 나아가는 것을 진화전략 알고리즘의 핵심적인 스토리텔링으로 삼을 수 있다.
본 연구는 앞 절의 (ㄱ)의 수식을 쉽게 스토리텔링하여 현재의 위치에서 주변에 로봇개미들을 random하게 뿌려 그 위치의 높이에 해당하는 정보를 얻고, 높이(함숫값)를 가중치로 삼아서 위치의 변화량의 평균을 구하는 것으로 해석하였다. (ㄱ)에서
수학자이자 컴퓨터 과학자, 교육자였던 Papert는 발달심리학자 Piaget와 3년간의 공동연구를 통해 Piaget로 대표되는 구성주의(Constructivism) 와 구별되는 구성주의(Constructionism) 교육철학을 정립하였다(Papert & Harel, 1991; Ackermann, 2001). Papert(1972)는 중학교 기하에 소개되는 도형의 핵심이 선분과 각이고, 그것을 흰 눈이 내린 운동장에서 발자국으로 만들려면 앞으로 가고 옆으로 도는 행동에 있음에 착안하여, 중학교 유클리드 기하의 5개의 공리(axiom)와 자와 컴퍼스라는 2개의 도구 대신에 “가자”와 “돌자”라는 2개의 핵심적인 스토리텔링(powerful idea) 명령으로 기하 도형을 만들고 거북 및 동료 학습자들과 수학적 의사소통을 할 수 있는 코딩환경으로 ‘Logo’ 수학나라(Mathland)를 개발하였다. 영어단어 ‘construction’은 기하에서 작도라는 뜻이 있는데, 이러한 이유로 Papert는 자신의 구성주의를 Constructionism이라 불렀다(Papert & Harel, 1991). Constructionism의 핵심은 지식은 단순히 전이되는 것이 아니라 학습자가 마음속에서 능동적으로 구성하는 것이라는 Constructivism의 기본 관점을 전승하면서, 학습자가 전략적으로 주어진 교수 환경을 도구(media)로 상호작용하며 수학적 지식과 기호를 물리적 구성 활동을 통해 내면화 하는 것에 있다(Papert, 1980; Ackermann, 2001; Choi, 2020; Chung, 2020). Logo는 이러한 학습자의 구성을 위해 ‘가자’와 ‘돌자’와 같은 거북이를 움직이는 명령어들과 조건, 제어, 반복 등의 명령을 통하여 화면에 그림을 그리는 컴퓨터 기반 학습 환경이다(Cho, 2003; Choi, 2020). Papert는 자신의 Logo를 실제의 세계에 존재하는 문제와 유사한 제한된 환경의 문제공간으로서 이상적인 마이크로월드(Microworld) 환경이 될 수 있다고 하였다(Papert, 1980; Kim, 2004).
마이크로월드는 적절한 과제와 교육 체계가 있을 때 제한된 환경 내에서 대상에 대한 조작(operations)을 통해 학습자의 수준에 맞게 자신에게 의미있는 세계를 구성하고, 조작에 의해 결합된 대상을 또 다른 하나의 대상으로 인식하면서 구조화해나가는 경험을 제공하는 컴퓨터 환경을 지칭한다(Clements & Sarama, 2002; Kim, 2004; Choi, 2020). 마이크로월드에서 학생들은 대상에 대한 조작을 통해 학습자에게 의미있는 세계를 구성하며 지식을 습득하고, 컴퓨터 화면을 통해 피드백을 돌려받아 학습과정의 사고를 반성할 수 있다(Hoyles, Noss, & Adamson, 2002). 수학적 마이크로월드는 수학적 대상물들(objects)과 대상물들의 수학적 조작(operations)의 법칙이 있는 마이크로 공간으로, 학습자가 수학적 개념과 구조를 능동적으로 구성하도록 유도하기 위해서는 수학적 objects와 operations을 학습자의 탐구 능력에 맞도록 고안되고 표현되어 제시되어야 한다(Cho, 2003).
본 연구에서는 특별히 부등식 영역에서의 최대ㆍ최소 문제 상황으로 이어질 수 있는 이변수 함수의 탐구를 위해, 원소나열법과 조건제시법으로 수학적 대상을 만들고 또한 자유로운 조작 활동이 가능하도록 설계된 Constructionism 기반 3차원 터틀크래프트(Turtlecraft) 마이크로월드 환경을 도입한다. 또한 온라인 환경에서 최대ㆍ최소 탐구를 파이썬 코딩으로 할 수 있도록 구글 코랩(Google Colab, 이하 Colab)을 활용하여 파이썬 코드의 핵심부분을 학생들이 직접 조작해보며 직관적인 이해와 수학 실험을 할 수 있는 환경을 설계한다. 과거의 마이크로월드가 PC 기반의 개인적 탐구환경이었다면, 본 연구에서는 온라인 기반의 수학적 마이크로월드 환경을 설계하여 교육현장에 바로 적용될 수 있도록 하였다.
마인크래프트(Minecraft) 게임은 학생들에게 아주 인기 있는 3차원 게임환경이다. 터틀크래프트(Turtlecraft)는 마인크래프트와 유사한 3차원 좌표계 마이크로월드로 방정식과 함수 그리고 논리로 이루어진 조건식을 만족시키는 해집합을 통해 다양한 함수의 그래프와 입체적인 구조물 등을 조건제시법 코딩으로 만들 수 있도록 설계되었다(Chung & Cho, 2020; Chung, 2020). 이러한 특성을 바탕으로 터틀크래프트는 초등수학의 내용부터 고등수학 이상의 수학적 대상을 구현하는데 활용될 수 있으며, 실제로 공간능력(Lee, 2016; Jeong, Lee, & Cho, 2016), 자유학기제(Kim, Seo, & Cho, 2018), 대수적 코딩(Jeong & Cho, 2020), 수학적 창의성의 발현과의 관계(Chung & Cho, 2020)등 수학교육 현장에 연계하는 연구들이 있다.
본 연구에서는 최대ㆍ최소 문제의 시각화와 탐구를 위하여 3차원 터틀크래프트 코딩환경과 2차원 파이썬 애니메이션을 Colab 환경을 통해 접근한다. 터틀크래프트와 Colab 환경은 별도의 설치 없이도 인터넷 환경의 웹브라우저를 통하여 곧바로 사용할 수 있는 코딩환경이다.
최대ㆍ최소 문제 상황으로 연계되는 다양한 함수
본 절에서는 서로 다른 두 주사위의 눈의 합과 같은 교과서 내의 친숙한 예시에서 출발하여 수학적 표현을 기반으로 한 코드를 통해 간단한 이변수 일차함수
먼저 교과서 내의 친숙한 예시인 서로 다른 두 주사위의 눈의 합에서 탐구를 시작해본다.
3D Turtlecraft visualization 이는 두 주사위의 눈이 모두 1이 나오면 1 + 1 = 2층에 블록을 쌓고 두 눈이 모두 6이 나오면 6 + 6 = 12층에 블록을 쌓는 것으로, 빨간색 동그라미로 표시된 것과 같이 각각 3차원 좌표 (1, 1, 2), (6, 6, 1 2)에 대응한다. 아래의 코드는 1부터 6까지
터틀크래프트에서는 블록의 종류마다 번호가 매겨져 있어서 학생들은
이는 두 주사위의 눈이 모두 1이 나오면
터틀크래프트에는 수학적 개념이 담긴 다양한 내장함수들이 있다. 이 내장함수들은 최대ㆍ최소 탐구에 핵심이 되는 이변수 함수
예를 들어
이러한 탐구를 바탕으로 학생들에게 보다 현실감 있는 수학적 구성물의 예시로 산과 호수 등의 지형을 만들어보며 최대ㆍ최소 문제 상황을 접근해본다.
이처럼 학생들은 조건제시법, 집합 등의 수학적 표현을 기반으로 한 코드를 활용하여 간단한 이변수 일차함수에서부터 피라미드, 원뿔, 여러 지형이나 구조물 등을 조건을 만족하는 해집합으로 접근하여, 창의적으로 코딩하고 탐구해보며 다양한 최대ㆍ최소 문제 상황을 시각화할 수 있다(learning by making). 이러한 터틀크래프트를 활용한 3차원 시각화 및 구성주의 학습은 다음 절에서 다루는 파이썬을 통한 2차원 시각화와 애니메이션을 통한 최대ㆍ최소 탐구로 연계된다.
본 연구에서는 파이썬 언어로 된 코드의 실행을 위해서 별도의 설치 없이 사용자가 인터넷 환경의 웹브라우저를 통하여 바로 클라우드 컴퓨팅을 할 수 있는 Colab에 가상 실습환경 구현하였다.
수학적 실험탐구에서는 터틀크래프트에서 다루었던 다양한 함수에 대하여 2차원 등고선으로 표현하고 구체적인 계산과 함께 애니메이션을 만들어 최대ㆍ최소 탐구과정을 시각화하여 제공한다.
본 연구는 함수식 및 수학적 내용이 담긴 핵심 코드를 조작하며 최대ㆍ최소 문제 탐구는 물론 확률ㆍ통계적 지식이나 인공지능에 쓰이는 개념들을 안내하도록 스토리코딩하여 탐구환경을 설계하였다.
또한, 탐색하고자 하는 여러 함수를 드롭다운 형식을 통하여 선택하도록 하면 학생들이 코딩언어로 표현한 수학식을 입력할 때 생길 수 있는 오류에 대한 통제가 가능하다. 이렇게 설계된 환경에서는 입력의 조합을 달리 선택하여 시행할 때마다 다른 출력 결과를 즉시로 확인할 수 있다.
더불어 Colab에서 제공하는 탐구환경은 파이썬 코드는 물론 주석, 이미지, 동영상 등을 첨부할 수 있어 교육용 자료를 제작하거나 학생들끼리 서로 공유하며 소통을 하며 협력학습을 하기에 유용한 환경을 제공한다.
구현된 수학적 실험탐구의 다른 특징은 실행결과화면에서 함수의 그래프를 2차원 등고선으로 표현하며 주어진 초기 위치에서 최댓값 또는 최솟값으로 찾아가는 모습을 시간에 따라 화살표의 이동으로 표현한 애니메이션을 구현한 점이다.
더 나아가 심화된 학습을 위해서는 구현된 입력 화면을 더블클릭하여 소스코드를 제공 받을 수 있으며, 스토리텔링으로 이해하고 있는 진화 전략의 알고리즘이 어떻게 구현되어 있는지 확인할 수 있다. 또한 이는 다른 설정을 적용한 실행 코드로 수정 가능하기 때문에 다양한 탐색으로 확장이 가능하다.
본 장에서는 중학교차원의 직관적인 모형에서부터 정규분포를 도입하는 진화전략의 단계별 도입전략 및 스토리텔링에 대해 살펴본다.
본 절에서는 진화전략의 핵심 아이디어를 중학교 차원에서 재조직하여 단계적으로 탐구해본다. 먼저 일변수 함수에서 탐구를 시작하여 서로 다른 주사위를 던져서 나올 수 있는 두 눈의 합이 그렸던
앞서 진화전략의 수식 중
먼저 로봇개미를 뿌릴 때, 편향된 정보조사가 되지 않도록 고르게 뿌려야 함을 스토리텔링하여 제시할 수 있다. 이와 관련한 개념으로 초등학교부터 배우는 평균의 개념을 도입하면
이제 앞에서 다루었던 서로 다른 주사위를 던져서 나올 수 있는 두 눈의 합의 상황으로 돌아가 이변수 함수로 나아가본다.
학생들은 간단한 산수를 통해
일련의 과정은 간단한 평균의 개념만 가지고도 직관적인 스토리텔링과 컴퓨터의 계산능력을 활용해 기초적인 최적화를 진행한 것이다. 물론 기초적인 모형은
로봇개미의 분포와 관련하여 학생들이 직관적으로 떠올릴 수 있는 로봇개미의 배치로
한편 자원의 한정된 상황, 예를 들어 로봇개미를 작동시키기 위한 배터리 시간 제약 등의 효율성에 대한 스토리텔링을 통해 로봇개미의 표본추출(sampling)의 필요성을 제시하고, 로봇개미의 개체수를 줄이는 전략으로 균등분포(uniform distribution)와 정규분포(normal distribution)를 도입할 수 있다.
학생들에게는 정규분포보다는 균등분포가 직관적으로 randomness에 더 가까울 수 있다. 이에 먼저 균등분포를 적용한 탐구들을 통해 원하는 최댓값 혹은 최솟값 근처에서 진동 가능성, 가까운 정보를 더 많이 반영하는 것의 필요성 등을 살펴보고 그 과정을 스토리텔링하여 정규분포의 도입을 유도한다.
물론 표준편차(
지금까지는 여러 함수의 정의역이 이산집합인 경우로 함수의 그래프가 이산적(discrete)으로 그려졌다면, 정의역이 연속(continuous)인 경우를 포함하여 함수의 최대ㆍ최소 탐색을 확장한다. 앞선 장의
앞선 과정들을 통한 알고리즘을 쉽게 표현하면 현재위치를 기준으로 정규분포를 따르는 로봇개미들을 주변에 random하게 뿌려
이를 바탕으로 본 절에서는 진화전략을 미분 불가능한 경우의 다양한 연속함수
확률ㆍ통계의 개념으로 미분 없이도 최대ㆍ최소를 탐구할 수 있는 진화전략은 고등학교를 넘어 대학교 수학교육까지 연계될 수 있다. 다음의
일련의 과정은 앞서 Constructionism 기반 코딩 환경에서 구성주의 학습으로 그렸던 다양한
진화전략을 다양한 최대ㆍ최소 문제 상황에 적용하는 탐구와 더불어 진화전략의 알고리즘을 스토리코딩하며 코드를 분석하고 파라미터들을 조작하는 과정을 통해 고등학교 확률ㆍ통계의 수학적인 개념이나 인공지능에서 사용되는 여러 개념들을 살펴볼 수 있다.
먼저 지금껏 확률ㆍ통계의 학습에서 주로 교과서 내의 주어진 자료의 분산과 표준편차(
다음으로 매 시행마다 로봇개미들을 통해 경사(gradient)의 근삿값을 얻었어도 그 값을 다르게 반영하면 최적화가 다르게 진행될 수 있음을 탐구할 수 있다. 이와 관련한 개념으로 학습률(learning rate)을 보폭(step size)이라 한다면 보폭이 너무 크면
앞서 학생들이 정의역이 이산집합인 경우에
지금까지의 과정에서 본 절의 알고리즘은 매 시행마다 200마리의 로봇개미들을 랜덤하게 뿌려서 각각의 [로봇개미의 위치변화량]×[높이(함숫값)]들의 평균을 구하며, 그 과정에서 함숫값에 대한 표준화를 한다. 사실 이 과정은 컴퓨터로는 몇 초 밖에 걸리지 않지만 손으로 일일이 계산하기에는 거의 불가능할 정도로 매우 방대한 양이다. 해당 알고리즘을 살펴보면 실제로 이 200개의 data를
마지막으로 실제 최적화에서 주요한 문제인 local maximum/minimum에 대해서도 살펴볼 수 있다.
로젠브록 함수(Rosenbrock function) 는 실제 인공지능에서 사용되는 최적화 연구자 차원의 함수로 그 그래프는
본 연구에서 다룬 진화알고리즘을 적용해보면
지금까지 진화전략의 핵심 아이디어를 함수의 그래프가 그리는 지형의 최대ㆍ최소 문제에 적용해봄으로써 여러 긍정적인 측면과 함께 한계점 또한 탐구해보았다. 본 연구에서 사용한 진화 전략 파이썬 코드는 100줄도 안 되는 아주 짧은 것으로, 실제 인공지능에 활용되는 코드에 비하면 매우 단순한 코드이기에 한계점이 있는 것은 당연하지만 한편으로는 그 아이디어 하나만으로도 다양한 탐구가 가능하기에 진화전략이 실제로 왜 이렇게 각광을 받는지 알 수 있다.
2021년부터 인공지능 수학이 고등학교 선택과 목으로 도입되는 상황에 맞추어, 본 연구는 중학교 차원의 직관적인 최적화 방법에서부터 시작하여 확률ㆍ통계 기반의 진화전략으로 최대ㆍ최소 문제를 도입하였으며, 궁극적으로 인공지능 수학에 도입되는 미분 기반의 경사하강법으로 융합될 수 있도록 하였다. 구체적으로 본 연구는 피라미드와 원뿔 등과 관계된 최대ㆍ최소 문제 상황을 도입하고, 진화전략의 아이디어를 주사위 실험으로 재조직하여 미분 없이 평균의 개념만 가지고도 탐구를 시작할 수 있도록 하였으며, 나아가 인공지능 수학의 경사하강법과 융합될 수 있도록 탐구과정을 설계하여 제시하였다. 또한 codingmath.org 주소의 인공지능 수학 공지를 통해 학생들은 설계된 Colab 파이썬 코딩환경과 터틀크래프트 코딩환경에 접근할 수 있으며, 그곳에서 직접 코딩기반의 탐구를 수행할 수 있도록 본 연구에 사용된 모든 코드가 설명과 함께 제시되어 있다. 본 연구에서 제시한 진화전략 기반의 최대ㆍ최소 문제 탐구과정과 이를 위한 코딩환경은 다음과 같은 특징과 시사점을 내포하고 있다.
첫째, 미분을 다루지 않는 저학년 학생을 위해 확률ㆍ통계 기반의 진화전략으로 경사하강법을 도입하고, 심화된 수준에서는 미적분 기반의 경사하강법까지 연계시킨다. 이렇게 확률ㆍ통계와 미적분을 융합하는 탐구과정을 통해 서로 다른 영역이라고 여겨질 수 있는 미분과 확률ㆍ통계에 대한 통합적 시각을 제공한다.
둘째, 최대ㆍ최소 문제를 수학적 실험이 가능토록 재구성하여, 학습자의 직관적 이해와 코딩 기반의 수학적 탐구활동을 통해 접근한다. What-if 질문을 만들고 컴퓨터를 이용해 시각화하고 계산하며 수학적 논리로 뒷받침한다. 이러한 탐구활동을 통해 자연스럽게 3차원 좌표와 등고선, 함수
셋째, 컴퓨터와 함께 자신의 문제를 해결하는 컴퓨팅 사고력(Computational Thinking) 역량을 키운다. 학생들이 수학적 아이디어를 바탕으로 컴퓨터와 함께 문제를 해결하는 자신감과 욕구를 키우는 것은 인공지능 기반의 4차 산업혁명 시대에 필요한 수학적 역량과 컴퓨팅 사고력 역량을 기를 수 있는 좋은 계기이다. 나아가 일련의 과정은 플래피버드 게임 코딩이나 주가탐구로 발전이 가능할 것이다.
요사이 인공지능 시대에 필요한 수학교육을 위해 기존 교육과정 내의 변화의 움직임은 물론 자유학년제, 방과 후 교실, 영재센터와 같은 교육기관 등에서도 다양한 시도들이 이루어지고 있다. 탐구의 과정에서 살펴보았듯이 행렬, 알고 리즘과 순서도 등과 같이 현 교육과정에서는 다루고 있지 않지만 컴퓨터와 함께 다루어질 때 재조명 될 수 있는 많은 수학적 개념이 있다. 진화전략 역시 컴퓨팅 파워의 발전과 함께 그 수학적 아이디어가 재조명 되어 다양한 분야에 활용되는 것이다. 종이가 없었던 시대의 수학교육과 종이가 있는 환경의 수학교육을 비교할 수 있듯이, 정적인 교육 환경에서 다루어지지 못했던 많은 개념들을 컴퓨터의 동적인 환경에서 새롭게 이해하고 적용할 필요가 있다. 이러한 노력을 바탕으로 컴퓨터와 함께 문제를 해결하는 AI시대에 꼭 필요한 수학적 역량을 기를 수 있는 다양한 교육과정들이 필요할 것이다.
1) 표기를 단순화하기 위해 1차원
2) 터틀크래프트 : codingmath.org, Colab URL: codingmath.org 주소의 공지사항에 “인공지능 수학 (최대최소)”
3) 최대ㆍ최소 문제와 관련하여 현행 교육과정에서 다루고 있는 내용으로 경제수학의 부등식의 영역과 선형계획법을 들 수 있다. Choi, Lee, & Kim(2010)은 기존의 선형계획법을 지도하는 데에 있어서, 학생들이 단순히
4) 복셀(voxel)은 부피(volume)와 화소(pixel)의 합성어로, 2차원 평면을 구성하는 최소 단위인 화소의 개념을 3차원 공간의 최소 단위인 큐브(cube)로 확장한 것이다(Chung, 2020).
5)
6) codingmath.org 주소의 공지사항 중 “인공지능 수학 (최대최소)”에서 “(클릭) 파이썬 탐구자료 및 코딩환경 바로가기” 링크를 클릭하면 Colab을 통한 탐구환경으로 연결된다.
7) 본 절에서는 중학생들의 이해를 돕기 위하여
8) Randomness의 필요성을 위해 고등학교 차원의 경우 경사하강법과 관련하여 Stochastic Gradient Descent가 Batch Gradient Descent에 비해 갖는 이점들과 연관지어 설명하는 스토리텔링도 생각해 볼 수 있다.
9) 예를 들어 최댓값이나 최솟값 근처가 아닌 곳에서는 균등분포를 적용한 알고리즘의 진행속도가 더 빠를 수도 있다.
pISSN 2288-7733
eISSN 2288-8357
Frequency : Quarterly