#!/usr/bin/env python # coding: utf-8 # In[1]: from cameo.strain_design.heuristic import ReactionKnockoutOptimization from cameo import load_model from cameo.strain_design.heuristic.objective_functions import biomass_product_coupled_yield, product_yield, number_of_knockouts from cameo.flux_analysis.simulation import fba import cameo import inspyred # In[2]: model = load_model("../tests/data/iJO1366.xml") # In[3]: of1 = product_yield(model.reactions.EX_ac_lp_e_rp_.id, model.reactions.EX_glc_lp_e_rp_.id) of2 = number_of_knockouts() of3 = biomass_product_coupled_yield(model.reactions.Ec_biomass_iJO1366_core_53p95M.id, model.reactions.EX_ac_lp_e_rp_.id, model.reactions.EX_glc_lp_e_rp_.id) # In[ ]: ko = ReactionKnockoutOptimization(model=model, objective_function=[of1, of2], simulation_method=fba, heuristic_method=inspyred.ec.emo.NSGA2) # In[ ]: ko.run(max_evaluations=50000, n=10, mutation_rate=0.3, populations_size=100, crossover_rate=0.2) # In[ ]: