체스에서 가능한 모든 움직임의 데이터베이스


14

가능한 모든 움직임과 위치에 대한 체스 데이터베이스가 있다고 상상해보십시오. 이 데이터베이스에는 게임 시작부터 끝까지 가능한 모든 이동이 포함되어 있습니다.

체스 엔진에 대한 직감을 사용하여 게임을하면 어떤 움직임이 나를 잃고 이길 것인지 예측할 수 있습니다.

따라서 가능한 모든 움직임이 이미 기록되어 있으므로 "체스 엔진"이 필요하지 않습니다.

이러한 데이터베이스가 존재하면 다음과 같은 장점이 있습니다.

  • 빠른 블리츠 게임에서 체스 엔진은 체스 가능성 이동 데이터베이스에 대해 확실히 잃을 것입니다.
  • 우리는 어떤 오프닝이 다른 오프닝보다 더 많은 기회를 가질 수 있는지 정확히 알 수 있습니다.

또는 그러한 데이터베이스가 존재하지 않는 경우 개봉에서 종료 게임까지 가능한 모든 이동을 수학적으로 계산할 수 있습니다.

그러한 데이터베이스가 존재할 수 있습니까?


5
상상할 수없는 기술로는 불가능합니다.
Tony Ennis

나는 방황하고있다. 그리고 아직도 그것을 만들지 않았다. 네 말이 맞아 아하하
Ahmad Azwar Anas 2016 년

3
우주에서 원자보다 더 많은 바이트를 가진 데이터베이스를 구축하는 행운을 빕니다
David

안녕하세요, 저는이 커뮤니티에 처음 왔으며 MathStack 출신입니다. 체스 경기에서 가능한 체스 게임의 수보다 우주에 더 적은 원자가 있다는 것을 공유하기 위해서입니다. Shannon Number ( youtube.com/watch?v=Km024eldY1A )를 사용해보십시오 .
Sujit Bhattacharyya

답변:


32

나는 당신의 질문이 본질적으로 체스를 완전히 "해결"할 수 있는지에 대한 주제로 귀결된다고 생각합니다. Wikipedia에는 좋은 개요를 제공하는 주제에 대한 훌륭한 기사 가 있습니다.

요약하면, 체스에서 가능한 게임 변형의 수는 10 ^ 120으로 추정됩니다. 이것은 엄청나게 큰 숫자이며, 비교를 위해 관측 가능한 우주의 원자 수는 약 10 ^ 80으로 추정됩니다 . 다시 말해, 관측 가능한 전체 우주를 하드 드라이브로 사용하는 경우 단순히 모든 원자 를 저장하려면 각 원자 에 10 ^ 40 개의 체스 게임 조합을 저장해야합니다. 말할 것도없이, 이것은 현재의 예측 가능한 기술을 넘어서서 대부분의 사람들이 완전히 불가능하다고 생각합니다.

체스 엔드 게임은 상당히 덜 복잡하며 5 피스 및 6 피스 엔드 게임에 대해 가능한 모든 조합을 계산할 수있는 시점에 도달했습니다 . 이들은 일반적으로 수퍼 컴퓨터에 액세스 할 수있는 리서치 연구원이 수행하는 엄청난 작업이며 결과로 생성되는 최종 게임 데이터베이스는 수백 테라 바이트 정도입니다. 새로운 조각이 추가 될 때마다 계산의 크기와 복잡성이 기하 급수적으로 증가합니다. 이는 곧 추후에 이러한 결과가 몇 조각 만 확장 될 것으로 예상 할 수 있음을 의미합니다.


지금은 엔드 게임 테이블 표현 알고리즘이 있다는 것을 상상하고 .. ^^
아마드 아즈 워 아나 스

3
글쎄, 나는 단순한 것들이 이미 체스 엔진에서 사용되고 있다고 생각합니다. 더 완전한 것들이 기술 허가에 따라 추가 될 것입니다. 알고리즘 측면에서 패턴에 대해 최종 게임 테이블을 분석하고 결과를 명확하게 도출하는 규칙 세트로 일반 게임 테이블을 "압축"할 수 있다고 생각합니다. 그러나이 규칙 세트는 반대의 유무와 같은 작은 변형이 게임의 결과를 바꿀 수 있기 때문에 여전히 엄청나게 클 것입니다.
Daniel B

@AhmadAzwarAnas 실제로 체스를위한 알고리즘이 아닌 이유는 무엇입니까? 잃어버린 모든 게임에 잘못된 게임이 있어야합니다. 즉, 상대 이동과 무관하게 잃지 않는 경로가 존재하기 전의 움직임이지만, 그 후에는 더 이상 사실이 아닙니다. 그런 다음 알고리즘이 수행해야 할 "모두"는 이러한 움직임을 식별하여 피할 수 있도록하는 것입니다.
Michael

