맨위로가기

님 (게임)

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

님(Nim) 게임은 여러 개의 돌 무더기에서 두 명의 플레이어가 번갈아 가며 돌을 가져가는 고대 시대부터 존재해 온 게임이다. 각 플레이어는 최소 하나 이상의 돌을 가져가야 하며, 마지막 돌을 가져가는 플레이어가 승리하는 정규형과 마지막 돌을 가져가는 플레이어가 패배하는 역형 규칙이 있다. 님 게임은 1901년 찰스 L. 부턴에 의해 이론이 개발되었으며, 1939년 뉴욕 세계 박람회에서 니마트론이라는 님 게임 기계가 전시되기도 했다. 님 게임은 다양한 변형 규칙과 필승 전략이 존재하며, 각 무더기의 돌 개수를 이진법으로 표현하여 XOR 연산하는 님-합을 통해 승리 전략을 결정한다. 님 게임은 스프라그-그런디 정리의 핵심 예시로, 모든 불편 게임을 분석하는 데 사용된다.

더 읽어볼만한 페이지

  • 수학 게임 - 테트로미노
    테트로미노는 4개의 정사각형이 변끼리 연결된 폴리오미노로, 회전 및 반사 고려 방식에 따라 자유, 단면, 고정 테트로미노로 나뉘며, 직사각형 채우기 퍼즐과 테트리스 게임에 활용된다.
  • 수학 게임 - 폴리오미노
    폴리오미노는 n개의 정사각형을 변으로 연결하여 만든 도형으로, 평행이동, 회전, 반사를 통해 겹쳐지는지에 따라 분류되며, 테트리스와 같은 게임에 활용된다.
  • 조합론적 게임 이론 - 젠가
    젠가는 54개의 나무 블록으로 타워를 쌓아 블록을 제거하고 위에 올려 타워를 무너뜨리지 않고 버티는 게임이며, 마지막으로 턴을 완료한 플레이어가 승리한다.
  • 조합론적 게임 이론 - 게임 복잡도
    게임 복잡도는 상태 공간, 게임 트리 크기, 결정 복잡성, 게임 트리 복잡도, 계산 복잡성과 같은 척도를 사용하여 게임의 난이도와 경우의 수를 정량적으로 측정하는 개념이다.
  • 보드 게임 - 마작
    마작은 4명이 144개의 패, 칩, 주사위 등을 사용하여 4개의 조와 1개의 머리로 14개의 패를 완성하는 것을 목표로 하는 게임이며, 19세기 중국에서 시작되어 현재 다양한 국가에서 즐기는 보드 게임이다.
  • 보드 게임 - 카르카손 (보드 게임)
    카르카손은 타일을 놓아 중세 시대 풍경을 만들고 미플을 배치하여 소유권을 주장하며 점수를 얻는 보드 게임으로, 다양한 확장팩과 파생 작품, 비디오 게임으로 출시되었고 토너먼트와 세계 선수권 대회가 개최될 정도로 인기가 많다.
님 (게임)
게임 정보
이름
장르수학 게임
추상 전략 게임
플레이어 수2명
필요한 기술전략
게임 요소
무작위성없음

2. 역사

님 게임의 변형은 아주 옛날부터 있었다.[1] 이 게임은 중국에서 유래된 것으로 보이며, 捡石子|jiǎn-shízi중국어(돌 고르기)와 매우 유사하다.[2] 그러나 정확한 기원은 불분명하며, 님에 대한 초기 유럽의 언급은 16세기 초부터 나타난다. 찰스 L. 부턴은 1901년에 '님(Nim)'이라는 이름을 만들고 게임의 완전한 이론을 개발했다.[3]

1939년 뉴욕 세계 박람회에서 웨스팅하우스는 니마트론을 전시했다.[4] 1940년 5월 11일부터 10월 27일까지 6개월 동안 이 기계를 이긴 사람은 극소수였다.[5] 페란티는 1951년 영국 축제에서 님로드 컴퓨터를 제작했다. 1952년, W. L. 맥슨 코퍼레이션의 엔지니어들은 인간과 님 게임을 해서 정기적으로 이기는 무게 약 22.68kg의 기계를 개발했다.[6]

