IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 富士通株式会社の特許一覧

<>
  • 特許-探索プログラム、探索方法及び探索装置 図1
  • 特許-探索プログラム、探索方法及び探索装置 図2
  • 特許-探索プログラム、探索方法及び探索装置 図3
  • 特許-探索プログラム、探索方法及び探索装置 図4
  • 特許-探索プログラム、探索方法及び探索装置 図5
  • 特許-探索プログラム、探索方法及び探索装置 図6
  • 特許-探索プログラム、探索方法及び探索装置 図7
  • 特許-探索プログラム、探索方法及び探索装置 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-10-14
(45)【発行日】2025-10-22
(54)【発明の名称】探索プログラム、探索方法及び探索装置
(51)【国際特許分類】
   G16B 15/00 20190101AFI20251015BHJP
【FI】
G16B15/00
【請求項の数】 6
(21)【出願番号】P 2021148849
(22)【出願日】2021-09-13
(65)【公開番号】P2023041460
(43)【公開日】2023-03-24
【審査請求日】2024-06-11
(73)【特許権者】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】眞鍋 敏夫
(72)【発明者】
【氏名】佐藤 博之
【審査官】前田 侑香
(56)【参考文献】
【文献】特開2019-159683(JP,A)
【文献】特開2015-007537(JP,A)
【文献】特開2021-082165(JP,A)
【文献】WASSENAAR, Tsjerk A.,Going Backward: A Flexible Geometric Approach to Reverse Transformation from Coarse Grained to Atomistic Models,Journal of Chemical Theory and Computation,2013年12月20日,2014, 10,pp. 676-690,https://doi.org/10.1021/ct400617g
【文献】富士通株式会社,富士通とペプチドリーム、高速かつ高精度に中分子医薬品候補化合物の探索を実現[online]富士通とペプチドリーム、高速かつ高精度に中分子医薬品候補化合物の探索を実現[online],2020年10月13日,[2025年4月17日検索], インターネット<URL : https://pr.fujitsu.com/jp/news/2020/10/13.html>
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
G16B 5/00-99/00
G16C 10/00-99/00
(57)【特許請求の範囲】
【請求項1】
複数のアミノ酸を含む分子量が500~3000の中分子の分子構造を粗視化した粗視化モデルの配置の組み合わせを、組み合わせ最適化問題として探索するよう指示するコンピュータに、
前記粗視化モデルのL体とD体との違いを表現する項が省略された第1コスト演算式の値を算出することで、前記粗視化モデルの第1配置を探索するよう指示し、
探索された前記第1配置を初期配置として、前記粗視化モデルの前記L体と前記D体との違いを表現する項を含む第2コスト演算式の値を算出することで、前記粗視化モデルの第2配置を探索するよう指示し、
前記第2配置を出力する、
処理を実行させるための探索プログラム。
【請求項2】
前記粗視化モデルの配置を制約する複数の制約項のうちのいずれかの制約項の係数を変化させながら前記粗視化モデルの第3配置を探索するよう指示し、
前記第3配置が、前記第2配置から更新されていない場合に、前記第2配置を出力する、
処理を前記コンピュータに更に実行させるための、請求項1に記載の探索プログラム。
【請求項3】
前記第3配置の探索において、前記複数の制約項のうちのいずれかの制約項の前記係数を下げながら前記第3配置を探索するよう指示する、請求項2に記載の探索プログラム。
【請求項4】
前記第3配置の探索において、k回目(kは任意の整数)に制約項の係数を下げた際に探索された配置に対して、k+1回目に制約項の係数を下げた際に探索された配置が更新されていない場合、k回目に制約項の係数を下げた際に探索された配置を出力する、請求項3に記載の探索プログラム。
【請求項5】
複数のアミノ酸を含む分子量が500~3000の中分子の分子構造を粗視化した粗視化モデルの配置の組み合わせを、組み合わせ最適化問題として探索するよう指示するコンピュータが、
前記粗視化モデルのL体とD体との違いを表現する項が省略された第1コスト演算式の値を算出することで、前記粗視化モデルの第1配置を探索するよう指示し、
探索された前記第1配置を初期配置として、前記粗視化モデルの前記L体と前記D体との違いを表現する項を含む第2コスト演算式の値を算出することで、前記粗視化モデルの第2配置を探索するよう指示し、
前記第2配置を出力する、
処理を実行する探索方法。
【請求項6】
複数のアミノ酸を含む分子量が500~3000の中分子の分子構造を粗視化した粗視化モデルの配置の組み合わせを、組み合わせ最適化問題として探索するよう指示する探索装置であって、
前記粗視化モデルのL体とD体との違いを表現する項が省略された第1コスト演算式の値を算出することで、前記粗視化モデルの第1配置を探索するよう指示する第1段階実行部と、
探索された前記第1配置を初期配置として、前記粗視化モデルの前記L体と前記D体との違いを表現する項を含む第2コスト演算式の値を算出することで、前記粗視化モデルの第2配置を探索するよう指示する第2段階実行部と、
前記第2配置を出力する出力部と
を有する探索装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、探索プログラム、探索方法及び探索装置に関する。
【背景技術】
【0002】
近年、創薬の分野では、副作用の少ない中分子(分子量500~3000)による創薬が期待されており、中分子の安定構造を探索するための探索方法の開発が進められている。
【0003】
一例として、複数のアミノ酸を含む中分子の粗視化モデルに対して複数のアミノ酸の相互作用ポテンシャルを適用し、格子状に区切られた格子空間においてコスト演算式の値が最小となる最適なアミノ酸の配置を、組み合わせ最適化問題として解く探索方法が挙げられる。当該探索方法によれば、粗視化モデルにおける最適な配置の組み合わせを効率的に探索することができる。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2019-159683号公報
【文献】特開2015-007537号公報
【文献】特開2021―082165号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
一方で、上記探索方法を用いた場合であっても、例えば、残基数の多いペプチド等の粗視化モデルにおいて最適なアミノ酸の配置の組み合わせを探索しようとすると、組み合わせ最適化問題に使用されるビット数が膨大となるため、探索時間が増大する。
【0006】
一つの側面では、中分子の粗視化モデルにおいて最適な配置の組み合わせを効率的に探索することを目的とする。
【課題を解決するための手段】
【0007】
一態様によれば、探索プログラムは、
複数のアミノ酸を含む分子量が500~3000の中分子の分子構造を粗視化した粗視化モデルの配置の組み合わせを、組み合わせ最適化問題として探索するよう指示するコンピュータに、
前記粗視化モデルのL体とD体との違いを表現する項が省略された第1コスト演算式の値を算出することで、前記粗視化モデルの第1配置を探索するよう指示し、
探索された前記第1配置を初期配置として、前記粗視化モデルの前記L体と前記D体との違いを表現する項を含む第2コスト演算式の値を算出することで、前記粗視化モデルの第2配置を探索するよう指示し、
前記第2配置を出力する、処理を実行させる。
【発明の効果】
【0008】
中分子の粗視化モデルにおいて最適な配置の組み合わせを効率的に探索することができる。
【図面の簡単な説明】
【0009】
図1】探索システムのシステム構成の一例を示す図である。
図2】端末装置のハードウェア構成の一例を示す図である。
図3】コスト演算式情報の一例を示す図である。
図4】制約項演算式情報の一例を示す図である。
図5】端末装置の機能構成の一例を示す図である。
図6】イジング装置の機能構成の一例を示す図である。
図7】探索処理の流れを示すフローチャートである。
図8】探索処理の具体例を示す図である。
【発明を実施するための形態】
【0010】
以下、各実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省略する。
【0011】
[第1の実施形態]
<探索システムのシステム構成>
はじめに、第1の実施形態に係る探索システムのシステム構成について説明する。図1は、探索システムのシステム構成の一例を示す図である。探索システム100は、中分子の分子構造を粗視化した粗視化モデルを探索対象として、格子空間において所定の制約条件のもとでコストが最小となる最適な配置の組み合わせを探索するシステムである。
【0012】
図1に示すように、探索システム100は、端末装置110(探索装置の一例)と、量子アニーリング装置などのイジング装置120とを有する。
【0013】
端末装置110には、探索プログラムがインストールされており、当該プログラムが実行されることで、端末装置110は、探索対象情報取得部111、第1段階実行部112、第2段階実行部113、出力部114、第3段階実行部115として機能する。
【0014】
探索対象情報取得部111は、最適な配置の組み合わせを探索する探索対象の中分子の粗視化モデルを取得する。第1の実施形態において、探索対象情報取得部111が取得する探索対象の中分子の粗視化モデルは、例えば、
・ペプチドの主鎖粒子を形成するアミノ酸のα炭素を中心とした骨格部分、及び、
・側鎖粒子、
をそれぞれ1つの粗視化粒子に置き換え、
・単純立方格子(FCC:face-centered cubic)の空間(格子空間)に配置、
したモデルである。なお、格子空間の各点には、位置を表すビットが割り当てられており、粗視化粒子の配置が決まれば、粗視化粒子間の距離が一意に定まる。
【0015】
探索対象情報取得部111は、取得した探索対象の中分子の粗視化モデルを、第1段階実行部112に通知する。
【0016】
第1段階実行部112は、格子空間において所定の制約条件のもとでコスト演算式の値が最小となる最適なアミノ酸配置の組み合わせを、イジング装置120が、組み合わせ最適化問題として解くのに必要な情報として、最適化用情報格納部116より、
・コスト演算式情報(詳細は後述)、及び、
・制約項演算式情報(詳細は後述)、
を読み出す。
【0017】
また、第1段階実行部112は、探索対象の中分子の粗視化モデルについて、コスト演算式情報及び制約項演算式情報を用いて、予め定められた初期配置から最適な配置の組み合わせを探索するよう、イジング装置120に指示する。イジング装置120に指示するにあたり、第1段階実行部112では、イジング装置120に対して第1探索用情報を送信する。ここでいう第1探索用情報には、予め定められた初期配置の粗視化モデルと、コスト演算式情報及び制約項演算式情報とが含まれる。
【0018】
なお、第1の実施形態において、第1段階実行部112は、最適な配置の組み合わせを探索する際にイジング装置120の計算量(ビット数)が削減されるよう、コスト演算式情報を変形したうえでイジング装置120に送信する。つまり、第1段階実行部112が第1探索用情報を送信する際に、第1探索用情報に含めるコスト演算式情報は、計算量(ビット数)が削減されるように変形された変形後のコスト演算式情報である。
【0019】
第2段階実行部113は、第1段階実行部112が最適な配置の組み合わせを探索するよう指示したことに応じて、イジング装置120より送信された第1探索結果を取得する。
【0020】
また、第2段階実行部113は、最適化用情報格納部116よりコスト演算式情報及び制約項演算式情報を読み出す。更に、第2段階実行部113は、探索対象の中分子の粗視化モデルについて、変形されていないコスト演算式情報及び制約項演算式情報を用いて更なる最適な配置の組み合わせを探索するよう、イジング装置120に指示する。イジング装置120に指示するにあたり、第2段階実行部113では、イジング装置120に対して第2探索用情報を送信する。ここでいう第2探索用情報には、第1探索結果を初期配置とする粗視化モデルと、変形されていないコスト演算式情報及び制約項演算式情報とが含まれる。
【0021】
出力部114は、第2段階実行部113が最適な配置の組み合わせを探索するよう指示したことに応じて、イジング装置120より送信された第2探索結果を取得し、第3段階実行部115に通知する。
【0022】
また、出力部114は、取得した第2探索結果を評価し、最適な配置の組み合わせについて改善の余地があるか否かを判定する。改善の余地がないと判定した場合、出力部114は、第2探索結果を、最適解として出力する。
【0023】
また、出力部114は、第2探索結果を第3段階実行部115に通知したことに応じて、イジング装置120より送信された第3探索結果を取得し、再び第3段階実行部115に通知する。
【0024】
更に、出力部114は、取得した第3探索結果を評価し、最適な配置の組み合わせについて改善の余地があるか否かを判定する。改善の余地がないと判定した場合、出力部114は、第3探索結果を、最適解として出力する。
【0025】
第3段階実行部115は、出力部114より通知された、第2探索結果または第3探索結果を取得する。
【0026】
また、第3段階実行部115は、最適化用情報格納部116よりコスト演算式情報及び制約項演算式情報を読み出す。更に、第3段階実行部115は、探索対象の中分子の粗視化モデルについて、コスト演算式情報及び制約項演算式情報を用いて更なる最適な配置の組み合わせを探索するよう、イジング装置120に指示する。イジング装置120に指示するにあたり、第3段階実行部115では、イジング装置120に対して第3探索用情報を送信する。ここでいう第3探索用情報には、第2探索結果(あるいは第3探索結果)を初期配置とする粗視化モデルと、コスト演算式情報及び制約項演算式情報とが含まれる。
【0027】
なお、第1の実施形態において、第3段階実行部115は、イジング装置120が最適な配置の組み合わせを探索する際に、局所解に陥ることがないよう、制約項演算式情報に含まれる係数を変化させたうえでイジング装置120に送信する。つまり、第3段階実行部115が第3探索用情報を送信する際に含める制約項演算式情報は、局所解に陥ることがないように係数を変化させた変化後の制約項演算式情報である。
【0028】
一方、イジング装置120には、最適化プログラムがインストールされており、当該プログラムが実行されることで、イジング装置120は、組み合わせ最適化部121として機能する。
【0029】
組み合わせ最適化部121は、端末装置110より第1探索用情報を受信すると、粗視化モデルにおける最適な配置の組み合わせを、組み合わせ最適化問題として解くことで第1探索結果を算出し、算出した第1探索結果を、端末装置110に送信する。上述したように、第1探索用情報に含まれるコスト演算式情報は、計算量(ビット数)が削減されるように変形された変形後のコスト演算式情報であるため、組み合わせ最適化部121では、第1探索結果を高速に算出することができる。
【0030】
また、組み合わせ最適化部121は、端末装置110より第2探索用情報を受信すると、粗視化モデルにおける最適な配置の組み合わせを、組み合わせ最適化問題として解くことで第2探索結果を算出し、算出した第2探索結果を、端末装置110に送信する。上述したように、第2探索用情報に含まれる粗視化モデルは、第1探索結果を初期配置としているため、組み合わせ最適化部121では、第2探索結果を高速に算出することができる。また、上述したように、第2探索用情報に含まれるコスト演算式情報は、変形されていないコスト演算式情報であるため、組み合わせ最適化部121では、精度の高い第2探索結果を算出することができる。
【0031】
また、組み合わせ最適化部121は、端末装置110より第3探索用情報を受信すると、粗視化モデルにおける最適な配置の組み合わせを、組み合わせ最適化問題として解くことで第3探索結果を算出し、算出した第3探索結果を、端末装置110に送信する。上述したように、第3探索用情報に含まれる制約項演算式情報は、係数を変化させた変化後の制約項演算式情報であるため、組み合わせ最適化部121では、局所解に陥ることなく精度の高い第3探索結果を算出することができる。
【0032】
<端末装置のハードウェア構成>
次に、端末装置110のハードウェア構成について説明する。図2は、端末装置のハードウェア構成の一例を示す図である。
【0033】
図2に示すように、端末装置110は、プロセッサ201、メモリ202、補助記憶装置203、I/F(Interface)装置204、通信装置205、ドライブ装置206を有する。なお、端末装置110の各ハードウェアは、バス207を介して相互に接続されている。
【0034】
プロセッサ201は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)等の各種演算デバイスを有する。プロセッサ201は、各種プログラム(例えば、探索プログラム等)をメモリ202上に読み出して実行する。
【0035】
メモリ202は、ROM(Read Only Memory)、RAM(Random Access Memory)等の主記憶デバイスを有する。プロセッサ201とメモリ202とは、いわゆるコンピュータを形成し、プロセッサ201が、メモリ202上に読み出した各種プログラムを実行することで、当該コンピュータは各種機能を実現する。
【0036】
補助記憶装置203は、各種プログラムや、各種プログラムがプロセッサ201によって実行される際に用いられる各種情報を格納する。例えば、最適化用情報格納部116は、補助記憶装置203において実現される。
【0037】
I/F装置204は、外部装置の一例である操作装置210、出力装置220と、端末装置110とを接続する接続デバイスである。
【0038】
通信装置205は、他の装置の一例であるイジング装置120と通信するための通信デバイスである。
【0039】
ドライブ装置206は記録媒体230をセットするためのデバイスである。ここでいう記録媒体230には、CD-ROM、フレキシブルディスク、光磁気ディスク等のように情報を光学的、電気的あるいは磁気的に記録する媒体が含まれる。また、記録媒体230には、ROM、フラッシュメモリ等のように情報を電気的に記録する半導体メモリ等が含まれていてもよい。
【0040】
なお、補助記憶装置203にインストールされる各種プログラムは、例えば、配布された記録媒体230がドライブ装置206にセットされ、該記録媒体230に記録された各種プログラムがドライブ装置206により読み出されることでインストールされる。あるいは、補助記憶装置203にインストールされる各種プログラムは、通信装置205を介してネットワークからダウンロードされることで、インストールされてもよい。
【0041】
なお、ここでは、端末装置110のハードウェア構成についてのみ説明し、イジング装置120のハードウェア構成については説明しなかったが、イジング装置120のハードウェア構成は、例えば、端末装置110と同様であってもよい。この場合、イジング装置120は、メモリに読み出された最適化プログラムがプロセッサによって実行されることで、組み合わせ最適化部121として機能する。
【0042】
あるいは、イジング装置120のハードウェア構成は、いわゆる量子コンピュータと同様のハードウェア構成であってもよい。
【0043】
<コスト演算式情報の具体例>
次に、最適化用情報格納部116に格納されるコスト演算式情報の具体例について説明する。図3は、コスト演算式情報の一例を示す図である。図3のコスト演算式情報300に示すように、粗視化モデルにおける最適な配置の組み合わせを、組み合わせ最適化問題としてアニーリング法により解くための定式化において、コストは、下式(1)のハミルトニアンで表される。
【0044】
【数1】
【0045】
このように、コストは、粗視化粒子間の相互作用エネルギを表現する項と、粗視化粒子のL体とD体との違いを表現する項とを含む。
【0046】
また、図3の粗視化粒子間の相互作用エネルギ情報310に示すように、粗視化粒子間の相互作用エネルギを表現する項のハミルトニアンは、下式(2)により定義される。
【0047】
【数2】
【0048】
なお、上式(2)において、
・N:粗視化粒子(アミノ酸残基)の総数、
・Q:i番目の粗視化粒子(アミノ酸残基)の主鎖粒子を表現するビット番号の集合、
・QSC :i番目の粗視化粒子(アミノ酸残基)の側鎖粒子を表現するビット番号の集合、
・η(a):ビット番号aが表現する格子点からポテンシャルデータが存在する距離内の側鎖粒子の格子点を表現するビット番号の集合、
・ω(a):ビット番号aが表現する粗視化粒子(アミノ酸残基)、
・ω(b):ビット番号bが表現する粗視化粒子(アミノ酸残基)、
・Pω(a)ω(b):粗視化粒子(アミノ酸残基)ω(a)と、粗視化粒子(アミノ酸残基)ω(b)との間に働く相互作用エネルギ、
・q:ビット番号aの変数、
・q:ビット番号bの変数、
である。
【0049】
また、図3のライブラリ情報311に示すように、粗視化粒子(アミノ酸残基)ω(a)と、粗視化粒子(アミノ酸残基)ω(b)との間に働く相互作用エネルギPω(a)ω(b)は、粗視化粒子の種類ごとに、それぞれの距離について予め計算されている。図3のライブラリ情報311の例は、粗視化粒子ω(a)と粗視化粒子ω(b)との間の相互作用エネルギPω(a)ω(b)が、距離1~距離nについて予め計算され、ライブラリ化された様子を示している。
【0050】
また、図3のL体/D体の区別に関する情報320に示すように、粗視化粒子(アミノ酸残基)のL体とD体の違いを表現する項のハミルトニアンは、下式(3)により定義される。
【0051】
【数3】
【0052】
なお、上式(3)において、
・η(a):ビット番号aが表現する格子点に隣接する主鎖粒子の格子点を表現するビット、
・η(b):ビット番号bが表現する格子点に隣接する主鎖粒子の格子点を表現するビット、
・β(b):ビット番号bが表現する格子点に隣接する側鎖粒子の格子点を表現するビット、
・S(a,b,c,d):ポテンシャルの値、
・q:ビット番号cの変数、
・q:ビット番号dの変数、
である。
【0053】
<制約項演算式情報の具体例>
次に、最適化用情報格納部116に格納される制約項演算式情報の具体例について説明する。図4は、制約項演算式情報の一例を示す図である。図4に示すように、最適化用情報格納部116には、4種類の制約項演算式情報が格納されている。
【0054】
このうち、制約項演算式情報410は、各粗視化粒子(アミノ酸残基)が格子空間の1箇所にのみ存在することを保証する制約条件であり、下式(4)により定義される。
【0055】
【数4】
【0056】
なお、上式(4)において、
・N:粗視化粒子(アミノ酸残基)の総数、
・Q:i番目の粗視化粒子(アミノ酸残基)の主鎖粒子を表現するビット番号の集合、
・QSC :i番目の粗視化粒子(アミノ酸残基)の側鎖粒子を表現するビット番号の集合、
・q:ビット番号aの変数、
・q:ビット番号bの変数、
・λone:係数、
である。
【0057】
また、制約項演算式情報420は、複数の粗視化粒子(アミノ酸残基)が同一の格子点に存在しないことを保証する制約条件であり、下式(5)により定義される。
【0058】
【数5】
【0059】
なお、上式(5)において、
・V:格子空間、
・θ(ν):格子点νを表現する全てのビット番号の集合、
・λolap:係数、
である。
【0060】
また、制約項演算式情報430は、各粗視化粒子(アミノ酸残基)が分子の配列通りに連結していることを保証する制約条件であり、下式(6)により定義される。
【0061】
【数6】
【0062】
なお、上式(6)において、
・d(a,b):a番目とb番目のビット変数に対応する格子点間の距離、
・d(a,c):a番目とc番目のビット変数に対応する格子点間の距離、
・d:最近接格子点間の距離、
・q:ビット番号cの変数、
・q:ビット番号iの変数、
・q:ビット番号jの変数、
・λconn:係数、
である。
【0063】
また、制約項演算式情報440は、連結しない粗視化粒子(アミノ酸残基)が隣接格子に存在しないことを保証する制約条件であり、下式(7)により定義される。
【0064】
【数7】
【0065】
なお、上式(7)において、
・η(a):a番目のビットが表現する格子点の隣接格子点を表現するビット番号の集合、
・c:環状かつi=N/2のときに1、その他の場合は2、
・λnadj:係数、
である。
【0066】
<端末装置の機能構成の詳細>
次に、端末装置110の機能構成の詳細について説明する。図5は、端末装置の機能構成の一例を示す図である。図1を用いて説明したように、端末装置110は、探索対象情報取得部111、第1段階実行部112、第2段階実行部113、出力部114、第3段階実行部115として機能する。
【0067】
また、図5に示すように、第1段階実行部112は、更に、実行指示部511、コスト演算式情報変形部512、演算式情報取得部513を有する。
【0068】
また、第2段階実行部113は、探索結果取得部521、実行指示部522、演算式情報取得部523を有する。
【0069】
また、出力部114は、探索結果取得部531、評価部532を有する。更に、第3段階実行部115は、実行指示部541、係数変更部542、演算式情報取得部543を有する。以下、第1段階実行部112、第2段階実行部113、出力部114、第3段階実行部115がそれぞれ有する各部の詳細について説明する。
【0070】
演算式情報取得部513は、最適化用情報格納部116よりコスト演算式情報及び制約項演算式情報を読み出し、コスト演算式情報変形部512に通知する。
【0071】
コスト演算式情報変形部512は、演算式情報取得部513より、コスト演算式情報を取得し、最適な配置の組み合わせを探索する際のイジング装置120の計算量(ビット数)を削減するよう、取得したコスト演算式情報を変形する。具体的には、コスト演算式情報変形部512は、コスト演算式情報300において、粗視化粒子のL体とD体との違いを表現する項を省略することで、下式(8)に示す変形後のコスト演算式情報を生成する。
【0072】
【数8】
【0073】
上式(8)の場合、上式(1)で示したコスト演算式情報と比較して、計算量(ビット数)を削減することができるため、第1探索結果を高速に算出する際の探索時間を大幅に短縮することができる。
【0074】
また、コスト演算式情報変形部512は、変形後のコスト演算式情報と、制約項演算式情報とを、実行指示部511に通知する。
【0075】
実行指示部511は、探索対象情報取得部111より、予め定められた初期配置の粗視化モデルを取得するとともに、コスト演算式情報変形部512より、変形後のコスト演算式情報及び制約項演算式情報を取得する。また、実行指示部511は、予め定められた初期配置の粗視化モデルと、変形後のコスト演算式情報及び制約項演算式情報とを含む第1探索用情報を、イジング装置120に送信し、最適な配置の組み合わせを探索するよう指示する。
【0076】
探索結果取得部521は、イジング装置120より第1探索結果を取得し、実行指示部522に通知する。
【0077】
演算式情報取得部523は、最適化用情報格納部116よりコスト演算式情報及び制約項演算式情報を読み出し、実行指示部522に通知する。
【0078】
実行指示部522は、探索結果取得部521より第1探索結果を取得し、演算式情報取得部523より、コスト演算式情報及び制約項演算式情報を取得する。また、実行指示部522は、取得した第1探索結果を初期配置とする粗視化モデルと、変形されていないコスト演算式情報及び制約項演算式情報とを含む第2探索用情報を、イジング装置120に送信し、最適な配置の組み合わせを探索するよう指示する。第2探索用情報の場合、第1探索結果を初期配置として最適な配置の組み合わせが探索される。このため、粗視化粒子のL体とD体との違いを表現する項が含まれていたとしても(つまり、L体/D体を考慮した配置についても)、精度の高い第2探索結果を高速に算出することができる。
【0079】
探索結果取得部531は、イジング装置120より第2探索結果または第3探索結果を取得し、評価部532に通知する。
【0080】
評価部532は、探索結果取得部531より通知される第2探索結果または第3探索結果を評価し、最適な配置の組み合わせについて改善の余地があるか否かを判定する。改善の余地がないと判定した場合、評価部532は、直前の探索結果を最適解として出力する。
【0081】
なお、直前の探索結果とは、例えば、第2探索結果が通知された後に、第3探索結果が通知された場合であって、第2探索結果と第3探索結果とで、最適な配置の組み合わせが更新されていない場合には、第2探索結果を最適解として出力する。また、例えば、k回目(kは任意の整数)の第3探索結果が通知された後に、k+1回目の第3探索結果が通知された場合であって、k回目とk+1回目とで、最適な配置の組み合わせが更新されていない場合には、k回目の第3探索結果を最適解として出力する。
【0082】
また、評価部532は、最適な配置の組み合わせについて改善の余地があると判定した場合、探索結果取得部531から通知された第2探索結果または第3探索結果を、実行指示部541に通知する。
【0083】
演算式情報取得部543は、最適化用情報格納部116よりコスト演算式情報及び制約項演算式情報を読み出し、係数変更部542に通知する。
【0084】
係数変更部542は、演算式情報取得部543よりコスト演算式情報及び制約項演算式情報を取得し、制約項演算式情報に含まれる係数を変化させる。また、係数変更部542は、変化後の制約項演算式情報及びコスト演算式情報を実行指示部541に通知する。
【0085】
実行指示部541は、評価部532より第2探索結果または第3探索結果を取得し、係数変更部542より、変化後の制約項演算式情報及びコスト演算式情報を取得する。また、実行指示部541は、取得した第2探索結果または第3探索結果を初期配置とする粗視化モデルと、コスト演算式情報及び変化後の制約項演算式情報とを含む第3探索用情報を、イジング装置120に送信し、最適な配置の組み合わせを探索するよう指示する。第3探索用情報の場合、変化後の制約項演算式情報及びコスト演算式情報を用いて最適な配置の組み合わせが探索されるため、局所解に陥ることなく精度の高い探索結果を算出することができる。
【0086】
これは、粗視化粒子を人為的な格子空間に配置する場合、実際の分子とは位置や形状が異なるため、制約条件の寄与によっては局所的なエネルギ障壁を増大させ、最適解近傍に移ることが困難になる場合があるところ、第3探索用情報によれば、
・係数変更部542が制約項演算式情報の係数を変化させ、
・制約条件を一時的に弱める、
ことで、最適解近傍に移りやすくなり、より精度の高い解に到達する可能性を高めることができる。
【0087】
<イジング装置の機能構成の詳細>
次に、イジング装置120の機能構成の詳細について説明する。図6は、イジング装置の機能構成の一例を示す図である。図1を用いて説明したように、イジング装置120は、組み合わせ最適化部121として機能する。また、図6に示すように、組み合わせ最適化部121は、更に、QUBO生成部611、変換部612、最適解計算部613を有する。
【0088】
QUBO生成部611は、端末装置110より、第1探索用情報、第2探索用情報、第3探索用情報を取得する。また、QUBO生成部611は、第1探索用情報に含まれる変形後のコスト演算式情報及び制約項演算式情報をQUBO(Quadratic Unconstrained Binary Optimization)へ変換する。また、QUBO生成部611は、第2探索用情報に含まれる、変形されていないコスト演算式情報及び制約項演算式情報をQUBOに変換する。更に、QUBO生成部611は、第3探索用情報に含まれるコスト演算式情報及び変化後の制約項演算式情報をQUBOに変換する。
【0089】
変換部612は、変換したQUBOを、デジタルアニーラに適した形式に変換する。
【0090】
最適解計算部613は、デジタルアニーラに適した形式に変換されたQUBOを、デジタルアニーラで解くことで、最適な配置の組み合わせを探索する。また、最適解計算部613は、第1探索用情報に基づいて探索した最適な配置の組み合わせを、第1探索結果として、端末装置110に送信する。また、最適解計算部613は、第2探索用情報に基づいて探索した最適な配置の組み合わせを、第2探索結果として、端末装置110に送信する。更に、最適解計算部613は、第3探索用情報に基づいて探索した最適な配置の組み合わせを、第3探索結果として、端末装置110に送信する。
【0091】
<探索処理の流れ>
次に、探索システム100による探索処理の流れについて説明する。図7は、探索処理の流れを示すフローチャートである。
【0092】
ステップS701において、端末装置110の探索対象情報取得部111は、探索対象の中分子の粗視化モデルを取得する。
【0093】
ステップS702において、端末装置110の第1段階実行部112は、読み出したコスト演算式情報300において、粗視化粒子のL体とD体との違いを表現する項を省略した変形後のコスト演算式情報を生成する。
【0094】
ステップS703において、端末装置110の第1段階実行部112は、探索対象の中分子の粗視化モデルについて、最適な配置の組み合わせを探索するよう、イジング装置120に指示する。このとき、端末装置110の第1段階実行部112は、変形後のコスト演算式情報及び制約項演算式情報410~440により、最適な配置の組み合わせを探索するよう指示する。
【0095】
ステップS704において、イジング装置120の組み合わせ最適化部121は、第1探索結果を算出し、端末装置110の第2段階実行部113は、イジング装置120の組み合わせ最適化部121より第1探索結果を取得する。
【0096】
ステップS705において、端末装置110の第2段階実行部113は、第1探索結果を初期配置として、探索対象の中分子の粗視化モデルについて、最適な配置の組み合わせを探索するよう、イジング装置120に指示する。このとき、端末装置110の第2段階実行部113は、コスト演算式情報300及び制約項演算式情報410~440により、最適な配置の組み合わせを探索するよう指示する。
【0097】
ステップS706において、イジング装置120の組み合わせ最適化部121は、第2探索結果を算出し、端末装置110の出力部114は、イジング装置120の組み合わせ最適化部121より第2探索結果を取得する。
【0098】
ステップS707において、端末装置110の第3段階実行部115は、読み出した制約項演算式情報410~440のいずれか1つまたは複数の係数を変化させ、変化後の制約項演算式情報を生成する。
【0099】
ステップS708において、端末装置110の第3段階実行部115は、出力部114が取得した最新の探索結果を初期配置として、探索対象の中分子の粗視化モデルについて、最適な配置の組み合わせを探索するよう、イジング装置120に指示する。このとき、端末装置110の第3段階実行部115は、コスト演算式情報300及び変化後の制約項演算式情報により、最適な配置の組み合わせを探索するよう指示する。
【0100】
ステップS709において、イジング装置120の組み合わせ最適化部121は、第3探索結果を算出し、端末装置110の出力部114は、イジング装置120の組み合わせ最適化部121より第3探索結果を取得する。
【0101】
ステップS710において、端末装置110の出力部114は、ステップS709において取得した第3探索結果について、改善の余地があるか否かを判定する。ステップS710において改善の余地があると判定した場合には(ステップS710においてYESの場合には)、ステップS707に戻る。
【0102】
この場合、端末装置110の第3段階実行部115では、2回目の変化後の制約項演算式情報を生成し(ステップS707)、1回目の第3探索結果を初期配置として、最適な配置の組み合わせを探索するよう指示する(ステップS708)。これにより、端末装置110の出力部114では、2回目の第3探索結果を取得する(ステップS709)。
【0103】
以降、探索システム100では、ステップS710において、端末装置110の出力部114が、改善の余地がないと判定するまで、ステップS707~ステップS710の処理を繰り返す。
【0104】
一方、ステップS710において改善の余地がないと判定した場合には(ステップS710においてNOの場合には)、ステップS711に進む。
【0105】
ステップS711において、端末装置110の出力部114は、改善の余地がないと判定する直前の探索結果を最適解として出力する。
【0106】
<探索処理の具体例>
次に、探索システム100による探索処理の具体例について説明する。図8は、探索処理の具体例を示す図であり、3種類のペプチド(ペプチドA(残基数=12)、ペプチドB(残基数=10)、ペプチドC(残基数=15))の粗視化モデルを探索対象として、最適な配置の組み合わせを探索した様子を示している。
【0107】
このうち、図8(a)は、比較例として、
・変形後のコスト演算式情報を用いることなく、かつ、
・変化後の制約項演算式情報を用いることなく、
最適な配置の組み合わせを探索した場合を示している(つまり、コスト演算式情報300及び制約項演算式情報410~440を用いて最適な配置の組み合わせを探索した場合を示している)。
【0108】
具体的には、コスト演算式情報300及び制約項演算式情報410~440を用いた場合、ペプチドAのビット数は"60,671"であり、最適な配置の組み合わせを探索することで、
・コストが"1282"削減され、
・探索時間が"255"secかかった、
ことを示している。
【0109】
同様に、コスト演算式情報300及び制約項演算式情報410~440を用いた場合、ペプチドBのビット数は"42,918"であり、最適な配置の組み合わせを探索することで、
・コストが"966"削減され、
・探索時間が"188"secかかった、
ことを示している。
【0110】
同様に、コスト演算式情報300及び制約項演算式情報410~440を用いた場合、ペプチドBのビット数は"42,918"であり、最適な配置の組み合わせを探索することで、
・コストが"926"削減され、
・探索時間が"855"secかかった、
ことを示している。
【0111】
一方、図8(b)は、図7に示した探索処理を実行して(つまり、変形後のコスト演算式情報、及び、変化後の制約項演算式情報を用いて)、最適な配置の組み合わせを探索した場合を示している。
【0112】
具体的には、第1段階において、変形後のコスト演算式情報及び制約項演算式情報410~440を用いた場合、ペプチドAのビット数は"8,192"となり、最適な配置の組み合わせを探索することで、
・コストが"1387"削減され、
・探索時間が"41"secかかった、
ことを示している。
【0113】
同様に、第1段階において、変形後のコスト演算式情報及び制約項演算式情報410~440を用いた場合、ペプチドBのビット数は"8,192"となり、最適な配置の組み合わせを探索することで、
・コストが"960"削減され、
・探索時間が"42"secかかった、
ことを示している。
【0114】
同様に、第1段階において、変形後のコスト演算式情報及び制約項演算式情報410~440を用いた場合、ペプチドCのビット数は"14,298"となり、最適な配置の組み合わせを探索することで、
・コストが"1172"削減され、
・探索時間が"712"secかかった、
ことを示している。
【0115】
また、第2段階において、変形されていないコスト演算式情報300及び制約項演算式情報410~440を用いた場合、ペプチドAのビット数は"60,671"となるものの、第1探索結果を初期配置として最適な配置の組み合わせを探索することで、
・コストが"1357"削減され、
・探索時間が"0"secとなった、
ことを示している。
【0116】
同様に、第2段階において、コスト演算式情報300及び制約項演算式情報410~440を用いた場合、ペプチドBのビット数は"42,918"となるものの、第1探索結果を初期配置として最適な配置の組み合わせを探索することで、
・コストが"930"削減され、
・探索時間が"0"secとなった、
ことを示している。
【0117】
同様に、第2段階において、コスト演算式情報300及び制約項演算式情報410~440を用いた場合、ペプチドCのビット数は"167,256"となるものの、第1探索結果を初期配置として最適な配置の組み合わせを探索することで、
・コストが"1112"削減され、
・探索時間が"1"secとなった、
ことを示している。
【0118】
また、第3段階において、コスト演算式情報300と、係数を"0.6"倍した変化後の制約項演算式情報とを用いた場合、第2探索結果を初期配置として最適な配置の組み合わせを探索することで、
・コストが"1357"削減され、
・探索時間が"0"secとなった、
ことを示している。
【0119】
同様に、第3段階において、コスト演算式情報300と、係数を"0.6"倍した変化後の制約項演算式情報とを用いた場合、第2探索結果を初期配置として最適な配置の組み合わせを探索することで、
・コストが"1001"削減され、
・探索時間が"0"secとなった、
ことを示している。
【0120】
同様に、第3段階において、コスト演算式情報300と、係数を"0.8"倍した変化後の制約項演算式情報とを用いた場合、第2探索結果を初期配置として最適な配置の組み合わせを探索することで、
・コストが"1132"削減され、
・探索時間が"1"secとなった、
ことを示している。
【0121】
図8(a)と図8(b)とを対比すると、ペプチドA~ペプチドCのいずれも、
図8(b)の方が、コスト削減量は大きくなり(図8(b)の"第3段階"の"コスト"参照)、
図8(b)の方が、探索時間が短くなる(図8(b)の"合計時間"参照)、
ことが確認された。つまり、探索システム100によれば、中分子の粗視化モデルにおいて最適な配置の組み合わせを効率的(高速かつ高精度)に探索することができる。
【0122】
以上の説明から明らかなように、第1の実施形態に係る端末装置110は、中分子の粗視化モデルにおける配置の組み合わせを、組み合わせ最適化問題として多段階で探索するよう指示する。その際、第1の実施形態に係る端末装置110では、第1段階において、アミノ酸のL端とD体との区別を省略して粗視化モデルのコストを算出することで、コストが最小となる配置の組み合わせを探索するよう指示する。また、第1の実施形態に係る端末装置110では、第2段階において、第1段階で探索された配置を初期配置として、アミノ酸のL体とD体とを区別しながら粗視化モデルのコストを算出することで、コストが最小となる配置を探索するよう指示する。更に、第1の実施形態に係る端末装置110では、第2段階において探索された配置を、粗視化モデルにおける最適な配置の組み合わせとして出力する。
【0123】
これにより、第1の実施形態によれば、精度の高い配置の組み合わせを高速に探索することができる。つまり、第1の実施形態によれば、中分子の粗視化モデルにおいて最適な配置の組み合わせを効率的に探索することができる。
【0124】
[第2の実施形態]
上記第1の実施形態では、QUBO生成部611が、第1探索用情報及び第2探索用情報を順次変換するものとして説明した。しかしながら、QUBO生成部611による変換タイミングはこれに限定されない。例えば、第1探索用情報に含まれる変形後のコスト演算式情報と、第2探索用情報に含まれる変形されていないコスト演算式情報とは、最適解計算部613が最適は配置の組み合わせを探索する前に、先に変換しておいてもよい。
【0125】
また、上記第1の実施形態では、探索システム100が端末装置110とイジング装置120とを有するものとして説明した。しかしながら、探索システム100は、端末装置110とイジング装置120以外の装置(つまり、3台以上の装置)により形成されてもよい。あるいは、探索システム100は、一体化された装置(つまり、1台の装置)により形成されてもよい。この場合、探索処理(図7)は、例えば、当該1台の装置により、探索プログラム(探索プログラム+最適化プログラム)が実行されることで実現されることになる。
【0126】
また、上記第1の実施形態では、端末装置110が、探索対象情報取得部111~第3段階実行部115を有し、イジング装置120が、組み合わせ最適化部121を有するものとして説明した。しかしながら、端末装置110の一部の機能は、イジング装置120において実現されてもよい。同様に、イジング装置120の一部の機能は、端末装置110において実現されてもよい。
【0127】
なお、開示の技術では、以下に記載する付記のような形態が考えられる。
(付記1)
中分子に含まれる複数のアミノ酸の配置の組み合わせを、組み合わせ最適化問題として、多段階で探索するよう指示するコンピュータに、
前記複数のアミノ酸のL体とD体とを区別しない第1コスト演算式の値を算出することで、前記複数のアミノ酸の第1配置を探索するよう指示し、
探索された前記第1配置を初期配置として、前記複数のアミノ酸の前記L体と前記D体とを区別した第2コスト演算式の値を算出することで、前記複数のアミノ酸の第2配置を探索するよう指示し、
前記第2配置を出力する、
処理を実行させるための探索プログラム。
(付記2)
前記複数のアミノ酸の配置を制約する複数の制約項のうちのいずれかの制約項の係数を変化させながら前記複数のアミノ酸の第3配置を探索するよう指示し、
前記第3配置が、前記第2配置から更新されていない場合に、前記第2配置を出力する、
処理を前記コンピュータに更に実行させるための、付記1に記載の探索プログラム。
(付記3)
前記第3配置の探索において、前記複数の制約項のうちのいずれかの制約項の前記係数を下げながら前記第3配置を探索するよう指示する、付記2に記載の探索プログラム。
(付記4)
前記複数の制約項には、前記中分子に含まれる前記複数のアミノ酸の各々が、格子空間の1箇所にのみ存在することを保証するための制約項が含まれる、付記2に記載の探索プログラム。
(付記5)
前記複数の制約項には、前記中分子に含まれる前記複数のアミノ酸の各々が、同一の格子点に存在しないことを保証するための制約項が含まれる、付記2に記載の探索プログラム。
(付記6)
前記複数の制約項には、前記中分子に含まれる前記複数のアミノ酸の各々が、所定の配列で互いに連結していることを保証するための制約項が含まれる、付記2に記載の探索プログラム。
(付記7)
前記複数の制約項には、前記中分子に含まれる前記複数のアミノ酸について、連結しないアミノ酸が隣接する格子に存在しないことを保証するための制約項が含まれる、付記2に記載の探索プログラム。
(付記8)
前記第3配置の探索において、k回目(kは任意の整数)に制約項の係数を下げた際に探索された配置に対して、k+1回目に制約項の係数を下げた際に探索された配置が更新されていない場合、k回目に制約項の係数を下げた際に探索された配置を出力する、付記3に記載の探索プログラム。
(付記9)
中分子に含まれる複数のアミノ酸の配置の組み合わせを、組み合わせ最適化問題として、多段階で探索するよう指示するコンピュータが、
前記複数のアミノ酸のL体とD体とを区別しない第1コスト演算式の値を算出することで、前記複数のアミノ酸の第1配置を探索するよう指示し、
探索された前記第1配置を初期配置として、前記複数のアミノ酸の前記L体と前記D体とを区別した第2コスト演算式の値を算出することで、前記複数のアミノ酸の第2配置を探索するよう指示し、
前記第2配置を出力する、
処理を実行する探索方法。
(付記10)
中分子に含まれる複数のアミノ酸の配置の組み合わせを、組み合わせ最適化問題として、多段階で探索するよう指示する探索装置であって、
前記複数のアミノ酸のL体とD体とを区別しない第1コスト演算式の値を算出することで、前記複数のアミノ酸の第1配置を探索するよう指示する第1段階実行部と、
探索された前記第1配置を初期配置として、前記複数のアミノ酸の前記L体と前記D体とを区別した第2コスト演算式の値を算出することで、前記複数のアミノ酸の第2配置を探索するよう指示する第2段階実行部と、
前記第2配置を出力する出力部と
を有する探索装置。
【0128】
なお、上記実施形態に挙げた構成等に、その他の要素との組み合わせ等、ここで示した構成に本発明が限定されるものではない。これらの点に関しては、本発明の趣旨を逸脱しない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
【符号の説明】
【0129】
100 :探索システム
110 :端末装置
111 :探索対象情報取得部
112 :第1段階実行部
113 :第2段階実行部
114 :出力部
115 :第3段階実行部
121 :組み合わせ最適化部
300 :コスト演算式情報
310 :粗視化粒子間の相互作用エネルギ情報
311 :ライブラリ情報
320 :L体/D体の区別に関する情報
410~440 :制約項演算式情報
511 :実行指示部
512 :コスト演算式情報変形部
513 :演算式情報取得部
521 :探索結果取得部
522 :実行指示部
523 :演算式情報取得部
531 :探索結果取得部
532 :評価部
541 :実行指示部
542 :係数変更部
543 :演算式情報取得部
611 :QUBO生成部
612 :変換部
613 :最適解計算部
図1
図2
図3
図4
図5
図6
図7
図8