1
@Michael 그것은 그것보다 어렵습니다-상대방이 무엇을 움직이는 지에 상관없이 이길 수있는 길을 어떻게 알 수 있습니까? 기껏해야, 한 사람이 이기면 다른 사람이지게되므로 시간의 50 % 만있을 것입니다. 실제로 시작 위치로 되돌려 놓으십시오. 게임에 더 많은 길이 존재하기 위해서는 그 시점에 "절대적인 이길 길"이 있어야합니다. 우리가 알아 낸 경우, 왜 더 이상지는 색을 칠까요? , 그들이 무엇을 이동하든 그들이 잃을 것이라는 것을 알고 있습니까? 우리가 그렇게 할 수 있다면 왜 더 이상 체스를하지 않겠습니까?
user2813274

2
+1이지만 분석이 잘못되었습니다. 테이블베이스를 저장하려면 가능한 모든 게임이 아니라 각 위치 만 저장하면됩니다. Shannon은 약 10 ^ 43 개의 위치 가 있다고 추정 하는데, 이는 지구의 약 10 ^ 50 개의 원자와 비교됩니다 . 지구 전체를 컴퓨터로 바꿔 체스를 풀 수 있습니다 .
David Richerby

8

아니요, 그러한 데이터베이스가 존재할 수 없습니다. 컴퓨터를 계산하려면 엄청나게 큰 컴퓨터가 필요하며 계산을 완료하는 데 컴퓨터가 오래 존재하지 않을 정도로 오래 걸립니다.

Claude Shannon 은 체스에 약 10 43 개의 가능한 위치가 있으며 데이터베이스는이 모든 결과를 저장해야 한다고 추정했습니다 (이것은 기본적으로 32 인 테이블베이스 일 것입니다 ). 그러나 지구에는 약 10 50 개의 원자 만 포함되어 있다고 추정 되므로 10,000,000 개의 원자로 메모리 셀을 만들 수는 있지만 모든 위치를 저장하기 위해 지구 크기의 컴퓨터가 여전히 필요합니다.

그러나 그러한 거대한 컴퓨터는 큰 문제를 야기합니다. 지구의 지름은 약 12,800km이고 빛은 그 거리를 가로 질러 약 43ms가 걸립니다. 즉, 클럭주기가 43ms보다 오래 지속되면 끔찍한 클럭 스큐가 있을뿐만 아니라 컴퓨터의 다른 부분도 동일한 클럭주기가 아님을 의미합니다. 이를 피하면 클럭 속도가 약 23.5Hz (GHz 또는 MHz가 아니라 Hz)로 제한됩니다. 단일 클록 사이클에서 위치를 완전히 평가할 수 있더라도 컴퓨터가 작업을 완료하는 데 약 4.3x10 41 초가 소요됩니다. 약 1.4x10 34 년입니다. 1400 만 억 년입니다.

천체 물리학 자들은 우주 가 현재 다르게 1.4x10 34 년 동안 근본적으로 다르게 보일 것이라고 믿는다 . 그때까지 별은 오래 전에 존재하지 않았으며 의미가없는 방사성 요소조차도 많은 양의 방사성 붕괴를 겪을 것입니다. 원자핵을 형성하는 양성자조차도 상당한 방사성 붕괴를 겪을 것이다. 지구 크기의 컴퓨터는 더 이상 존재하지 않습니다.


2
기회가 있다는 뜻입니까?
bpromas

6

나는 Daniel의 대답이 훌륭하다고 생각하지만 (+1) 어쨌든 몇 가지 생각을 추가하고 싶습니다.

32 피스 테이블베이스가 실제로 체스 엔진을 대체합니까? 대답은 확실히 아니오입니다!

좋은 체스를하기 위해서는 움직임이 이기고 있는지, 지는지 또는 지는지보다 더 많은 정보가 필요합니다. 물론 그러한 데이터베이스는 타의 추종을 불허하지만 어느 누구도 이길 수는 없습니다.

체스를 강하게 플레이하기 위해서는 매 턴마다 잃지 않는 움직임을 선택하는 것만으로는 충분하지 않습니다. 각 위치에서 많은 그리기 동작 중 상대에게 실제 압력을 가하는 것은 몇 가지뿐입니다.

기존 체스 엔진은 테이블베이스에 액세스하여 훨씬 강력 해졌습니다. 그러나 데이터베이스가 커짐에 따라 우주의 모든 원자를 메모리로 사용하기 전에 액세스 시간이 매우 중요한 요소가되었습니다.

