연구의 비법: 파인만 알고리즘

수많은 문제를 해결하고 연구를 잘할 수 있는 비법이 있다. 내가 만든 비법은 아니다. 미국의 유명한 물리학자 리처드 파인만이 사용했다고 알려진 문제 해결법이다 1.

Feynman Algorithm
1. Write down the problem.
2. Think real hard.
3. Write down the solution.

파인만 알고리즘
1. 문제를 쓴다.
2. 진짜 열심히 생각한다.
3. 답을 쓴다.

참 쉽죠?
참 쉽죠?

나는 이 알고리즘을 대학을 갓 졸업했을 때 처음 접했다. 황당하다고 생각했고, 파인만 같은 천재들에게나 해당하는 문제 해결방법이라고 생각했다. 몇 년 후 시간이 흘러서, 대학원생일 때 이걸 다시 봤을 때는 2번 항목에 감명을 받았었다. 문제를 ‘직접’ 해결하는 방법 중에, 저 방법 말고 다른 방법이 도대체 뭐가 있을까를 생각 했다. 열심히 생각하는 것 이외에 문제를 해결하는 방법은, 답을 아는 사람에게 물어 본다 따위가 있을 수 있겠으나, ‘직접’ 해결하는 방법은 아니다. (물론, 답을 아는 사람에게 물어 보는 해결 방법에서도, 누가 답을 알고 있을 것인지에 대해서 열심히 생각해 봐야 한다.)

여전히 2번에 대해서는 강한 동의를 하고 있지만, 가장 감명 깊은 부분은 1번 항목이다.

‘문제를 쓴다.’

이것은 내가 풀어야 할 문제가 정확히 무엇인지를 알고 있을 때만 할 수 있는 것이다. 당연하다. 문제가 뭔지 모르는 데, 문제를 어떻게 쓸 수가 있을까? 그런데, 많은 경우에 우리가 풀고 싶은 문제가 도대체 무엇인지 정확히 알지 못한다. 풀어야 할 문제를 정확히 알고 정확하게 기술할 수 있는 경우는 얼마 되지 않는다. 그래서 아무리 생각해 봐야, “문제”를 풀지도 못 하고, 소위 ‘삽질’만 하게 된다.

파인만이 제시한 문제 해결 방법 1단계, 2단계, 3단계는 같은 크기의 중요성을 갖는다고 생각한다. 두번째 단계가 가장 어려워 보이지만, 실제로는 첫번째도 그에 못지 않게 어려우며, 세번째도 어려움으로는 뒤처지지 않으며 비슷한 수준으로 중요하다.

파인만의 문제 해결 방법은 인생에서 맞닥뜨리는 모든 ‘일반적인’ 문제에 모두 적용된다고 생각하지만, 공부하고 연구하는 것에 국한시켜 이야기 해 보자.

공부를 하면서 만나는 많은 연습 문제들과 시험 문제들은, 1단계를 누군가가 잘 해 놓은 것이다. 문제는 아주 잘 씌여져 있다. 그래서 1단계가 필요없다. 대신, 이런 경우에 1단계는, 문제를 ‘잘’ 읽는 것이다. 그래서 문제가 무엇인지를 정확히 ‘인지’ 해야 한다. 문제를 푸는 방법은 알고 있었는데, 문제를 잘 읽지 않아서, 잘못된 답을 해 본 경험이 꽤 있을 거라고 생각한다. 그래도, 이런 경우에는 조금만 조심하면 1단계는 비교적 쉽게 넘어갈 수 있다.

내가 1단계를 직접 해서, 문제를 써야 하는 경우는 굉장히 어려울 수 있다. 연구를 해서, 논문을 써야 하는 경우를 생각해보자. 많은 연구 초심자들은 도대체 어떤 문제를 풀어야 하는지를 모를 때가 많다. 연구라는 것을 처음 시작하는 사람들은, 아예 감도 잡지 못 한다. 석사과정 학생들에게, 혹은 박사과정 학생들 까지도, 지도교수가 논문 주제를 던져주는 경우가 많은 이유이다. 어떻게 해야 도대체 ‘문제’ 라는 것을 발견할 수 있는 지를 모른다.

