"エンジンの制御プログラムに含まれる複数のパラメータの適合を複数のコアを有する演算装置を用いて行う方法であって、前記複数のパラメータ間のデータ依存関係を抽出するステップと、前記複数のパラメータの最適化計算を前記複数のコアを用いて並列に実行するときの計算順序を前記データ依存関係に基づいて決定するステップと、決定した計算順序に従って前記複数のパラメータの最適化問題を前記複数のコアに割り当てるステップと、前記データ依存関係に従い前記複数のコア間でデータを受け渡しながら、コアごとに割り当てた前記複数のパラメータの最適化問題を前記複数のコアにより並列に解いていくステップと、を備えることを特徴とするパラメータ適合方法。複数のコアを有する演算装置を備え、エンジンの制御プログラムに含まれる複数のパラメータの適合を前記演算装置を用いて行うシステムであって、前記演算装置は、前記複数のパラメータ間のデータ依存関係を抽出し、前記複数のパラメータの最適化計算を前記複数のコアを用いて並列に実行するときの計算順序を前記データ依存関係に基づいて決定し、決定した計算順序に従って前記複数のパラメータの最適化問題を前記複数のコアに割り当て、そして、前記データ依存関係に従い前記複数のコア間でデータを受け渡しながら、コアごとに割り当てた前記複数のパラメータの最適化問題を前記複数のコアにより並列に解いていくようにプログラムされていることを特徴とするパラメータ適合システム。ただし、パラメータの最適化計算の並列化は単純な問題ではない。パラメータ間にはデータ依存関係、つまり、パラメータの値を同定するデータの依存関係が存在するからである。例えば、ある2つのパラメータの最適化計算を別々のコアによって並列に行うようにしたとする。しかし、それらパラメータ間にデータ依存関係がある場合、一方のパラメータの最適化計算が完了してその最適解が得られるまでは、他方のパラメータの最適化計算は待ち状態となってしまう。演算資源を有効に活用して全パラメータの最適化計算を高速で完了するためには、このような同期処理による待ち時間を極力発生させないことが必要である。本発明は、上述のような課題に鑑みてなされたもので、パラメータの適合作業を複数のコアを有する演算装置を用いて行うにあたり、その演算資源を有効に活用することのできる適合方法を採ることによって適合作業に要する演算時間の短縮を実現することを目的とする。上記の目的を達成するため、本発明の1つの形態によれば、複数のコアを有する演算装置は、まず、エンジン制御プログラムに含まれる全てのパラメータ間のデータ依存関係をデータ依存解析技術を用いて抽出する。次いで、複数のコアによる並列計算の順序を抽出したデータ依存関係に基づいて決定し、決定した計算順序に従って各パラメータの最適化問題を何れかのコアに割り当てる。そして、抽出したデータ依存関係に従いコア間でデータを受け渡しながら、コアごとに割り当てた各パラメータの最適化問題を複数のコアにより並列に解いていく。複数のパラメータの最適化計算の順序を単純に並列化するのではなく、パラメータ間のデータ依存関係に基づいて並列計算の順序が決められるので、各コアで発生する同期処理のための演算の待ち時間を減らすことができる。これにより演算装置の演算資源は有効に活用されることになって、全体としてパラメータの適合作業に要する演算時間は短縮される。以下、本発明の実施の形態について図を用いて説明する。本実施の形態のパラメータ適合システムは、エンジン制御プログラムに含まれる多数のパラメータの適合を自動で行うシステムである。本発明においては、エンジン制御プログラムにより制御されるエンジンの種類や構造に限定は無く、エンジン制御プログラム自体についてもその内容に限定は無い。図1は本パラメータ適合システムの構成を示す図である。本パラメータ適合システムは演算装置を備えている。この演算装置は、ハードウェアとしてのコア及びメモリと、ソフトウェアとしてのOSOperatingSystem及び自動適合プログラムを備えている。この演算装置が搭載するコアの数は4つであり、各コアは図示省略のCPUとキャッシュを備えている。4つのコアとメモリは図示省略のバスで接続されている。メモリは4つのコア間で共有される共有メモリである。メモリには、エンジン制御プログラムで用いられるエンジン制御モデルとエンジンの試験データ及び設計データが記憶されている。OSは4つのコアを統合的に管理している。自動適合プログラムはOS上で動作するアプリケーションである。自動適合プログラムが実行されることにより本パラメータ適合システムが実現される。エンジン制御プログラムでは、エンジンの制御構造をモデル化したエンジン制御モデルが用いられている。エンジン制御モデルは、吸気管、排気管、シリンダ、タービン、コンプレッサ等のエンジンを構成する部品ごとに作成された複数のサブモデルからなる。適合対象であるパラメータは各サブモデルに含まれている。サブモデルは次のような数式によって表すことができる。上記の数式において、sはサブモデルの数を表している。y1,y2,...,ysは各サブモデルの出力であって、過給圧、EGR率、各部温度等のエンジンの物理量を表している。f1,f2,...,fsは写像を意味し、tは離散的時刻を表している。uはアクチュエータ入力である。wは外乱項であり、例えばディーゼルエンジンの場合には回転数と噴射量が割り当てられる。xは回帰ベクトルであり、入出力の過去の値が入られる。そして、θ1,θ2,...,θsが各サブモデルのパラメータである。各パラメータの値はサブモデルの入出力データから同定されるものであるため、パラメータ間にはデータの依存関係が存在している。図2は本実施の形態のパラメータ適合方法を示すフローチャートである。演算装置により自動適合プログラムが実行されることによって、このフローチャートに示す適合方法が実施される。最初のステップS1では、各サブモデルのパラメータ間に存在するデータ依存関係が有向グラフとして抽出される。データ依存関係の抽出には公知のデータ依存解析技術を用いることができる。データ依存解析技術としては今日様々な方法が提案されている。ただし、本発明においては、ステップS1で使用するデータ依存解析技術に限定は無い。次のステップS2では、4つのコアによる並列計算の順序が有向グラフに基づいて決定される。図3及び図4は、有向グラフに基づき決定した並列計算の順序の例を示している。これらの図では、パラメータ間のデータの依存関係が矢印によって表されている。例えば、パラメータθ6の値はパラメータθ2の値に依存し、パラメータθ2の値はパラメータθ1の値に依存している。このようなデータ依存関係を有向グラフにより抽出することで、最適化計算を並列に行うことのできるパラメータが明らかになる。例えば、パラメータθ2とパラメータθ3の間には依存関係が無いことから、それらの最適化計算は並列に行うことができる。また、有向グラフによれば、どのような組み合わせで並列計算を行えばコアの使用率を高めることができるかが明らかになる。例えば、図3に示す例では、パラメータθ9,θ10,θ11について並列計算を行い、その後に、パラメータθ12,θ13,θ14について並列計算を行うことでコアの使用率を高くすることができる。一方、図4に示す例のように、パラメータθ13,θ14とは依存関係の無いパラメータθ15,θ16が存在するのであれば、パラメータθ9,θ10,θ11,θ12について並列計算を行い、その後に、パラメータθ13,θ14,θ15,θ16について並列計算を行うことでコアの使用率をさらに高めることができる。次のステップS3では、ステップS2で決定したパラメータ間の計算順序に従い、各パラメータの最適化問題が4つのコアに割り当てられる。最適化問題のコアへの割り当ては、全てのパラメータについて最適化計算が完了するまでの時間、つまり、適合作業に要する演算時間が最小になるように決められる。具体的には、コア間の同期処理のための待ち時間が最小になるように割り当てが決められる。例えば、図3においてコア1にパラメータθ3の最適化問題が割り当てられ、コア2にはパラメータθ4,θ7の最適化問題が割り当てられているとする。この場合、コア2によるパラメータθ4の計算が終わったとしても、コア1によるパラメータθ3の計算が終わっていない場合には、コア2は次のパラメータθ7の計算を開始することができない。つまり、コア1との間で同期を取るための待ち時間がコア2に発生することになる。このようなコア間の同期処理のための待ち時間が最小になるように各コアへの割り当てを定めることで、適合作業に要する全体としての演算時間を最小にすることができる。そして、ステップS4では、演算装置が備える4つのコアによってパラメータの最適化問題の並列計算が行われる。その際、各コアは、コア間通信によって他のコアとの間でデータを受け渡しながら、自身に割り当てられたパラメータの最適化問題を指示された計算順序に従って解いていく。なお、本発明においては、パラメータの最適化問題の記述の仕方やその解法についての限定はない。以上述べたように、本パラメータ適合方法によれば、複数のパラメータの最適化計算の順序を単純に並列化するのではなく、パラメータ間のデータ依存関係に基づいて並列計算の順序が決められる。これにより、各コアで発生する同期処理のための待ち時間を減らすことができ、短い時間で全パラメータの適合作業を完了することができる。また、本パラメータ適合方法によれば、エンジン制御プログラムに含まれる全てのパラメータについてデータ依存関係が抽出され、それに基づいて各パラメータの適合が行われる。これによれば、サブモデルごとに適合を行う場合のような局所最適ではなく、エンジン制御モデルの全体からみた大局的最適な適合を行うことができる。ところで、本発明は上述の実施の形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々変形して実施することができる。例えば、図1に示すパラメータ適合システムでは1つのOSで4つのコアを管理しているが、コアごとに専用のOSを動作させてもよい。また、コアの数は4つには限定されない。本発明を適用する演算装置は複数のコアを有するいわゆるマルチコアチップの演算装置であればよく、コア数が数十個のいわゆるメニーコアチップの演算装置でもよい。ステップS3における最適化問題のコアへの割り当て方法に関して言えば、上述の実施の形態とは異なる方法を採ることもできる。例えば、コア間通信の頻度が最小になるように割り当てるというオプションも選択可能である。パラメータθ1の計算をコア1で行いパラメータθ2の計算をコア2で行う場合、コア1とコア2との間にはパラメータθ2の計算に用いるデータを渡すためのコア間通信が発生する。しかし、パラメータθ1の計算とパラメータθ2の計算をともにコア1で行えば、パラメータθ2の計算のためのコア間通信を発生させなくて済む。また、コアごとの演算負荷のばらつきが最小になるように割り当てるというオプションも選択可能である。特定のコアに演算負荷が集中しないように各コアに均等に演算負荷を配分することで、演算装置全体としての電力消費を最小にすることができる。"