To put everything into place with Strelka

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

Sergei Markoff

To put everything into place with Strelka

Post by Sergei Markoff »

About Dann's statement:

> Another point:
>
> Who is it that writes an A+ chess engine and a D- Winboard
> interface for it?
>
> The code quality of the engine is supreme. The Winboard
> interface looks like it was written by a novice.

The interface and engine itself written in the same style. I remeber my own history of engine desing. I was really lazy to implement interface with full functionality. Also it was written in really bad style. Here is the fragment of SmarThink 0.17a interface implementation. It was a strong engine for that times.

Code: Select all

   if(buf[0]=='?')
   {
    if(now_pondering) {MoveEntered=0; PonderFailed=TRUE;}
    stopped=TRUE;
    return;
   }
    else if(buf[0]=='.')
   {
#ifdef REC
    printf("stat01: %d %d %d/%d %d %d %s\n",(int)((clock()-cl)/10),nodes,RootDepth+1,rec,NumberOfRootMoves-RootMoveNum,NumberOfRootMoves+1,move2psm(STR,moves[RootPly]));
#else
    printf("stat01: %d %d %d %d %d %s\n",(int)((clock()-cl)/10),nodes,RootDepth+1,NumberOfRootMoves-RootMoveNum,NumberOfRootMoves+1,move2psm(STR,moves[RootPly]));
#endif
    fflush(stdout);
    return;
   }
    else if(buf[0]=='u'&&buf[1]=='n'&&buf[2]=='d'&&buf[3]=='o')
   {
    need_of_undo_after_search=TRUE;
    stopped=TRUE;
    return;
   }
    else if(buf[0]=='e'&&buf[1]=='x'&&buf[2]=='i'&&buf[3]=='t')
   {
    need_of_exit_after_search=TRUE;
    stopped=TRUE;
    return;
   }
    else if(buf[0]=='n'&&buf[1]=='e'&&buf[2]=='w')
   {
    if(now_pondering) {MoveEntered=0; PonderFailed=TRUE;}
    stopped=TRUE;
    need_of_new_after_search=TRUE;
    return;
   }
    else if(buf[0]=='r'&&buf[1]=='e'&&buf[2]=='s'&&buf[3]=='u'&&buf[4]=='l'&&buf[5]=='t')
   {
    if(now_pondering) {MoveEntered=0; PonderFailed=TRUE;}
    stopped=TRUE;
    return;
   }
   else if(buf[0]=='p'&&buf[1]=='o'&&buf[2]=='s'&&buf[3]=='t') {post=TRUE; stopped=TRUE; if(now_pondering) {MoveEntered=0; PonderFailed=TRUE;} return;}
    else if(buf[0]=='n'&&buf[1]=='o'&&buf[2]=='p'&&buf[3]=='o'&&buf[4]=='s'&&buf[5]=='t') {post=FALSE; stopped=TRUE; if(now_pondering) {MoveEntered=0; PonderFailed=TRUE;} return;}
     else if(buf[0]=='q')
     {
/*      FILE *f=fopen("in.log","a");
      fprintf(f,"Exiting...\n");
      fclose(f); */
      if(Transp!=NULL) free(Transp);
      if(PwnH!=NULL) free(PwnH);
      if(book_loaded) CloseBook();
      if(use_learning_data||use_learning) CloseLearningTable();
      exit(0);
     }


Strelka's interface is enought to make huge engine testing. Other things are not really interesting for engine programmer. I hope Osipov will produce better interface in next few days. Also I think it is a really good idea to compile Strelka code with the help of Bryan Hoffmann. He compiled a lot of engines including Rybka. He can finally end this story cause he has Rybka sources and can easily compare Strelka and Rybka. I'll ask Osipov and Hoffmann for it.
Tony Thomas

Re: To put everything into place with Strelka

Post by Tony Thomas »

Sergei Markoff wrote:. It was a strong engine for that times.
Strong enough to get the top free engine spot at WBEC. I guess some of us including me owes an apology to Mr. Osipov.
swami
Posts: 6640
Joined: Thu Mar 09, 2006 4:21 am

