Coding Challenge #69: Evolutionary Steering Behaviors - Part 1
In this multi-part coding challenge, I create a system where autonomous steering agents evolve the behavior of eating food and avoiding poison. Code: https://thecodingtrain.com/challenges/69-evolutionary-steering-behaviors
๐น๏ธ p5.js Web Editor Sketch: https://editor.p5js.org/codingtrain/sketches/xgQNXkxx1
Other Parts of this Challenge:
๐บ Evolutionary Steering Behaviors Part 2: https://youtu.be/XaOVH8ZSRNA
๐บ Evolutionary Steering Behaviors Part 3: https://youtu.be/vZUWTlK7D2Q
๐บ Evolutionary Steering Behaviors Part 4: https://youtu.be/ykOcaInciBI
๐บ Evolutionary Steering Behaviors - Part 5 (Bonus): https://youtu.be/VnFF5V5DS8s
๐ฅ Previous video: https://youtu.be/piBq7VD0ZSo?list=PLRqwX-V7Uu6ZiZxtDDRCi6uhfTH4FilpH
๐ฅ Next video: https://youtu.be/N8Fabn1om2k?list=PLRqwX-V7Uu6ZiZxtDDRCi6uhfTH4FilpH
๐ฅ All videos: https://www.youtube.com/playlist?list=PLRqwX-V7Uu6ZiZxtDDRCi6uhfTH4FilpH
References:
๐พ Repo for Autonomous Agents in p5.js: https://github.com/nature-of-code/noc-examples-p5.js/blob/master/chp06_agents/NOC_6_01_Seek/vehicle.js
๐ The Nature of Code Part 2 (Spring 2017) - Intelligence and Learning: https://github.com/shiffman/NOC-S17-2-Intelligence-Learning
๐ Nature of Code: http://natureofcode.com/
๐ Steering Behaviors: http://www.red3d.com/cwr/steer/
๐งฌ My Genetic Algorithm Playlist: https://www.youtube.com/playlist?list=PLRqwX-V7Uu6bJM3VgzjNV5YxVxUwzALHV
Videos:
๐ My Video on Autonomous Agents and Steering: https://www.youtube.com/watch?v=P_xJMH8VvAE
๐ My Video on Vectors in p5.js: https://www.youtube.com/watch?v=vqE8DMfOajk
๐ My Video on How to go Through an Array Backwards: https://youtu.be/HXOD_XDA-KU
๐ My Genetic Algorithm Playlist: https://www.youtube.com/watch?v=9zfeTw-uFCw&list=PLRqwX-V7Uu6bJM3VgzjNV5YxVxUwzALHV
๐ด Coding Train Live 89: https://youtu.be/qzFlnX-z38U?t=2471s
Related Coding Challenges:
๐ #59 Steering Behaviors: https://youtu.be/4hA7G3gup-4
๐ #124 Flocking Simulation: https://youtu.be/mhjuuHl6qHM
Timestamps:
0:00 Introducing today's topic: Evolutionary Steering Behavior
1:30 Map out the ecosystem
5:41 Steering behaviors
8:36 Let's Code!
12:00 Add a food array
14:06 Add a eat function
19:16 Remove a food element if it has been eaten
20:38 Add a poison array
22:57 What do I need to do next?
Editing by Mathieu Blanchette
Animations by Jason Heglund
Music from Epidemic Sound
๐ Website: http://thecodingtrain.com/
๐พ Share Your Creation! https://thecodingtrain.com/guides/passenger-showcase-guide
๐ฉ Suggest Topics: https://github.com/CodingTrain/Suggestion-Box
๐ก GitHub: https://github.com/CodingTrain
๐ฌ Discord: https://thecodingtrain.com/discord
๐ Membership: http://youtube.com/thecodingtrain/join
๐ Store: https://standard.tv/codingtrain
๐๏ธ Twitter: https://twitter.com/thecodingtrain
๐ธ Instagram: https://www.instagram.com/the.coding.train/
๐ฅ Coding Challenges: https://www.youtube.com/playlist?list=PLRqwX-V7Uu6ZiZxtDDRCi6uhfTH4FilpH
๐ฅ Intro to Programming: https://www.youtube.com/playlist?list=PLRqwX-V7Uu6Zy51Q-x9tMWIv9cueOFTFA
๐ p5.js: https://p5js.org
๐ p5.js Web Editor: https://editor.p5js.org/
๐ Processing: https://processing.org
๐ Code of Conduct: https://github.com/CodingTrain/Code-of-Conduct
This description was auto-generated. If you see a problem, please open an issue: https://github.com/CodingTrain/thecodingtrain.com/issues/new
#geneticalgorithms #steeringbehaviors #seekfunction #autonomousagent #evolution #javascript #p5js