That math is wrong, doing a three-depth search would take more like 250 
seconds, not half a second. My next level of computer player would maybe do 
a one-depth search for about 250 milliseconds.

Matt

On Saturday, December 2, 2017 at 6:13:34 PM UTC-6, matthe...@gmail.com 
wrote:
>
> The plan for my variation is to extend my "easy computer" move rating 
> system into traversing the tree of possible positions, maybe something like 
> three deep which would take about half a second to compute with my 
> unoptimized engine. Stockfish probably has much more effort put into such a 
> thing (like you pointed out, it's probably better to go many deep in one 
> path and ignore most of the other branches) and understanding those 
> algorithms will take some work.
>
> Writing an opponent with some basic character and variation isn't 
> difficult in your own engine once you have a call to get possible moves for 
> a position. Is your primary goal to make a strong opponent for your 
> variation, or just to have a computer game to play with others?
>
> Those special cases (promotion, en passant, and castling) break some 
> assumptions that a person may make when starting to design a chess engine. 
> Specifically, promotion causes two moves in a row and requires an interface 
> to choose the piece, en passant is the only move that lasts for a single 
> turn even if the two interacting pieces don't move, and castling is the 
> only move that moves two pieces.
>
> I appreciate that Go is not a commercial product even though I have 
> concerns for collective use, and hopefully it doesn't require forks 
> eventually. Thanks for sharing your story.
>
> Matt
>
> On Saturday, December 2, 2017 at 1:38:23 PM UTC-6, Hugh Aguilar wrote:
>>
>>
>>
>> On Saturday, December 2, 2017 at 7:00:55 AM UTC-7, matthe...@gmail.com 
>> wrote:
>>>
>>> Writing a chess engine is easier than you may think, those algorithms 
>>> are meant to speed up computer moves and computer analysis, neither of 
>>> which are necessary to play the game. My engine has none of that and is not 
>>> optimized at all and doesn't do any caching between the database and still 
>>> responds to making a move or calculating all moves for a position within 5 
>>> milliseconds. Just be ready to hack a little for promotion, en passant, and 
>>> castling.
>>>
>>
>> My Reversi program was weak because it searched to a fixed depth. For a 
>> game to be strong, it needs to search the more volatile paths deeper than 
>> the quiet paths. 
>> In chess this means that exchanges of pieces have to be completed. The 
>> search should terminate on a board position that is "settled."
>> I don't know how to do this. What does "settled" mean, exactly.
>> Are there any books available on the Alpha-Beta algorithm, or anything on 
>> the web? 
>> That book I had was a TAB book bought in the 1980s --- it discussed 
>> pretty simple games --- my understanding of the Alpha-Beta algorithm is 
>> pretty weak.
>>
>> I don't know why you keep mentioning promotion, en passant and castling. 
>> This is the same in Elphaba Chess as in International Chess.
>> The only difference about Elphaba Chess is that the queen can't capture 
>> and can't be captured. The queen just gets in the way!
>>  
>>
>>> I think what I was getting to earlier is that Go would benefit from 
>>> official corporate and academic partners (that foundation) because if 
>>> Google goes then probably Go does too, for any significant commercial or 
>>> academic use at least.
>>>
>>
>> Well, just be aware that a corporation typically sees the rest of the 
>> world as competition to be crushed. This means you!
>>
>> Google is not going to be happy if somebody uses Go to compete against 
>> Google. AFAIK, most if not all of Google's money comes from selling 
>> advertising on their 
>> search-engine. Theirs isn't the only search-engine though. Another 
>> example is Bing. There may be others, but it takes a pretty big server.
>> If people use Go to compete against Google, then Google will pull the rug 
>> out from under their feet! 
>> Writing a chess program is non-threatening though --- there is no money 
>> to be made --- this is just hobbyist programming.
>>
>> I mentioned the ANS-Forth standard of 1994, which is truly awful from a 
>> technical stand-point. The author of ANS-Forth was Elizabeth Rather, the 
>> owner of Forth Inc..
>> Charles Moore, the inventor of Forth left Forth Inc. in 1982, and he 
>> abandoned ANS-Forth in 1989. He says that ANS-Forth is not Forth at all.
>> Elizabeth Rather is unconcerned that ANS-Forth has technical problems. 
>> She says that the purpose of ANS-Forth is "portable programmers." 
>> Apparently Forth Inc. was tired of hiring programmers who know nothing 
>> about Forth, and training them from the ground up.
>> She wants programmers to learn the rudiments of Forth first, before they 
>> apply for work at Forth Inc..
>> ANS-Forth is adequate for writing trivial programs, for learning the 
>> rudiments of Forth --- learn how DUP OVER SWAP ROT etc. work.
>> ANS-Forth was purposely crippled though, to prevent it from being used 
>> for writing non-trivial programs in competition with Forth Inc..
>>
>> In 1994 I wrote the MFX Forth cross-compiler using UR/Forth. This 
>> targeted the MiniForth processor, which was built on a Lattice isp1048 PLD. 
>> The MiniForth was used in the motion-control board for a laser-etching 
>> machine.
>> This was obviously not ANS-Forth compliant, because ANS-Forth came out in 
>> the same year. 
>> UR/Forth was Forth-83 compliant, but MFX was not Forth-83 compliant --- 
>> Forth-83 had technical problems too --- it wasn't adequate for what I 
>> needed.
>> The purpose of ANS-Forth was to give Forth Inc. the high-ground --- they 
>> can denounce all the competitors' accomplishments as being non-standard.
>> LMI, the company that sold UR/Forth, went out of business when ANS-Forth 
>> became the standard. LMI went from being industry leader to being a 
>> wanna-bee.
>> This is the danger of allowing a corporation to define a 
>> programming-language standard --- competitors will be non-standard --- all 
>> programmers are competitors.
>>
>> Most likely, Google made Go public because they wanted enthusiastic 
>> contributors to help them develop Go --- hiring programmers is expensive. 
>> After Go is settled though, Google may make it proprietary again. The 
>> enthusiasts will succeed so well that no further contribution from them is 
>> needed.
>> Google could kill Go by pushing a crippleware version through ANSI and 
>> calling that the "Standard" so nobody can use Go to write non-trivial 
>> programs.
>> This trick works very well! This pulls the rug out from under the 
>> programmers --- dumps them on their non-standard butts --- they don't rise 
>> again.
>>
>> From a legal perspective, a corporation is the same as a person, although 
>> most people don't think of a corporation as being a "person."
>> If it were a person, it would be a sociopath!
>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to