Salut,
comment calculeriez-vous avec une précision à deux chiffres après la virgule la somme des C(n,i)x^i(1-x)^(N-i) pour i de 0 à S<N, avec x<1 ? Pour N=5000 par exemple et S=4000...
Salut,
comment calculeriez-vous avec une précision à deux chiffres après la virgule la somme des C(n,i)x^i(1-x)^(N-i) pour i de 0 à S<N, avec x<1 ? Pour N=5000 par exemple et S=4000...
Bonjour,
Un petite question sur le terme à sommer : faut-il lire :
ou
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 / \ | N | i N-i | | x (1-x) | i | \ /
?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 / \ N-i | N | i (1-x) | | x | i | \ /
Si c'est la première solution, on retombe sur le binôme de Newton (en fait non puisse qu'on s'arrête à S < N ...)
il faut lire ta 1ière proposition.
effectivement, le problème vient de la somme partielle...
ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.
si on reprend le schéma du triangle, il y a peut etre quelque chose à fouiller :
Si N égale 5 et S 3
On pourrait dire que la somme à trouver est 1 moins les coefficients collés à droite, mais je pense qu'on retombe sur un problème similaire avec beaucoup de coefficients à sommer.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10105 1
EDIT :
En creusant, on pourrait peut-être approximer les coefficients à sommer à une loi gaussienne, leur somme à l'intégrale donc une loi normale. (Mes anciens prof de maths doivent s'en retourner dans leur classe)
ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.
çà me fait penser à une courbe de Bezier de degré N ?
…sauf que vous "coupez" au degré S dans l'évaluation…
courbe de Bezier :
B(t) = Somme de i=0 à N de C(n,i) * (1-t)^(N-i) * t^i * Pi
votre formule, sauf erreur :
F(x) = Somme de i=0 à S de C(n,i) * (1-x)^(N-i) * x^i
Donc votre F(x) serait une courbe de Bezier de degré N avec Pi=(1,1) pour tout i <= S et Pi=(0,0) pour i > S…
?
Il me semble que la solution de ce problème se trouve entre (en combinant) les deux articles:
Cumulative Binomial Distribution
et
Incomplete Beta Fonction
de Numerical recipes in C
adresse:
http://www.fizyka.umk.pl/nrbook/bookcpdf.html
Ce qu'on trouve est plus important que ce qu'on cherche.
Maths de base pour les nuls (et les autres...)
examinez la similitude avec la courbe de Bezier, si c'est bien le cas ce n'est pas les algorithmes efficaces qui manquent… et dans votre cas vous n'avez qu'une dimension à évaluer…
par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 /* Simplified Casteljau algorithm for only one dimension and control "points" only 1 and 0 t in [0-1] p array of N (number of control points) float */ float evaluate1(float *p,int n, int s, float t) { // we evaluate only one coordinates of the Bezier // with P[0 -> S].x = 1 and P[S+1 -> N-1].x = 0 // n the degree of the "curve" == number of control points - 1 == N - 1 for(int i=0;i<=s;i++) p[i] = 1.0 ; for(int i=s+1;i<=n;i++) p[i] = 0.0 ; float t1 = (1.0 - t) ; for(int j=1;j<n;j++) { for(int i=0;i<n-j;i++) { p[i] = t1 * p[i] + t * p[i+1] ; } } return p[0] ; }
Zavonen: oui, ça répond à mon besoin.
Mais finalement, on a implémenté la représentation en rationnel & la norme MPFR, pour calculer tout ça!![]()
Partager