def goal_directed_suite_v1() -> List[GoalDirectedBenchmark]: max_logP = 6.35584 return [ isomers_c11h24(mean_function='arithmetic'), isomers_c7h8n2o2(mean_function='arithmetic'), isomers_c9h10n2o2pf2cl(mean_function='arithmetic', n_samples=100), hard_cobimetinib(max_logP=max_logP), hard_osimertinib(ArithmeticMeanScoringFunction), hard_fexofenadine(ArithmeticMeanScoringFunction), weird_physchem(), # start pop benchmark # e.g. start_pop_ranolazine(), # similarity Benchmarks # explicit rediscovery similarity( smiles='CC1=CC=C(C=C1)C1=CC(=NN1C1=CC=C(C=C1)S(N)(=O)=O)C(F)(F)F', name='Celecoxib', fp_type='ECFP4', threshold=1.0, rediscovery=True), similarity( smiles='Cc1c(C)c2OC(C)(COc3ccc(CC4SC(=O)NC4=O)cc3)CCc2c(C)c1O', name='Troglitazone', fp_type='ECFP4', threshold=1.0, rediscovery=True), similarity( smiles='CN(C)S(=O)(=O)c1ccc2Sc3ccccc3C(=CCCN4CCN(C)CC4)c2c1', name='Thiothixene', fp_type='ECFP4', threshold=1.0, rediscovery=True), # generate similar stuff similarity(smiles='Clc4cccc(N3CCN(CCCCOc2ccc1c(NC(=O)CC1)c2)CC3)c4Cl', name='Aripiprazole', fp_type='FCFP4', threshold=0.75), similarity(smiles='CC(C)(C)NCC(O)c1ccc(O)c(CO)c1', name='Albuterol', fp_type='FCFP4', threshold=0.75), similarity( smiles= 'COc1ccc2[C@H]3CC[C@@]4(C)[C@@H](CC[C@@]4(O)C#C)[C@@H]3CCc2c1', name='Mestranol', fp_type='AP', threshold=0.75), logP_benchmark(target=-1.0), logP_benchmark(target=8.0), tpsa_benchmark(target=150.0), cns_mpo(max_logP=max_logP), qed_benchmark(), median_camphor_menthol(ArithmeticMeanScoringFunction) ]
def goal_directed_suite_v2() -> List[GoalDirectedBenchmark]: return [ # explicit rediscovery similarity( smiles='CC1=CC=C(C=C1)C1=CC(=NN1C1=CC=C(C=C1)S(N)(=O)=O)C(F)(F)F', name='Celecoxib', fp_type='ECFP4', threshold=1.0, rediscovery=True), similarity( smiles='Cc1c(C)c2OC(C)(COc3ccc(CC4SC(=O)NC4=O)cc3)CCc2c(C)c1O', name='Troglitazone', fp_type='ECFP4', threshold=1.0, rediscovery=True), similarity( smiles='CN(C)S(=O)(=O)c1ccc2Sc3ccccc3C(=CCCN4CCN(C)CC4)c2c1', name='Thiothixene', fp_type='ECFP4', threshold=1.0, rediscovery=True), # generate similar stuff similarity(smiles='Clc4cccc(N3CCN(CCCCOc2ccc1c(NC(=O)CC1)c2)CC3)c4Cl', name='Aripiprazole', fp_type='ECFP4', threshold=0.75), similarity(smiles='CC(C)(C)NCC(O)c1ccc(O)c(CO)c1', name='Albuterol', fp_type='FCFP4', threshold=0.75), similarity( smiles= 'COc1ccc2[C@H]3CC[C@@]4(C)[C@@H](CC[C@@]4(O)C#C)[C@@H]3CCc2c1', name='Mestranol', fp_type='AP', threshold=0.75), # isomers isomers_c11h24(), isomers_c9h10n2o2pf2cl(), # median molecules median_camphor_menthol(), median_tadalafil_sildenafil(), # all other MPOs hard_osimertinib(), hard_fexofenadine(), ranolazine_mpo(), perindopril_rings(), amlodipine_rings(), sitagliptin_replacement(), zaleplon_with_other_formula(), valsartan_smarts(), decoration_hop(), scaffold_hop(), ]
def get_guac_property_eval(self, task): if task is GuacTask.CELECOXIB: bench = standard_benchmarks.similarity( smiles= 'CC1=CC=C(C=C1)C1=CC(=NN1C1=CC=C(C=C1)S(N)(=O)=O)C(F)(F)F', name='Celecoxib', fp_type='ECFP4', threshold=1.0, rediscovery=True) elif task is GuacTask.TROGLITAZONE: bench = standard_benchmarks.similarity( smiles='Cc1c(C)c2OC(C)(COc3ccc(CC4SC(=O)NC4=O)cc3)CCc2c(C)c1O', name='Troglitazone', fp_type='ECFP4', threshold=1.0, rediscovery=True) elif task is GuacTask.THIOTHIXENE: bench = standard_benchmarks.similarity( smiles='CN(C)S(=O)(=O)c1ccc2Sc3ccccc3C(=CCCN4CCN(C)CC4)c2c1', name='Thiothixene', fp_type='ECFP4', threshold=1.0, rediscovery=True) elif task is GuacTask.ARIPIPRAZOLE: bench = standard_benchmarks.similarity( smiles='Clc4cccc(N3CCN(CCCCOc2ccc1c(NC(=O)CC1)c2)CC3)c4Cl', name='Aripiprazole', fp_type='ECFP4', threshold=0.75) elif task is GuacTask.ALBUTEROL: bench = standard_benchmarks.similarity( smiles='CC(C)(C)NCC(O)c1ccc(O)c(CO)c1', name='Albuterol', fp_type='FCFP4', threshold=0.75) elif task is GuacTask.MESTRANOL: bench = standard_benchmarks.similarity( smiles= 'COc1ccc2[C@H]3CC[C@@]4(C)[C@@H](CC[C@@]4(O)C#C)[C@@H]3CCc2c1', name='Mestranol', fp_type='AP', threshold=0.75) elif task is GuacTask.OSIMERTINIB: bench = standard_benchmarks.hard_osimertinib() elif task is GuacTask.RANOLAZINE: bench = standard_benchmarks.ranolazine_mpo() elif task is GuacTask.ZALEPLON: bench = standard_benchmarks.zaleplon_with_other_formula() elif task is GuacTask.VALSARTAN: bench = standard_benchmarks.valsartan_smarts() elif task is GuacTask.DECO: bench = standard_benchmarks.decoration_hop() elif task is GuacTask.SCAFFOLD: bench = standard_benchmarks.scaffold_hop() elif task is GuacTask.PERINDOPRIL: bench = standard_benchmarks.perindopril_rings() elif task is GuacTask.AMLODIPINE: bench = standard_benchmarks.amlodipine_rings() elif task is GuacTask.SITAGLIPTIN: bench = standard_benchmarks.sitagliptin_replacement() elif task is GuacTask.FEXOFENADINE: bench = standard_benchmarks.hard_fexofenadine() else: raise NotImplementedError smi2score = lambda smi: [bench.objective.score(smi)] return PropertyEvaluator(smi2score)