현재 시간:0:00전체 재생 길이:5:28
0 에너지 포인트

알고리즘이란 무엇이며, 왜 중요한가요?

동영상 대본
알고리즘은 무엇일까요? 우선, 일을 처리하기 위한 단계라고 정의할 수 있겠네요 집으로 오는 방법 샌드위치를 만드는 방법 마트에서 원하는 물건을 찾는 방법 같이요 컴퓨터 공학에서 알고리즘은 주어진 일을 처리하기 위한 일련의 단계라고 볼 수 있습니다 과학과 컴퓨터 공학의 한 분야이기도 한 알고리즘에서 좋은 알고리즘을 찾고 언제 적용할지 아는 것은 흥미로운 프로그램을 만드는데 도움을 줍니다 몇 가지 알고리즘의 예시를 들어보죠 구글 행아웃은 어떻게 실시간으로 인터넷을 통해서 빠르게 비디오를 전송하나요? 음성과 영상 압축 알고리즘을 통해서입니다 구글 지도는 어떻게 텍사스에서 플로리다까지 가는 길을 찾아서 여러분에게 알려주나요? 경로 검색 알고리즘을 통해서지요 픽사는 어떻게 3D 모델에게 가상 공간의 빛에 따라 색을 입히나요? 렌더링 알고리즘을 통해서입니다 나사는 국제 우주 정거장의 태양판의 위치를 언제 어떻게 조절할지 결정하기 위해 어떻게 하나요? 최적화와 스케줄링 알고리즘을 사용합니다 이러한 알고리즘은 그릴 치즈 샌드위치를 만드는 일상 생활 속 알고리즘 보다 훨씬 복잡하죠 하지만 목표를 달성하기 위해 일련의 단계를 이용한다는 것은 동일합니다 만약 여러분이 기존의 알고리즘을 알고 있다면 프로그램에 적합한 알고리즘을 찾는 노력이 줄어들 것입니다 예를 들면 여러분이 사용자가 컴퓨터와 대전하는 게임을 만들려고 한다고 가정해봅시다 아마 checkers 게임에서 영감을 받을 수도 있죠 컴퓨터 공학자들은 실현 가능한 움직임을 모두 보여주는 수형도에 minimax 검색 알고리즘을 사용하여 절대 지지 않는 checkers 프로그램을 만들었습니다 만약 여러분의 게임이 checkers와 비슷하다면 이러한 기술에 기반을 둔 알고리즘을 이용할 수 있을 것입니다 그렇지 않다고 하더라도 만약 게임에서 AI가 필요하다면 이 알고리즘의 단점을 잘 파악하여 여러분의 게임을 재설계할 수 있을 것입니다 새 알고리즘을 짜는 방법과 정확도와 효율성을 분석하는 것 또한 중요합니다 생명 과학에서 새로운 알고리즘은 끊임없이 개발됩니다 이는 병을 물리치는 약의 분자 구조를 디자인하는데 핵심적인 역할을 합니다 알고리즘은 기후와 날씨 패턴을 시뮬레이션 하기도 하고 또 다른 알고리즘은 천체 망원경으로 관측된 우주의 별과 천체에 대한 엄청난 양의 데이터를 검색, 분석하기도 합니다 모든 과학 분야, 그리고 칸아카데미 같은 웹 사이트에서도 거대한 양의 데이터를 분석하거나 많은 경우의 수 중 하나를 효과적으로 선택하기 위해 효율적인 알고리즘이 필요합니다 어떤 여러분이 관심 있는 분야에서든지 새로운 알고리즘은 사람들이 정말로 필요하고 중요하게 생각하는 일을 처리할 수 있는 계산 능력을 가지고 있습니다 현재 모든 알고리즘들은 똑같이 만들어지지는 않습니다. 그러면 좋은 알고리즘을 만들기 위해서는 무엇이 필요할까요? 가장 중요한 두 가지는 문제를 해결할 수 있고 그 해결을 효과적으로 하는 것입니다 때때로 우리는 알고리즘이 우리가 이미 알고 있는 결과에 대해 정확한 값을 내기를 원할 때도 있고 혹은 정확한 답이나 최적의 답을 내기를 원하지 않을 때도 있습니다 왜냐하면 정확한 답을 내는 알고리즘은 계산이 아주 오래 걸릴 때도 있으니까요 예를 들어, 창고에서 택배를 배달하는 트럭의 가장 효과적인 경로를 찾는 프로그램을 만든다고 하면 계산이 몇 주는 걸릴 것입니다 모든 경우의 수를 계산해야 하니까요 하지만 최고는 아니지만 적당한 답을 찾는다고 하면 몇 초 안에도 구할 수 있을 것입니다 몇몇의 경우에는 이것으로도 충분하죠 알고리즘의 효율성은 어떻게 측정할까요? 프로그램을 실행하고 걸리는 시간을 계산할 수도 있지만 그것은 주어진 입력에 대해서 해당 컴퓨터에서 해당 언어로 구현된 해당 방법에 대해서만 값을 구할 수 있습니다 대신 컴퓨터 공학자들은 점근선의 분석이라 불리는 방법으로 알고리즘을 하드웨어나 특정 프로그래밍 언어에 상관없이 비교할 수 있습니다 따라서 우리는 결론적으로 몇몇 알고리즘은 다른 알고리즘 보다 훨씬 효율적이라고 이야기할 수 있게 됩니다 이제 여러분은 칸아카데미에서 알고리즘과 점근선의 분석을 배울 수 있습니다 두 명의 Dartmouth 대학교수님들의 기여에 감사드립니다 Thomas Cormen은 가장 유명한 대학 알고리즘 교재의 첫 번째 저자이자 책 Algorithms Unlocked의 저자입니다 Devin Balkcom은 다트머스 대학의 컴퓨터 개론과 로봇 공학을 연구하였습니다 그는 최초로 종이접기 로봇을 만들기도 했습니다 Tom과 Devin은 여러분에게 APCS 와 CS101에서 배우는 다양한 알고리즘을 알려줄 것입니다 검색, 정렬, 재귀 알고리즘을 다루고 제가 개인적으로 가장 좋아하는 그래프 알고리즘도 다룹니다 시각적 자료, 퀴즈 그리고 코딩 과제 등은 여러분의 학습을 도울 것입니다