Print

Print


It looks like the slave thinks it needs to load the MasterProblem as a problem, which only the master should do. What I do is organize my params files like this:

app.params
app-master.params
app-slave.params

And then all app-master.params contains is this:
   parent.0 = app.params
   eval.masterproblem = ec.eval.MasterProblem
   eval.master.port = 15000 (NOT eval.masterproblem.port!)
   eval.masterproblem.job-size = 1 (or whatever)
   eval.masterproblem.max-jobs-per-slave = 1 (or whatever)
   eval.compression = true
And all app-slave.params contains is this:

   parent.0 = app-master.params
   eval.master.host = 127.0.0.1 (or whatever)
   eval.return-inds = false (or whatever)
Note that you set eval.masterproblem to ec.eval.MasterProblem. You should leave eval.problem set to the actual Problem.

Hope that helps,

--Rob

On Feb 4, 2011, at 12:10 PM, Nikola N. wrote:

Hello, I have tried to start the example master / slave: coevolve1, run
single computer.

I have set the following lines in the coevolve1.master.params  and
coevolve1.slave.params:

verbosity = 0
eval.compression = false

However I experienced problems by starting the coevolve1 master/slave. Here
is the printout:
- Master response:

Threads:  breed/1 eval/1
Seed: -241285081
Job: 0
Setting up
Initializing Generation 0
Slave /127.0.0.1/1296838850404 connected successfully.
Slave(/127.0.0.1/1296838850404) Slave is shutting down....


- Slave response:
...
reading next problem
Read problem: 2
Exception in thread "MainThread: " java.lang.NullPointerException
       at ec.eval.MasterProblem.evaluate(MasterProblem.java:267)
       at ec.eval.Slave.evaluateGroupedProblemForm(Slave.java:639)
       at ec.eval.Slave.main(Slave.java:457)


- Also since there are going to be some changes around coevolve stuff, are
there any changes also planned to be added to the master/slave ?


Nikola