님 게임은 마틴 가드너의 1958년 2월 ''사이언티픽 아메리칸''의 수학 게임 칼럼에서 다뤄졌다. 님의 한 버전은 프랑스 누벨바그 영화 ''마리엔바드에서 보낸 지난 해''(1961)에서 중요한 상징으로 사용되었다.[8]

2. 1. 한국에서의 님 게임

한국에서는 님 게임이 전통 놀이와 결합하여 다양한 형태로 발전해 왔다. 구슬치기공기놀이 등에서 님 게임의 규칙과 유사한 요소를 발견할 수 있다. 특히 어린이와 청소년들의 교육 현장에서 님 게임은 수학적 사고력과 문제 해결 능력을 향상시키는 도구로 활용되고 있다. 여러 교육 기관 및 단체에서 님 게임을 활용한 수학 교육 프로그램을 개발하고 있으며, 이는 중도 진보 진영에서 강조하는 창의적 교육 방식과도 맥을 같이 한다. 최근에는 온라인 게임, 모바일 앱 등 다양한 플랫폼에서 님 게임을 즐길 수 있게 되면서, 님 게임은 더욱 폭넓은 연령층에게 사랑받는 게임으로 자리매김하고 있다.

3. 게임 규칙

님 게임은 여러 개의 돌 무더기를 놓고 두 명의 플레이어가 번갈아 가며 돌을 가져가는 방식으로 진행된다. 각 플레이어는 자신의 차례에 하나 이상의 돌을 가져가야 하며, 한 번에 하나의 무더기에서만 돌을 가져갈 수 있다.[2] 마지막 돌을 가져가는 플레이어가 승리하는 규칙을 '정규형(Normal Play)'이라고 하며, 마지막 돌을 가져가는 플레이어가 패배하는 규칙을 '역형(Misère Play)'이라고 한다.[18]

다음은 밥과 앨리스가 3개, 4개, 5개의 돌로 시작하는 정규형 게임을 진행하는 예시다.

힙 A힙 B힙 C이동
345게임 시작
145밥이 A에서 2개 가져감
142앨리스가 C에서 3개 가져감
132밥이 B에서 1개 가져감
122앨리스가 B에서 1개 가져감
022밥이 A에서 모두 가져감
012앨리스가 B에서 1개 가져감
011밥이 C에서 1개 가져감 (미제르 플레이에서는 C에서 2개 가져감)
001앨리스가 B에서 1개 가져감
000밥이 C에서 모두 가져가 승리



님 게임에서 이기기 위한 전략은 상대방을 특정 위치로 몰아넣는 것이다. 아래 표는 일반형과 미제르형에서 중요한 위치를 나타낸다.

2 묶음3 묶음4 묶음
1 1 *1 1 1 1 1 1 1 *
2 21 2 31 1 n n
3 31 4 51 2 4 7
4 41 6 71 2 5 6
5 51 8 91 3 4 6
6 62 4 61 3 5 7
7 72 5 72 3 4 5
8 83 4 72 3 6 7
9 93 5 62 3 8 9
n n4 8 124 5 6 7
4 9 134 5 8 9
5 8 13n n m m
5 9 12n n n n
* 일반 플레이에만 유효
미제르 플레이에만 유효


3. 1. 변형 규칙

님(게임)은 고대 시대부터 여러 가지 변형 규칙이 존재해 왔다.[1]

  • 뺄셈 게임: 한 번에 가져갈 수 있는 돌의 개수를 제한한다. (예: 한 번에 1, 2, 3개의 돌)
  • 21 게임: 여러 명이 차례로 숫자를 말하고, 21을 말하면 진다. 4의 배수를 말하는 것이 승리 전략.
  • 100 게임: 두 명이 번갈아 숫자를 더해 100을 만들면 이긴다. 자릿수가 연속적인 숫자(01, 12, 23, 34...)에 도달하는 것이 승리 전략.
  • 여러 무더기 규칙: 한 무더기 외에 각 무더기에서 동일한 수의 돌을 제거 가능.
  • 원형 님(Circular Nim): 원형으로 배치된 돌 중 인접한 돌을 1, 2, 3개 제거.
  • 그런디 게임: 하나의 무더기를 크기가 다른 두 개의 무더기로 나눈다.
  • 탐욕 님(Greedy Nim): 가장 큰 무더기에서만 돌을 선택.[10]
  • 인덱스-k 님(Index-k Nim): 최대 k개의 서로 다른 무더기에서 돌 제거.[12]
  • 님 만들기(Building Nim): 두 플레이어가 님 게임을 구성 후 진행.[13]
  • 고차원 님(Higher-dimensional Nim): 다차원 보드에서 연속된 조각 제거.[14]
  • 그래프 님(Graph Nim): 그래프에서 인접한 정점 제거.[15]
  • 캔디 님(Candy Nim): 마지막 물건과 최대 개수의 캔디를 가져가는 것이 목표.[16]

