[독후감] #38. 알고리즘 행성 여행자들을 위한 안내서 by 제바스티안 슈틸러 - 게으름의 미학, 알고리즘.

in #kr-book6 years ago

282.jpg


@beoped 님의 글에서 이 책이 재미있다는 얘기를 보고 바로 읽어봐야겠다는 생각을 했다. 책 제목이나 재미있는 그림의 표지도 호기심을 한껏 높여줬다. 수학에 문외한인 나도 한번 도전해볼 수 있는 책일까?


알고리즘이 뭐지?


알고리즘은 뭘까? 여기저기에서 많이 보긴 했는데, 뭔가 어려운 수학/컴퓨터 용어일 거라는 생각만 들 뿐 알고리즘이 뭔지 정확히는 몰랐던 것 같다. 알고리즘은 어떤 문제를 가장 빠르고 손쉽게 해결하기 위한 절차, 방법, 규칙, 순서 등을 가리킨다. 예를 들어 지하철 운행 간격은 어느 정도로 하는 것이 가장 좋은지, 출발지와 도착지까지의 최단 경로를 찾으려면 어떻게 하는 게 좋은지 등등의 문제를 풀 때 몇 가지 규칙을 적용한 알고리즘을 만들면 보다 빠르게 문제를 해결할 수 있다. 쉽게 말하자면 내 머리로는 바로 해결이 안 돼서 컴퓨터에게 일을 시키고 싶은 문제들을 해결해주는 게 알고리즘이라고나 할까.

이렇게 써놓고 보니까 왠지 알고리즘은 수학자나 컴퓨터 프로그래머들만 책상 맡에 앉아서 쓰는 것처런 느낄 수 있지만, 실상 알고리즘은 우리의 실생활에 아주 가깝게 들어와 있다. 위에 언급한 지하철 운행 시간이라든가, 네비게이션의 경로 찾기뿐만 아니라 내 책장에 책을 어떤 순서로 배치할 것인지, 옷장의 옷은 어떻게 정리하고 그 옷들을 어떤 조합으로 입을 것인지, 여행 갈 때 짐가방을 어떻게 효율적으로 쌀 것인지 등에 대해서도 적용할 수가 있다.

그런데 왜 굳이 알고리즘을 만들어서 적용해야 하냐고? 그건 알고리즘을 만들어 놓으면 최상의 결과를 도출해낼 수 있을 뿐만 아니라, 알고리즘 없이 매번, 일일이, 하나씩 대조하고 체크해가며 손으로 계산하는 것보다 훨씬 더 적은 노력이 들기 때문이다. 쉽게 말해 게으름을 부려도 되니까.



출처: 북이오


게으름의 미학 알고리즘


실제로 이 책에서는 알고리즘을 게으름의 미학이라고 말하고 있다.


알고리즘은 게으름의 예술이다. 많은 사람들이 게으름을 피우고 싶어 한다. 그러나 게으름을 피웠다가는 결국 더 많은 비용이 초래될 뿐이다. 문제를 일으키지 않고 거의 대부분의 시간을 게을리 지내기 위해선 알고리즘이 필요하다. 이를 위해서는 지식과 총명한 정신, 결연함이 요구되며, 결정적인 순간에 고생하는 것을 두려워하지 않아야 한다. 알고리즘이 빛나는 것은, 알고리즘이 주어진 과제를 완벽한 게으름으로 흠 없이 이행해내기 때문이다.


책장에 꽂을 책이 열 권밖에 없다면 문제가 없다. 내 옷장에 옷이 스무 벌밖에 없다면 괜찮다. 하지만 정리해야 할 책이 1,000권이라면? 정리할 옷이 100벌이 넘는다면? 하나씩 일일이 대조해서 체크하고 정리하기란 얼마나 귀찮고 오래 걸리는 작업인가! 이런 작업을 위해서는 알고리즘의 도움을 받는 것이 절대적으로 유리하다.


우리가 그저 덜 번거로운 방법으로 해결책을 찾으려다 보니, 어떻게 하면 일을 더 쉽게 처리할지 고민하다 보니, 알고리즘의 성능이 저절로 향상되는 것이다.


이 책에서는 알고리즘을 사용하는 것이 특별한 것이 아니라, 매우 자연스럽고 인간적이기까지 한 일이라고 설명한다. 그리고 그 알고리즘은 우리 생활 곳곳에 포진해 있다.


