Poster une réponse 
générateur de nombre pseudo aléatoire
01-04-2013, 08:14 AM
Message : #1
générateur de nombre pseudo aléatoire
Bonjour a toutes et a tous,
ah que ça fait du bien de revenir par ici!
Comme certains le savent je suis en ISN, et donc j'ai un projet a réaliser pour la fin de l'année... Mon projet consiste a la génération aléatoire puis la résolution automatique d'un labyrinthe. Il se trouve que a l'heure au je vous parle nous avons quasiment terminé. Cependant j'aimerais ajouter une petite fonctionnalité qui va sans doute plaire a notre amis jumera. Normalement il n'y a pas trop de suspens vous l'avez lu dans le titre je souhaite faire un générateur de nombre pseudo aléatoire, autrement dit un seed pour le joueur de minecraft. Cependant je ne sais pas lequel choisir! Un générateur performant, ou rapide...,compliqué a réaliser ou facile. C'est la que je demande votre aide: selon vous quel type de PRNG est le plus adapté a un labyrinthe.

plus d'info sur : http://fr.wikipedia.org/wiki/G%C3%A9nC3%...http://fr.wikipedia.org/wiki/G%C3%A9nC3%A9rateur_de_nombres_pseudo-al%C3

++

C'est dur d’être le treizième apôtre
gifmosu
Visiter le site internet de cet utilisateur Trouver tous les messages de cet utilisateur
Citer ce message dans une réponse Return to top
01-04-2013, 12:59 PM
Message : #2
RE: générateur de nombre pseudo aléatoire
Salut mosu
Content de te (re)voir (enfin… façon de parler !) Smile

Je te reconnais bien remarque… ton lien est foireux happy
Voilà le bon…
http://fr.wikipedia.org/wiki/Générateur_...http://fr.wikipedia.org/wiki/Générateur_de_nombres_pseudo-aléa

Ça tombe bien : Notre ami Le Lui ou un Autre a posté une énigme (non résolue à ce jour ( à part moi whistle ))
utilisée pour générer des nombres pseudo aléatoires !
Voir ici

[Image: 118.gif]
Visiter le site internet de cet utilisateur Trouver tous les messages de cet utilisateur
Citer ce message dans une réponse Return to top
02-04-2013, 07:55 PM (Ce message a été modifié le : 03-04-2013 04:46 PM par Le Lui ou un Autre.)
Message : #3
RE: générateur de nombre pseudo aléatoire
Pas exactement.
J'ai dis que c'était "à propos de l'aléatoire" tongue. En gros, ça illustrait la question : "Qu'est-ce qui est aléatoire et dans quelle mesure est-ce aléatoire". Je ne sais pas si il y a effectivement eu un moment dans l'histoire de l'informatique où une méthode similaire a été utilisé pour générer des nombres pseudo-aléatoires.
En outre, on ne sait pas si Pi est un nombre normal et donc difficile d'étudier les propriétés de PRNG d'une telle méthode : http://fr.wikipedia.org/wiki/Nombre_normal

Pour ta question, je suppose que ça dépend de la taille de tes labyrinthes et de si tu veux en créer beaucoup en peu de temps, non?
Trouver tous les messages de cet utilisateur
Citer ce message dans une réponse Return to top
03-04-2013, 06:57 PM (Ce message a été modifié le : 03-04-2013 07:08 PM par mosu.)
Message : #4
RE: générateur de nombre pseudo aléatoire
j'aimerais justement qu'il n'y ait pas de période ou une période très grande (>10 000 000 de nombre générés). Notre labyrinthe possède 1160 cases (29*40) Si vous voulez je peux vous mettre un lien en téléchargement. Cependant le code source n'est pas encore "open", il vaut mieux éviter qu'on se fasse accuser de repiquage sur le net pour un truc qu'on a fait nous même. happy Je crois que je vais utiliser une suite de Fibonacci améliorée. Le seed de départ sera constitué de 4 chiffre, de ce nombre on va en faire 5 constitués de 4 chiffres aussi avec des calculs bidons style addition, soustraction car on a besoin de 5 "randoms" différents... et ensuite suite de Fibonacci avec les 4 nombres sachant que les premiers 100 tours seront "à vide" afin d'avoir des données plus aléatoire. Si le nombre généré dans la suite de Fibonacci est supérieur à 9999 il est mis a la puissance 10^-1...

++Mosu

Edit: pas d’addition ni de soustraction car le seed de valeur 0 0 0 0 sera équivalent a un random et il ne faut pas que les autres nombre générés tombent a 0 aussi.Big Grin

Je ferais une ébauche sur algobox pour les beaux yeux de mr dott Wink

