応用ドッキング pipeline は SMILES → PDBQT → AutoDock Vina という古典的経路を未だに多用するが、PDBQT 段階の不具合が silently failure を生み、Vina 出力に到達した時点で問題発見しても遅い。Meeko / Open Babel / MGLTools 等の prep ツールは存在するが、失敗の可視化と repair-focused なログ運用は不足。
→ PDBQT cleanup 専用層 + 失敗の bucket 化 exit vocabulary + 並列 prep arm 比較。
optimize_smiles2.py (SMILES 探索)、automated_workflow3_final7_final.py (single-target docking-to-MD)、ppi2dynamics16_final4.py (PPI 拡張) の 3 階層が共通 cleanup を経由して Vina にハンドオフ。
Conda env spec + Docker stub 同梱。JSON snapshot で benchmark cohort を再現可能化。
全失敗は exit vocabulary でラベリング (vina_exit_1, ligand_prep_failed, skipped 等) して JSON snapshot に保存。並行して 3 arm (curated / naive / fixer-arm) を同じ受容体グリッドで対比。
naive Open Babel-only 経路は 1/54 と壊滅。PDBQT prep の差が直接 Vina 成功率に出る。
同一受容体グリッドでの Vina 成功率 (n=54 attempt)
prep の差が Vina 成功率に直接出る。AdvancedPDBQTFixer は curated とほぼ同等。
exploratory only — 著者自身が「external validation なし」と明記。
| Exit code | 意味 |
|---|---|
| vina_exit_1 | Vina プロセス異常終了 |
| ligand_prep_failed | PDBQT 生成失敗 |
| skipped | 前段フィルタで除外 |
| OK | usable affinity 取得 |
事後分析が「失敗カテゴリの分布」レベルで即座にできる。
| ドライバ | スケール |
|---|---|
| optimize_smiles2.py | SMILES 探索 (RDKit + CReM + mol_ga) |
| automated_workflow3_final7_final.py | single-target dock + MD |
| ppi2dynamics16_final4.py | PPI 拡張 |
| (shared) | AdvancedPDBQTFixer / UltimatePDBQTGenerator |
| ツール | 主目的 |
|---|---|
| Meeko | PDBQT 生成 (de facto 標準) |
| Open Babel | 分子変換 |
| MGLTools | 従来 Vina prep |
| Snakemake / KNIME | workflow scheduler |
| PDBQT-Safe | repair + bucket 化された失敗ログ |