SlideShare ist ein Scribd-Unternehmen logo
1 von 37
Computer Chess by Arkadiusz Janicki General Game Playing Seminar dr Paweł Rychlikowski Institute of Computer Science the Wrocław University 2009-11-25
References ,[object Object]
T.A. Marsland (1992)   Computer Chess and Search. Encyclopedia of Artificial Intelligence , S.C. Shapiro (ed), pp. 224r-241, Wiley & Sons, 2nd ed. 1992, ISBN 0471-50305-3.
Ernst A. Heinz (1997)  How DarkThought Plays Chess, ICC A Journal 20(3), pp. 166-176, Sept. 1997.
John L. Jerz (2009)  A Proposed Heuristic for a Computer Chess Program
Computer History Museum ,  Mastering the Game – A History of Computer Chess,  http://www.computerhistory.org/chess/
Wikipedia , accessed November 2009
Part 1: History
The Turk In 1769 the Hungarian engineer Baron Wolfgang von Kempelen built a chess playing machine for the amusement of the Austrian Queen Maria Theresia. It was a purely mechanical device, shaped like a Turk.  Naturally its outstanding playing strength was supplied by a chess master cleverly hidden inside the device. The machine was a fake.
 
1914 - El Ajedrecista In 1914 Torres y Quevedo constructed a device which played an end game of king and rook against king (Vigneron, 1914). The machine played the side with king and rook and would force checkmate in few moves however its human opponent played.  Since an explicit set of rules can be given for making satisfactory moves in such an end game, the problem is relatively simple, but the idea was quite advanced for that period.
Gonzales Torres y Quevedo demonstrating the chess automaton to Norbert Wiener in 1951
[object Object],[object Object]
[object Object],“ Although perhaps of no practical importance, the question is of theoretical interest, and it  is hoped that a satisfactory solution of this problem will act as a wedge in attacking other  problems of a similar nature and of greater significance. .”  „ Programming a Computer for Playing Chess”
First Computer Programs Dr. Dietrich Prinz in England wrote the first limited chess program in 1951.  Alex Bernstein, an experienced chess player and a programmer at IBM, wrote a program in 1958 that could play a full chess game (although it could be defeated by novice players).
1968 - Historyczny zakład ,[object Object]
[object Object]
$10,000 for the first program to achieve a USCF 2500 rating (players who attain this rating may reasonably aspire to becoming Grandmasters) was awarded to Deep Thought in August 1989
$100,000 for attaining world-champion status remains unclaimed.
Brutforce hardware In 1977 at Bell Laboratories, Ken Thompson and Joe Condon took the brute force approach one step further by developing a custom chess-playing computer called  Belle . By 1980 it included highly specialized circuitry that contained a “move generator” and “board evaluator,” allowing the computer to examine 160,000 positions per second.  This approach was so effective that in 1982 at the North American Computer Chess Championships (NACCC), this $17000 chess machine beat the Cray Blitz program running on a million supercomputer.
Liga mistrzów ,[object Object]
W 1996  Deep Blue  pokonuje Kasparova (1 z 6 gier) „ The Association for Computing Machinery (ACM), the first society in computing, announces a six game match between World Chess Champion Garry Kasparov and the top-rated chess program DEEP BLUE. A $500,000 prize fund has been established for the match to be held in Philadelphia, Pa., USA, Feb. 10-17, 1996, as part of ACM's year long 50th Anniversary Celebration which begins with the ACM Computing Week '96 conference. The winner will receive $400,000 with the remaining $100,000 going to the loser.”
1997   Game Over
 
