biophysics_fittingoptimizer

optimizer

Multi-objective optimization algorithm.

This code has been adapted from BluePyOpt [1] such that:

  • a start population can be defined.

  • such that the optimizations can be organized in a data base.

  • to be executed on a distributed system using dask.

  • to return all objectives, not only the combined ones.

The top-level pipeline can be started with start_run().

Note

Part of this module (as marked with comments) is licensed under the GNU Lesser General Public License version 3.0 as published by the Free Software Foundation:

Copyright (c) 2016, EPFL/Blue Brain Project. Part of this file is part of BluePyOpt. This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License version 3.0 as published by the Free Software Foundation. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.

Functions

robust_int(x)

Robustly convert something to an integer.

get_max_generation(db_run)

Returns the index of the next iteration in a database.

save_result(db_run, features, objectives)

Save the results of an optimization iteration in a database.

setup_db_run(db_setup, run)

Create a sub-database for each run of the optimization algorithm.

get_objective_function(db_setup)

Get the objective function for the optimization.

get_mymap(db_setup, db_run, c, satisfactory_boundary_dict, n_reschedule_on_runtime_error)

Get a map function for evaluating the parameters.

eaAlphaMuPlusLambdaCheckpoint(population, toolbox, mu, cxpb, mutpb, ngen, stats, halloffame, cp_frequency, db_run, continue_cp, db)

This is the \((~\alpha,\mu~,~\lambda)\) evolutionary algorithm

run(self, max_ngen, offspring_size, continue_cp, cp_filename, cp_frequency, pop, db)

This method is a class method of the BluePyOpt optimisations.DEAPOptimisation class.

get_population_with_different_n_objectives(old_pop, n_objectives)

Adapt the number of objectives of individuals

start_run(db_setup, n, pop, client, continue_cp, offspring_size, eta, mutpb, cxpb, max_ngen, satisfactory_boundary_dict)

Start an optimization run as specified in db_setup.