Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 976 Categories, Downloaded 29.547.506 Times

PGAPy 0.1

  Date Added: August 13, 2010  |  Visits: 781


Report Broken Link
Printer Friendly Version

Product Homepage
Download (76 downloads)

PGAPy is a wrapper for pgapack, the parallel genetic algorithm library, a powerfull genetic algorithm library by D. Levine, Mathematics and Computer Science Division Argonne National Laboratory. The library is written in C. PGAPy wraps this library for use with Python. The original pgapack library is already quite old and not very actively maintained -- still Ive found it one of the most complete and accurate (and fast, although this is not my major concern when wrapping it to python) genetic algorithm implementations out there with a lot of bells and whistles for experimentation. Thats why I wanted to use it in Python, too. There currently is not much documentation for PGAPy. You really, absolutely need to read the documentation that comes with pgapack -- and of course you need the pgapack library. The pgapack library can be downloaded from the pgapack ftp site, it is written in ANSI C and therefore should run on most platforms. I have tested it on Linux only and Ill currently not provide Windows versions. To get you started, Ive included a very simple example in that implements the "Maxbit" example -- modified to use integer genes instead of bits -- from the pgapack documentation. This illustrates several points: - Your class implementing the genetic algorithm needs to inherit from pga.PGA (pga is the PGAPy wrapper module). - You need to define an evaluation function called evaluate that returns a number indicating the fitness of the gene given with the parameters p and pop that can be used to fetch allele values from the gene using the get_allele method, for more details refer to the pgapack documentation. Y- u can define additional functions overriding built-in functions of the pgapack library, illustrated by the example of print_string. Note that we do a call to the original print_string method of our PGA superclass. - The constructor of the class needs to define the Gene type, in the example we use an integer (type (2), a python expression for the built-in integer datatype). - The length of the gene (100 in the example) needs to be given. -We want to maximize the numbers returned by our evaluation function, set the parameter maximize to False if you want to minimize. - We can define an array of init values each entry containing a sequence with lower and upper bound. The array has to have the length of the gene. Note that the upper bound is included in the range of possible values (unlike the python range operator but compatible with the pgapack definition). - In the constructor of the class we can add parameters of the genetic algorithm. Not all parameters of pgapack are wrapped yet, currently you would need to consult the sourcecode of PGAPy to find out which parameters are wrapped. In the example we define several print options. - Finally the genetic algorithm is started with the run method..

Requirements: No special requirements
Platforms: Linux
Keyword: Algorithm Example Genetic Genetic Algorithm Genetic Algorithm Library Libraries Library Parallel Genetic Algorithm Pgapack Pgapy Programming Python
Users rating: 0/10

License: Freeware Size: 69.63 KB
More Reviews or Write Review

