File: README

package info (click to toggle)
gaffitter 0.6.0-5
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 340 kB
  • sloc: cpp: 2,295; makefile: 57
file content (78 lines) | stat: -rw-r--r-- 2,739 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
$Id: README 192 2008-07-14 20:24:37Z daaugusto $

------------------------------------------
Genetic Algorithm File Fitter -- gaffitter
------------------------------------------

  http://gaffitter.sourceforge.net/          (home page)
  http://sourceforge.net/projects/gaffitter/ (project page)

  2005-2008 - Douglas A. Augusto (daaugusto@gmail.com)


== About ==

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 and the volumes might be CDs or DVDs.  This is called the Bin
Packing Problem, 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.

GAFFitter was created with the intent to minimize the number of CDs or
DVDs used to store a set of files whose total size is greater than the
medium capacity. It was further extended to work directly with any set
of items, whether it is composed of files/directories or not.

GAFFitter is written in C++ and is currently available as a command-line
program for POSIX-compliant systems (GNU/Linux, BSD derivatives and so
on).


== Features ==

GAFFitter is characterized by five main features, namely:

   - The global search based on a genetic algorithm.

   - The filter-oriented design, that is, a versatile interface suitable
     for integration with other tools and front-ends. 

   - The possibility to bypass filenames as the input and to directly
     read a list of items and their sizes. 

   - The great flexibility provided by the input arguments, which
     controls the behaviour of GAFFitter, including many genetic
     algorithm parameters.

   - The fact that it is a Free Software, which ensures the freedom for
     the users to study, change and redistribute GAFFitter.


=== Usage ===

The simplest way to run GAFFitter is as follows:

   gaffitter -t 700m *

This command will arrange the files and subdirectories of the current
directory into sets of at most 700 megabytes (a typical CD), in such a
way that the number of sets is minimized. In other words, GAFFitter will
try to fit the given files and directories into as few as possible
volumes of 700MB.


=== More information ===

A comprehensive description of GAFFitter's options and parameters,
several usage examples, and instructions on how to get its source code
can be found on GAFFitter's website at http://gaffitter.sf.net


== License ==

GNU General Public License (GPL) version 3 (or later)

   http://www.gnu.org/licenses/gpl.txt