Issues with lowest par contract from equally profitable in MiniMaxDOS ===================================================================== MiniMaxDOS usually assumes that, from all equally profitable contracts, the lowest one is selected as par contract. That is not the case, though, if the number of tricks to be taken from both hands of the same side for the determined par contract, differs. Below are some of the examples taken from a test set. Example 1 ---------
W/None ♠ K7
♥ AK87
♦ A87
♣ AJ52
♠ 9843
♥ 53
♦ QT4
♣ Q983
♠ AJ5
♥ QT9
♦ 9532
♣ T76
♠ QT62
♥ J642
♦ KJ6
♣ K4
NT
N1010111010
S1110111010
W23233
E23233
North makes 4NT, South makes 5NT. Neither West nor East have a profitable sacrifice against 3NT from North/South. `MiniMaxDOS` reports `4NT South, +460` as par contract, instead of `3NT North/South, +460`. Example 2 ---------
N/EW ♠ Q52
♥ KQ974
♦ AQ
♣ AKT
♠ T73
♥ 32
♦ JT5
♣ Q8764
♠ AKJ94
♥ AT6
♦ K8642
♣ ==
♠ 86
♥ J85
♦ 973
♣ J9532
NT
N83947
S33837
W410496
E410496
East/West make 4 Spades. 4 NT and 5 Hearts are both two down from North, but not from South. `MiniMaxDOS` reports `5Hx North, -300` as par contract, instead of `4NTx North, -300`. Example 3 ---------
W/EW ♠ Q
♥ KT97
♦ J953
♣ 9754
♠ 94
♥ AQ642
♦ Q72
♣ T83
♠ AKJT3
♥ J3
♦ T64
♣ AQ2
♠ 87652
♥ 85
♦ AK8
♣ KJ6
NT
N44567
S44576
W88756
E98766
East makes 3NT. North can sacrifice in 4 Clubs (but not in 4 Diamonds) and South can sacrifice in 4 Diamonds (but not in 4 Clubs), both three down. `MiniMaxDOS` reports `4Dx South, -500` as par contract, instead of `4Cx South, -500`. Example 4 ---------
W/None ♠ J5
♥ T872
♦ KT76
♣ K32
♠ KT93
♥ K54
♦ A
♣ AT986
♠ Q87642
♥ 9
♦ 84
♣ Q754
♠ A
♥ AQJ63
♦ QJ9532
♣ J
NT
N631093
S6310103
W6103310
E6103310
East/West make 4 Spades. Both North and South can sacrifice in 5 Hearts, down one, but South can sacrifice in 5 Diamonds, down one, too. `MiniMaxDOS` reports `5Hx South, -100` as par contract, instead of `5Dx South, -100`. Example 5 ---------
E/EW ♠ 9865
♥ Q98
♦ AJT4
♣ 84
♠ KQ732
♥ AJ2
♦ K53
♣ AK
♠ J4
♥ KT76
♦ Q98
♣ J762
♠ AT
♥ 543
♦ 762
♣ QT953
NT
N33335
S33335
W10101098
E991088
West makes 4NT, East makes 3NT. North/South do not have a level 4 sacrifice. `MiniMaxDOS` reports `4NT West, -630` as par contract, instead of `3NT West, -630`. Summary ------- Example 5 is explicable. Reporting 4NT as par contract may be useful to indicate the one trick difference between declaring from both hands. Unfortunately, that does not explain Example 1, where par contract is reported a level lower than highest makeable contract and not two levels lower. The behavior is inconsistent with Example 4, where the contract which differs for both hands is not indicated as par, and Examples 2-3 show that kind of indication to be problematic, when more than one different, in terms of level and denomination, contract differs in both hands. This all leads to conclusion that rather than a handy feature, this behavior is just a minor deviation from accepted conventions. Double Dummy Solver resolves Examples 1 and 5 correctly, and Examples 2-4 does not apply to it, because of preferring highest possible sacrifice from equally profitable. Raw PBN example data -------------------- ``` [Board "Example 1"] [Dealer "W"] [Vulnerable "None"] [Deal "N:K7.AK87.A87.AJ52 AJ5.QT9.9532.T76 QT62.J642.KJ6.K4 9843.53.QT4.Q983"] [Board "Example 2"] [Dealer "N"] [Vulnerable "EW"] [Deal "N:Q52.KQ974.AQ.AKT AKJ94.AT6.K8642. 86.J85.973.J9532 T73.32.JT5.Q8764"] [Board "Example 3"] [Dealer "W"] [Vulnerable "EW"] [Deal "N:Q.KT97.J953.9754 AKJT3.J3.T64.AQ2 87652.85.AK8.KJ6 94.AQ642.Q72.T83"] [Board "Example 4"] [Dealer "W"] [Vulnerable "None"] [Deal "N:J5.T872.KT76.K32 Q87642.9.84.Q754 A.AQJ63.QJ9532.J KT93.K54.A.AT986"] [Board "Example 5"] [Dealer "E"] [Vulnerable "EW"] [Deal "N:9865.Q98.AJT4.84 J4.KT76.Q98.J762 AT.543.762.QT953 KQ732.AJ2.K53.AK"] ```