공학에서 수학이 필요한 이유 - gonghag-eseo suhag-i pil-yohan iyu

과제_김호준_컴퓨터공학부.hwp

1p : 표지

2p ~ : 내용


컴퓨터 공학에 수학은 필수적으로 따라오는 과목이다.

따라서 대부분의 대학교의 컴퓨터 공학과에서는 커리큘럼에 확률과 통계학, 이산수학, 선형대수학등의 과목을 포함한다.

프로그래밍, 빅 데이터, 인공지능, 컴퓨터 보안 등, 컴퓨터 공학의 거의 모든 분야에 수학이 사용된다.

오히려 사용하지 않는 곳을 찾기 더 힘들다고 할 수 있다.

컴퓨터 공학에서 수학이 활용된다고 하는 이유에는 '알고리즘이 수학적 내용을 담고있다.', '프로그래밍에 수학이 사용된다.', '데이터를 다루기 위해 통계나 확률 등이 사용된다.' 등 여러 이유가 있다.

위의 내용도 컴퓨터 공학에서 수학이 필요한 이유 중 하나이다. 하지만 근본적으로 컴퓨터 공학에서 수학을 필요로 하는 이유는 컴퓨터는 기계이기 때문이다. 사람이 아니다. 아래 예시를 들어 보겠다.

날씨가 덥다면, 선풍기를 틀어라

위의 문장을 사람은 쉽게 이해하고 행동할 수 있다. 하지만 컴퓨터는 어떨까? 이해하지 못한다. 날씨가 덥다는 것이 온도가 높다는 것인지, 높다면 몇도 인지 명시해줘야한다.

if( 방의 온도 > 28){
    선풍기.전원키기( )
}

다음과 같이 컴퓨터는 숫자를 이용해 명확한 규칙을 작성해주어야한다.

이처럼 사람이 보거나 듣는 것, 느끼는 것 등 여러가지를 컴퓨터가 쉽게 이해하기 위해, 숫자를 사용한다.

수학은 세상을 숫자로 표현하는 학문이고, 숫자는 컴퓨터에게 명확한 판단의 근거를 제시한다.

컴퓨터 공학에 수학이 필요한 원초적 이유 이외에도, 컴퓨터 공학에 실제로 수학이 어떻게 활용되고 있는지 알아보자.

1. 데이터 분석에 사용되는 행렬

데이터를 분석을 하는 방법 중 하나로, 수학의 행렬을 활용해 분석하는 방법이 존재한다.

아래는 프로그래밍 언어 중 하나인 Python을 활용해 데이터 분석한 것이다.

공학에서 수학이 필요한 이유 - gonghag-eseo suhag-i pil-yohan iyu
산점도 행렬

산점도행렬(scatter matrix)는 데이터의 특성간의 관계를 쉽게 알아보기 위해 사용된다.

2. 머신러닝 회귀분석에서의 평균제곱오차

평균제곱오차(MSE) : 통계학에서 사용되며, 오차의 제곱에 대해 평균을 취한 값이며, 통계적 추정의 정확성에 대한 척도로 많이 사용된다.

머신러닝은 Machine Learning, 즉 기계(컴퓨터)를 학습시킨다고 볼 수 있다.

머신러닝에서는 컴퓨터를 학습시킨 후, 특정 입력 값을 넣어주면 결과(예측) 값이 출력된다.

이때, 출력된 값이 얼마나 정확한지를 평균제곱오차를 통해 해당 모델을 평가하고 개선해나간다.

공학에서 수학이 필요한 이유 - gonghag-eseo suhag-i pil-yohan iyu
MSE

3. 컴퓨터보안에 활용되는 소수와 소인수분해

컴퓨터 보안 중 암호학은 수학으로만 이루어졌다고 해도 과언이 아닌다.

아래 암호의 두가지 종류 RSA와 ECC에 대해 알아보자

아래 내용의 경우 생활 속의 수학4강에서도 배웠다. 두 소수를 곱하는 것은 쉽지만, 곱한 수를 소인수분해 하는 것은 어렵다.

암호화는 쉽지만 복호화는 어려운 RSA는 현재 인터넷 암호화 및 인증 시스템등에 사용되고 있다.

타원곡선암호, ECC는 큰 수를 거둡제곱 꼴로 나타내는 것이 어렵다는 것을 이용하였다.

