部分構造検索 (2)
OpenBabelに「obgrep」という部分構造検索コマンドがあるのですが、
CDKのUniversalIsomorphismTesterクラスとどちらが優れているか検証してみようという企画です。
【比較条件】
- QueryはSMILES形式の環構造。
- 検索対象DBは、DrugBankの6620化合物(SDF形式)
- CDK ver1.4.2
- OpenBabel ver2.3.0
CASE1: βラクタム [N1C(=O)CC1]
まずは小さめの環から。
無事に同じ結果(76 件)が出力されました。以降もそうあって欲しいのですけれども。
計算速度は、CDK: 12秒, OpenBabel: 15秒 でした。
CASE2: 1,4-ジヒドロピリジン [C1C=CNC=C1]
これも単環なので大丈夫でしょう、と思いきや
・CDK: 35 件
・obgrep: 14 件
という異なる出力。
分子を見比べてみると、どうやらCDKでは、ニューキノロン系抗菌薬もヒットするようです。
確かにジヒドロピリジンを部分構造に含んでいます。
二重結合が芳香性に寄与しているという点が実装の分かれ目ですね。
CASE3: クマリン [c1ccc2c(c1)ccc(=O)o2]
共鳴するケトンがいやらしい感じですが、
・CDK: 0 件
・obgrep: 28 件
ここでは、CDKがダメですね。原因は不明です。
このシリーズは、もう少し続けてみます。