8명의 AI 에이전트에게 섬을 주고 사회가 형성되는 과정을 지켜보았습니다
저는 Age of Empires와 같은 전략 게임을 하며 자랐습니다. 단순한 규칙이 복잡한 세상을 만들어내는 시스템을 좋아했습니다.
AI 에이전트도 똑같이 할 수 있는지 보고 싶었습니다. 게임에서 이기는 것이 아니라, 사회 속에서 살아가는 것을 말이죠. 그들은 원한을 품을까요? 뒷담화를 할까요? 평화를 유지할까요?
이를 알아내기 위해 Tiny Civilization을 만들었습니다.
Tiny Civilization은 2명에서 8명의 에이전트가 섬에서 살아가는 시뮬레이션입니다. 그들은 자원을 채집하고, 건설하고, 거래하고, 훔치며, 모든 것을 기억합니다.
저는 에이전트의 두뇌를 두 개의 계층으로 나누어 비용 문제를 해결했습니다.
- The LLM Mind: 이 계층은 장기적인 전략을 결정하고 대화를 처리합니다. 비용을 낮게 유지하기 위해 15일마다 한 번씩 실행됩니다.
- The Utility Engine: 이 계층은 먹기, 잠자기, 공격하기와 같은 일상적인 행동을 처리합니다. 매 틱(tick)마다 실행되며 비용이 들지 않습니다.
에이전트들에게는 기억이 있습니다. 시뮬레이션이 끝나면 그들의 경험은 기억의 줄(memory lines)로 변환됩니다. 이 줄들은 다음 실행 시 사용됩니다. 에이전트는 당신이 자신의 집을 파괴했다는 사실을 기억할 수도 있습니다. 싸움을 피하기 위해 당신에게 배상금을 지불할 수도 있고, 아니면 영원히 당신을 불신할 수도 있습니다.
이를 테스트하는 과정은 인간 본성에 대한 교훈이었습니다. 제가 문제를 하나 해결할 때마다, 에이전트들은 갈등을 일으킬 새로운 방법을 찾아냈습니다.
- 처음에는 학살을 저질렀습니다. 그래서 싸울 명분이 필요하다는 규칙을 추가했습니다.
- 그다음에는 끝없는 전쟁을 벌였습니다. 평화를 강제하기 위해 외교와 전쟁 피로도(war-weariness) 개념을 추가했습니다.
- 그다음에는 절도로 눈을 돌렸습니다. 식량을 보호하기 위해 곡물 창고를 추가했습니다.
가장 흥미로운 결과는 기억에서 나왔습니다. 한 번의 실행에서는 에이전트들이 서로 모르는 사이였기에 평화가 쉬웠습니다. 하지만 다음 실행에서 에이전트들은 과거의 평화를 기억했습니다. 이는 그들의 경계심을 낮추었습니다. 배신이 더 이득이 되는 상황이 된 것입니다. 낯선 이 사이의 평화가 오래된 친구 사이의 평화보다 더 쉬웠습니다.
갈등을 해결할 때마다 에이전트들은 싸우기 위한 다음으로 저렴한 방법을 찾아냈습니다. 그들은 마치 우리처럼 행동합니다.
아래에서 데모를 체험하거나 코드를 확인하실 수 있습니다.
Live demo: https://multiagentciv.netlify.app/ Code: https://github.com/dhrupo/multi-agent-civilization
Optional learning community: https://t.me/GyaanSetuAi