Advanced Chess
Part 2: Implementation
Shannon „Type A” Strategy Evaluating Function: ,[object Object]
Rooks should be placed on open files. This is part of a more general principle that the side with the greater mobility, other things equal, has the better game.
Backward, isolated and doubled pawns are weak.
An exposed king is a weakness (until the end game). f(P) = 200(K-K') + 9(Q-Q') + 5(R-R') + 3(B-B'+N-N')  + (P-P') – 0.5(D-D'+S-S'+I-I') + 0.1(M-M') + ... K,Q,R,B,B,P are the number of White kings, queens, rooks, bishops, knights and pawns on the board. D,S,I are doubled, backward and isolated White pawns. Weakness – ie. exchange of queens
Shannon „Type A” Strategy  ” Type A” strategy considered all possible  moves to a fixed depth.  A world champion can construct (at best) combinations say, 15 or 20 moves deep. Some variations given by Alekhine ("My Best Games of Chess 1924-1937") are of this length.  Let M_1, M_2, M_3, ..., M_s be the moves that can be made in position P and let M_1P, M_2P, etc. denote symbolically the resulting positions when M_1, M_2, etc. are applied to P. Then one chooses the M_m which  maximizes  f(M_mP). A deeper strategy would consider the opponent's replies which are  minimized ...
“ Type B” strategy  “ Type B” strategy used chess knowledge to  explore the more promising lines to a greater depth. ,[object Object]
Select the variations to be explored  by some process so that the machine does not waste its time in totally pointless variations. A crude definition might be: ,[object Object]
g(P) = 0   otherwise Using this function, variations could be explored until g(P)=0, always, however, going at least two moves and never more, say, 10.
Shannon's ideas (...) the machine once designed would always make  the same move in the same position.  If the opponent made the same moves this would always lead to the same game. (...) the opening is another place where statistical variation can be introduced. It would seem desirable to have a number of the  standard openings  stored in a slow-sped memory in the machine. Perhaps a few hundred would be satisfactory. (...) program based on "type position"  could not  be constructed.  (...). Although there are various books analysing combination play and the middle game, they are written for human consumption, not for computing machines. (...)To program such a strategy we might suppose that any position in the machine is accompanied by a rather elaborate analysis of the tactical structure of the position suitably encoded. This analytical data will state that, for example,  the Black knight at f6 is pinned by a bishop, that the White rook at e1 cannot leave the back rank because of a threatened mate on c1, that a White knight at a4 has no move, etc. ;  - These data would be supplied by a program and would be continually changed and kept up-to-date as the game progressed.
Chess Program Anatomy ,[object Object]
Tree searching/pruning

Weitere ähnliche Inhalte

Was ist angesagt?

GamingAnywhere: An Open Cloud Gaming System
GamingAnywhere: An Open Cloud Gaming SystemGamingAnywhere: An Open Cloud Gaming System
GamingAnywhere: An Open Cloud Gaming SystemAcademia Sinica
 
Artificial Intelligence Lecture 2
Artificial Intelligence Lecture 2Artificial Intelligence Lecture 2
Artificial Intelligence Lecture 2SURAJ KUMAR
 
Generations of computer
Generations of computerGenerations of computer
Generations of computerAmir_Mukhtar
 
create windows 10 iso mage from existing installation
create windows 10 iso mage from existing installationcreate windows 10 iso mage from existing installation
create windows 10 iso mage from existing installationssuser1eca7d
 
The history of videogames
The history of videogamesThe history of videogames
The history of videogamespolthelost
 
Computer Generations
Computer  GenerationsComputer  Generations
Computer GenerationsArnob Khan
 
Tic tac toe game with graphics presentation
Tic  tac  toe game with graphics presentationTic  tac  toe game with graphics presentation
Tic tac toe game with graphics presentationPrionto Abdullah
 
Types of computer and its history
Types of computer and its historyTypes of computer and its history
Types of computer and its historyMuhammad kashif
 
History of os.1
History of os.1History of os.1
History of os.1myrajendra
 
Tic tac toe c++ project presentation
Tic tac toe c++ project presentationTic tac toe c++ project presentation
Tic tac toe c++ project presentationSaad Symbian
 
Design phase of game development of unity 2d game
Design phase of game development of unity 2d game Design phase of game development of unity 2d game
Design phase of game development of unity 2d game Muhammad Maaz Irfan
 
History of computers
History of computersHistory of computers
History of computersshashvut
 
Introduction to Android ppt
Introduction to Android pptIntroduction to Android ppt
Introduction to Android pptTaha Malampatti
 

Was ist angesagt? (20)

GamingAnywhere: An Open Cloud Gaming System
GamingAnywhere: An Open Cloud Gaming SystemGamingAnywhere: An Open Cloud Gaming System
GamingAnywhere: An Open Cloud Gaming System
 
Tic Tac Toe ppt
Tic Tac Toe pptTic Tac Toe ppt
Tic Tac Toe ppt
 
mBot
mBot mBot
mBot
 
