This one day workshop will introduce you to Darwinian evolution. However, unlike courses taught in school, it will be explored through the lens of genetic algorithms, which is a form of artificial intelligence. You will be able to experience – through hands-on programming – how the ideas of inheritance, natural selection, and mutation help to cultivate a population of self-improving candidate solutions to various computational problems. In this workshop, we will be using genetic algorithms to solve Sudoku.
Part One starts by establishing the context of the workshop as one that explores a type of artificial intelligence known as genetic algorithms. Participants will first be introduced to the concept of Darwinian evolution and understand genetic algorithms as a simulation of this natural phenomena. Participants will also be introduced to the game of Sudoku and understand why it is a complex problem that is hard to solve using conventional algorithmic methods.
Part Two delves deeper into evolution by covering the concepts of an individual, a population, inheritance, mutation, and natural selection. To ensure a deeper understanding that is not just surface-level, they will learn to simulate these phenomena digitally by designing a genetic algorithm to solve any Sudoku problem.
Part Three In this part, participants can play around with the concepts they have learned by designing their own rules for population size, mutation rate, inheritance policy, survival selection, mutation policy, etc. This will allow them to draw connections by seeing how these parameters affect the population as a whole. Finally, we will discuss potential applications of genetic algorithms in other real-life problems and further learning resources for genetic algorithms.
Target group
This workshop is targeted at students or working professionals who are interested in learning more about artificial intelligence and Darwinian evolution.A basic knowledge of Python is required for this workshop.No knowledge in evolutionary biology is expected.