알고리즘은 자동차 디자이너의 차체 디자인을, 건축가의 건물 설계를 달라지게 한다. 알고리즘은 우리가 살아가고 있는 세상의 틀이자, 우리의 취향을 발전시키는 기본 틀을 만들어낸다. 알고리즘은 아이들이 보는 만화영화 캐릭터들의 모습을 만들어내고, 우리 행동의 밑그림을 제시하기도 한다. 알고리즘은 우리 경제체제를 조직하는 데 영향을 미치고, 우리가 음악이나 타인의 의견을 인지하는 방식에도 관여한다. 가족사진을 고르거나 오늘 저녁에 볼 영화를 선택할 때도 우리는 알고리즘에 기댄다. 알고리즘은 학문을 조금씩 변화시킨다. 국가가 누군가에게 혐의를 품고, 어떤 백화점에 출입금지 조치를 내릴지 결정하는 데도 알고리즘이 활용된다. 가까운 장래에는 자동차를 운전하는 것도 알고리즘에 따르게 될 것이다. 물론 그렇더라도 알고리즘이 운전의 즐거움을 느끼지는 못할 테지만 말이다.


안내서를 위한 안내서는 없나요?


책을 읽고 나면 막연하게 멀게만 느껴졌던 '알고리즘'이 매우 가까운 곳에 있다는 걸, 그리고 매우 유용하다는 걸 깨닫게 된다. 이메일 사서함에서 스팸을 걸러내는 기술도 알고리즘이 적용된다니, 스팀잇에서 어뷰져를 걸러내는 데에도 알고리즘이 효과적으로 쓰일 수 있지 않을까 싶기도 했고.

알고리즘에 대해 조금이나마 알게 된 것이 좋은 점이긴 한데, 책을 읽으며 아쉬운 부분도 있었다. 내가 워낙 수학이나 컴퓨터 쪽을 몰라서 그럴 수도 있겠지만, 설명이 좀 더 자세했으면 싶었던 부분들이 있었다. 또한 책에는 어려운 용어들(처음 접하는 용어들)이 무척 많이 나온다.


버블 정렬(bubble sort), 병합 정렬(merge sort), 깊이 우선 탐색(Depth First Search, DFS), 지연 결정의 원리(Principle of deferred decision), 인접 노드(neighboring nodes), 외판원 문제(Traveling Salesperson Problem, TSP), 충족 가능성 문제(Satisfiability Problem, SAT), 비결정 다항식(Nondeterministic Polynomial, NP), 중국인의 나머지 정리 (Chinese remainder theorem)...


물론 이 용어들에 대해서 설명은 해주고 있지만, 기초적인 지식이 없는 사람에게는 그 설명을 읽어도 다소 버겁게 느껴질 수 있다. 이 안내서를 위한 안내서는 없는 걸까?


그래도 알고리즘에 대해 적으나마 친밀감을 갖게 된 건 발전이라고 생각한다. 우선 나부터만 해도 알고리즘을 내 생활에 적용시켜봐야겠다는 생각을 했으니까. 수많은 읽을 책 리스트들 중에 어떤 책을 어떤 순서로 골라 읽을지, 쓰고 싶은 시리즈들 중에 어떤 글을 먼저 써야 할지 등도 알고리즘으로 효율적으로 정할 수 있지 않을까?

알고리즘에 대해 평소 궁금해하셨던 분들이라면 이 책을 추천하고 싶다. 수학이나 컴퓨터 쪽에 약간의 지식이 있다면 더 쉽게 읽으실 수 있을 것이다.



제목: 알고리즘 행성 여행자들을 위한 안내서
저자: 제바스티안 슈틸러
출판사: 와이즈베리





[독후감] 지난 독후감들 최근 5개 링크입니다.
@bree1042를 팔로우하시면 더 많은 독후감들을 받아보실 수 있습니다. ^^

33. 와일드 by 쉐릴 스트레이드 - 위험해도, 무서워도, 두려워도. 나는 계속 걸었다.

34. 아무것도 하지 않을 권리 by 정희재 - 목이 타는 한 여름에 미지근한 물

35. 1984 by 조지 오웰 - 소름 끼치도록 현재를 그리고 있는

36. 마션 by 앤디 위어 - '지구인'을 그리고 있는 '화성인'

37. 책도둑 by 마커스 주삭 - 모든 것은 책 속에 있다. 희망도, 길도, 구원도.

Sort:  

알고리즘이라고 하면 너무 어렵게만 느껴지는데 우리 일상속에도 있다고 생각하니 조금은 쉽게 다가오는 것 같다가도.. 알면 알수록 어려워지네요 하핳