조금 감을 잡았다고 해도, 여전히 문제를 정확히 기술 하는 1단계를 통과하기에는 많은 과정들이 남아있다. 예를 들어서, ‘대형 지진 발생 이후의 대처법’ 이라는 것에 대해서 관심이 생겨서 연구를 하기로 했다고 하자. 이것은 ‘연구 분야’가 될 수는 있을 지언정, ‘문제’는 전혀 아니다. 조금 더 범위를 좁혀서 ‘대형 지진 발생 이후의 적절한 구호 물자 운송방법’ 에 대해서 연구를 하기로 했다고 하자. 많이 좁혀졌지만, 아직 ‘문제’는 아니다.

이제 범위를 좁혔으니, 무엇이 정말 ‘문제’가 되는지를 알아야 한다. 사실 이것은 쉬운 일은 아니다. 내가 ‘만들어낸’ 문제와 ‘실제로 발생하는’ 문제는 전혀 다를 수도 있기 때문이다. “Financial calculus: an introduction to derivative pricing” 이라는 책의 서문에 보면, 많은 사람들이 잘못된 문제에 정확한 답을 찾기 위해서 헛수고를 하고 있다고 나온다 — finding precise answers to the wrong questions. 파인만 문제 해결법의 첫번째 단계에서 실수를 범했기 때문이다.

위에서 언급한 지진 발생 이후의 물자 운송방법이라는 주제에 대해서, 있을 법한 문제로는 다음과 같은 것이 있다.

– A 라는 빈도로 z 라는 지역에서 구호 물자에 대한 수요가 발생할 때, 얼마나 자주 x 지역에서 z 지역으로 물자를 수송해야 할까?

이것은 ‘문제’ 이다. Problem 혹은 question 이긴 하지만, wrong question 일 수는 있다. 예를 들어서, 실제로 B 라는 지역에서 수요는 A 라는 빈도로 발생하는 것이 아니라, AA 라는 빈도로 발생한다고 하면, 이것은 wrong question 이다.

어떤 아이디어를 가지고 논문을 쓰기 위해 연구를 하다가 “문제”가 풀리지 않아서 결국 포기 했던 것들도 꽤 많다. 돌이켜 생각해보면 거의 모두가 실제로는 문제를 찾을 수가 없을 때였다. 문제가 무엇인지 명확하게 알고 있을 때는, 열심히 하면 — 비록 오랜 시간이 걸릴지라도 — 대부분 문제가 풀렸다. 논문은 아니지만, 컴퓨터 프로그램을 작성한 것이 결과가 제대로 나오지 않는 경우, 소위 버그가 있는 경우를 예로 들어 보자. ‘결과가 제대로 나오지 않는다. 어떻게 제대로 나오게 할 수 있을까?’는 좋은 문제가 아니다. 좋은 문제가 되기 위해서는 몇가지 단계로 나누어야 한다. (1) 어떤 결과가 제대로 나오고, 어떤 결과가 제대로 나오지 않는가? (2) 결과가 제대로 나오지 않는 것은 잘못된 코드 때문인가, 혹은 잘못된 알고리즘 때문인가? 더 나아가서, 알고리즘이 풀려고 하는 문제 자체가 잘 못 된 것인가? 등으로 나누어서 문제를 정의 하고, 열심히 생각하면, 대부분 해결 된다.

연구는 사실 답을 찾는 과정이 아니라 문제 혹은 질문을 찾는 과정이다. 파인만 알고리즘의 가장 첫번째에 ‘문제를 쓴다’가 오게 된 것은 깊은 통찰력의 결과물이라고 믿는다1.

파인만은 위대하다.

(‘연구의 비법’편은 글 세 편 정도의 시리즈로 묶어볼 예정입니다.)

1. 사실은 머리 겔만(Murray Gell-Mann)이라는 동료 물리학자가 우스개 소리로 한 말이다.