Artificial Intelligence Lecture 2
Artificial Intelligence Lecture 2Artificial Intelligence Lecture 2
Artificial Intelligence Lecture 2
 
Generations of computer
Generations of computerGenerations of computer
Generations of computer
 
create windows 10 iso mage from existing installation
create windows 10 iso mage from existing installationcreate windows 10 iso mage from existing installation
create windows 10 iso mage from existing installation
 
The history of videogames
The history of videogamesThe history of videogames
The history of videogames
 
Computer Generations
Computer  GenerationsComputer  Generations
Computer Generations
 
Tic tac toe game with graphics presentation
Tic  tac  toe game with graphics presentationTic  tac  toe game with graphics presentation
Tic tac toe game with graphics presentation
 
Types of computer and its history
Types of computer and its historyTypes of computer and its history
Types of computer and its history
 
The Structure of Games
The Structure of GamesThe Structure of Games
The Structure of Games
 
History of os.1
History of os.1History of os.1
History of os.1
 
Tic tac toe c++ project presentation
Tic tac toe c++ project presentationTic tac toe c++ project presentation
Tic tac toe c++ project presentation
 
Gaming evolution
Gaming evolutionGaming evolution
Gaming evolution
 
Design phase of game development of unity 2d game
Design phase of game development of unity 2d game Design phase of game development of unity 2d game
Design phase of game development of unity 2d game
 
History of computers
History of computersHistory of computers
History of computers
 
Computer generation
Computer generationComputer generation
Computer generation
 
Tic toc game presentation
Tic toc game presentationTic toc game presentation
Tic toc game presentation
 
Introduction to Android ppt
Introduction to Android pptIntroduction to Android ppt
Introduction to Android ppt
 
Gaming technology
Gaming technologyGaming technology
Gaming technology
 

Andere mochten auch

Automatic Speech Recognition (seminarium)
Automatic Speech Recognition  (seminarium)Automatic Speech Recognition  (seminarium)
Automatic Speech Recognition (seminarium)Arkadiusz Janicki
 
Projektowanie zorientowane na użytkownika – poprawa użytecznosci systemu Hinc
Projektowanie zorientowane na użytkownika – poprawa użytecznosci systemu HincProjektowanie zorientowane na użytkownika – poprawa użytecznosci systemu Hinc
Projektowanie zorientowane na użytkownika – poprawa użytecznosci systemu HincArkadiusz Janicki
 
Tworzenie Obrazów Panoramicznych (seminarium)
Tworzenie Obrazów Panoramicznych  (seminarium)Tworzenie Obrazów Panoramicznych  (seminarium)
Tworzenie Obrazów Panoramicznych (seminarium)Arkadiusz Janicki
 
Kraken toolset - Cycorp Inc. (seminarium)
Kraken toolset - Cycorp Inc. (seminarium)Kraken toolset - Cycorp Inc. (seminarium)
Kraken toolset - Cycorp Inc. (seminarium)Arkadiusz Janicki
 
Computational Inteligence in Racing Games
Computational Inteligence in Racing GamesComputational Inteligence in Racing Games
Computational Inteligence in Racing GamesArkadiusz Janicki
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheLeslie Samuel
 

Andere mochten auch (7)

Automatic Speech Recognition (seminarium)
Automatic Speech Recognition  (seminarium)Automatic Speech Recognition  (seminarium)
Automatic Speech Recognition (seminarium)
 
Projektowanie zorientowane na użytkownika – poprawa użytecznosci systemu Hinc
Projektowanie zorientowane na użytkownika – poprawa użytecznosci systemu HincProjektowanie zorientowane na użytkownika – poprawa użytecznosci systemu Hinc
Projektowanie zorientowane na użytkownika – poprawa użytecznosci systemu Hinc
 
Visual Interest And NPR
Visual Interest And NPRVisual Interest And NPR
Visual Interest And NPR
 
Tworzenie Obrazów Panoramicznych (seminarium)
Tworzenie Obrazów Panoramicznych  (seminarium)Tworzenie Obrazów Panoramicznych  (seminarium)
Tworzenie Obrazów Panoramicznych (seminarium)
 
Kraken toolset - Cycorp Inc. (seminarium)
Kraken toolset - Cycorp Inc. (seminarium)Kraken toolset - Cycorp Inc. (seminarium)
Kraken toolset - Cycorp Inc. (seminarium)
 
