-
> Servy © (28.12.08 19:54) [17]
> следовательно, формула похожа на правильную :).
почти но (для дельфийского рэндома) при а=5 и б=3 по формуле вероятность равна 2/3, а по перебору - 3/5 =)
-
> почти > но (для дельфийского рэндома) > при а=5 и б=3 > по формуле вероятность равна 2/3, а по перебору - 3/5 =)
В [18] вариант для вашего варианта рандома, но с указанным ограничением:
> Рассматривал случай a <= b.
Второй случай, a > b, вам предлагается рассмотреть самостоятельно :).
> хз. я запутался окончательно.
Да там ничего сложного. Вначале, мы считаем вероятность успеха, если какое-то конкретное значение random(a) уже выпало. В этом случае, посчитать вероятность легко. А чтобы получить полную вероятность, мы умножаем вероятность выпадения этого конкретного значения random(a) на вероятность успеха события при таком random(a), и суммируем по всем возможным random(a).
-
> Второй случай, a > b, вам предлагается рассмотреть самостоятельно > :).
Только что пришло в голову, что второй случай можно выразить через первый:
Рандом делфийский. Пусть a >= b. Тогда, вероятность random(b) > random(a) может быть подсчитана согласно полученной в [17] формуле как:
P(random(b) > random(a)) = (b-1)/(2*a).
Нас интересует вероятность P(random(a) > random(b)).
P(random(a) > random(b)) = 1 - P(random(a) <= random(b)) = 1 - P(random(a) < random(b)) - P(random(a) = random(b)).
P(random(a) < random(b)) = P(random(b) > random(a)) мы посчитали ранее по формуле, P(random(a) = random(b)) равен b/(a*b) (всего возможно a*b равновероятных комбинаций, тогда как комбинаций, при которых random(a)=random(b) всего b (так как b <= a)). Таким образом:
P(random(a) > random(b)) = 1 - (b-1)/(2*a) - b/(a*b) = 1 - (b+1)/(2*a).
При a=b эта формула сводиться к (1 - (a+1)/(2*a)) = (2a-a-1)/2a = (a-1)/(2*a). К тому же сводиться формула из [17] (при a=b). Таким образом, при равенстве параметров a и b можно использовать любую из формул.
Для вашего рандома, не делфийского, получим:
1 - (b+2)/(2*(a+1)).
Проверка экспериментом:
В [20] вы брали a=5 и b=3. При этом рандом делфийский:
1 - (b+1)/(2*a) = 1 - 4/10 = 6/10 = 3/5, что сходится с экспериментальными данными :).
-
> > Рассматривал случай a <= b.
виноват, проглядел.
-
Мда. Формула Бернулли в помощь.
-
> Servy © (28.12.08 19:54) [17]
А, ну вот собственно - недочитал. Так.
-
jufxw uiacxwvz krydeimpx djqf qszpf lxjbzw hjnt
-
|