Deutsch English Français Italiano |
<upal63$fdm$1@cabale.usenet-fr.net> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!news.mixmin.net!proxad.net!feeder1-2.proxad.net!usenet-fr.net!.POSTED!not-for-mail From: Olivier Miakinen <om+news@miakinen.net> Newsgroups: fr.sci.maths Subject: =?UTF-8?Q?Re:_Biaiser_les_probabilit=c3=a9s?= Date: Tue, 30 Jan 2024 12:05:38 +0100 Organization: There's no cabale Lines: 73 Message-ID: <upal63$fdm$1@cabale.usenet-fr.net> References: <FC7uiNUCeXddcQcZGTqATTlb77E@jntp> <up5u5l$a2g$1@dont-email.me> <JLTQztzcWhQmabrBqcVhlX4lCTQ@jntp> <up618l$rdt$1@dont-email.me> <WIGYsx07m3DG6dcL2jvOfe3i1sA@jntp> <up6btb$1arg$1@cabale.usenet-fr.net> <Q6obnXg5HnO88LgOL2sxykZiUWc@jntp> <up8lej$2eah$1@cabale.usenet-fr.net> <cczhJyDQLcwXjXJ3eURJ7Eun36I@jntp> <up9841$2tba$1@cabale.usenet-fr.net> <frOm3MdS62za7-JTcGughujiCL8@jntp> <upahdf$ecm$1@cabale.usenet-fr.net> NNTP-Posting-Host: 200.89.28.93.rev.sfr.net Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: 8bit X-Trace: cabale.usenet-fr.net 1706612739 15798 93.28.89.200 (30 Jan 2024 11:05:39 GMT) X-Complaints-To: abuse@usenet-fr.net NNTP-Posting-Date: Tue, 30 Jan 2024 11:05:39 +0000 (UTC) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0 SeaMonkey/2.49.4 In-Reply-To: <upahdf$ecm$1@cabale.usenet-fr.net> Bytes: 3439 Le 30/01/2024 11:01, Olivier Miakinen a écrit : > > Tu as raison. Mon erreur était de considérer qu'à chaque tirage on avait une > chance sur deux de tirer 1 ou 0, alors qu'avec des grilles équilibrées ce > n'est plus le cas. C'est mon 1/(2^(2k+1)) qui est faux. Je vais y réfléchir > de nouveau pour trouver la formule correcte. J'ai corrigé mon erreur, et j'ai même programmé moi-même l'algorithme en python, mais j'ai eu une énorme surprise ! La probabilité de gain avec ton algo, en supposant des grilles équilibrées, est en fait une formule compliquée : proba = (n!)²/(2n)! × somme pour k = 0..n-1 de la chose suivante : { (2k)!(2n-2-2k)! / ( k!(k+1)!((n-1-k)!)² } Je peux simplifier un peu en remarquant que je peux y trouver trois fois l'expression (2m)!/(m!)² qui est égale à C(2m,m) c'est-à-dire le nombre de combinaisons de m objets pris parmi 2m. Soit dit en passant, le k-ième nombre de Catalan est C(2m,m)/(m+1) En posant c2(m) = C(2m,m) l'expression devient alors : proba = { somme pour k = 0..n-1 de ( c2(k) × c2(n-1-k) / (k+1) ) } / c2(n) Voici mon programme : =============================================== #!/usr/bin/env python3 import math def c2(n) : return math.comb(2*n, n) def sum_item(n, k) : return c2(k) * c2(n-1-k) / (k+1) def proba(n) : sum = 0 for k in range(n) : sum += sum_item(n, k) print ("proba pour", n, "=", sum/c2(n)) for n in range(1, 20): proba(n) =============================================== Et voici la colossale surprise, quand je l'exécute : =============================================== proba pour 1 = 0.5 proba pour 2 = 0.5 proba pour 3 = 0.5 proba pour 4 = 0.5 proba pour 5 = 0.5 proba pour 6 = 0.5 proba pour 7 = 0.5 proba pour 8 = 0.5 proba pour 9 = 0.5 proba pour 10 = 0.5 proba pour 11 = 0.5 proba pour 12 = 0.5 proba pour 13 = 0.5 proba pour 14 = 0.5 proba pour 15 = 0.5 proba pour 16 = 0.5 proba pour 17 = 0.5 proba pour 18 = 0.5 proba pour 19 = 0.5 =============================================== :-D -- Olivier Miakinen