Randomness in Life

문득 이런저런 생각이 떠오를 때가 있다. 그럴 때마다 플래너에 기록해 놓는 편이다. 내가 쓰는 프랭클린 플래너 CEO 트윈링은 매달 조그만 한권의 수첩을 쓰도록 되어있는데, 작년부터 쓰기 시작해서 책상 한켠에 어느 덧 17권이 쌓여있다. 온라인 버전의 일정관리나 메모 툴도 물론 유용하고 더 편한 면도 있는 것 같기는 한데, 아직 완전한 ubiquitous 환경이 갖추어 지지 않는 (나의) 환경에서는 오프라인이 최적인 것 같다. 노트를 해 놓은 것 중에 생각을 좀더 정리해보고 싶은 내용들이 꽤 된다. 종강도 한 마당에 생각 정리 좀 해보아야겠다. 논문은? 응?

5/12 메모에서 발췌.

Randomness in Life

고인 물이 썩듯 삶에도 적절한 randomness 가 필요하다. Randomness는 이질감과 혼란을 가져다 주기도 하지만 각성과 refreshment 를 제공해 주는 고마운 존재이기도 하다. 이러한 randomness 의 중요성을 반영하고 있는 이론이 바로 Evolutionary Computation (EC) 이다. EC는 문제 해결에 있어 유전학적 요소들을 도입하여 접근하는 하나의 해답을 찾는 서치 과정이라 할 수 있다. 문제는 곧 ‘환경’이고, 가능한 해답의 후보들은 ‘Individual’, 해답의 질은 ‘Fitness’ 로 표현된다.

광활한 공간 속에서 우리는 나름대로 최적의 해답을 찾아내려 노력하고 있다. 내가 보는 세계에서의 최선은 ‘local optimum’으로, 누구나 개인의 local optimum 을 가지고 있다. 그러나 세상에는 내가 알고 있는 optimum 보다 훨씬 뛰어난 global optimum 이라는 것이 존재할 가능성이 농후하다. 그럼 어떻게 내가 안주하고 있는 local optimum 을 버리고 global optimum 을 찾아 (아무 보장없이) 떠날 수 있을까?

EC에서는 진화에서와 마찬가지로 mutation 과 crossover 등의 요소를 통해 현재의 세대에서 다음 세대로 넘어가는 과정에서 randomness 를 부여한다. Mutation 은 그야말로 ‘뜬금없이’ 바뀌는 것이다. 내가 가지고 있는 답이 100010 인데 100110 으로 바뀌는 것이 Mutation 이다. 엉뚱한 생각, 이유없이 뒤집어서 생각하기 등이 내 생각에 mutation 을 발생시키는 방법이 아닐까. 반면 crossover 는 10 과 01 이 교배를 하여 11 과 00을 낳는 것이다. 다른 사람의 생각과 내 생각을 조합해 보고 나눠보고 짜맞춰 보는 것과 유사하다. 이와 같이 나의 서치 공간에 randomness 가 추가되면 나의 local optimum 을 뛰어 넘어 global optimum 을 발견할 가능성이 높아진다.

물론 보장된 것은 없다. 아무 것도 안 나올지도 모른다. 그러나, 그냥 그대로인 내가 될 것인가, 아니면 한번 발전을 위한 몸부림을 쳐볼 것인가를 놓고 하나를 선택하라면 나는 그래도 한번 도전해 보는 편이 낫지 않을까 싶다. 그 하나의 도전이 두달 후 시작된다.

Author: mcpanic

어떻게 하면 보다 사람냄새 나는 기술을 만들 수 있을까 고민하는 Human-Computer Interaction (HCI) 연구자 / 컴퓨터과학자 / 새내기 조교수