Simulation of Incentive Design:
어떤 보상 시스템이 가장 적합한가?
Part 3

Luke Park
DECON
Published in
13 min readFeb 2, 2019

Simulation of Incentive Design

Part 0: Why Simulation?
Part 1: 보상 시스템 설계 문제 및 시뮬레이션 환경 소개
Part 2: 히트맵을 통한 시뮬레이션 결과 오버뷰
Part 3: 시뮬레이션 결과 분석

Simulation of Incentive Design

이전 글에서는 시뮬레이션 결과를 히트맵이라는 시각화 자료를 통해 바라보았습니다. 히트맵은 하나의 이미지에 에이전트, 행동, 확률, 그리고 에피소드라는 많은 내용을 담아 직관적으로 시각화함에는 강점이 있으나, 섬세한 변화나 정확한 수치 등을 알기는 어려웠습니다.

이번 글에서는 상세한 수치와 그래프를 통해 보다 상세하게 시뮬레이션 결과를 분석하고자 합니다. 특히 이득 분배 방법론을 중심으로 proportional, exponential, 그리고 uniform한 경우에 어떤 차이가 있는지를 살펴봅니다.

메커니즘별 결과 분석

분석을 위해 두 개의 메트릭(metric)을 정의할 것입니다. 첫 번째는 리뷰 참여율(review ratio)입니다. 리뷰 참여율은 전체 에이전트 중 리뷰를 작성한 에이전트가 몇 명인지를 비율로써 나타냅니다.

그러나 리뷰 참여율은 노력을 1만큼 들여 작성한 리뷰와, 노력을 9만큼 들여 작성한 리뷰를 동일하게 취급하므로 투자한 노력의 정도를 충분히 반영하지 못합니다.

따라서 두 번째 메트릭인 행동 비율(action ratio)을 도입했습니다. 행동 비율은 한 에피소드에서 나올 수 있는 행동의 최대 총합 대비 실제 취한 행동의 비율입니다. 만일 에이전트가 10명이며 이번 에피소드에서 각 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]으로 행동했다면, 리뷰 참여율은 90%이지만 행동 비율은 50%로 도출됩니다.

리뷰 참여율과 행동 비율을 종합적으로 해석함으로써 보다 정확한 결과 분석이 가능합니다.

Proportional의 결과

[좌] review ratio, [우] action ratio

Proportional 메커니즘의 결과는 위와 같습니다. 리뷰 참여율 자체는 90% 이상에 수렴하여 많은 사용자가 리뷰를 작성함을 알 수 있습니다. 그러나 행동 비율은 50%가 되지 않습니다.

이는 Proportional 방법론하에서는 적당한 노력으로 리뷰를 작성하기만 하면 이득이 되기 때문입니다. 노력(endeavor)과 투자한 노력의 정도인 행동(action)은 각각 cost 함수와 gain 함수의 반환값 도출에 사용되는바, 적당한 노력을 투자하는 편이 최대 보상(reward)을 기대할 수 있습니다.

에피소드 초반에 리뷰 참여율이 급격하게 높아졌다 낮아지는 현상이 관찰되는데, 이는 리뷰를 작성하면 보상을 얻는다는 것을 탐험으로부터 알게 된 에이전트들이 동시다발적으로 리뷰를 작성하다가, 그 수가 많아짐에 따라 급격히 보상이 줄어들어 참여하지 않기 때문입니다. 이후 안정적인 수렴 지점을 찾아가는 양상을 보입니다.

보상 풀을 두 배로 키웠을 경우

[좌] review ratio, [우] action ratio

높은 리뷰 참여율 대비 행동 비율이 낮다는 것은, 달리 말하자면 사용자들이 보다 많은 노력을 투자할 요인을 느끼지 못한 것입니다. 만일 보상의 총량을 늘린다면, 즉 나눠가질 파이 자체를 키운다면 취득할 수 있는 이득의 분포가 넓어져 참여를 유도할 수 있지 않을까요?

위는 같은 proportional 메커니즘에서 보상 풀만을 두 배로 늘렸을 때의 결과입니다. 리뷰 참여율이 91%에서 97% 수준으로 향상되었다는 점도 눈여겨 볼만합니다. 파이가 커짐에 따라 에이전트들의 참여 요인이 생긴 것입니다.

주목할만한 점은 행동 비율이 48%에서 67% 수준으로 높아진 점입니다. 보상 풀이 커졌을 경우 약간의 노력을 더 추가하는 것으로 더 많은 보상을 가져갈 수 있게 됩니다. 에이전트들이 이를 파악해 보다 많은 노력을 들여 평균적인 노력 수준이 높아지는 것입니다.

Exponential의 결과

[좌] review ratio, [우] action ratio

