multi-objective-optimization
Pareto-aware molecular design balancing multiple ADMET properties simultaneously. Based on MultiMol (Yu 2025) and MOLLM (Ran 2025).
- License 许可
- MIT
- 最近更新
- 2026-10-28
- Stars
- ★ 0
- Forks
- 0
01 前言 Front Matter
- name
- multi-objective-optimization
- tags
- [ "drug-discovery", "multi-objective", "Pareto", "optimization", "molecular-design" ]
- license
- MIT
- version
- 1.0.0
- category
- coding
- metadata
- { "skill-author": "Synthetic Sciences" }
- description
- Pareto-aware molecular design balancing multiple ADMET properties simultaneously. Based on MultiMol (Yu 2025) and MOLLM (Ran 2025).
- dependencies
- [ "rdkit-pypi", "numpy", "pandas" ]
02 资源文件 1
- 脚本scripts/pareto_optimize.py9.4 KB
03 SKILL.md 正文
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
| Script | Purpose | Key Outputs |
|---|---|---|
pareto_optimize.py |
Generate and rank candidates by Pareto dominance | JSON with Pareto front, dominated set, objective scores |
property_radar.py |
Multi-property radar visualization | PNG radar plot comparing candidates |
04 同仓库更多 Skills
statistical-power
Sample size calculation, power analysis, and effect size conversion for scientific studies. Use BEFORE data collection (a priori) to determine required N, or after (post-hoc) to compute achieved power. Covers parametric tests (t-test, ANOVA, chi-square, proportions, correlation, regression), simulation-based power for complex/clustered/nested designs, and power curves. Use this skill when someone asks 'how many samples do I need', 'what is my power', 'what effect size can I detect', or any variant. Pairs with /experimental-design (choose design first, then compute power) and /statistical-analysis (analyze data after collection).
statistical-analysis
Guided statistical analysis with test selection and reporting. Use when you need help choosing appropriate tests for your data, assumption checking, power analysis, and APA-formatted results. Best for academic research reporting, test selection guidance. For implementing specific models programmatically use statsmodels.
scientific-writing
Core skill for the deep research and writing tool. Write scientific manuscripts in full paragraphs (never bullet points). Use two-stage process with (1) section outlines with key points using research-lookup then (2) convert to flowing prose. IMRAD structure, citations (APA/AMA/Vancouver), figures/tables, reporting guidelines (CONSORT/STROBE/PRISMA), for research papers and journal submissions.
scientific-visualization
Meta-skill for publication-ready figures. Use when creating journal submission figures requiring multi-panel layouts, significance annotations, error bars, colorblind-safe palettes, and specific journal formatting (Nature, Science, Cell). Orchestrates matplotlib/seaborn/plotly with publication styles. For quick exploration use seaborn or plotly directly.
research-code
Debug, profile, review, and restructure Python research and analysis code. Use when analysis scripts crash, produce wrong results, run too slowly, or need a correctness review. Covers: reading tracebacks and diagnosing root causes, hypothesis-driven debugging, reviewing code for common statistical/numerical errors, profiling data pipelines, improving reproducibility (seeds, environments, determinism), and structuring analysis scripts for sharing. Distinct from /exploratory-data-analysis (which understands data) and /statistical-analysis (which chooses and runs tests) — this skill focuses on the code itself.
markdown-mermaid-writing
Comprehensive markdown and Mermaid diagram writing skill. Use when creating any scientific document, report, analysis, or visualization. Establishes text-based diagrams as the default documentation standard with full style guides (markdown + mermaid), 24 diagram type references, and 9 document templates.