UCI question - limiting search depth

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

Moderator: Ras

User avatar
Zach Wegner
Posts: 1922
Joined: Thu Mar 09, 2006 12:51 am
Location: Earth

Re: UCI question - limiting search depth

Post by Zach Wegner »

Most likely, since this is very basic shell functionality that has existed for 40 years. Weird that it would do that though...

Code: Select all

$ echo "sd 2
> go"
sd 2
go
royb
Posts: 566
Joined: Thu Mar 09, 2006 12:53 am

Re: UCI question - limiting search depth

Post by royb »

hgm wrote:It was an even more stupid idea than you though, because of course printf does not expand \n at all. It expands %x stuff. It was the compiler that expanded the \n already in the format string.

I wrote the routine as you suggest, and now it works. Also suppressed the fatal error on missing pixmaps for unorthodox pieces, and have it substitute King to prevent later crashes.

I don't understand your remark: just include the linefeed. As soon as I type linefeed on a command line it terminates the line. If I preceed it by \ it ignores the linefeed. So which trick am I missing?

Anyway, new XBoard is at http://home.hccnet.nl/h.g.muller/xboard ... 2_i386.deb .
I am still not quite there. What is it that I am supposed to put into the initString and secondInitString parameters?

I have tried: -initString new\nsd 2\nrandom\n and that does not work.

I have tried: -initString new\012sd2\012random\012 and that does not work either.

In both cases, the xboard comes up but no moves at all are made by either engine.

Thanks,

Roy
User avatar
hgm
Posts: 28384
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: UCI question - limiting search depth

Post by hgm »

Well, first try it without using -initString, just using -depth 2.

-initString "new\nsd 2\nrandom\n" should also work; at least it did for me. As you remarked, the quotes are necessary, due to the space in sd 2. If not, post again the polyglot log.
royb
Posts: 566
Joined: Thu Mar 09, 2006 12:53 am

Re: UCI question - limiting search depth

Post by royb »

hgm wrote:Well, first try it without using -initString, just using -depth 2.

-initString "new\nsd 2\nrandom\n" should also work; at least it did for me. As you remarked, the quotes are necessary, due to the space in sd 2. If not, post again the polyglot log.
It's part of the way there. Am I supposed to use polyglot or does this xboard "understand" UCI? When I try to use polyglot, the automatic match between two engines does not happen. Xboard starts up and I can play a game vs Fruit with Fruit set to depth 2. However, if I want to match Fruit 2-ply vs Fruit 1-ply -- how would I achieve that? And I used "-depth 2" (minus the quotes) to get that far.

We are closing in on things thanks to your help!

Roy
User avatar
hgm
Posts: 28384
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: UCI question - limiting search depth

Post by hgm »

It still does need Polyglot. To play depth-odds you would need to use the InitString method. I am very surprised if that does not work now; for me it did work (human vs Fruit). That would suggest something went wrong with the download and you are still using the old XBoard version.
royb
Posts: 566
Joined: Thu Mar 09, 2006 12:53 am

Re: UCI question - limiting search depth

Post by royb »

What do I put in the initString to make it work?

I am trying to put Ctrl-N after each command in the initString and that does not work. Also, Ctrl-J does not work either.

Also, my mistaken in not getting a -depth 2 match (2 ply vs 2 ply) was simply I had edited out the -mg 100 parameter, so that at least works. Now just trying to get 2-ply Fruit to play a match against 1-ply Fruit ...

Thanks again for your continued help!

Roy
User avatar
hgm
Posts: 28384
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: UCI question - limiting search depth

Post by hgm »

You are not typing Ctrl-N, are you? With control keys it will never work. Type \n. The \ is usually located close to your enter key, and the n is somewhere between the b and the m.
royb
Posts: 566
Joined: Thu Mar 09, 2006 12:53 am

Re: UCI question - limiting search depth

Post by royb »

hgm wrote:You are not typing Ctrl-N, are you? With control keys it will never work. Type \n. The \ is usually located close to your enter key, and the n is somewhere between the b and the m.
I was indeed typing Ctrl-N. By using \n instead, that seems to work!

What is the best way to get a 64-bit version of xboard? I'm used to CVS, not git -- is there a quick tutorial on using git and what URL do I give to git to pull the source for xboard 4.4?

Thanks so much!

Roy
User avatar
hgm
Posts: 28384
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: UCI question - limiting search depth

Post by hgm »

The best way would be to "browse the git repository" and clig one of the tarballs listed under "Tag". That woud directly download you a tagged version. But it might not include the most recent fixes.

To get the latest version in git, click the "commit message" of the top-most entry in the "Age" section. At the top of the page you wil get there are four of links (whith horribly long check-sum-like names), and you can click the one marked "dowload", which will give you the tar ball.

Problem is that the two fixes I made in xboard.c in reaction to your feedback (the pixmaps error message and the InitString) are not yet committed to the repository, although I already e-mailed them to Arun.
royb
Posts: 566
Joined: Thu Mar 09, 2006 12:53 am

Re: UCI question - limiting search depth

Post by royb »

hgm wrote:There is a debian binary package for the current (beta2) version of xboard 4.4.0 in the repository at:

http://home.hccnet.nl/h.g.muller/xboard ... 2_i386.deb

For other architectures you would have to pull the latest source tree from the git repository, and compile that using ./autogen.sh, ./configure and make.
I am attempting to compile xboard 4.4 from source for my 64-bit Ubuntu system. I have installed automake (needed by the autogen.sh script) and run autogen.sh and configure.

However no make file is present, only a Makefile.in . I am 100% unfamiliar with automake -- what is the next step to ultimately get an executable from a Makefile.in file? Normally, things like 'configure' create a Makefile and running 'make' works against that.

Thanks,

Roy