hrothgar, on 2011-July-26, 12:26, said:
This script assumes that the Spade length in partner's hand is <= 3 (which obviously ignores suit quality)
Estimated Diamond length
Four = 0.5792
Five = 0.3349
Six = 0.0794
Seven = 0.0065
MATLAB Code
%% Shape
Shape(1:12,1) = 'C';
Shape(13:19) = 'D';
Shape(20:29) = 'H';
Shape(30:39) = 'S';
%% shuffle
simlength = 10000000
MC_Result = zeros(simlength, 4);
for i = 1:simlength
index = randperm(39);
Shape = Shape(index);
foo = Shape(1:13,1);
MC_Result(i, 1) = length(foo(foo == 'C'));
MC_Result(i, 2) = length(foo(foo == 'D'));
MC_Result(i, 3) = length(foo(foo == 'H'));
MC_Result(i, 4) = length(foo(foo == 'S'));
end
Voids = MC_Result(:,3) == 0;
MC_Result2 = MC_Result(Voids,:);
Spades = MC_Result2(:,4) <= 4;
MC_Result3 = MC_Result2(Spades, :);
index = MC_Result3(:,2) >=4;
Raises = MC_Result3(index,:);
Four = length(Raises(Raises(:,2) == 4))/length(Raises)
Five = length(Raises(Raises(:,2) == 5))/length(Raises)
Six = length(Raises(Raises(:,2) == 6))/length(Raises)
Seven = length(Raises(Raises(:,2) == 7))/length(Raises)Thanks for the effort, but don't we, a posteriori, have to filter these results for the hands on which partner, holding 4=6 (or wilder) in the minors would have bid clubs? For example, with say Axx void xxxx AKQxxx, I suspect that many players would have chosen a call other than 4♥. My view is that it is not possible to filter these results objectively in that two players, even of equal skill, would not agree on exactly where the 'raise diamonds/bid clubs' divide should be made.
In terms of the usage of a priori and a posteriori, it seems to me that your analysis aims more at a posteriori, but without the benefit of the filter I suggest. But I found it interesting and I thank you.

Help
