{"push_id":702544180,"size":2,"distinct_size":1,"ref":"refs/heads/master","head":"5aee7c6d549b61bee50c135fbed6b76588fd22fc","before":"edd6dae4b19d72a456327451a688a3dee5e24312","commits":[{"sha":"954da7112ff451fbbea25520b80d378b2c536f16","author":{"email":"f0cabc265115644f7c6488b2ef6418e677bb8232@gmail.com","name":"Pavel Ponomarev"},"message":"DE for parallel\n\nSolves #4864\r\nEnables parallel evaluation of objective function and makes code more general and universal for various real-world engineering practical applications.\r\nChanges:\r\n1. Added flag `vectorize` (default False) to enable parallelization externally. Name `vectorize` was changed from `parallel` in #4864 to highlight that parallelization is not performed inside the module itself but rather within the user-created function similar to `numpy.vectorize`.\r\n2. Added flag `aggressive` (default True) to enable aggressive mutation strategy as discussed in #4853\r\n3. Added optional variable `njobs` which defines the size of subpopulations for quasi-aggressive (#4864) mutation in parallel case.\r\n4. `callback` is modified to expose the whole population, not just the best individual. This is required to set up custom stopping criteria which can be useful in real-life engineering problems with computationally-expensive objective functions. This way the search process can be stopped with an arbitrary criterion and computation time would not be wasted. See e.g.  https://scholar.google.com/scholar?cluster=15734086883203880529 \r\n5.Option `maxfun` and warning check for 'maxfev' are removed as not necessary. The author of original code was also skeptical about usefulness of this at lines 286, 287. Additionally it can not be used in parallel.\r\n6. Documentation strings in DifferentialEvolutionSolver class were removed as those are identical to the module documentation. I do not see a reason why the same documentation should be maintained in two different places.\r\n7. The documentation and examples are updated according to the introduced changes.","distinct":false,"url":"https://api.github.com/repos/pavelponomarev/scipy/commits/954da7112ff451fbbea25520b80d378b2c536f16"},{"sha":"5aee7c6d549b61bee50c135fbed6b76588fd22fc","author":{"email":"f0cabc265115644f7c6488b2ef6418e677bb8232@gmail.com","name":"Pavel Ponomarev"},"message":"Merge pull request #1 from pavelponomarev/pavelponomarev-patch-1\n\nDE for parallel","distinct":true,"url":"https://api.github.com/repos/pavelponomarev/scipy/commits/5aee7c6d549b61bee50c135fbed6b76588fd22fc"}]}