알고리즘, 인생을 계산하다
1
데이터구조/알고리즘을 열심히 배웠음에도 고작해야 DB에서 데이터 꺼내와서 핸들링할 때, 언어에서 제공하는 컬력센 사용할 때를 제외하곤 올바르게 사용해본적 없는 듯 하다.
2
알고리즘이 혹은 내가 알고 있는 그 많은 구조가 이렇게 다양한 곳이 사용된다는 것을 왜 나는 익히 알지 못했을까?
모든 최적 멈춤 문제의 핵심 딜레마는 어느 대안을 고를 것인가가 아니라, 고려할 만한 대안이 몇 개인가 하는 것이다.
어디에서 나왔든 간에, 비서 문제는 거의 완벽한 수학 퍼즐임이 입증되었다. 즉 간단하게 설명할 수 있지만, 풀기는 지독하게 어렵고, 답은 아주 간결한 반면, 많은 흥미로운 의미를 함축하고 있다는 점에서 그렇다.
나는 학생들의 성관계, 동문들의 운동 시설, 교직원의 주차가 학교 행정의 3대 문제라고 본다.
우리는 슈프에게 자신의 연구를 UCLA에 있는 연구실까지 로스앤젤레스의 교통 정체를 뚫고 출퇴근하는 일에 적용하여 최적화할 수 있는지 물어보았다. 세계 최고의 주차 전문가라면 뭔가 비밀 무기를 갖고 있지 않을까? 그는 갖고 있었다
홀러리스는 1889년에 특허를 받았고, 정부는 1890년 인구 조사 때 홀러리스 기계를 채택했다. 지금까지 아무도 본 적이 없는 기계였다. 그 압도적인 모습에 놀라서 이렇게 쓴 사람도 있었다. “그 장치는 신의 맷돌처럼 돌아가면서 쿵쿵 빠르게 구멍을 뚫는다.”
때로는 어지름이 단지 쉬운 선택이 아닐 때도 있다. 그리고 최적 선택일 수도 있다.
컴퓨터과학자들은 이 현상을 잡음이라고 한다. 지금까지 살펴본 정렬 알고리즘은 모두 결함도 구멍도 없는 완전무결한 비교가 이루어진다고 가정한다. 즉 두 값 중에서 적은 쪽을 더 크다고 잘못 판단하거나 혼동하는 일이 결코 없다는 뜻이다. ‘잡음이 있는 비교기noisy comparator’를 일단 허용하면, 일부 컴퓨터과학자들이 가장 신성시하는 알고리즘들은 신성시하는 알고리즘들은 쓰레기통에 처박히게 된다. 그리고 가장 악평을 받던 알고리즘들 중 일부는 복귀한다.
새뮤얼 F. B. 모스(Samuel F. B. Morse)는 볼티모어에 있는 조수 앨프레드 베일(Alfred Vail)에게 구약성서의 한 구절을 전신으로 보냈다. “신은 무엇을 만드셨는가WHAT HATH GOD WROUGHT.” 모든 새 연결에 우리가 첫 번째로 묻는 것은 어떻게 시작했냐는 것이며, 우리는 그 기원으로부터 미래를 점치려는 유혹에 빠질 수밖에 없다.