New Search Method(s)

Discussion of chess software programming and technical issues.

Moderator: Ras

Michael Sherwin
Posts: 3196
Joined: Fri May 26, 2006 3:00 am
Location: WY, USA
Full name: Michael Sherwin

Re: New Search Method(s)

Post by Michael Sherwin »

bob wrote:
Milos wrote:Humans are also champions of will. No animal running for its life can achieve what humans can only for prestige.
Marathon in just over 2hours, double marathon in under 5 hours, 100km in 6 and a half hours, 200km in under 15 hours...
There's almost no limit in human feats of strength.
So you don't believe that a coyote that runs free out west, runs constantly, can't keep up with a human? They are all leg and lungs, humans carry a lot of excess baggage around (we only use two extremities, not all 4 to run...)

I'm not an expert on this topic by any means, but it certainly seems unlikely that a human is capable of beating animals that are many times stronger and better adapted to running...
I certainly would not want to bet against the Energizer Bunny. :D
If you are on a sidewalk and the covid goes beep beep
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through
User avatar
Don
Posts: 5106
Joined: Tue Apr 29, 2008 4:27 pm

Re: New Search Method(s)

Post by Don »

Michael Sherwin wrote:I wonder if my language was clear enough when trying to describe the example for progress, so I will give a simple position based example.
Hey, stay on topic! We are talking about dogs and running :-)

[d]r1bqk1nr/pppp1ppp/2n5/2b1p3/2B1P3/5N2/PPPP1PPP/RNBQK2R w KQkq - 4 4

Bf1 is not a move worth considering to us humans, but how is a computer also able to determine this? It has to 'look'. A computer can not look at the board like a human does. It has to use search. We already use a reduced null-move search to look at Bf1 and we do determine this way that Bf1 deserves no further attention. But, can this be improved upon? Well, if all the moves that would be rejected by an even more shallow null-move search were played two at a time then a null-move search on top of that preformed still did not lead to an improved eval then it should be safe to prune.

So, in the above diagram, Bf1 combined with Ng1, Ng5 or Nh4 etc., cannot recommend Bf1 then Bf1 is not worth looking at further as no progress can even be threatened with that move.
Milos
Posts: 4190
Joined: Wed Nov 25, 2009 1:47 am

Re: New Search Method(s)

Post by Milos »

Don wrote:But I'm not sure you realize how fast the marathoners run. I looked at several world record times for various distances, and computed the pace and the world record marathon pace is faster than almost all high school male runners can run 1 lap around the track or 400 meters. It works out to doing a lap every 72 seconds - for over 100 laps. Even though good runners can do this in less than a minute, probably only 1 kid in 20 can beat 72 seconds.
And it's not only running. Take for example racewalking. World record on 20km is 1h16mins, which is like 92 seconds a 400m lap for 50 consecutive laps, by walking - one (full) foot always at the ground!!!
Michael Sherwin
Posts: 3196
Joined: Fri May 26, 2006 3:00 am
Location: WY, USA
Full name: Michael Sherwin

Re: New Search Method(s)

Post by Michael Sherwin »

Don wrote:
Michael Sherwin wrote:I wonder if my language was clear enough when trying to describe the example for progress, so I will give a simple position based example.
Hey, stay on topic! We are talking about dogs and running :-)

[d]r1bqk1nr/pppp1ppp/2n5/2b1p3/2B1P3/5N2/PPPP1PPP/RNBQK2R w KQkq - 4 4

Bf1 is not a move worth considering to us humans, but how is a computer also able to determine this? It has to 'look'. A computer can not look at the board like a human does. It has to use search. We already use a reduced null-move search to look at Bf1 and we do determine this way that Bf1 deserves no further attention. But, can this be improved upon? Well, if all the moves that would be rejected by an even more shallow null-move search were played two at a time then a null-move search on top of that preformed still did not lead to an improved eval then it should be safe to prune.

