Illumination

This module contains the main Illumination class used in the GB-BI library.

Illumination Class

class illuminate.Illuminate(config)[source]

Bases: object

apply_acquisition(molecules: List[Molecule]) List[Molecule][source]

Apply the surrogate function to a list of molecules and filter the molecules based on their acquisition function values.

Args:

molecules: List of molecules.

Returns:

List of molecules after acquisition function application.

calculate_descriptors(molecules: List[Molecule]) List[Molecule][source]

Calculate descriptors for a list of molecules and update their niche index. Removes the molcules that all outside the physicochemical ranges of the archive as specified in the configuration file.

Args:

molecules: List of molecules.

Returns:

List of molecules with valid descriptors and updated niche indices.

calculate_fitnesses(molecules: List[Molecule]) List[Molecule][source]

Calculate fitnesses for a list of molecules. Splits the incoming list in the case that the maximum amount of fitness calls would be exceeded.

Args:

molecules: List of molecules.

Returns:

List of molecules with calculated fitnesses.

initial_population() None[source]

Generate and process the initial population of molecules.

This function loads initial molecules from a database, processes them through the arbiter, applies the descriptor and fitness calculations, adds them to the archive and uses them es a prior for the surrogate model. Finally, it updates the controller state.

process_molecules(molecules: List[Molecule]) List[Molecule][source]

Process a list of molecules by fitlering out unwanted or invalid structures, calcualting phsyichcemical descriptors, applying the acquisition rules based on the surrogate model and calculating the actual fitness for the remaining molecules.

Args:

molecules: List of molecules to be processed.

Returns:

List of processed molecules.

illuminate.launch(config) None[source]