Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: chess and neural networks

Author: Fernando Alonso

Date: 09:58:55 07/02/03

Go up one level in this thread


On July 02, 2003 at 12:17:27, Rolf Tueschen wrote:

>On July 02, 2003 at 11:35:14, Fernando Alonso wrote:
>
>>On July 02, 2003 at 04:17:28, Rolf Tueschen wrote:
>>
>>>On July 01, 2003 at 18:20:12, Fernando Alonso wrote:
>>>
>>>>On July 01, 2003 at 15:46:06, Ralph Stoesser wrote:
>>>>
>>>>>Right, that's what I intend with my question. During a 'normal' chess game a
>>>>>chess engine has to face often positions where the difference in evaluation
>>>>>between let's say the 5 best moves or so is very small. In such circumstances a
>>>>>trained neural network maybe could help to find good positional moves better
>>>>>than a classical evaluation.
>>>>>
>>>>>Ralph
>>>>
>>>>I agree with you, that is the important point. To put it in other words, can I (
>>>>a patzer) with my little chessknowledge, beat Fritz 8 using Fritz 8 to analyze
>>>>the moves I my brain "thinks"?. I am sure there is a level of playing were
>>>>someone using a program can beat easily the same program playing alone. But can
>>>>that knowledge be implemented in neural networks?
>>>
>>>
>>>What knowledge? For the moment nobody addressed Tom's objection IMO. Chess is
>>>very concrete.
>>>
>>>Now what you all are saying that there existed a "knowledge" to find "good"
>>>positional moves. Of course our human GM have that knowledge. It is a mixture
>>>out of the evaluation of the very concrete position, deeper (later) consequences
>>>and again very concrete calculations for these _later_ positions. I dont see why
>>>"fuzzy" approaches should do that job better than the "classical" evaluation.
>>>
>>>What you in special are proposing is NOT a question of "knowledge" but simply
>>>one of cheating. You know exactly the "thought process" of a program. So you can
>>>always discover a difference in the evaluation of the final position. Now the
>>>trick is to invite the machine to go blindly for a big difference which is then
>>>the win for you. This is typically the approach of smart amateurs with weaker
>>>chess talents. [Dreihirn comes to mind.] But real chess is something else. A GM
>>>does NOT win because he's a clairvoyant but because his judgement (combining the
>>>very concrete with the general experience for the actual and then later
>>>positions) is "better". A weaker chessplayer has no adaequate judgement at all.
>>>I cant see why neural networks should have one - where should it come from? Out
>>>of the blue?
>>>
>>>Again, you simply didn't address Tom's objection that "sometimes" it is very
>>>important where your Rook is standing. Very concrete. How to handle that
>>>"sometimes" it is "important"?
>>>
>>>Rolf
>>
>>First of all I would like to excuse my poor english or my lack of adecuate
>>judgement and my weak chess talent, that has probably caused some
>>misunderstanding. :)
>>I have never ment anything like cheating. What I had in my mind was the idea of
>>Advanced Chess played in Leon for some years, where both players had a computer
>>to assist them. The games were of high quality and the match very interesting.
>>And the concept of that way of playing is what I found interesting. A GM to plan
>>and a computer to calculate.
>
>
>Yes, but you spoke of a game against the same computer program, not against
>another GM, which we call Advanced Chess. Let's forget about the term
>'cheating'. What you want is still not existing, at least not on GM level.
>Because beating a computer program it doesn't need a GM, we have a player with
>2150 who can do that. But that isn't real chess. If you know how a computerchess
>program reacts you can outplay it with many tricks. I.e. you play exactly as
>stupid as the program plays chess but as a human you are even better qualified.
>Now if we take your proposal, a player with 1900 with the assistance of a
>computer program could beat that very same program. No need for a GM, IM, master
>or strong expert! Even 1900 players play better chess than the actual
>commercially available progs! And their worst weakness is compensated by the
>tactical strength of the machine. - So honestly I dont understand what you have
>in mind here. No company or sponsor in chess would be interested to see how a
>1900 beats their computerchess program. By definition anyone stronger than >1900
>will beat it too.
>
>
>> Reaching the understanding of the game that a GM
>>has it is imposible for a program nowadays, that is clear, but the tactical
>>ability is something some programs have reached and surpased humans in many
>>cases. I was just wondering how much of that understanding of the game is needed
>>to beat an opponent with the same tactical ability, that is to say, the same
>>program.
>
>
>I gave you the answer fair and straight: you need not much of understanding,
>probably 1900 is enough!
>
>
>
>>I believe programmers do this to improve their engines, try to keep the
>>tactical strengh of their programs and at the same time improve their chess
>>knowledge, by "clasical" methods. This is not cheating and I don´t understand
>>why trying to reach the same goal through neural networks should be called
>>cheating.
>
>Dont believe too much what programmers are doing! They mainly profit from the
>incredible hardware increases. Also what do you mean with tactical strength? It
>is true that certain positions are a favorite of the machines where they can
>calculate very good. But, even weak chessplayers with 1900 and better can
>outplay the programs with a technique that leaves the computerchess program
>vulnerable like a little baby. Of course you must prevent that the program can
>out-calculate you in an open position in the middlegame. But already 1900
>players know how to achieve that. And in your idea of a game of a player plus
>prog vs the same prog the knowledge of the 1900 is absolutly sufficient to beat
>the prog. I know that because I did it many times.
>
>
>
>
>>I am just giving a thought, I am not saying this is the answer to
>>chess programing but a wide field to investigate and combine both techniques.
>
>
>I dont see why your proposal has anything to do with neural networks. Who (and
>how?) should program that??? Perhaps you can elaborate.
>
>
>>
>>Neural networks solve very concrete math problems better than conventional
>>programming, for example finding shortest path between a number of points in
>>three dimensions. The problem is concrete, the solution aswell, and the way we
>>approach the problem is "fuzzy" if we want to solve it with a computer when the
>>number of points is to high. It is only an example, again I´m not saying
>>everything can ve solved with neural networks but it might be worth giving it a
>>try.
>>
>>Yes, sometimes is very important where your Rook is standing, but how knows if
>>the combination of a top program with some other new technique would help us to
>>handle that better. I believe many progress in science has been made attacking
>>the problems from a completely different point of view to the classical one and
>>combining techniques used in other fields of science but very little tested in
>>that particular one.
>
>
>Here you are right. Different angles are always very good. And as long as you
>have at least a 1900 human chessplayer ready to make the decisions (I can only
>say Dreihirn! see Althöfer) you can make all sorts of experiments. But classical
>CC is still assuming that a chessprogram makes its moves on its own - _without_
>interference of even a 1900 humanoid chessplayer! Where do you get this decision
>instance from???
>
>
>Rolf
>
>
>
>>
>>Best,
>>Fernando Alonso.

I asked how much knowledge would be nedded just to remark that not to much human
knowledge was needed to make a program play better, and that maybe, giving that
extra knowledge to the engine could be achieved through NN programming, due to a
learning function for example. The human player was only an image that should be
substituted by the NN. Very easy to say but probably harder to achieve.
There were some posts talking about how knightcap was able to increase its
ratings from 1900 to around 2200, thanks to its learning function based on NN. I
would like to see one day a top program trying that method, because only with
one third of that increase, we all would be talking great things about the
improvement that programmer achieved. And all that without improving the
"classical" code as we see in knightcap, same engine but one has "learned" and
the other hasn´t, 2200 ELO one, 1900 ELO the other, the gap is important. And
another important thing, thanks to that function we would have a really
interesting opponent as it would behave different facing the same position and
hopefully everytime play a little better. But as I said it was only a thought
and if it was easy to do it would have been done before.
Regards,
Fernando.



This page took 0.01 seconds to execute

Last modified: Thu, 07 Jul 11 08:48:38 -0700

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