암호키의 길이가 길어지면 보안성은 좋아지지만, 속도가 저하된다. 하지만, ECC의 경우 짧은 키로도 높은 보안성을 가진다. 

공학에서 수학이 필요한 이유 - gonghag-eseo suhag-i pil-yohan iyu

4. 알고리즘의 시간 복잡도 계산

알고리즘의 소요 시간을 정확히 알 수는 없다. 따라서 자료의 수가 n일 때, 얼마나 걸리는지를 시간복잡도에 의해 나타낸다.

컴퓨터 과학에서는 알고리즘의 시간 복잡도 계산을 통해 알고리즘의 대략적인 성능을 평가한다.

공학에서 수학이 필요한 이유 - gonghag-eseo suhag-i pil-yohan iyu
공학에서 수학이 필요한 이유 - gonghag-eseo suhag-i pil-yohan iyu

5. 에라토스테네스의 체 알고리즘

고대 그리스 수학자 에라토스테네스가 발견한 알고리즘으로 소수를 찾는 알고리즘이다.

100이하의 소수를 에라토스테네스의 체 알고리즘을 통해 찾아보겠다.

  1. 일단 1부터 100까지 숫자를 나열한다.
  2. 소수도, 합성수도 아닌 유일한 자연수 1을 제거한다.
  3. 2를 제외한 2의 배수를 제거한다.
  4. 3을 제외한 3의 배수를 제거한다.
  5. 2, 3 다음으로 남아있는 가장 작은 소수, 즉 5를 제외한 5의 배수를 제거한다.
  6. 위와 같이 7의 배수 또한 제거한다.
  7. 11도 소수지만 11의 제곱은 121로 100을 초과하기 때문에 지울 필요 없다.

이므로 11보다 작은 수의 배수들만 지워도 충분하다. 즉, 120보다 작거나 같은 수 가운데 2, 3, 5, 7의 배수를 지우고 남는 수는 모두 소수이다.

#include <stdio.h>

//범위의 소수 판별 
void find_primeNumber(int target) {

    bool arr[target+1]; // 숫자를 지울 배열
	
    arr[0] = true;
    arr[1] = true;

    // 2부터 특정 수의 배수에 해당하는 수를 모두 지움
    for(int i=2;i<=target;i++) {
        if(arr[i]) continue; // 이미 지워진 수라면 건너뜀

        // 이미 지워진 숫자가 아니라면, 해당 숫자의 배수를 모두 true로 만듦
        for(int j=2*i;j<=target; j+=i) {
            arr[j] = true;
        }
    }

    // 남아있는 수를 모두 출력 (배열에서 false인 index) 
    for(int i=2;i<=target;i++) {
        if(!arr[i]) printf("%d ", i);
    }
}

int main(void) {
    find_primeNumber(120); //120까지 
    return 0;
}

과제_김호준_컴퓨터공학부.hwp

0.37MB

공학에서 수학이 필요한 이유 - gonghag-eseo suhag-i pil-yohan iyu

자연과학 계열을 꿈꾸는 학생이라면 수학은 너무도 중요한 과목임을 알 수 있습니다. 학습을 계획할 때 다른 과목과의 균형을 확인하면서 수학의 비중을 늘릴 필요가 있습니다.

일반계 고등학교에서는 빠르면 2학년, 늦어도 고등학교 3학년 1학기에는 수능 관련 과목을 모두 끝낼 것입니다. 고등학교 내내 수학을 위한 노력을 늦춰서는 안 된다는 것을 알 수 있습니다. 모의고사 범위도 확장되므로 최근에 받은 모의고사 성적에 만족하지 말고 꾸준히 노력해야 합니다.

자연과학 계열, 즉 농림/수산, 수학/물리/천문/지구, 화학/환경/생명과학 등 자연과학과 관련된 학과를 희망한다면 ‘수학은 기본으로 공부해야 한다’라는 생각을 합니다.

자연과학 계열의 진로를 희망하는 학생 중 절반은 ‘수학을 잘해서 혹은 좋아해서 진로를 자연계열로 선택했다.’, 나머지 절반은 ‘수학을 잘해야 하는데 그렇지 못해 걱정이다’.라고 생각할 것입니다. 자연과학 계열의 학과 대부분은 수학을 중요한 과목으로 요구하고 있습니다. 이번 수능과목 선택이나 논술 과목에서도 알 수 있습니다.

