결정장애 시 좋은 해결방법: 나머지 연산 결정법

결정장애 시 좋은 해결방법: 나머지 연산 결정법

2018, Oct 01    


결정장애(Indecisiveness)란 무엇인가?


결정장애는 흔히 비슷한 수준의 효용을 제공할 것이라 기대되는 몇 가지의 선택가능한 옵션 중에서 무엇을 선택해야 할지 결정하지 못하고 보류하는 마음상태를 일컫는다.

누군가 말하지 않았던가. Life is C between B and D, 그러니까 인생은 출생(Birth)과 죽음(Death) 사이의 선택(Choice)이다.. 정말로 인생은 수많은 선택의 순간의 연속이다. 정말로 우리는 하루에도 무수한 선택을 해야 한다. ‘오늘 무슨 옷을 입을까?’, ‘이 정도 수준의 복지와 노동 조건의 회사에 들어가야 할까?’, ‘죽어서 화장(火葬)이 최선일까?’ 등등.

하지만 수많은 선택들의 중요도가 항상 같지는 않다. 내 인생의 중요도에 있어서 ‘오늘 순대국을 사먹을까?’와 ‘이 사람과 결혼해야 하는가?’의 선택에서는 확실히 후자가 훨씬 중요하다. 선택의 여파가 크게 가기 때문이다. 이런 선택에서의 결정을 신중하게 하는 것은 결정장애라는 단어로 표현하지 않고 일반적으로 심사숙고라고 더 점잖게 표현한다.

그래서 한국에서는 결정장애를 중차대한 의미와 규모의 선택상황에서의 딜레마보다는 일상생활에서의 사소한 갈등상황에서 유쾌하게 표현하는 경우가 많다. 가령 마트에 와서 ‘바밤바를 먹을까, 누가바를 먹을까?’, ‘참치김밥을 사먹을까, 치즈김밥을 사먹을까?’ 등등…

많은 경우, 우리는 양 옵션 모두 나에게 유익하고 냉정히 말해 무엇을 선택해도 크게 상관 없음을 알면서도 쉽게 결정하지 못해 멈칫멈칫 애를 먹는 나 자신을 발견하게 된다. 바로 이런 상황에 내가 잘 써먹고 있는 결정장애 해결방법이 있는데, 바로 나머지(modulo) 연산 결정법이다.



나머지 연산 결정법


나머지 연산(modulo)은 초등학생 때 배우는 나눗셈의 나머지를 구하는 것으로 개발을 공부하는 사람들에게는 매우 친숙한 개념이다.
7를 3으로 나눌 때 나머지는 1이다. 프로그래밍 언어에서 7을 3으로 나눴을 때의 나머지를 계산하는 식은 7 % 3으로 표현하고 이 식을 평가(evaluate)하면 답은 1이 된다. 이렇게 나머지를 구하는 연산을 modulo 연산이라고 하며 이 연산은 피제수(dividend, 여기서는 7), 제수(divisor, 여기서는 3)를 필요로 하는 이항 연산자(binary operator)이다.

모듈로 연산이 개발을 공부하는 사람들에게 친숙한 개념이라는 데는 모듈로 연산의 특징과 관련이 있다.
모듈로 연산을 할 때, 나누는 수(divisor)를 n이라고 하면 피제수가 몇이든 연산 결과는 무조건 0부터 n-1까지의 정수이다.
가령 어떤 수를 3으로 모듈로 연산을 하면 결과는 0, 1, 2 중 하나밖에 되지 않는다. 어떤 수가 무한까지 가더라도 말이다.
다시 말해, 모듈로 연산의 결과값은 나누는 수를 n이라고 할 때 0부터 n-1까지의 정수로 가능한 개수는 n개가 된다.

이것을 활용하면 어떤 수가 얼마나 크더라도 나누는 수 n개의 집합 중 하나의 원소로 분류할 수 있다.
11111111 % 32이고, 22222222 % 31이다. 이때, 11111111은 3으로 나눴을 때 나머지가 2인 수들의 집합에 포함되고, 22222222는 1인 수들의 집합에 포함된다고 말할 수 있다.


내가 결정장애를 해결하는 방법은 바로 이 나머지 연산을 활용하는 것이다.
결정장애를 만났을 때 이 방법을 활용하는 구체적인 방법은 다음과 같다.

  1. 어떤 수를 정한다. 0 이상의 정수이면 그 어떤 숫자라도 상관이 없다. 나머지 연산으로 하나의 분류로 구별될 것이다.
  2. 내가 갈등하고 있는 옵션의 수를 센다. 가령 내가 ‘치킨’, ‘피자’, ‘라면’ 사이에서 갈등하면 3이 된다. 그 3을 우리는 나누는 수 n으로 쓸 것이다.
  3. 옵션들에 임의의 순서로 0부터 n-1까지의 정수를 마음속으로 부여한다. 일반적인 결정장애 상황에서는 선택안이 5개 이내일 것이기 때문에 기억할 수 있다고 가정한다. 그보다 커지면 노트에 적는 등의 방법이 있겠다.
  4. 아까 구한 어떤 수를 n으로 나머지 연산을 해서 나머지를 구한다. 그 나머지는 0부터 n-1 사이의 정수가 된다.
  5. 구한 나머지를 아까 옵션들에 부여한 정수와 비교해서 일치하는 옵션을 뒤도 돌아보지 말고 선택한다.


