Summary
In this chapter, you were introduced to the concept of applying concurrency to genetic algorithms via multiprocessing, a natural strategy to alleviate their computationally intensive nature. Two main approaches were demonstrated – using Python’s built-in multiprocessing.Pool
class and the SCOOP library. We employed a CPU-intensive version of the familiar One-Max problem as a benchmark, through which several insights were gained. The final part of the chapter addressed the potential of using the SCOOP library for distributed computing.
In the next chapter, we will take the idea of concurrency to the next level by employing a client-server model. This approach will utilize both multiprocessing and multithreading, ultimately leveraging the power of cloud computing to further enhance performance.