예를 들면 수많은 육아용품 중에 어느 것을 살까 고르는 것에도 알고리즘을 적용할 수 있어요.
가격, 언제까지 사용하는지, 자주 사용되는 횟수, 일회용인지 아닌지, 동생에게 물려줄 수 있는지, 중고로 구입 가능한지, 나중에 중고로 팔 수 있는지, 제품평 등등을 고려해서 알고리즘을 짜놓으면 매번 "이건 사야하나, 말아야하나?" 고민하는 대신 그 알고리즘에 따라 결정하면 되는 거죠. 기저귀, 천 기저귀, 유축기, 유모차, 딸랑이, 모빌 등등등.

저 안내서를 위한 안내서는.. 결국 자료구조랑 알고리즘 전공책을 봐야 할 것 같아요.

그런가요? 완전 문외한을 위한 입문서를 기대했나봐요. ^^;

당연하다는듯이 알고리즘이란 단어를 사용해왔는데,
알고리즘이란게 이런 것이었네요. 좋은 정보감사합니다.
p.s) 안내서를 위한 안내서 = '위키피디아', '구글링' ^^;

근데 구글링을 해도 기계적인 설명밖에 없더라고요. -_-;

이 안내서를 위한 안내서는 없는 걸까?

있습니다! 오늘 바로 소개해드리죠 ㅎㅎ
읽기 쉽지만 시간을 많이 투자해야 한다는게 함정..

고맙습니다!
읽고 싶은 책들 목록에서 다음에 읽을 책 뽑는 알고리즘은 만들어서 거기에 맞춰 볼게요. ㅋㅋㅋ

아~~~ 그러고 보니... 컴퓨터 안에서만이 아니라, 우리 일상 생활에도 알고리즘들이 있네요. 요리에도, 글쓰기에도, 지저분한 내 방과 정신없는 내 책상에도...
사람들이 책상 정리좀 하라고 말할 때마다 '다 알고리즘에 맞게 널려 있는 거'라는 핑계를 대야겠어요. ㅎㅎㅎㅎㅎ

저도 몰랐는데 그렇더라고요.
종이책, 전자책, 영어책, 한글책, 북이오책.. 여러 조건을 넣어서 나름 번갈아 읽고 있었는데 이것도 엉성하나마 알고리즘이었나봐요.

컴퓨터 공부할 때 숱하게 들었던 알고리즘,, 일상에서도 알고리즘을 만들어놓으면 참 편리하지만 때론 자로 잰듯 정해진 과정만 거치는 것이 새로운 발상을 방해하기도 하더라구요. 효율성을 극대화하기 위해 필요한 것만은 분명하죠ㅎ

바쁜 일상에서는 필수불가결한 거 같아요. 거기에 드는 시간을 단축해주거든요.
근데 쏠메님 말씀도 맞아요. 새로운 발상을 방해하기도 하지요. 분야를 잘 선정해서 적용해야겠어요.

다양한 분야에 관심이 많으셔요..
발레 다음은 봉댄스가 아닐까 했는데 알고리즘이었군요...ㅎㅎ

봉댄스..ㅋㅋㅋㅋㅋ
그것도 근육이 있어야 매달리는 거 아닌가요? ㅋㅋㅋㅋ

알고리즘.. 어쩐지 요즘 빅데이터랑 비슷하다고 생각하는 건 저뿐인가요? ㅎㅎ

빅데이터를 뽑아내는 것도 일정한 알고리즘을 적용해서 하는 거죠. :)

ㅠㅠ 제 컴퓨터 폴더 정리에도 알고리즘이 좀 필요할듯 해요.
지금 하고 있는 방식이 별로 아닌거 같은 느낌이에요 ㅋㅋ

맞아요. 책 읽다보니 이렇게 유용한 알고리즘을 누가 좀 만들어서 공유해줬으면 싶더라고요. 혼자 만들긴 어려워서. ㅎㅎㅎ

책 제목도 독특하고 풀어낸 관점도 흥미롭네요. 게으름의 미학을 위한 알고리즘. :)

한번 정해놓으면 그다음엔 따라가기만 하면 되니까요. :)
근데 알고리즘 만드는 것도 힘들다는 게 함정..

Coin Marketplace

STEEM 0.18
TRX 0.13
JST 0.028
BTC 64911.06
ETH 3194.94
USDT 1.00
SBD 2.60