CtrlK
BlogDocsLog inGet started
Tessl Logo

multi-objective-optimization

Pareto-aware molecular design balancing multiple ADMET properties simultaneously. Based on MultiMol (Yu 2025) and MOLLM (Ran 2025).

56

Quality

65%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./backend/cli/skills/coding/multi-objective-optimization/SKILL.md
SKILL.md
Quality
Evals
Security

Multi-Objective Molecular Optimization

Overview

Real drug design is never single-objective. A useful molecule must simultaneously satisfy potency, selectivity, solubility, metabolic stability, and safety constraints. This skill implements Pareto-aware optimization that balances multiple properties without collapsing to a single weighted score.

Based on:

  • MultiMol (Yu et al., 2025): 82.3% multi-objective success rate with generate-then-rank
  • MOLLM (Ran et al., 2025): LLMs as genetic operators for multi-objective molecular design
  • DrugR (Liu et al., 2026): Multi-granular reward balancing across property groups

When to Use This Skill

  • "Improve potency while keeping hERG safe" — classic multi-objective lead optimization
  • Balancing ADMET tradeoffs — LogP vs solubility, BBB penetration vs peripheral safety
  • Pareto analysis — identify which candidates best balance competing objectives
  • Property-constrained generation — generate molecules within a defined property box

Do NOT use this skill for:

  • Single-property optimization (use molecular-optimization)
  • Property prediction without optimization (use admet-prediction)

Related Skills

  • molecular-optimization: Single-objective iterative optimization
  • admet-prediction: Compute properties used as objectives
  • admet-reasoning: Understand why properties need improvement

Installation

pip install rdkit-pypi numpy pandas

Optional

pip install matplotlib  # For Pareto front visualization

Core Workflows

1. Multi-Objective Optimization

python scripts/pareto_optimize.py \
    --smiles "c1ccc(NC(=O)c2ccccc2Cl)cc1" \
    --objectives "LogP:minimize:3.0,QED:maximize:0.5,TPSA:range:20:130" \
    --candidates 16 \
    --output pareto_results.json

2. Pareto Analysis of Existing Candidates

python scripts/pareto_optimize.py \
    --input candidates.csv \
    --objectives "LogP:minimize:3.0,QED:maximize:0.5" \
    --mode analyze \
    --output pareto_front.json

3. Property Radar Plot

python scripts/property_radar.py \
    --reference "original_smiles" \
    --candidates optimized.csv \
    --output radar.png

Script Reference

ScriptPurposeKey Outputs
pareto_optimize.pyGenerate and rank candidates by Pareto dominanceJSON with Pareto front, dominated set, objective scores
property_radar.pyMulti-property radar visualizationPNG radar plot comparing candidates
Repository
synthetic-sciences/openscience
Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.