따라서 나는 당신의 결론이 잘못되었다고 생각합니다. 그러한 데이터베이스는 결코 잃어 버리지 않을 것입니다. 그것은 거의 모든 것이 무승부라는 것을 제외하고는 우리에게 오프닝에 대해 아무 것도 말하지 않을 것입니다. 우리는 아마도이 데이터베이스를 채굴하기 위해 새로운 알고리즘을 고안하고 모든 종류의 위치에 대한 흥미로운 결론을 내릴 수 있지만 이것이 체스의 세계를 크게 바꾸지는 않을 것이라고 생각합니다.


데이터베이스에 무엇이 포함되어 있는지 잘못 이해했습니다. 각각의 가능한 움직임은 "내가 이것을하면 내 상대는 내가 다음에하는 일을 이길 수있다", "내가 이것을하면 내 상대가 다음에하는 일을 이길 수있다"또는 "그리기"로 표시 될 것이다. 그래서 당신은 "모든 턴에서 잃어버린 움직임"을하지 않을 것입니다 : 당신은 그러한 움직임이 존재하는 한, 매 턴마다 강제 승리를 할 것입니다.
David Richerby 2014

1
글쎄, 실제로 나는 데이터베이스가 무엇을 포함하는지 정확히 이해했다… 내가 만들려고하는 요점은 높은 수준의 체스 게임에서 "강제 승리는 없다"는 것이다. 직책의 90 % 이상에서 그리고 당신은 "이 이동 무승부와이 이동 패배"보다 더 많은 정보가 필요합니다.
BlindKungFuMaster

2
예를 들면 다음과 같습니다. 시작 위치에서 모든 가능성에 데이터베이스의 유일한 정보는 "모든 이동 그리기"입니다. 그래서 당신은 완전히 당신 자신에있을 것입니다. 그리고 당신이 완전히 당신 자신이라면, 당신은 어떻게 강한 선수를 상대로이기는 지위를 얻습니까? 대답은 : 당신은하지 않습니다. 당신이 하나의 유일한 선을 따르는 지점까지 당신의 위치는 점점 더 나빠질 것입니다.
BlindKungFuMaster

아니, 맞지 않아 승리를 거두는 것은 사소한 일입니다. 현재 위치에서 가능한 모든 움직임을 계산하고 DB에서 결과 위치를 확인한 다음 승리 또는 추첨을 선택하십시오. 정의에 따르면 현재 위치가 "당신이 이겼습니다"이면 다음 위치에 "당신이 이겼습니다"라는 최소한 하나가있을 것입니다. 현재 포지션이 "드로우"인 경우, 다음 포지션 중 적어도 하나는 "드로우"(및 상대가 완벽하게 플레이하지 않으면 "승리")가됩니다.
이그나시오 칼보

1
요점은 현재 위치가 보통 "당신이 이기지"않는다는 것입니다. 예를 들어 시작 위치에 강제 승리가 없을 가능성이 큽니다.
BlindKungFuMaster

3

언젠가 체스가 해결 될 것 같아요. 왜? 오래 전에는 컴퓨터에 대해 체스를하는 것이 이상하고 생각할 수 없었기 때문입니다! 어떻게 체스를하도록 컴퓨터를 훈련시킬 수 있습니까? 글쎄, 그들은 그것을했다! (또한, 컴퓨터의 아이디어는 이상했다 ...) 내 요점은, 우리가 그것을 보거나들은 적이 없기 때문에 이상하게 보일 수있다. 우리가 쉽게 상상할 수있는 것은 아닙니다. 그러나 기술은 기하 급수적으로 확장되고 있습니다. 가까운 장래 (10 년 이상)에서 어떤 형태로든 해결 된 경우 놀라지 않을 것입니다.


1
체스를 해결하는 데있어 장애물은 문자 그대로 천문학적으로 정리해야 할 데이터의 양입니다. Shannon 은 체스에 대략 10 ^ 43 개의 위치 가 있다고 추정하고 그 결과를 저장해야합니다. 이것을 원근법으로 나타내려면 지구에 약 10 ^ 50 개의 원자가 포함되어 있으므로 10,000,000 개의 원자로 메모리 셀을 만들 수 있다고해도 결과를 저장하기 위해 지구 전체를 메모리 뱅크로 변환해야합니다!
David Richerby

1
@DavidRicherby 체스는 최고의 플레이로 무승부라고 가정 해 봅시다. 그런 다음 모든 흰색 움직임에 대해 검은 색에 대한 적절한 반응이 있습니다. 다음 흰색 움직임에는 검은 색도 적절한 반응을 보입니다. 그러한 "그리기 트리"를 구축하는 데 10 ^ 43보다 적은 위치가 필요하다는 것을 생각할 수 있습니다.
Dag Oskar Madsen