4. 필승 전략

님 게임의 필승 전략은 각 무더기에 있는 돌의 개수를 이진수로 표현하고, 이진수 각 자리의 숫자를 XOR (배타적 논리합, 님-합) 연산하여 결정된다. 정규형에서는 님-합이 0이 아닌 경우 첫 번째 플레이어가 필승하고, 님-합이 0인 경우 두 번째 플레이어가 필승한다.

일반적인 게임에서 승리하는 전략은 모든 힙의 님-합을 0으로 만드는 것이다. 만약 님-합이 0이 아니라면, 항상 0으로 만들 수 있다. 님-합이 이미 0이라면, 상대방이 실수하지 않는 이상 다음 플레이어는 패배한다.

어떤 돌을 가져와야 할지 결정하기 위해서는, 모든 힙 크기의 님-합을 계산한다. 이 값을 X라고 하자. 그런 다음 X와 각 힙 크기의 님-합을 계산하여, 그 결과가 원래 힙 크기보다 작은 힙을 찾는다. 승리하는 수는 그 힙에서 돌을 가져와서, 힙의 크기를 원래 크기와 X의 님-합으로 줄이는 것이다.

예를 들어, 힙의 크기가 각각 3, 4, 5라고 하면, 님-합은 다음과 같이 계산된다.


  • 3 = 0112
  • 4 = 1002
  • 5 = 1012
  • 님-합 (X) = 0102 = 210


이제 각 힙의 크기와 X의 님-합을 계산한다.

  • 3 ⊕ 2 = 1
  • 4 ⊕ 2 = 6
  • 5 ⊕ 2 = 7


힙 A의 결과(1)가 원래 크기(3)보다 작으므로, 힙 A에서 돌 2개를 가져와 크기를 1로 줄이면 님-합이 0이 된다.

만약 힙이 두 개만 남은 경우에는, 더 큰 힙에서 돌을 가져와 두 힙의 크기를 같게 만드는 것이 필승 전략이다. 이렇게 하면 상대방이 어떤 수를 두든, 플레이어는 다른 힙에서 같은 수만큼 돌을 가져와 항상 님-합을 0으로 유지할 수 있다.

역형(미제르) 게임에서는 마지막 돌을 가져가는 플레이어가 패배한다. 이 경우, 일반적인 게임과는 약간 다른 전략이 필요하다. 돌이 2개 이상인 무더기가 2개 이상일 때, 님-합을 0으로 유지하면 상대방은 무더기가 1개 이하가 될 수밖에 없게 된다. 특히, 무더기가 두 개인 경우에는 각 무더기의 돌 개수가 같으면 후수 필승, 다르면 선수 필승이다.

"21" 게임은 님 게임의 변형으로, 여러 명이 숫자를 불러 21을 말하는 사람이 지는 게임이다. 이 게임은 21-n개의 돌을 가진 뺄셈 게임으로 모델링할 수 있다. 2인용 게임에서는 항상 4의 배수를 말하면 필승한다.[18]

4. 1. 님-합 (Nim-Sum)

님-합(Nim-Sum)은 조합 게임 이론에서 사용되는 개념으로, 각 무더기의 크기를 이진수로 표현했을 때 각 자리의 숫자를 XOR 연산한 값이다. 님-합은 일반적인 덧셈과 달리 받아올림이 없으며, 이진수 각 자리에 대해 다음 규칙을 따른다.

  • 0 XOR 0 = 0
  • 0 XOR 1 = 1
  • 1 XOR 0 = 1
  • 1 XOR 1 = 0


님-합은 님 게임뿐만 아니라 다른 불편 게임(Impartial Game)의 분석에도 사용되는 중요한 개념이다. (스프라그-그런디 정리 참고) 미제르 규칙에서는 온순한 게임만이 미제르 님과 동일한 전략을 갖는다.[9]

