[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[cola:00233] ANNOUNCE: Evolvuton - Generic evolution framework for C++


-----BEGIN PGP SIGNED MESSAGE-----


Hi,

   I am pleased to announce the public release of Evolvuton, a
framework for generic evolutionary computing. In developing this
framework, care has been taken to make it as generic as possible.
Currently the component is a C++ template library, that follows
many of the design guidelines that STL has introduced in the C++
world; namely, generic programming. What I have tried to achieve
is to produce an evolutionary framework that would allow other C++
developers to use evolutionary algorithms in the context of their
own application, imposing minimal restrictions on their
application. Some of the features of the Evolvuton component are:

* It does not require a numeric fitness function, or for
that matter, a fitness function at all (you can use one if
you want to though). 

* Allows implicit or explicit fitness by selecting individuals on
the basis of a "less-than-operator".

* A C++ class (as opposed to a numeric type) can be used to
specify the fitness function - allowing non-numeric fitness to be
used.

* A population object, which is part of the Evolvuton framework,
conforms to the requirements of an STL container, allowing the use
of all the algorithms available via the Standard Template Library
(STL).

* It provides a decoupled (from the problem domain) generic
evolution framework because doesn't impose a particular
representation of the problem domain. This gives tremendous
flexibility to the developer, and solves one of the major problems
that is typically found with genetic algorithms - that of trying
to represent the problem domain as a string of bits.

* LaTeX and HTML documentation is provided.

* It only requires a few member functions that need to be
implemented in order to allow your objects to evolve. Namely: a
copy constructor, a less-than operator, a
getRandomCharacteristicFrom(), and a mutate() member function.

All the development is done in Linux, using the egcs compiler
(based on GNU gcc 2.8.0). It should be fairly easy to port/use
with other compilers that support STL. If you use/port it to
another platform please join the mailing list and send patches
so that we can make the improvements available to others. You
can join the mailing list by sending email to
evolvuton-request _at_ vrainn.com with the word "subscribe" in the
subject.


Status
======

   This software should be considered as work-in-progress, and it
has been released publicly to allow the community of developers,
researchers and enthusiasts to have early access to the project.
I believe in the bazaar model of free software development (see
below), hence I plan to release "early and often", which is why
this announcement is being made :). If you don't have C++
knowledge the software is not very useful to you, because this is
a C++ component to be used in conjunction with your libraries or
applications. The release is directed at developers that are
interested in helping with the project, or in using Evolvuton for
their applications. Because it is an early release, I can't
guarantee that the interface or the software is stable; the
documentation also needs work. This software should not be
considered a production release, it is a developers pre-alpha
release. However, if you have C++ knowledge I encourage you to
take a look at it and see how you can take advantage of using
evolutionary algorithms in your application/library. Please join
the effort, and post your ideas/code in the mailing list!

For more information about the "Bazaar vs. the Cathedral" model of
software development see:
http://sagan.earthspace.net/~esr/writings/cathedral-bazaar/


The "Bazaar vs. Cathedral" paper, BTW, has had a major influence in
the commercial world also: Netscape's decision to release the
browser source code publicly was heavily influenced by the paper.
Please check the URL above for more information.

How to contribute
=================

   I'm glad you're thinking about contributing! This software will
hopefully grow based on the contributions of people like you. The
first thing I would recommend to do is to join the mailing list by
sending email to evolvuton-request _at_ vrainn.com with the word
"subscribe" in the subject. Make sure you post to the list to let
other people know what you're working on. You can work on the
evolvuton component itself, or on some of the components that use
it, like the investbot component. Those of you interested in using
evolutionary computation to invest in the stock market might want
to join and help out with the investbot component.


How to Get the software
=======================

   You can get the software from:
   ftp://ftp.vrainn.com/pub/components/components-x.y.z.tar.gz

   Where x.y.z is the version. For example, version 0.3.1 is
called components-0.3.1.tar.gz.

   This is a slow link to the net, so please be patient :) If you
want to mirror the site, I would really appreciate it, you can
email me at ologgio _at_ vrainn.com .

   The components-x.y.z.tar.gz file contains several components:
   
   evolvuton        The generic evolution framework.
   ookit            Typically used utilities, such as cache,
                    shared pointers, dates, etc.
   stock            A component to read stock data.
   investbot        A component to invest in the stock market 
                    using evolutionary algorithms (uses the evolvuton
		    component).

More information, Mailing list, WWW, etc.
=========================================

   More information, and the HTML documentation, can be found on
the Evolvuton web pages, at http://www.vrainn.com/evolvuton/ , if
you're interested in the development and usage of Evolvuton you
should also join the mailing list by mailing
evolvuton-request _at_ vrainn.com with the word "subscribe" in the
subject. At this point, the mailing list will be used to discuss
the evolvuton component itself, and some of the other components
that use it, such as the investbot component that uses
evolutionary computation to invest in stocks. If the volume grows
too large, we'll split the mailing list into an evolvuton specific
one and an application specific list.

Legalese
=========

   I have gained much in my life from the Free Software Community. I've used
and have promoted the use of quality free software for many years. With that
in mind you can be sure that a current version of this software will always
be freely available for non-military use.

The software is Copyrighted by myself, and it is distributed under the terms
of the GNU GPL (General Public License) with the additional
restriction that the software can not be used for military purposes.

Make sure you send an email saying how you're using it how it helped with
your application/project. Please see the LICENSE file for the actual legal
stuff.


Best regards,
   Omar Loggiodice <ologgio _at_ vrainn.com>
   Atlanta, GA, USA.




____________________________________________________________________
            /   __  __  __  - __  __ / - _  __  ologgio _at_ vrainn.com
  Omar R.  /__ /_/ /_/ /_/ / /_/ /_/ / /_  /-_  CIS: 74040,1543
                  __/ __/                         
___C++/7_yrs____Virtual Reality/4_yrs____Vorl_____Linux(free)_______
Apple ]['s, remember Applesoft?




- -- 
This article has been digitally signed by the moderator, using PGP.
http://www.iki.fi/mjr/cola-public-key.asc has PGP key for validating signature.
Send submissions for comp.os.linux.announce to: linux-announce _at_ news.ornl.gov
PLEASE remember a short description of the software and the LOCATION.
This group is archived at http://www.iki.fi/liw/linux/cola.html

-----BEGIN PGP SIGNATURE-----
Version: 2.6.3ia
Charset: latin1

iQCVAgUBNPFaJlrUI/eHXJZ5AQG7pQQAgn6fRjk8cA9ECNpYQbwboAAsY090rYun
9+I637LKympAbNYbUTk+S+ASdXZVIJLu6FTeqwEHYhl2ay8e+Aa379PS/CYbGvCq
XZoa1GBjRL6C7o44R6fGKcTbKnIAr1simxtt//pCiTjoMHlksCO68waTSPEGIaZw
rhqKSNMfUDY=
=Cube
-----END PGP SIGNATURE-----

この情報があなたの探していたものかどうか選択してください。
yes/まさにこれだ!   no/違うなぁ   part/一部見つかった   try/これで試してみる

あなたが探していた情報はどのようなことか、ご自由に記入下さい。特に「まさにこれだ!」と言う場合は記入をお願いします。
例:「複数のマシンからCATV経由でipmasqueradeを利用してWebを参照したい場合の設定について」