To kick off some technical discussions

Code, algorithms, languages, construction...
hyatt
Posts: 1242
Joined: Thu Jun 10, 2010 2:13 am
Real Name: Bob Hyatt (Robert M. Hyatt)
Location: University of Alabama at Birmingham
Contact:

Re: To kick off some technical discussions

Post by hyatt » Sun Jun 20, 2010 9:32 pm

Fernando wrote:Bob:
It is curious what you say about that Beal effect. Many many years ago when I played mostly Champion Chess Challenger, a machine around 1600 elo I think, I realized -and even I wrote about that- that the machine played better when in random mode. In that case the machine chose between the 2 or 3 - I suppose- best moves found so far and so i reasoned that, as much by definition the machine was not a chess genius, so his absolutely "best" moves probably were not such a thing many timers and then the random function gave it the chance to play the really best move in the position. I presume the Beal argument is lot different, but I could not help to remember my little piece of analysis made from the side of ignorance.
Respect what you say of that function of Crafty, it is not what I am thinking about as you surely realize. It is not a question of weakening same good old Crafty, but of creating a new kind of it. Don't you think it could be a new, exciting avenue for you to try? As both of us are arund 60 nor more men, we both knoiw how much we need some extra kicks to get fun...:-)


Fern

The basic premise of "The Beal Effect" (he did not call it that, that's my terminology since he made the initial observation) is that if a program is trying to maximize its score, but the score it totally random, then the more possible moves the program has at any position, the greater the chance it will get a large random number in the mix. If you only have a few moves (such as when escaping checks or in a bind) then you have fewer chances to get one of those big random scores. So in effect, the program plays down pathways where it has lots of move choices, which is not a terribly bad plan since with more choices, you are less forced into any one idea.

Royal pain in the butt for dumbing things down however...

Steve Maughan
Posts: 10
Joined: Thu Jun 10, 2010 2:36 am

Re: To kick off some technical discussions

Post by Steve Maughan » Sun Jun 20, 2010 11:33 pm

Hi Chris,
Chris Whittington wrote:...you are hill climbing...
Yes this is the problem and the reason why many programs hit a dead end. They reach their local optimum. What they need to be able to do is "look across the valley" and try to find a higher peak. Philosophically there are only two ways to optimize a problem - hill climbing (which you've discussed) and probabilistic optimization (e.g. genetic algorithms or simulated annealing). All optimization algorithms (to date) fall into these two categories or a combination of the the two. So maybe we need to look at ways of applying probabilistic optimization to the problem. One possibility would be to use a genetic algorithms where each gene was a component of the search (e.g. null move, LMR etc). You could then "evolve" different (and hopefully better) versions of the engine. This approach will help if a potential improvement heavily interacts with other search mechanisms (e.g. LMR may interact with futility pruning).

Another approach (and one that I have taken in the past) is to rewrite the engine from scratch based on the (new) search mechanism that shows the most potential for improvement. So for example, Monarch currently does not use LMR; although I think this search mechanism is potentially tremendously powerful. So I'm planning to tear up the search in Monarch and start with a vanilla alpha-beta algorithm. Then the first selective search mechanism I'll add will be LMR (possibly with aggressive reductions). I'll then add other search mechanisms, testing as I go. Let's see what happens.

Cheers,

Steve

hyatt
Posts: 1242
Joined: Thu Jun 10, 2010 2:13 am
Real Name: Bob Hyatt (Robert M. Hyatt)
Location: University of Alabama at Birmingham
Contact:

Re: To kick off some technical discussions

Post by hyatt » Mon Jun 21, 2010 3:19 pm

The only problem with this subject is that if you steer toward complications, but your search can't resolve them, then you are committing suicide. In the game of chess, you get points for winning, not for playing creatively or speculatively. Somehow that key point gets lost in these discussions.

User avatar
Chris Whittington
Posts: 437
Joined: Wed Jun 09, 2010 6:25 pm

Re: To kick off some technical discussions

Post by Chris Whittington » Mon Jun 21, 2010 4:19 pm

hyatt wrote:The only problem with this subject is that if you steer toward complications, but your search can't resolve them, then you are committing suicide. In the game of chess, you get points for winning, not for playing creatively or speculatively. Somehow that key point gets lost in these discussions.
Tal went down in history for creative speculation even though he was only world champ for one year (IIRC). It seems to me that what you've done is to define chess in a limited way, where only the result counts, whereas if you were to ask "what is chess" the answer would be very much more complex and rounded than win/loss/draw/ELO. Could do that with a coin-flip game where the result=the game. For Chess, result!=game

Anyway, I repeat my point, the development process of essentially hill climbing by statistical results, coupled with the tester process of ranking according to statistical results creates a feedback loop where the whole mass moves down a cul-de-sac different to mainstream chess. personally I don't really see the point of it, maybe it's something to do, but what for?

User avatar
Chris Whittington
Posts: 437
Joined: Wed Jun 09, 2010 6:25 pm

Re: To kick off some technical discussions

Post by Chris Whittington » Mon Jun 21, 2010 4:24 pm

Steve Maughan wrote:Hi Chris,
Chris Whittington wrote:...you are hill climbing...
Yes this is the problem and the reason why many programs hit a dead end. They reach their local optimum. What they need to be able to do is "look across the valley" and try to find a higher peak. Philosophically there are only two ways to optimize a problem - hill climbing (which you've discussed) and probabilistic optimization (e.g. genetic algorithms or simulated annealing). All optimization algorithms (to date) fall into these two categories or a combination of the the two. So maybe we need to look at ways of applying probabilistic optimization to the problem. One possibility would be to use a genetic algorithms where each gene was a component of the search (e.g. null move, LMR etc). You could then "evolve" different (and hopefully better) versions of the engine. This approach will help if a potential improvement heavily interacts with other search mechanisms (e.g. LMR may interact with futility pruning).

Another approach (and one that I have taken in the past) is to rewrite the engine from scratch based on the (new) search mechanism that shows the most potential for improvement. So for example, Monarch currently does not use LMR; although I think this search mechanism is potentially tremendously powerful. So I'm planning to tear up the search in Monarch and start with a vanilla alpha-beta algorithm. Then the first selective search mechanism I'll add will be LMR (possibly with aggressive reductions). I'll then add other search mechanisms, testing as I go. Let's see what happens.

Cheers,

Steve
Hi Steve,

Long time since wooden shack in Cotswolds! Anyhows, I don't really refer to the hill-climbing in the sense of how to improve it. Obviously there's an infinite number of hills (obviously??!) so one will always be on a sub-optimal one and hopefully find techniques for getting onto ones less sub-optimal. I think I might be trying to point out that the comp chess development process is taking place on a plane surface covered with hills of various heights but that none of them are the hill that the humans are on and therefore, by definition, not on the hill where the game of chess actually is. Hence the emphasis on results and not on the game itself.

Chris

hyatt
Posts: 1242
Joined: Thu Jun 10, 2010 2:13 am
Real Name: Bob Hyatt (Robert M. Hyatt)
Location: University of Alabama at Birmingham
Contact:

Re: To kick off some technical discussions

Post by hyatt » Mon Jun 21, 2010 8:47 pm

I have only one goal, to win games. I'm not interested in modeling human behaviour, since nobody can even quantify exactly how a human plays the game. I'm not interested in wildly entertaining chess where most games are ultimately lost. This is a zero-sum game. I want my score to be the positive opposite of my opponents, for all possible opponents.

Winning or losing is an objective measurement, which is something that eliminates yet another class of program problems, not the ones caused by incorrect programming, but the ones caused by invalid assumptions or intuition. I don't have any of those in my current approach. And it is certainly clear enough that as Elo goes up, losses go down. If you want to argue that I might one day reach some theoretical local maxima where I can't improve further, that's fine, although I don't believe it. Because nothing says I can't change what I am doing in a significant way and move to a hill elsewhere. But until I see _some_ sort of maxima, why would I want to stop climbing upward? I could spend a couple of years trying to pursue the "human thought process" or spend a couple of years on another +200 Elo jump. The latter has concrete implications, the former may well be a waste of time and a giant step back.

For those interested in human thought processes, more power to them. But that simply isn't my goal here. It is to win as many games, and lose as few as possible. And that is a goal where progress toward it can actually be accurately measured. Statistics are founded in real science and do apply here.

Fernando
Posts: 38
Joined: Thu Jun 10, 2010 1:34 am

Re: To kick off some technical discussions

Post by Fernando » Tue Jun 22, 2010 1:01 am

Bob:
You have a right to think as you does and certainly that is a way to see chess, but i confess that kind of mentality, so typical of scientists, give me some tremors. I cannot in this moment examine in details why, but I tend to think that in any area of human endeavor that complete concentration in results measured in some quantitative way -space, time, money, winnings, score, elo, whatever- tend to push people towards inhuman goals and even monstrous ends.
In chess does not matter, but it does elsewhere. I remember a day with a forestry industrial looking at a forest, with me at his side, and the guy talking just of how much cellulose he could get from that. For him beauty, birds, life, colors, smells, even the trees, all that was not existents, perhaps just "subjective".
Concentration in just one dimension specially a quantitative one, is full of dangers.
fern, poet...

hyatt
Posts: 1242
Joined: Thu Jun 10, 2010 2:13 am
Real Name: Bob Hyatt (Robert M. Hyatt)
Location: University of Alabama at Birmingham
Contact:

Re: To kick off some technical discussions

Post by hyatt » Tue Jun 22, 2010 3:44 am

Fernando wrote:Bob:
You have a right to think as you does and certainly that is a way to see chess, but i confess that kind of mentality, so typical of scientists, give me some tremors. I cannot in this moment examine in details why, but I tend to think that in any area of human endeavor that complete concentration in results measured in some quantitative way -space, time, money, winnings, score, elo, whatever- tend to push people towards inhuman goals and even monstrous ends.
In chess does not matter, but it does elsewhere. I remember a day with a forestry industrial looking at a forest, with me at his side, and the guy talking just of how much cellulose he could get from that. For him beauty, birds, life, colors, smells, even the trees, all that was not existents, perhaps just "subjective".
Concentration in just one dimension specially a quantitative one, is full of dangers.
fern, poet...
If you view chess as an art, I would not disagree. But chess has been about competition. Which is more important, how a former world champion won the title, or that he won the title? What is Kasparov best remembered for? Highest Elo to date? Most consecutive tournament wins? Or style of play. Ditto for Karpov. Results do matter. And for computer chess, the goal is to win. Just like it is for humans. Some would be happy to have one brilliant win and 9 losses, while others would prefer to grind out 8 wins with no sacrifices or brilliant moves at all...

BB+
Posts: 1484
Joined: Thu Jun 10, 2010 4:26 am

Re: To kick off some technical discussions

Post by BB+ » Tue Jun 22, 2010 5:18 am

There was a famous manifesto by Rossolimo in Chess Review about 40 years ago (September 1969).

TODAY'S STYLE IN CHESS
Nicolas Rossolimo, Inactive Grandmaster of the U.S.

Remembering the fantastic combinations of Paul Morphy and the ever-green games Kieseritzky, Steinitz, Lasker, Capablanca, Alekhine, and other brilliant exponents of the past, we must ask what has happened to the champions of our time?

Do they play better or more effectively?---certainly not more brilliantly!

In answer to these questions, the role of the FIDE must be considered. Today, it is most important to have "points." It does not matter how obtained, you have to have wins at any price. You have to defend your norm of grandmaster; otherwise the FIDE classifies you as inactive. You must obtain 55% against grandmasters and 75% against international masters to remain as an active grandmaster. For to be classified inactive is to be entered in a vicious cycle: not to be invited to strong tournaments, because you are inactive and to remain inactive because you can't play because uninvited.
So, today, you have to worry about getting points. Points, point, and points; this is the most important! Brilliancies, beautiful combinations, queen sacrifices have become ridiculous. These are not for real grandmasters, and even dangerous, say the grandmasters of "today's style."

There is the answer to those questions.

How can you defeat an opponent who has talent, technic and knowledge equal to your own? Only by plodding until you have exhausted him. This is "today's style," a matter of exhausting the opponent. You have to have the ability to create a position in which your opponent cannot simplify and exchange pieces. Once you have such a position, you start maneuvering; you go forward, you go right, you go left, you retreat, you go all around and then you start again, and again, till your opponent becomes completely exhausted and commits a blunder, gets in time trouble or simply collapses. To play in "today's style," you must have excellent physical condition.

What can be done to save the art of chess from this terrible "today's style"? Who is going to help us fight to limit this monstrous situation?

The FIDE? Unfortunately, it is this organization which established the rules of the norm and requires you to retain your active title. So objections only excite the FIDE; and, in reply, it urges you to adopt "today's style."

We need to create a new organization to protect and encourage the art of chess!

For a start, we should organize a tournament with referees drawn from champion-artists themselves. These referees will award points for each game, won, drawn or even lost. For example, each game will confer ten points for the two players combined; and the loser could get seven, the winner three---if the referees find that the loser played more beautifully than the winner!

In my own short career, I succeeded in winning twelve brilliancy prizes with Queen sacrifices or announced mates in up to ten moves with as many as three pieces sacrificed. But, when I wished to have of those games printed, I was told: "Nobody is interested in you games. You did not score enough points in your recent tournaments." So what am I supposed to do? Trade in my romantic combinative style for "today's style" and become a hunter of points at any price?

No, I will not do so. I will fight for the art of chess. I will not become a monster!

Let us as a first step, organize a tournament with the new rules, the rules of the art of chess.

[Well, given that Tal was a champion in the era to which he refers, I not sure that "certainly not more brilliantly!" can really apply. Maybe he was just annoyed at Botvinnik and Petrosian. :)] [Incidentally, by enumerating GMs not in the tournament, I think it was Rossolimo who was the commentator for the game R.Byrne-Fischer in the 1963/64 Champ (Black is a piece down and can resign) --- seems more likely to be him than Lombardy].

Steve Maughan
Posts: 10
Joined: Thu Jun 10, 2010 2:36 am

Re: To kick off some technical discussions

Post by Steve Maughan » Tue Jun 22, 2010 1:15 pm

Hi Chris,
Chris Whittington wrote:....Long time since wooden shack in Cotswolds!
Yes indeed - fun times! It was back in 1991 to 1994 ish. I remember us trying to figure out null move. And on another occasion, you showing me a letter from some raving fan in Germany called "Thorsten Czub".

Whatever happened to Andy Pennel?

Cheers,

Steve

Post Reply