Computational Inteligence in Racing Games
Computational Inteligence in Racing GamesComputational Inteligence in Racing Games
Computational Inteligence in Racing Games
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your Niche
 

Ähnlich wie Computer chess

Introducing ofcomputerchess
Introducing ofcomputerchessIntroducing ofcomputerchess
Introducing ofcomputerchessyangbo zhou
 
计算机棋盘游戏历史及现代应用
计算机棋盘游戏历史及现代应用计算机棋盘游戏历史及现代应用
计算机棋盘游戏历史及现代应用yangbo zhou
 
Topic - 6 (Game Playing).ppt
Topic - 6 (Game Playing).pptTopic - 6 (Game Playing).ppt
Topic - 6 (Game Playing).pptSabrinaShanta2
 
GamePlaying.ppt
GamePlaying.pptGamePlaying.ppt
GamePlaying.pptVihaanN2
 
Chess Engine Programming
Chess Engine ProgrammingChess Engine Programming
Chess Engine ProgrammingArno Huetter
 
Artificial Intelligence Introduction Chapter 1, AIMA
Artificial Intelligence Introduction Chapter 1, AIMAArtificial Intelligence Introduction Chapter 1, AIMA
Artificial Intelligence Introduction Chapter 1, AIMAbutest
 
International journal of engineering issues vol 2015 - no 2 - paper1
International journal of engineering issues   vol 2015 - no 2 - paper1International journal of engineering issues   vol 2015 - no 2 - paper1
International journal of engineering issues vol 2015 - no 2 - paper1sophiabelthome
 
Artificial intelligence - python
Artificial intelligence - pythonArtificial intelligence - python
Artificial intelligence - pythonSunjid Hasan
 
AI Supremacy in Games: Deep Blue, Watson, Cepheus, AlphaGo, DeepStack and Ten...
AI Supremacy in Games: Deep Blue, Watson, Cepheus, AlphaGo, DeepStack and Ten...AI Supremacy in Games: Deep Blue, Watson, Cepheus, AlphaGo, DeepStack and Ten...
AI Supremacy in Games: Deep Blue, Watson, Cepheus, AlphaGo, DeepStack and Ten...Karel Ha
 
AUTHOR SIAFA B. NEAL 5 STARS (1)
AUTHOR SIAFA B. NEAL  5 STARS (1)AUTHOR SIAFA B. NEAL  5 STARS (1)
AUTHOR SIAFA B. NEAL 5 STARS (1)Siafa Neal
 
Undecidability in partially observable deterministic games
Undecidability in partially observable deterministic gamesUndecidability in partially observable deterministic games
Undecidability in partially observable deterministic gamesOlivier Teytaud
 
Ibm's deep blue chess grandmaster chips
Ibm's deep blue chess grandmaster chipsIbm's deep blue chess grandmaster chips
Ibm's deep blue chess grandmaster chipsNadeeshaan Gunasinghe
 
NICHOLAS CARR that scene. What happens to HAL and Dave, an.docx
NICHOLAS CARR that scene. What happens to HAL and Dave, an.docxNICHOLAS CARR that scene. What happens to HAL and Dave, an.docx
NICHOLAS CARR that scene. What happens to HAL and Dave, an.docxpicklesvalery
 

Ähnlich wie Computer chess (20)

Introducing ofcomputerchess
Introducing ofcomputerchessIntroducing ofcomputerchess
Introducing ofcomputerchess
 
计算机棋盘游戏历史及现代应用
计算机棋盘游戏历史及现代应用计算机棋盘游戏历史及现代应用
计算机棋盘游戏历史及现代应用
 
Computer Chess 2004
Computer Chess 2004Computer Chess 2004
Computer Chess 2004
 
Topic - 6 (Game Playing).ppt
Topic - 6 (Game Playing).pptTopic - 6 (Game Playing).ppt
Topic - 6 (Game Playing).ppt
 
Chess superb
Chess  superbChess  superb
Chess superb
 
GamePlaying.ppt
GamePlaying.pptGamePlaying.ppt
GamePlaying.ppt
 
Chess Engine Programming
Chess Engine ProgrammingChess Engine Programming
Chess Engine Programming
 
