[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: AI Chess program: a project suggestion
In article <4lgf4b$sso@nntp.seflin.lib.fl.us>,
z007400b@bcfreenet.seflin.lib.fl.us (Ralph Silverman) writes:
Alexander 'Sasha' Chislenko (sasha1@netcom.com) wrote:
>:... A suggestion that could be of greater use, would be to
>: build a program that would "understand" chess by learning
>: from other games and its own experience.
What Sasha seems to be talking about is the development of
problem-solving structures. In this regard it may be helpful to see that
creative problem-solving is neither purely deductive nor purely inductive.
Rather, you have an oscillation between these operations. In Gestaltist
terms, you repeatedly create and shatter Gestalts within the context of a
larger Gestalt.
How to instigate such a process in a computer chess player? One can
imagine developing mini-processes similar in concept to "Life". Lets call
them "Smarts". Some Smarts could implement principles of play illustrated
by Capablanca. Others might illustrate principles championed by
Nimzovitch. Smarts would seek to replicate and expand their respective
domains in a virtual holographic space. Moves and positions could be
characterized in terms of Smarts content (i.e. how much of each Smart is
active) and, so could outcomes. Perhaps, eventually, complexes of Smarts
would evolve.
Ralph Silverman:
> not sure now...
> but think ideas like this are
> old...
>
> alternatively...
> in a unix os supporting the
> spawning of processes
> and
> multiprocess operation
> start with one program, playing itself,
> and learning from its mistakes...
> (two programs...adam and eve?)
> with randomizing tie breakers...
> and progeny...
> leave to fight it out for, oh,
> half a year...
> and see what evolves...
You might try this. If, by "learning," you mean that the most recent
non-winning move is trimmed from the choice tree, I guess you would end up
with a program that could look really good in some positions but pretty
awful in others.
Rubywand