La génération de nombres pseudo-aléatoires et ses applications
|
|
- Marie-Noëlle Véronique Giroux
- il y a 8 ans
- Total affichages :
Transcription
1 La génération de nombres pseudo-aléatoires et ses applications 1 Pierre L Ecuyer Chercheur visiteur à l IRISA Chaire de Recherche du Canada en Simulation et Optimisation Stochastique DIRO, Université de Montréal, Canada Les besoins, les applications Bases théoriques et mesures de qualité Exemples: générateurs basés sur des récurrences linéaires, pour la simulation Tests statistiques empiriques Évaluation de générateurs largement utilisés Conclusion Articles and logiciels: lecuyer
2 Qu est-ce qu on veut? Produire des suites de nombres qui ont l air d être choisis complètement au hasard Eg, suites de bits: suite d entiers de 0 à 100: 31, 83, 02, 72, 54, 26, suites d entiers de 1 à n, 1 à n 1, 1 à n 2, (permutation aléatoire) suite de nombres réels entre 0 et 1 2
3 Qu est-ce qu on veut? Produire des suites de nombres qui ont l air d être choisis complètement au hasard Eg, suites de bits: suite d entiers de 0 à 100: 31, 83, 02, 72, 54, 26, suites d entiers de 1 à n, 1 à n 1, 1 à n 2, (permutation aléatoire) suite de nombres réels entre 0 et 1 2 Mécanismes physiques: lancer les dés, bouliers, roulettes, bruit thermique dans les résistances de circuits electroniques, capteurs de radiations, autres mécanismes basés sur la physique quantique, microsecondes de l horloge de l ordinateur, ou d un temps d accès au disque, etc
4 Qu est-ce qu on veut? Produire des suites de nombres qui ont l air d être choisis complètement au hasard Eg, suites de bits: suite d entiers de 0 à 100: 31, 83, 02, 72, 54, 26, suites d entiers de 1 à n, 1 à n 1, 1 à n 2, (permutation aléatoire) suite de nombres réels entre 0 et 1 2 Mécanismes physiques: lancer les dés, bouliers, roulettes, bruit thermique dans les résistances de circuits electroniques, capteurs de radiations, autres mécanismes basés sur la physique quantique, microsecondes de l horloge de l ordinateur, ou d un temps d accès au disque, etc Contient de la vraie entropie (incertitude), mais encombrant, pas facilement reproduisible, pas toujours fiable, peu ou pas d analyse mathématique Certains de ces mécanismes sont brevetés Plusieurs sont disponibles commercialement On peut améliorer la fiabilité en combinant des blocs de bits (XOR)
5 Générateurs algorithmiques (ou pseudo-aléatoires) (GPA) Une fois les paramètres et l état initial du GPA choisis, la suite produite est complètement déterministe 3
6 Générateurs algorithmiques (ou pseudo-aléatoires) (GPA) Une fois les paramètres et l état initial du GPA choisis, la suite produite est complètement déterministe 3 Avantages: pas de matériel à installer, un logiciel suffit; souvent plus rapide; on peut facilement répéter la même séquence
7 Générateurs algorithmiques (ou pseudo-aléatoires) (GPA) Une fois les paramètres et l état initial du GPA choisis, la suite produite est complètement déterministe 3 Avantages: pas de matériel à installer, un logiciel suffit; souvent plus rapide; on peut facilement répéter la même séquence Méthodes hybrides: par exemple, prendre des bits dans les mémoires caches des ordinateurs (Seznec et Sendrier, IRISA)
8 Générateurs algorithmiques (ou pseudo-aléatoires) (GPA) Une fois les paramètres et l état initial du GPA choisis, la suite produite est complètement déterministe 3 Avantages: pas de matériel à installer, un logiciel suffit; souvent plus rapide; on peut facilement répéter la même séquence Méthodes hybrides: par exemple, prendre des bits dans les mémoires caches des ordinateurs (Seznec et Sendrier, IRISA) Qualités requises? Dépend des applications
9 1 Jeux d ordinateurs personnels: L apparence suffit 4
10 1 Jeux d ordinateurs personnels: L apparence suffit 4 2 Simulation stochastique (Monte Carlo): Utilisé en sciences, gestion, etc On simule un modèle mathématique d un système complexe, pour mieux comprendre le comportement du système, ou optimiser sa gestion, etc Souvent, on veut estimer une mesure de performance définie par une espérance mathématique (une intégrale) Ici, on veut que les propriétés statistiques du modèle mathématique soient bien reproduites par le simulateur
11 1 Jeux d ordinateurs personnels: L apparence suffit 4 2 Simulation stochastique (Monte Carlo): Utilisé en sciences, gestion, etc On simule un modèle mathématique d un système complexe, pour mieux comprendre le comportement du système, ou optimiser sa gestion, etc Souvent, on veut estimer une mesure de performance définie par une espérance mathématique (une intégrale) Ici, on veut que les propriétés statistiques du modèle mathématique soient bien reproduites par le simulateur 3 Loteries, machines de casinos, casinos sur Internet, Française des Jeux, Unibet, Loto-Québec, etc: Il ne faut pas que quiconque puisse obtenir un avantage pour inférer les prochains numéros ou encore des combinaisons plus probables Conditions plus exigeantes que pour la simulation
12 1 Jeux d ordinateurs personnels: L apparence suffit 4 2 Simulation stochastique (Monte Carlo): Utilisé en sciences, gestion, etc On simule un modèle mathématique d un système complexe, pour mieux comprendre le comportement du système, ou optimiser sa gestion, etc Souvent, on veut estimer une mesure de performance définie par une espérance mathématique (une intégrale) Ici, on veut que les propriétés statistiques du modèle mathématique soient bien reproduites par le simulateur 3 Loteries, machines de casinos, casinos sur Internet, Française des Jeux, Unibet, Loto-Québec, etc: Il ne faut pas que quiconque puisse obtenir un avantage pour inférer les prochains numéros ou encore des combinaisons plus probables Conditions plus exigeantes que pour la simulation 4 Cryptologie: Encore plus exigeant L observation d une partie de l output ne doit nous aider d aucune manière à deviner quoi que ce soit dans le reste
13 Besoins pour la Simulation Stochastique 5 On utilise habituellement un GPA qui imite une suite U 0, U 1, U 2, de variables aléatoires indépendantes de loi uniforme sur l intervalle (0, 1)
14 Besoins pour la Simulation Stochastique 5 On utilise habituellement un GPA qui imite une suite U 0, U 1, U 2, de variables aléatoires indépendantes de loi uniforme sur l intervalle (0, 1) Pour générer des va selon d autres lois, on applique des transformations à ces U j Par exemple, l inversion: si X j = F 1 (U j ), alors X j imite une va de fonction de répartition F
15 Besoins pour la Simulation Stochastique 5 On utilise habituellement un GPA qui imite une suite U 0, U 1, U 2, de variables aléatoires indépendantes de loi uniforme sur l intervalle (0, 1) Pour générer des va selon d autres lois, on applique des transformations à ces U j Par exemple, l inversion: si X j = F 1 (U j ), alors X j imite une va de fonction de répartition F Comparaison de systèmes semblables avec valeurs aléatoires communes On simule un réseau de communication, ou un centre d appels téléphoniques, ou un réseau de distribution de biens, ou une usine, ou le trafic automobile dans une ville, ou la gestion dynamique d un portefeuille d investissements (finance), etc On veut comparer deux configurations (ou politiques de gestion) semblables du système Une partie de la différence de performance sera due à la différence de configuration, et une autre partie sera due au bruit stochastique On veut minimiser cette seconde partie
16 Idée de base: simuler les deux configurations avec les mêmes valeurs uniformes U j, utilisées exactement aux mêmes endroits On dispose de nombreux résultats théoriques sur l amélioration d efficacité (réduction de variance) que cela apporte Mais l implantation, avec synchronisation des va, peut être compliquée lorsque les deux configurations n utilisent pas le même nombre de U j (eg, parfois on doit générer une va dans un cas et pas dans l autre) 6
17 Idée de base: simuler les deux configurations avec les mêmes valeurs uniformes U j, utilisées exactement aux mêmes endroits On dispose de nombreux résultats théoriques sur l amélioration d efficacité (réduction de variance) que cela apporte Mais l implantation, avec synchronisation des va, peut être compliquée lorsque les deux configurations n utilisent pas le même nombre de U j (eg, parfois on doit générer une va dans un cas et pas dans l autre) 6 Une solution: GPA avec suites et sous-suites multiples Chaque suite peut être vue comme un GPA virtuel Elle est partitionnée en sous-suites On peut créer autant de suites (distinctes et indépendantes ) que l on veut État courant début début prochaine suite sous-suite sous-suite
18 Idée de base: simuler les deux configurations avec les mêmes valeurs uniformes U j, utilisées exactement aux mêmes endroits On dispose de nombreux résultats théoriques sur l amélioration d efficacité (réduction de variance) que cela apporte Mais l implantation, avec synchronisation des va, peut être compliquée lorsque les deux configurations n utilisent pas le même nombre de U j (eg, parfois on doit générer une va dans un cas et pas dans l autre) 6 Une solution: GPA avec suites et sous-suites multiples Chaque suite peut être vue comme un GPA virtuel Elle est partitionnée en sous-suites On peut créer autant de suites (distinctes et indépendantes ) que l on veut État courant début début prochaine suite sous-suite sous-suite
19 Idée de base: simuler les deux configurations avec les mêmes valeurs uniformes U j, utilisées exactement aux mêmes endroits On dispose de nombreux résultats théoriques sur l amélioration d efficacité (réduction de variance) que cela apporte Mais l implantation, avec synchronisation des va, peut être compliquée lorsque les deux configurations n utilisent pas le même nombre de U j (eg, parfois on doit générer une va dans un cas et pas dans l autre) 6 Une solution: GPA avec suites et sous-suites multiples Chaque suite peut être vue comme un GPA virtuel Elle est partitionnée en sous-suites On peut créer autant de suites (distinctes et indépendantes ) que l on veut État courant début début prochaine suite sous-suite sous-suite
20 Idée de base: simuler les deux configurations avec les mêmes valeurs uniformes U j, utilisées exactement aux mêmes endroits On dispose de nombreux résultats théoriques sur l amélioration d efficacité (réduction de variance) que cela apporte Mais l implantation, avec synchronisation des va, peut être compliquée lorsque les deux configurations n utilisent pas le même nombre de U j (eg, parfois on doit générer une va dans un cas et pas dans l autre) 6 Une solution: GPA avec suites et sous-suites multiples Chaque suite peut être vue comme un GPA virtuel Elle est partitionnée en sous-suites On peut créer autant de suites (distinctes et indépendantes ) que l on veut État courant début début prochaine suite sous-suite sous-suite
21 début début prochaine suite sous-suite sous-suite Supposons que pour une suite de clients, on doit générer: (1) un instant d arrivée pour chaque client, (2) une durée de service au serveur A pour chaque client (3) une durée de service au serveur B pour des groupes de 10 à 20 clients Alors on peut utiliser une suite pour chacun de ces trois usages
22 7 État courant début début prochaine suite sous-suite sous-suite Supposons que pour une suite de clients, on doit générer: (1) un instant d arrivée pour chaque client, (2) une durée de service au serveur A pour chaque client (3) une durée de service au serveur B pour des groupes de 10 à 20 clients Alors on peut utiliser une suite pour chacun de ces trois usages
23 Exemple d interface Java (dans SSJ) 8 public interface RandomStream { public void resetstartstream (); } Réinitialise la suite à son état initial public void resetstartsubstream (); Réinitialise la suite au début de sa sous-suite courante substream public void resetnextsubstream (); Réinitialise la suite au début de sa prochaine sous-suite substream public double nextdouble (); Retourne une va U(0, 1) de cette suite et avance d un pas public int nextint (int i, int j); Retourne une va uniforme sur {i, i + 1,, j}
24 public class MRG32k3a implements RandomStream { } Une implantation particulière, basée sur un générateur de période 2 181, partitionnée en suites disjointes de longueur 2 127, et sous-suites de longueur 2 76 public MRG32k3a(); Construit une nouvelle suite 9 public class LFSR113 implements RandomStream { } Une implantation basée sur uns combainaison de LFSR, de période public LFSR113(); Construit une nouvelle suite Ce système, basé sur MRG32k3a, a été récemment adopté dans plusieurs logiciels de simulation et de statistique, tels que SAS, Arena, Witness, Simul8, Automod, ns2,
25 Génération de valeurs non-uniformes 10 Lois continues ou discrètes Méthode par défaut: inversion public class RandomVariateGen { public RandomVariateGen (RandomStream s, Distribution dist) Crée un générateur pour la loi dist, avec la suite s public double nextdouble() Génère une nouvelle valeur
26 Génération de valeurs non-uniformes 10 Lois continues ou discrètes Méthode par défaut: inversion public class RandomVariateGen { public RandomVariateGen (RandomStream s, Distribution dist) Crée un générateur pour la loi dist, avec la suite s public double nextdouble() Génère une nouvelle valeur Il y a aussi des générateurs spécialisés pour plusieurs distributions public class Normal extends RandomVariateGen { public Normal (RandomStream s, double mu, double sigma); Crée un générateur de va normales public static double Génère une nouvelle va normale, en utilisant la suite s nextdouble (RandomStream s, double mu, double sigma);
27 Exemple de comparaison de deux configuration: 11 RandomStream genarr = new RandomStream(); // Inter-arriv RandomStream genserva = new RandomStream(); // Serveur A RandomStream genservb = new RandomStream(); // Serveur B
28 Exemple de comparaison de deux configuration: 11 RandomStream genarr = new RandomStream(); // Inter-arriv RandomStream genserva = new RandomStream(); // Serveur A RandomStream genservb = new RandomStream(); // Serveur B for (int rep = 0; rep < n; rep++) { genarrresetnextsubstream(); genservaresetnextsubstream(); genservbresetnextsubstream(); --- simuler configuration } genarrresetstartsubstream(); genservaresetstartsubstream(); genservbresetstartsubstream(); --- simuler configuration 2 ---
29 Les suites multiples sont très utiles, par exemple pour: 12 comparer des systèmes semblables analyse de sensibilité, estimation de dérivées (ou gradient) par différences finies optimisation d une fonction empirique, ou optimisation en général utilisation d un modèle similaire simplifié comme variable de contrôle externe
30 Les suites multiples sont très utiles, par exemple pour: 12 comparer des systèmes semblables analyse de sensibilité, estimation de dérivées (ou gradient) par différences finies optimisation d une fonction empirique, ou optimisation en général utilisation d un modèle similaire simplifié comme variable de contrôle externe Le RandomStream peut aussi représenter un ensemble de points à faible discrépance, pour quasi-monte Carlo C est le cas dans SSJ
31 Les suites multiples sont très utiles, par exemple pour: 12 comparer des systèmes semblables analyse de sensibilité, estimation de dérivées (ou gradient) par différences finies optimisation d une fonction empirique, ou optimisation en général utilisation d un modèle similaire simplifié comme variable de contrôle externe Le RandomStream peut aussi représenter un ensemble de points à faible discrépance, pour quasi-monte Carlo C est le cas dans SSJ Questions?
32 Définition et conception d un GPA 13 S, espace d états fini; s 0, germe (état initial); f : S S, fonction de transition; s n = f(s n 1 )
33 Définition et conception d un GPA 13 S, espace d états fini; s 0, germe (état initial); f : S S, fonction de transition; s n = f(s n 1 ) U, espace des valeurs de sortie; g : S U, fonction de sortie u n = g(s n )
34 Définition et conception d un GPA 13 S, espace d états fini; s 0, germe (état initial); f : S S, fonction de transition; s n = f(s n 1 ) U, espace des valeurs de sortie; g : S U, fonction de sortie u n = g(s n ) s 0
35 Définition et conception d un GPA 13 S, espace d états fini; s 0, germe (état initial); f : S S, fonction de transition; s n = f(s n 1 ) U, espace des valeurs de sortie; g : S U, fonction de sortie u n = g(s n ) g s 0 u 0
36 Définition et conception d un GPA 13 S, espace d états fini; s 0, germe (état initial); f : S S, fonction de transition; s n = f(s n 1 ) U, espace des valeurs de sortie; g : S U, fonction de sortie u n = g(s n ) g s 0 f s 1 u 0
37 Définition et conception d un GPA 13 S, espace d états fini; s 0, germe (état initial); f : S S, fonction de transition; s n = f(s n 1 ) U, espace des valeurs de sortie; g : S U, fonction de sortie u n = g(s n ) g s 0 f s 1 g u 0 u 1
38 Définition et conception d un GPA 13 S, espace d états fini; s 0, germe (état initial); f : S S, fonction de transition; s n = f(s n 1 ) U, espace des valeurs de sortie; g : S U, fonction de sortie u n = g(s n ) g s 0 f s 1 g f f s n g f s n+1 g f u 0 u 1 u n u n+1
39 Définition et conception d un GPA 13 S, espace d états fini; s 0, germe (état initial); f : S S, fonction de transition; s n = f(s n 1 ) U, espace des valeurs de sortie; g : S U, fonction de sortie u n = g(s n ) f s ρ 1 g f s 0 g f s 1 g f f s n g f s n+1 g f u ρ 1 u 0 u 1 u n u n+1 Période: ρ S s i+ρ = s i i τ On supposera τ = 0 et U = [0, 1]
40 14 f f f f f f f s ρ 1 s 0 s 1 s n s n+1 g g g g g u ρ 1 u 0 u 1 u n u n+1 Objectif: en observant seulement (u 0, u 1, ), il doit être difficile de distinguer cette suite de la réalisation d une suite de va iid uniformes sur U
41 14 f f f f f f f s ρ 1 s 0 s 1 s n s n+1 g g g g g u ρ 1 u 0 u 1 u n u n+1 Objectif: en observant seulement (u 0, u 1, ), il doit être difficile de distinguer cette suite de la réalisation d une suite de va iid uniformes sur U Utopie: ne pas pouvoir distinguer mieux qu en tirant à pile ou face Autrement dit, que la suite passe tous les tests statistiques imaginables Cela est impossible! On y reviendra plus loin
42 14 f f f f f f f s ρ 1 s 0 s 1 s n s n+1 g g g g g u ρ 1 u 0 u 1 u n u n+1 Objectif: en observant seulement (u 0, u 1, ), il doit être difficile de distinguer cette suite de la réalisation d une suite de va iid uniformes sur U Utopie: ne pas pouvoir distinguer mieux qu en tirant à pile ou face Autrement dit, que la suite passe tous les tests statistiques imaginables Cela est impossible! On y reviendra plus loin On veut aussi: vitesse, facilité d implantation, suites reproduisibles Compromis entre vitesse / bonnes propriétés statistiques / (im)prévisibilité
43 14 f f f f f f f s ρ 1 s 0 s 1 s n s n+1 g g g g g u ρ 1 u 0 u 1 u n u n+1 Objectif: en observant seulement (u 0, u 1, ), il doit être difficile de distinguer cette suite de la réalisation d une suite de va iid uniformes sur U Utopie: ne pas pouvoir distinguer mieux qu en tirant à pile ou face Autrement dit, que la suite passe tous les tests statistiques imaginables Cela est impossible! On y reviendra plus loin On veut aussi: vitesse, facilité d implantation, suites reproduisibles Compromis entre vitesse / bonnes propriétés statistiques / (im)prévisibilité Si l état initial s 0 est choisi au hasard, le GPA est comme une roulette géante: Pour générer t nombres aléatoires, on tourne la roulette pour choisir s 0, puis on retient u = (u 0,, u t 1 )
44 14 f f f f f f f s ρ 1 s 0 s 1 s n s n+1 g g g g g u ρ 1 u 0 u 1 u n u n+1 Objectif: en observant seulement (u 0, u 1, ), il doit être difficile de distinguer cette suite de la réalisation d une suite de va iid uniformes sur U Utopie: ne pas pouvoir distinguer mieux qu en tirant à pile ou face Autrement dit, que la suite passe tous les tests statistiques imaginables Cela est impossible! On y reviendra plus loin On veut aussi: vitesse, facilité d implantation, suites reproduisibles Compromis entre vitesse / bonnes propriétés statistiques / (im)prévisibilité Si l état initial s 0 est choisi au hasard, le GPA est comme une roulette géante: Pour générer t nombres aléatoires, on tourne la roulette pour choisir s 0, puis on retient u = (u 0,, u t 1 ) Machines de casinos et loteries: on réinitialise s 0 très souvent
45 La loi uniforme sur [0, 1] t Choisir s 0 au hasard correspond à choisir un point au hasard dans l espace échantillonnal 15 Ψ t = {u = (u 0,, u t 1 ) = (g(s 0 ),, g(s t 1 )), s 0 S}, qui peut être interprété comme une approximation de [0, 1] t
46 La loi uniforme sur [0, 1] t Choisir s 0 au hasard correspond à choisir un point au hasard dans l espace échantillonnal 15 Ψ t = {u = (u 0,, u t 1 ) = (g(s 0 ),, g(s t 1 )), s 0 S}, qui peut être interprété comme une approximation de [0, 1] t Critère: Ψ t doit recouvrir [0, 1] t très uniformément pour t jusqu à (disons) t 0
47 La loi uniforme sur [0, 1] t Choisir s 0 au hasard correspond à choisir un point au hasard dans l espace échantillonnal 15 Ψ t = {u = (u 0,, u t 1 ) = (g(s 0 ),, g(s t 1 )), s 0 S}, qui peut être interprété comme une approximation de [0, 1] t Critère: Ψ t doit recouvrir [0, 1] t très uniformément pour t jusqu à (disons) t 0 Il nous faut une mesure d uniformité de Ψ t (ou une mesure de discrépance entre la loi empirique de Ψ t et la loi uniforme) Plusieurs définitions possibles Important: doit être facilement calculable sans générer les points Pour cela, il faut bien comprendre la structure mathématique de Ψ t Pour cette raison, la plupart des GPA utilisés en simulation sont basés sur des récurrences linéaires
48 La loi uniforme sur [0, 1] t Choisir s 0 au hasard correspond à choisir un point au hasard dans l espace échantillonnal 15 Ψ t = {u = (u 0,, u t 1 ) = (g(s 0 ),, g(s t 1 )), s 0 S}, qui peut être interprété comme une approximation de [0, 1] t Critère: Ψ t doit recouvrir [0, 1] t très uniformément pour t jusqu à (disons) t 0 Il nous faut une mesure d uniformité de Ψ t (ou une mesure de discrépance entre la loi empirique de Ψ t et la loi uniforme) Plusieurs définitions possibles Important: doit être facilement calculable sans générer les points Pour cela, il faut bien comprendre la structure mathématique de Ψ t Pour cette raison, la plupart des GPA utilisés en simulation sont basés sur des récurrences linéaires Pourquoi ne pas insister que Ψ t lui-même ressemble à un ensemble de points choisis au hasard (eg, ne soit pas trop uniforme)? En fait, on veut cela seulement pour la fraction infime de Ψ t que l on utilise
49 Généralisation: mesurer l uniformité de Ψ I = {(u i1,, u it ) s 0 S} pour une classe choisie d ensembles d indices (non successifs) de forme I = {i 1, i 2,, i t } On veut s assurer que Ψ I est bien uniforme pour tout I J, pour une famille donnée J 16
50 Générateur linéaire récursif multiple (MRG) 17 x n = (a 1 x n a k x n k ) mod m, u n = x n /m En pratique, on prendra plutôt u n = (x n + 1)/(m + 1), ou encore u n = x n /(m + 1) si x n > 0 et u n = m/(m + 1) sinon Mais la structure reste essentiellement la même
51 Générateur linéaire récursif multiple (MRG) 17 x n = (a 1 x n a k x n k ) mod m, u n = x n /m En pratique, on prendra plutôt u n = (x n + 1)/(m + 1), ou encore u n = x n /(m + 1) si x n > 0 et u n = m/(m + 1) sinon Mais la structure reste essentiellement la même Nombreuses variantes et implantations Très répandu Si k = 1: générateur à congruence linéaire (GCL) classique
52 Générateur linéaire récursif multiple (MRG) 17 x n = (a 1 x n a k x n k ) mod m, u n = x n /m En pratique, on prendra plutôt u n = (x n + 1)/(m + 1), ou encore u n = x n /(m + 1) si x n > 0 et u n = m/(m + 1) sinon Mais la structure reste essentiellement la même Nombreuses variantes et implantations Très répandu Si k = 1: générateur à congruence linéaire (GCL) classique État à l étape n: s n = x n = (x n k+1,, x n ) t Espace d états: Z k m, de cardinalité m k
53 Générateur linéaire récursif multiple (MRG) 17 x n = (a 1 x n a k x n k ) mod m, u n = x n /m En pratique, on prendra plutôt u n = (x n + 1)/(m + 1), ou encore u n = x n /(m + 1) si x n > 0 et u n = m/(m + 1) sinon Mais la structure reste essentiellement la même Nombreuses variantes et implantations Très répandu Si k = 1: générateur à congruence linéaire (GCL) classique État à l étape n: s n = x n = (x n k+1,, x n ) t Espace d états: Z k m, de cardinalité m k Période max ρ = m k 1, pour m premier
54 Polynôme caractéristique (avec a 0 = 1): 18 P (z) = z k a 1 z k 1 a k = k a j z k j j=0
55 Polynôme caractéristique (avec a 0 = 1): 18 P (z) = z k a 1 z k 1 a k = k a j z k j j=0 On peut représenter cette récurrence dans les trois espaces suivants: (i) l espace Z k m des vecteurs ayant k coordonnées dans Z m, (ii) l espace Z m [z]/(p ) des polynômes de degré < k à coefficients dans Z m (ie, les polynômes réduits modulo P (z)), (iii) l espace L(P ) des séries formelles de Laurent de la forme s(z) = j=1 c jz j, où les coefficients c j sont dans Z m et satisfont c j = (a 1 c j 1 + +a k c j k ) mod m pour tout j > k Il y a des bijections faciles à calculer entre les trois Utile pour étudier la théorie, eg, vérifier la période
56 Structure de Ψ t : (x 0,, x k 1 ) peut prendre n importe quelle valeur dans {0, 1,, m 1} k ; ensuite x k, x k+1, sont déterminés par la récurrence Ainsi, (x 0,, x k 1 ) (x 0,, x k 1, x k,, x t 1 ) est une application linéaire 19 On peut en déduire que Ψ t = L t [0, 1) t où L t = { v = t z i v i z i Z }, un réseau ( lattice ) dans R t, avec i=1 v 1 = (1, 0,, 0, x 1,k,, x 1,t 1 )/m v 2 = (0, 1,, 0, x 2,k,, x 2,t 1 )/m v k = (0, 0,, 1, x k,k,, x k,t 1 )/m v k+1 = (0, 0,, 0, 1,, 0) v t = (0, 0,, 0, 0,, 1)
57 u n 0 1 u n+1 GCL (k = 1), m = 101, a 1 = 12, t = 2;
58 u n 0 1 u n+1 GCL (k = 1), m = 101, a 1 = 12, t = 2; v 1 = (1, 12)/m, v 2 = (0, 1)
59 u n u n+1 x n = x n 1 mod et u n = x n /
60 u n u n+1 x n = x n 1 mod et u n = x n /
61 On peut mesurer l uniformité en termes de cette structure de réseau, en plusieurs dimensions 23
62 On peut mesurer l uniformité en termes de cette structure de réseau, en plusieurs dimensions 23 On peut aussi prendre en compte les projections sur des sous-ensembles de coordonnées I = {i 1, i 2,, i t }: Ψ I = {(u i1,, u it ) s 0 = (x 0,, x k 1 ) Z k m} = L I [0, 1) t On effectue des recherches par ordinateur pour trouver des bons paramètres par rapport à un critère qui prend compte de l uniformité d un ensemble choisi de projections
63 On peut mesurer l uniformité en termes de cette structure de réseau, en plusieurs dimensions 23 On peut aussi prendre en compte les projections sur des sous-ensembles de coordonnées I = {i 1, i 2,, i t }: Ψ I = {(u i1,, u it ) s 0 = (x 0,, x k 1 ) Z k m} = L I [0, 1) t On effectue des recherches par ordinateur pour trouver des bons paramètres par rapport à un critère qui prend compte de l uniformité d un ensemble choisi de projections Remarque: on peut montrer que si 1 + a 2 i a 2 i t est petit, alors l uniformité de Ψ I est nécessairement mauvaise
64 Implantations efficaces Il faut calculer ax mod m pour de grands m 24
65 Implantations efficaces Il faut calculer ax mod m pour de grands m Factorisation approximative Valide si (a 2 < m) ou (a = m/i où i 2 < m) Calculs sur des entiers Précalculer q = m/a et r = m mod a Ensuite, 24 y = x/q ; x = a(x yq) yr; if x < 0 then x = x + m Toutes les quantités intermédiaires demeurent entre m et m
66 Implantations efficaces Il faut calculer ax mod m pour de grands m Factorisation approximative Valide si (a 2 < m) ou (a = m/i où i 2 < m) Calculs sur des entiers Précalculer q = m/a et r = m mod a Ensuite, 24 y = x/q ; x = a(x yq) yr; if x < 0 then x = x + m Toutes les quantités intermédiaires demeurent entre m et m Calculs en point flottant, double précision Valide si am < 2 53 double m, a, x, y; int k; y = a x; k = y/m ; x = y k m;
67 Décomposition en puissances de 2 Supposons que a = ±2 q ± 2 r et m = 2 e h pour h petit (Wu 1997 pour h = 1; L Ecuyer et Simard 1999 pour h > 1) Pour calculer y = 2 q x mod m, décomposer x = x e q x 1 ; 25 q bits (e q) bits x = x 1 x 0 Pour h = 1, on obtient y en permutant x 0 et x 1
68 Décomposition en puissances de 2 Supposons que a = ±2 q ± 2 r et m = 2 e h pour h petit (Wu 1997 pour h = 1; L Ecuyer et Simard 1999 pour h > 1) Pour calculer y = 2 q x mod m, décomposer x = x e q x 1 ; 25 q bits (e q) bits x = x 1 x 0 Pour h = 1, on obtient y en permutant x 0 et x 1 Pour h > 1, y = 2 q (x e q x 1 ) mod (2 e h) = (2 q x 0 + hx 1 ) mod (2 e h)
69 Décomposition en puissances de 2 Supposons que a = ±2 q ± 2 r et m = 2 e h pour h petit (Wu 1997 pour h = 1; L Ecuyer et Simard 1999 pour h > 1) Pour calculer y = 2 q x mod m, décomposer x = x e q x 1 ; 25 q bits (e q) bits x = x 1 x 0 Pour h = 1, on obtient y en permutant x 0 et x 1 Pour h > 1, y = 2 q (x e q x 1 ) mod (2 e h) = (2 q x 0 + hx 1 ) mod (2 e h) Si h < 2 q et h(2 q (h + 1)2 e+q ) < m, chaque terme est < m Modulo: soustraire m si la somme est m
70 Coefficients égaux Par exemple, prendre tous les a j non nuls égaux à a (Deng et Xu 2002) Alors, x n = a(x n i1 + + x n k ) mod m Une seule multiplication 26
71 Coefficients égaux Par exemple, prendre tous les a j non nuls égaux à a (Deng et Xu 2002) Alors, x n = a(x n i1 + + x n k ) mod m Une seule multiplication 26 Lagged-Fibonacci (très utilisé, mais mauvaise idée): x n = (±x n r ± x n k ) mod m Tous les vecteurs (u n, u n+k r, u n+k ) sont dans seulemnt deux plans!
72 Coefficients égaux Par exemple, prendre tous les a j non nuls égaux à a (Deng et Xu 2002) Alors, x n = a(x n i1 + + x n k ) mod m Une seule multiplication 26 Lagged-Fibonacci (très utilisé, mais mauvaise idée): x n = (±x n r ± x n k ) mod m Tous les vecteurs (u n, u n+k r, u n+k ) sont dans seulemnt deux plans! Même problème avec add-with-carry et subtract-with-borrow Erreur fréquente: croire qu on est ok si la période est assez longue
73 Coefficients égaux Par exemple, prendre tous les a j non nuls égaux à a (Deng et Xu 2002) Alors, x n = a(x n i1 + + x n k ) mod m Une seule multiplication 26 Lagged-Fibonacci (très utilisé, mais mauvaise idée): x n = (±x n r ± x n k ) mod m Tous les vecteurs (u n, u n+k r, u n+k ) sont dans seulemnt deux plans! Même problème avec add-with-carry et subtract-with-borrow Erreur fréquente: croire qu on est ok si la période est assez longue Des variantes qui sautent des valeurs sont recommandées par Luscher (1994) et Knuth (1997) Mais pas très efficace
74 MRGs combinés Considérons deux [ou plusieurs] MRGs évoluant en parallèle: 27 x 1,n = (a 1,1 x 1,n a 1,k x 1,n k ) mod m 1, x 2,n = (a 2,1 x 2,n a 2,k x 2,n k ) mod m 2 On définit les deux combinaisons: z n := (x 1,n x 2,n ) mod m 1 ; u n := z n /m 1 ; w n := (x 1,n /m 1 x 2,n /m 2 ) mod 1
75 MRGs combinés Considérons deux [ou plusieurs] MRGs évoluant en parallèle: 27 x 1,n = (a 1,1 x 1,n a 1,k x 1,n k ) mod m 1, x 2,n = (a 2,1 x 2,n a 2,k x 2,n k ) mod m 2 On définit les deux combinaisons: z n := (x 1,n x 2,n ) mod m 1 ; u n := z n /m 1 ; w n := (x 1,n /m 1 x 2,n /m 2 ) mod 1 La suite {w n, n 0} est la sortie d un autre MRG, de module m = m 1 m 2, et {u n, n 0} est presque la même suite si m 1 et m 2 sont proches Peut atteindre la période (m k 1 1)(m k 2 1)/2
76 MRGs combinés Considérons deux [ou plusieurs] MRGs évoluant en parallèle: 27 x 1,n = (a 1,1 x 1,n a 1,k x 1,n k ) mod m 1, x 2,n = (a 2,1 x 2,n a 2,k x 2,n k ) mod m 2 On définit les deux combinaisons: z n := (x 1,n x 2,n ) mod m 1 ; u n := z n /m 1 ; w n := (x 1,n /m 1 x 2,n /m 2 ) mod 1 La suite {w n, n 0} est la sortie d un autre MRG, de module m = m 1 m 2, et {u n, n 0} est presque la même suite si m 1 et m 2 sont proches Peut atteindre la période (m k 1 1)(m k 2 1)/2 Permet d implanter efficacement un MRG ayant un grand m et plusieurs grands coefficients non nuls
77 MRGs combinés Considérons deux [ou plusieurs] MRGs évoluant en parallèle: 27 x 1,n = (a 1,1 x 1,n a 1,k x 1,n k ) mod m 1, x 2,n = (a 2,1 x 2,n a 2,k x 2,n k ) mod m 2 On définit les deux combinaisons: z n := (x 1,n x 2,n ) mod m 1 ; u n := z n /m 1 ; w n := (x 1,n /m 1 x 2,n /m 2 ) mod 1 La suite {w n, n 0} est la sortie d un autre MRG, de module m = m 1 m 2, et {u n, n 0} est presque la même suite si m 1 et m 2 sont proches Peut atteindre la période (m k 1 1)(m k 2 1)/2 Permet d implanter efficacement un MRG ayant un grand m et plusieurs grands coefficients non nuls Tableaux de paramètres: L Ecuyer (1999); L Ecuyer et Touzin (2000) Implantations multisteams
78 Sauter en avant (pour les suites et sous-suites): Si x n = (x n k+1,, x n ) t et A = a k a k 1 a 1 28 alors et donc x n = Ax n 1 mod m x n+ν = (A ν mod m)x n mod m
79 Récurrences Linéaires Modulo 2 29 Récurrence linéaire matricielles dans F 2 ( {0, 1}, mod 2): x n = Ax n 1, (k-bit vecteur d état) y n = Bx n, (w-bit vecteur de sortie) u n = w y n,j 1 2 j = y n,0 y n,1 y n,2, (sortie) j=1
80 Récurrences Linéaires Modulo 2 29 Récurrence linéaire matricielles dans F 2 ( {0, 1}, mod 2): x n = Ax n 1, (k-bit vecteur d état) y n = Bx n, (w-bit vecteur de sortie) u n = w y n,j 1 2 j = y n,0 y n,1 y n,2, (sortie) j=1 Chaque coordonnée de x n et de y n suit la récurrence x n,j = (α 1 x n 1,j + + α k x n k,j ), de polynôme caractéristique P (z) = z k α 1 z k 1 α k 1 z α k = det(a zi) La période max ρ = 2 k 1 est atteinte ssi P (z) est primitif sur F 2
81 Avec un choix astucieux de A, le calcul de transition se fait avec des décalages, xor, and, masques, etc, sur des blocs de bits Très rapide Cas particuliers: Tausworthe, linear feedback shift register (LFSR), GFSR, twisted GFSR, Mersenne twister, WELL, xorshift, polynomial LCG, etc 30
82 Avec un choix astucieux de A, le calcul de transition se fait avec des décalages, xor, and, masques, etc, sur des blocs de bits Très rapide Cas particuliers: Tausworthe, linear feedback shift register (LFSR), GFSR, twisted GFSR, Mersenne twister, WELL, xorshift, polynomial LCG, etc 30 Pour sauter en avant: x n+ν = (X ν mod 2) } {{ } précalculé x n mod 2 Haramoto, L Ecuyer, Matsumoto, Nishimura, Panneton (2006) proposent une méthode plus efficace pour les grandes valeurs de k
83 GCL dans un espace de séries formelles La fonction génératrice de la coordonnée j de l état est la série formelle 31 s j (z) = x 0,j z 1 + x 1,j z 2 + = x n 1,j z n n=1 On peut montrer que où g j (z) def = s j (z)p (z) = c j,1 z k c j,k F 2 [z], c j,1 c j,2 c j,k = α α k 1 α 1 1 x 0,j x 1,j x k 1,j Il y a une correspondance biunivoque entre (1) les états (x 0,j,, x k 1,j ) de la récurrence; (2) les polynômes g j (z) de degré < k (ie, dans F 2 [z]/p (z)); (3) les séries formelles de la forme s j (z) = g j (z)/p (z)
84 Équidistribution Pour j = 1,, t, on partitionne le j-ième axe de [0, 1) t en 2 q j parties égales: cela donne 2 q boîtes, où q = q q t u n u n Exemple: t = 2, q 1 = 4, q 2 = 2
85 Équidistribution Pour j = 1,, t, on partitionne le j-ième axe de [0, 1) t en 2 q j parties égales: cela donne 2 q boîtes, où q = q q t Si chaque boîte contient exactement 2 k q points de Ψ t, alors Ψ t est dit (q 1,, q t )-équidistribué en base 2 Cela veut dire que tous les vecteurs de dimension t, avec leur coordonnée j tronquée aux q j premiers bits pour chaque j, apparait le même nombre de fois 33
86 Équidistribution Pour j = 1,, t, on partitionne le j-ième axe de [0, 1) t en 2 q j parties égales: cela donne 2 q boîtes, où q = q q t Si chaque boîte contient exactement 2 k q points de Ψ t, alors Ψ t est dit (q 1,, q t )-équidistribué en base 2 Cela veut dire que tous les vecteurs de dimension t, avec leur coordonnée j tronquée aux q j premiers bits pour chaque j, apparait le même nombre de fois 33 On peut écrire les q bits qui déterminent dans quelle boîte on tombe comme Mx 0 pour une certaine matrice M Ψ t est (q 1,, q t )-équidistribué ssi M est de plein rang
87 u n u n+1 Exemple jouet: générateur LFSR avec Ψ t = 1024 = 2 10
88 u n u n+1 Exemple jouet: générateur LFSR avec Ψ t = 1024 = 2 10
89 u n u n+1 Exemple jouet: générateur LFSR avec Ψ t = 1024 =
90 u n u n+1 Exemple jouet: générateur LFSR avec Ψ t = 1024 =
91 Pour un ensemble d indice I = {i 1, i 2,, i t }, on défini l écart de résolution: δ I = min( k/t, w) max{l : Ψ I est (l,, l)-équidist} Figure de mérite possible: 35 V J = I J δ I où J est une classe choisie d ensembles I Le choix de J est une affaire de compromis
92 Pour un ensemble d indice I = {i 1, i 2,, i t }, on défini l écart de résolution: δ I = min( k/t, w) max{l : Ψ I est (l,, l)-équidist} Figure de mérite possible: 35 V J = I J δ I où J est une classe choisie d ensembles I Le choix de J est une affaire de compromis On veut aussi que le nombre N 1 de coefficients non nuls α j s soit proche de k/2
93 Générateur de Tausworthe ou LFSR (Tausworthe 1965): 36 x n = (a 1 x n a k x n k ) mod 2, u n = x nν+j 1 2 j, j=1 A = 1 1 ν a k a k 1 a 1 Souvent, seulement deux a j s non nuls: mauvais!
94 Generalized feedback shift register (GFSR) (Lewis and Payne 1973): 37 v n = (a 1 v n a r v n r ) mod 2 = (v n,0,, v n,w 1 ) t, y n = v n, u n = w v n,j 1 2 j j=1 L état a rw mais la période maximale n est que de 2 r 1 Habituellement, seulement deux a j s non nuls: v n = (v n q v n r ) pas assez de mélange des bits
95 Twisted GFSR (Matsumoto and Kurita 1992, 1994): 38 Période maximale: 2 rw 1 v n = (v n+m r Av n r ) y n = v n ou y n = T v n Représentant vedette: TT800, de période
96 Mersenne Twister (Matsumoto and Nishimura 1998): 39 v n = (v n+m r A(v (w p) n r v (p) n r+1 )) y n = T v n Période maximale: 2 rw p 1 On ajoute une transformation linéaire à la sortie Représentant vedette: MT19937, de période MT19937 est devenu très populaire récemment
97 Générateurs Xorshift (Marsaglia 2003) Xorshift: x = x (x a) ou x = x (x b) 40 Marsaglia propose des générateurs spécifiques avec: 3 xorshifts par transition; période maximale Ces générateurs sont très rapides Malheureusement, ils ont une très mauvaise équidistribution et échouent de nombreux tests statistiques (Panneton and L Ecuyer 2004)
98 Les générateurs WELL (Well-Equidistributed Long-period Linear) (Panneton, L Ecuyer, et Matsumoto 2004) Idée: Construire la matrice A en plaçant des opérations simples sur des blocs de 32 bits (ou-exclusifs, décalages, masques binaires, etc) à des endroits stratégiques On optimise la mesure d uniformité 41 1 = w (min( k/l, w) max{t : Ψ t est (l,, l)-équidist}), l=1 sous les contraintes: (1) période maximale et (2) vitesse comparable à MT19937 Générateurs spécifiques de périodes allant de à Meilleure équidistribution que MT19937 pour vitesse et période comparables Un plus grand nombre N 1 de coefficients non nuls dans P (z)
99 Examples de générateurs WELL, vs MT, pour w = 32 bits: 42 Nom k r N 1 1 WELL19937a WELL19937c WELL44497a WELL44497b MT
100 Impact d un N 1 trop petit et/ou 1 trop grand Expérience: choisir un état initial contenant un seul bit à 1 Essayer toutes les k possibilités et faire la moyenne des k valeurs obtenues à la sortie après chaque transition WELL19937 vs MT19937; 06 moyenne mobile sur 1000 itérations Number of iterations
101 Générateurs non-linéaires 44 Congruentiel cubique: x n = (ax 3 n 1 + 1) mod m, u n = x n /m Inversif explicite: x n = (an + c) mod m, u n = (x 1 n mod m)/m Une permutation arbitraire de {0,, ρ 1} stockée dans un tableau Peut combiner plusieurs tableaux avec des ρ j relativement premiers (rapide) AES, SHA-1, etc Utilisés en cryptologie Systèmes dynamiques chaotiques? Non
102 Générateurs combinés linéaires/non-linéaires 45 Les générateurs F 2 -linéaires discutés ici échouent bien sûr un test de complexité linéaire
103 Générateurs combinés linéaires/non-linéaires 45 Les générateurs F 2 -linéaires discutés ici échouent bien sûr un test de complexité linéaire On voudrait: éliminer la structure linéaire; des garanties théoriques sur l uniformité; implantation rapide
104 Générateurs combinés linéaires/non-linéaires 45 Les générateurs F 2 -linéaires discutés ici échouent bien sûr un test de complexité linéaire On voudrait: éliminer la structure linéaire; des garanties théoriques sur l uniformité; implantation rapide L Ecuyer et Granger-Picher (2003): Gros générateur F 2 -linéaire combiné avec un petit non-linéaire par un XOR
105 Générateurs combinés linéaires/non-linéaires 45 Les générateurs F 2 -linéaires discutés ici échouent bien sûr un test de complexité linéaire On voudrait: éliminer la structure linéaire; des garanties théoriques sur l uniformité; implantation rapide L Ecuyer et Granger-Picher (2003): Gros générateur F 2 -linéaire combiné avec un petit non-linéaire par un XOR Théorème: Si la composante linéaire est (q 1,, q t )-équidistribuée, alors la combinaison l est aussi
106 Générateurs combinés linéaires/non-linéaires 45 Les générateurs F 2 -linéaires discutés ici échouent bien sûr un test de complexité linéaire On voudrait: éliminer la structure linéaire; des garanties théoriques sur l uniformité; implantation rapide L Ecuyer et Granger-Picher (2003): Gros générateur F 2 -linéaire combiné avec un petit non-linéaire par un XOR Théorème: Si la composante linéaire est (q 1,, q t )-équidistribuée, alors la combinaison l est aussi Tests empiriques: excellent comportement, plus robuste que linéaire
107 Tests statistiques empiriques 46 Hypothèse nulle H 0 : {u 0, u 1, u 2, } sont les réalisations de va indép U(0, 1) On sait à l avance que H 0 est fausse, mais peut-on le détecter?
108 Tests statistiques empiriques 46 Hypothèse nulle H 0 : {u 0, u 1, u 2, } sont les réalisations de va indép U(0, 1) On sait à l avance que H 0 est fausse, mais peut-on le détecter? Test: On définit une va T, fonction des u i, dont la loi sous H 0 est connue (approx) On rejette H 0 si T prend une valeur trop extrême par rapport à cette loi Si la valeur est suspecte, on peut répéter le test plusiques fois Quels sont les meilleurs tests? Pas de réponse à cela Différents tests permettent de détecter différents types de défauts
109 Tests statistiques empiriques 46 Hypothèse nulle H 0 : {u 0, u 1, u 2, } sont les réalisations de va indép U(0, 1) On sait à l avance que H 0 est fausse, mais peut-on le détecter? Test: On définit une va T, fonction des u i, dont la loi sous H 0 est connue (approx) On rejette H 0 si T prend une valeur trop extrême par rapport à cette loi Si la valeur est suspecte, on peut répéter le test plusiques fois Quels sont les meilleurs tests? Pas de réponse à cela Différents tests permettent de détecter différents types de défauts Idéal: le comportement de T ressemble à celui des va qui nous intéressent dans nos simulations Mais pas pratique Rêve: Construire un GPA qui passe tous les tests? Formellement impossible
110 Tests statistiques empiriques 46 Hypothèse nulle H 0 : {u 0, u 1, u 2, } sont les réalisations de va indép U(0, 1) On sait à l avance que H 0 est fausse, mais peut-on le détecter? Test: On définit une va T, fonction des u i, dont la loi sous H 0 est connue (approx) On rejette H 0 si T prend une valeur trop extrême par rapport à cette loi Si la valeur est suspecte, on peut répéter le test plusiques fois Quels sont les meilleurs tests? Pas de réponse à cela Différents tests permettent de détecter différents types de défauts Idéal: le comportement de T ressemble à celui des va qui nous intéressent dans nos simulations Mais pas pratique Rêve: Construire un GPA qui passe tous les tests? Formellement impossible Compromis (heuristique): Se satisfaire d un GPA qui passe les tests raisonnables Les tests échoués sont très difficiles à trouver et exécuter Formalisation: cadre de complexité algorithmique, populaire en cryptologie
111 Exemple: Un test de collisions On partitionne la boîte [0, 1) t en k = d t boîtes cubiques de même taille On génère n points (u ti,, u ti+t 1 ) dans [0, 1) t, i = 0,, n 1 Soit X j le nombre de points dans la boîte j Nombre de collisions: C = k 1 j=0 max(0, X j 1) Sous H 0, C Poisson de moyenne λ = n 2 /k, si k est grand et λ petit Si on observe c collisions, on calcule les p-valeurs: 47 p + (c) = P [X c X Poisson(λ)], p (c) = P [X c X Poisson(λ)], On rejette H 0 si p + (c) est régulièrement très proche de 0 (trop de collisions) ou p (c) est régulièrement très proche de 1 (pas assez de collisions)
112 Exemple: espacement des anniversaires 48 On partitionne encore [0, 1) t en k = d t cubes et on génère n points Soient I 1 I 2 I n les numéros des boîtes où tombent les points On calcule les espacements S j = I j+1 I j, 1 j n 1 Soient S (1),, S (n 1) les espacements triés Nombre de collisions entre les espacements: Y = n 1 j=1 I[S (j+1) = S (j) ] Si k est grand, sous H 0, Y est approx Poisson de moyenne λ = n 3 /(4k) Si Y prend la valeur y, la p-valeur à droite est p + (y) = P [X y X Poisson(λ)]
113 Autres exemples 49 Paires de points les plus proches [0, 1) t Trier des jeux de cartes (poker, etc) Rang d une matrice binaire aléatoire Complexité linéaire d une suite binaire Mesures d entropie Mesures de complexité basées sur la facilité de compression de la suite Etc
114 Le Logiciel TestU01 50 [L Ecuyer et Simard, ACM Trans on Math Software, 2007] Implantation d une grande variété de tests statistiques pour des générateurs quelconques (logiciels ou matériels) Écrit en C Disponible sur ma page web Contient aussi des batteries de tests prédéfinies: SmallCrush: vérification rapide, 15 secondes; Crush: 96 tests statistiques, 1 heure; BigCrush: 144 tests statistiques, 6 heures; Rabbit: pour les suites de bits Plusieurs générateurs couramment utilisés échouent ces batteries Quelques résultats ρ = période du GPA; t-32 et t-64 donnent le temps de CPU pour générer 10 8 nombres réels Nombre de tests échoués (p-valeur < ou > ) dans chaque batterie
115 Résultats de batteries de tests appliqués à des GPA bien connus Générateur log 2 ρ t-32 t-64 SmallCrush Crush BigCrush LCG in Microsoft VisualBasic LCG(2 31, 65539, 0) (6) LCG(2 32, 69069, 1) (2) 106 (2) LCG(2 32, , 0) (4) LCG(2 46, 5 13, 0) (2) LCG(2 48, , 11), Unix (1) JavautilRandom (3) 21 (1) LCG(2 48, 5 19, 0) (2) LCG(2 48, , 0) (5) LCG(2 48, , 0) (5) LCG(2 59, 13 13, 0) (1) 17 (5) LCG(2 63, 5 19, 1) LCG(2 31 1, 16807, 0), Wide use (9) LCG(2 31 1, , 0) (7) LCG(2 31 1, , 0), (SAS) (4) LCG(2 31 1, , 0) (5) LCG(2 31 1, , 0) (4) LCG( ,, 0), in Maple (2) 34 (1) LCG(2 61 1, , 0) (4) 3 (1) 51
116 Générateur log 2 ρ t-32 t-64 SmallCrush Crush BigCrush Wichmann-Hill, in Excel (3) 22 (8) CombLec Knuth(38) (1) 2 ran2, in Numerical Recipes CLCG Knuth(39) (1) 3 (2) MRGk DengLin (2 31 1, 2, 46338) (1) 11 (1) 19 (2) DengLin (2 31 1, 4, 22093) (1) 2 4 (2) DX DX Marsa-LFIB CombMRG MRG31k3p (1) MRG32k3a SSJ + others MRG63k3a LFib(2 31, 55, 24, +) (5) LFib(2 31, 55, 24, ) ran3, in Numerical Recipes (1) 11 (1) 17 (2) LFib(2 48, 607, 273, +) Unix-random (2) 101 (3) Unix-random (1) 57 (6) Unix-random (3) Unix-random (1) 8 11 (1) 52
117 Générateur log 2 ρ t-32 t-64 SmallCrush Crush BigCrush Knuth-ran array Knuth-ranf array SWB(2 24, 10, 24) (2) SWB(2 24, 10, 24)[24, 48] (1) 16 (1) SWB(2 24, 10, 24)[24, 97] SWB(2 24, 10, 24)[24, 389] SWB(2 32 5, 22, 43) (1) 8 17 SWB(2 31, 8, 48) (2) 8 (2) 11 Mathematica-SWB (2) 15 (3) SWB(2 32, 222, 237) (2) GFSR(250, 103) (4) GFSR(521, 32) GFSR(607, 273) Ziff T (4) TT (4) 14 (3) MT19937, widely used WELL1024a WELL19937a (1) 2 LFSR LFSR Marsa-xor32 (13, 17, 5) (10) Marsa-xor64 (13, 7, 17) (1) 7 53
118 Générateur log 2 ρ t-32 t-64 SmallCrush Crush BigCrush Matlab-rand (1) Matlab-LCG-Xor (normal) (1) SuperDuper-73, in S-Plus (1) 25 (3) SuperDuper R-MultiCarry (1) 40 (4) KISS KISS Brent-xor4096s ICG(2 31 1, 22211, ) (8) EICG(2 31 1, , 1) (6) SNWeyl (12) Coveyou (5) Coveyou LFib(2 64, 17, 5, ) LFib(2 64, 55, 24, ) LFib(2 64, 607, 273, ) LFib(2 64, 1279, 861, ) ISAAC AES (OFB) AES (CTR) (1) AES (KTR) SHA-1 (OFB) SHA-1 (CTR)
119 Conclusion 55 Une foule d applications informatiques reposent sur les GPAs Un mauvais générateur peut fausser complètement les résultats d une simulation, ou permettre de tricher dans les loteries ou déjouer les machines de jeux, ou mettre en danger la sécurité d informations importantes Ne jamais se fier aveuglément aux GPAs fournis dans les logiciels commerciaux ou autres, même les plus en vue, surtout s ils utilisent des algorithmes secrets! Certains logiciels ont d excellents GPAs; vérifier Des GPAs avec suites et sous-suites multiples sont disponibles via ma page web, en Java, C, et C++ Tapez Pierre L Ecuyer dans Google et cliquez sur Software lecuyer
IFT3245. Simulation et modèles
IFT 3245 Simulation et modèles DIRO Université de Montréal Automne 2012 Tests statistiques L étude des propriétés théoriques d un générateur ne suffit; il estindispensable de recourir à des tests statistiques
Plus en détailÉPREUVE COMMUNE DE TIPE 2008 - Partie D
ÉPREUVE COMMUNE DE TIPE 2008 - Partie D TITRE : Les Fonctions de Hachage Temps de préparation :.. 2 h 15 minutes Temps de présentation devant le jury :.10 minutes Entretien avec le jury :..10 minutes GUIDE
Plus en détailCapacité d un canal Second Théorème de Shannon. Théorie de l information 1/34
Capacité d un canal Second Théorème de Shannon Théorie de l information 1/34 Plan du cours 1. Canaux discrets sans mémoire, exemples ; 2. Capacité ; 3. Canaux symétriques ; 4. Codage de canal ; 5. Second
Plus en détailContexte. Pour cela, elles doivent être très compliquées, c est-à-dire elles doivent être très différentes des fonctions simples,
Non-linéarité Contexte Pour permettre aux algorithmes de cryptographie d être sûrs, les fonctions booléennes qu ils utilisent ne doivent pas être inversées facilement. Pour cela, elles doivent être très
Plus en détailModèles à Événements Discrets. Réseaux de Petri Stochastiques
Modèles à Événements Discrets Réseaux de Petri Stochastiques Table des matières 1 Chaînes de Markov Définition formelle Idée générale Discrete Time Markov Chains Continuous Time Markov Chains Propriétés
Plus en détailRésolution de systèmes linéaires par des méthodes directes
Résolution de systèmes linéaires par des méthodes directes J. Erhel Janvier 2014 1 Inverse d une matrice carrée et systèmes linéaires Ce paragraphe a pour objet les matrices carrées et les systèmes linéaires.
Plus en détailCryptographie et fonctions à sens unique
Cryptographie et fonctions à sens unique Pierre Rouchon Centre Automatique et Systèmes Mines ParisTech pierre.rouchon@mines-paristech.fr Octobre 2012 P.Rouchon (Mines ParisTech) Cryptographie et fonctions
Plus en détailCRYPTOGRAPHIE. Signature électronique. E. Bresson. Emmanuel.Bresson@sgdn.gouv.fr. SGDN/DCSSI Laboratoire de cryptographie
CRYPTOGRAPHIE Signature électronique E. Bresson SGDN/DCSSI Laboratoire de cryptographie Emmanuel.Bresson@sgdn.gouv.fr I. SIGNATURE ÉLECTRONIQUE I.1. GÉNÉRALITÉS Organisation de la section «GÉNÉRALITÉS»
Plus en détailSouad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/
Recherche opérationnelle Les démonstrations et les exemples seront traités en cours Souad EL Bernoussi Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Table des matières 1 Programmation
Plus en détailSimulation de variables aléatoires
Chapter 1 Simulation de variables aléatoires Références: [F] Fishman, A first course in Monte Carlo, chap 3. [B] Bouleau, Probabilités de l ingénieur, chap 4. [R] Rubinstein, Simulation and Monte Carlo
Plus en détailProblèmes arithmétiques issus de la cryptographie reposant sur les réseaux
Problèmes arithmétiques issus de la cryptographie reposant sur les réseaux Damien Stehlé LIP CNRS/ENSL/INRIA/UCBL/U. Lyon Perpignan, Février 2011 Damien Stehlé Problèmes arithmétiques issus de la cryptographie
Plus en détailObjectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)
Objectifs du cours d aujourd hui Informatique II : Cours d introduction à l informatique et à la programmation objet Complexité des problèmes Introduire la notion de complexité d un problème Présenter
Plus en détailProgrammation linéaire
Programmation linéaire DIDIER MAQUIN Ecole Nationale Supérieure d Electricité et de Mécanique Institut National Polytechnique de Lorraine Mathématiques discrètes cours de 2ème année Programmation linéaire
Plus en détailProgrammation linéaire
1 Programmation linéaire 1. Le problème, un exemple. 2. Le cas b = 0 3. Théorème de dualité 4. L algorithme du simplexe 5. Problèmes équivalents 6. Complexité de l Algorithme 2 Position du problème Soit
Plus en détailUEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.
UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases
Plus en détailDéfinitions. Numéro à préciser. (Durée : )
Numéro à préciser (Durée : ) On étudie dans ce problème l ordre lexicographique pour les mots sur un alphabet fini et plusieurs constructions des cycles de De Bruijn. Les trois parties sont largement indépendantes.
Plus en détail1 de 46. Algorithmique. Trouver et Trier. Florent Hivert. Mél : Florent.Hivert@lri.fr Page personnelle : http://www.lri.fr/ hivert
1 de 46 Algorithmique Trouver et Trier Florent Hivert Mél : Florent.Hivert@lri.fr Page personnelle : http://www.lri.fr/ hivert 2 de 46 Algorithmes et structures de données La plupart des bons algorithmes
Plus en détailSujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes.
Promotion X 004 COURS D ANALYSE DES STRUCTURES MÉCANIQUES PAR LA MÉTHODE DES ELEMENTS FINIS (MEC 568) contrôle non classant (7 mars 007, heures) Documents autorisés : polycopié ; documents et notes de
Plus en détailCoup de Projecteur sur les Réseaux de Neurones
Coup de Projecteur sur les Réseaux de Neurones Les réseaux de neurones peuvent être utilisés pour des problèmes de prévision ou de classification. La représentation la plus populaire est le réseau multicouche
Plus en détailThéorème du point fixe - Théorème de l inversion locale
Chapitre 7 Théorème du point fixe - Théorème de l inversion locale Dans ce chapitre et le suivant, on montre deux applications importantes de la notion de différentiabilité : le théorème de l inversion
Plus en détailObjets Combinatoires élementaires
Objets Combinatoires élementaires 0-0 Permutations Arrangements Permutations pour un multi-ensemble mots sous-ensemble à k éléments (Problème du choix) Compositions LE2I 04 1 Permutations Supposons que
Plus en détailChapitre VI - Méthodes de factorisation
Université Pierre et Marie Curie Cours de cryptographie MM067-2012/13 Alain Kraus Chapitre VI - Méthodes de factorisation Le problème de la factorisation des grands entiers est a priori très difficile.
Plus en détailFiltrage stochastique non linéaire par la théorie de représentation des martingales
Filtrage stochastique non linéaire par la théorie de représentation des martingales Adriana Climescu-Haulica Laboratoire de Modélisation et Calcul Institut d Informatique et Mathématiques Appliquées de
Plus en détailCorrection de l examen de la première session
de l examen de la première session Julian Tugaut, Franck Licini, Didier Vincent Si vous trouvez des erreurs de Français ou de mathématiques ou bien si vous avez des questions et/ou des suggestions, envoyez-moi
Plus en détailReprésentation des Nombres
Chapitre 5 Représentation des Nombres 5. Representation des entiers 5.. Principe des représentations en base b Base L entier écrit 344 correspond a 3 mille + 4 cent + dix + 4. Plus généralement a n a n...
Plus en détailLe théorème de Perron-Frobenius, les chaines de Markov et un célèbre moteur de recherche
Le théorème de Perron-Frobenius, les chaines de Markov et un célèbre moteur de recherche Bachir Bekka Février 2007 Le théorème de Perron-Frobenius a d importantes applications en probabilités (chaines
Plus en détailQu est-ce qu une probabilité?
Chapitre 1 Qu est-ce qu une probabilité? 1 Modéliser une expérience dont on ne peut prédire le résultat 1.1 Ensemble fondamental d une expérience aléatoire Une expérience aléatoire est une expérience dont
Plus en détailTable des matières. I Mise à niveau 11. Préface
Table des matières Préface v I Mise à niveau 11 1 Bases du calcul commercial 13 1.1 Alphabet grec...................................... 13 1.2 Symboles mathématiques............................... 14 1.3
Plus en détailLa Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1
La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1 La licence Mathématiques et Economie-MASS de l Université des Sciences Sociales de Toulouse propose sur les trois
Plus en détailIntroduction à l étude des Corps Finis
Introduction à l étude des Corps Finis Robert Rolland (Résumé) 1 Introduction La structure de corps fini intervient dans divers domaines des mathématiques, en particulier dans la théorie de Galois sur
Plus en détailOptimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications
Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications A. Optimisation sans contrainte.... Généralités.... Condition nécessaire et condition suffisante
Plus en détailLes fonctions de hachage, un domaine à la mode
Les fonctions de hachage, un domaine à la mode JSSI 2009 Thomas Peyrin (Ingenico) 17 mars 2009 - Paris Outline Qu est-ce qu une fonction de hachage Comment construire une fonction de hachage? Les attaques
Plus en détailFonction de hachage et signatures électroniques
Université de Limoges, XLIM-DMI, 123, Av. Albert Thomas 87060 Limoges Cedex France 05.55.45.73.10 pierre-louis.cayrel@xlim.fr Licence professionnelle Administrateur de Réseaux et de Bases de Données IUT
Plus en détailExercices - Polynômes : corrigé. Opérations sur les polynômes
Opérations sur les polynômes Exercice 1 - Carré - L1/Math Sup - Si P = Q est le carré d un polynôme, alors Q est nécessairement de degré, et son coefficient dominant est égal à 1. On peut donc écrire Q(X)
Plus en détailPrincipe de symétrisation pour la construction d un test adaptatif
Principe de symétrisation pour la construction d un test adaptatif Cécile Durot 1 & Yves Rozenholc 2 1 UFR SEGMI, Université Paris Ouest Nanterre La Défense, France, cecile.durot@gmail.com 2 Université
Plus en détailCRYPTOGRAPHIE. Chiffrement par flot. E. Bresson. Emmanuel.Bresson@sgdn.gouv.fr. SGDN/DCSSI Laboratoire de cryptographie
CRYPTOGRAPHIE Chiffrement par flot E. Bresson SGDN/DCSSI Laboratoire de cryptographie Emmanuel.Bresson@sgdn.gouv.fr CHIFFREMENT PAR FLOT Chiffrement par flot Chiffrement RC4 Sécurité du Wi-fi Chiffrement
Plus en détailArithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot
Chapitre 5 Arithmétique binaire L es codes sont manipulés au quotidien sans qu on s en rende compte, et leur compréhension est quasi instinctive. Le seul fait de lire fait appel au codage alphabétique,
Plus en détailThéorie et Codage de l Information (IF01) exercices 2013-2014. Paul Honeine Université de technologie de Troyes France
Théorie et Codage de l Information (IF01) exercices 2013-2014 Paul Honeine Université de technologie de Troyes France TD-1 Rappels de calculs de probabilités Exercice 1. On dispose d un jeu de 52 cartes
Plus en détailCalcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.
1 Définitions, notations Calcul matriciel Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes. On utilise aussi la notation m n pour le
Plus en détailProbabilités et Statistiques. Feuille 2 : variables aléatoires discrètes
IUT HSE Probabilités et Statistiques Feuille : variables aléatoires discrètes 1 Exercices Dénombrements Exercice 1. On souhaite ranger sur une étagère 4 livres de mathématiques (distincts), 6 livres de
Plus en détailIntroduction à l approche bootstrap
Introduction à l approche bootstrap Irène Buvat U494 INSERM buvat@imedjussieufr 25 septembre 2000 Introduction à l approche bootstrap - Irène Buvat - 21/9/00-1 Plan du cours Qu est-ce que le bootstrap?
Plus en détailProgrammes des classes préparatoires aux Grandes Ecoles
Programmes des classes préparatoires aux Grandes Ecoles Filière : scientifique Voie : Biologie, chimie, physique et sciences de la Terre (BCPST) Discipline : Mathématiques Seconde année Préambule Programme
Plus en détailModélisation et simulation
Modélisation et simulation p. 1/36 Modélisation et simulation INFO-F-305 Gianluca Bontempi Département d Informatique Boulevard de Triomphe - CP 212 http://www.ulb.ac.be/di Modélisation et simulation p.
Plus en détailLa programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique
La programmation linéaire : une introduction Qu est-ce qu un programme linéaire? Qu est-ce qu un programme linéaire? Exemples : allocation de ressources problème de recouvrement Hypothèses de la programmation
Plus en détailAnalyse de la vidéo. Chapitre 4.1 - La modélisation pour le suivi d objet. 10 mars 2015. Chapitre 4.1 - La modélisation d objet 1 / 57
Analyse de la vidéo Chapitre 4.1 - La modélisation pour le suivi d objet 10 mars 2015 Chapitre 4.1 - La modélisation d objet 1 / 57 La représentation d objets Plan de la présentation 1 La représentation
Plus en détailExo7. Calculs de déterminants. Fiche corrigée par Arnaud Bodin. Exercice 1 Calculer les déterminants des matrices suivantes : Exercice 2.
Eo7 Calculs de déterminants Fiche corrigée par Arnaud Bodin Eercice Calculer les déterminants des matrices suivantes : Correction Vidéo ( ) 0 6 7 3 4 5 8 4 5 6 0 3 4 5 5 6 7 0 3 5 4 3 0 3 0 0 3 0 0 0 3
Plus en détail3. Caractéristiques et fonctions d une v.a.
3. Caractéristiques et fonctions d une v.a. MTH2302D S. Le Digabel, École Polytechnique de Montréal H2015 (v2) MTH2302D: fonctions d une v.a. 1/32 Plan 1. Caractéristiques d une distribution 2. Fonctions
Plus en détailContents. 1 Introduction Objectifs des systèmes bonus-malus Système bonus-malus à classes Système bonus-malus : Principes
Université Claude Bernard Lyon 1 Institut de Science Financière et d Assurances Système Bonus-Malus Introduction & Applications SCILAB Julien Tomas Institut de Science Financière et d Assurances Laboratoire
Plus en détailL analyse d images regroupe plusieurs disciplines que l on classe en deux catégories :
La vision nous permet de percevoir et d interpreter le monde qui nous entoure. La vision artificielle a pour but de reproduire certaines fonctionnalités de la vision humaine au travers de l analyse d images.
Plus en détailTSTI 2D CH X : Exemples de lois à densité 1
TSTI 2D CH X : Exemples de lois à densité I Loi uniforme sur ab ; ) Introduction Dans cette activité, on s intéresse à la modélisation du tirage au hasard d un nombre réel de l intervalle [0 ;], chacun
Plus en détailGrandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test
Grandes lignes Analyseur Statique de logiciels Temps RÉel Embarqués École Polytechnique École Normale Supérieure Mercredi 18 juillet 2005 1 Présentation d 2 Cadre théorique de l interprétation abstraite
Plus en détailChaînes de Markov au lycée
Journées APMEP Metz Atelier P1-32 du dimanche 28 octobre 2012 Louis-Marie BONNEVAL Chaînes de Markov au lycée Andreï Markov (1856-1922) , série S Problème 1 Bonus et malus en assurance automobile Un contrat
Plus en détailExercice autour de densité, fonction de répatition, espérance et variance de variables quelconques.
14-3- 214 J.F.C. p. 1 I Exercice autour de densité, fonction de répatition, espérance et variance de variables quelconques. Exercice 1 Densité de probabilité. F { ln x si x ], 1] UN OVNI... On pose x R,
Plus en détailIntroduction à la théorie des files d'attente. Claude Chaudet Claude.Chaudet@enst.fr
Introduction à la théorie des files d'attente Claude Chaudet Claude.Chaudet@enst.fr La théorie des files d'attente... Principe: modélisation mathématique de l accès à une ressource partagée Exemples réseaux
Plus en détailAlgorithmes pour la planification de mouvements en robotique non-holonome
Algorithmes pour la planification de mouvements en robotique non-holonome Frédéric Jean Unité de Mathématiques Appliquées ENSTA Le 02 février 2006 Outline 1 2 3 Modélisation Géométrique d un Robot Robot
Plus en détailExercices - Fonctions de plusieurs variables : corrigé. Pour commencer
Pour commencer Exercice 1 - Ensembles de définition - Première année - 1. Le logarithme est défini si x + y > 0. On trouve donc le demi-plan supérieur délimité par la droite d équation x + y = 0.. 1 xy
Plus en détail1 Recherche en table par balayage
1 Recherche en table par balayage 1.1 Problème de la recherche en table Une table désigne une liste ou un tableau d éléments. Le problème de la recherche en table est celui de la recherche d un élément
Plus en détailEstimation et tests statistiques, TD 5. Solutions
ISTIL, Tronc commun de première année Introduction aux méthodes probabilistes et statistiques, 2008 2009 Estimation et tests statistiques, TD 5. Solutions Exercice 1 Dans un centre avicole, des études
Plus en détailProbabilités sur un univers fini
[http://mp.cpgedupuydelome.fr] édité le 7 août 204 Enoncés Probabilités sur un univers fini Evènements et langage ensembliste A quelle condition sur (a, b, c, d) ]0, [ 4 existe-t-il une probabilité P sur
Plus en détailProbabilités. C. Charignon. I Cours 3
Probabilités C. Charignon Table des matières I Cours 3 1 Dénombrements 3 1.1 Cardinal.................................................. 3 1.1.1 Définition............................................. 3
Plus en détailCHAPITRE 5. Stratégies Mixtes
CHAPITRE 5 Stratégies Mixtes Un des problèmes inhérents au concept d équilibre de Nash en stratégies pures est que pour certains jeux, de tels équilibres n existent pas. P.ex.le jeu de Pierre, Papier,
Plus en détailProbabilités. Rappel : trois exemples. Exemple 2 : On dispose d un dé truqué. On sait que : p(1) = p(2) =1/6 ; p(3) = 1/3 p(4) = p(5) =1/12
Probabilités. I - Rappel : trois exemples. Exemple 1 : Dans une classe de 25 élèves, il y a 16 filles. Tous les élèves sont blonds ou bruns. Parmi les filles, 6 sont blondes. Parmi les garçons, 3 sont
Plus en détailaux différences est appelé équation aux différences d ordre n en forme normale.
MODÉLISATION ET SIMULATION EQUATIONS AUX DIFFÉRENCES (I/II) 1. Rappels théoriques : résolution d équations aux différences 1.1. Équations aux différences. Définition. Soit x k = x(k) X l état scalaire
Plus en détailModes opératoires pour le chiffrement symétrique
Modes opératoires pour le chiffrement symétrique Charles Bouillaguet 5 février 2015 1 Notion(s) de sécurité On a vu qu un mécanisme de chiffrement symétrique E est contistué de deux algorithmes : E : {0,
Plus en détailNombres, mesures et incertitudes en sciences physiques et chimiques. Groupe des Sciences physiques et chimiques de l IGEN
Nombres, mesures et incertitudes en sciences physiques et chimiques. Groupe des Sciences physiques et chimiques de l IGEN Table des matières. Introduction....3 Mesures et incertitudes en sciences physiques
Plus en détailExo7. Matrice d une application linéaire. Corrections d Arnaud Bodin.
Exo7 Matrice d une application linéaire Corrections d Arnaud odin. Exercice Soit R muni de la base canonique = ( i, j). Soit f : R R la projection sur l axe des abscisses R i parallèlement à R( i + j).
Plus en détail!-.!#- $'( 1&) &) (,' &*- %,!
0 $'( 1&) +&&/ ( &+&& &+&))&( -.#- 2& -.#- &) (,' %&,))& &)+&&) &- $ 3.#( %, (&&/ 0 ' Il existe plusieurs types de simulation de flux Statique ou dynamique Stochastique ou déterministe A événements discrets
Plus en détailCalculer avec Sage. Revision : 417 du 1 er juillet 2010
Calculer avec Sage Alexandre Casamayou Guillaume Connan Thierry Dumont Laurent Fousse François Maltey Matthias Meulien Marc Mezzarobba Clément Pernet Nicolas Thiéry Paul Zimmermann Revision : 417 du 1
Plus en détailTexte Agrégation limitée par diffusion interne
Page n 1. Texte Agrégation limitée par diffusion interne 1 Le phénomène observé Un fût de déchets radioactifs est enterré secrètement dans le Cantal. Au bout de quelques années, il devient poreux et laisse
Plus en détailCryptologie. Algorithmes à clé publique. Jean-Marc Robert. Génie logiciel et des TI
Cryptologie Algorithmes à clé publique Jean-Marc Robert Génie logiciel et des TI Plan de la présentation Introduction Cryptographie à clé publique Les principes essentiels La signature électronique Infrastructures
Plus en détailResolution limit in community detection
Introduction Plan 2006 Introduction Plan Introduction Introduction Plan Introduction Point de départ : un graphe et des sous-graphes. But : quantifier le fait que les sous-graphes choisis sont des modules.
Plus en détailChapitre 7. Statistique des échantillons gaussiens. 7.1 Projection de vecteurs gaussiens
Chapitre 7 Statistique des échantillons gaussiens Le théorème central limite met en évidence le rôle majeur tenu par la loi gaussienne en modélisation stochastique. De ce fait, les modèles statistiques
Plus en détailMoments des variables aléatoires réelles
Chapter 6 Moments des variables aléatoires réelles Sommaire 6.1 Espérance des variables aléatoires réelles................................ 46 6.1.1 Définition et calcul........................................
Plus en détailIntégration et probabilités TD1 Espaces mesurés Corrigé
Intégration et probabilités TD1 Espaces mesurés Corrigé 2012-2013 1 Petites questions 1 Est-ce que l ensemble des ouverts de R est une tribu? Réponse : Non, car le complémentaire de ], 0[ n est pas ouvert.
Plus en détailWeb Science. Master 1 IFI. Andrea G. B. Tettamanzi. Université de Nice Sophia Antipolis Département Informatique andrea.tettamanzi@unice.
Web Science Master 1 IFI Andrea G. B. Tettamanzi Université de Nice Sophia Antipolis Département Informatique andrea.tettamanzi@unice.fr 1 Annonce : recherche apprenti Projet Géo-Incertitude Objectifs
Plus en détailCours d analyse numérique SMI-S4
ours d analyse numérique SMI-S4 Introduction L objet de l analyse numérique est de concevoir et d étudier des méthodes de résolution de certains problèmes mathématiques, en général issus de problèmes réels,
Plus en détailFonctions de plusieurs variables
Module : Analyse 03 Chapitre 00 : Fonctions de plusieurs variables Généralités et Rappels des notions topologiques dans : Qu est- ce que?: Mathématiquement, n étant un entier non nul, on définit comme
Plus en détailQuelques tests de primalité
Quelques tests de primalité J.-M. Couveignes (merci à T. Ezome et R. Lercier) Institut de Mathématiques de Bordeaux & INRIA Bordeaux Sud-Ouest Jean-Marc.Couveignes@u-bordeaux.fr École de printemps C2 Mars
Plus en détailModélisation aléatoire en fiabilité des logiciels
collection Méthodes stochastiques appliquées dirigée par Nikolaos Limnios et Jacques Janssen La sûreté de fonctionnement des systèmes informatiques est aujourd hui un enjeu économique et sociétal majeur.
Plus en détailLe modèle de Black et Scholes
Le modèle de Black et Scholes Alexandre Popier février 21 1 Introduction : exemple très simple de modèle financier On considère un marché avec une seule action cotée, sur une période donnée T. Dans un
Plus en détailFactorisation d entiers (première partie)
Factorisation d entiers ÉCOLE DE THEORIE DES NOMBRES 0 Factorisation d entiers (première partie) Francesco Pappalardi Théorie des nombres et algorithmique 22 novembre, Bamako (Mali) Factorisation d entiers
Plus en détailLa problématique des tests. Cours V. 7 mars 2008. Comment quantifier la performance d un test? Hypothèses simples et composites
La problématique des tests Cours V 7 mars 8 Test d hypothèses [Section 6.1] Soit un modèle statistique P θ ; θ Θ} et des hypothèses H : θ Θ H 1 : θ Θ 1 = Θ \ Θ Un test (pur) est une statistique à valeur
Plus en détailArchitecture des ordinateurs TD1 - Portes logiques et premiers circuits
Architecture des ordinateurs TD1 - Portes logiques et premiers circuits 1 Rappel : un peu de logique Exercice 1.1 Remplir la table de vérité suivante : a b a + b ab a + b ab a b 0 0 0 1 1 0 1 1 Exercice
Plus en détailCours d Analyse. Fonctions de plusieurs variables
Cours d Analyse Fonctions de plusieurs variables Licence 1ère année 2007/2008 Nicolas Prioux Université de Marne-la-Vallée Table des matières 1 Notions de géométrie dans l espace et fonctions à deux variables........
Plus en détailPROBABILITES ET STATISTIQUE I&II
PROBABILITES ET STATISTIQUE I&II TABLE DES MATIERES CHAPITRE I - COMBINATOIRE ELEMENTAIRE I.1. Rappel des notations de la théorie des ensemble I.1.a. Ensembles et sous-ensembles I.1.b. Diagrammes (dits
Plus en détailCCP PSI - 2010 Mathématiques 1 : un corrigé
CCP PSI - 00 Mathématiques : un corrigé Première partie. Définition d une structure euclidienne sur R n [X]... B est clairement symétrique et linéaire par rapport à sa seconde variable. De plus B(P, P
Plus en détailChapitre 7. Récurrences
Chapitre 7 Récurrences 333 Plan 1. Introduction 2. Applications 3. Classification des récurrences 4. Résolution de récurrences 5. Résumé et comparaisons Lectures conseillées : I MCS, chapitre 20. I Rosen,
Plus en détailCHAPITRE VIII : Les circuits avec résistances ohmiques
CHAPITRE VIII : Les circuits avec résistances ohmiques VIII. 1 Ce chapitre porte sur les courants et les différences de potentiel dans les circuits. VIII.1 : Les résistances en série et en parallèle On
Plus en détailDe même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que
Introduction. On suppose connus les ensembles N (des entiers naturels), Z des entiers relatifs et Q (des nombres rationnels). On s est rendu compte, depuis l antiquité, que l on ne peut pas tout mesurer
Plus en détailL ANALYSE EN COMPOSANTES PRINCIPALES (A.C.P.) Pierre-Louis GONZALEZ
L ANALYSE EN COMPOSANTES PRINCIPALES (A.C.P.) Pierre-Louis GONZALEZ INTRODUCTION Données : n individus observés sur p variables quantitatives. L A.C.P. permet d eplorer les liaisons entre variables et
Plus en détailTESTS PORTMANTEAU D ADÉQUATION DE MODÈLES ARMA FAIBLES : UNE APPROCHE BASÉE SUR L AUTO-NORMALISATION
TESTS PORTMANTEAU D ADÉQUATION DE MODÈLES ARMA FAIBLES : UNE APPROCHE BASÉE SUR L AUTO-NORMALISATION Bruno Saussereau Laboratoire de Mathématiques de Besançon Université de Franche-Comté Travail en commun
Plus en détailavec des nombres entiers
Calculer avec des nombres entiers Effectuez les calculs suivants.. + 9 + 9. Calculez. 9 9 Calculez le quotient et le rest. : : : : 0 :. : : 9 : : 9 0 : 0. 9 9 0 9. Calculez. 9 0 9. : : 0 : 9 : :. : : 0
Plus en détailBaccalauréat ES Pondichéry 7 avril 2014 Corrigé
Baccalauréat ES Pondichéry 7 avril 204 Corrigé EXERCICE 4 points Commun à tous les candidats. Proposition fausse. La tangente T, passant par les points A et B d abscisses distinctes, a pour coefficient
Plus en détail3 Approximation de solutions d équations
3 Approximation de solutions d équations Une équation scalaire a la forme générale f(x) =0où f est une fonction de IR dans IR. Un système de n équations à n inconnues peut aussi se mettre sous une telle
Plus en détailProbabilités III Introduction à l évaluation d options
Probabilités III Introduction à l évaluation d options Jacques Printems Promotion 2012 2013 1 Modèle à temps discret 2 Introduction aux modèles en temps continu Limite du modèle binomial lorsque N + Un
Plus en détailLa classification automatique de données quantitatives
La classification automatique de données quantitatives 1 Introduction Parmi les méthodes de statistique exploratoire multidimensionnelle, dont l objectif est d extraire d une masse de données des informations
Plus en détailMéthodes de quadrature. Polytech Paris-UPMC. - p. 1/48
Méthodes de Polytech Paris-UPMC - p. 1/48 Polynôme d interpolation de Preuve et polynôme de Calcul de l erreur d interpolation Étude de la formule d erreur Autres méthodes - p. 2/48 Polynôme d interpolation
Plus en détailSimulation : application au système bonus-malus en responsabilité civile automobile
Simulation : application au système bonus-malus en responsabilité civile automobile Robert Langmeier Travail de séminaire réalisé sous la supervision du professeur François Dufresne Ecole des HEC Université
Plus en détailFIMA, 7 juillet 2005
F. Corset 1 S. 2 1 LabSAD Université Pierre Mendes France 2 Département de Mathématiques Université de Franche-Comté FIMA, 7 juillet 2005 Plan de l exposé plus court chemin Origine du problème Modélisation
Plus en détail