Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Symbolic: 40 goals - data requirements

Author: Matthew Hull

Date: 11:36:31 02/19/04

Go up one level in this thread


On February 19, 2004 at 14:03:03, Dann Corbit wrote:

>On February 19, 2004 at 13:25:20, Steven Edwards wrote:
>
>There was a study that showed people who write down their goals are extremely
>likely to achieve them.
>
>>Symbolic Project Goals (required):
>>
>>1. Produce a chess playing program in Lisp with assistance of C++ support of low
>>level chess intrinsics.
>>
>>2. Portability (platform language independence): only ANSI C++ required.
>>
>>3. Portability (platform runtime independence): only a terminal emulator and
>>POSIX conformance (including the pthread library).  Linux and OpenBSD are
>>explicitly supported.
>
>Why do you need a terminal emulator?  Pthreads are available for Win32.
>
>>4. Portability (Lisp dialect independence): All chess specific intrinsics can be
>>ported to a regular Common Lisp environment.
>>
>>5. Limitation of the seach node count to a mean of one thousand.  While this by
>>itself is not a sufficient condition to prove human-like reasoning, it is a
>>necessary one.
>
>This restriction seems awfully arbitrary to me.  Why paint yourself into a
>corner?  Suppose that you can be world champion by examination of 2000 nodes?
>
>>6. Explicit and extensive use of pattern matching.
>>
>>7. Explicit and extensive use of planning.
>>
>>8. Natural language output including construction of a search narrative
>>describing the reasoning used for a particular search.  This will constitute
>>proof that the program is not just an interative A/B searcher in disguise.
>>
>>9. The capability to interactively replay the planning/search process.
>>
>>10. To perform a search with a mean time of less than one minute.
>
>Why not aim for a standard time control.  Fixed time of one minute is extremly
>unusual in actual game play.
>
>>11. To operate on modest hardware such as a 400 MHz PPC with 256 MByte RAM and
>>10 GByte disk.
>
>By the time you are done, that will be a toy configuration.  In two years, PDA's
>will normally come configures like that, so it is a laudable goal, I think.


This is where I have some serious questions.  We are talking about how much
knowledge, combined with the appropriate procedure, is required to play a
reasonably strong game, if not the strongest game?   How much data is that?
Today, without TBs, the information is relatively small, but the processing
requirements are potentially infinite on some asymtote.

The Symbolic procedure seems to be fundamentally different, needing much less
processing (400mhz?).  How much data will be required such that with relatively
minimal processing, a scintillating game will be the result?

I pondered this question when considering how one might create a chess program
with mostly neural networks.  Such networks need to be trained.  The traditional
trained network needs plenty of examples from which to generalize all the
important cases.  Quite apart from figuring out a sensible design, an
off-the-shelf package like BrainMaker would need, what, millions of "accurate"
examples from which to generalize all the important concepts of chess strategy
and tactics, and who-knows-how-many neurons in which to store this vast
"knowledge", not to mention the huge investment in CPU time needed to assimilate
the examples and store them in the neural-net.  However, all the major
processing would happen up front, as in tablebase calculation, and the actual
game play CPU requirement would be relatively minimal.

It seems that the approach of Symbolic would have to have similar information
requirements to the neural-network project to make up for what conventional
programs "learn" (and soon forget) through search.




>
>>12. To be able to solve at least two thirds of the problems on some common EPD
>>test suites.
>
>This is too vague to be a meaningful goal.
>
>>13. To incorporate the various CNS (Chess Notation Standards) specifications.
>>
>>14. To incorporate tablebases.
>>
>>15. To incorporate an extensive opening library.
>>
>>16. To be able to use an ANSI standard terminal emulator for a user interface.
>
>Do you mean attach to the console or something else.  I hope you are not
>planning to use curses or some other bletcherous monstrosity.
>
>>17. To be able to use natural language spoken output on some platforms.
>
>This is larger than the rest of the project put together.  Why inject this?
>
>>18. To play in human events under standard USCF rules (dependent upon the
>>availablity of USCF tournaments allowing program participation).
>>
>>19. To achieve a rating of at least 1800 Elo against humans (again, dependent
>>upon the availablity of tournaments).
>>
>>20. Support for automated play against itself or against other programs where a
>>suitable interface is available.
>>
>>
>>Symbolic Project Goals (optional, long-term):
>>
>>1. To have an automated learning facility that incorporates persistant plan and
>>pattern libraries.
>>
>>2. To have support for interactive tutoring of the program.
>>
>>3. To have support for interactive tutoring of the user.  This item has definite
>>commercial possibilities.
>>
>>4. To be able to use natural language spoken input on some platforms (HAL 9000
>>mode).
>
>I think you may have bitten off more than you can chew here.
>
>>5. To produce a QuickTime or MPEG movie of the details of a search.
>
>That alone would be worth the price of admission.  I think that would be great
>fun.
>
>>6. To be able to solve at least nine tenths of the problems on some common EPD
>>test suites.
>
>If you name the test suites, then your goal will be more concrete.
>
>>7. To play at master level (2200 Elo) or better (dependent upon the availablity
>>of tournaments).
>>
>>8. To be able to intelligently annotate PGN game scores.  (Another commercial
>>possibility.)
>
>Define "intelliegently"
>
>>9. To have search tunability that retains the mean search node count independent
>>of platform speed or the time control.
>>
>>10. To be able to construct a predictive model of an opponent's play.
>>
>>11. To be able to pre-calculate and store opening plans and associate them with
>>the opening library.
>>
>>12. Incorporation of a humorous praise/insult facility to amuse the user.
>
>Yawn.
>
>>13. To port the program (or most of its functionality) to a modest hand held
>>device (e.g., my iPAQ).
>>
>>14. To support certain chess hardware peripherals (e.g., autosensing boards,
>>robotic arms, clocks).
>>
>>15. To include a kibbutz facility.
>>
>>16. To include a GUI for Mac OS X.
>>
>>17. To include a GUI for X Windows.
>
>There are lots of GUI systems already created.  What is the point of making
>another one?  This goal also feels very "tacked on" to me.
>
>>18. To produce a version in German.
>
>If you use resource files, or a database to store menu and data items, then
>others can do this work for you.
>
>>19. To reduce the mean node count to under one hundred.
>
>Capablanca only looked at one -- the best one.  Wink. ;-)
>
>>20. To become World Champion.
>
>Every chess programmer wishes for this.



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.