서울대학교 자연과학대학 지구환경과학부 H학생은 "고등학교 때 배운 [수학Ⅰ], [수학Ⅱ], [미적분], [확률과 통계], [기하]는 대학에서 과학을 논리적 학문으로 배우려는 기초 중의 기초"라고 말했습니다.

농업생명과학대학 농·경제 사회학부 L학생은 "깊게 공부할 필요가 있는 교과목을 꼽자면 단연 수학"이라고 말했는데요. 자연과학계열에서 매우 중요한 수학 과목에 대해 자세히 살펴봅시다.

■ 자연과학 계열 학과와 수학 과목의 연계 정도   

공학에서 수학이 필요한 이유 - gonghag-eseo suhag-i pil-yohan iyu
*출처=단행본 '수학끝판왕'  

[ 자연과학 계열 Q&A ] 
Q. 고등학교 수학과 대학교 수학은 많이 다른가요? 
A. 다르긴 하지만, 완전히 다른 내용을 가르치지는 않습니다. 자연과학 계열을 지원한다면 아무리 수학을 피한다고 해도 대학교[미적분학]까지 피할 수 없습니다.

즉, 자연과학 계열인 경우 대학교에 가서 반드시 수학을 배웁니다. 그때 수학을 잘 하기 위해서는 고등학교 수학의 기초를 닦아둘 필요가 있습니다.

자연과학 계열에서 수학을 가장 많이 하는 학과인 ‘수학과’에서 배우는 수학을 기준으로 고등학교 과목이 어디로 연결되는지 화살표로 정리했습니다. 고등학교에서 배운 내용이 대학교의 내용과 관련 있다는 것을 알 수 있습니다.

공학에서 수학이 필요한 이유 - gonghag-eseo suhag-i pil-yohan iyu
*출처=단행본 '수학끝판왕'  

Q. 과학을 공부하는 데 수학이 정말 도움이 되나요? 
A. 당연하죠! 물리, 화학, 생명과학에서는 수학이 정말 중요합니다. 수학은 기초 학문으로써 과학의 다양한 법칙을 이해하는 데 도움이 됩니다.

물리에서 대표적인 '물체의 운동(속도, 가속도 등)'은 미적분 개념을 활용하기 때문에 수학적 사고력 없이는 공식에 적용하는 것조차 어렵습니다. 또, 화학에서는 화학식 계산을, 생명과학에서는 교차율, 유전율 등의 개념을 외우지 않고 이해하기 위해서는 수학이 밑바탕이 돼야 합니다.

직접 눈으로 확인하고 싶다면 도서관에 가서 전공 서적을 펼쳐보기 바랍니다. 아주 많은 내용들을 수식으로 설명하고 있다는 것을 알 수 있습니다.

필자 | 안계정 유원멘토입시연구소장   
물리·수학교육학을 전공한 이공계열·의치한의학계열 입시 및 취업컨설턴트. EBS 진학마스터 심화과정 및 EBS 과제탐구과정 강사로 활동하고 있다. 저서로는 [공학계열 진로로드맵] [의학·생명 진로로드맵] [나는 탐구보고서로 대학간다] [공부끝판왕] [수학끝판왕] [수학오답의 모든것] [약대바이오계열 진로로드맵(심화편)] [의·치·한의학계열 진로로드맵(심화편)] 등이 있다.  

제공 | 꿈구두 교육플랫폼   
'꿈구두' 교육플랫폼은 교육정보에 소외된 지역에 골고루 정보를 공유하며 공교육의 상향평준화를 위해 노력하는 기업입니다. 전국의 선생님과 학생의 미래를 돕기 위해 노력하고 있습니다. '꿈구두 교육플랫폼' 프로그램 및 콘텐츠 문의 010-2618-0187  

*에듀진 기사 URL: http://www.edujin.co.kr/news/articleView.html?idxno=36980
기사 이동 시 본 기사 URL을 반드시 기재해 주시기 바랍니다. ​​​​​   

공학에서 수학이 필요한 이유 - gonghag-eseo suhag-i pil-yohan iyu
[꿈구두] '고등학생 진로진학 필독서 세트' 배너 클릭!