Probabilité de collision de hachage : du paradoxe des anniversaires aux approximations

2025-06-25
Probabilité de collision de hachage : du paradoxe des anniversaires aux approximations

Cet article explore en profondeur la probabilité de collisions de hachage. Les fonctions de hachage mappent des entrées arbitrairement complexes à des nombres uniques, mais il existe un risque de collisions de hachage (différentes entrées mappées au même nombre). En commençant par le paradoxe des anniversaires, l'article explique la formule exacte pour calculer la probabilité de collision de hachage et trois méthodes d'approximation : approximation exponentielle, approximation simplifiée et une approximation encore plus simplifiée. Par comparaison, l'approximation exponentielle offre les meilleurs résultats dans la plupart des cas, tandis que les deux autres sont plus adaptées aux estimations rapides. L'article fournit également des preuves mathématiques à l'appui des méthodes d'approximation.

Lire plus

Livecoding graphique en Common Lisp : création d’un programme Boids sans redémarrage

2025-04-23
Livecoding graphique en Common Lisp : création d’un programme Boids sans redémarrage

Cet article présente le livecoding en Common Lisp pour la programmation graphique, en utilisant l’algorithme Boids comme exemple. La puissante fonctionnalité de recompilation de Common Lisp permet de modifier le code et d’obtenir un effet immédiat pendant l’exécution du programme, éliminant ainsi le besoin de redémarrage. L’auteur utilise le framework graphique Sketch, implémentant progressivement l’algorithme Boids et montrant le processus de développement efficace permis par le livecoding. En modifiant le code et en observant les effets en temps réel, le cœur de l’algorithme Boids — incluant les règles de séparation, de cohésion et d’alignement — est implémenté, aboutissant à une simulation Boids qui suit la souris. Le livecoding améliore considérablement l’efficacité et l’interactivité du développement.

Lire plus
Développement Algorithme Boids