이 방법이 내가 결정장애 상황에서 쓰는 방법이다. 이 방법을 쓰면 그 어떤 고민되는 상황에서도 문제를 빠져나올 수 있다.

하지만 나머지 연산 결정법을 사용할 때는 유의할 점이 있다. 바로 나누는 수를 결정하는 부분인데 어떻게 나누는 수를 결정해야 할까? 내가 염려하는 부분은 바로 나누는 수를 결정할 때 개인의 편향이 개입될 수 있다는 것이다. 컴퓨터가 아닌 이상 편향이 없는 사람은 없을 것이다. 하지만 숫자를 선택하는 사람이 언제나 나라면 랜덤성이 침해당할 여지가 존재하고 따라서 가급적 어떤 수를 고르는 사람은 내가 아닌 곁에 있는 다른 사람을 선택하는 것을 추천한다. 서로 다른 사람의 편향성은 나 개인에게는 랜덤성과 동일할 것이라고 생각한다.

여기서 끝이 아니다. 어떤 사람에게 무턱대고 ‘아무 숫자나 골라봐’라고 하는 것도 좋지 않다. 그렇게 물으면 개인에게 익숙하거나 좋아하는 숫자를 선택할 가능성이 높은데 문제는 이때에는 문화사회적인 편향이 개입될 수 있다는 것이다.
일반적으로 7은 행운의 숫자로 여겨지고, 4는 한국에서는 불길한 숫자로 쓰인다. 그러니까 숫자에 기호성, 상징성이 있기 때문에 사람들에게 1부터 9까지의 숫자를 선택하라고 하면 모든 숫자가 골고루 뽑히지 않을 수 있다. 이와 비슷하게 1자리 숫자는 우리에게 너무 익숙해서 그 어떤 숫자도 편향이 개입될 수 있다. 따라서 내가 제안하는 바는 어떤 수의 범위를 정해주되, 최소 2자리 숫자 pool을 제공하라는 것이다.
가령 ‘11부터 99까지의 자연수 아무거나 말해봐!’가 예가 될 수 있다. 10이나 100을 뺀 것은 10진수를 사용하는 인간에게 이 숫자가 그 사이의 숫자에 비해 더 익숙하다고 생각하기 때문이다.



이 방법의 문제점


이 방법은 실제로 몇 번 써본다면 생각보다 꽤나 강력하다는 것을 알게 될 것이다. 그 이유는 우리가 결정장애를 겪는 상황에서 선택안들의 가치 차이가 그 장애 상황에서 우리가 들이는 노력에 비해 많은 경우 정말 하찮기 때문이다. 내가 그냥 홈런볼을 먹는 것과 치즈 홈런볼을 먹는 것은 그때 맛의 조금의 차이일 뿐, 다 맛있고 한시적이다.

하지만 이 방법에도 몇 가지 문제가 있으니, 그것들은 다음과 같다.

  • 더 좋은 선택을 하기 위한 고민 자체를 회피하게 만들 수 있다.
    • 이 방법은 기본적으로 비슷한 가치를 가지는 옵션 사이에서 고민하지 말고 램덤으로 아무거나 뽑자가 기본 철학이다. 하지만 이 방법을 오용해 더 고민할 가치가 있는 문제 상황에서 무조건적으로 이 방법을 사용할 수가 있다. 이 방법은 랜덤으로 하나를 선택하기 때문에 최선이 아닌 결과를 출력할 수 있다.
  • 선택의 재미가 떨어진다.
    • 돈, 시간 등의 자원이 있을 때 이 자원을 어떻게 더 의미 있게 사용할까 하는 고민은 어떤 순간에서는 참 재밌을 수 있다. 어떻게 보면 비슷한 옵션들이지만 꼼꼼하게 확인하고 더 좋은 결과를 찾기 위해 친구와 이야기하고 검색해 보는 등. 그 과정 자체가 재미 있고 의미 있을 수 있다. 하지만 이 방법은 굉장히 냉정하고 계산적이다. 그냥 숫자를 부여하고 계산하면 된다.



결론


우리가 많이 맞닥뜨리는 결정장애 상황에서 많은 경우 우리는 쓸데없는 고민으로 시간을 허비하는 경우를 보게 된다. 이때 나머지 연산 결정법은 꽤나 강력한 해결방법일 수 있다. 나머지 연산 결정법은 우리가 가진 옵션들의 수를 세고 0부터 숫자를 부여해서 어떤 수를 옵션의 수로 나눠 나머지를 통해 옵션을 선택하는 방법이다. 이 방법은 ‘옵션들의 가치가 거의 동등하다’는 가정 아래 많은 고민하지 말고 아무거나 하라는 강력한 메시지를 전달한다. 실제로 옵션들의 가치 차이가 미미하고, 또 그 선택의 중요도가 높지 않다면 충분히 사용가능한 옵션이다.

하지만 이 방법은 강력한 휴리스틱 선택 방법이기 때문에 더 좋은 선택을 위한 고민 자체를 차단한다. 그리고 선택을 위한 고민과 그 과정 자체가 의미 있을 수도 있는데 이 과정을 수학이라는 이름으로 때려 부수기 때문에 비인간적이다.
그렇기 때문에 바로 이 방법을 적용하기 전에 지금 결정장애 상황이 이 방법을 써도 괜찮을 상황인지 먼저 고민하는 것이 바람직하겠다.