So, in the above diagram, Bf1 combined with Ng1, Ng5 or Nh4 etc., cannot recommend Bf1 then Bf1 is not worth looking at further as no progress can even be threatened with that move.
:lol:
If you are on a sidewalk and the covid goes beep beep
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through
User avatar
michiguel
Posts: 6401
Joined: Thu Mar 09, 2006 8:30 pm
Location: Chicago, Illinois, USA

Re: New Search Method(s)

Post by michiguel »

bob wrote:
Milos wrote:Humans are also champions of will. No animal running for its life can achieve what humans can only for prestige.
Marathon in just over 2hours, double marathon in under 5 hours, 100km in 6 and a half hours, 200km in under 15 hours...
There's almost no limit in human feats of strength.
So you don't believe that a coyote that runs free out west, runs constantly, can't keep up with a human? They are all leg and lungs, humans carry a lot of excess baggage around (we only use two extremities, not all 4 to run...)

I'm not an expert on this topic by any means, but it certainly seems unlikely that a human is capable of beating animals that are many times stronger and better adapted to running...
It is very difficult to find an animal on earth that could keep up with us. Of course, we people who leave in cities are lazy bastards, but if you leave your whole life depending on persistence hunting, you can run for more than 100 miles at an amazing "cruise" speed. See this book



It is a tribe in Mexico of superathletes. The whole group hunts running dears or any other animals down, for the whole day or even longer. They do not use nike shoes, they use a piece of leather with strings ("huaraches"), that just happen to be more suitable than any other shoes!!

We have been designed by nature to be stubborn and absolute pain in the ass for any other animal around. Having two legs is actually an advantage. We can run, swim, climb, jump...

Miguel
User avatar
Don
Posts: 5106
Joined: Tue Apr 29, 2008 4:27 pm

Re: New Search Method(s)

Post by Don »

Michael Sherwin wrote:I wonder if my language was clear enough when trying to describe the example for progress, so I will give a simple position based example.

[d]r1bqk1nr/pppp1ppp/2n5/2b1p3/2B1P3/5N2/PPPP1PPP/RNBQK2R w KQkq - 4 4

Bf1 is not a move worth considering to us humans, but how is a computer also able to determine this? It has to 'look'. A computer can not look at the board like a human does. It has to use search.
I think this is a good position to illustrate the point I am making.

I think you will find that a computer spends about as much time considering Bf1 as a human does. I ran this position on Komodo and on a 20 ply search which took a little over 3 minutes, Komodo spent a lot of time on the first 3 or 4 moves then hung up on the 5th move which it decided was the best move. Bf1 was near the end of the list and it went by it so fast it was not measurable. In fact in less than 1/10 of a second it scrolled past 5 or 6 moves and Bf1 was one of them.

This means that for all practical purposes the program spent NO time on this move. Of course we know it did spend SOME time, but I think humans spend SOME time processing any position that involves whatever mechanism allows them to throw out most of the moves. It's splitting hairs to claim the computer is wasting a lot of time on Bf1 and for all practical purposes it is ignoring Bf1. Even if you built a plausible move generator that was smart enough to throw out 90% of the moves without involving any kind of search, it would take some time for the algorithms mechanism to accomplish its purpose - probably more time that Komodo spent on Bf1.

If I ran that position for a couple of days I might find that on a super deep search Komodo spends a couple of seconds on that move - but it's spending 24 hours on the total search. That's still a good trade-off, spending 23 hours and 58 seconds finding the best move and taking 2 seconds to verify that Bf1 is a stupid move. That would not be enough time to even stand up to go get a cup of coffee.