Exponential 메커니즘에서는 proportional 대비 리뷰 참여율이 크게 떨어지는 것을 확인할 수 있습니다. Proportional의 91%에서 65%까지 떨어졌습니다.

이는 리뷰를 작성해도 노력을 적게 들일 경우 충분한 이득을 얻지 못하기 때문입니다. 오히려 비용이 더 드는 에이전트들은 리뷰 작성을 포기함으로써(행동이 0) 리뷰 참여율 자체가 크게 줄어들었습니다.

그러나 행동 비율에서는 proportional의 48%에서 58%까지 증가했음을 확인할 수 있습니다. 리뷰를 쓰지 않기로 결정한, 즉 행동이 0인 에이전트들이 많아져 행동 비율을 크게 떨어뜨림에도 불구하고 행동 비율이 증가했다는 것은 리뷰 작성에 이전보다 훨씬 많은 노력이 투자되었음을 의미합니다.

보상 풀을 두 배로 키웠을 경우

[좌] review ratio, [우] action ratio

낮아진 리뷰 참여율은 보상 풀을 키움으로써 보충할 수 있지 않을까요? 이러한 예상은 시뮬레이션을 통해 사실로 나타났습니다. Proportional 메커니즘과 마찬가지로 보상 풀이 늘어나면 리뷰 참여율과 행동 비율의 수준이 높아집니다.

그러나 상승폭에서는 exponential 메커니즘이 더욱 극적인 변화를 보였습니다.

Exponential 메커니즘에서 보상 풀을 두 배로 키움에 따라, 리뷰 참여율의 상승폭은 21%를 기록했습니다. 행동 비율의 상승폭 역시 25%를 기록하였습니다. 이는 proportional에서의 상승폭인 6%와 19%와 비교하여 유의미한 차이입니다.

이는 보상 풀을 제공해야 하는 서비스의 주체 혹은 시스템 설계자의 입장에서, exponential한 방법을 채택하면 투자 대비 높은 효율을 낼 수 있음을 의미합니다.

Uniform의 결과

[좌] review ratio, [우] action ratio

Uniform 메커니즘에서는 최고의 리뷰 참여율을 보입니다. 이는 일단 리뷰를 작성하기만 하면 보장된 일정 수치의 보상이 나오므로 거의 대다수의 사용자가 리뷰를 작성하기 때문입니다.

그러나, 노력을 1 정도만 투자하든 9를 투자하든 받는 비용은 동일하기 때문에, 행동 비율은 매우 낮을 것임이 예상됩니다. 실제로 거의 모든 에이전트가 최소한의 노력만 투자해 행동비율이 0.1에 가깝게 수렴함을 알 수 있습니다. 달리 말하자면 사용자들은 보상만 챙기고 정성 들인 리뷰를 작성할 생각이 없음을 의미합니다.

보상 풀을 두 배로 키웠을 경우

[좌] review ratio, [우] action ratio

이러한 uniform 메커니즘의 문제는 보상 풀을 늘리는 것으로는 해결할 수 없습니다. 참여 유도에는 효과적인데, 보상 풀이 늘어남에 따라 극소수의 리뷰를 작성하지 않던 사용자, 즉 보상에 대한 한계효용이 낮은 사용자들까지도 리뷰 작성에 참여하게 된 것입니다.

반면 행동 비율에는 변화가 없습니다. Proportional이나 exponential한 메커니즘에서는 보상 풀이 늘어나면 남들보다 더 노력하여 많은 이득을 받으려는 에이전트들이 생겨 행동 비율이 높아지는 효과가 있으나, uniform 메커니즘에서는 남들보다 노력을 더 한다고 하더라도 비용만 늘어나고 이득이 늘지를 않으니, 당연한 결과입니다.

요약

[좌] review ratio, [우] action ratio

상기 등장했던 그래프들을 같은 규모에서 비교해봅시다. 리뷰 참여율은 uniform, proportional, 그리고 exponential 순으로 높습니다. 반면, 행동 비율은 exponential이 가장 높으며 이후 proportional, uniform 순으로 높습니다.

메커니즘에 따라 리뷰 참여율과 행동 비율 간의 일종의 트레이드 오프(trade-off)가 존재하는 것으로 해석할 수 있습니다. 시스템 설계자는 이를 유념하여 자신이 원하는 생태계에 가장 적합한 메커니즘을 택해야 합니다.

가령 리뷰의 퀄리티야 어찌 되었건 양만을 중요시한다면 uniform한 방법론을, 리뷰의 질을 우선시한다면 exponential한 방법론을, 그 중간의 합의점을 찾고자 한다면 proportional한 방법론을 택하면 됩니다.

[좌] review ratio, [우] action ratio

