(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-07-12
(45)【発行日】2023-07-21
(54)【発明の名称】分子構造生成方法及びプログラム
(51)【国際特許分類】
G16C 20/50 20190101AFI20230713BHJP
【FI】
G16C20/50
(21)【出願番号】P 2021020762
(22)【出願日】2021-02-12
【審査請求日】2022-05-20
(73)【特許権者】
【識別番号】506290660
【氏名又は名称】HPCシステムズ株式会社
(74)【代理人】
【識別番号】100103894
【氏名又は名称】家入 健
(72)【発明者】
【氏名】岡本 拓也
(72)【発明者】
【氏名】阿部 幸浩
(72)【発明者】
【氏名】植野 正嗣
【審査官】岡北 有平
(56)【参考文献】
【文献】韓国公開特許第10-2019-0087898(KR,A)
【文献】松山祐輔,石田貴士,“多様な活性化合物発見のための化合物fingerprintアンサンブル手法の開発”,[online],日本,情報処理学会,2018年03月10日,[2023年4月20日検索],インターネット<URL:https://ipsj.ixsq.nii.ac.jp/ej/?action=pages_view_main&active_action=repository_view_main_item_detail&item_id=186586&item_no=1&page_id=13&block_id=8>
【文献】河合健太郎 ほか2名,“構造設計/構造創出のための分子進化アルゴリズム”,[online],日本,Society of Computer Chemistry,2011年03月23日,[2023年4月20日検索],インターネット<URL:https://www.jstage.jst.go.jp/article/jccj/advpub/0/advpub_H2216/_article/-char/ja>
(58)【調査した分野】(Int.Cl.,DB名)
G16C 10/00-99/00
G06Q 10/00-99/00
(57)【特許請求の範囲】
【請求項1】
コンピュータが、
予め用意された複数の初期分子について、特徴量に基づいて初期分子をクラスターに分類し、さらに、分類された各クラスターから信頼限界値が最大である基分子を選択する選択ステップと、
前記基分子それぞれを進化発展させる進化発展ステップ
と、
を備え、
前記コンピュータが、前記初期分子及び進化発展された基分子を含むすべての分子を対象として、前記選択ステップと前記進化発展ステップを繰り返し実行することにより、新たな分子構造を生成する分子構造生成方法。
【請求項2】
コンピュータが、
予め用意された複数の初期分子のうち、信頼限界値が最大である基分子を選択する選択ステップと、
前記基分子それぞれを進化発展させる進化発展ステップと、
を備え、
前記コンピュータが、前記初期分子及び進化発展された基分子を含むすべての分子を対象として、前記選択ステップと前記進化発展ステップを繰り返し実行することにより、新たな分子構造を生成する分子構造生成方法。
【請求項3】
コンピュータが、
予め用意された複数の初期分子それぞれについて
、所定の物性をどの程度満たしているかを表すスコアを算出し、さらに当該
スコアに基づき算出された確率値に応じて基分子を選択する選択ステップと、
前記基分子それぞれを進化発展させる進化発展ステップと、
を備え、
前記スコアは、以下の式(1)を用いて表される信頼限界UCB1
i
値または式(2)を用いて表されるMSc
i
を用いて算出され、前記確率値であるPr
i
は、分子の前記スコアを確率化表現した式(3)又は(4)を用いて算出され、
【数1】
ただし、対数部分は常用対数でもよい。Cは任意の実数である。また、nは最初に読み込んだ分子数と発生させた分子数の和であり、n
i
は、算出すべき分子について、その分子以降に発生し同じ系統樹に追加された全ての分子数である。また、式(1)中のx
i
の平均値は、算出すべき分子について、その分子以降に発生し同じ系統樹に追加された全ての分子の前記スコアの平均値を表し、
【数2】
ただし、Sciは分子iの前記スコアを表し、λは重みを表すものであって0.0~1.0の任意の実数である。また、gおよびhはガウス関数を表す。n
2i
は、前記スコアを算出すべき分子が属する系統樹において隣接する分子数を表し、
【数3】
【数4】
ただし、nは比較すべき分子の数を表し、
前記コンピュータが、前記初期分子及び進化発展された基分子を含むすべての分子を対象として、前記選択ステップと前記進化発展ステップを繰り返し実行することにより、新たな分子構造を生成する分子構造生成方法。
【請求項4】
前記分子構造は、分子を構成する原子をノードとし、原子間の結合をエッジとして表現するグラフ表記法を用いて表される、
請求項1~3のいずれか1項に記載の分子構造生成方法。
【請求項5】
前記進化発展は、交差反応又は突然変異によるものである、
請求項1~4のいずれか1項に記載の分子構造生成方法。
【請求項6】
情報処理装置に処理を実行させるプログラムであって、
前記情報処理装置に、
予め用意された複数の初期分子について、特徴量に基づいて初期分子をクラスターに分類し、さらに、分類された各クラスターから信頼限界値が最大である基分子を選択する選択処理と、
前記基分子それぞれを進化発展させる進化発展処理
と、
を実行させ、
前記情報処理装置に、前記初期分子及び進化発展された基分子を含むすべての分子を対象として、前記選択処理と前記進化発展処理を繰り返し実行
させることにより、新たな分子構造を生成
させる、プログラム。
【請求項7】
情報処理装置に処理を実行させるプログラムであって、
前記情報処理装置に、
予め用意された複数の初期分子のうち、信頼限界値が最大である基分子を選択する選択処理と、
前記基分子それぞれを進化発展させる進化発展処理と、
を実行させ、
前記情報処理装置に、前記初期分子及び進化発展された基分子を含むすべての分子を対象として、前記選択処理と前記進化発展処理を繰り返し実行
させることにより、新たな分子構造を生成
させる、プログラム。
【請求項8】
情報処理装置に処理を実行させるプログラムであって、
前記情報処理装置に、
予め用意された複数の初期分子それぞれについて
、所定の物性をどの程度満たしているかを表すスコアを算出し、さらに当該
スコアに基づき算出された確率値に応じて基分子を選択する選択処理と、
前記基分子それぞれを進化発展させる進化発展処理と、
を実行させ、
前記スコアは、以下の式(1)を用いて表される信頼限界UCB1
i
値または式(2)を用いて表されるMSc
i
を用いて算出され、前記確率値であるPr
i
は、分子の前記スコアを確率化表現した式(3)又は(4)を用いて算出され、
【数1】
ただし、対数部分は常用対数でもよい。Cは任意の実数である。また、nは最初に読み込んだ分子数と発生させた分子数の和であり、n
i
は、算出すべき分子について、その分子以降に発生し同じ系統樹に追加された全ての分子数である。また、式(1)中のx
i
の平均値は、算出すべき分子について、その分子以降に発生し同じ系統樹に追加された全ての分子の前記スコアの平均値を表し、
【数2】
ただし、Sciは分子iの前記スコアを表し、λは重みを表すものであって0.0~1.0の任意の実数である。また、gおよびhはガウス関数を表す。n
2i
は、前記スコアを算出すべき分子が属する系統樹において隣接する分子数を表し、
【数3】
【数4】
ただし、nは比較すべき分子の数を表し、
前記情報処理装置に、前記初期分子及び進化発展された基分子を含むすべての分子を対象として、前記選択処理と前記進化発展処理を繰り返し実行
させることにより、新たな分子構造を生成
させる、プログラム。
【請求項9】
前記分子構造は、分子を構成する原子をノードとし、原子間の結合をエッジとして表現するグラフ表記法を用いて表される、
請求項6~8のいずれか1項に記載のプログラム。
【請求項10】
前記進化発展は、交差反応又は突然変異によるものである、
請求項6~9のいずれか1項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は分子構造生成方法及びプログラムに関する。
【背景技術】
【0002】
従来の機能素材の開発は、順問題として、所定の物性を有すると考えられる分子構造を研究開発者が考え、分子軌道(MO)法や分子動力学(MD)法によるシミュレーションや、データベースに基づく原子団寄与率法等の経験的手法により、その分子構造の物性を推定し、スクリーニングにより行われている。さらに、大量のデータに基づいた機械学習(ML:Machine Learning)技術を利用して、MO法やMD法に依らず短時間で物性を推定する手法が開発され、機能素材の研究開発現場で使われ始めている。発生させるべき分子構造は、研究開発者の経験と勘と洞察力に依存している。
【0003】
一方、勘と経験に頼らずに所定の物性を有する分子構造を推定し、開発しようという逆問題研究開発が活発化し始めている。深層学習(DL:Deep Learning)を用いる手法として、データベースに対してニューラルネットワーク(NN:Neural Network)を複数層重ねて学習し、モデル作成に使われる手法がある。分子構造等の扱いには畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)も利用されている。また、有機化合物を表現する文字列データの扱いには、再帰型ニューラルネットワーク(RNN:Recurrent Neural Network)が用いられる。また、グラフデータについては、グラフニューラルネットワーク(GNN:Graph Neural Network)やグラフ折り畳みニューラルネットワーク(GCN:Graph Convolutional Network)が有効に適用され始めている。
【0004】
膨大な数の分子構造と物性から成るデータを用いて分子構造と物性を関係づける予測モデルを作成し与えられた分子構造の物性を予測する順問題と、所望の物性を満足する分子構造を導出する逆問題の手法が、非特許文献1により開示されている。
【0005】
所望の物性を満足する分子構造を導出する逆問題の手法としては、遺伝的アルゴリズム(GA:Genetic Algorithm)、モンテカルロ木探索法(MCTS:Monte Calro Tree Search)等が挙げられる。分子構造はSMILES(Simplyfied Molecular Input Line Entry System)法により文字列で表現される。
【0006】
逆問題の重要な課題として、どのようにして目的の物性値を実現する構造を発生させるかということが第一に挙げられる。実際に合成すべき分子構造を仮想的に作り、機械学習等により作成した回帰モデルに基づいて物性値を予測する。そのアプローチ方法の1つとして、制約条件xにおける回帰モデルを確率f(y|x)で表し、ベイズの定理により事後分布f(x|y)となる変数を推定し、これを満足する構造を取り出す手法が、非特許文献1~4により開示されている。
【先行技術文献】
【非特許文献】
【0007】
【文献】H. Ikebata, K. Hongo, T. Isomura, R. Maezono, and R. Yoshida, J. Comput. Aided Mol. Des., 31, 379 (2017).
【文献】T. Miyao, M. Arakawa, and K. Funatsu, Molecular Informatics, 29, 111(2010).
【文献】T. Miyao, M. Arakawa, and K. Funatsu, Molecular Informatics, 33, 764(2014).
【文献】X. Yang, Z. Zhang, K. Yoshizoe, K. Terayama, and K. Tsuda, Sci. Technol.Adv. Mater. 18, 972 (2017).
【文献】X. Q. Lewell , D. B. Judd, S. P. Watson, and M. M. Hann, J. Chem. Inf. Comput. Sci. 1998, 38, 3, 511~522
【文献】J. Degen, C. Wegscheid‐Gerlach, and M. Rarey, ChemMedChem, 3 (10), 1503 (2008).
【文献】K. Kim, S. Kang, J. Yoo, Y. Kwon, Y. Nam, D. Lee, I. Kim, Y. Choi, Y. Jung, S. Kim, W. Son, J. Son, H. S. Lee, S. Kim, J. Shin, and S. Hwang, npj Computational Materials, 4, 67 (2018).
【発明の概要】
【発明が解決しようとする課題】
【0008】
制約条件下における仮想的な構造発生に要求される重要なこととして、これまでに開発されていない新規な構造を含む多様な構造を発生させることが挙げられる。これまでに開発された分子構造生成手法を用いれば、一度所望の物性値を満たす構造が見つかると、その周辺の似通った分子構造を多数発生させる傾向がある。この場合、たとえ要求物性を満たしていても、合成方法が難しい場合や原料を入手しにくい、現有の生産設備では製造できない、高価等の理由から、この分子構造を用いることを断念せざるを得ない場合もある。改めて何らかの方法を用いて他の分子構造を発生させることが必要となる。
【0009】
本発明は、ある特定の分子構造周辺に局在化しないように、所望の物性値を満たしつつ多様な分子構造を発生させる分子構造生成方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0010】
本発明の一態様による分子構造生成方法によれば、予め用意された複数の初期分子について、特徴量に基づいて初期分子をクラスターに分類し、さらに、分類された各クラスターから信頼限界値が最大である基分子を選択する選択ステップと、前記基分子それぞれを進化発展させる進化発展ステップと、を有し、前記初期分子及び進化発展された基分子を含むすべての分子を対象として、前記選択ステップと前記進化発展ステップを繰り返し実行することにより、新たな分子構造を生成する。
【0011】
また、本発明の一態様による分子構造生成方法によれば、予め用意された複数の初期分子のうち、信頼限界値が最大である基分子を選択する選択ステップと、前記基分子それぞれを進化発展させる進化発展ステップと、前記初期分子及び進化発展された基分子を含むすべての分子を対象として、前記選択ステップと前記進化発展ステップを繰り返し実行することにより、新たな分子構造を生成する。
【0012】
さらに、本発明の一態様による分子構造生成方法によれば、予め用意された複数の初期分子それぞれについて特徴量を算出し、さらに当該特徴量に基づき算出された確率値に応じて基分子を選択する選択ステップと、前記基分子それぞれを進化発展させる進化発展ステップと、記初期分子及び進化発展された基分子を含むすべての分子を対象として、前記選択ステップと前記進化発展ステップを繰り返し実行することにより、新たな分子構造を生成する。
【発明の効果】
【0013】
本発明によれば、ある特定の分子構造周辺に局在化しないように、所望の物性値を満たしつつ多様な分子構造を発生させる分子構造生成方法及びプログラムを提供することができる。
【図面の簡単な説明】
【0014】
【
図1】本発明における分子構造生成方法の概要図である。
【
図2】本発明におけるグラフ構造、分子構造及び系統樹の関係を表す図である。
【
図3】本発明における物性値の第一及び第二希望領域の定義を表す図である。
【
図4】本発明における分子のクラスタリング処理のフローを示す図である。
【
図5】本発明における実施形態1にかかる分子構造生成方法を示す概念図である。
【
図6】本発明における実施形態1にかかる分子構造を発生させる処理のフローを示す図である。
【
図7】本発明における実施形態1にかかる分子構造生成方法用いて発生させた分子構造の主成分分析を行った結果を示す図である。
【
図8】本発明における実施形態2にかかる分子構造生成方法を示す概念図である。
【
図9】本発明における実施形態2にかかる分子構造を発生させる処理のフローを示す図である。
【
図10】本発明における実施形態2にかかる分子構造生成方法用いて発生させた分子構造の主成分分析を行った結果を示す図である。
【
図11】本発明における実施形態3にかかる分子構造生成方法を示す概念図である。
【
図12】本発明における実施形態3にかかる分子構造を発生させる処理のフローを示す図である。
【
図13】本発明における実施形態3にかかる分子構造生成方法用いて発生させた分子構造の主成分分析を行った結果を示す図である。
【
図14】従来例による遺伝的アルゴリズム法を用いた分子構造生成方法を示す概念図である。
【
図15】従来例による遺伝的アルゴリズム法を用いて発生させた分子構造の主成分分析を行った結果を示す図である。
【
図16】本発明における分子構造生成方法に関する処理を実現するためのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【0015】
以下、図面を参照しつつ、実施の形態について説明する。なお、図面は簡略的なものであるから、この図面の記載を根拠として実施の形態の技術的範囲を狭く解釈してはならない。また、同一の要素には、同一の符号を付し、重複する説明は省略する。
【0016】
<実施形態における分子構造生成方法について>
実施形態における分子構造生成方法について、
図1~4を用いて説明する。
図1は、実施形態における分子構造生成方法の概要図である。
【0017】
実施形態における分子構造生成方法は、予め用意された複数の初期分子について、特徴量に基づいて初期分子をクラスターに分類し、さらに、分類された各クラスターから信頼限界値が最大である基分子を選択する選択手段1と、基分子それぞれを進化発展させる進化発展手段2を有する。
【0018】
また、選択手段1は、予め用意された複数の初期分子のうち、信頼限界値が最大である基分子を選択するものであってもよい。また、選択手段1は、予め用意された複数の初期分子それぞれについてスコアを算出し、さらに当該スコアに基づき算出された確率値に応じて基分子を選択するものであってもよい。
【0019】
実施形態における分子構造生成方法は、初期分子及び進化発展された基分子を含むすべての分子を対象として、選択手段1と進化発展手段2を繰り返し実行することにより、新たな分子構造を生成する。選択手段1及び進化発展手段2は、情報処理装置1によって処理されてもよいし、複数の装置を用いたシステムにおいて実行されてもよい。
【0020】
図2は、実施形態におけるグラフ構造、分子構造及び系統樹の関係を表す図である。
図2に示すように、分子構造は分子を構成する原子をノードとして、原子間の結合をエッジとして表されるグラフ表記法を用いて記述される。基となる分子構造Rを例えばベンゼンとし、系統樹には始点分子Aとして登録する。分子進化発展1で炭素原子を付加すると、トルエンが発生し、系統樹に分子Cとして追加される。さらに炭素原子を、二重結合を介して追加すると、分子進化発展2ではスチレンが発生し、系統樹に分子Dとして追加される。この時、単結合および二重結合はエッジとして扱われる。なお、分子の進化発展とは、元となる分子に原子を付加することにより、新たな分子を発生させることをいう。
【0021】
分子構造が記載されているデータセットは、例えば公開されているPubchem、PubChemQC、ZINC、ChemSpider、Chembl、GDB、QM7、QM8、QM9等を用いることができるが、これらに限らない。
【0022】
所定の物性に対する分子の性能は、スコアを用いて評価される。スコアとは、所定の物性をどの程度満たしているかを数値で表したものであり、獲得関数として算出される。獲得関数が最大となる分子構造が次に進化発展させるべき化合物として選ばれる。
【0023】
データフレームに蓄えられたa1個の分子構造を、各分子について算出された分子構造の特徴量によりCL(1)~CL(f1)のf1種類のクラスターに分類する。なお、分子構造の特徴量の算出の詳細については後に説明する。a1は、1以上の整数であり、好ましくは30~1000000000の範囲であって、より好ましくは100~1000000000の範囲であってもよい。f1は、2以上の整数であり、好ましくは3~10000範囲であって、より好ましくは5~10000の範囲であってもよい。
【0024】
分子のスコアは、以下の式(1)を用いて表される信頼限界UCB1i値または式(2)を用いて表されるMSciを用いて算出されてもよい。式(2)を用いて表されるMSciは、後に説明する実施形態3において用いられる。f1種類に分類された同一のクラスター内においてスコアを比較し、スコアが最大値である分子が基分子として選ばれる。
【0025】
なお、後に説明する実施形態3において、選ばれた基分子に対して、任意の原子の追加、任意の位置の原子を別の原子種によって置換、及びその基分子以外の分子の中から選ばれた分子のフラグメント化により発生したフラグメントの付加による交差反応又は突然変異により進化発展させ、新たに発生した分子を基分子の系統樹に追加してもよい。このとき、フラグメント化される分子は、注目している基分子以外の分子の中から分子のスコアを確率化表現した式(3)又は(4)を用いて算出される確率に基づいて選ばれる。
【0026】
フラグメント化される分子は、式(3)又は(4)を用いて算出される確率Pr
iによりa1個の分子の中からb1個の分子選ばれる。
【数1】
ただし、対数部分は常用対数でもよい。Cは任意の実数である。また、nは最初に読み込んだ分子数と発生させた分子数の和であり、n
iは、算出すべき分子について、その分子以降に発生し同じ系統樹に追加された全ての分子数である。また、式(1)中のx
iの平均値は、算出すべき分子について、その分子以降に発生し同じ系統樹に追加された全ての分子のスコアの平均値を表す。
【数2】
ただし、Sc
iは分子iのスコアを表し、λは重みを表すものであって0.0~1.0の任意の実数である。また、gおよびhはガウス関数を表す。n
2iは、スコアを算出すべき分子が属する系統樹において隣接する分子数を表す。
【数3】
【数4】
ただし、nは比較すべき分子の数を表す。
【0027】
分子のスコアは、獲得関数として最も単純なものは単純に注目する分子構造が所定の物性を満足する程度であるスコアScとして表される。Scは、単一の物性に関するものであってもよいし、同時に満足したい複数の物性に関するものの和でもよい。
【0028】
ここで、物性値に関する第一希望領域及び第二希望領域について、
図3を用いて説明する。
図3は、実施形態における物性値の第一及び第二希望領域の定義を表す図である。
【0029】
図3において、P1~P4を、分子の物性値とする。
図3において、第一希望領域をP1~P2とする。第一希望領域は、所定の物性領域である。さらに、第一希望領域であるP1~P2領域を含んだ広い範囲P3~P4を第二希望領域とする。ある分子構造について分子iと物性との関係を表すモデル、分子軌道法、または分子動力学法等の方法で推定した物性値aがP1~P2にあれば、スコアSiを1.0とする。物性値aがP3~P1またはP2~P4にあれば、そのSiは式(5)を用いて算出される。物性値aが複数の物性値を含む場合は、物性値aiに対応するスコアSiについて重みwiをつけて足し合わせ、合計値が1.0になるように式(6)によって算出される。ただし、iは1以上の整数であり、nは同時に満足したい物性値の数である。
【数5】
【数6】
【0030】
また、上述した物性に基づくスコアの他に、その分子の合成可能性に基づくスコアとしてSA(Synthetic Accessibility)スコアを用いてもよい。SAスコアは、PubChemの100万分子構造のECFP4フィンガープリントの出現頻度を基に1~10で評価した実数であり、1に近い程、その分子を合成しやすいことを意味する。
【0031】
また、獲得関数として式(7)を用いて算出される改善確率PIを用いてもよい。改善確率PIは、物性値を最大化したい場合には、サンプルに対して得られた予測確率分布における、物性値の既知である最大値y
maxよりも高い部分における確率密度関数の積分値により算出される。
【数7】
ただし、x
*は最適解、fは確率変数、f~N(f│μ,σ
2)がガウス過程による予測結果を表す。また、確率変数fは、平均値μ、分散σ
2の正規分布に従う。
【0032】
獲得関数を、以下の式(8)に示す期待改善度EIを用いて表してもよい。
【数8】
ただし、Φ(Z)は累積密度関数であり、確率密度関数を確率変数のある範囲で積分した値を返す。φ(Z)は確率密度関数を、Zは((y
max-μ))/σ(x
*)を表す。
【0033】
さらに、獲得値は式(1)によって表されるUCB1(UCB:Upper Confidence bound)を用いて算出してもよい。なお、分子のスコアに基づいた確率化表現した確率Priは、式(3)または式(4)によって算出される。
【0034】
各分子の物性は、分子構造と物性値とからなるデータセットから統計処理または機械学習によって導出されたモデル式を使って推定することができる。各分子の物性は、データセットを用いない場合は、分子軌道法、分子動力学シミュレーション及び原子団寄与率法を用いて算出することができる。さらに、各分子の物性はこれらのいくつかの算出方法を組み合わせて算出してもよい。
【0035】
分子の進化発展は、1分子の突然変異や複数分子間の交差反応等により行われる。基分子の任意の箇所が反応サイトとして選ばれ、フラグメント、重原子を1個付加または削除する様式、又は任意の重原子の置換、さらには結合形式の変化によって行われる。具体的には、突然変異とは、例えば-NO2基のN原子がC原子に置き換わることによる-COOH基への変化、エチレンの二重結合が一重結合に変わることによるエタンへの変化、シクロヘキサンから2つのC原子が脱離することによるブタンの生成等を指す。複数分子間の交差反応とは、例えばナフタレン分子の2位と3位にベンゼンからエチレンが脱離して生成したブタジエンの両端のC原子が付加してアントラセンを生成したり、ビフェニルからベンゼンが脱離してナフタレンの1位に付加して1-フェニルナフタレンが生成したり、ビフェニルそのものがナフタレンの2位に付加して2-ビフェニルナフタレンが生成するような反応を指す。分子の進化発展は、フラグメントの付加、重原子の付加又、重原子の置換等の突然変異や複数分子間交差反応のいずれを採用するかは、その都度予め決められた確率による。
【0036】
分子のフラグメント化は、RECAP(Retrosynthetic Combinatorial Analysis Procedure)やBRICS(Breaking of Retrosynthetically Interesting Chemical Substructures)ルールを使って実行することができる。また、分子のフラグメント化は既存の分子構造から抽出したフラグメントとリンカーを付加させて分子を進化発展させることによって行われてもよい。これらの方法は、非特許文献5~7において開示されている。
【0037】
例えば、RECAPを用いれば、有機分子は、アミド、エステル、アミン、ウレア内N-C、エーテル、C=C、アンモニウム、スルファンアミド内N-S、芳香族環-芳香族環、N(芳香族環内)-C(sp3)及びN(ラクタム環内)-C(sp3)の各結合に注目して、分子の中で結合が切断されやすいところにおいてフラグメントに分解される。BRICSを用いれば、RECAPと同様の方法によって16種類の結合に注目してフラグメントに分解される。
【0038】
また、既存分子を任意の大きさにフラグメント化してもよい。具体的には、例えばアニリンはアミノ基とフェニル基に、エタノールはエチル基とヒドロキシ基にフラグメント化される。シクロヘキサンやエチレンオキシド等のシクロ環化合物、フラン、チオフェン、ピロール、オキサゾール、チアゾール等の複素環化合物、インデン、ナフタレン、フルオレン、フェナントレン、アントラセン、ピレン、クリセン、ナフタセン、チアゾール、オキサゾール、キサンテン、アクリジン、フェノキサジン、ジベンゾフラン、インドール、ベンゾフラン、キノリン、ナフトキノン等の縮合環化合物、スピロ[4,4]ノナン、スピロ[4,5]デカン等のスピロ環化合物等、さらには、ニトロ基、アゾ基、カルボニル基、チオカルボニル基、カルビノ基等の原子団は、分解されることなく、化学的に意味のあるフラグメントやリンカーとして用いることができる。これらのフラグメント化に際し、各フラグメントは基分子と結合できる部位は、1か所以上の任意の数であってもよい。
【0039】
基分子を構成する重原子は、C、O、N、S、Si、B、Cl、F、Br、Cu、Fe、Zn、Mg等の任意の重原子を用いて置換されてもよい。ただし、重原子はこれらの原子に限定されるものではない。
【0040】
分子のクラスタリングは、分子の類似度により行われてもよい。分子の類似度は、分子の特徴量または分子間の距離によって判定される。
【0041】
分子構造の特徴量を算出する方法として、例えば、化学構造を数千の固定長ベクトルに圧縮し、0と1のビット列で表すfingerprintを用いてもよい。fingerprintとして、例えばMACCS Key、Topological fingerprint、Morgan fingerprint、MinHash fingerprint、Avaron fingerprint、AtomPair fingerprint、DonarAcceptor fingerprint、Extended Connectivity fingerprint、Functional Connectivity fingerprint、Dragon Fingerprint等を用いてもよい。また、fingerprintを用いて、RDkit descriptors、mordred discriptors 等の記述子、加算無限個の要素を持つベクトル表記のグラフカーネル、グラフそのものにより原子毎に定められる電子数、及び結合情報等の原子特徴量等を数値化することができる。ただし、算出される分子構造の特徴量は、これらに限定されるものではない。
【0042】
分子AとBの類似性を評価する方法としては、タニモト係数S
ABが用いられる。
【数9】
ただし、aはAのfingerprintにおけるビット配列における「1」の数、bは分子Bのビット配列における「1」の数、cはAとBにおける共通の「1」の数を示す。
【0043】
AとBの分子間距離D
ABは、次の式(10)を用いて算出される。
【数10】
【0044】
また、分子間の距離は、Chebyshev Distance、Euclidian Distance、Manhattan Distance、およびMaharanobis Distance等を用いて算出してもよい。i番目の分子とj番目の分子との距離dは、xk
(i)をi番目の分子におけるk番目の変数として、分子間の距離は次に示す式(11)~(14)を用いて算出される。
【0045】
Euclidian Distanceを用いる場合、分子間の距離は、次の式(11)を用いて算出される。
【数11】
【0046】
Chebyshev Distanceを用いる場合、分子間の距離は、次の式(12)を用いて算出される。
【数12】
【0047】
Manhattan Distanceを用いる場合、分子間の距離は、次の式(13)を用いて算出される。
【数13】
【0048】
Maharanobis Distanceを用いる場合、分子間の距離は、次の式(14)を用いて算出される。
【数14】
ただし、x
(i)およびx
(j)は、それぞれi番目およびj番目の分子の変数の値が格納されたベクトル、m
xは各変数の平均値が格納されたベクトル、(シグマ)
-1は分散共分散行列を表す。
【0049】
クラスタリングの方法としては、例えばk-Means法、k-Means++法やGaussian Mixture法が用いられる。k-Means法は、分子をk個のクラスターに分類する方法であり、以下のようにして算出される。
【0050】
ここで、分子のクラスタリングの方法について、
図4を用いて説明する。
図4は、分子のクラスタリング処理のフローを示す図であり、例えばk-Means法を用いた場合のフローである。まず、ベクトルx
(i)をランダムにk個のクラスターを割り当てる(ステップ101)。次に、各クラスターに割り当てられた分子について重心を算出する(ステップ102)。さらに、各分子について、ステップ102において算出された重心からの距離を算出し、ベクトルx(i)を距離が1番近いクラスターに割り当て直す(ステップ103)。すべての分子のクラスターの割り当てが収束するまで(ステップ104のYES)、ステップ102及びステップ103の処理を繰り返す。
【0051】
j番目のクラスターに属する分子のインデックスの集合をIとすると、j番目のクラスターの重心G
jは次の式(15)によって算出される。
【数15】
【0052】
クラスタリングして発生させた分子構造を可視化する方法として、例えば主成分分析(principal component analysis:PCA)が挙げられる。PCAを用いれば、サンプル平均を中心とした座標系の回転変換を行うことにより、与えられたデータをより低次元の空間に射影するため、より少ない座標軸で点の散らばりができるだけ大きく見えるようにデータを可視化することができる。
【0053】
なお、高次元データを2次元または3次元への非線形な次元削減をする方法として、例えば分子間の距離関係を保持するt-SNE(t-distributed stochastic neighbor embedding)法や分子の位置関係を保持するGTM(generative topographic mapping)が用いられる。
【0054】
<実施形態1>
本実施形態における分子構造生成方法について
図5及び
図6を用いて説明する。
図5は、本実施形態における分子構造生成方法を示す概念図である。
図6は、本実施形態における分子構造を発生させる処理のフロー図である。なお、本実施形態においては、所望の物性値をPRとする。
【0055】
本実施形態における分子構造生成方法において、
図5に示すように、まず任意のa1個の分子をクラスタリングする。a1は、例えば1000であってもよいがこれに限らない。クラスタリングは、a1個の分子をその構造によって特徴づけを行い、分類される。分類されたクラスターは、CL(1)~CL(f1)のf1種類とし、当該クラスター分類は、第0世代である。それぞれのクラスターにおいて、各分子を進化発展させ、b1個の分子を発生させる。各分子の進化発展は、各クラスターから万遍なくUCB1
iが最大の1分子を選んで行われてもよい。これらの処理を複数回繰り返すことによって、所定数の分子を発生させる。
【0056】
本実施形態における分子構造を発生させる処理のフローについて、
図6を用いて説明する。まず、分子構造が記載されているデータベースからa1個の分子構造を読み込み、分子を構成する原子をノード、原子間の結合をエッジとして分子構造を表現するグラフ構造に変換し、データフレームに蓄える(ステップ201)。データフレームに蓄えられたa1個の分子構造を、各分子について例えばfingerprintを用いて算出された特徴量によりCL(1)~CL(f1)のf1種類のクラスターに分類する(ステップ202)。当該クラスター分類は、第0世代に該当する。
【0057】
a1個の各分子について獲得関数af
iを式(16)を用いて算出する(ステップ204)。
【数16】
ただし、s
iは式(5)および(6)を用いて算出されるi番目の1分子のスコアを、cは定数であり、例えば√2等が用いられる。
【0058】
基分子が各クラスターから均等にaf
iが大きい順にb1個の分子を基分子Aとして選択する。さらに、式(17)を用いて算出される確率Pr
iによりフラグメント化される分子Bをb2個選択する(ステップ205)。ただし、b2は1~a1の整数であり、好ましくは1~1000の整数である。また、分子Bは、交差反応の場合のみ選ばれ、基分子Aと同一クラスター内から選ばれるとは限らない。異ったクラスターから選ばれても良い。
【数17】
【0059】
フラグメント化される分子を、重原子1個以上の単位で細分化する(ステップ206)。基分子の任意の位置に任意の原子の追加や原子の置換、さらにはフラグメントの付加による交差反応又は突然変異を起こさせ、分子を進化発展させる。新たに発生した分子Cを基分子の系統樹に追加するとともに、f1種類のいずれかのクラスターに分類する(ステップ207)。当該クラスターの分類は、第1世代に該当する。
【0060】
新たに発生したb1個の分子を含めた全分子について、ステップ204~ステップ208の処理を繰り返す。この際、自身の系統樹に新たに発生した分子が追加された分子はその追加分子数を含めてafiを式(1)を用いて信頼限界UCB1iとして算出する(ステップ204)。この時、式(1)において、nは最初に読み込んだ分子数と新たに発生させた分子数の和であり、niは算出すべき分子について、その分子以降に発生し同じ系統樹に追加された全ての分子数であり、xiの平均値は算出すべき分子について、その分子以降に発生し同じ系統樹に追加された全ての分子のスコアの平均値を表す。系統樹に1分子しかない場合は、式(16)を用いて算出される獲得関数値を用いる。
【0061】
また、CL(1)~CL(f1)の各クラスターにおいて獲得関数が最大の分子が次の基分子として選ばれる。具体的には、
図5のCL(2)の第5世代の時点におけるn
iは、分子Aについては6、Cについては5、Dについては4、Eについては3、FとGについては各々1と数えられる。
【0062】
ステップ204~208の処理をc回繰り返し、所定の数の新たな分子を発生させた後、合計a1+b1×c個の分子についてf2個のクラスターに分類する(ステップ210)。ただし、f2は整数であり、f1と等しくても異なっていてもよい。cは、1以上の整数であり、好ましくは1~1000000000の範囲であってもよい。
【0063】
202~210の処理をさらに複数回繰り返して、全分子をf3個のクラスターに分類して操作を終了することもできる。ただし、f3は整数であり、f1およびf2と等しくても異なっていても良い。なお、さらに分子構造が記載されているデータベースからステップ201において用いたa1個の分子と異なる新たな分子をa1個選び、上述した処理を複数回繰り返しても良い。
【0064】
<本実施形態における分子構造生成方法の具体例>
本実施形態における分子構造の発生方法によって、500~600nmに極大吸収を持つ分子構造の発生を行う場合の処理について、以下のとおり具体例を説明する。本具体例における処理の条件は、以下のとおりである。
分子量 100~500 必須条件
最長極大吸収波長 第一希望領域 0~1000nm
第二希望領域 500~600nm
重み 0.4
振動子強度 0.5以上 重み 0.4
SAスコア 1~4 重み 0.2
分子のスコア=PR(λmax)×0.4+PR(振動子強度)×0.4+PR(SAスコア)×0.2
【0065】
データベースから読み取った構造および進化発展させた分子構造は、例えばSMILESで記述されている。このSMILES構造を、本具体例ではRDkitを使って3次元の立体構造に変換した。3次元の座標データを使ってGaussian16の半経験的分子軌道法PM6法で構造最適化を行い、続いてZINDO法により20個の励起エネルギーを算出した。さらに、各波長ピークにGauss関数を被せてUV-VISスペクトルとした。このスペクトルから最大極大吸収波長λmaxを見積もった。
【0066】
データベースZINCからランダムに初期構造として1000分子を選び、Morgan Fingerprintによって各分子の特徴量を2048次元抽出し、scikit-learnのk-means++法を用いて10種類のクラスターCL(1)~CL(10)に分類した。1000個の分子についてGaussian16/PM6による構造最適化、ZINDO法による励起エネルギー算出を行い、λmaxを算出し、UCB1により各分子のスコアを算出して、基分子として10分子を選んで分子を進化発展させた。このとき、a1=1000、b1=10、c1=100として2000分子の構造を発生させた時点において、発生した全分子を改めて10種類のクラスターCL(1)~CL(10)に分類した。上記2000分子を使って再び上述の操作を行い、新たに1000分子を発生させ、合計3000分子とした。この操作をさらに8回繰り返し、合計11000分子の構造を発生させた。
【0067】
本実施形態における分子構造生成方法用いて発生させた分子構造の主成分分析を行った結果を、
図7に示す。
図7は、発生した11000分子についてMorgan Fingerprintで特徴量を算出し、scikit-learnを用いて主成分分析を行い2次元に投影したものである。
【0068】
本実施形態によれば、特定の分子構造周辺に局在化しないように、多様な分子構造を発生させることができる。
【0069】
<実施形態2>
本実施形態における分子構造生成方法について
図8及び
図9を用いて説明する。
図8は、本実施形態における分子構造生成方法を示す概念図である。
図9は、本実施形態における分子構造を発生させる処理のフロー図である。なお、本実施形態においては、所望の物性値をPRとする。
【0070】
図8に示すように、本実施形態においては、まず任意のa1個の分子それぞれの分子のスコアを算出する。実施形態1の場合と異なり、クラスター分類は行わない。a1は、例えば1000であってもよいがこれに限らない。a1個の分子から、分子のスコアが最大のものを選び、進化発展させ、b1個の分子を発生させる。合計a1+b1個の分子から、分子のスコアが最大のものを選び、さらに進化発展させ、b1個の分子を発生させる。これらの処理を複数回繰り返すことによって、所定数の分子を発生させる。なお、当該分子を他の分子と交差反応又は突然変異させることによって進化発展させてもよい。
【0071】
本実施形態における分子構造を発生させる処理のフローについて、
図9を用いて説明する。まず、分子構造が記載されているデータベースからa1個の分子構造を読み込み、分子を構成する原子をノード、原子間の結合をエッジとして分子構造を表現するグラフ構造に変換し、データフレームに蓄える(ステップ301)。当該
a1個の分子は、第0世代に該当する。
【0072】
データフレームに蓄えられたa1個の分子について分子のスコアを式(16)を用いて算出する。また、この分子のスコアが最大の分子を1分子選び、分子の進化発展を行う。もし、交差反応が選ばれた場合は、式(17)を用いて算出される確率にしたがってフラグメント化される分子を選択する。これらの操作により、新たにb1個の分子を発生させ、基分子の系統樹に追加される(ステップ303)。当該b1個の分子は、第1世代に該当する。
【0073】
a1+b1個の分子について、分子のスコアを、式(1)を用いて算出し、分子のスコアが最大の分子を基分子とし、進化発展させる。もし、交差反応が選ばれた場合は、式(17)を用いて算出される確率にしたがってフラグメント化される分子を基分子以外の分子の中から1分子選択する。これらの操作により、新たにb1個の分子を発生させ、基分子の系統樹に追加される(ステップ303)。当該b1個の分子は、第2世代に該当する。
【0074】
ステップ303の処理をさらにc-2回繰り返し、合計b1×c個の分子について系統樹追加を完了すると(ステップ305のYES)、処理を完了する。なお、さらに分子構造が記載されているデータベースからステップ301において用いたa1個の分子と異なる新たな分子をa1個選び、上述した処理を複数回繰り返してもよい。cは、1以上の整数であり、好ましくは1~1000000000の範囲であってもよい。
【0075】
<本実施形態における分子構造生成方法の具体例>
本実施形態における分子構造の発生方法によって、500~600nmに極大吸収を持つ分子構造の発生を行う場合の処理について、以下のとおり具体例を説明する。本具体例における処理の条件は、実施形態1の場合と同様である。
【0076】
本実施形態において、ZINCを用いてランダムに初期構造として1000分子を選び、Gaussian16/PM6による構造最適化、ZINDO法による励起エネルギー算出を行うことによってλmaxを算出し、各分子のスコアを式(16)を用いて算出した。スコアが最大の1分子を選び、進化発展させることにより10個の分子を新たに発生させた。次に1010個の分子について式(1)または(16)を用いてUCB1iを算出し、UCB1iが最大の分子を1分子選び、進化発展させ、10個の分子を新たに発生させた。この操作をさらに998回繰り返し、合計10000分子の構造を発生させた。
【0077】
本実施形態における分子構造生成方法用いて発生させた分子構造の主成分分析を行った結果を、
図10に示す。
図10は、発生した11000分子についてMorgan Fingerprintを用いて特徴量を算出し、主成分分析を行って2次元に投影したものである。
【0078】
本実施形態によれば、特定の分子構造周辺に局在化しないように、多様な分子構造を発生させることができる。また、実施形態1の場合と異なり、クラスタリングを行わずランダムに分子を選び進化発展させることから、発生させた分子の多様性をより確保しやすい。
【0079】
<実施形態3>
本実施形態における分子構造生成方法について
図11及び
図12を用いて説明する。
図11は、本実施形態における分子構造生成方法を示す概念図である。
図12は、本実施形態における分子構造を発生させる処理のフロー図である。なお、本実施形態においては、所望の物性値をPRとする。
【0080】
図11に示すように、本実施形態においては、まず任意のa1個の分子について分子スコアを算出し、確率化してb1個の分子を選択する。実施形態1の場合と異なり、クラスター分類は行わない。また、実施形態2の場合と異なり、分子のスコアが最大のものを選択することは行わない。a1は、例えば1000であってもよいがこれに限らない。新たにb1個の分子を進化発展させる。さらにa1+b1個の分子から、b1個の分子を選び、さらに進化発展させ、b1個の分子を発生させる。これらの処理を複数回繰り返すことによって、所定数の分子を発生させる。なお、当該分子を他の分子と交差反応又は突然変異させることによって進化発展させてもよい。
【0081】
本実施形態における分子構造を発生させる処理のフローについて、
図12を用いて説明する。まず、分子構造が記載されているデータベースからa1個の分子構造を読み込み、分子を構成する原子をノード、原子間の結合をエッジとして分子構造を表現するグラフ構造に変換し、データフレームに蓄える(ステップ401)。当該b1個の分子は、第0世代に該当する。
【0082】
データフレームに蓄えられたa1個の分子の各分子のスコアを式(2)の右辺第1項より算出し、式(4)により確率化し、b1個の分子を選択する。このb1個の分子について進化発展を行う。もし、交差反応が選ばれた場合は、基分子1個につき式(4)を用いて算出される確率にしたがってフラグメント化される分子1個を選択する。これらの操作により、新たにb1個の分子を発生させ、基分子の系統樹に追加される(ステップ403)。当該b1個の分子は、第1世代に該当する。
【0083】
a1+b1個の分子について、分子のスコアを、式(2)を用いて算出する。
図11におけるA2のように系統樹にB1が存在する場合は隣接分子を1と数える。系統樹内に1分子のみ含まれている場合は第1項のみで算出される。式(4)を用いて確率化し、a1+b1個の中から基分子としてb1個の分子を基分子として選び、進化発展させる。もし、交差反応が選ばれた場合は、式(17)を用いて算出される確率にしたがってフラグメント化される分子を基分子1個につき1分子選択する。これらの操作により、新たにb1個の分子を発生させ、基分子の系統樹に追加される(ステップ403)。当該b1個の分子は、第2世代に該当する。
【0084】
a1+b1×2個の分子についてステップ403の処理を繰り返してさらにb1個の分子を新たに発生させる。この時第2世代におけるC1の隣接分子数はB1とB2の2つである(ステップ403)。当該b1個の分子は、第3世代に該当する。
【0085】
a1+b1×3個の分子についてステップ404の処理を繰り返して、さらにb1個の分子を新たに発生させる(ステップ403)。このとき、第3世代における分子C1の隣接分子数は、B1、B2、D1の3と数える。
【0086】
ステップ405の処理をc-4回繰り返し、合計a1+b1×c個の分子について系統樹追加を完了すると(ステップ405のYES)、処理を完了する。なお、さらに分子構造が記載されているデータベースからステップ401において用いたa1個の分子と異なる新たな分子をa1個選び、上述した処理を複数回繰り返してもよい。cは、1以上の整数であり、好ましくは1~1000000000の範囲であってもよい。
【0087】
<本実施形態における分子構造生成方法の具体例>
本実施形態における分子構造の発生方法によって、500~600nmに極大吸収を持つ分子構造の発生を行う場合の処理について、以下のとおり具体例を説明する。本具体例における処理の条件は、実施形態1の場合と同様である。
【0088】
ZINCからランダムに初期構造として1000分子を選び、Gaussian16/PM6による構造最適化、ZINDO法による励起エネルギー算出を行うことによってλmaxを算出し、各分子のスコアを式(2)の右辺第1項を用いて算出した。スコアを、式(4)を用いて確率化し、基分子を10個選び、進化発展させることにより10個の分子を新たに発生させた。次に1010個の分子について、式(2)を用いて分子のスコアを算出し、式(4)を用いて確率化して基分子を10分子選び、進化発展させた。この操作をさらに998回繰り返し、合計10000分子の構造を発生させた。
【0089】
本実施形態における分子構造生成方法用いて発生させた分子構造の主成分分析を行った結果を、
図13に示す。
図13は、発生した11000分子についてMorgan Fingerprintを用いて特徴量を算出し、主成分分析を行って2次元に投影したものである。
【0090】
本実施形態によれば、特定の分子構造周辺に局在化しないように、多様な分子構造を発生させることができる。また、実施形態1及び2の場合と異なり、クラスタリングを行わず、分子のスコアが最大の分子を進化発展させるものでないことから、実施形態2の場合よりも発生させた分子の多様性をより確保しやすい。
【0091】
<実施形態1~3と従来例との比較>
実施形態1~3における分子構造生成方法を用いて発生させた分子構造について、従来例による方法を用いて分子構造を発生させた場合と比較する。
図14は、従来例による遺伝的アルゴリズム法を用いた分子構造生成方法を示す概念図である。
【0092】
図14に示すように、従来例による遺伝的アルゴリズム法を用いて分子構造を発生させる場合、まず任意のa1個の分子それぞれの分子のスコアを算出し、分子のスコアが最大の分子からb1個の分子を発生させる。ここで、従来例においては、実施形態1~3と異なり、新たに発生させたb1個の分子のみ分子のスコアを算出し、最大の分子から進化発展させる処理を繰り返す。そのため、進化発展させる分子として選ばれない分子は分子のスコアの比較対象とならず、さらなる進化発展も対象ともならないという点において、実施形態1~3の場合と異なる。
【0093】
<従来例における分子構造の発生方法の具体例>
本実施形態における分子構造の発生方法によって、500~600nmに極大吸収を持つ分子構造の発生を行う場合の処理について、以下のとおり具体例を説明する。本処理における条件は、実施形態1の場合と同様である。
【0094】
ZINCからランダムに初期構造として1000分子を選び、分子のスコアを算出し、λmaxを算出した。分子のスコアは、PR(λmax)×0.4+PR(振動子強度)×0.4+PR(SAスコア)×0.2)によって算出される値をそのまま用いた。まず、1000個の分子の中から分子のスコアが最大の分子を基分子として選び、10個の分子を新たに発生させた。この時、分子の進化発展の方法は、上述した実施形態1~3と同じである。次に、この基分子と新たに発生した10個の分子について、分子のスコアを算出し、新たにスコアが最大の分子を1つ選び、10個の分子を進化発展させることにより発生させた。この操作をさらに998回繰り返し、合計10000分子の構造を発生させた。
【0095】
従来例における分子構造生成方法用いて発生させた分子構造の主成分分析を行った結果を、
図15に示す。
図15は、初期構造としての1000分子と、発生させた10000分子とを合わせた11000分子について、Morgan Fingerprintを用いて特徴量を算出し、主成分分析を行って2次元のグラフに投影したものである。
【0096】
実施形態1~3における分子構造生成方法を用いた場合における分子の分布は、それぞれ
図7、
図10及び
図13に示されるとおり、従来例の遺伝的アルゴリズム法を用いた
図15に示す場合よりも広く特徴量空間に分布していることから、多様な分子構造が発生できたといえる。
【0097】
<その他の実施形態>
実施形態1~3に示した分子構造生成の方法は、例えばUV-VIS吸収スペクトル、発光波長、双極子モーメント、分極率、屈折率、誘電率、融点、沸点、親油性、親水性、耐熱性、密度、粘度、弾性率及び誘電正接等の種々の物性における所定の物性値を有する分子構造の予測を行う逆解析において広く用いることができる。
【0098】
<ハードウェアの構成例>
図16は、分子構造生成方法に関する処理を実現するためのハードウェア構成例を示すブロック図である。当該ハードウェア構成は、プロセッサ10とメモリ11を備える。
【0099】
プロセッサ10は、メモリ11からコンピュータプログラムを読み出して実行することによって、上述の実施形態において説明された分子構造生成方法に関する処理を行う。ここで、分子構造生成プログラムは、情報処理装置1に処理を実行させるプログラムであって、予め用意された複数の初期分子のうち、信頼限界値が最大である基分子を選択する選択処理と、前記基分子それぞれを進化発展させる進化発展処理と、前記初期分子及び進化発展された基分子を含むすべての分子を対象として、前記選択処理と前記進化発展処理を繰り返し実行することにより、新たな分子構造を生成するものである。
【0100】
また、分子構造生成プログラムは、情報処理装置1に処理を実行させるプログラムであって、予め用意された複数の初期分子のうち、信頼限界値が最大である基分子を選択する選択処理と、前記基分子それぞれを進化発展させる進化発展処理と、前記初期分子及び進化発展された基分子を含むすべての分子を対象として、前記選択処理と前記進化発展処理を繰り返し実行することにより、新たな分子構造を生成するものである。
【0101】
さらに、分子構造生成プログラムは、情報処理装置1に処理を実行させるプログラムであって、予め用意された複数の初期分子それぞれについて特徴量を算出し、さらに当該特徴量に基づき算出された確率値に応じて基分子を選択する選択処理と、前記基分子それぞれを進化発展させる進化発展処理と、前記初期分子及び進化発展された基分子を含むすべての分子を対象として、前記選択処理と前記進化発展処理を繰り返し実行することにより、新たな分子構造を生成するものである。
【0102】
プロセッサ10は、例えば、マイクロプロセッサ、MPU(Micro Processing Unit)、又はCPU(Central Processing Unit)であってもよい。プロセッサ200は、複数のプロセッサを含んでもよい。
【0103】
メモリ11は、揮発性メモリ及び不揮発性メモリの組み合わせによって構成される。メモリ11は、プロセッサ10から離れて配置されたストレージを含んでもよい。この場合、プロセッサ10は、図示されていないI/Oインタフェースを介してメモリ11にアクセスしてもよい。
【0104】
図16の例では、メモリ11は、ソフトウェアモジュール群を格納するために使用される。プロセッサ10は、これらのソフトウェアモジュール群をメモリ11から読み出して実行することによって、上述の実施形態において説明された分子構造生成方法に関する処理を行う。
【0105】
プロセッサの各々は、図面を用いて説明されたアルゴリズムをコンピュータに行わせるための命令群を含む1又は複数のプログラムを実行する。このプログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、Compact Disc Read Only Memory(CD-ROM)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、Programmable ROM(PROM)、Erasable PROM(EPROM)、フラッシュROM、Random Access Memory(RAM))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【0106】
なお、本開示は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【符号の説明】
【0107】
1 情報処理装置
2 選択手段
3 進化発展手段
10 プロセッサ
11 メモリ