[ 
https://issues.apache.org/jira/browse/MAHOUT-56?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Deneche A. Hakim updated MAHOUT-56:
-----------------------------------

    Attachment: watchmaker-tsp.patch

*Description of the changes*
I made the code problem independent, and so I changed the class names to remove 
any reference to TSP.
The classes are :
. StringUtils: inspired from the future Stringifier of Hadoop. Translates any 
given object (even not a Serializable one) 
to a one-line xml representation, and vice versa.
. MahoutEvolutionEngine: generic distributed Genetic algorithms. Now the 
constructor takes a FitnessEvaluator
  that takes care of evaluating every candidate.
. MahoutEvaluator: evaluate a population of individuals using a given 
FitnessEvaluator. Uses StringUtils to store 
the population into an input file, and the FitnessEvaluator into the JobConf.
. EvalMapper: Mapper that evaluate a candidate using the FitnessEvaluator 
passed into the JobConf.

Note that we no more need watchmaker-examples to build the code, but we still 
need it in the tests to 
compare this code with the reference implementation.

*Needed libraries*
you'll need the xstream library [http://xstream.codehaus.org/], I used the 
1.2.1 version. Add the following jars to core/lib

xpp3_min-*.jar
xstream-*.jar

I also included the licenses for all the libraries that I added. And if we plan 
to use xpp3_min-*.jar we need 
to include the following lines somewhere in the Mahout documentation or in the 
software:

  "This product includes software developed by the Indiana University
  Extreme! Lab (http://www.extreme.indiana.edu/)."

*Next steps*
There is another example with wathmaker that I want to test with this new code, 
just to confirm that 
the integration is fine. Then we can talk in the mailing list about the next 
move, wich could be one of the following :
. meta-mutations
. for now Im assuming that each node contains the whole dataset needed to 
evaluate a candidate. But if the dataset is large enough 
to span on multiple nodes, the user should have the possibility of writing the 
evaluation funtion in terms of mappers and reducers
. ...any suggestion ?


> Watchmaker Integration
> ----------------------
>
>                 Key: MAHOUT-56
>                 URL: https://issues.apache.org/jira/browse/MAHOUT-56
>             Project: Mahout
>          Issue Type: Task
>            Reporter: Deneche A. Hakim
>         Attachments: watchmaker-tsp.patch, watchmaker-tsp.patch
>
>
> The goal of this task is to allow watchmaker definded problems be solved in 
> Mahout.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to