
Have you ever wondered how YouTube, TikTok, Amazon, and virtually every other online platform recommend stuff to you? The answer lies in algorithmic bots who have been meticulously trained by computer scientists to perform these sorts of tasks.
The Past:
In the past, humans constructed algorithmic bots by giving them few and simple instructions: However, as technology advanced and problems became much more complex, it became harder for humans to write such straightforward commands. After all, how can humans teach Tesla cars’ autopilot about everything that’s on the road with only simple code? As such, humans began developing new ways to train these bots, one of which is the genetic algorithm.
Genetic Algorithms & Programming:
In this method of machine learning, humans are essentially applying natural selection to algorithmic bots to get a desired outcome. To start off, computer scientists program a “builder” whose function is to create algorithmic bots. Then, they program an “instructor” who tests algorithmic bots. It is important to note that these two bots are not as complex as the bots they create/test, which is why we can program them. At first, the builder creates mostly useless bots because it doesn’t have any information to go off of. As such, the first generations of bots score extremely low on the instructor’s exams, which test on the desired result, such as being able to differentiate cats and dogs. Nonetheless, the instructor takes note of the highest-scoring bots (even if they got a 1/100) and passes that information to the builder so it can construct new bots (offspring) similar to those. The builder may also introduce new code (“mutations”) to see what happens. With each subsequent generation, the bots get better and better and score higher and higher results on the tests (greater “fitness”), until eventually, they are fully prepared to be deployed and used. In the end, after a million generations, the algorithmic bot will be so efficient and good at its job, and only that job, that it could never be replaced by a bot created by humans.
Conclusion:
Although genetic algorithms & programming is one of the most simple ways to create algorithmic bots, there are other, much more complex ways of doing so. For example, neural networks & deep learning extensively use linear algebra to do the same. On a final note, it is important to consider how these bots affect our lives: they greatly mold our interests, they largely determine what we purchase, and they track us and collect our data (for the bots’ test), which is why many people advocate for greater privacy protection on the Internet through legislation.