In a message dated 12/10/01 4:36:00 AM Pacific Standard Time,
aettlinger_at_worldnet.att.net writes:
> I really need to analyze the Woods (and FcPro) solver's method of
> expression. I was surprised to discover only very recently that it does in
> fact express itself at least "mostly" as single card moves. That's not
> necessarily definitive. I think I've observed that perhaps some of its
> moves move two cards, but maybe no more.
Are you writing of moves internal to the solver, or moves expressed in a
printed solution?
> Shlomi's Freecell Solver, however,
> does use more multiple-card moves. I believe Shlomi does use moves that go
> beyond the capability of M/S Freecell's rules.
A good automated solver should have that ability among others.
> In as far as I got in
> integrating his solver into FcPro, I actually did add, using a very light
> touch, a conditional modification to FcPro's playback code to accept these
> moves.
After universal solution format is adopted, no solver will need to make these
modifications.
> Where I got hung up was in the inconsistency of moves to empty
> stacks, and also, in at least one case, in the fact that an FCS solution
> left an ace in a freecell.
I don't know what FCS's solutions look like, but this sounds like FcPro's
failure to apply its automove function.
> I would advocate a "standard" format that did
> not employ a third character, but that there might be, as Bill suggested, a
> code to indicate a choice for at least two mutually independent parameters
> (1) Whether moves to empty columns are (a) single card or (b) multiple card
> (in which case they are always the maximum number allowed according to a
> specific formula).
I'm DESPERATELY trying to alert all of you that (1)(a,b) is a DISASTROUS
limitation that MUST NOT be allowed to HANDCUFF us forever.
> and (2) Whether automatic moves to the foundation are
> included or excluded. But I have a feeling that this could get more
> complicated than would be worth the trouble.
This is mandatory. Look, I've been dancing around this issue for a long time,
and perhaps I have misled you into thinking it was about ego. There are four
legitimate automove schemes, all of which are important for our arsenals.
Horne's rule, Raymond's Rule, None, All. Horne's rule is weak, but is
required for solutions delivered to the community of everyday freecell
players. My own rule is much stronger; I call it "Raymond's Rule" because I
worked it out, implemented it, and discussed it with others before anyone
else thought about it. Noone on this forum has yet given any indication that
he understands why it's important. "None," which moves no cards to the home
cells automatically, is important for a developing solver and may turn out to
be useful for solver comparison. "All," which moves all cards to the
homecells before any other move is made, is frequently wrong, but can be
useful. Let me suggest the symbols H,R,N,A at the top of a printed solution
to indicate which automove scheme is employed.
A printed solution that is submitted to the community of freecell users will
use only MS moves and 'H', Horne's automove rule.
> The evaluation of a solution, then, as Bill expresses it, is
essentially
> to design a yardstick to measure the merit of any given solution, i. e.,
its
> brevity or lack of same. The design of the yardstick could well make or
> break the awarding of a "prize" for the shortest solution. So the
> environment (or "audience") for which the solution is intended becomes
> important.
Yes, audience is important. Many ways to evaluate solutions. Shortest
solutions are really an academic exercise -- fun to find, fun to be able to
brag "my solver's the fastest," but far too time-consuming to provide a quick
answer to a casual enquiry from a freecell player waiting at a website. That
waiting user wants a quick answer "solvable" or "not solvable" or a printed
solution. 60 moves or 80 moves don't matter, just a solution that he can
download quickly and follow easily.
A yardstick? Try these ideas:
Many solvers submit shortest solutions to MS deals 1-1000.
1. Ignore time. Smallest total number of moves wins.
2. Ignore time. For each deal, shortest solution (and ties) gets one point.
Anything longer gets nothing. Most points wins.
3. Time limit. Many solvers start at game 1, go as far as they can within the
time limit. One solver might finish 1200 games, another might finish 1400
games. Solver with most shortest solutions (and ties) wins. How much credit
does the second solver get for games 1201-1400?
> ------------------------------------------------
> I'd say there are three distinct possible goals for a Freecell Solver
> design:
>
> (1) To find as many solutions as possible, regardless of size, to as many
> boards as possible in the least time.
>
> (2) To find as many solutions as short as possible, to as many boards as
> possible in the least time.
>
> (3) To deliver a completely trustworthy verdict as to the solvabililty of
as
> many boards as possible in the least time.
>
> Of those three, (1) and (3) can be evaluated in a definitive way. Two
> solvers can be compared on an absolute basis as to their effectiveness over
> a given range of boards. (2), however, would be ambiguous as to its
> evaluation, since one could always trade speed for shortness of solution.
>
> Now, then, I would add that the "ideal" solver would be capable of
> operating in any of the above three modes.
> ---------------------------------------------------
> Re those three categories, my own highest priority, so serve the needs
> of the FcPro users community, would focus on (3). Shlomi freely admits he
> is concentrating on (1) and (2). Tom takes the (3) requirement very
> seriously, but is also pursuing (2), and provides a parameter to chose the
> emphasis between the two goals.
I don't think you've defined these goals carefully. To be specific, there is
no useful difference between your (1) and (3). Let me suggest these:
1. Given a range of deal numbers (32 bits for now) and the number of
freecells to be used, print the numbers: (of the unsolvable deals for 2-4
freecells, of the solvable deals for 0-1 freecells). Same as your (3).
2. Given a legal freecell position, give a solution or pronounce "unsolvable."
3. Find a shortest solution: (from a given legal position or from a deal
number and number of freecells).
I would have thought that my 2 would be most useful to the freecell user
community, while my 1 and 3 would be most useful to the freecell solver
community.
My solver has had a fourth goal: find and solve all the 52-card-flourish
games. Already accomplished.
Bill Raymond
Received on Mon Dec 10 2001 - 15:36:39 IST