| 
  | __init__(self,
        initial_population,
        properties,
        structure_score_threshold=-50.0,
        eval_kwargs={},
        crossovers=None,
        mutators=None,
        fragment_libs=['optoelectronics'],
        script_evaluator=None,
        generations=10,
        population=8,
        crossover_rate=90.0,
        mutation_rate=90.0,
        selection='roulette_wheel',
        tournament_size=2,
        terminators=['unproductive', 'all_properties'],
        num_unproductive=6,
        scaling='sigma_truncation',
        elitism=1,
        random_seed=None,
        no_minimize=False,
        file_base_name='genopt',
        tpp_ga=1,
        no_open_shell=False,
        props_to_remove=None,
        jobbe=None,
        conformational_search=False,
        freezers=['remainder', 'previous'],
        inoculate=['no_child', 'bad_structure'],
        logger=None)(Constructor)
 |  |  Create an instance. 
    Parameters:
        initial_population(list) - the initial population of schrodinger.structure.Structureproperties(list of Property) - the properties to be optimized, including structural properties 
          as well as more physical calculable observablesstructure_score_threshold(float) - if structure-based properties are being sought and if the base 
          evaluator will be used then subjobs on structures with structure 
          scores below this value will not be launched but rather such 
          structures treated as skipseval_kwargs(dict) - a dictionary of key value pairs that will be passed onto 
          scriptlauncher.addScriptArgs(), both keys and values must be 
          single strings, values can contain whitespacecrossovers(list) - contains two-element tuples each of which holds a crossover 
          operator to be used in the optimization along with a weightmutators(list) - contains two-element tuples each of which holds a mutation 
          operator to be used in the optimization along with a weightfragment_libs(list) - strings specifying fragment libraries to be used, can be either 
          module constants from FRAGMENT_LIBS.keys() (or ALL if all of 
          those are desired) or the names of Maestro files (including the 
          file extensions) containing fragments collected by the userscript_evaluator(method) - the evaluator function to be called to score individuals during 
          the optimization, takes a StructureGenome and returns a 
          launcher.Launchergenerations(int) - the number of generations for which to run the optimizationpopulation(int) - the population size to use in the optimization, can be 
          less-than-or-equal-to the length of initial_populationcrossover_rate(float) - the rate of crossover as a percentagemutation_rate(float) - the rate of mutation as a percentageselection(str) - the selection protocol used to select individuals to the gene 
          pool for the upcoming generationtournament_size(int) - the size of tournament to use if using tournament based 
          selection, unused if a tournament based selection is not being 
          usedterminators(list) - list of strings that specify the termination protocols to be used
          to terminate the optimization, typically more than one is 
          specified only if the unproductive protocol is being usednum_unproductive(int) - if the unproductive protocol is being used to terminate the 
          optimization then this integer specifies how many unproductive 
          cycles are allowed before terminating, unused if a different 
          termination protocol is usedscaling(str) - specifies the scaling protocol to use, scaling scales the raw 
          scores of the individuals to produce fitness scores to ease 
          selection in cases where raw scores are nearly equalelitism(int) - specify the number of elite individuals guaranteed to be added to
          the gene pool for the upcoming generation, zero disables elitismrandom_seed(None or int) - the random seed, if None then system time will be usedno_minimize(bool) - specify that the offspring structures generated by the crossover 
          and mutation operators not be geometry optimized prior to 
          selectionfile_base_name(str) - base name to use for output and generation log filestpp_ga(int) - a threads-per-processor value, used to parallelize the scoring of
          the individuals during the optimization, this option simply forks
          out tpp_ga simultaneous processes that reside on the same node, 
          if your evaluation function supports parallelization and you wish
          to utilize a second level of parallelization of each individual 
          evaluation then pass those arguments in eval_kwargsno_open_shell(bool) - if True then do not allow the processing of open shell molecules,
          False otherwiseprops_to_remove(list) - a list of structure property keys to be removed prior to the 
          evaluation stagejobbe(schrodinger.job.jobcontrol._Backend) - the jobcontrol backend of the driver jobconformational_search(bool or str) - specifies whether a Macromodel conformational search will be 
          performed prior to evaluation, when a string it specifies a 
          simplified Macromodel input file containing extra optionsfreezers(list) - a collection of freezers containing structures that are used to 
          swap out individuals from the populationinoculate(list) - the list of circumstances under which to use the structure 
          freezerslogger(logging.Logger) - output loggerOverrides:
        object.__init__
     |