Artificial Intelligence Introduction Chapter 1, AIMA
Artificial Intelligence Introduction Chapter 1, AIMAArtificial Intelligence Introduction Chapter 1, AIMA
Artificial Intelligence Introduction Chapter 1, AIMA
 
International journal of engineering issues vol 2015 - no 2 - paper1
International journal of engineering issues   vol 2015 - no 2 - paper1International journal of engineering issues   vol 2015 - no 2 - paper1
International journal of engineering issues vol 2015 - no 2 - paper1
 
chess-180927202627.pdf
chess-180927202627.pdfchess-180927202627.pdf
chess-180927202627.pdf
 
Artificial intelligence - python
Artificial intelligence - pythonArtificial intelligence - python
Artificial intelligence - python
 
Games.4
Games.4Games.4
Games.4
 
AI Supremacy in Games: Deep Blue, Watson, Cepheus, AlphaGo, DeepStack and Ten...
AI Supremacy in Games: Deep Blue, Watson, Cepheus, AlphaGo, DeepStack and Ten...AI Supremacy in Games: Deep Blue, Watson, Cepheus, AlphaGo, DeepStack and Ten...
AI Supremacy in Games: Deep Blue, Watson, Cepheus, AlphaGo, DeepStack and Ten...
 
AUTHOR SIAFA B. NEAL 5 STARS (1)
AUTHOR SIAFA B. NEAL  5 STARS (1)AUTHOR SIAFA B. NEAL  5 STARS (1)
AUTHOR SIAFA B. NEAL 5 STARS (1)
 
Undecidability in partially observable deterministic games
Undecidability in partially observable deterministic gamesUndecidability in partially observable deterministic games
Undecidability in partially observable deterministic games
 
Ibm's deep blue chess grandmaster chips
Ibm's deep blue chess grandmaster chipsIbm's deep blue chess grandmaster chips
Ibm's deep blue chess grandmaster chips
 
quarto
quartoquarto
quarto
 
NICHOLAS CARR that scene. What happens to HAL and Dave, an.docx
NICHOLAS CARR that scene. What happens to HAL and Dave, an.docxNICHOLAS CARR that scene. What happens to HAL and Dave, an.docx
NICHOLAS CARR that scene. What happens to HAL and Dave, an.docx
 
Spacewar
SpacewarSpacewar
Spacewar
 
cai
caicai
cai
 

Kürzlich hochgeladen

Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Principled Technologies
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 

Kürzlich hochgeladen (20)

Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 