보상 풀을 두 배로 키워도 리뷰 참여율과 액션 비율의 순위는 변하지 않습니다. 그러나 보상 풀을 늘리는 효과가 가장 큰 것은 exponential 방식입니다. 시스템 설계자의 입장에서 투자 대비 가장 효과가 큰 방식이라 할 수 있습니다.

Exponential 방식이 투자 효과가 가장 좋다면, 혹시 exponential의 수준을 제곱이 아닌 세 제곱, 오 제곱 등으로 설정하면 더 높은 투자 효과를 볼 수 있지 않을까요? 승수를 달리하면 어떠한 양상을 보이는지 추가 실험을 해보았습니다.

Exponential 메커니즘 튜닝

Exponential 분배방식에서 제곱이 아니라 세(3) 제곱, 나아가 오(5) 제곱, 칠(7) 제곱, 그리고 구(9) 제곱 등이 되면 어떤 변화가 일어날까요? 리뷰 참여율이 줄어들고 행동 비율이 증가하는 양상이 보다 강화될까요?

[좌] review ratio, [우] action ratio

승수를 높여갈수록 리뷰 참여율은 떨어지나 행동 비율은 높아졌습니다. 그러나 세 제곱 이후에는 큰 차이가 나지 않았습니다.

또한, 리뷰 참여율과 행동 비율을 같은 중요도로 생각한다면 승수가 1.5일 때 가장 만족스러운 결과가 나타나는 것을 알 수 있습니다.

그렇다면, 투자 효과는 어떤 지수에서 가장 높게 나타날까요? 즉, 보상 풀을 늘렸을 때 가장 많은 상승을 보여주는 지수는 어떤 지수일까요?

보상 풀을 두 배로 키웠을 경우

[좌] review ratio, [우] action ratio

투자풀을 늘리자 리뷰 참여율은 지수가 2일 때 가장 많이 상승했고, 행동 비율은 지수가 1.5일 때 가장 많이 상승했습니다. 그리고 이 두 상승폭의 합을 보았을 때는 지수가 2일 때 가장 많이 상승했습니다.

간단히 말하면, 지수 분배 방법에서 가장 높은 투자 효과를 보일 수 있는 지수는 2입니다.

마무리

본 시리즈를 통해 ‘보상 시스템 설계’ 문제를 살펴보고, 이를 시뮬레이션하여 가장 적합한 시스템이 무엇일지를 고찰해 보았습니다. Proportional, exponential, 그리고 uniform한 이득 분배 방법론을 제시하고 이에 따른 시뮬레이션 결과를 분석했습니다.

지난 게시글에서는 히트맵이라는 시각화 자료를 통해 대략적인 양상을 파악했습니다. 이번 게시글에서는 수치와 그래프를 통해 보다 상세한 관점에서 이를 분석했는데, 이득 분배 방법론에 따라 리뷰 참여율행동 비율 간의 일종의 트레이드 오프가 존재함을 파악했습니다.

또한, 보상 풀의 규모를 달리하는 것으로 리뷰 참여율과 행동 비율을 유도할 수 있음을 보였습니다. uniform 메커니즘을 제외하면 보상 풀이 늘어남에 따라 리뷰 참여율과 행동 비율이 증가하는 양상을 보였습니다. 그리고 proportional보다 exponential한 경우에 보다 높은 상승폭을 보였습니다. 이는 투자 대비 얻는 효과가 더욱 크므로, 시스템 설계자의 관점에서 긍정적으로 고려할 수 있습니다.

Exponential의 경우 승수가 3 이상으로 넘어갈 경우에는 리뷰 참여율과 행동 비율이 크게 변하지 않았습니다. 만약 리뷰 참여율과 행동 비율을 동등하게 중요시한다면 가장 최적의 승수는 1.5입니다. 보상 풀를 바꿈으로써 얻는 투자 효과까지 고려한다면 최적의 승수는 2입니다.

시스템 설계자 혹은 서비스 제공자는 이러한 메커니즘의 차이와 보상 풀의 차이로부터 생태계를 유도할 수 있음을 유념하고 적절한 시스템을 채택해야 합니다.

References

Written by Luke, Jeffrey @ Decon

About Decon

Decon은 블록체인 프로젝트들을 자문하고 있는 암호경제학 연구소로써 실제 가치를 만들어낼 수 있는 토큰 모델 설계 연구를 하고자 노력 중입니다.

시뮬레이션과 관련하여 Decon과 함께 연구하고 싶은 분들이나 문의사항이 있으신 분들은 언제든지 contact@deconlab.io로 연락 주시기 바랍니다.

Homepage: https://deconlab.io

Facebook: https://www.facebook.com/deconcryptolab/

--

--