
Nature du code (édition JavaScript)
Description
Introduction au livre
Percez les mystères de la nature tout en apprenant à coder avec JavaScript.
Une édition JavaScript révisée de 『Nature of Code』, qui a inspiré d'innombrables lecteurs pendant plus d'une décennie.
Écrit par Daniel Shiffman de la chaîne « Coding Train », ce guide novateur initie aussi bien les débutants que les programmeurs expérimentés à un monde où le code rencontre la créativité ludique.
Il dévoile en douceur les mystères de la nature, tels que les vecteurs, les lois du mouvement de Newton et les vibrations, et explore même des sujets complexes comme l'évolution, les algorithmes génétiques, les réseaux neuronaux et l'apprentissage automatique.
Vous pouvez éprouver le plaisir incroyable de créer votre propre moteur physique et de transformer du code en art.
Une édition JavaScript révisée de 『Nature of Code』, qui a inspiré d'innombrables lecteurs pendant plus d'une décennie.
Écrit par Daniel Shiffman de la chaîne « Coding Train », ce guide novateur initie aussi bien les débutants que les programmeurs expérimentés à un monde où le code rencontre la créativité ludique.
Il dévoile en douceur les mystères de la nature, tels que les vecteurs, les lois du mouvement de Newton et les vibrations, et explore même des sujets complexes comme l'évolution, les algorithmes génétiques, les réseaux neuronaux et l'apprentissage automatique.
Vous pouvez éprouver le plaisir incroyable de créer votre propre moteur physique et de transformer du code en art.
- Vous pouvez consulter un aperçu du contenu du livre.
Aperçu
indice
À propos de l'auteur, du relecteur et du traducteur xii
Préface du traducteur xiii
Revue du lecteur bêta xiv
Recommandation XVI
Remerciements xviii
À propos de ce livre xxiv
CHAPITRE 0 Aléatoire 1
0,1 Marche aléatoire 2
0,2 Marcheur aléatoire Classe 3
0.3 Probabilité et distribution non uniforme 10
0,4 Distribution normale des nombres aléatoires 14
0,5 Distribution personnalisée de nombres aléatoires 18
Une approche plus douce utilisant un bruit de Perlin de 0,6 21
CHAPITRE 1 Vecteurs 33
1.1 L'importance des vecteurs 34
1.2 Vecteurs dans p5.js 37
1.3 Addition vectorielle 40
1.4 Mathématiques vectorielles supplémentaires 45
1.5 Longueur du vecteur 50
1.6 Normalisation vectorielle 52
1.7 Mouvement à l'aide de vecteurs 54
1.8 Accélération 59
CHAPITRE 2 : FORCE 71
2.1 Forces et lois du mouvement de Newton 72
2.2 Accumulation de force 78
2.3 Considérant la masse 80
2.4 Puissance du bâtiment 82
2.5 Modélisation des forces 88
2.6 Problème à n corps 110
CHAPITRE 3 : VIBRATION 117
3.1 Angle 118
3.2 Chaque mouvement 120
3.3 Fonctions trigonométriques 126
3.4 Sens du mouvement 127
3.5 Coordonnées polaires et cartésiennes 131
3.6 Caractéristiques vibratoires 134
3.7 Vibration utilisant la vitesse angulaire 138
3.8 Vague 142
Force du ressort 3,9 147
3.10 Pendule 154
CHAPITRE 4 Systèmes de particules 165
4.1 L'importance des systèmes particulaires 166
4.2 Particule unique 168
4.3 Réseau de particules 172
4.4 Émetteur de particules 178
Système d'émetteur 4.5 181
4.6 Hérédité et polymorphisme 184
4.7 Systèmes de particules utilisant des forces 197
4.8 Système de particules appliquant la force de l'objet poussant 200
4.9 Textures d'image et mélange additif 205
CHAPITRE 5 Agents autonomes 213
5.1 Le pouvoir de choisir par sa propre volonté 214
5.2 Véhicules et direction 215
5.3 Champ d'écoulement 232
5.4 Suivre le chemin 239
5.5 Systèmes complexes 256
5.6 Efficacité algorithmique : Pourquoi mon programme est-il si lent ? 273
CHAPITRE 6 Bibliothèque de physique 285
6.1 Pourquoi utiliser une bibliothèque de physique ? 287
6.2 Importation de la bibliothèque Matter.js 289
6.3 Aperçu de Matter.js 291
6.4 Matter.js avec p5.js 301
6.5 Static Matter.js Corps 306
6.6 Polygones et groupes de formes 307
6.7 Contraintes Matter.js 315
6.8 Application de différentes forces 323
6.9 Événement Crash 327
6.10 Brève introduction : Calcul intégral 331
6.11 Berle Physique 333 avec Toxiclibs.js
6.12 Simulation de délinquance 342
6.13 Forces gravitationnelles et répulsives 355
CHAPITRE 7 Automates cellulaires 359
7.1 Que sont les automates cellulaires ? 360
7.2 Automates cellulaires de base 362
7.3 Système de classification de Wolfram 380
7.4 Jeu de la vie 382
7.5 Création de cellules orientées objet 391
7.6 Variations sur les automates cellulaires traditionnels 394
CHAPITRE 8 Fractales 399
8.1 Qu'est-ce qu'une fractale ? 400
8.2 Récursivité 403
8.3 Courbe de Coca-Cola 414
8.4 Arbre 422
Système 8,5 L 430
CHAPITRE 9 Calcul évolutionnaire 439
9.1 Algorithmes génétiques : La sagesse de la nature 440
9.2 Pourquoi utiliser des algorithmes génétiques ? 441
9.3 Fonctionnement des algorithmes génétiques 444
9.4 Programmation des algorithmes génétiques 452
9.5 Personnalisation de l'algorithme génétique 464
9.6 Puissance évolutive : Smart Rocket 471
9.7 Sélection interactive 484
9.8 Simulation d'écosystème 489
CHAPITRE 10 : RÉSEAUX NEURONAUX 499
10.1 Introduction aux réseaux neuronaux artificiels 501
10.2 Perceptron 505
10.3 Ajout d'un « réseau » à un réseau neuronal 521
10.4 Apprentissage automatique avec ml5.js 524
10.5 Création d'un classificateur de gestes 532
CHAPITRE 11 : NEUROÉVOLUTION 545
11.1 Apprentissage par renforcement 547
11.2 Évolution des réseaux neuronaux : l’algorithme NEAT 552
11.3 Programmation de Flappy Bird 553
11.4 Flappy Bird 557 neuro-évolutif
11.5 Pilotage avec Neuroevolution 568
11.6 Écosystèmes neuroévolutifs 576
Conclusion 587
Annexe : Conception de formes de vie 589
Source de l'illustration 593
Recherche 596
Préface du traducteur xiii
Revue du lecteur bêta xiv
Recommandation XVI
Remerciements xviii
À propos de ce livre xxiv
CHAPITRE 0 Aléatoire 1
0,1 Marche aléatoire 2
0,2 Marcheur aléatoire Classe 3
0.3 Probabilité et distribution non uniforme 10
0,4 Distribution normale des nombres aléatoires 14
0,5 Distribution personnalisée de nombres aléatoires 18
Une approche plus douce utilisant un bruit de Perlin de 0,6 21
CHAPITRE 1 Vecteurs 33
1.1 L'importance des vecteurs 34
1.2 Vecteurs dans p5.js 37
1.3 Addition vectorielle 40
1.4 Mathématiques vectorielles supplémentaires 45
1.5 Longueur du vecteur 50
1.6 Normalisation vectorielle 52
1.7 Mouvement à l'aide de vecteurs 54
1.8 Accélération 59
CHAPITRE 2 : FORCE 71
2.1 Forces et lois du mouvement de Newton 72
2.2 Accumulation de force 78
2.3 Considérant la masse 80
2.4 Puissance du bâtiment 82
2.5 Modélisation des forces 88
2.6 Problème à n corps 110
CHAPITRE 3 : VIBRATION 117
3.1 Angle 118
3.2 Chaque mouvement 120
3.3 Fonctions trigonométriques 126
3.4 Sens du mouvement 127
3.5 Coordonnées polaires et cartésiennes 131
3.6 Caractéristiques vibratoires 134
3.7 Vibration utilisant la vitesse angulaire 138
3.8 Vague 142
Force du ressort 3,9 147
3.10 Pendule 154
CHAPITRE 4 Systèmes de particules 165
4.1 L'importance des systèmes particulaires 166
4.2 Particule unique 168
4.3 Réseau de particules 172
4.4 Émetteur de particules 178
Système d'émetteur 4.5 181
4.6 Hérédité et polymorphisme 184
4.7 Systèmes de particules utilisant des forces 197
4.8 Système de particules appliquant la force de l'objet poussant 200
4.9 Textures d'image et mélange additif 205
CHAPITRE 5 Agents autonomes 213
5.1 Le pouvoir de choisir par sa propre volonté 214
5.2 Véhicules et direction 215
5.3 Champ d'écoulement 232
5.4 Suivre le chemin 239
5.5 Systèmes complexes 256
5.6 Efficacité algorithmique : Pourquoi mon programme est-il si lent ? 273
CHAPITRE 6 Bibliothèque de physique 285
6.1 Pourquoi utiliser une bibliothèque de physique ? 287
6.2 Importation de la bibliothèque Matter.js 289
6.3 Aperçu de Matter.js 291
6.4 Matter.js avec p5.js 301
6.5 Static Matter.js Corps 306
6.6 Polygones et groupes de formes 307
6.7 Contraintes Matter.js 315
6.8 Application de différentes forces 323
6.9 Événement Crash 327
6.10 Brève introduction : Calcul intégral 331
6.11 Berle Physique 333 avec Toxiclibs.js
6.12 Simulation de délinquance 342
6.13 Forces gravitationnelles et répulsives 355
CHAPITRE 7 Automates cellulaires 359
7.1 Que sont les automates cellulaires ? 360
7.2 Automates cellulaires de base 362
7.3 Système de classification de Wolfram 380
7.4 Jeu de la vie 382
7.5 Création de cellules orientées objet 391
7.6 Variations sur les automates cellulaires traditionnels 394
CHAPITRE 8 Fractales 399
8.1 Qu'est-ce qu'une fractale ? 400
8.2 Récursivité 403
8.3 Courbe de Coca-Cola 414
8.4 Arbre 422
Système 8,5 L 430
CHAPITRE 9 Calcul évolutionnaire 439
9.1 Algorithmes génétiques : La sagesse de la nature 440
9.2 Pourquoi utiliser des algorithmes génétiques ? 441
9.3 Fonctionnement des algorithmes génétiques 444
9.4 Programmation des algorithmes génétiques 452
9.5 Personnalisation de l'algorithme génétique 464
9.6 Puissance évolutive : Smart Rocket 471
9.7 Sélection interactive 484
9.8 Simulation d'écosystème 489
CHAPITRE 10 : RÉSEAUX NEURONAUX 499
10.1 Introduction aux réseaux neuronaux artificiels 501
10.2 Perceptron 505
10.3 Ajout d'un « réseau » à un réseau neuronal 521
10.4 Apprentissage automatique avec ml5.js 524
10.5 Création d'un classificateur de gestes 532
CHAPITRE 11 : NEUROÉVOLUTION 545
11.1 Apprentissage par renforcement 547
11.2 Évolution des réseaux neuronaux : l’algorithme NEAT 552
11.3 Programmation de Flappy Bird 553
11.4 Flappy Bird 557 neuro-évolutif
11.5 Pilotage avec Neuroevolution 568
11.6 Écosystèmes neuroévolutifs 576
Conclusion 587
Annexe : Conception de formes de vie 589
Source de l'illustration 593
Recherche 596
Image détaillée

