Projects / Genetic Algorithm File Fitter

Genetic Algorithm File Fitter

Genetic Algorithm File Fitter, GAFFitter for short, is a tool based on a genetic algorithm (GA) that tries to fit a collection of items into as few as possible volumes of a specific size. For example, the items might be files/directories and the volumes might be CDs or DVDs. The task of arranging items in such manner that the number of required bins is minimized is called Bin Packing, a NP-hard combinatorial problem for which no deterministic polynomial-time algorithm is known. Using heuristics, such as GAs, it is usually possible to approximate -- and often reach -- the best solution for the problem within a reasonable time.

Operating Systems

Recent releases

  •  16 Aug 2008 17:43

    Release Notes: This release features major changes. The genetic algorithm search was completely rewritten, and now adopts a more suitable approach able to perform better optimizations. Some options were modified/added in order to improve GAFFitter as a filter, making integration with other tools easier and more reliable. Python scripts were added, including scripts for ISO 9660 image creation and integration of GAFFitter with CD/DVD burning applications (like K3B and Brasero).

    •  04 Jun 2008 11:51

      Release Notes: This release was essentially a maintenance release. The license was upgraded to the GNU GPLv3. The Brute Force search was improved and now accepts any number of input files. An incompatibility (compilation error) with GCC-4.3 was fixed.

      •  28 Mar 2007 12:24

        Release Notes: This release fixes a bug regarding an uninitialized variable and changes the default behavior of GAFFitter, which now extracts the volumes as much as possible (with unlimited iterations).

        •  28 Aug 2006 20:54

          Release Notes: This release features an entirely new command line parser and implements the Split "search" method. Two new formatting options have been introduced. There are also code cleanups, a fix for a compilation error on Solaris, and other minor changes.

          •  02 Aug 2006 11:51

            Release Notes: This release fixes compilation errors on some architectures. A case-insensitive sorting option was added, and other minor changes were also made.


            Project Spotlight


            A Fluent OpenStack client API for Java.


            Project Spotlight

            TurnKey TWiki Appliance

            A TWiki appliance that is easy to use and lightweight.