begin process at 2012 02 16 09:23:29
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Maths

 > ETUDE DE FONCTIONS ALÉATOIRES

ETUDE DE FONCTIONS ALÉATOIRES


 Information sur la source

Note :
7 / 10 - par 2 personnes
7,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Maths Classé sous :aléatoire, hasard, simulation Niveau :Initié Date de création :03/05/2006 Date de mise à jour :08/05/2006 16:02:46 Vu / téléchargé :9 609 / 1 070

Auteur : Julien39

Ecrire un message privé
Site perso
Commentaire sur cette source (7)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Ce dossier contient un programme de 5 fonctions aléatoires différentes, un cours sur les fonctions aléatoires et une feuille d'analyse de ces 4 fonctions. Le but est de montrer plusieurs méthodes simulant le hasard, bonnes ou mauvaises et de les étudier pour dire si ce sont des fonctions facilement utilisables ou non.


 Conclusion

Ce programme n'est pas fini, je compte le continuer en ajoutant d'autres fonctions en particulier le BBS et une autre fonction qui ne soit pas pseudo-aléatoire mais qui utilisera le mouvement du pointeur sur un certain intervalle de temps mais je n'ai pas encore commencé à y réfléchir et il me semble assez difficile.

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  •   Fonctions aléatoires

Télécharger le zip


 Historique

04 mai 2006 19:12:27 :
j'ai corrigé la fonction Randu (Merci US) et j'ai analysé cette fonction, j'ai donc ajouté une feuille ecxel avex les valeures et un graphique et complété la feuille explicative.
08 mai 2006 16:02:46 :
Voilà le Mersenne Twister et son analyse sont disponibles Merci Gobillot.

 Sources du même auteur

Source avec Zip GÉNÉRATEUR DE MOTS DE PASSE
Source avec Zip CARRÉ PAR MÉTHODE DE L'ABAQUE
Source avec Zip Source avec une capture FONCTION VRAIMENT ALÉATOIRE
Source avec Zip Source avec une capture MATHÉMATIQUES PÉDAGOGIQUES
Source avec Zip Source avec une capture DESSIN TYPE PAINT MAIS ORIENTÉ MATHS

 Sources de la même categorie

Source avec Zip Source avec une capture CONVERTISSEUR HEXAVIGÉSIMAL par shaeks
Source avec Zip Source avec une capture Source .NET (Dotnet) CRYPTOGRAPHIE AFFINE par Tigrou66
Source avec Zip Source avec une capture SCANNER FLEX par lajouad
Source avec Zip EQUATIONSECONDDEGRÉ,MATH,DEGRÉ par shadkitenge
Source avec Zip Source .NET (Dotnet) SOMME DE CHIFFRES CONTENUE DANS UN NOMBRE par alpha5

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture Source .NET (Dotnet) POKER - CALCUL DE PROBABILITES POUR VOS MAINS EN VB.NET par us_30
Source avec Zip GÉNÉRATEUR DE CHAINES PSEUDO-ALÉATOIRES par vegetalain
Source avec Zip Source avec une capture FONCTION VRAIMENT ALÉATOIRE par Julien39
Source avec Zip Source avec une capture DESORDONNEUR - BORDÉLISER UN TABLEAU par Alain Proviste
Source avec une capture FAIRE FAIRE QQUECHOSE AU HASARD AU PROG. par neo.tbc

Commentaires et avis

Commentaire de pekch le 03/05/2006 16:19:05

interressant tout ca!

Commentaire de lexsty le 04/05/2006 02:40:13

     Bonjour Julien39.

