(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024142633
(43)【公開日】2024-10-11
(54)【発明の名称】装置、方法およびプログラム
(51)【国際特許分類】
C12M 1/00 20060101AFI20241003BHJP
C12M 1/34 20060101ALN20241003BHJP
【FI】
C12M1/00 C
C12M1/34 Z
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023054856
(22)【出願日】2023-03-30
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.SIMULINK
(71)【出願人】
【識別番号】000006507
【氏名又は名称】横河電機株式会社
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】榊 歩夢
(72)【発明者】
【氏名】生田目 哲志
【テーマコード(参考)】
4B029
【Fターム(参考)】
4B029AA01
4B029AA07
4B029BB01
4B029DF02
4B029DF04
4B029FA11
4B029FA12
4B029HA09
(57)【要約】 (修正有)
【課題】細胞培養システムのシミュレータを提供する。
【解決手段】センサによる測定結果に応じてコントローラによりアクチュエータを制御する細胞培養システムのシミュレータに含まれる、前記コントローラのシミュレーションモデルであるコントローラモデルに対して制御パラメータを設定する制御パラメータ設定部と、前記コントローラモデルに対して前記制御パラメータが設定された状態で前記シミュレータを実行するシミュレータ実行部と、前記シミュレータに含まれる、前記センサのシミュレーションモデルであるセンサモデルに対して遅れ時間を設定する遅れ時間設定部とを備え、前記シミュレータ実行部は、前記センサモデルによる測定対象に変動が生じてから、前記遅れ時間の経過後に、当該センサモデルによる測定結果に変動を生じさせる装置が提供される。
【選択図】
図1
【特許請求の範囲】
【請求項1】
センサによる測定結果に応じてコントローラによりアクチュエータを制御する細胞培養システムのシミュレータに含まれる、前記コントローラのシミュレーションモデルであるコントローラモデルに対して制御パラメータを設定する制御パラメータ設定部と、
前記コントローラモデルに対して前記制御パラメータが設定された状態で前記シミュレータを実行するシミュレータ実行部と、
を備える装置。
【請求項2】
前記シミュレータに含まれる、前記センサのシミュレーションモデルであるセンサモデルに対して遅れ時間を設定する遅れ時間設定部をさらに備え、
前記シミュレータ実行部は、前記センサモデルによる測定対象に変動が生じてから、前記遅れ時間の経過後に、当該センサモデルによる測定結果に変動を生じさせる、請求項1に記載の装置。
【請求項3】
前記細胞培養システムにおける少なくとも1つのセンサは、培養液に浸漬されて前記培養液の状態を計測するインラインセンサであり、
当該装置は、前記シミュレータに含まれる、前記インラインセンサのシミュレーションモデルであるインラインセンサモデルに対して、ドリフトのパラメータを設定するドリフトパラメータ設定部をさらに備え、
前記シミュレータ実行部は、前記インラインセンサモデルの測定結果に対し、前記ドリフトのパラメータに応じたドリフトを生じさせる、請求項1に記載の装置。
【請求項4】
前記シミュレータに含まれる、前記細胞培養システムの培養槽のシミュレーションモデルである培養槽モデルに対して、当該培養槽モデルにおける細胞の状態の不確実性のパラメータを設定する不確実性パラメータ設定部をさらに備え、
前記シミュレータ実行部は、前記培養槽モデル内の細胞に対し、前記不確実性のパラメータに応じた状態の不確実性を生じさせる、請求項1に記載の装置。
【請求項5】
一の前記不確実性のパラメータが設定された状態で前記シミュレータが複数回実行されることに応じて、各回の実行結果を示す値を取得し、当該値の分布が、予め定められた条件を満たすか否かを判定する判定部をさらに備える、請求項4に記載の装置。
【請求項6】
前記シミュレータが実行されることに応じて、実行結果を示す値が、予め定められた条件を満たすか否かを判定する判定部をさらに備える、請求項1に記載の装置。
【請求項7】
前記実行結果を示す値が前記予め定められた条件を満たすと前記判定部に判定されることに応じて、前記制御パラメータを前記コントローラの設定値として出力する出力部を備える、請求項6に記載の装置。
【請求項8】
センサによる測定結果に応じてコントローラによりアクチュエータを制御する細胞培養システムのシミュレータに含まれる、前記コントローラのシミュレーションモデルであるコントローラモデルに対して制御パラメータを設定する制御パラメータ設定段階と、
前記コントローラモデルに対して前記制御パラメータが設定された状態で前記シミュレータを実行するシミュレータ実行段階と、
を備える方法。
【請求項9】
コンピュータを、
センサによる測定結果に応じてコントローラによりアクチュエータを制御する細胞培養システムのシミュレータに含まれる、前記コントローラのシミュレーションモデルであるコントローラモデルに対して制御パラメータを設定する制御パラメータ設定部と、
前記コントローラモデルに対して前記制御パラメータが設定された状態で前記シミュレータを実行するシミュレータ実行部
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、装置、方法およびプログラムに関する。
【背景技術】
【0002】
特許文献1~9および非特許文献1には、「細胞培養プロセスの培養データからリアクタシステムにおける細胞培養プロセスのための最適化されたプロセス仕様を提供する方法であって、・前記細胞培養プロセスの培養データを取得するステップ;・請求項1から6のいずれか1項記載の方法により得られるデジタルツインを適用することにより、取得した培養データから少なくとも1つの最適化されたプロセス仕様を調整または生成するステップ;を有する方法。」(特許文献4の請求項7)等と記載されている。
[先行技術文献]
[特許文献]
[特許文献1] 国際公開第2020252442号
[特許文献2] 米国特許出願公開第2019-153381号
[特許文献3] 国際公開第WO2020-238918号
[特許文献4] 特表2022-537799号
[特許文献5] 特開2019-041656号
[特許文献6] 国際公開第2020-039683号
[特許文献7] 国際公開第2021-166824号
[特許文献8] 特開2022-099096号
[特許文献9] 特開2018-049316号
[非特許文献1] 村上聖、「分科会2、培養工程連続化の現状と課題」、生物工学会誌、第97巻、第6号、p338-341
【発明の概要】
【0003】
本発明の第1の態様においては、センサによる測定結果に応じてコントローラによりアクチュエータを制御する細胞培養システムのシミュレータに含まれる、前記コントローラのシミュレーションモデルであるコントローラモデルに対して制御パラメータを設定する制御パラメータ設定部と、前記コントローラモデルに対して前記制御パラメータが設定された状態で前記シミュレータを実行するシミュレータ実行部と、を備える装置が提供される。
【0004】
上記の装置においては、前記シミュレータに含まれる、前記センサのシミュレーションモデルであるセンサモデルに対して遅れ時間を設定する遅れ時間設定部をさらに備え、前記シミュレータ実行部は、前記センサモデルによる測定対象に変動が生じてから、前記遅れ時間の経過後に、当該センサモデルによる測定結果に変動を生じさせてよい。
【0005】
上記何れかの装置においては、前記細胞培養システムにおける少なくとも1つのセンサは、培養液に浸漬されて前記培養液の状態を計測するインラインセンサであり、当該装置は、前記シミュレータに含まれる、前記インラインセンサのシミュレーションモデルであるインラインセンサモデルに対して、ドリフトのパラメータを設定するドリフトパラメータ設定部をさらに備え、前記シミュレータ実行部は、前記インラインセンサモデルの測定結果に対し、前記ドリフトのパラメータに応じたドリフトを生じさせてよい。
【0006】
上記何れかの装置においては、前記シミュレータに含まれる、前記細胞培養システムの培養槽のシミュレーションモデルである培養槽モデルに対して、当該培養槽モデルにおける細胞の状態の不確実性のパラメータを設定する不確実性パラメータ設定部をさらに備え、前記シミュレータ実行部は、前記培養槽モデル内の細胞に対し、前記不確実性のパラメータに応じた状態の不確実性を生じさせてよい。
【0007】
上記の装置においては、一の前記不確実性のパラメータが設定された状態で前記シミュレータが複数回実行されることに応じて、各回の実行結果を示す値を取得し、当該値の分布が、予め定められた条件を満たすか否かを判定する判定部をさらに備えてよい。
【0008】
上記何れかの装置においては、前記シミュレータが実行されることに応じて、実行結果を示す値が、予め定められた条件を満たすか否かを判定する判定部をさらに備えてよい。
【0009】
判定部を有する上記何れかの装置においては、前記実行結果を示す値が前記予め定められた条件を満たすと前記判定部に判定されることに応じて、前記制御パラメータを前記コントローラの設定値として出力する出力部を備えてよい。
【0010】
本発明の第2の態様においては、センサによる測定結果に応じてコントローラによりアクチュエータを制御する細胞培養システムのシミュレータに含まれる、前記コントローラのシミュレーションモデルであるコントローラモデルに対して制御パラメータを設定する制御パラメータ設定段階と、前記コントローラモデルに対して前記制御パラメータが設定された状態で前記シミュレータを実行するシミュレータ実行段階と、を備える方法が提供される。
【0011】
本発明の第3の態様においては、コンピュータを、センサによる測定結果に応じてコントローラによりアクチュエータを制御する細胞培養システムのシミュレータに含まれる、前記コントローラのシミュレーションモデルであるコントローラモデルに対して制御パラメータを設定する制御パラメータ設定部と、前記コントローラモデルに対して前記制御パラメータが設定された状態で前記シミュレータを実行するシミュレータ実行部
として機能させるプログラムが提供される。
【0012】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【0013】
【
図2】細胞培養システム1の制御ループ15を示す。
【
図3】実施形態に係るシミュレーション装置2を示す。
【
図5】本発明の複数の態様が全体的または部分的に具現化されてよいコンピュータ2200の例を示す。
【発明を実施するための形態】
【0014】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0015】
(1.細胞培養システム1)
図1は、本実施形態に係る細胞培養システム1を示す。細胞培養システム1は、生物反応により目的物質を生産する培養を行う。細胞培養システム1は、例えば抗体医薬品などのバイオ医薬品を生産してよく、CHO細胞などの動物細胞を培養してよい。細胞培養システム1は、培養槽10と、1または複数のアクチュエータ11と、1または複数のセンサ12と、コントローラ13とを備えてよい。これら培養槽10と、1または複数のセンサ12と、コントローラ13と、1または複数のアクチュエータ11とは1または複数の制御ループ(一例としてクローズド制御ループまたはオープン制御ループ)を形成してよく、細胞培養システム1はセンサ12による測定結果に応じてコントローラ13によりアクチュエータ11を制御してよい。
【0016】
(1.1.培養槽10)
培養槽10は、培地および細胞を収容して細胞を培養するための容器である。細胞増殖を進行させるべく、培養槽10内の培養液の温度、pH、および、溶存酸素量(DO)などがアクチュエータ11により適切に管理されてよい。培養槽10では一例として灌流培養が行われてよく、細胞がある程度増殖した段階(例えば培養開始から2日目から3日目)で培養槽10に培地が連続的に供給され、供給量と同量の除細胞液(ハーベスト液)が培養槽10から回収されてよい。これにより、培養槽10内の培養液体積は一定に保たれてよい。
【0017】
なお、培養槽10には、手動で動作するサンプリング装置101やフィード装置(図示せず)が設けられてよい。サンプリング装置101は培養槽10内の培養液をサンプリングしてよく、フィード装置は栄養源補給のためのフィード剤を培養槽10に投与してよい。これらのサンプリング装置101およびフィード装置は、自動で動作するアクチュエータ11であってもよい。
【0018】
(1.2.アクチュエータ11)
各アクチュエータ11は、物理的な運動を行う駆動装置であり、培養液中の溶存酸素濃度、pH、温度、基質濃度(グルコース濃度)、細胞密度、培養液量、攪拌速度、圧力、重量、体積、または、流量などの少なくとも1つを制御してよい。各アクチュエータは、バルブ、ポンプ、ヒータ、ファン、モータ、および、スイッチの何れかであってよい。
【0019】
本実施形態においては一例として、細胞培養システム1は、アクチュエータ11として、培養槽10に培地を供給するポンプP1、培養槽10にグルコースを供給するポンプP2、培養槽10にアルカリ(Base)を供給するポンプP3、培養槽10内の培養液を拡販する攪拌装置131、培養槽10から培養液と共に細胞を排出するポンプP4、および、培養槽10からハーベスト液を排出するポンプP5を有してよい。
【0020】
これらのアクチュエータ11のうち、ポンプP5は、除細胞装置102およびフローセル103を介して培養槽10内のハーベスト液を排出してよい。除細胞装置102は、TFF(tangential flow filtration)やATF(alternating tangential flow filtration)と呼ばれるフィルタ作用を有してよく、細胞を培養槽10内に維持しつつ、ハーベスト液を培養槽10から排出してよい。
【0021】
(1.3.センサ12)
各センサ12は、培養槽10の状態の測定を行う。各センサ12は、培養液中の溶存酸素濃度、pH、温度、基質濃度(グルコース濃度)、細胞密度、培養液量、攪拌速度、圧力、重量、体積、または、流量などを示すプロセス値(プロセスパラメータ、PV(Process Value)とも称する)を測定してよい。
【0022】
本実施形態では一例として、細胞培養システム1は、センサ12として、培養槽10の重量を測定するセンサ(図示せず)、ポンプP1~P3により供給される流体の体積や重量を測定するセンサ(図示せず)、細胞の密度を測定するセンサ(図示せず)、培養液の誘電率を測定する誘電分光計121、培養液中の栄養や代謝の成分を計測する近赤外/赤外/ラマン分光計122、培養液の成分を分析する分析装置124、および、培養液に浸漬されて培養液の状態を計測するインラインセンサ120を有してよい。
【0023】
これらのセンサ12のうち、誘電分光計121は、培養液中に挿入された電極1210の間を流れる電流に従って培養液の誘電率を測定してよく、測定される誘電率から培養液中の細胞の数、生存率等をさらに計測してもよい。
【0024】
近赤外/赤外/ラマン分光計122は、培養液中に挿入された受発光センサ1220を介して培養液に対し各種測定光(近赤外光、赤外光、単色光)を照射し、培養液を透過または反射した光の近赤外スペクトル、赤外スペクトル、ラマンスペクトル等を測定してよく、測定したスペクトルから培養液中のグルコースや乳酸、アンモニア、各種アミノ酸などをさらに計測してよい。なお、近赤外/赤外/ラマン分光計122による測定においては、予め成分濃度を調整した溶液を用いて検量モデルを構築しておき、培養槽10に浸漬した受発光センサ1220から取得されるスペクトルを検量モデルで成分濃度に変換することで測定が実行されてよい。受発光センサ1220はフローセル103に設けられてもよい。
【0025】
分析装置124は、例えば高速液体クロマトグラフ装置(HPLC)、細胞培養分析装置等であってよい。分析装置124は、基準間隔(一例として24時間)でサンプリング装置101により培養槽10からサンプリングされた培養液の成分をオフラインで、つまり培養槽10から離れて分析してよい。
【0026】
インラインセンサ120は、培養液に浸漬され、細胞の培養の実行中における培養液の状態を計測してよい。インラインセンサ120は、一例として培養液のpH、溶存酸素量(DO)、温度、ガス分圧(酸素の分圧、二酸化炭素の分圧など)、浸透圧、栄養成分、代謝成分、または、目的生産物濃度などの基本的な物理/化学パラメータの少なくとも1つを測定してよい。上述した誘電分光計121の電極1210と、近赤外/赤外/ラマン分光計122の受発光センサ1220とは、インラインセンサ120であってよい。なお、インラインセンサ120による測定結果には、培養環境の変化によってドリフトが生じてもよい。培養環境の変化の要因としては、攪拌やガス通気によって培養液に生じる力学的応力の変動、培養液内での栄養素や酸素の枯渇、および、細胞により産生される乳酸やアンモニアといった老廃物(デブリ、夾雑物とも称する)の蓄積などが挙げられる。
【0027】
細胞培養システム1に含まれる1または複数のセンサ12のうち、少なくとも1つのセンサ12には、測定結果からノイズを除去するノイズ除去フィルタが設けられてよい。ノイズ除去フィルタは、センサ12の測定対象に変動が生じてから、当該センサ12による測定結果に変動が生じるまでに遅延を生じさせてもよい。
【0028】
各センサ12は、予め設定された周期で測定を行ってよい。各センサ12は、測定結果としてのプロセス値をコントローラ13に供給してよい。各1つのセンサ12は、任意のタイミングでキャリブレーションを行われてよい。
【0029】
なお、プロセス値は、基準頻度(一例として1日に1回)で培養液をサンプリングして、分析装置124で分析を行うことで取得されてもよい。誘電分光計121等により測定される細胞密度は、培養液を染色して撮像した画像を解析することで算出されてもよい。近赤外/赤外/ラマン分光計122等により計測される栄養・代謝成分は、酵素センサなどを利用して計測されてもよい。
【0030】
(1.4.コントローラ13)
コントローラ13は、1または複数のセンサ12による測定結果に応じて1または複数のアクチュエータ11を制御してよい。例えば、コントローラ13は、センサ12による測定結果に応じて算出される操作量を示す制御信号をアクチュエータ11に供給することで、当該アクチュエータ11を制御してよい。コントローラ13は、1または複数のセンサ12の測定結果をスケーリング(一例として正規化)してから操作量の算出に用いてもよい。
【0031】
コントローラ13は、1または複数のセンサ12による測定結果に応じて1または複数のアクチュエータ11を制御することで細胞培養システム1における培養プロセスを制御してよい。例えば、コントローラ13は、培養槽10内の培養液の状態を監視して、灌流培養工程に関する各種制御(各種ポンプ、モータ等の動作、温度制御等)を実行し、培養槽10における供給量、回収量、通気量、灌流率等を制御してよい。一例として、コントローラ13は、培養液中の溶存酸素濃度、pH、温度、基質濃度(グルコース濃度)、細胞密度、培養液量、攪拌速度などの基本的なプロセス値の制御を行いつつ、培地中に含まれる栄養成分や、細胞の増殖または生産の速度を向上させる増強剤を補填してよい。
【0032】
コントローラ13には、プロセス値の目標値(設定値、SV(Set Value)とも称する)が設定されてよい。目標値が設定される場合にコントローラ13は、プロセス値を目標値(または目標値から基準範囲内)とするよう操作量を算出してアクチュエータ11を制御してよい。細胞培養システム1が複数の制御ループを有する場合には、コントローラ13には制御ループごとに目標値が設定されてよい。プロセス値の目標値は、任意の制御目標が達成されるようオペレータにより設定されてよい。
【0033】
制御目標は、定常特性に関する目標であってよく、一例として培養槽10の状態が定常状態となったときのプロセス値(PV)が目標値(SV)から基準範囲内となることであってよい。制御目標は、過渡特性に関する目標であってもよく、一例としてプロセス値が目標値(または目標値から基準範囲内)に達するまでの整定時間(応答遅れ時間とも称する)が基準時間未満となることであってよい。制御目標は、目標値に対する追従性に関する目標であってもよく、一例として何れかのプロセス値について目標値を変更して細胞培養を実行した場合に当該プロセス値が目標値(または目標値から基準範囲内)に達する割合(追従割合とも称する)が基準割合を超えることであってよい。
【0034】
コントローラ13には、制御パラメータが設定されてよい。制御パラメータは、アクチュエータ11に対する制御条件を示すパラメータであってよく、例えばフィードバック制御のパラメータ(フィードバック制御パラメータとも称する)であってよい。フィードバック制御パラメータは、一例として比例ゲイン、積分ゲイン、または微分ゲインの少なくとも1つであってよい。制御パラメータは、アクチュエータ11に対する制御信号の出力頻度または制御周期を示すパラメータ(頻度パラメータとも称する)であってもよいし、アクチュエータ11に指示される操作量(アクチュエータ11に対する操作量とも称する)の上下限値であってもよい。操作量の上下限値は、一例として0~100(%)や-50~50(%)等の割合で設定されてよい。
【0035】
コントローラ13は、細胞の密度が基準値に達したことに応じて、ポンプP4により培養液とともに細胞を培養槽10から排出するブリードを行うことで、培養槽10内の細胞密度を適切な範囲内に収めてよい。コントローラ13は、ユーザインターフェースとしてプロセスパラメータの設定画面やトレンド表示機能、データ保管・出力機能などを備えてもよい。
【0036】
(2.細胞培養システム1の制御ループ15)
図2は、細胞培養システム1の制御ループ15を示す。細胞培養システム1のコントローラ13と、アクチュエータ11と、培養槽10と、センサ12とは、1または複数のクローズド制御ループ15を形成してよい。
【0037】
(3.シミュレーション装置2)
図3は、本実施形態に係るシミュレーション装置2を示す。シミュレーション装置2は、装置の一例であり、細胞培養システム1のシミュレーションを行う。シミュレーション装置2は、記憶部20と、シミュレータ取得部21と、設定部22と、シミュレータ実行部23と、判定部24と、表示部25とを有してよい。
【0038】
(3.1.記憶部20)
記憶部20は、種々の情報を記憶する。本実施形態に係る記憶部20は、細胞培養システム1のシミュレータ3を記憶してよい。
【0039】
(3.1.1.シミュレータ3)
シミュレータ3は、培養槽10のシミュレーションモデルである培養槽モデル30と、アクチュエータ11のシミュレーションモデルである1または複数のアクチュエータモデル31と、センサ12のシミュレーションモデルである1または複数のセンサモデル32と、コントローラ13のシミュレーションモデルであるコントローラモデル33と、を有してよい。コントローラモデル33と、アクチュエータモデル31と、培養槽モデル30と、センサモデル32とは、細胞培養システム1と同様の1または複数の制御ループ35を形成してよい。各シミュレーションモデルは、数理モデルであってよく、制御ループ35の入出力関係に従って結合されてよい。
【0040】
(3.1.1(1).培養槽モデル30)
培養槽モデル30は、培養槽10の挙動を再現してよい。培養槽10の挙動とは、培養槽10に含まれる培養液の挙動、および、培養液に含まれる細胞などの挙動を含んでよい。培養槽モデル30は、細胞培養のプロセスに特有の生物学的特性(一例として細胞に起因するダイナミクス)が考慮されるように構築されてよい。一例として、培養槽モデル30は、下記の参考文献(1)、(2)に記載されているメカニスティックモデルであってよい。細胞培養プロセス特有の制御変数について、プロセス中の挙動を数学的に表現することができる限りにおいて、培養槽モデル30は、機械学習により生成されるデータ駆動型モデルやハイブリッドモデル(メカニスティックモデルとデータ駆動型モデルを組み合わせたモデル)であってもよい。培養槽モデル30の動特性を示すパラメータは、過去の培養データやシードドレインのデータに基づいて設定されてよい。培養槽モデル30には、不確実性パラメータが設定されてよい。不確実性パラメータは、培養液内の細胞状態の不確実性を示してよく、参考文献(1)、(2)に記載されている培養槽モデル30に対して正規乱数等の乱数成分として設定されてよい。これにより、細胞状態の不確実性、ひいてはバッチ間のバラつきを考慮したシミュレーションが可能となる。手動で動作するサンプリング装置101やフィード装置が培養槽モデル30に設けられている場合には、これらの動作条件が培養槽モデル30で定義されてもよい。
【0041】
参考文献(1):Sara Badr、外5名、「Integrated Design of Biopharmaceutical Manufacturing Processes: Operation Modes and Process Configurations for Monoclonal Antibody Production」、Computers and Chemical Engineering、Volume 153, 107422(2021)
【0042】
参考文献(2):Martin Kornecki、Jochen Strube、「Process Analytical Technology for Advanced Process Control in Biologics Manufacturing with the Aid of Macroscopic Kinetic Modeling」、Bioengineering、5、2018
【0043】
(3.1.1(2).アクチュエータモデル31)
各アクチュエータモデル31は、シミュレーション対象である何れかのアクチュエータ11の挙動を再現してよい。各アクチュエータモデル31は、コントローラモデル33から供給される操作量に基づいて動作してよい。シミュレータ3に含まれる1または複数のアクチュエータモデル31のうち、少なくとも1つのアクチュエータモデル31は、供給される操作量に固有の処理(一例としてスケーリングや変換処理)を行い、当該処理後の操作量に基づいて動作してよい。
【0044】
(3.1.1(3).センサモデル32)
各センサモデル32は、シミュレーション対象である何れかのセンサ12の挙動を再現してよい。シミュレータ3に含まれる1または複数のセンサモデル32のうち、少なくとも1つのセンサモデル32は、培養槽モデル30で算出される測定対象の値(真値とも称する)に対して疑似的なノイズを付加し、プロセス値として取得してよい。当該センサモデル32には、真値に付加される疑似的なノイズのパラメータ(一例としてノイズの強度や形状など)が設定可能であってよい。ノイズのパラメータは、シミュレーション対象のセンサ12の仕様や、過去の培養データに基づいて設定されてよい。シミュレーション対象のセンサ12の信頼性が高い場合には、ガウス性白色ノイズが付加されるようにノイズのパラメータが設定されてよい。
【0045】
シミュレータ3に含まれる1または複数のセンサモデル32のうち、少なくとも1つのセンサモデル32には、取得したプロセス値からノイズを除去するノイズ除去フィルタのシミュレーションモデル(図示せず)が設けられてよい。ノイズ除去フィルタが設けられたセンサモデル32には、ノイズ除去フィルタのパラメータが設定されてよい。ノイズ除去フィルタのパラメータは、シミュレーション対象のセンサ12に設けられたノイズ除去フィルタの仕様や、過去の培養データに基づいて設定されてよい。ノイズ除去フィルタのシミュレーションモデルは、センサモデル32の測定対象に変動が生じてから、当該センサモデル32による測定結果に変動が生じるまでに遅延を生じさせてよい。
【0046】
シミュレータ3に含まれる1または複数のセンサモデル32のうち、少なくとも1つのセンサモデル32には、センサモデル32の測定対象に変動が生じてから、当該センサモデル32による測定結果に変動が生じるまでの遅れ時間が設定されてよい。遅れ時間は過去の培養データ等に基づいて設定されてよい。
【0047】
シミュレータ3に含まれる1または複数のセンサモデル32のうち、少なくとも1つのセンサモデル32は、インラインセンサ120のシミュレーションモデルであるインラインセンサモデル320であってよい。インラインセンサモデル320は、真値にドリフトを生じさせ、ドリフトした真値をプロセス値として取得してよい。少なくとも1つのインラインセンサモデル320には、ドリフトのパラメータ(ドリフトパラメータとも称する)が設定されてよい。ドリフトのパラメータは、一例として培養液中の老廃物が単位量だけ増減することに応じて生じるドリフトの大きさを示してもよいし、単位時間当たりに生じるドリフトの大きさを示してもよいし、温度や圧力などが単位量だけ増減することに応じて生じるドリフトの大きさを示してもよい。ドリフトのパラメータは、インラインセンサモデル320においてプロセス値を算出する関数式の係数を調整することで設定されてよい。センサモデル32には、キャリブレーションのタイミングや手法が設定されてよい。
【0048】
各センサモデル32には、それぞれ測定周期が設定されてよい。測定周期は、シミュレーション対象のセンサ12の仕様に基づいて設定されてよい。
【0049】
(3.1.1(4).コントローラモデル33)
コントローラモデル33は、コントローラ13の挙動を再現してよい。コントローラモデル33は、1または複数のセンサモデル32による測定結果に応じて1または複数のアクチュエータモデル31を制御してよい。例えば、コントローラモデル33は、センサモデル32による測定結果に応じて算出される操作量を示す制御信号をアクチュエータモデル31に供給することで、当該アクチュエータモデル31を制御してよい。コントローラモデル33は、1または複数のセンサ12の測定結果をスケーリング(一例として正規化)してから操作量の算出に用いてもよい。
【0050】
コントローラモデル33には、プロセス値の目標値(SV)が設定されてよく、プロセス値を目標値(または目標値から基準範囲内)とするよう操作量を算出してアクチュエータモデル31を制御してよい。シミュレータ3が複数の制御ループ35を有する場合には、コントローラモデル33には制御ループ35ごとに目標値が設定されてよい。
【0051】
コントローラモデル33には、制御パラメータが設定されてよい。制御パラメータは、アクチュエータモデル31に対する制御条件を示すパラメータであってよく、例えばフィードバック制御パラメータであってもよいし、頻度パラメータであってもよいし、アクチュエータ11に対する操作量の上下限値であってもよい。
【0052】
コントローラモデル33には、制御の開始および終了の条件が設定されてよい。制御ループ35同士の影響を考慮する場合や、既知の外乱による影響を低減する場合には、コントローラモデル33には、フィードフォワードによる操作量の調整量が設定されてもよい。
【0053】
(3.2.シミュレータ取得部21)
シミュレータ取得部21は、シミュレータ3を取得する。シミュレータ取得部21は外部装置で生成されたシミュレータ3を取得してもよいし、オペレータの操作に応じてシミュレータ3を生成してもよい。シミュレータ3は、一例としてMATLAB(登録商標)/Simulinkの開発環境で生成されてよいが、他の開発環境で生成されてもよい。シミュレータ取得部21は、取得したシミュレータ3を記憶部20に記憶させてよい。
【0054】
(3.3.設定部22)
設定部22は、オペレータの操作に応じ、シミュレータ3のコントローラモデル33、アクチュエータモデル31、センサモデル32および培養槽モデル30の少なくとも1つに対して種々の動作条件を設定してよい。
【0055】
(3.3.1.コントローラモデル33に対する設定内容)
設定部22は、コントローラモデル33に対してプロセス値の目標値を設定してよい。設定部22は、複数のセンサモデル32により測定される複数のプロセス値について目標値を設定する場合には、各プロセス値に共通の目標値を設定してもよいし、少なくとも2つのプロセス値に別々の目標値を設定してもよい。設定部22は、シミュレータ3の実行中に適宜、目標値を設定してもよいし、シミュレータ3の実行前に予め目標値を設定してもよい。
【0056】
設定部22は、制御パラメータ設定部の一例であってよく、コントローラモデル33に対して制御パラメータを設定してよい。設定部22は、制御パラメータをシミュレータ3の実行前に予め設定してよい。
【0057】
一例として、設定部22は、制御パラメータとして、フィードバック制御パラメータを設定してよい。設定部22は、シミュレータ3に複数の制御ループ35が形成されている場合には、少なくとも1つの制御ループ35にについてフィードバック制御パラメータを設定してよい。設定部22は、複数の制御ループ35についてフィードバック制御パラメータを設定する場合には、各制御ループ35について共通のフィードバック制御パラメータを設定してもよいし、少なくとも2つの制御ループ35について別々のフィードバック制御パラメータを設定してもよい。
【0058】
設定部22は、制御パラメータとして、頻度パラメータを設定してもよい。設定部22は、シミュレータ3に複数のアクチュエータモデル31が含まれる場合には、少なくとも1つのアクチュエータモデル31について頻度パラメータを設定してよい。設定部22は、複数のアクチュエータモデル31について頻度パラメータを設定する場合には、各アクチュエータモデル31について共通の頻度パラメータを設定してもよいし、少なくとも2つのアクチュエータモデル31について別々の頻度パラメータを設定してもよい。
【0059】
設定部22は、制御パラメータとして、アクチュエータモデル31に対する操作量の上下限値を設定してもよい。設定部22は、シミュレータ3に複数のアクチュエータモデル31が含まれる場合には、少なくとも1つのアクチュエータモデル31について操作量の上下限値を設定してよい。設定部22は、複数のアクチュエータモデル31について操作量の上下限値を設定する場合には、各アクチュエータモデル31について共通の上下限値を設定してもよいし、少なくとも2つのアクチュエータモデル31に別々の上下限値を設定してもよい。
【0060】
設定部22は、フィードフォワードによる操作量の調整量を設定してよい。設定部22は、複数のアクチュエータモデル31について調整量を設定する場合には、各アクチュエータモデル31について共通の調整量を設定してもよいし、少なくとも2つのアクチュエータモデル31に別々の調整量を設定してもよい。設定部22は、調整量をシミュレータ3の実行前に予め設定してよい。
【0061】
(3.3.2.センサモデル32に対する設定内容)
設定部22は、少なくとも1つのセンサモデル32に対してノイズのパラメータを設定してよい。設定部22は、複数のセンサモデル32に対してノイズのパラメータを設定する場合には、各センサモデル32に共通のパラメータを設定してもよいし、少なくとも2つのセンサモデル32に別々のパラメータを設定してもよい。設定部22は、ノイズのパラメータをシミュレータ3の実行前に予め設定してよい。
【0062】
設定部22は、少なくとも1つのセンサモデル32に対してノイズ除去フィルタのパラメータを設定してよい。設定部22は、複数のセンサモデル32に対してノイズ除去フィルタのパラメータを設定する場合には、各センサモデル32に共通のパラメータを設定してもよいし、少なくとも2つのセンサモデル32に別々のパラメータを設定してもよい。設定部22は、ノイズ除去フィルタのパラメータをシミュレータ3の実行前に予め設定してよい。
【0063】
設定部22は、遅れ時間設定部の一例であってよく、少なくとも1つのセンサモデル32に対して遅れ時間を設定してよい。設定部22は、複数のセンサモデル32に対して遅れ時間を設定する場合には、各センサモデル32に共通の遅れ時間を設定してもよいし、少なくとも2つのセンサモデル32に別々の遅れ時間を設定してもよい。設定部22は、遅れ時間をシミュレータ3の実行前に予め設定してよい。
【0064】
設定部22は、ドリフトパラメータ設定部の一例であってよく、少なくとも1つのインラインセンサモデル320に対してドリフトパラメータを設定してよい。設定部22は、複数のインラインセンサモデル320に対してドリフトパラメータを設定する場合には、各インラインセンサモデル320に共通のドリフトパラメータを設定してもよいし、少なくとも2つのインラインセンサモデル320に別々のドリフトパラメータを設定してもよい。設定部22は、ドリフトパラメータをシミュレータ3の実行前に予め設定してよい。
【0065】
(3.3.3.培養槽モデル30に対する設定内容)
設定部22は、不確実性パラメータ設定部の一例であってよく、培養槽モデル30に対して、当該培養槽モデル30における細胞の状態の不確実性パラメータを設定してよい。設定部22は、不確実性パラメータと共に、当該不確実性パラメータを適用したシミュレーションの実行回数を設定してよい。設定部22は、これらの内容をシミュレータ3の実行前に予め設定してよい。
【0066】
(3.3.4.その他の設定内容)
設定部22は、オペレータの操作によりシミュレーションの制御目標を設定してもよい。
【0067】
制御目標は、例えば定常特性に関する目標であってよく、一例として培養槽モデル30の状態が定常状態となったときのプロセス値(PV)が目標値(SV)から基準範囲内となることであってよい。この場合に、設定部22は、培養槽モデル30の状態が定常状態となったときにプロセス値が収まるべき基準範囲を設定してよい。
【0068】
制御目標は、過渡特性に関する目標であってもよく、一例としてプロセス値が目標値(または目標値から基準範囲内)に達するまでの整定時間(応答遅れ時間とも称する)が基準時間未満となることであってよい。制御目標は、目標値に対する追従性に関する目標であってもよく、一例として何れかのプロセス値について目標値を変更して細胞培養を実行した場合に当該プロセス値が目標値(または目標値から基準範囲内)に達する追従割合が基準割合を超えることであってよい。これらの場合に、設定部22は、整定時間が下回るべき基準時間を設定してもよいし、追従割合が上回るべき基準割合を設定してもよい。
【0069】
設定部22は、オペレータの操作によりシミュレータ3の環境設定を行ってもよい。一例として、設定部22は、シミュレータ3で使用されるソルバーの種類(例えばオイラー法やルンゲクッタ方など)を設定してもよいし、複数のシミュレーションモデルで使用されるグローバル変数(一例としてシミュレーション区間(つまり培養期間))を設定してもよい。
【0070】
設定部22は、設定内容をシミュレータ3に供給してもよいし、シミュレータ実行部23に供給してもよい。設定部22は、制御目標の設定内容を判定部24に供給してよい。
【0071】
(3.4.シミュレータ実行部23)
シミュレータ実行部23は、シミュレータ3を実行する。
【0072】
シミュレータ実行部23は、コントローラモデル33に対してプロセス値の目標値(SV)が設定された状態でシミュレータ3を実行してよい。シミュレータ実行部23は、センサモデル32により測定されるプロセス値が目標値に近づくようコントローラモデル33にアクチュエータモデル31を駆動させてよい。
【0073】
シミュレータ実行部23は、コントローラモデル33に対して制御パラメータが設定された状態でシミュレータ3を実行してよい。シミュレータ実行部23は、設定されたフィードバック制御パラメータに応じたフィードバック制御をコントローラモデル33に行わせてよい。シミュレータ実行部23は、設定された頻度パラメータに応じた出力頻度または制御周期でコントローラモデル33からアクチュエータモデル31に制御信号を出力させてよい。シミュレータ実行部23は、設定された操作量の上下限値に応じた操作量を示す制御信号をコントローラモデル33からアクチュエータモデル31に出力させてよい。
【0074】
シミュレータ実行部23は、コントローラモデル33に対してフィードフォワードの調整量が設定された状態でシミュレータ3を実行してよい。シミュレータ実行部23は、設定内容に応じた操作量を示す制御信号をコントローラモデル33からアクチュエータモデル31に出力させてよい。
【0075】
シミュレータ実行部23は、培養槽モデル30に対して不確実性パラメータが設定された状態でシミュレータ3を実行してよい。シミュレータ実行部23は、培養槽モデル30内の細胞に対し、不確実性パラメータに応じた状態の不確実性を生じさせてよい。シミュレータ実行部23は、不確実性パラメータが設定されたことに応じて、設定部22により予め定められた実行回数だけシミュレータ3を実行してよい。
【0076】
シミュレータ実行部23は、センサモデル32に対してノイズのパラメータが設定された状態でシミュレータ3を実行してよい。シミュレータ実行部23は、培養槽モデル30で算出される測定対象の真値に対し、ノイズのパラメータに応じてノイズが付加されたプロセス値をセンサモデル32に取得させてよい。
【0077】
シミュレータ実行部23は、センサモデル32に対してノイズ除去フィルタのパラメータが設定された状態でシミュレータ3を実行してよい。シミュレータ実行部23は、ノイズ除去フィルタのパラメータに応じてノイズが除去されたプロセス値をセンサモデル32に取得させてよい。
【0078】
シミュレータ実行部23は、センサモデル32に対して遅れ時間が設定された状態でシミュレータ3を実行してよい。シミュレータ実行部23は、当該センサモデル32による測定対象に変動が生じてから、遅れ時間の経過後に、当該センサモデル32による測定結果に変動を生じさせてよい。
【0079】
シミュレータ実行部23は、インラインセンサモデル320に対してドリフトパラメータが設定された状態でシミュレータ3を実行してよい。シミュレータ実行部23は、インラインセンサモデル320の測定結果に対し、ドリフトパラメータに応じたドリフトを生じさせてよい。
【0080】
シミュレータ実行部23は、センサモデル32に対して測定周期が設定された状態でシミュレータ3を実行してよい。シミュレータ実行部23は、各センサモデル32に測定周期でプロセス値を取得させてよい。
【0081】
シミュレータ実行部23は、設定部22により設定される環境設定に応じてシミュレータ3を実行してよい。一例として、ソルバーの種類が設定される場合には、シミュレータ実行部23は、設定されたソルバーを用いて演算を行ってよい。シミュレーション区間が設定される場合には、設定されたシミュレーション区間内でシミュレーションを行ってよい。
【0082】
シミュレータ実行部23は、シミュレータ3によるシミュレーションの実行結果を記憶部20に記憶させてよい。シミュレーションの実行結果には、各シミュレーションモデルで得られた時系列データと、シミュレーションモデルに対する設定内容とが含まれてよい。
【0083】
(3.5.判定部24)
判定部24は、シミュレータ3が実行されることに応じて、実行結果を示す値が、予め定められた条件を満たすか否かを判定する。予め定められた条件は制御目標に応じた条件であってよく、目標条件とも称する。判定部24は、実行結果を示す値をシミュレータ3から取得してよい。
【0084】
実行結果を示す値は、培養槽10の状態が定常状態となったときの1または複数のセンサモデル32により測定されるプロセス値に応じた値(一例としてプロセス値そのもの)であってよい。この場合には、目標条件は、プロセス値がその目標値(または目標値から基準範囲内)となることであってよい。
【0085】
実行結果を示す値は、プロセス値が目標値(または目標値から基準範囲内)に達するまでの整定時間であってもよい。この場合には、目標条件は、整定時間が基準時間未満となることであってもよいし、以前にシミュレータ3が実行されたときの整定時間未満となることであってもよいし、細胞培養システム1で細胞培養を行った場合の整定時間未満となることであってもよい。
【0086】
実行結果を示す値は、何れかのプロセス値について目標値を変更してシミュレータ3を実行した場合に当該プロセス値が目標値(または目標値から基準範囲内)に達する追従割合であってもよい。この場合には、目標条件は、追従割合がその基準割合を超えるとなることであってもよいし、以前にシミュレータ3が実行されたときの追従割合を超えることであってもよいし、細胞培養システム1で細胞培養を行った場合の追従割合を超えることであってもよい。
【0087】
判定部24は、設定部22により一の不確実性パラメータが設定された状態でシミュレータ3が複数回実行されることに応じて、各回の実行結果を示す値を取得し、当該値の分布が、予め定められた条件(分布条件とも称する)を満たすか否かを判定してよい。分布条件は、実行結果を示す値が予め設定された基準範囲内に収まることであってよく、これに加えて、または、これに代えて、実行結果を示す値の分散または標準偏差が予め設定された基準範囲内に収まることであってもよい。
判定部24は、判定結果を表示部25に供給してよい。
【0088】
(3.6.表示部25)
表示部25は、種々の情報を表示する。表示部25は、シミュレータ3の実行結果を示す値と、判定部24による判定結果とを合わせて表示してよい。表示部25は、出力部の一例であってよく、シミュレータ3の実行結果を示す値が目標条件を満たすと判定部24に判定されることに応じて、設定部22により設定された制御パラメータをコントローラ13の設定値として表示させてよい。
【0089】
以上のシミュレーション装置によれば、細胞培養システム1のシミュレータ3に含まれるコントローラモデル33に対して制御パラメータが設定された状態でシミュレータ3が実行される。従って、制御パラメータを調整してシミュレータ3を実行することにより、任意の目標が実現される好適な制御パラメータを特定して、細胞培養システム1のコントローラ13に適用することができる。また、細胞培養システム1で制御パラメータを変更して細胞培養を繰り返す場合と比較して、好適な制御パラメータの特定に要する時間や原材料、労力などを低減することができる。
【0090】
また、センサ12のシミュレーションモデルであるセンサモデル32に対して遅れ時間が設定され、センサモデル32による測定対象に変動が生じてから当該遅れ時間の経過後に、当該センサモデル32による測定結果に変動が生じる。従って、センサモデル32の遅れ時間を実際のセンサ12に合わせた状態でシミュレータ3を実行することができる。
【0091】
また、インラインセンサ120のシミュレーションモデルであるインラインセンサモデル320に対してドリフトパラメータが設定され、インラインセンサモデル320の測定結果に対し、ドリフトパラメータに応じたドリフトが生じる。従って、培養の進行に伴って生じる老廃物等に起因するドリフトを実環境に合わせた状態でシミュレータ3を実行することができる。
【0092】
また、培養槽のシミュレーションモデルである培養槽モデル30に対して細胞の状態の不確実性パラメータが設定され、不確実性パラメータに応じた状態の不確実性が生じる。従って、培養槽モデル30内での細胞の状態を、実環境での細胞状態の不確実性に合わせた状態でシミュレータ3を実行することができる。
【0093】
また、シミュレータ3が実行されることに応じて、実行結果を示す値が既定の目標条件を満たすか否かが判定される。従って、実環境で細胞培養を行う場合に培養結果が目標条件を満たすか否かを予め確認することができる。
【0094】
また、シミュレータ3の実行結果を示す値が目標条件を満たすと判定されることに応じて、制御パラメータがコントローラ13の設定値として出力されるので、目標条件が満たされる制御パラメータを細胞培養システム1のコントローラ13に適用して実環境で細胞培養を行うことができる。
【0095】
また、一の不確実性パラメータが設定された状態でシミュレータ3が複数回実行されることに応じて、各回の実行結果を示す値が取得され、当該値の分布が既定の分布条件を満たすか否かが判定される。従って、実環境で複数回、細胞培養を行う場合に複数の培養結果が全体として分布条件を満たすか否かを予め確認することができる。
【0096】
また、シミュレータ3に含まれる各シミュレーションモデルが入出力関係に従って互いに結合されているため、シミュレーションモデル間の影響を把握することで、シミュレーション対象とされた細胞培養システム1のコンポーネント(本実施形態においては一例としてコントローラ13、アクチュエータ11、培養槽10、およびセンサ12)間の影響を把握することができる。また、各シミュレーションモデルについて、制御ループ35の制御性能に対する影響度を把握し、制御パラメータの設定に利用することができるため、制御パラメータの設定を容易化することができる。
【0097】
(4.動作)
図4は、シミュレーション装置2の動作を示す。シミュレーション装置2は、ステップS11~S25の処理を行うことにより細胞培養システム1のシミュレーションを行い、所望の制御目標が達成される制御パラメータを決定する。なお、本実施形態においては一例としてシミュレーション装置2には予めシミュレータ取得部21によりシミュレータ3が取得されていることとして説明する。
【0098】
ステップS11において設定部22は、オペレータの操作に応じてシミュレーションの制御目標を設定する。設定部22は、1または複数の制御目標を設定してよい。これにより、制御目標に応じた目標条件が設定されてよい。設定部22は、オペレータの操作に応じて、シミュレータ3の実行結果を示す値の分布条件を示す分布目標をさらに設定してもよい。これにより、分布目標に応じた分布条件が設定されてよい。設定部22は、オペレータの操作に応じてシミュレータの環境設定をさらに行ってもよい。
【0099】
ステップS13において設定部22は、オペレータの操作に応じて各シミュレーションモデルの特性を設定する。設定部22は、コントローラモデル33に対して1または複数の制御パラメータ(一例としてフィードバック制御パラメータ、頻度パラメータ、または、操作量の上下限値)を設定してもよいし、センサモデル32に対して遅れ時間を設定してもよいし、インラインセンサモデル320に対してドリフトパラメータを設定してもよいし、培養槽モデル30に対して不確実性パラメータを設定してもよい。
【0100】
ステップS15においてシミュレータ実行部23は、シミュレータ3を実行する。シミュレータ実行部23は、ステップS11,S13による設定内容が設定された状態でシミュレータ3を実行してよい。一例として、シミュレータ実行部23は、コントローラモデル33に対して制御パラメータが設定された状態でシミュレータ3を実行してよい。シミュレータ実行部23は、ステップS13において不確実性パラメータが設定されている場合には、当該不確実性パラメータが設定された状態でシミュレータ3を複数回実行してよい。
【0101】
ステップS21において判定部24は、ステップS15の実行結果を示す値が目標条件を満たすか否かを判定する。判定部24は、ステップS15において一の不確実性パラメータが設定された状態でシミュレータ3が複数回実行された場合には、各回の実行結果を示す値を取得し、当該値の分布が分布条件を満たすか否かをさらに判定してもよい。判定部24は、判定結果をシミュレータ3の実行結果と合わせて表示部25に表示させてよい。
【0102】
ステップS21において制御条件が満たされないと判定した場合(ステップS21;No)には、ステップS23に処理が移行してよい。ステップS21において制御条件が満たされたと判定した場合(ステップS21;Yes)には、ステップS25に処理が移行してよい。
【0103】
ステップS23において判定部24は、制御目標を低める旨の操作がオペレータにより行われるか否かを判定する。制御目標を低める旨の操作が行われないと判定した場合(ステップS23;No)には、上述のステップS13に処理が移行してよい。これにより、各シミュレータモデルの特性が再設定されてシミュレータ3が実行される。制御目標を低める旨の操作が行われたと判定した場合(ステップS23;Yes)には、上述のステップS11に処理が移行してよい。これにより、制御目標が実現可能となるように低く再設定されてシミュレータ3が実行される。
【0104】
ステップS25において判定部24は、制御目標を高める旨の操作がオペレータにより行われるか否かを判定する。制御目標を高める旨の操作が行われたと判定した場合(ステップS25;Yes)には上述のステップS11に処理が移行してよい。これにより、制御目標がより厳しくなるよう高く再設定されてシミュレータ3が実行される。制御目標を高める旨の操作が行われないと判定した場合(ステップS25;No)には動作が終了してよい。これにより、所望の制御目標を達成することのできる制御パラメータや、シミュレーションモデルの特性が特定される。なお、シミュレーションモデルの特性などを変更してシミュレーションを行う場合には、本動作を最初からやり直してもよい。
【0105】
(5.変形例)
なお、上記の実施形態においては、シミュレーション装置2はシミュレータ取得部21と、判定部24と、表示部25とを有することとして説明したが、これらの何れかを有しなくてもよい。
【0106】
また、表示部25を出力部の一例として説明したが、制御パラメータをコントローラの設定値として出力する限りにおいて、他の構成を出力部としてもよい。例えば、出力部はコントローラ13の制御装置であってよく、シミュレータ3の実行結果を示す値が目標条件を満たすと判定部24に判定されることに応じて、設定されていた制御パラメータを設定値としてコントローラ13に出力し、当該制御パラメータに応じた制御を行わせてよい。この場合には、シミュレータ3は細胞培養システム1のデジタルツインとして利用されてよく、細胞培養システム1の状態を示すプロセス値などの実データが入力されてシミュレーションを行うことで、細胞培養システム1における細胞培養の結果を予測してよい。予測結果が良好でない場合には、細胞培養システム1におけるコントローラ13の制御パラメータが調整されてもよいし、センサ12のキャリブレーションが行われてもよい。
【0107】
また、コントローラ13はフィードバック制御により操作量を決定することとして説明したが、これに加えて、または、これに代えて、培養槽10の挙動を予測する予測モデル(一例としてシミュレータ3の培養槽モデル30)を用いたモデル予測制御により操作量を決定してもよい。例えば、コントローラ13は、予め設定された報酬関数により定まる報酬値を最適化するように操作量を決定してよい。報酬関数は、1または複数の測定値を変数に有する関数であってもよいし、整定時間を変数に有する関数であってもよい。コントローラ13がモデル予測制御を行う場合には、設定部22はコントローラモデル33に対する制御パラメータとして、報酬関数の重み係数、予測モデルから出力を取得する予測区間(Prediction Horizon)、または、予測モデルへの入力を制御する制御区間(Control Horizon)の少なくとも1つを設定してよい。この場合には、シミュレータ実行部23は、これらの制御パラメータがコントローラモデル33に対して設定された状態でシミュレータ3を実行してよい。例えば、シミュレータ実行部23は、重み係数が設定された報酬関数により定まる報酬値を最適化する操作量を決定するようコントローラモデル33にモデル予測制御を行わせてよい。シミュレータ実行部23は、設定された予測区間や制御区間に応じたモデル予測制御をコントローラモデル33に行わせてよい。
【0108】
また、細胞培養システム1は潅流培養を行うこととして説明したが、流加培養や連続培養など、他の手法による培養を行ってもよい。
【0109】
また、細胞培養システム1はCHO細胞などの動物細胞を培養することとして説明したが、CHO細胞以外の脊椎動物の細胞を培養してもよいし、貝類や昆虫類などの細胞を培養してもよいし、ヒト細胞や植物細胞、微生物細胞を培養してもよい。
【0110】
また、本発明の様々な実施形態は、フローチャートおよびブロック図を参照して記載されてよく、ここにおいてブロックは、(1)操作が実行されるプロセスの段階または(2)操作を実行する役割を持つ装置のセクションを表わしてよい。特定の段階およびセクションが、専用回路、コンピュータ可読媒体上に格納されるコンピュータ可読命令と共に供給されるプログラマブル回路、および/またはコンピュータ可読媒体上に格納されるコンピュータ可読命令と共に供給されるプロセッサによって実装されてよい。専用回路は、デジタルおよび/またはアナログハードウェア回路を含んでよく、集積回路(IC)および/またはディスクリート回路を含んでよい。プログラマブル回路は、論理AND、論理OR、論理XOR、論理NAND、論理NOR、および他の論理操作、フリップフロップ、レジスタ、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルロジックアレイ(PLA)等のようなメモリ要素等を含む、再構成可能なハードウェア回路を含んでよい。
【0111】
コンピュータ可読媒体は、適切なデバイスによって実行される命令を格納可能な任意の有形なデバイスを含んでよく、その結果、そこに格納される命令を有するコンピュータ可読媒体は、フローチャートまたはブロック図で指定された操作を実行するための手段を作成すべく実行され得る命令を含む、製品を備えることになる。コンピュータ可読媒体の例としては、電子記憶媒体、磁気記憶媒体、光記憶媒体、電磁記憶媒体、半導体記憶媒体等が含まれてよい。コンピュータ可読媒体のより具体的な例としては、フロッピー(登録商標)ディスク、ディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROMまたはフラッシュメモリ)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、静的ランダムアクセスメモリ(SRAM)、コンパクトディスクリードオンリメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、ブルーレイ(RTM)ディスク、メモリスティック、集積回路カード等が含まれてよい。
【0112】
コンピュータ可読命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはSmalltalk(登録商標)、JAVA(登録商標)、C++等のようなオブジェクト指向プログラミング言語、および「C」プログラミング言語または同様のプログラミング言語のような従来の手続型プログラミング言語を含む、1または複数のプログラミング言語の任意の組み合わせで記述されたソースコードまたはオブジェクトコードのいずれかを含んでよい。
【0113】
コンピュータ可読命令は、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサまたはプログラマブル回路に対し、ローカルにまたはローカルエリアネットワーク(LAN)、インターネット等のようなワイドエリアネットワーク(WAN)を介して提供され、フローチャートまたはブロック図で指定された操作を実行するための手段を作成すべく、コンピュータ可読命令を実行してよい。プロセッサの例としては、コンピュータプロセッサ、処理ユニット、マイクロプロセッサ、デジタル信号プロセッサ、コントローラ、マイクロコントローラ等を含む。
【0114】
図5は、本発明の複数の態様が全体的または部分的に具現化されてよいコンピュータ2200の例を示す。コンピュータ2200にインストールされたプログラムは、コンピュータ2200に、本発明の実施形態に係る装置に関連付けられる操作または当該装置の1または複数のセクションとして機能させることができ、または当該操作または当該1または複数のセクションを実行させることができ、および/またはコンピュータ2200に、本発明の実施形態に係るプロセスまたは当該プロセスの段階を実行させることができる。そのようなプログラムは、コンピュータ2200に、本明細書に記載のフローチャートおよびブロック図のブロックのうちのいくつかまたはすべてに関連付けられた特定の操作を実行させるべく、CPU2212によって実行されてよい。
【0115】
本実施形態によるコンピュータ2200は、CPU2212、RAM2214、グラフィックコントローラ2216、およびディスプレイデバイス2218を含み、それらはホストコントローラ2210によって相互に接続されている。コンピュータ2200はまた、通信インタフェース2222、ハードディスクドライブ2224、DVD-ROMドライブ2226、およびICカードドライブのような入/出力ユニットを含み、それらは入/出力コントローラ2220を介してホストコントローラ2210に接続されている。コンピュータはまた、ROM2230およびキーボード2242のようなレガシの入/出力ユニットを含み、それらは入/出力チップ2240を介して入/出力コントローラ2220に接続されている。
【0116】
CPU2212は、ROM2230およびRAM2214内に格納されたプログラムに従い動作し、それにより各ユニットを制御する。グラフィックコントローラ2216は、RAM2214内に提供されるフレームバッファ等またはそれ自体の中にCPU2212によって生成されたイメージデータを取得し、イメージデータがディスプレイデバイス2218上に表示されるようにする。
【0117】
通信インタフェース2222は、ネットワークを介して他の電子デバイスと通信する。ハードディスクドライブ2224は、コンピュータ2200内のCPU2212によって使用されるプログラムおよびデータを格納する。DVD-ROMドライブ2226は、プログラムまたはデータをDVD-ROM2201から読み取り、ハードディスクドライブ2224にRAM2214を介してプログラムまたはデータを提供する。ICカードドライブは、プログラムおよびデータをICカードから読み取り、および/またはプログラムおよびデータをICカードに書き込む。
【0118】
ROM2230はその中に、アクティブ化時にコンピュータ2200によって実行されるブートプログラム等、および/またはコンピュータ2200のハードウェアに依存するプログラムを格納する。入/出力チップ2240はまた、様々な入/出力ユニットをパラレルポート、シリアルポート、キーボードポート、マウスポート等を介して、入/出力コントローラ2220に接続してよい。
【0119】
プログラムが、DVD-ROM2201またはICカードのようなコンピュータ可読媒体によって提供される。プログラムは、コンピュータ可読媒体から読み取られ、コンピュータ可読媒体の例でもあるハードディスクドライブ2224、RAM2214、またはROM2230にインストールされ、CPU2212によって実行される。これらのプログラム内に記述される情報処理は、コンピュータ2200に読み取られ、プログラムと、上記様々なタイプのハードウェアリソースとの間の連携をもたらす。装置または方法が、コンピュータ2200の使用に従い情報の操作または処理を実現することによって構成されてよい。
【0120】
例えば、通信がコンピュータ2200および外部デバイス間で実行される場合、CPU2212は、RAM2214にロードされた通信プログラムを実行し、通信プログラムに記述された処理に基づいて、通信インタフェース2222に対し、通信処理を命令してよい。通信インタフェース2222は、CPU2212の制御下、RAM2214、ハードディスクドライブ2224、DVD-ROM2201、またはICカードのような記録媒体内に提供される送信バッファ処理領域に格納された送信データを読み取り、読み取られた送信データをネットワークに送信し、またはネットワークから受信された受信データを記録媒体上に提供される受信バッファ処理領域等に書き込む。
【0121】
また、CPU2212は、ハードディスクドライブ2224、DVD-ROMドライブ2226(DVD-ROM2201)、ICカード等のような外部記録媒体に格納されたファイルまたはデータベースの全部または必要な部分がRAM2214に読み取られるようにし、RAM2214上のデータに対し様々なタイプの処理を実行してよい。CPU2212は次に、処理されたデータを外部記録媒体にライトバックする。
【0122】
様々なタイプのプログラム、データ、テーブル、およびデータベースのような様々なタイプの情報が記録媒体に格納され、情報処理を受けてよい。CPU2212は、RAM2214から読み取られたデータに対し、本開示の随所に記載され、プログラムの命令シーケンスによって指定される様々なタイプの操作、情報処理、条件判断、条件分岐、無条件分岐、情報の検索/置換等を含む、様々なタイプの処理を実行してよく、結果をRAM2214に対しライトバックする。また、CPU2212は、記録媒体内のファイル、データベース等における情報を検索してよい。例えば、各々が第2の属性の属性値に関連付けられた第1の属性の属性値を有する複数のエントリが記録媒体内に格納される場合、CPU2212は、第1の属性の属性値が指定される、条件に一致するエントリを当該複数のエントリの中から検索し、当該エントリ内に格納された第2の属性の属性値を読み取り、それにより予め定められた条件を満たす第1の属性に関連付けられた第2の属性の属性値を取得してよい。
【0123】
上で説明したプログラムまたはソフトウェアモジュールは、コンピュータ2200上またはコンピュータ2200近傍のコンピュータ可読媒体に格納されてよい。また、専用通信ネットワークまたはインターネットに接続されたサーバーシステム内に提供されるハードディスクまたはRAMのような記録媒体が、コンピュータ可読媒体として使用可能であり、それによりプログラムを、ネットワークを介してコンピュータ2200に提供する。
【0124】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【0125】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【0126】
1 細胞培養システム
2 シミュレーション装置
3 シミュレータ
10 培養槽
11 アクチュエータ
13 コントローラ
15 制御ループ
20 記憶部
21 シミュレータ取得部
22 設定部
23 シミュレータ実行部
24 判定部
25 表示部
30 培養槽モデル
31 アクチュエータモデル
32 センサモデル
33 コントローラモデル
35 制御ループ
101 サンプリング装置
102 除細胞装置
103 フローセル
120 インラインセンサ
121 誘電分光計
122 近赤外/赤外/ラマン分光計
124 分析装置
131 攪拌装置
1210 電極
1220 受発光センサ
2200 コンピュータ
2201 DVD-ROM
2210 ホストコントローラ
2212 CPU
2214 RAM
2216 グラフィックコントローラ
2218 ディスプレイデバイス
2220 入/出力コントローラ
2222 通信インタフェース
2224 ハードディスクドライブ
2226 DVD-ROMドライブ
2230 ROM
2240 入/出力チップ
2242 キーボード