3
dds \- double dummy solver frontend
11
This program is a command line interface for
12
Bo Haglund's Double Dummy Solver (DDS).
14
It has four useful stand-alone options:
16
Option \fB\-playdd\fP, to play any deal double dummy.
18
Option \fB\-giblib\fP. For any deal, to get maximum trick values
19
for all possible contracts and leaders
20
(these are the 20 trick values as for giblib).
22
Option \fB\-tricks\fP. For specified deal, to get maximum trick values
23
for all possible contracts and leaders
24
(these are the 20 trick values as for giblib).
26
Option \fB\-gen\fP. This is to generate deals,
27
without or with up to 20 possible trick values.
30
path for 'giblib' input file
32
Optional arguments [\fIoptions\fP] are one or more of:
35
verbose where applicable
39
Number of tricks to be won by the side to play, \-1 means that the program
40
shall find the maximum number. For equivalent cards only the highest is returned.
43
solution 1/2/3 (default 3).
44
How many card solutions SolveBoard returns:
46
target=1-13, solutions=1: Returns only one of the cards. Its returned score is
47
the same as target when target or higher tricks can be won. Otherwise, score
48
\-1 is returned if target cannot be reached, or score 0 if no tricks can be
51
target=\-1, solutions=1: Returns only one of the optimum cards and its score.
53
target=0, solutions=1: Returns only one of the cards legal to play with score
56
target=1-13, solutions=2: Return all cards meeting target. Their returned
57
scores are the same as target when target or higher tricks can be won.
58
Otherwise, only one card is returned with score \-1 if target cannot be
59
reached, or score 0 for all cards legal to play if no tricks can be won.
61
target=\-1, solutions=2: Return all optimum cards with their scores.
63
target=0, solutions=2: Return all cards legal to play with scores set to 0.
65
target irrelevant, solutions=3: Return all cards that can be legally played
66
with their scores in descending order.
70
DLL mode of operation. This mode does not affect the DLL if there are multiple
71
choices for cards to play. If there is just one card to play, or multiple cards
72
that are all equivalent, this mode determines whether or not the DLL will
73
search to find the score.
75
mode=0: Do not search to find the score if the hand to play has only one card,
76
including its equivalents, to play. Score is set to \-2 for this card,
77
indicating that there are no alternative cards. This mode is very fast.
79
mode=1: Always search to find the score. Even when the hand to play has only
80
one card, with possible equivalents, to play.
82
.\"mode=2: As for mode=1, but the transposition table contents is reused from the
83
.\"preceding SolveBoard call. Requires that target is the same as for the
84
.\"preceding call and is not target=\-1. The parameter solutions must be set to 1,
85
.\"deal must be the same, except that deal.first for the second call is partner to
86
.\"deal.first in the first call.
88
.\"1st call: SolveBoard(deal, 10, 1, 1, &fut1), deal.first=1, i.e. East leads.
89
.\"2nd call: SolveBoard(deal, 10, 1, 2, &fut2), deal.first=3, i.e. West leads.
92
s/h/d/c/n, this overrides the file (default=n)
95
w/n/e/s, this overrides the file (default=w)
96
but used only when no cards have been played
99
1/2/... deal number in giblib file.
100
Only one of \fB\-deal\fP or \fB\-name\fP should be specified.
103
deal with 'name=str' in giblib file.
104
Only one of \fB\-deal\fP or \fB\-name\fP should be specified.
107
play deal choosing between DDS alternatives
110
time all deals in file for sol=1/2/3, print stats
112
.BR \-timeg=\fIxcn\fP
113
\fIx\fP - hex digit, total tricks by n-s
114
\fIc\fP - contract s/h/d/c/n
115
\fIn\fP - number of deals
117
time the first n deals in the giblib file,
118
having total tricks x at contract c,
119
for target=\-1 sol=1 mode=1
120
and for the specified/default leader,
121
each deal is validated.
123
.BR \-giblib=\fId1\fP\-\fId2\fP[\-all]
124
validate all deals from d1 to d2 in giblib file
125
for target=\-1 sol=1 mode=1.
126
1. if \fB\-all\fP is given, this is done for all of
127
the 20 trick values even if some of them are '\-'.
128
2. if \fB\-all\fP is not given, this is done only for
129
those trick values which are not '\-'.
132
like \fB\-giblib\fP, but for single deal specified
133
by \fB\-name\fP=str \fB\-deal\fP=d or option
138
(required) n=number of deals to generate.
139
output is written to a file (see below)
141
.BR \-genseed=\fIs\fP
142
(default 0) seed for random generator
144
.BR \-gencards=\fIc\fP
145
(default=52) number of cards generated per deal,
146
must be multiple of 4
148
.BR \-gentricks=\fIt\fP
149
0,1,...,20 (default 1), number of tricks values to set randomly
151
Generate output is written to a file:
152
gen\-\fIgenseed\fP\-\fIndeal\fP\-\fIgencards\fP\-\fIgentricks\fP.txt
154
The program was named ddd by its author. As there is already some other
155
ddd package in Debian (the gdb frontend) it was renamed to dds, the name