Un test simple des fonctions pseudo aléatoires : arriver par exemple à simuler la fréquence d'apparition des 6 numéros du Loto de la Française Des Jeux.
RND de Visual Basic(avec l'utilisation de randomize) arrive à simuler à peu près bien,la fréquence de sortie de 5 numéros et pas plus à cause de sa période qui n'est pas assez grande.

Mersenne Twister par contre est autrement plus performant que RND.
Mersenne à une période de (2^19937)-1 (C'est très très grand).

Si tu intègres la fonction Mersenne Twister dans ta source,
ça sera très interressant.
Pour des petits tirages de 200 nombres (Dans tes analyses), RND est plus que parfait.
C'est bien d'avoir joint des documents sur les fonctions aléatoires.
















Commentaire de us_30 le 04/05/2006 10:43:41

Salut julien,

Gros boulot de recherche !

J'ai tout de même quelques remarques, en passant. J'ai pas tout lu et tout regardé, mais bon... si plus tard, je me plonge dedans, je sais par où commencer...

=

Pour ton histoire de l'algo RANDU.

Premier point : le dépassement de capacité est dû déjà au type utilisé : LONG... Il faut des variables DOUBLE.

Deuxième point : L'utilisons de la fonction MOD, fonctionne que dans la plage des nombres en LONG. C'est à dire que tu peux l'utiliser avec des DOUBLE à la condition de ne pas dépasser la limite 2147483647 (limite du type LONG) qu'alors le type DOUBLE va au-delà.

Par conséquent, il faut réécrire la fonction MOD, avec des instructions compatibles avec le type DOUBLE, pour toutes sa plage. Cette fonction peut être programmée comme suit :

===

Function MOD2(ByVal D As Double, ByVal N As Double) As Double
'Renvoi le modulo de D et N pour des nombres jusqu'à Double
'contrairement à MOD d'Excel ou de VBA

'Converti en entier
D = Int(D): N = Int(N)
'Calcul du reste
MOD2 = D - N * Int(D / N)

End Function

===

Ensuite, je ne reprends pas ton algo, mais j'ai encore qlq petites remarques...

Tu utilises la variable "a", en type String. Or, ici on ne fait que du calcul ! Un choix de type numérique, me semble beaucoup plus logique. Car, là tu forces VB à faire une conversion Texte vers Nombre, donc le type de "a" est "Variant"... c'est pas terrible en terme de vitesse, et tu risques des erreurs à mal définir le type.

-

Les lignes :

If X0 And 1 = 0 Then
   MsgBox ("X0 doit être impair")
   Exit Function
End If

IL serait plus souple, dans le cas où X0 est pair de le transformer en impair, non ?

avec, par exemple :
If X0 And 1 = 0 Then X0 = X0 + 1

=

Ensuite, dans l'introduction du document Word (passe la correction automatique), tu écris : " ... je le prouve, de nombre 0,1495 est issu du hasard, je l’ai tapé sans réfléchir et par conséquent j’ai généré un nombre aléatoire."
Et là, je ne suis pas d'accord ! En effet, l'être humain n'est pas capable de bien simuler le hasard. C'est la raison pour laquelle on a une si mauvaise intuition à priori de la forme du hasard... IL est même intéressant d'étudier cette aspect, en étudier les biais. Récemment un petit article dans "Pour la Science" est sorti, montrant un certain nombre de biais que l'esprit humain utilise... mais bon, je n'arrête là.

Simuler du pur hasard n'est pas chose facile, d'autant que le champ de recherche peut vite devenir très grand.


Bravo tout de même pour ce gros travail !


Amicalement,
Us.

Commentaire de Julien39 le 04/05/2006 15:51:46 administrateur CS

Us merci pour la fonction Randu je vais corriger sa le plus tôt possible mais pas tout de suite car l'étude est assez longue.

Par contre je n'aime pas tellement l'idée de transformer un nombre pair en nombre impair.

Pour la variable "a" en type String tu as 1000 fois raison.

Enfin je n'épilogue pas sur la remarque philosophique...



lexsty simuler la fréquence d'apparition des 6 numéros du Loto revient à étudier la densité dans un cas particulier et j'ai fait 2 fois cette étude une fois de facon peu rigoureuse mais pédagogiquement interressante, avec le graphique et une fois avec le test de khi² qui est une étude de l'ecartr à la fréquence type.

Commentaire de Warning le 06/05/2006 03:27:31 administrateur CS

Salut! Félicitation ce travail est très interessant.

Commentaire de Gobillot le 08/05/2006 21:31:02

qu'est ce que je raconte !!!
je dis des bêtises
excuses moi je lis à l'envers

ignore le message précedent, sauf le bravo.

Commentaire de Julien39 le 08/05/2006 21:33:12 administrateur CS

J'étais entrain d'écrire que je ne voyais pas ce que tu voulais dire, maintnenant je comprend miex...
Merci pour tes encouragements et pour Mersenne Twister

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Recherche aléatoire [ par Domino ] Dans un but de contrôle (auditeurs) on me demande de sélectionner (afficher dans un grid ou charger dans un recordset), 3 records provenant d'une tabl attribuer un identifiant aléatoire calculé avec des chiffre et des lettres [ par yobogs ] Bonjour,quelqu'un aurait il un script me permettant de calculer un identifiantaléatoire et verifier dans la base de donnée s'il n'existe pas.Je ne veu nombre aléatoire [ par inconnu24 ] je veux créer des nombres aléatoires de 12 digits qui sont stocké dans une base de donné. chaque fois que je fais la création, il faut vérifier qu'un comment créer un tableau... [ par mike ] Voilà en fait je voudrais créer un tableau dans lequel une valeur tirée au hasard ne revienne plus ensuite! Par exemple si je fais un programme de lot Vraiment aléatoire ? [ par Niaphron ] Bonjour, je voudrais savoir quand un on à 2 ordianteurs qui tire un nombre aléatoire à la mm heure, mm minute et mm seconde, est-ce-que les 2 ordi tir Tirage aléatoire [ par commeunpic ] Je cherche un code htmlpour générer un tirage aléatoire d'un texte ou d'un fichier parmi une vingtaine de textes ou fichiers .Cela existe t'il par ici JEU DE SIMULATION [ par cumu ] NetTrader est un jeu qui vous permet de goûter aux joies et aux frayeurs de la Bourse mais sans le moindre risque. Achetez, revendez, gagnez ou perdez Simulation de F1(J'ai un problème) [ par Viacman ] Je suis en train de créé un simulateur de formule 1 mais j'ai un gros problème.Quand je simule, quelques pilotes arrivent à la même position. Exemple Simulation de train (pb sur la conception) [ par romain ] Voilà, j'aimerais faire une petite simulation ferroviaire.Je me heurte deja à un pb.Comment faire pour que lorsq'un train passe le feu passe au rouge Nombre aléatoire, réelement... [ par yobogs ] Bonjour, j'utilise cette fonction Int(2000 * Rnd + 1) pour génèrer un entier aléatoire entre 1 et 2000.Or je me rends compte que lorsque je lance mo


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 6,100 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales