Author Archives: shoffing

17×17 Research: Solving a 16×15 grid

This week I used the improved code from last week to solve a 16×15 grid with good success. I compared the performance of simulated annealing versus genetic algorithms at performing this task, running each 4 times: 16×15 completion time (in … Continue reading

Posted in Uncategorized | Leave a comment

17×17 Research: Using a binary representation to achieve greater speeds

This week I fundamentally changed how my code works to store the colored grids. Before, grids would be stored in a 2D-array of ints, with each int representing the color of that cell. Now, grids are stored as a 2D-array … Continue reading

Posted in Uncategorized | Leave a comment

17×17 Research: Optimizing the inner loop and testing another SA temperature function

This week I spent some time looking at my genetic algorithm code and seeing if there was anything I could improve. There was indeed quite a bit of bloat. A lot of overhead was spent storing data about each generation … Continue reading

Posted in Uncategorized | Leave a comment

17×17 Research: Reaffirming the basics with the GA and a new temperature function for SA

This week I realized that a bit of my genetic algorithm is non-standard compared to how people usually implement one. The standard implementation is a bit simpler than the one I’ve been using, so I decided to refactor the code a bit … Continue reading

Posted in Uncategorized | Leave a comment

Research: 17×17 Genetic Algorithm Parameter Optimization Attempts

This past week, I ran several tests in attempts to find the perfect parameters for a genetic algorithm to solve the 17×17 challenge. My process was fairly simple: I would pick a range and granularity of values for each of … Continue reading

Posted in Uncategorized | Leave a comment

Research: 17×17 Genetic Algorithm First Tests

This week, I jumped right in and implemented / started testing a genetic algorithm on the 17×17 challenge. I didn’t start with a 17×17 grid right away though, and instead focused on smaller, more manageable sizes first. The algorithm uses … Continue reading

Posted in Uncategorized | Leave a comment

Research: 17×17 Mutation and Crossover

This semester I’m working on solving the 17×17 problem with genetic algorithms. Last week, I started work on the Python script – implementing functions to generate random color grids (for the initial population) and score them based on the number of … Continue reading

Posted in Uncategorized | Leave a comment

Research: Dynamic Parameters

This week I attempted to improve the output of my algorithm by making some of the genetic parameters (selection ratio and mutation rate) dynamically change over the course of program execution. For example, MUTATION_RATE can be set to start at 5% … Continue reading

Posted in Uncategorized | Leave a comment

Research: Trying to Diversify

This week I tried to figure out why my algorithm wasn’t able to find a good solution, even after a million generations. After skimming over some of the writing on genetic algorithms, I came to the conclusion that my new generation selection phase … Continue reading

Posted in Uncategorized | Leave a comment

Research: Basic Code Profiling

This week I profiled my Python script in an attempt to find functions that could be optimized better. Following this simple tutorial, I ran cProfile on my code performing 100K generations and here are the results: http://pastebin.com/raw.php?i=6dWakQAL From this, I can see … Continue reading

Posted in Uncategorized | Leave a comment