Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Java > [ANN] Watchmaker Framework for Evolutionary Algorithms version 0.1 (first public release)

Reply
Thread Tools

[ANN] Watchmaker Framework for Evolutionary Algorithms version 0.1 (first public release)

 
 
Daniel Dyer
Guest
Posts: n/a
 
      09-25-2006
Version 0.1 of the Watchmaker Framework for Evolutionary Algorithms is
available for download from the project page
(https://watchmaker.dev.java.net/). The framework requires Java 5.0 and a
familiarity with generics.

I have also uploaded the first draft of the first two parts of a tutorial
on how to use the framework to implement evolutionary algorithms in Java:

Part 1 - https://watchmaker.dev.java.net/tutorial1.html
Part 2 - https://watchmaker.dev.java.net/tutorial2.html

This all still very much work-in-progress, but feel free to download and
play, and to make comments and suggestions for improvements to both the
software and tutorial.

Dan.

--
Daniel Dyer
http://www.uncommons.org
 
Reply With Quote
 
 
 
 
Oliver Wong
Guest
Posts: n/a
 
      09-25-2006

"Daniel Dyer" <"You don't need it"> wrote in message
news(E-Mail Removed)...
> Version 0.1 of the Watchmaker Framework for Evolutionary Algorithms is
> available for download from the project page
> (https://watchmaker.dev.java.net/). The framework requires Java 5.0 and a
> familiarity with generics.
>
> I have also uploaded the first draft of the first two parts of a tutorial
> on how to use the framework to implement evolutionary algorithms in Java:
>
> Part 1 - https://watchmaker.dev.java.net/tutorial1.html
> Part 2 - https://watchmaker.dev.java.net/tutorial2.html
>
> This all still very much work-in-progress, but feel free to download and
> play, and to make comments and suggestions for improvements to both the
> software and tutorial.


How about a candidate factory which generates a random XML document
which complies to a provided XSD? Or a subset might be handy (e.g. include
elements, and perhaps attributes, but no CDATA, processor instructions,
comments, etc.) Basically, something to generate a tree from a well defined
grammar (XML's the simplest implementation of this that came to mind).

- Oliver

 
Reply With Quote
 
 
 
 
Daniel Dyer
Guest
Posts: n/a
 
      09-25-2006
On Mon, 25 Sep 2006 21:54:42 +0100, Oliver Wong <(E-Mail Removed)>
wrote:

>> This all still very much work-in-progress, but feel free to download
>> and play, and to make comments and suggestions for improvements to both
>> the software and tutorial.

>
> How about a candidate factory which generates a random XML document
> which complies to a provided XSD? Or a subset might be handy (e.g.
> include elements, and perhaps attributes, but no CDATA, processor
> instructions, comments, etc.) Basically, something to generate a tree
> from a well defined grammar (XML's the simplest implementation of this
> that came to mind).


It's a possibility. What kind of problems do you envisage applying this
to?

There's tree-based stuff in genetic programming, which I haven't really
given much thought to yet, though I'd like to incorporate it at some
point. I guess your suggestion would fit in quite nicely with this.

Dan.

--
Daniel Dyer
http://www.uncommons.org
 
Reply With Quote
 
Oliver Wong
Guest
Posts: n/a
 
      09-25-2006

"Daniel Dyer" <"You don't need it"> wrote in message
news(E-Mail Removed)...
> On Mon, 25 Sep 2006 21:54:42 +0100, Oliver Wong <(E-Mail Removed)>
> wrote:
>
>>> This all still very much work-in-progress, but feel free to download
>>> and play, and to make comments and suggestions for improvements to both
>>> the software and tutorial.

>>
>> How about a candidate factory which generates a random XML document
>> which complies to a provided XSD? Or a subset might be handy (e.g.
>> include elements, and perhaps attributes, but no CDATA, processor
>> instructions, comments, etc.) Basically, something to generate a tree
>> from a well defined grammar (XML's the simplest implementation of this
>> that came to mind).

>
> It's a possibility. What kind of problems do you envisage applying this
> to?


Generating random programs/algorithms to solve a given problem.
Honestly, though, I haven't put much thought into this, so I'm not sure how
feasible it would be. If I had to undertake this task, I'd probably try to
generate code for a functional language with zero side effects (so variable
assignments don't exist, and so variables don't exist, and so I don't have
to worry about checking that a variable is declared before it's used, for
example).

An easy mutation scheme would be to select a random point in the tree,
discard everything below it, and generate a new subtree branch. The problem
with that is that the degree of "mutancy" depends on how high up in the tree
the random point is chosen, and depending on the grammar, there may be zero
randomness involved in selecting the children below a certain point. I'm not
sure how one would implement cross-over with trees, however. Did you
implement cross-over for permutations, and if so, how did you do it?

- Oliver

 
Reply With Quote
 
Daniel Dyer
Guest
Posts: n/a
 
      09-25-2006
On Mon, 25 Sep 2006 22:20:46 +0100, Oliver Wong <(E-Mail Removed)>
wrote:

>>> How about a candidate factory which generates a random XML
>>> document which complies to a provided XSD? Or a subset might be handy
>>> (e.g. include elements, and perhaps attributes, but no CDATA,
>>> processor instructions, comments, etc.) Basically, something to
>>> generate a tree from a well defined grammar (XML's the simplest
>>> implementation of this that came to mind).

>>
>> It's a possibility. What kind of problems do you envisage applying
>> this to?

>
> Generating random programs/algorithms to solve a given problem.
> Honestly, though, I haven't put much thought into this, so I'm not sure
> how feasible it would be. If I had to undertake this task, I'd probably
> try to generate code for a functional language with zero side effects
> (so variable assignments don't exist, and so variables don't exist, and
> so I don't have to worry about checking that a variable is declared
> before it's used, for example).


The functional idea is one that had occurred to me too, though I haven't
really considered it beyond "hey, maybe I could evolve Haskell
programs...". http://www.genetic-programming.org/ has a lot of detail
about evolving programs.

> An easy mutation scheme would be to select a random point in the
> tree, discard everything below it, and generate a new subtree branch.
> The problem with that is that the degree of "mutancy" depends on how
> high up in the tree the random point is chosen, and depending on the
> grammar, there may be zero randomness involved in selecting the children
> below a certain point. I'm not sure how one would implement cross-over
> with trees, however. Did you implement cross-over for permutations, and
> if so, how did you do it?


When implementing an EA for the travelling salesman problem, I used only
mutation for the permutations. However, ordered cross-over operations are
possible (see http://www.permutationcity.co.uk/pro...tants/tsp.html
for an example).

Dan.

--
Daniel Dyer
http://www.uncommons.org
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Re: Where to get stand alone Dot Net Framework version 1.1, version 2.0, version 3.0, version 3.5, version 2.0 SP1, version 3.0 SP1 ? PA Bear [MS MVP] ASP .Net 0 02-05-2008 03:28 AM
Re: Where to get stand alone Dot Net Framework version 1.1, version 2.0, version 3.0, version 3.5, version 2.0 SP1, version 3.0 SP1 ? V Green ASP .Net 0 02-05-2008 02:45 AM
[ANN] Watchmaker Framework for Evolutionary Algorithms version 0.3.0 released Daniel Dyer Java 2 12-26-2006 01:02 PM
microsoft.public.certification, microsoft.public.cert.exam.mcsa, microsoft.public.cert.exam.mcad, microsoft.public.cert.exam.mcse, microsoft.public.cert.exam.mcsd realexxams@yahoo.com Microsoft Certification 0 05-10-2006 02:35 PM
microsoft.public.dotnet.faqs,microsoft.public.dotnet.framework,microsoft.public.dotnet.framework.windowsforms,microsoft.public.dotnet.general,microsoft.public.dotnet.languages.vb Charles A. Lackman ASP .Net 1 12-08-2004 07:08 PM



Advertisments