게임 이론의 핵심은 힙 크기의 이진 디지털 합이다. 즉, 한 자릿수에서 다른 자릿수로의 올림을 무시한 합(이진법)이다. 이 연산은 "비트 연산 XOR" 또는 "GF(2)에서 벡터 덧셈" (모듈로 2의 비트 덧셈)으로도 알려져 있다. 조합 게임 이론에서는 일반적으로 '님-합'이라고 하며, 여기에서도 그렇게 부른다. ''x''와 ''y''의 님-합은 ''x'' ⊕ ''y''로 표기한다.

크기가 3, 4, 5인 힙을 사용한 님-합 계산의 예는 다음과 같다.

이진법십진법설명
0112310힙 A
1002410힙 B
1012510힙 C
---------
0102210힙 A, B, C의 님-합, 3 ⊕ 4 ⊕ 5 = 2



암산하기 더 쉬운 등가 절차는 힙 크기를 2의 서로 다른 지수의 합으로 표현하고, 동일한 거듭제곱 쌍을 취소한 다음 남은 것을 더하는 것이다.

3 = 0 + 2 + 1 = 2 1 힙 A

4 = 4 + 0 + 0 = 4 힙 B

5 = 4 + 0 + 1 = 4 1 힙 C


  • -------------------------------------------------------------------

2 = 2 1과 4를 취소한 후 남은 것

코인 산의 개수를 n으로 하고, 각 산의 코인 개수를 A1, …, An으로 한다.

S = A1 ⊕ … ⊕ An으로 둔다. (⊕는 비트배타적 논리합(님 합)을 나타낸다.)

S ≠ 0일 때는 반드시 S = 0으로 만들 수 있고, 그러면 다음 상대는 S ≠ 0으로 할 수 밖에 없게 된다. 이것을 반복하면 반드시 이길 수 있다. S ≠ 0이라면 선공 필승, S = 0이라면 후공 필승으로 할 수 있다.

선수 S가 Ak에서 동전을 제거하여 Bk가 되었다고 가정한다.

T = A1 ⊕ … ⊕ Bk ⊕ … ⊕ An

라고 둔다. 배타적 논리합은 교환 법칙, 결합 법칙 및 X ⊕ X = 0을 만족하므로, 다음 등식이 성립한다.

T = (A1 ⊕ … ⊕ Ak ⊕ … ⊕ An) ⊕ Ak ⊕ Bk

= S ⊕ Ak ⊕ Bk

다음 두 보조정리에서 따른다.

'''보조정리 1''':S=0일 때, 임의의 연산에 대해 T ≠ 0이다.

증명:Ak ⊕ Bk ≠ 0이므로 명백하다.

'''보조정리 2''':S ≠ 0일 때, 어떤 연산에 대해 T=0이다.

증명:S의 비트 중 0이 아닌 최고 차수를 2d의 차수라고 한다. Ak의 2d의 차수가 0이 아닌 k를 하나 선택한다(이러한 k는 반드시 존재한다). S ⊕ Ak < Ak이므로, k번째 산에서 몇 개의 동전을 제거하여 Bk = S ⊕ Ak개로 만들 수 있다. 이 때 T=0이 된다.

5. 수학적 이론

님 게임은 스프라그-그런디 정리의 핵심적인 예시이며, 이 정리는 모든 불편 게임이 님 게임의 님-합과 동등하다는 것을 보여준다.[9] 님 게임은 유한한 초기 힙과 개수에 대해 수학적으로 해결된 게임이며, 어떤 플레이어가 이길지, 그리고 어떤 승리 수가 있는지 쉽게 계산할 수 있다.[9] 님 게임은 포셋 게임의 특수한 경우이며, 세 개의 힙을 가진 님 게임의 진화 그래프는 울람-워버튼 오토마톤의 진화 그래프와 관련이 있다.[9]

게임 이론의 핵심은 힙 크기의 이진 디지털 합(비트 연산 XOR 또는 GF(2)에서의 벡터 덧셈, 조합 게임 이론에서는 '님-합')이다. ''x''와 ''y''의 님-합은 ''x'' ⊕ ''y''로 표기한다. 예를 들어 크기가 3, 4, 5인 힙의 님-합은 다음과 같이 계산한다.