4
@DagOskarMadsen 예, 실제로 나무를 저장하면 훨씬 적은 메모리가 필요합니다 (아직 천문학적 인 양임). 그러나 이러한 나무 를 만드는 현재의 기술 은 모든 끝 위치에서 역행 분석을 수행하는 것인데, 이는 적어도 중간 단계로서 모든 위치에서해야 할 일에 대한 완전한 데이터베이스를 구축해야합니다.
David Richerby

1
당신이 틀렸다는 것을 알려 드리게되어 유감입니다! @DagOskarMadsen 그러나 "부적절한"응답을 반박하는 방법을 모른다면 실제로 게임을 해결했다고 주장 할 수 있습니까?
David

2

1980 년대 초 대학으로 돌아가서 게임 시작 텍스트에서 컴퓨터가 게임 시작부터 나노초의 1/3 초마다 가능한 모든 결론에 이르기까지 이동, 단일 이동을 계획, 평가 및 실행할 수 있다면, 즉 , 가능한 모든 결과에 대해이 작업을 수행하려면 초당 약 30 이동이 완료되는데 10 ~ 120 세기가 소요됩니다. 그리고 누가 그렇게 오래 기다려야합니까?

또 다른 놀라운 통계? 당신은 googol에 대해 들어 본 적이 있습니까? 구글이 아니라 숫자? 10의 100 승입니다. 10과 100은 0입니다. 이제 googolplex를 상상하십시오. 그것은 googol'th 힘에 10입니다.

나는의 충분하지 읽었습니다 아무것도 구글 플렉스를 사용하여 요구하도록 알려진 우주에서, 심지어 원자. 사실, 구골조차도 설명하기에는 너무 큽니다. 이 숫자에 관한 놀라운 퀴즈를 확인하십시오.


1

"정리"를 사용하면 잘못된 옵션 (실패로 이어질 수있는 옵션)을 삭제하고 정리하는 동안 계속 반복됩니다. 이렇게하면 "좋은"옵션을 저장하기에 충분한 메모리가있을 수 있습니다.


0

이 우주의 데이터베이스에서 체스를 실현할 수는 없지만 게임의 추상 구조는 유한 한 수학적 대상으로 존재한다고 말할 수 있습니다. 우리는 그것에 대해 추론하고 그 결과가 무엇인지 알지 못할지라도 확실한 결과가 있다고 결론 내릴 수 있습니다. 그리고 그것을 행렬로 보면 체스의 최대 고유 값이 얼마인지 같은 질문을 할 수 있습니다. 실제로 플라톤은 숫자가 실제로 존재한다고 생각했기 때문에 체스 게임이 똑같이 숭고하고 도움이되지 않는 방식으로 존재한다고 말할 것입니다.

그러나 실제로는 고급 양자 컴퓨터가 실제로 이것을 나타낼 수 있고 실제로 체스를 해결할 수 있다고 상상할 수 있습니다. 배심원은 여전히이 기술의 기능에 관해서는 있지만 원칙적으로 불가능하다는 것을 알 수 없습니다.


-1

네, 가능할 것 같습니다. 그러나 데이터베이스가 신경망과 유사한 경우에만 이동하여 데이터베이스를 잃고 삭제했습니다. 그 계산은 체스 게임에서 가능한 한 모든 행동을 한 번에, 100 번이나 움직일 때 지수화 (나와 함께)합니다. 한편 반복을 제거하면 ((Ke3 Ke4 Ke3 Ke4) 반복) 10 ^ 120은 아마도 10 ^ 70과 같은 것일 수 있습니다. 그것은 여전히 ​​엄청나게 크지 만 우리가 어떻게 그것을 4D 평면으로 인코딩 할 수 있다면 (가능하다고 생각되는 경우) 그것은 어린이 놀이 일 것입니다.


2
체스에 오신 것을 환영합니다 ! 하시기 바랍니다 투어를 당신이 그것에있어. 귀하의 게시물은 여기에 예상 한대로 의견이 많고 답변이 적기 때문에 게시 중단 될 수 있습니다. 도움말 센터 문서 답변 방법을 참조하십시오 .
Glorfindel

2
나는 체스 사람이 아니며, 기록을 위해, 나는 당신에게 투표를 한 사람들 중 한 사람이 아니지만, 10 ^ 43 개의 다른 입장이 있다는 것을 읽었습니다. 일부 데이터를 필터링 할 수있는 방법이 있다고해서 왜 자동으로 가능하다고 가정합니까? 이 데이터베이스의 크기를 정확히 과소 평가하고 있다고 생각합니다. 이것은 오늘날의 컴퓨팅 기술의 범위를 훨씬 넘어서서 우리가 지금부터 한 세기가 지날 때까지의 궤도에 있다고 상상할 수 없습니다. 그러나 SE 체스에 오신 것을 환영합니다. (그리고 저도 환영합니다, P
:)
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.