[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Bug-gnubg] Re: Different rollouts are good
From: |
Jim Segrave |
Subject: |
Re: [Bug-gnubg] Re: Different rollouts are good |
Date: |
Mon, 30 Sep 2002 17:47:37 +0200 |
User-agent: |
Mutt/1.4i |
On Mon 30 Sep 2002 (11:10 +0000), Joern Thyssen wrote:
> On Mon, Sep 30, 2002 at 11:05:17AM +0200, Jim Segrave wrote
> > On Mon 30 Sep 2002 (10:09 +0200), ?ystein O Johansen wrote:
> > > Hello list!
> > >
> > > I'm forwarding this messages from the GammOnLine bulletin board. It is
> > > basically a suggestion for rollouts from Kit Woolsey. I got his permission
> > > to forward these messages.
> > >
> > > I think we need some discussion about this. How do we want this, how to
> > > make it available from the user interface, is it at all possible, etc.
> >
> > I'm willing to try to code this. It would help if anyone has a brief
> > overview of how the rollout code actually executes.
> > I would assume we simply add second pane to the Rollout settings
> > window with:
> >
> > Title: Evaluation for later plays
> >
> > Selection:
> >
> > A toggle to turn the whole pane on/off
> > Change evaluation for later plays [x]
> >
> > A numeric selector for when they become active:
> > Change evaluation after play [ ]
> >
> > Replicate the Evaluation portion of the current rollout window
> > (predefined, user defined, search space, reduced 2 ply, cubeful
> > chequer)
> >
> > Add commands to replicate the set of rollout commands -
> >
> > set late-rollout enable off/on
> > set late-rollout start 5 # switch to late-rollout settings on
> > # move 5
> > set late-rollout cubeful on # settings for late-rollout,
> > # co-responding to current commands
>
> I would prefer something like:
>
> set rollout late enable on
> set rollout late chequerplay ...
> set rollout late cubedecision ...
> ...
OK - it's probably no real difference in coding anyway.
Do we need a separate on/off state for late rollouts or simply a
bignum move setting which prevents it ever happening? The on/off is
more obvious,
> > I actually wonder if setting noise on rollouts either for the first or
> > later plays actually has any sense?
>
> No, but it's a part of the evalcontext so once you set up
>
> set rollout late chequerplay
>
> you'll automatically get a
>
> set rollout late chequerplay noise 0.3
I was wondering if it should be taken off the rollout menu (and forced
to 0) for all rollouts?
> > I'm assuming (I haven't started looking at the code yet), that there
> > is a top level routine which directs the individual games rolled out
> > and that during play, the evaluation settings are passed as a pointer
> > to a struct (much the same way that say tutor mode uses a pointer to
> > either the evaluation of analysis structs). In which case, the inner
> > loop which does the plays within a rollout has to set the evaluation
> > pointer based on how many plays into the game it is.
>
> Yes, the interesting routines are:
>
> RolloutGeneral (the loop over games in the rollout)
> BasicCubefulRollout (the individual game in the rollout)
>
> BasicCubefulROllout takes a rolloutcontext as a parameter, so you don't
> have to change the prototype, just change the content of rolloutcontext.
> Obviously, you must add some logic to BasicCubefulRollout that selects
> the proper evalcontext based on the turn number (called iTurn in
> BasicCubefulRollout).
Great - that's just the sort of pointer I needed. I'll start looking
at it over this week and see if I can knock something up fairly
quickly.
Should there be sensibility checks?
For example, disallow setting the late search space or plies to a
larger number than the ordinary ones? Or should we just take the Unix
approach of what you ask is what you get?
--
Jim Segrave address@hidden