Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Hands-On Genetic Algorithms with Python

You're reading from   Hands-On Genetic Algorithms with Python Apply genetic algorithms to solve real-world AI and machine learning problems

Arrow left icon
Product type Paperback
Published in Jul 2024
Publisher Packt
ISBN-13 9781805123798
Length 418 pages
Edition 2nd Edition
Languages
Tools
Arrow right icon
Author (1):
Arrow left icon
Eyal Wirsansky Eyal Wirsansky
Author Profile Icon Eyal Wirsansky
Eyal Wirsansky
Arrow right icon
View More author details
Toc

Table of Contents (24) Chapters Close

Preface 1. Part 1: The Basics of Genetic Algorithms FREE CHAPTER
2. Chapter 1: An Introduction to Genetic Algorithms 3. Chapter 2: Understanding the Key Components of Genetic Algorithms 4. Part 2: Solving Problems with Genetic Algorithms
5. Chapter 3: Using the DEAP Framework 6. Chapter 4: Combinatorial Optimization 7. Chapter 5: Constraint Satisfaction 8. Chapter 6: Optimizing Continuous Functions 9. Part 3: Artificial Intelligence Applications of Genetic Algorithms
10. Chapter 7: Enhancing Machine Learning Models Using Feature Selection 11. Chapter 8: Hyperparameter Tuning of Machine Learning Models 12. Chapter 9: Architecture Optimization of Deep Learning Networks 13. Chapter 10: Reinforcement Learning with Genetic Algorithms 14. Chapter 11: Natural Language Processing 15. Chapter 12: Explainable AI, Causality, and Counterfactuals with Genetic Algorithms 16. Part 4: Enhancing Performance with Concurrency and Cloud Strategies
17. Chapter 13: Accelerating Genetic Algorithms – the Power of Concurrency 18. Chapter 14: Beyond Local Resources – Scaling Genetic Algorithms in the Cloud 19. Part 5: Related Technologies
20. Chapter 15: Evolutionary Image Reconstruction with Genetic Algorithms 21. Chapter 16: Other Evolutionary and Bio-Inspired Computation Techniques 22. Index 23. Other Books You May Enjoy

Parallelizing genetic algorithms

Within a single generation, genetic algorithms can be considered embarrassingly parallelizable – they can be effortlessly divided into multiple independent tasks, with minimal or no dependency or interaction between them. This is because the fitness evaluation and manipulation of individuals in the population are typically independent tasks. Each individual’s fitness is evaluated based on its own characteristics, and genetic operators (crossover and mutation) are applied independently to pairs of individuals. This independence allows for the straightforward parallel execution of these tasks.

Two parallelization methods – multithreading and multiprocessing – come to mind, as we will explore in the following subsections.

Multithreading

Multithreading is a concurrent execution model that allows multiple threads to exist within the same process, sharing the same resources, such as memory space, but running independently...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image