C'est dur d’être le treizième apôtre
gifmosu
Visiter le site internet de cet utilisateur Trouver tous les messages de cet utilisateur
Citer ce message dans une réponse Return to top
03-04-2013, 07:03 PM
Message : #5
RE: générateur de nombre pseudo aléatoire
Je déplace dans "Club informatique" clin_oeil

[Image: 118.gif]
Visiter le site internet de cet utilisateur Trouver tous les messages de cet utilisateur
Citer ce message dans une réponse Return to top
05-04-2013, 07:39 PM
Message : #6
RE: générateur de nombre pseudo aléatoire
Après avoir tâtonné un peu j'ai réussi a faire un algorithme qui me génère des séquences non répétitives et qui rapporte des nombres proche de la probabilité voulue (254/1000 au lieu de 1/4 c'est plutôt pas mal). Il marche quelque soit le nombre d'issues choisie (du moment qu'il est inférieur à 9999).

PS: Ce programme est un "test" il ne résistera donc pas a des entrées troll (genre un nombre tour ou seed négatif, base<=0 etc...) dont je sais que J
Jumera est friand!!!


Pièce(s) jointe(s)
test seed.alg
File Type: .alg
Downloaded: 2 times
Size: 5.98 Ko


C'est dur d’être le treizième apôtre
gifmosu
Visiter le site internet de cet utilisateur Trouver tous les messages de cet utilisateur
Citer ce message dans une réponse Return to top
06-04-2013, 12:31 AM
Message : #7
RE: générateur de nombre pseudo aléatoire
Beau travail good

mais comme tu me demandes de tester… :

un terme et non un therme

à part ça, je n'ai pas rentré de caractères "tordus"… (pas de nombres négatifs, ni de lettres… sinon ça bugue…)
juste que des "0" !
> algorithme interrompu à la ligne 48 : erreur de calcul whistle

après, le nombre de tours, c'est le nombre de nombres aléatoires générés ?
Pourquoi quand je mets n, il m'en sort n+1 ?

et le maximum, j'ai pas compris huuh

[Image: 118.gif]
Visiter le site internet de cet utilisateur Trouver tous les messages de cet utilisateur
Citer ce message dans une réponse Return to top
06-04-2013, 07:37 AM (Ce message a été modifié le : 06-04-2013 07:38 AM par mosu.)
Message : #8
RE: générateur de nombre pseudo aléatoire
(06-04-2013 12:31 AM)jumera a écrit :  après, le nombre de tours, c'est le nombre de nombres aléatoires générés ?
Pourquoi quand je mets n, il m'en sort n+1 ?

et le maximum, j'ai pas compris huuh

Le nombre de tour correspond bien aux nombre aléatoires générés.

il en sort n+1 car la première valeur n'est pas utilisé dans le système réel.

Le maximum correspond au nombre de fois ou la valeur maximale (par exemple 4) est sortie. C'est pour faire des stat afin que le générateur ne soit pas "pipé".

et le modulo par 0 c'est pas super!Wink Voila pourquoi il y a erreur de calcul.

et l'orthographe c'est parce que c'est moi!

C'est dur d’être le treizième apôtre
gifmosu
Visiter le site internet de cet utilisateur Trouver tous les messages de cet utilisateur
Citer ce message dans une réponse Return to top
06-04-2013, 04:23 PM
Message : #9
RE: générateur de nombre pseudo aléatoire
(06-04-2013 07:37 AM)mosu a écrit :  Le maximum correspond au nombre de fois ou la valeur maximale (par exemple 4) est sortie.
Pourquoi ça affiche 0 ?
(si la valeur maximale ne sort qu'une fois, ça devrait être 1 non ?)

(06-04-2013 07:37 AM)mosu a écrit :  et l'orthographe c'est parce que c'est moi!
Bonne réponse laugh

[Image: 118.gif]
Visiter le site internet de cet utilisateur Trouver tous les messages de cet utilisateur
Citer ce message dans une réponse Return to top
07-04-2013, 08:43 AM
Message : #10
RE: générateur de nombre pseudo aléatoire
(06-04-2013 04:23 PM)jumera a écrit :  
(06-04-2013 07:37 AM)mosu a écrit :  Le maximum correspond au nombre de fois ou la valeur maximale (par exemple 4) est sortie.
Pourquoi ça affiche 0 ?
(si la valeur maximale ne sort qu'une fois, ça devrait être 1 non ?)

En effet vous avez raison! mais la je ne sais pas ou est le problème. je jetterais un coup d'oeil plus tard

C'est dur d’être le treizième apôtre
gifmosu
Visiter le site internet de cet utilisateur Trouver tous les messages de cet utilisateur
Citer ce message dans une réponse Return to top
Poster une réponse