Re: To put everything into place with Strelka

Post by swami »

Code: Select all

Here is the fragment of SmarThink 0.17a interface implementation. It was a strong engine for that times.
I agree about the strength of the engine.
of Bryan Hoffmann. He compiled a lot of engines including Rybka. He can finally end this story cause he has Rybka sources and can easily compare Strelka and Rybka. I'll ask Osipov and Hoffmann for it.
Brian Hoffman is quite an helpful dude and the guy with good attitude,Thanks for this suggestion :)

I hope the engine supports all the time controls,I don't need to apologize to the strelka author for anything for I didn't accuse the engine of a clone :),I hope those who accused or even suspected it as a clone, would apologize :) when this matter ends with Brian's opinion,about whether the engine is a clone or not.
Christopher Conkie
Posts: 6073
Joined: Sat Apr 01, 2006 9:34 pm
Location: Scotland

Re: To put everything into place with Strelka

Post by Christopher Conkie »

Why are you showing us Smarthink when you have the Strelka code?

Why not show us the Strelka interface instead?

It's useless to anyone without the rest of Strelka anyway.

Regards

Christopher
Sergei Markoff

Re: To put everything into place with Strelka

Post by Sergei Markoff »

Christopher Conkie wrote:Why are you showing us Smarthink when you have the Strelka code?

Why not show us the Strelka interface instead?

It's useless to anyone without the rest of Strelka anyway.
To be a honest I need a permission from author to do it.
I think, that Bryan's opinion will be enought to stop speculations. Are you agree with it?
Christopher Conkie
Posts: 6073
Joined: Sat Apr 01, 2006 9:34 pm
Location: Scotland

Re: To put everything into place with Strelka

Post by Christopher Conkie »

Sergei Markoff wrote:
Christopher Conkie wrote:Why are you showing us Smarthink when you have the Strelka code?

Why not show us the Strelka interface instead?

It's useless to anyone without the rest of Strelka anyway.
To be a honest I need a permission from author to do it.
I think, that Bryan's opinion will be enought to stop speculations. Are you agree with it?
No.

Dann Corbit's opinion is the one that counts and always has.

Regards

Christopher
dts

Re: To put everything into place with Strelka

Post by dts »

I have a Question....

If Brynn Hoffmann Has Compiled Rybka Sources,Then Why there is no mention of his help by Vas Anywhere??
Or Have I missed this information anywhare??

Please clarify.

Regards
User avatar
Daniel Mehrmann
Posts: 858
Joined: Wed Mar 08, 2006 9:24 pm
Location: Germany
Full name: Daniel Mehrmann

Re: To put everything into place with Strelka

Post by Daniel Mehrmann »

Sergei Markoff wrote: Strelka's interface is enought to make huge engine testing. Other things are not really interesting for engine programmer.
Hmmmm, i can't believe that. At least, just a example, you need a analyze function to verify your changes in evaluation and search.

It's not possible to write a such strong engine without these features...

Best,
Daniel
Sergei Markoff

Re: To put everything into place with Strelka

Post by Sergei Markoff »

Christopher Conkie wrote:
Sergei Markoff wrote:
Christopher Conkie wrote:Why are you showing us Smarthink when you have the Strelka code?

Why not show us the Strelka interface instead?

It's useless to anyone without the rest of Strelka anyway.
To be a honest I need a permission from author to do it.
I think, that Bryan's opinion will be enought to stop speculations. Are you agree with it?
No.

Dann Corbit's opinion is the one that counts and always has.
Looks you are not very friendly.
You're don't trusting both me and Bryan Hoffmann?..
Sergei Markoff

Re: To put everything into place with Strelka

Post by Sergei Markoff »

dts wrote:I have a Question....

If Brynn Hoffmann Has Compiled Rybka Sources,Then Why there is no mention of his help by Vas Anywhere??
Or Have I missed this information anywhare??

Please clarify.

Regards
I think because it's not a good idea to share sources of possible Rybka's concurrent. Anyway, may be Osipov disagreed with me. I will speak with him.