Network & Internet  -  Parallel Genetic Algorithm Library 0.99
Parallel Genetic Algorithm Library (or PGAL for short) is a C++ toolkit for simply, efficiently, and swiftly producing genetic algorithm code that works across multiple processors. This is useful not only for those with multi-processor...
75.78 KB  
Libraries  -  BSPonMPI 0.2
BSPonMPI is a platform independent software library for developing parallel programs. BSPonMPI implements the BSPlib standard (with one small exception) and runs on all machines which have MPI. This last property is the main feature of this...
378.88 KB  
Development Tools  -  Genetic Algorithm Utility Library 1.1
The Genetic Algorithm Utility Library (or, GAUL for short) is a flexible programming library designed to aid in the development of applications that use genetic, or evolutionary, algorithms. It provides data structures and functions for handling...
552.96 KB  
Science  -  Molevolve 0.2.0
Molevolve is a Java library for running a Genetic Algorithm to model the 3-dimensional structures of peptide chains from amino-acid sequences. Client code can specify its own peptide chain model, fitness functions and GA operations. Requires JDK 1.5.
1.98 MB  
Libraries  -  Algorithm::Diff::Apply 0.2.3
Algorithm::Diff::Apply is a Perl module to apply one or more Algorithm::Diff diffs. SYNOPSIS ## Single-diff form: use Algorithm::Diff::Apply qw{apply_diff}; my @ary = ...; my @diff = ...; # some call to Algorithm::Diff::diff() my...
12.29 KB  
Libraries  -  Algorithm::SISort 0.14
Algorithm::SISort is a Perl module that contains select and insert sorting algorithm. SYNOPSIS use Algorithm::SISort qw(Sort Sort_inplace); @sorted_list = Sort {$_[0] $_[1]} @unsorted_list; # ... or ... $number_of_comparisons =...
4.1 KB  
Programming  -  Lzlib 1.3
The lzlib compression library provides in-memory LZMA compression and decompression functions, including integrity checking of the uncompressed data. The compressed data format used by the library is the lzip format. The variables and...
92.16 KB  
Development Tools  -  Harmony Element Algorithm 1.0
We propose a new global optimization algorithm based on a harmony search scheme, termed as harmony element string algorithm (abbreviated as HEA). The algorithm has five fundamental features: (1) The states of the system is represented by strings...
276.48 KB  
Education  -  Algorithm And Data Structure
Algorithm And Data Structure is an application that has contains subject matter algorithm and data structure using java language. Requirements: Windows Phone 8.1, Windows Phone 8
1024 KB  
Mathematics  -  Geneious for Mac OS 5.1.5
An automatically-updating library of genomic and genetic data; that provides a fully integrated, visually-advanced toolset for - Sequence alignment and phylogenetics - Sequence analysis, Contig assembly, - primers, restriction analysis - BLAST....
77 MB  
Programming  -  FLEX-db Digital Asset Manager 3.0.9
FLEX-db - an enterprise Digital Asset Manager (DAM). It ingests and links metadata with files, creates thumbnails, and processes files using business rules. FLEX-db has a JSP client, Java app server for file input and output and an EJB metadata...
21.57 MB  
Programming  -  Libicom 0.9.0
The libicom library is a character based dynamicly linked library for Linux. It is used to remotely control the Icom IC-R8500 wide band receiver via an RS232 link. All call and return parameters to the control functions are character string based....
20.48 KB  
Programming  -  dotdesktop 0.3
Dotdesktop library provides ability to parse desktop entry file and access the information in a convenient way. Desktop entry file format is defined by, it is used to describe information about an application such as the name and...
327.68 KB  
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  libyasl 0.2
Libyasl is a C++ class library to easily realize TCP/UDP/Multicast clientsand servers in IPv4 and IPv6 environments under GNU/Linux systems.
143.36 KB  
Libraries  -  EuGTK 4.8.9
Makes it easy to develop good- looking, fast, cross-platform programs that run on Linux, OS X, and Windows. Euphoria is a very fast interpreted/compiled language with straight-forward syntax. EuGTK allows programming in a clean, object-oriented...
10.68 MB  
Libraries  -  Linux User Group Library Manager 1.0
The LUG Library Manager is a project to help Linux User Groups start their own library. A LUG library is helpful to the community at large because it increases access to information, and gives everyone the opportunity to become more knowledgeable.
5.35 KB  
Libraries  -  Module::MakefilePL::Parse 0.12
Module::MakefilePL::Parse is a Perl module to parse required modules from Makefile.PL. SYNOPSIS use Module::MakefilePL::Parse; open $fh, Makefile.PL; $parser = Module::MakefilePL::Parse->new( join("", ) ); $info = $parser->required;...
8.19 KB  
Libraries  -  sqlpp 0.06
sqlpp Perl package is a SQL preprocessor. sqlpp is a conventional cpp-alike preprocessor taught to understand SQL ( PgSQL, in particular) syntax specificities. In addition to the standard #define/#ifdef/#else/#endif cohort, provides also...
10.24 KB  
Libraries  -  App::SimpleScan::Substitution::Line 2.02
App::SimpleScan::Substitution::Line is a line with optional fixed variable values. SYNOPSIS my $line = App::SimpleScan::Substitution::Line->new(" this "); # Use only this value when substituting " ". $line->fix(substituite =>...
54.27 KB