Hi,<br><br>I have followed Rob suggestions on this, i.e. to substute:<br><br>(1). <i>numpy.zeros(X)</i> instead of <i>flex.double(X, 0)</i><br>(2). <i>1000*numpy.ones(X) </i>instead of <i>flex.double(X, 1000)</i><br>(3). <i>numpy.min(X) </i>for <i>flex.min(X)</i>, etc. (mean, sum)<br>
(4). <i>numpy.random.uniform(size=N)</i> for <i>flex.random_double(N) </i><br><br>However, to get this work, I also had to modify the following:<br><br>- modification (4). only works when floats are meant to be used, I guess, so in the only case: <i>rnd = numpy.random.uniform(size=self.vector_length)</i>  instead of  <i>flex.random_double(N)</i>. In the other two cases it is <i>random_values = numpy.random.random_integers(low=0.0, high=1.0, size=N)</i>  instead of  <i>flex.random_double(N)</i><br>
- Also,<i> numpy.nanargmin</i> instead of <i>flex.min_index</i><br>- Also, <i>numpy.argsort</i> instead of <i>flex.sort_permutation</i><br>- Also, <i>.copy()</i> instead of <i>.deep_copy()</i><br>- Finally, <i>numpy.random.seed(0)</i> instead of <i>flex.set_random_seed(0)</i><br>
<br>Now, it works (at least for the Rosenbrock function).<br>Thank you,<br>Andrea<br><br><br>