Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Evaluation function
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{for|the string evaluation function|eval}} {{distinguish|Function evaluation}} {{Short description|Function in a computer game-playing program that evaluates a game position}} {{Chess programming series}} An '''evaluation function''', also known as a '''heuristic evaluation function''' or '''static evaluation function''', is a function used by game-playing computer programs to estimate the value or goodness of a position (usually at a leaf or terminal node) in a game tree.<ref name="Shannon">{{citation|last=Shannon|first=Claude|year=1950|title=Programming a Computer for Playing Chess|publisher=Philosophical Magazine|series=Ser. 7|volume=41|issue=314|url=https://archive.computerhistory.org/projects/chess/related_materials/text/2-0%20and%202-1.Programming_a_computer_for_playing_chess.shannon/2-0%20and%202-1.Programming_a_computer_for_playing_chess.shannon.062303002.pdf|access-date=12 December 2021}}</ref> Most of the time, the value is either a [[real number]] or a quantized [[integer]], often in ''n''ths of the value of a playing piece such as a stone in go or a pawn in chess, where ''n'' may be tenths, hundredths or other convenient fraction, but sometimes, the value is an [[array data structure|array]] of three values in the [[unit interval]], representing the win, draw, and loss percentages of the position. There do not exist analytical or theoretical models for evaluation functions for unsolved games, nor are such functions entirely ad-hoc. The composition of evaluation functions is determined empirically by inserting a candidate function into an automaton and evaluating its subsequent performance. A significant body of evidence now exists for several games like chess, shogi and go as to the general composition of evaluation functions for them. Games in which game playing computer programs employ evaluation functions include [[chess]],<ref name="Science20181207">{{Cite journal|first1 = David|last1 = Silver|author-link1=David Silver (programmer)|first2 =Thomas |last2 = Hubert|first3 = Julian |last3 =Schrittwieser|first4 = Ioannis |last4 = Antonoglou|first5 = Matthew |last5 = Lai|first6 =Arthur |last6 = Guez|first7 = Marc |last7 = Lanctot|first8 = Laurent |last8 = Sifre|first9 = Dharshan |last9 = Kumaran|first10= Thore |last10= Graepel|first11= Timothy |last11= Lillicrap|first12=Karen |last12= Simonyan|first13= Demis |last13= Hassabis|author-link13=Demis Hassabis|title = A general reinforcement learning algorithm that masters chess, shogi, and go through self-play|journal = [[Science (journal)|Science]]|pages = 1140–1144|volume = 362|issue = 6419|doi = 10.1126/science.aar6404|pmid = 30523106|date= 7 December 2018|bibcode =2018Sci...362.1140S|doi-access = free}}</ref> [[go (game)|go]],<ref name="Science20181207"/> [[shogi]] (Japanese chess),<ref name="Science20181207"/> [[reversi|othello]], [[hex (board game)|hex]], [[backgammon]],<ref name="CACM">{{cite journal | url=http://www.bkgm.com/articles/tesauro/tdl.html | title=Temporal Difference Learning and TD-Gammon | date=March 1995 | access-date=Nov 1, 2013 | last=Tesauro | first=Gerald | journal=Communications of the ACM | volume=38 | issue=3 | pages=58–68 | doi = 10.1145/203330.203343 | s2cid=8763243 | doi-access=free }}</ref> and [[checkers]].<ref>{{Cite journal|doi=10.1126/science.1144079|title=Checkers is Solved|url=http://www.cs.nyu.edu/courses/spring13/CSCI-UA.0472-001/Checkers/checkers.solved.science.pdf|year=2007|last1=Schaeffer|first1=J.|last2=Burch|first2=N.|author3=Y. Björnsson|last4=Kishimoto|first4=A.|last5=Müller|first5=M.|last6=Lake|first6=R.|last7=Lu|first7=P.|last8=Sutphen|first8=S.|journal=Science|volume=317|issue=5844|pages=1518–22|pmid=17641166|s2cid=10274228}}</ref><ref>{{Cite journal|title=Solving Checkers|url=https://www.ijcai.org/Proceedings/05/Papers/0515.pdf|last1=Schaeffer|first1=J.|last2=Björnsson|first2=Y.|last3=Burch|first3=N.|last4=Kishimoto|first4=A.|last5=Müller|first5=M.|last6=Lake|first6=R.|last7=Lu|first7=P.|last8=Sutphen|first8=S.|journal=Proceedings of the 2005 International Joint Conferences on Artificial Intelligence Organization}}</ref> In addition, with the advent of programs such as [[MuZero]], computer programs also use evaluation functions to play [[video games]], such as those from the [[Atari 2600]].<ref name="MuZero">{{cite journal|arxiv=1911.08265|first1=Julian|last1=Schrittwieser|first2=Ioannis|last2=Antonoglou|title=Mastering Atari, Go, chess and shogi by planning with a learned model|last3=Hubert|last9=Hassabis|first11=Timothy|last11=Lillicrap|first10=Thore|last10=Graepel|first9=Demis|first8=Edward|first3=Thomas|last8=Lockhart|last7=Guez|first6=Simon|last6=Schmitt|first5=Laurent|last5=Sifre|first4=Karen|last4=Simonyan|first7=Arthur|journal=Nature|year=2020|volume=588|issue=7839|pages=604–609|doi=10.1038/s41586-020-03051-4|pmid=33361790|bibcode=2020Natur.588..604S|s2cid=208158225}}</ref> Some games like [[tic-tac-toe]] are [[Solved game|strongly solved]], and do not require search or evaluation because a discrete solution tree is available.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)