이진법십진법설명
0112310힙 A
1002410힙 B
1012510힙 C
---------
0102210힙 A, B, C의 님-합, 3 ⊕ 4 ⊕ 5 = 2



다른 계산법으로는 힙 크기를 2의 서로 다른 지수의 합으로 표현하고, 동일한 거듭제곱 쌍을 취소한 다음 남은 것을 더하는 방법이 있다.

설명
3 = 0 + 2 + 1 =2 1힙 A
4 = 4 + 0 + 0 =4힙 B
5 = 4 + 0 + 1 =4 1힙 C
------------
2 =21과 4를 취소한 후 남은 것



일반 플레이에서 승리 전략은 모든 수의 님-합을 0으로 만드는 것이다. 님-합이 0이면 상대방이 실수하지 않는 한 다음 플레이어가 진다. 승리하는 수는 X를 모든 힙 크기의 님-합이라 할 때, X와 힙 크기의 님-합이 힙 크기보다 작은 힙을 찾아, 그 힙을 원래 크기와 X의 님-합으로 줄이는 것이다.

힙이 두 개만 남으면 더 큰 힙의 개체를 줄여 힙을 같게 만드는 것이 전략이다. 그러면 상대방이 어떤 수를 두든, 플레이어는 다른 힙에 동일한 수를 두어 마지막 개체를 가져갈 수 있다.

미제르 게임으로 플레이할 때, 님 전략은 일반 플레이 수가 크기가 1인 힙만 남을 경우에만 다르다. 이 경우, 올바른 수는 크기가 1인 힙을 홀수 개로 남기는 것이다.

크기가 3, 4, 5인 힙을 가진 미제르 게임에서 전략 적용 예시는 다음과 같다.

ABC님-합
3450102=210A에서 2개를 가져와 000을 남기므로 내가 이긴다.
1450002=010당신은 C에서 2개를 가져간다.
1431102=610나는 B에서 2개를 가져간다.
1230002=010당신은 C에서 1개를 가져간다.
1220012=110나는 A에서 1개를 가져간다.
0220002=010당신은 C에서 1개를 가져간다.
0210112=310일반 플레이 전략은 B에서 1개를 가져와 크기가 1인 힙을 짝수 개(2) 남기는 것이다. 미제르 플레이의 경우, 나는 B 힙 전체를 가져가 크기가 1인 힙을 홀수 개(1) 남긴다.
0010012=110당신은 C에서 1개를 가져가 지게 된다.


참조

[1] 논문 Context and driving forces in the development of the early computer game Nimbi http://muse.jhu.edu/[...]
[2] 서적 Kvant Selecta: Combinatorics, I, Volume 1 https://books.google[...] American Mathematical Society
[3] 논문 Nim, ''a game with a complete mathematical theory''
[4] 서적 The Art of Clear Thinking Harper and Brothers Publishers
[5] 웹사이트 The Nimatron https://daily.jstor.[...] 2022-03-01
[6] 뉴스 The Talk of the Town – It http://www.newyorker[...] 1952-08-02
[7] 웹사이트 How to Construct NIM Playing Machine http://harveycohen.n[...]
[8] 논문 Games and game structures in Robbe-Grillet
[9] arXiv Nim Fractals
[10] 서적 Winning Ways for your Mathematical Plays A K Peters Ltd
[11] 간행물 Nim Restrictions http://www.emis.de/j[...]
[12] 논문 A Generalization of the Game Called Nim https://www.jstor.or[...] Annals of Mathematics 1910
[13] arXiv Building Nim
[14] 웹사이트 1021 - 2D-Nim http://poj.org/probl[...] Poj.org 2019-01-09
[15] 논문 The Game of Nim on Graphs https://library.ndsu[...] 2011
[16] arXiv P Play in Candy Nim 2018-05-18
[17] 웹사이트 The History of Combinatorial Game Theory http://www.mathstat.[...] Dalhousie University 2009-01-24
[18] 웹사이트 組み合わせゲームとゲーム木について https://dev.classmet[...] クラスメソッド株式会社 2018-03-23
[19] 웹사이트 石取りゲーム(Nim) [いかたこのたこつぼ] https://ikatakos.com[...]



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com