If a human were given 24 hours per move to win a chess game and the fate of the universe were depending on his winning the game, he should take at least a couple of seconds examining moves that look very unlikely - and this is probably why computers can now outplay humans - if there were something really profound about Bf1 that was not obvious the computer would find it, but a human might never consider it, ever. (In this case we all agree Bf1 is a backward move but it's not always so obvious - some moves have hidden value and humans miss them due to their "selective search" heuristic. )

A search that truly "forward prunes" in the sense that a move is never reconsidered at later iterations will never succeed, except in the rare cases that some algorithm can determine with 100% certainty that the move is incorrect. There are only a few positions where you can construct a proof based on reasoning about the position if you forbid looking ahead of any kind (depending on what you consider looking ahead) - and it's totally stupid to forbid looking ahead in the misguided notion that it might be the holy grail of computer chess.

We already use a reduced null-move search to look at Bf1 and we do determine this way that Bf1 deserves no further attention. But, can this be improved upon? Well, if all the moves that would be rejected by an even more shallow null-move search were played two at a time then a null-move search on top of that preformed still did not lead to an improved eval then it should be safe to prune.

So, in the above diagram, Bf1 combined with Ng1, Ng5 or Nh4 etc., cannot recommend Bf1 then Bf1 is not worth looking at further as no progress can even be threatened with that move.
Milos
Posts: 4190
Joined: Wed Nov 25, 2009 1:47 am

Re: New Search Method(s)

Post by Milos »

bob wrote:So you don't believe that a coyote that runs free out west, runs constantly, can't keep up with a human? They are all leg and lungs, humans carry a lot of excess baggage around (we only use two extremities, not all 4 to run...)

I'm not an expert on this topic by any means, but it certainly seems unlikely that a human is capable of beating animals that are many times stronger and better adapted to running...
There is only a handful of animals that could beat a human in a marathon - http://www.popularmechanics.com/outdoor ... s#fbIndex1, and only two of them (camels and ostrich-2 legged btw. :)) that can sustain that speed in hot weather conditions.
However, if you extend the distance (50+ miles) even that becomes questionable.

And if you give human a bicycle (just man powered, so it's not cheating after all) there is no animal that can beat him at any distance, period.
Dann Corbit
Posts: 12792
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: New Search Method(s)

Post by Dann Corbit »

Milos wrote:
bob wrote:So you don't believe that a coyote that runs free out west, runs constantly, can't keep up with a human? They are all leg and lungs, humans carry a lot of excess baggage around (we only use two extremities, not all 4 to run...)

I'm not an expert on this topic by any means, but it certainly seems unlikely that a human is capable of beating animals that are many times stronger and better adapted to running...
There is only a handful of animals that could beat a human in a marathon - http://www.popularmechanics.com/outdoor ... s#fbIndex1, and only two of them (camels and ostrich-2 legged btw. :)) that can sustain that speed in hot weather conditions.
However, if you extend the distance (50+ miles) even that becomes questionable.

And if you give human a bicycle (just man powered, so it's not cheating after all) there is no animal that can beat him at any distance, period.
It will take a fully faired recumbent bicycle to beat a cheetah at 200M, and a world-class athlete at the pedals.

I guess that a sailfish will have an easy time against us in the pool, even if we are given a bicycle.
;-)
elpapa
Posts: 211
Joined: Sun Jan 18, 2009 11:27 pm
Location: Sweden
Full name: Patrik Karlsson

Re: New Search Method(s)

Post by elpapa »

Milos wrote:There is no dog that can do 40km in 2 hours in summer heat. No dog at all.
The main reason for this is they don't sweat except through their paws, so they get easily overheated. I believe sweating is the main reason humans are good long distance runners. Also we don't stop and sniff each others poop ;)
zamar
Posts: 613
Joined: Sun Jan 18, 2009 7:03 am

Re: New Search Method(s)

Post by zamar »

Don wrote: A search that truly "forward prunes" in the sense that a move is never reconsidered at later iterations will never succeed, except in the rare cases that some algorithm can determine with 100% certainty that the move is incorrect. There are only a few positions where you can construct a proof based on reasoning about the position if you forbid looking ahead of any kind (depending on what you consider looking ahead) - and it's totally stupid to forbid looking ahead in the misguided notion that it might be the holy grail of computer chess.
I agree that completely pruning some move at root doesn't make any sense. It's just better to use 0.01% of your thinking time to make sure that move doesn't work.

So in a way a highly reduced search with lots of null moves and prunings is perhaps the most effecient way for computer to "reason" that some move doesn't make any sense.

Whether or not this considered 'brute force' or 'selective search' is just a question of taste, because there are no exact definitions for those terms.
Joona Kiiski