Computer chess

  • 1. Computer Chess by Arkadiusz Janicki General Game Playing Seminar dr Paweł Rychlikowski Institute of Computer Science the Wrocław University 2009-11-25
  • 2.
  • 3. T.A. Marsland (1992) Computer Chess and Search. Encyclopedia of Artificial Intelligence , S.C. Shapiro (ed), pp. 224r-241, Wiley & Sons, 2nd ed. 1992, ISBN 0471-50305-3.
  • 4. Ernst A. Heinz (1997) How DarkThought Plays Chess, ICC A Journal 20(3), pp. 166-176, Sept. 1997.
  • 5. John L. Jerz (2009) A Proposed Heuristic for a Computer Chess Program
  • 6. Computer History Museum , Mastering the Game – A History of Computer Chess, http://www.computerhistory.org/chess/
  • 7. Wikipedia , accessed November 2009
  • 9. The Turk In 1769 the Hungarian engineer Baron Wolfgang von Kempelen built a chess playing machine for the amusement of the Austrian Queen Maria Theresia. It was a purely mechanical device, shaped like a Turk. Naturally its outstanding playing strength was supplied by a chess master cleverly hidden inside the device. The machine was a fake.
  • 10.  
  • 11. 1914 - El Ajedrecista In 1914 Torres y Quevedo constructed a device which played an end game of king and rook against king (Vigneron, 1914). The machine played the side with king and rook and would force checkmate in few moves however its human opponent played. Since an explicit set of rules can be given for making satisfactory moves in such an end game, the problem is relatively simple, but the idea was quite advanced for that period.
  • 12. Gonzales Torres y Quevedo demonstrating the chess automaton to Norbert Wiener in 1951
  • 13.
  • 14.
  • 15. First Computer Programs Dr. Dietrich Prinz in England wrote the first limited chess program in 1951. Alex Bernstein, an experienced chess player and a programmer at IBM, wrote a program in 1958 that could play a full chess game (although it could be defeated by novice players).
  • 16.
  • 17.
  • 18. $10,000 for the first program to achieve a USCF 2500 rating (players who attain this rating may reasonably aspire to becoming Grandmasters) was awarded to Deep Thought in August 1989
  • 19. $100,000 for attaining world-champion status remains unclaimed.
  • 20. Brutforce hardware In 1977 at Bell Laboratories, Ken Thompson and Joe Condon took the brute force approach one step further by developing a custom chess-playing computer called Belle . By 1980 it included highly specialized circuitry that contained a “move generator” and “board evaluator,” allowing the computer to examine 160,000 positions per second. This approach was so effective that in 1982 at the North American Computer Chess Championships (NACCC), this $17000 chess machine beat the Cray Blitz program running on a million supercomputer.
  • 21.
  • 22. W 1996 Deep Blue pokonuje Kasparova (1 z 6 gier) „ The Association for Computing Machinery (ACM), the first society in computing, announces a six game match between World Chess Champion Garry Kasparov and the top-rated chess program DEEP BLUE. A $500,000 prize fund has been established for the match to be held in Philadelphia, Pa., USA, Feb. 10-17, 1996, as part of ACM's year long 50th Anniversary Celebration which begins with the ACM Computing Week '96 conference. The winner will receive $400,000 with the remaining $100,000 going to the loser.”
  • 23. 1997 Game Over
  • 24.  
  • 27.
  • 28. Rooks should be placed on open files. This is part of a more general principle that the side with the greater mobility, other things equal, has the better game.
  • 29. Backward, isolated and doubled pawns are weak.
  • 30. An exposed king is a weakness (until the end game). f(P) = 200(K-K') + 9(Q-Q') + 5(R-R') + 3(B-B'+N-N') + (P-P') – 0.5(D-D'+S-S'+I-I') + 0.1(M-M') + ... K,Q,R,B,B,P are the number of White kings, queens, rooks, bishops, knights and pawns on the board. D,S,I are doubled, backward and isolated White pawns. Weakness – ie. exchange of queens
  • 31. Shannon „Type A” Strategy ” Type A” strategy considered all possible moves to a fixed depth. A world champion can construct (at best) combinations say, 15 or 20 moves deep. Some variations given by Alekhine ("My Best Games of Chess 1924-1937") are of this length. Let M_1, M_2, M_3, ..., M_s be the moves that can be made in position P and let M_1P, M_2P, etc. denote symbolically the resulting positions when M_1, M_2, etc. are applied to P. Then one chooses the M_m which maximizes f(M_mP). A deeper strategy would consider the opponent's replies which are minimized ...
  • 32.
  • 33.
  • 34. g(P) = 0 otherwise Using this function, variations could be explored until g(P)=0, always, however, going at least two moves and never more, say, 10.
  • 35. Shannon's ideas (...) the machine once designed would always make the same move in the same position. If the opponent made the same moves this would always lead to the same game. (...) the opening is another place where statistical variation can be introduced. It would seem desirable to have a number of the standard openings stored in a slow-sped memory in the machine. Perhaps a few hundred would be satisfactory. (...) program based on "type position" could not be constructed. (...). Although there are various books analysing combination play and the middle game, they are written for human consumption, not for computing machines. (...)To program such a strategy we might suppose that any position in the machine is accompanied by a rather elaborate analysis of the tactical structure of the position suitably encoded. This analytical data will state that, for example, the Black knight at f6 is pinned by a bishop, that the White rook at e1 cannot leave the back rank because of a threatened mate on c1, that a White knight at a4 has no move, etc. ; - These data would be supplied by a program and would be continually changed and kept up-to-date as the game progressed.
  • 36.
  • 39. Bit Boards: a mapping of the chess board squares to the computer’s internal binary structure, which allows the computer to store and analyze board positions very efficiently DeepThought bit boards
  • 40. Opening Books: a listing of known good move sequences that can be used at the beginning of a chess game. Endgame Databases: a catalog of previously analyzed board configurations near the end of a chess game that allows the program to play the remaining moves of the game flawlessly.
  • 41. Transposition tables (hash tables) A way to quickly check a catalog of positions already examined, which cuts down the number of positions that must be searched. 12 different piece types {K,Q,R,B,N,P,–K ... –P} on a 64-square board. Thus a set of 12*64 unique integers (plus a few more for en passant and castling privileges), { Ri }, may be used to represent all the possible piece/square combinations. Zobrist (1970) Pawn hash table - similar technique can be used to store an evaluation of the pawn structures in a position. Since the number of pawn positions examined is generally much smaller than the total number of positions searched, the pawn hash table has a very high hit rate, allowing a program to spend more time on sophisticated pawn evaluations because they are reused many times.
  • 42.
  • 43. This is followed by a phase of selective searches up to a limiting depth ( the horizon ).
  • 44. An evaluation function is applied at the frontier nodes to assess the material balance and the structural properties of the position (e.g., relative placement of pawns). To aid in this assessment a third phase is used, a variable depth quiescence search of those moves that are not dead (i.e., cannot be accurately assessed).
  • 45.  
  • 46. Horizon Effect (..., Pb2; Bxb2, Pc3; Bxc3, Pd4; Bxd4, Pe5; Bxe5)
  • 47.
  • 49. dynamic move ordering (history+ killer heuristic) [2, 16, 30, 32, 35], *
  • 50. recursive null-move pruning [7, 15, 17], *
  • 52. interior-node recognizers [18, 34], On average, all enhancements taken together reduce the effective branching factor of DARKTHOUGHT to 2-3 and its search-tree size to roughly 55% of that of the according minimal tree [21]. These observations are consistent with reports by other researchers [6, 38],
  • 53. Iterative Deepening Iterative Deepening: a technique that gradually increases the depth of the search tree (the number of moves and counter-moves) that is examined, rather than searching to a fixed depth. This allows the most efficient use of the limited time each player is given to choose a move.
  • 54.  
  • 55. DarkThought implements a standard node-expansion procedure whose structure probably does not differ much from that of other chess programs: • e xtension decisions related to incoming move (U), • internal iterative deepening (U), * • transposition-table lookup (L/U), * • interior-node recognizer decision (L/U), • endgame database lookup (L/U), * • null-move search with deep extension decision (U), * • single-reply extension decision (U), • futility pruning decision (F/L), • static evaluation (F/L), • search of all outgoing moves (L/U). 1. hashed move from transposition table (L/U), * 2. capture moves in MVV/LVA order (L/U), ( most valuable victim / least valuable aggressor) 3. killer moves (U), * 4. history moves (U), * 5. statically presorted remaining moves (U). F means &quot;frontier&quot; (depth = 1), L &quot;lower part&quot; (depth < 0), and U &quot;upper part&quot; (depth > 1)
  • 56. Killer heuristic, History heuristic .. produce a cutoff by assuming that a move that produced a cutoff in another branch at the same depth is likely to produce a cutoff in the present position, that is to say that a move that was a very good move from a different (but possibly similar) position might also be a good move in the present position. By trying the killer move before other moves, a game playing program can often produce an early cutoff, saving itself the effort of considering or even generating all legal moves from a position. A generalization of the killer heuristic is the history heuristic. The history heuristic can be implemented as a table that is indexed by some characteristic of the move, for example &quot;from&quot; and &quot;to&quot; squares or piece moving and the &quot;to&quot; square. When there is a cutoff, the appropriate entry in the table is incremented, such as by adding d² or 2d where d is the current search depth. This information is used when ordering moves.
  • 57. Null-move heuristic current position is so good for the side to move that best play by the other side would have avoided it. The faster the program produces cutoffs, the faster the search runs. The null-move heuristic is designed to guess cutoffs with less effort than would otherwise be required, whilst retaining a reasonable level of accuracy. The null-move heuristic is based on the fact that most reasonable chess moves improve the position for the side that played them. So, if the player whose turn it is to move can forfeit the right to move (or make a &quot;null move&quot; - an illegal action in chess) and still have a position strong enough to produce a cutoff, then the current position would almost certainly produce a cutoff if the current player actually moved.
  • 58. Deep Thought - Programmable Evaluation Function • Material-balance scoring, • evaluation flitihty-pruning decision, • Pawn-structure scoring (H), • Pawn-related King scoring (H), • race scoring of passed Pawns, • PST piece-placement scoring, • positional futility-pruning decision, • flirt her positional scoring (H). For all steps marked with an H, the evaluation infrastructure automatically hashes the computed scores.