Dans le livre
C'est samedi matin.
Après un jogging revigorant, un délicieux bol de céréales et un moment de calme devant l'ordinateur avec une tasse de tisane à la camomille bien chaude, je suis allée me promener.
En consultant le calendrier, j'ai vu que l'anniversaire d'un vieil ami approchait, alors j'ai décidé de lui faire une carte de félicitations avec p5.js.
Que diriez-vous d'une carte de vœux avec des confettis volants ? J'ai décidé de créer une carte de vœux où des confettis de formes et de mouvements variés explosent simultanément sur l'écran : violets, roses, en forme d'étoile, carrés, volant rapidement, retombant lentement.
/ Ceci est un système de particules.
Il s'agit d'un système de particules qui manipule des particules appelées confettis.
Nous pouvons repenser la classe Particle pour y inclure des variables qui stockent la couleur, la forme, le mouvement, etc.
--- p.185
Tous les jeux Flappy Bird créés jusqu'à présent se contrôlent en cliquant avec la souris.
À présent, faisons en sorte que les ordinateurs jouent eux-mêmes à des jeux et apprenons-leur à le faire grâce à la neuroévolution.
ml5.js possède des fonctionnalités d'évolution neuronale intégrées, ce qui facilite sa mise en œuvre.
La première étape consiste à implanter un « cerveau » dans l'oiseau afin qu'il puisse décider lui-même s'il doit battre des ailes ou non.
--- p.557
Un bon générateur de nombres aléatoires produit des nombres sans lien apparent entre eux et ne présentant aucun schéma apparent.
Cependant, pour programmer des mouvements naturels et réalistes, une petite dose d'aléatoire suffit.
En réalité, une aléatoire parfaitement uniforme peut être contre nature.
L'algorithme de bruit de Perlin, créé par Ken Perlin, a été conçu en tenant compte de ces aspects.
Cet algorithme garantit que les nombres consécutifs ont des valeurs similaires.
Cela adoucit les transitions entre les nombres, leur donnant un aspect plus naturel que s'ils étaient totalement aléatoires.
C’est pourquoi le bruit de Perlin est souvent utilisé pour créer des motifs naturels tels que les nuages, les paysages et les motifs marbrés.
--- p.21
Le schéma suivant propose des idées qui peuvent s'avérer utiles pour la création d'un écosystème basé sur le contenu de ce livre.
Observez comment cette image évolue au fur et à mesure que vous apprenez de nouveaux concepts et techniques.
/ Puisque l'objectif principal de ce livre est de démontrer des algorithmes et des principes comportementaux, la plupart des exemples consistent en des formes simples telles que des cercles.
Mais vous avez peut-être des idées plus créatives que cela.
Alors, mettez-vous au défi de créer un design à partir des éléments que vous dessinez.
Si vous débutez dans la traduction de vos dessins en code, consultez ce guide de Jana Marsh, l'illustratrice du livre.
Ce guide en annexe vous apprend à dessiner avec du code.
--- p.32
Examinons à nouveau le code de la méthode attract().
Voyez-vous le signe de la division ? Chaque fois que vous effectuez une division, vous devriez vous demander : « Que se passe-t-il si la distance est très petite, ou (pire encore !) nulle ? »
La division par zéro est impossible, et diviser par un nombre très petit comme 0,0001 revient à multiplier par 10 000 ! Cela ne pose peut-être pas de problème dans la formule de la gravité réelle, mais p5.js n'est pas un environnement réel.
Dans p5.js, le personnage mobile peut s'approcher trop près de l'attracteur, et la force peut devenir si forte que le personnage mobile est éjecté de l'écran.
/ Inversement, supposons que le mobile se trouve à 500 pixels de l'attracteur.
Puisque nous élevons la distance au carré, cela équivaut à diviser la force par 250 000.
Alors la force peut être si faible qu'elle peut sembler presque inefficace.
--- p.106
Moins intéressant que le triangle de Sierpinski.
Comme mentionné précédemment, la plupart des 256 ensembles de règles de base ne produisent pas de très jolis motifs.
Mais il est vraiment fascinant de constater que même des cellules simples, ne possédant que deux états, peuvent créer les motifs étonnants que l'on observe dans la nature.
Par exemple, la coquille d'escargot de la figure 7.18 a une forme similaire au motif créé par la règle 30 de Wolfram.
Cela montre à quel point les automates cellulaires sont utiles pour imiter les modèles naturels et en créer de nouveaux.
Avant de nous pencher sur les détails de ce que produisent différents ensembles de règles, apprenons à créer et à afficher un automate cellulaire Wolfram de base à l'aide de p5.js.
Après un jogging revigorant, un délicieux bol de céréales et un moment de calme devant l'ordinateur avec une tasse de tisane à la camomille bien chaude, je suis allée me promener.
En consultant le calendrier, j'ai vu que l'anniversaire d'un vieil ami approchait, alors j'ai décidé de lui faire une carte de félicitations avec p5.js.
Que diriez-vous d'une carte de vœux avec des confettis volants ? J'ai décidé de créer une carte de vœux où des confettis de formes et de mouvements variés explosent simultanément sur l'écran : violets, roses, en forme d'étoile, carrés, volant rapidement, retombant lentement.
/ Ceci est un système de particules.
Il s'agit d'un système de particules qui manipule des particules appelées confettis.
Nous pouvons repenser la classe Particle pour y inclure des variables qui stockent la couleur, la forme, le mouvement, etc.
--- p.185
Tous les jeux Flappy Bird créés jusqu'à présent se contrôlent en cliquant avec la souris.
À présent, faisons en sorte que les ordinateurs jouent eux-mêmes à des jeux et apprenons-leur à le faire grâce à la neuroévolution.
ml5.js possède des fonctionnalités d'évolution neuronale intégrées, ce qui facilite sa mise en œuvre.
La première étape consiste à implanter un « cerveau » dans l'oiseau afin qu'il puisse décider lui-même s'il doit battre des ailes ou non.
--- p.557
Un bon générateur de nombres aléatoires produit des nombres sans lien apparent entre eux et ne présentant aucun schéma apparent.
Cependant, pour programmer des mouvements naturels et réalistes, une petite dose d'aléatoire suffit.
En réalité, une aléatoire parfaitement uniforme peut être contre nature.
L'algorithme de bruit de Perlin, créé par Ken Perlin, a été conçu en tenant compte de ces aspects.
Cet algorithme garantit que les nombres consécutifs ont des valeurs similaires.
Cela adoucit les transitions entre les nombres, leur donnant un aspect plus naturel que s'ils étaient totalement aléatoires.
C’est pourquoi le bruit de Perlin est souvent utilisé pour créer des motifs naturels tels que les nuages, les paysages et les motifs marbrés.
--- p.21
Le schéma suivant propose des idées qui peuvent s'avérer utiles pour la création d'un écosystème basé sur le contenu de ce livre.
Observez comment cette image évolue au fur et à mesure que vous apprenez de nouveaux concepts et techniques.
/ Puisque l'objectif principal de ce livre est de démontrer des algorithmes et des principes comportementaux, la plupart des exemples consistent en des formes simples telles que des cercles.
Mais vous avez peut-être des idées plus créatives que cela.
Alors, mettez-vous au défi de créer un design à partir des éléments que vous dessinez.
Si vous débutez dans la traduction de vos dessins en code, consultez ce guide de Jana Marsh, l'illustratrice du livre.
Ce guide en annexe vous apprend à dessiner avec du code.
--- p.32
Examinons à nouveau le code de la méthode attract().
Voyez-vous le signe de la division ? Chaque fois que vous effectuez une division, vous devriez vous demander : « Que se passe-t-il si la distance est très petite, ou (pire encore !) nulle ? »
La division par zéro est impossible, et diviser par un nombre très petit comme 0,0001 revient à multiplier par 10 000 ! Cela ne pose peut-être pas de problème dans la formule de la gravité réelle, mais p5.js n'est pas un environnement réel.
Dans p5.js, le personnage mobile peut s'approcher trop près de l'attracteur, et la force peut devenir si forte que le personnage mobile est éjecté de l'écran.
/ Inversement, supposons que le mobile se trouve à 500 pixels de l'attracteur.
Puisque nous élevons la distance au carré, cela équivaut à diviser la force par 250 000.
Alors la force peut être si faible qu'elle peut sembler presque inefficace.
--- p.106
Moins intéressant que le triangle de Sierpinski.
Comme mentionné précédemment, la plupart des 256 ensembles de règles de base ne produisent pas de très jolis motifs.
Mais il est vraiment fascinant de constater que même des cellules simples, ne possédant que deux états, peuvent créer les motifs étonnants que l'on observe dans la nature.
Par exemple, la coquille d'escargot de la figure 7.18 a une forme similaire au motif créé par la règle 30 de Wolfram.
Cela montre à quel point les automates cellulaires sont utiles pour imiter les modèles naturels et en créer de nouveaux.
Avant de nous pencher sur les détails de ce que produisent différents ensembles de règles, apprenons à créer et à afficher un automate cellulaire Wolfram de base à l'aide de p5.js.
--- p.369
Avis de l'éditeur
Une aventure exceptionnelle avec Daniel Shipman, le youtubeur de programmation le plus drôle au monde.
Et si vous pouviez recréer les vols d'oiseaux impressionnants ou la danse hypnotique des lucioles grâce au code ? « The Nature of Code », écrit par Daniel Schiffman de la populaire chaîne YouTube « Coding Train », a transformé d'innombrables lecteurs en créateurs, abolissant les frontières entre science, art et technologie et les encourageant à considérer le code non pas comme un simple outil, mais comme une toile pour une créativité sans limites.
L'ouvrage récemment publié 『Nature of Code (JavaScript Edition)』 est la dernière édition révisée qui change le langage de code d'exemple de Processing à JavaScript (p5.js) et ajoute du contenu supplémentaire.
En partant du concept de vecteurs, nous explorerons les lois du mouvement de Newton, les oscillations et la trigonométrie pour créer notre propre moteur physique simple en JavaScript.
Sur cette base, nous simulons des systèmes complexes, le pilotage et le comportement grégaire, et expliquons plus en détail des sujets complexes tels que l'évolution et les algorithmes génétiques, les réseaux neuronaux, l'apprentissage automatique et les systèmes neuroévolutifs d'une manière facile à comprendre.
Le processus de transformation de phénomènes naturels communs en œuvres d'art visuellement époustouflantes grâce à la programmation orientée objet est véritablement passionnant.
Tous les exemples de code du livre sont disponibles pour test directement sur le site officiel du livre.
Que chacun monte à bord du « Train du codage » et embarquez pour une aventure extraordinaire de codage créatif !
Vous apprendrez les bases de la programmation tout en découvrant le plaisir de transformer le code en art.
Vous découvrirez la nature sous un nouveau jour et ses merveilles vous inspireront pour créer les vôtres.
Que vous soyez débutant ou programmeur expérimenté, ce livre vous guidera dans le monde fascinant où le code et la créativité se rencontrent.
Contenu principal
● Moteur physique : Simule la force de gravité.
● Comportement grégaire : Créez une danse de groupe captivante.
● Taille des arbres : Créez des structures de branches vivantes et organiques.
● Réseaux neuronaux : Construire des systèmes intelligents qui apprennent et s’adaptent.
● Automates cellulaires : Découvrez la magie des modèles auto-organisés.
● Algorithmes évolutionnaires : Découvrez la sélection naturelle directement dans le code.
Et si vous pouviez recréer les vols d'oiseaux impressionnants ou la danse hypnotique des lucioles grâce au code ? « The Nature of Code », écrit par Daniel Schiffman de la populaire chaîne YouTube « Coding Train », a transformé d'innombrables lecteurs en créateurs, abolissant les frontières entre science, art et technologie et les encourageant à considérer le code non pas comme un simple outil, mais comme une toile pour une créativité sans limites.
L'ouvrage récemment publié 『Nature of Code (JavaScript Edition)』 est la dernière édition révisée qui change le langage de code d'exemple de Processing à JavaScript (p5.js) et ajoute du contenu supplémentaire.
En partant du concept de vecteurs, nous explorerons les lois du mouvement de Newton, les oscillations et la trigonométrie pour créer notre propre moteur physique simple en JavaScript.
Sur cette base, nous simulons des systèmes complexes, le pilotage et le comportement grégaire, et expliquons plus en détail des sujets complexes tels que l'évolution et les algorithmes génétiques, les réseaux neuronaux, l'apprentissage automatique et les systèmes neuroévolutifs d'une manière facile à comprendre.
Le processus de transformation de phénomènes naturels communs en œuvres d'art visuellement époustouflantes grâce à la programmation orientée objet est véritablement passionnant.
Tous les exemples de code du livre sont disponibles pour test directement sur le site officiel du livre.
Que chacun monte à bord du « Train du codage » et embarquez pour une aventure extraordinaire de codage créatif !
Vous apprendrez les bases de la programmation tout en découvrant le plaisir de transformer le code en art.
Vous découvrirez la nature sous un nouveau jour et ses merveilles vous inspireront pour créer les vôtres.
Que vous soyez débutant ou programmeur expérimenté, ce livre vous guidera dans le monde fascinant où le code et la créativité se rencontrent.
Contenu principal
● Moteur physique : Simule la force de gravité.
● Comportement grégaire : Créez une danse de groupe captivante.
● Taille des arbres : Créez des structures de branches vivantes et organiques.
● Réseaux neuronaux : Construire des systèmes intelligents qui apprennent et s’adaptent.
● Automates cellulaires : Découvrez la magie des modèles auto-organisés.
● Algorithmes évolutionnaires : Découvrez la sélection naturelle directement dans le code.
SPÉCIFICATIONS DES PRODUITS
- Date d'émission : 22 juillet 2025
Nombre de pages, poids, dimensions : 640 pages | 1 230 g | 188 × 245 × 30 mm
- ISBN13 : 9791194587316
Vous aimerez peut-être aussi
카테고리
Langue coréenne
Langue coréenne