* 이 글들은 대학원생 때 알았더라면 좋았을 이야기들 페이스북 페이지 를 통해 팔로우 하실 수 있습니다.

- 엄태웅님의 [페이스북], [블로그(한글)], [블로그(영문)]
- 최윤섭님의 [페이스북], [블로그(한글)], [브런치(한글)]
- 권창현님의 [페이스북], [블로그(한글)], [홈페이지(영문)]

5 thoughts on “연구의 비법: 파인만 알고리즘”

  1. 최근에 컴프를 끝낸 YJ입니다. 역시 언제봐도 교수님 글은 늘 배울 수 있어서 좋습니다.
    졸업논문을 준비하기 위해 최근에 리터레쳐 리뷰를 끝내고 리서치 퀘스천을 잡았는데, 실제로 문제가 되며 그래서 학계와 실제상황 모두 contribute할 수 있는 문제를 찾는다는 것이 방향을 잡을때 가장 기초로 여겨지는 것 같습니다. (물론 풀어가면서 그 퀘스천을 보다 실현가능하게 modify 해 갈것 같지만요)

    언제 여건이 되신다면, 박사과정 중간에 올수 있는 “방황 혹은 슬럼프”는 어떻게 극복하면 좋을지도 다루어 주실수 있을까요. 첫 시작을 잘 하는것도 중요하지만, 중간에 방황을 (하더라도) 짧게 끝내고 제자리로 돌아와 달릴 수 있는게 중요한게 아닐까란 생각이 듭니다. 분명, 좋아서 열심히 달려왔는데 어느새 지쳐서 예전처럼 열심히 못하는 자신을 보면 죄책감이 들때가 있습니다. 석사부터 지금까지도 5년이 넘게 흘렀고, 조교수까지 앞으로를 생각하면 앞으로도 온만큼은 더 가야 하는걸 보면 지금 중간정도 온것 같은데, 지치기엔 이른것 같은데, 너무 지친것 같습니다. 분명 문제가 어딘가에 있긴 할텐데, 박사과정하면서 문제 없는 사람은 없을거고, 주변을 봐도 저는 상대적으로 모자를게 없는 상황에서 연구를 하는 편이라 불평할 거리도 많지 않거든요. 그냥 지나가는 거라고 여기기엔, 이 시기즈음 슬럼프 와서 극복 못하고 졸업을 맞이하는 분들도 봐서, 적극적으로 타개해야 할것 같다는 생각은 들고, 어떻게 해야 할까는 잘 모르겠네요.

    1. 안녕하세요. 힘든 시기를 보내시고 계신 모양입니다. 저도 다른 분들처럼 방황/슬럼프를 겪었습니다. 어떤 종류(?)의 방황 중이신기 조금 더 말씀해 주실 수 있나요?

      1. 몇년동안 쉰다는 느낌이 들게 쉰적이 없었던데다가 최근 1년간 집안일로 인한 걱정과 컴프, 학부강의까지 하게 되면서 할일은 늘고, 부담은 되고, 논문에 쏟을 여력이 사라지니 예전과 달리 재밌어서 하기 보다는 끌려가듯 했습니다. 컴프가 끝나도 힘이 빠져서 아무것도 하기 싫고, 해야 하는것만 하는 증상이 보였어요. 주말에 쉬어도 쉰것 같지 않고 의욕이 사라진 느낌이었습니다.
        전에 컴프 끝나고 방황하는 사람들을 몇번봐서, 저도 그런건가? 라고 생각했습니다.
        그런데 추수감사절 연휴간 일이 없고 집중할 수 있는 여유가 생겨서 다시 논문에 집중하게 되니까 슬럼프가 사라졌다는 느낌을 받습니다. 아마 격변하는 업무와 시험속에서 논문에 집중은 안되고, 논문진행이 안되니까 속상해하다가, 그 시간이 길어지니 지친게 아닐까 싶습니다.

Leave a Reply

Your email address will not be published.