(57)【要約】本発明は、製造および、研究や開発におけるワークフローに関し、特に、製造活動とともに、研究や開発の遂行やそれらの記録を自動化する手段に関する。ここに、適応階層型ワークフロー環境における、バッチベースの作業手順を確定・実行する手段を説明する。オートフィルアルゴリズムは、適応階層型ワークフロー環境におけるバッチベースの作業手順を定義して自動実行する手段を提供し、実験手順計画、実行、記録、およびロボット機器の駆動を含む広範囲の適用に好適である。
2006520502.tif 000002
【特許請求の範囲】
【請求項１】
フロープロセスのデジタルモデルを採用した方法であって、
少なくとも二つの階層型ノードのデジタル表示を作成し、前記各階層型ノードが各階層型ノードの多数の次元を定義する各次元数を自身に関連付け、前記各階層型ノードの各次元が互いに対し定義された順序を有し、各次元がそれぞれの多数のメンバーを定義する関連サイズを有し、
前記階層型ノードの少なくともいくつかの間の接続を定義する多数の階層型エッジのデジタル表示を作成し、前記階層型エッジの少なくとも第１のエッジが、前記少なくとも二つの前記階層ノードの第１および第２のノードとの間に接続を定義し、
前記階層型エッジの各共有エッジによって接続された階層型ノードの多数のペアのそれぞれに対して、多数のマッチルールの少なくとも一つを前記階層型ノードのペアと関連付け、前各記マッチルールは前記各ペアの階層型ノード間に、少なくとも一つのマトリックス変換を定義し、前記各ペアの前記階層型ノードのメンバーに前記マトリックス変換を適用することで、生成される一組の原始ノードと原始エッジを定義し、多数のマッチルールの第１ルールは、前記第１および第２階層型ノード間に第１マトリックス変換を定義する、方法。
【請求項２】
請求項１に記載の方法であって、さらに、
前記少なくとも二つの階層型ノードの第１の階層型ノードを表わす第１のアイコンの選択を定義し、第１の階層型ノードに対する次元の総数を示す次元数と各次元のサイズを定義する第１組のユーザー入力を受領し、
前記少なくとも二つの階層型ノードの第２の階層型ノードを表わす第１のアイコンの選択を定義し、第２の階層型ノードに対する次元の総数を示す次元数と各次元のサイズを定義する第２組のユーザー入力を受領する、方法。
【請求項３】
請求項２に記載の方法であって、さらに、
前記第１階層型ノードから前記第２階層型ノードまで延びるエッジを表わす第１アイコンを定義する第３組のユーザー入力を受領する、方法。
【請求項４】
請求項１に記載の方法であって、さらに、
前記少なくとも二つの階層型ノードの前記第１の階層型ノードを表わす第１のアイコンの選択と前記第１階層型ノードの人間読み取り可能の名称を定義し、前記第１階層型ノードの次元の総数を示す次元数と、各次元のサイズと、各次元の人間読み取り可能の名称を定義する第１組のユーザー入力を受領する、方法。
【請求項５】
請求項１に記載の方法であって、さらに、
前記少なくとも二つの階層型ノードの前記第１の階層型ノードを表わす第１のアイコンの選択と前記第１階層型ノードの人間読み取り可能の名称を定義し、前記第１階層型ノードの次元の総数を示す次元数と、次元における互いの順序と、各次元のサイズを定義する第１組のユーザー入力を受領する、方法。
【請求項６】
請求項１に記載の方法であって、さらに、
前記各階層型ノードに対して、各次元を充填する多数の原始ノードのデジタル表示を、前記多数の次元と前記各階層型ノードの次元のサイズとに基づき自動的に作成する、方法。
【請求項７】
請求項６に記載の方法であって、さらに、
前記階層型エッジの各共有エッジによって接続された階層型ノードの各ペアに対して、原始ノード間に原始エッジのデジタル表示を、前記階層型ノードの各ペアに関連した前記マッチルールによって定義された前記マトリックス変換に基づき自動的に作成する、方法。
【請求項８】
請求項７に記載の方法であって、さらに、
前記階層型ノードの少なくとも一つ、もしくは前記階層型エッジの少なくとも一つに対する変化を検知し、
前記検知された変化に対応して、前記各階層型ノードに対して、
前記各次元を充填する多数の原始ノードのデジタル表示を、前記多数の次元と前記各階層型ノードのそれぞれの次元のサイズとに基づき自動的に作成する、方法。
【請求項９】
請求項７に記載の方法であって、さらに、
前記階層型ノードの少なくとも一つ、もしくは前記階層型エッジの少なくとも一つに対する変化を検知し、
前記検知された変化に対応して、前記各階層型ノードに対して、
前記各次元を充填する多数の原始ノードのデジタル表示を、前記多数の次元と前記各階層型ノードのそれぞれの次元のサイズとに基づき自動的に再作成し、原始ノード間に原始エッジのデジタル表示を、階層型ノードの各ペアに関連した前記マッチルールによって定義された前記マトリックス変換に基づき自動的に作成する、方法。
【請求項１０】
請求項９に記載の方法であって、さらに、
ユーザーが、前記マッチルールの少なくとも一つの、前記原始ノードの少なくとも一つもしくは前記原始エッジの少なくとも一つへの適用の抑制を指示することを決定し、
ユーザー指示による、前記少なくとも一つのマッチルールの、前記原始ノードの少なくとも一つもしくは前記原始ノードの少なくとも一つへの適用の抑制に基づき、前記原始ノードの少なくとも一つもしくは前記原始エッジの少なくとも一つの再作成を選択的に抑制する、方法。
【請求項１１】
請求項１に記載の方法であって、さらに、
前記原始ノードと原始エッジの可視表示を生成する、方法。
【請求項１２】
請求項１１に記載の方法であって、さらに、
多数のトランスデューサーを駆動するために、少なくとも前記原始ノードのいくつかと原始エッジのいくつかに対応する多数のトランスデューサー駆動信号を生成する、方法。
【請求項１３】
パラレルパスが、結合、および／もしくは分割などの再編成を受けるマテリアルもしくはデータにオペレーションを行う、高度パラレル処理をモデリングするシステムであり、
少なくとも二つの階層型ノードのデジタル表示を作成する手段を備え、前記各階層型ノードがそれ自身を各階層型ノードの多数の次元を定義する各次元数と関連付け、前記各階層型ノードの各次元が互いに対して定義された順序を有し、各次元がそれぞれの多数のメンバーを定義する関連サイズを有するものであり、
前記階層型ノードの少なくともいくつかの間で接続を定義する多数の階層型エッジのデジタル表示を作成する手段を備え、前記階層型エッジの少なくとも第１のエッジが、前記少なくとも二つの階層ノードの第１および第２のノードとの間に接続を定義するものであり、
多数のマッチルールの少なくとも一つを、前記階層型エッジの各共有エッジによって接続された階層型ノードの多数のペアに対して、一対の階層型ノードに関連付ける手段を備え、前記各マッチルールは前各ペアの記階層型ノード間に少なくとも一つのマトリックス変換を定義し、前記各ペアの階層型ノードのメンバーに前記マトリックス変換を適用することで生成される一組の原始ノードと原始エッジを定義し、
前記多数のマッチルールの第１ルールは前記第１ノードと第２ノード間の第１マトリックス変換を定義する、システム。
【請求項１４】
請求項１３に記載のシステムであって、さらに、
プロセッサーと、
前記プロセッサーによって実行される指示を格納するコンピューター読み取り可能メモリを備え、
少なくとも二つの階層型ノードのデジタル表示を作成する前記手段は前記コンピューター読み取り可能メモリに格納された第１組の指示を備え、前記階層型ノードの少なくともいくつかの間の接続を定義する多数の階層型エッジのデジタル表示を作成する前記手段は、前記コンピューター読み取り可能メモリに格納された第２組の指示を備え、多数のマッチルールの少なくとも一つを、前記階層型エッジの各共有エッジによって接続された階層型ノードの多数のペアに対して、一対の階層型ノードに関連付ける前記手段は前記コンピューター読み取り可能メモリに格納された第３組の指示を備える、システム。
【請求項１５】
請求項１３に記載のシステムであって、さらに、
前記プロセッサーに連結されて、前記階層型ノード、前記階層型エッジ、前記原始ノードおよび原始エッジに動作可能なディスプレイを備える、システム。
【請求項１６】
請求項１３に記載のシステムであって、さらに、
一つ以上のロボット機器に制御信号を与える連結可能な出力ポートを備える、システム。
【請求項１７】
フロープロセスを体言するデータ構造を格納するコンピューター読み取り可能媒体であって、
少なくとも二つの階層型ノードを備え、前記各階層型ノードは、前記各階層型ノードの多数の次元を定義する各次元数をそれ自身に関連付け、各階層型ノードの各次元がお互いに対し定義された順序を有し、各次元がそれぞれの多数のメンバーを定義する関連サイズを有するものであり、
前記階層型ノードの少なくともいくつかの間で接続を定義する多数の階層型エッジを備え、前記階層型エッジの少なくとも第１のエッジが、前記少なくとも二つの前記階層ノードの第１および第２のノードとの間に接続を定義するものであり、
多数のマッチルールを備え、各前記マッチルールは前記階層型エッジの共通エッジによって接続される階層型ノードの各ペア間に少なくとも一つのマトリックス変換を定義し、前記階層型ノードの各ペアにおける階層型ノードのメンバーに前記マトリックス変換を適用することで、生成される一組の原始ノードと原始エッジを定義し、前記多数のマッチルールの第１ルールは前記第１および第２階層型ノード間の第１マトリックス変換を定義する、コンピューター読み取り可能媒体。
【請求項１８】
請求項１７に記載のコンピューター読み取り可能媒体であって、
各メンバーは基本オペレーションもしくは基本マテリアルを表す、コンピューター読み取り可能媒体。
【請求項１９】
請求項１７に記載のコンピューター読み取り可能媒体であって、
各メンバーは情報の基本部分を表す、コンピューター読み取り可能媒体。
【請求項２０】
請求項１７に記載のコンピューター読み取り可能媒体であって、
各メンバーは基本オペレーション、基本マテリアル、もしくは別の階層ノードの一つを表す、コンピューター読み取り可能媒体。
【請求項２１】
請求項１７に記載のコンピューター読み取り可能媒体であって、
各メンバーは前記次元に沿って順序づけられる、コンピューター読み取り可能媒体。
【請求項２２】
請求項１７に記載のコンピューター読み取り可能媒体であって、
前記第１および第２階層型ノードの少なくとも一つの前記次元数は３つであり、各次元はＸ−軸、前記Ｘ−軸に直行するＹ−軸、前記Ｘ−軸とＹ−軸の両方に直行するＺ−軸に相当する、コンピューター読み取り可能媒体。
【請求項２３】
請求項１７に記載のコンピューター読み取り可能媒体であって、
各メンバーは情報の基本部分を表す、コンピューター読み取り可能媒体。
前記第１および第２階層型ノードの少なくとも一つの前記次元数は２つであり、各次元はローとローに直行するコラムに相当する、コンピューター読み取り可能媒体。
【請求項２４】
階層型ノードと前記階層型ノード間の指示された接続を定義する階層型エッジの形態による高度な構図を採用することで、原始ノードと前記原始ノード間の基本接続の形態によるプロセスフローの下位レベルにおける詳細を表す方法であって、
多数の階層型ノードのそれぞれに対して、各階層型ノードの少なくとも一つのデカルト次元を一部充填する多数の原始ノードを自動的に作成し、
前記自動的に作成された原始ノード間の多数の基本エッジ接続を、前記階層型ノードの接続ペアに関連するマッチルールに基づいて自動的に作成し、前記マッチルールは前記階層型ノードの接続ペアの階層型ノード間に少なくとも一つのマトリックス変換を定義する、方法。
【請求項２５】
請求項２４に記載の方法であって、さらに、
プロパティを前記原始ノードの少なくともいくつかに関連付け、前記原始ノードに関連付けられたプロパティは、前記原始ノードを前記マッチルールを介して定義する前記階層型ノードの各次元に割り当てられたプロパティに対応する、方法。
【請求項２６】
請求項２４に記載の方法であって、
第１の階層型ノードは第１のマテリアルに相当し、第２の階層型ノードは第２のマテリアルに相当し、第３の階層型ノードは前記第１および第２のマテリアルに対して行われるオペレーションに相当し、第１のエッジは前記第１の階層型ノードを前記第３の階層型ノードに接続し、第２のエッジは前記第２の階層型ノードを前記第３の階層型ノードに接続する、方法。
【請求項２７】
請求項２６に記載の方法であって、さらに、
各階層型ノードの少なくとも一つのデカルト次元を一部充填する多数の原始ノードの自動的作成において、前記第１の階層型ノードのローを表す多数の原始ノードを作成し、前記第２の階層型ノードのコラムを表す多数の原始ノードを作成し、前記第３の階層型ノードを表す原始ノードの多数のローとコラムを作成し、前記第３の階層型ノードを表す前記多数のローは前記第１の階層型ノードの多数のローとマッチし、前記第３の階層型ノードを表す前記多数のコラムは前記第２の階層型ノードの多数のコラムと合致する、方法。
【請求項２８】
請求項２７に記載の方法であって、さらに、
前記自動的に作成された原始ノード間の多数の基本エッジ接続の、前記階層型ノードの接続ペアに関連するマッチルールに基づく自動的作成において、前記第１の階層型ノードの各ローを表す多数の原始ノードのそれぞれから、前記第３の階層型ノードの各ローにおける前記原始ノードのそれぞれまでのエッジ接続を作成し、前記第２の階層型ノードの各コラムを表す多数の原始ノードのそれぞれから、第３の階層型ノードの各コラムにおける前記原始ノードのそれぞれまでのエッジ接続を作成する、方法。
【発明の詳細な説明】
【背景技術】
【０００１】
（発明の背景）
（発明の分野）
本発明は、製造および、研究や開発におけるワークフローに関し、特に、製造活動とともに、研究や開発の遂行やそれらの記録を自動化する手段に関する。
【０００２】
（関連分野の説明）
多くの研究者が、研究・開発の遂行および／もしくは記録に際し、自動数式処理システムに加えて、所在地がワシントンのレッドモンドとする、マイクロソフト株式会社が提供するＥｘｃｅｌ（登録商標）などの、実験ノートや自動表計算を使用している。
【０００３】
実験手順の設計においては、バッチに基づく規則性を利用する必要がある。設計者は個々のオペレーションの代わりに、オペレーションのバッチを用いて作業手順を作成することが求められ、そうすることで、有用かつ精細な構造が存在することを容易に示すことができる。バッチベースの作業手順の設計において重要な点は、ユーザーが作成したバッチベースの作業手順から精細なトポロジーを導くために簡単なルールを設けることである。そのルール、もしくはアルゴリズムは、ユーザーによる理解・予想が可能なものであり、同時に、ユーザーが、多岐にわたる有益かつ精細なトポロジーを作成する能力を提供するものであることが期待される。
【発明の開示】
【課題を解決するための手段】
【０００４】
（発明の概要）
ここに、適応階層型ワークフロー環境における、バッチベースの作業手順を確定・実行する手段を説明する。そういった手段は、ロボット操作機器の駆動に加えて、実験手順計画、実行、記録を含む様々な用途に適している。
【０００５】
以下の図面において、同一の符号は同様の構成要素もしくは作用を指す。図面中の構成要素の大きさおよび相対位置は必ずしも図面のそれに従うものではなく、例えば、各構成要素の形状や角度は図面のそれに従うものではなく、いくつかの構成要素は、図面を見やすくする目的で、任意に拡大、配置される。さらに、それぞれの構成要素の特有の形状は、特定の構成要素における実際の形状を伝えることを意図したものではなく、単に、図面において認識しやすいように選択されたものである。
【発明を実施するための最良の形態】
【０００６】
（発明の詳細な説明）
以下の説明においては、特定の詳細事項の説明を行うことで、本発明の各実施形態への十分な理解を促しているが、当業者であれば、これらの詳細な情報がなくとも本発明を実施可能であることは理解できるであろう。その他の例においては、本発明の実施形態に対する説明を不必要に曖昧にすることがないように、バッチベース作業設計に関連する公知の構造の図示もしくは説明は行わない。
【０００７】
内容が別の意味を必要としない限り、本明細書および添付の請求項において、「備える」および「備えて」などの単語は、「含むが、それに限定はされない」という意味での非限定的かつ包含的な解釈をなされるべきものある。
【０００８】
本明細書を通して、「一つの実施形態もしくは実施形態」という記載は、その実施形態に関連して説明される特定の機能、構造もしくは特徴が、少なくとも本発明の一つの実施形態に含まれるという意味である。このように、本明細書を通して各所に記載される「一つの実施形態において」もしくは「実施形態において」という表現は、必ずしもすべてが同じ実施形態に言及しているとは限らない。さらに、特定の機能、構造もしくは特徴は、一つ以上の実施形態において好適に組み合わせてもよい。
【０００９】
本明細書に記載される各見出しは便宜上のものであり、請求発明の範囲もしくは意義に解釈が加えられるものではない。
【００１０】
図１Ａおよび以下の論考は、本発明が実施される、好適なコンピューター環境に対する簡略かつ概要説明である。指定はないが、本発明における実施形態は、パソコンによって実行されるプログラムアプリケーションモジュール、目的もしくはマクロなどの、コンピューターにより実行可能な指示を一般的な背景として説明される。関連分野の当業者であれば、本発明が、携帯用機器、マイクロプロセッサシステム、マイクロプロセッサを用いたもしくはプログラミング可能な消費電子製品、ネットワークパソコン、ミニコン、メインフレームコンピューターなどを含む、他のコンピューターシステム構成を用いて実施可能であることを認識するであろう。本発明は、コミュニケーションネットワークを介して連結された遠隔処理装置によってタスクやモジュールが行われる、分散型コンピューター環境において実施可能である。ある分散型コンピューター環境では、プログラムモジュールはローカルおよび遠隔のメモリ記憶装置の両方に配置される。
【００１１】
図１Ａを参照して、本発明で言及される従来のパソコンである、コンピューターシステム１０は、処理部１２と、システムメモリ１４と、前記システムメモリ１４の処理部１２への連結を含む、様々なシステム構成要素を連結するシステムバス１６を備える。処理部１２は論理処理部であればどれでもよく、例としては、一つ以上の中央処理器（ＣＰＵｓ）、デジタル信号処理器（ＤＳＰｓ）、アプリケーション用集積回路（ＡＳＩＣ）などである。別の説明がない限りは、図１Ａに図示する様々なブロックの構成および作用は、従来の設計によるものである。よって、関連分野の当業者であれば理解できるものとして、それらのブロックは本明細書における詳細説明は省略する。
【００１２】
システムバス１６は、メモリ制御器に搭載されるメモリバス、周辺バス、および／もしくはローカルバスを含む、公知のバスの構造もしくは構成あれば、すべて用いることができる。システムメモリ１４は、読み取り専用メモリ（「ＲＯＭ」）１８およびランダムアクセスメモリ（「ＲＡＭ」）２０を含む。前記ＲＯＭ１８の一部を構成する基本入力／出力システム（「ＢＩＯＳ」）２２は、スタートアップ中などに、コンピューターシステム１０内のエレメント間の情報転送をサポートする基本ルーティンを含有する。
【００１３】
コンピューターシステム１０はまた、ハードディスク２５に対する読み取りおよび書き込み用のハードディスクドライブ２４などの、一つ以上の回転メディアメモリと、それぞれ、取り外し可能な光ディスク３０と磁気ディスク３２に対する読み取りと書き込みを行う光ディスクドライブ２６と磁気ディスクドライブ２８を含む。光ディスク３０は、ＣＤ−ＲＯＭを採用してもよく、一方、磁気ディスク３２は磁気フロッピー（登録商標）ディスクもしくはディスケットを採用できる。ハードディスクドライブ２４、光ディスクドライブ２６、磁気ディスクドライブ２８は、バス１６を介して処理部１２と交信する。ハードディスクドライブ２４、光ディスクドライブ２６、磁気ディスクドライブ２８は、関連分野の当業者に公知のように、それらのドライブとバス１６間に連結されるインターフェースもしくはコントローラーを、例えば、ＩＤＥ（すなわち、Ｉｎｔｅｇｒａｔｅｄ  Ｄｒｉｖｅ  Ｅｌｅｃｔｒｏｎｉｃｓ）インターフェースを介して含んでもよい。ドライブ２４，２６，２８とそれに関連したコンピューターで読み取り可能な媒体は、コンピューターシステム１０に対して、コンピューターで読み取り可能な指示、データ構造、プログラムモジュール、およびその他のデータの不揮発性記憶部を提供する。上記に説明したコンピューターシステム１０はハードディスク２５、光ディスク３０、磁気ディスク３２を採用しているが、関連分野の当業者であれば、デジタルビデオディスク（「ＤＶＤ」）、ベルヌーイカートリッジなどの、他のタイプの回転メディアメモリ、コンピューターで読み取り可能な媒体が採用可能であることを認識するであろう。関連分野の当業者はまた、例えば、磁気カセット、フラッシュメモリカード、ＲＡＭｓ、ＲＯＭｓ、スマートカードなどの非回転メディアメモリを例とした、コンピューターがアクセス可能なデータを保存できる他のタイプのコンピューター読み取り可能媒体が採用可能であることを認識するであろう。
【００１４】
オペレーティングシステム３４、一つ以上のアプリケーションプログラム３６、他のプログラムもしくはモジュール３８、プログラムデータ４０などのプログラムモジュールはシステムメモリ１４に格納される。システムメモリ１４はまた、コンピューターシステム１０に、サーバーコンピュータ上の他のサーバーアプリケーションとともに、インターネット、企業のイントラネット、もしくは他のネットワークのホームページなどのソースに対する、データのアクセスおよび交換を許可するブラウザー４１を含む。前記ブラウザー４１は、ハイパーテキストマークアップ言語などのマークアップ言語（「ＨＴＭＬ」）を用いており、情報文書のデータにその文書構造を表すために付加された構文上の区切り文字を使用するマークアップ言語を用いて作動する。
【００１５】
図１Ａの図示ではシステムメモリに格納されているが、オペレーティングシステム３４、アプリケーションプログラム３６、その他のプログラムモジュール３８、プログラムデータ４０、ブラウザー４１はハードディスクドライブ２４のハードディスク２５、光デスクドライブ２６の光ディスク３０、および／もしくは磁気ディスクドライブ２８の磁気ディスク３２に格納することができる。ユーザーは、キーボード４２やマウス４４などのポインター器などの入力機器を使って、コンピューターシステム１０にコマンドや情報を入力できる。他の入力機器としては、マイクロフォン、ジョイスティック、ゲームパッド、スキャナーなどが含まれる。これらとそれ以外の入力機器は、バス１６を連結するシリアルポートインターフェースなどのインターフェース４６を介して処理部１２に接続されるが、パラレルポート、ゲームポート、ユニバーサルシリアルバス（「ＵＳＢ」）などの、他のインターフェースも使用可能である。モニター４８もしくは他のディスプレイ機器は、ビデオアダプターなどのビデオインターフェース５０を介して、バス１６に連結されてもよい。コンピューターシステム１０は、スピーカー、プリンターなどの、他の出力機器を含むこともできる。
【００１６】
コンピューターシステム１０は、一つ以上のリモートコンピューター、もしくはマイクロ流体システム６０などのロボットシステムへの論理接続を用いてネットワーク化された環境での動作が可能である。コンピューターシステム１０は、公知の通信手段であればどれでも採用可能であり、例えば、ローカルエリアネットワーク（「ＬＡＮ」）５２、ワイドエリアネットワーク（「ＷＡＮ」）、もしくはインターネット５４である。上記のようなネットワーク環境は、企業規模でのコンピューターシステム、イントラネット、およびインターネットにおいて周知である。
【００１７】
ＬＡＮのネットワーク環境で使用される場合、コンピューターシステム１０は、アダプターもしくはネットワークインターフェース５６を介してＬＡＮ５２に接続される（通信可能にバス１６に接続される）。ＷＡＮのネットワーク環境で使用される場合、コンピューターシステム１０は、モデム５７、もしくはＷＡＮ／インターネット５４上で通信を確立する他の機器を含むことが多い。モデム５７は、通信を可能にするようにインターフェース４６とＷＡＮ／インターネット５４間に接続される形で、図１Ａに図示されている。ネットワーク化された環境では、プログラムモジュール、アプリケーションプログラム、もしくはデータ、もしくはそれらの一部が、サーバーコンピューター（図示なし）に格納される。関連分野の当業者であればただちに認識するであろうが、図１Ａに図示のネットワーク接続がコンピューター間、および／もしくはロボットシステム６０間の通信網を確立する数例にすぎず、例えば、ワイヤレス接続を含む他の接続方法を用いることもできる。
【００１８】
コンピューターシステム１０は、スロット５８などの一つ以上のインターフェースを含むことで、コンピューターシステム１０に対して、内臓もしくは外付けのどちらかの形態での機器の追加を可能にしてもよい。例えば、好適なインターフェースとしては、オプションカード、シリアおよび／もしくはパラレルポート、ＵＳＢポート（すなわち、ユニバーサルシリアルバス）、オーディオ入力／  出力（すなわち、Ｉ／Ｏ）、および、ＭＩＤＩ／ジョイスティック  コネクター、および／もしくはメモリ用スロット用のＩＳＡ（業界標準アーキテクチャ）、ＩＤＥ、ＰＣＩ（すなわち、パソコンインターフェース）、および／もしくは、ＡＧＰ（すなわち、アドバンスグラフィックプロセッサー）のスロットコネクター、ＭＩＤＩ／ジョイステックコネクター、および／もしくはメモリ用スロットを含んでもよい。
【００１９】
本明細書で記載されている「コンピューターで読み取り可能な媒体」という表現は、処理部１２に実行を促す指示を送る際に関与する媒体であればいかなるものも指す。上記媒体は様々な形態をとり、不揮発性媒体、揮発性媒体、および伝送媒体を含むが、それらに限定されるものではない。不揮発性媒体の例としては、ハードディスク２５、光ディスク３０、もしくは磁気ディスク３２のそれぞれを含む。揮発性媒体は、システムメモリ１４などのダイナミックメモリを含む。伝送媒体は、同軸ケーブル、銅線、および光ファイバーを含み、システムバス１６を備えるワイヤーを含む。伝送媒体はまた、電波や赤外線データ通信中に生成されるものなど、音波や光波の形態を適用可能である。
【００２０】
コンピューターで読み取り可能な媒体の一般形態としては、例えば、フロッピー（登録商標）ディスク、フレキシブルディスク、ハードディスク、磁気テープもしくはそれ以外の磁気媒体、ＣＤ−ＲＯＭ、それ以外の光媒体、パンチカード、ペーパーテープ、それ以外のホールパターンを設けた物理的媒体、ＲＡＭ、ＰＲＯＭ、ＥＰＲＯＭ、フラッシューＥＰＲＯＭ、それ以外のメモリチップもしくはカートリッジ、以降に説明する搬送波、それ以外のコンピューターが読み取り可能であるすべての媒体を含む。
【００２１】
上記様々な態様のコンピューターで読み取り可能な媒体は、一つ以上の指示の一つ以上のシークエンス、を実行に際して処理部１２に送る作業に関与してもよい。例えば、各指示は当初、リモートコンピューターの磁気ディスクに載せて移送されてもよい。リモートコンピューターは、そのダイナミックなメモリに指示を搭載し、その指示を、モデムを用いて電話線にのせて伝送することができる。コンピューターシステム１０用のモデム５７は、電話線を通じてデータを受け取り、そのデータを、赤外線トランスミッターを用いて赤外線信号に変換することができる。システムバス１６に連結された赤外線検知器は、赤外線信号で運ばれたデータを受け取り、そのデータをシステムバス１６に配置する。システムバス１６は、そのデータをシステムメモリ１４に送り、そこから、処理部１２が指示を取り出して実行する。システムメモリ１４が受け取った指示は、処理部１２による実行の前か後かどちらかに任意に、記憶器に格納される。
【００２２】
（問題点の事例）
図１Ｂは、生物学の実験室において、人間かロボット機器によって行われる一組のタスクの簡単な階層型ワークフロー図６２を示す。このワークフロー図６２は、「Ｗｏｒｋｆｌｏｗ  ６３」と名づけられたノードが、それ以外の、「サンプル６４」、「Ｒｅａｇｅｎｔ  ６５」、「Ｄｉｓｐｅｎｓｅ  ６６」、および「Ｃｏｍｂｉｎｅ  ６７」と名づけられた４つのノードを含有するために、階層型となっている。細い矢印６８はコンテナシップを表し、太い矢印６９はワークフローのシークエンスを表す。
【００２３】
この例では、ワークフロー６３の最終目的は、生物学的サンプルを何らかのリージェントとコンバインし、５百万セルのカウントにおいて、希望するボリュームである５０ｍＬを生成することである。さらに重要なのは、サンプルとリージェントの必要とされるボリュームは、オリジナルサンプルのセルの数とボリューム（セル密度）に基づいてコンピューター計算が必要なことである。例えば、必要されるオリジナルサンプルのボリュームは、サンプルの総カウントに対する希望カウント（５Ｍ）の割合をサンプルボリュームで乗算したものである（ボリューム＊総／希望）。この量は、希望ボリューム（５０ｍＬ）から減算されて、どれくらいのリージェントが必要かを決定する。これらの数式は、表計算で使用されるタイプのものに非常に似通っているが、残念な点は、フローグラフの自由な形式では、コラムとローの配置を、変数を参照する手段としては使えないことである。
【００２４】
本明細書では、ユーザーが、ノードやプロパティ名の点で簡単な条件式を生成できるような、階層型ネーミングとルックアップアルゴリズムが開示される。詳細に説明すると、上記各数式はこの方法を用いると以下になる。
【００２５】
Ｄｉｓｐｅｎｓｅ．Ｖｏｌｕｍｅ＝（Ｃｏｍｂｉｎｅ．Ｃｏｕｎｔ／Ｓａｍｐｌｅ．Ｃｏｕｎｔ）＊Ｓａｍｐｌｅ．Ｖｏｌｕｍｅ
Ｒｅａｇｅｎｔ．Ｖｏｌｕｍｅ＝（Ｃｏｍｂｉｎｅ．Ｖｏｌｕｍｅ−Ｄｉｓｐｅｎｓｅ．Ｖｏｌｕｍｅ）
（問題の定義）
グラフ中のノードとエッジにプロパティの注釈を加えられる（「ボリューム：５０ｍＬ」もしくは「カウント数：１０Ｍ」などのキー：値の組み合わせ）一般的なグラフ構造Ｇ（Ｅ，Ｎ）を考えると、プロパティ値を、スプレッドシートシステムで採用されるような数式を用いて、他のプロパティ値からコンピューター計算することが望ましいアプリケーションが多数ある。
【００２６】
図１Ｂは、一つの解決策を示しており、各ノードもしくはエッジ７０ａ、７０ｂ、がグローバル一意性識別子ｉｄ（ＧＵＩＤ）を持つことが想定されている。この想定では、他のプロパティ値は、「Ｇ１．Ｘ」などのＧＵＩＤ．ＫＥＹ式を用いて、各数式で参照が可能である。この式を用いた簡素な数式としては、Ｇ１．Ｘ＋１であり、図１Ｃに示すように、１１と評価されることが想定される。
【００２７】
この評価方法は、単に、そのＧＵＩＤが「Ｇ１」にマッチするノードを検索し、そのノードにプロパティＸの値を探すことが目的である。この方法は、階層からは完全に独立して機能するものであり、よって、階層の境界を越えるエッジに使用可能である。しかし、この方法はまた、ＧＵＩＤＥ．ＫＥＹの組み合わせとして表示するために、すべての式にすべての変数が必要になり、それは、サイズをコンパクトに抑えられないか、もしくは人間による読み取りが難しい可能性が高い。実際のＧＵＩＤＥは通常、暗号化機器で生成された少なくとも１２８ビット列で構成されており、時間が経つにつれ、増加する傾向にある。人間に読み取り可能なＧＵＩＤは、非常に長く、読み取りが不可能な参照を用いる数式が生成される。
【００２８】
（名称解決方法）
この解決策は、ノードとエッジに、短く、人間が読み取り可能で、ユーザーが選択可能であるが、必ずしも一意的ではない、ＮＡＭＥプロパティを持たせることが可能になる。この方法と上記に説明した方法との大きな違いは、ＮＡＭＥが一意的ではないと想定されることである。結果として、その動作がユーザーに予測可能であり、ほとんどの場合シンプルな名称の使用が可能な名称解決検索アルゴリズムが用いられなければならない。
【００２９】
数式でのプロパティ値の参照は、「．」などの何らかの分離子で分離される一連の識別子として表される。そのシークエンスの最後の項目は、プロパティキーであり、そのシークエンスのそれ以前の項目はすべてノードの名称である。以下に示すアルゴリズムは、前記一連のノードの名称がどのようにして階層型グラフ構造において実際のノードにマッピングされるかを定義する。アルゴリズムの検索順序を簡単に説明すると、まず「ｓｅｌｆ」が、その後に「ｃｈｉｌｄ」が、さらにその後に「ｐａｒｅｎｔ」が続く。このアルゴリズムはまず例示で説明され、その後正式な定義による説明が続く。
【実施例】
【００３０】
図１Ｄは、プロパティ値がどのようにしてノードの階層システムで参照されるかを示した、５つのノード、７１ａ〜７１ｅを用いた実施例を示す。説明上の便宜上、各ノードは必ずしも一意的ではないＮＡＭＥプロパティを持ち、この実施例のすべてのノードは、キーがＸのプロパティを持つ。また、ノード７１ａは、「ＴＯＰ」のＮＡＭＥプロパティを持ち、それ以外のすべてのノードを（階層に従って）含有する。
【００３１】
オリジナルノードを、数式を含むプロパティが添付されたノードと定義する。図表において、オリジナルノードは７１ｂであり、ＮＡＭＥはＹ、プロパティはＸである。Ｙの値に対する式のいくつかの例示と、それらの例がどのように評価されるかを以下に示す。
【００３２】
Ｙ：＝Ｘは、一つの項目のみの参照がキーと認識され、それがオリジナルノードのプロパティ（ｓｅｌｆ）とマッチするため、１と評価される。
【００３３】
Ｙ：＝Ａ．Ｘもまた、オリジナルノードの名称がＡであり、最初に検索される（ｓｅｌｆ）ため、１と評価される。
【００３４】
Ｙ：＝Ａ．Ａ．Ｘは、参照の最初の名称である「Ａ」がオリジナルノードの名称（ｓｅｌｆ）とにマッチし、第２の名称である「Ａ」がオリジナルノードのメンバーの名称にマッチするため、１００と評価される。ここでも、オリジナルノードは最初に検索され、問題なくマッチングが得られる。
【００３５】
Ｙ：＝ＴＯＰ．Ａ．Ａ．Ｘはもまた１００と評価される。「ＴＯＰ」は、オリジナルノードの名称（ｓｅｌｆ）にも、そのメンバー（ｃｈｉｌｄ）の名称にも、そのメンバーにもマッチせず、したがって、検索アルゴリズムはオリジナルノードのコンテナー（ｐａｒｅｎｔ）まで、すべての参照をパスする。ＴＯＰはこの時点でマッチするので、同じアルゴリズムに従って、参照の残りの部分、「Ａ．Ａ．Ｘ」に対して、ＴＯＰのメンバーすべてが再び検索される。この結果、上記に説明するように１００と評価される。
【００３６】
Ｙ：＝Ｂ．Ｘは、ｓｅｌｆとｃｈｉｌｄにおいてマッチしないので、１０００と評価される。
【００３７】
Ｙ：＝Ｂ．Ａ．Ｘは、同様の理由において１０と評価される。
【００３８】
Ｙ：＝ＴＯＰ．Ａ．Ｘは、不明瞭であり、１と１００００のどちらかに評価される。実際の結果は、実施によって特定されるものであり、本明細書により定義されるものではない。
【００３９】
（正式な定義）
検索アルゴリズムの正式な擬似コードの定義は、以下のように、機能的に定義される。
【００４０】
（定義）
１．一組の順序だった識別子（［Ｉ０．．．．．Ｉｎ］）として、参照Ｖを考える。
２．ｐｒｅ（Ｖ）は、ｎ＞０なら１０と評価され、そうでなければ０である。
３．ｒｅｍ（Ｖ）は、［Ｉ１．．．．Ｉｎ］と評価される。
４．ｋｅｙ（Ｖ）はＩｎと評価される。
【００４１】
（アルゴリズム）
【００４２】
【数１】
2006520502.tif 000003
以下の例にあるように、参照列を、括弧や他の語彙上の条件を設けて他の列に埋め込むことで、間接的なアドレス設定をサポートするのは有益かつ効果的である。
【００４３】
「ｎ１．ｎ２．ｎ３［ｎ１．ｋｅｙ１］ｎ４．ｋｅｙ２」という参照は、すべての評価に対して、オリジナルノードから始まる逆深さ優先順序でのネスト式を解決することで解決される。したがって、マッチ（ｎｏｄｅ，「ｎ１．ｋｅｙ１」）が「ｘ」と評価される場合、組み合わせ（）は、括弧付参照を、マッチ（ｎｏｄｅ，「ｎ１．ｎ２．ｎ３．ｘ．ｎ４．ｋｅｙ２」）にあるように「ｘ」に置き換えた後で再び呼び出される。
【００４４】
この技術を具体的に適用すると、一組の階層型ノードのメンバーを、ＩＮＤＥＸが前記一組のノードでのその位置を特定するオリジナルノードのプロパティのキーである、「ｎ１．ｎ２．［ＩＮＤＥＸ］＋ｎ１．ｎ３．［ＩＮＤＥＸ］」にあるように、別の一連の階層型ノードの類似性インデックス付番号を参照するのに用いることができる。この例の他にもいくつかの、参照列の間接性の任意レベルをサポートする本方法の一般的な利用用途９がある。
【００４５】
（エッジ）
エッジプロパティに対する検索アルゴリズムは、コンテナシップがそのエッジが接続される二つのノードの最小公倍コンテナとして定義される点を除いてノードの検索アルゴリズムと同一である。ＥをノードＮ１とＮ２に接続されるエッジとして、例えば、Ｎ１がＮ４に包含されているＮ３に包含されており、Ｎ２はＮ４に直接包含されている場合、ＥはＥのノードの最小公倍コンテナとしてＮ４に直接包含される。エッジはメンバーを持たないため、検索アルゴリズムはｓｅｌｆであり、それにｐａｒｅｎｔが続く。上記アルゴリズムは直接エッジに適用される。
【００４６】
（適用例）
図１Ｅにおいて、ワークフロー図６２のノード６３〜６７それぞれに関連するプロパティは、表７２の右側において、Ｓａｍｐｌｅ．Ｃｏｕｎｔの値の入力前に表示される。「Ｒｅａｇｅｎｔ」ノードは、その値が、「Ｃｏｍｂｉｎｅ．Ｖｏｌｕｍｅ」および「Ｄｉｓｐｅｎｓｅ．Ｖｏｌｕｍｅ」で表示された数式であるボリュームプロパティを有する。一方、「Ｄｉｓｐｅｎｓｅ．Ｖｏｌｕｍｅ」は、「Ｓａｍｐｌｅ．Ｃｏｕｎｔ」および「Ｃｏｍｂｉｎｅ．Ｃｏｕｎｔ」で表示される。このアルゴリズムにしたがうと、「Ｃｏｍｂｉｎｅ．Ｖｏｌｕｍｅ」の表示は、「Ｗｏｒｋｆｌｏｗ．Ｃｏｍｂｉｎｅ．Ｖｏｌｕｍｅ」に置き換えることも可能である。
【００４７】
図１Ｆは、更新された表７２に示すように、どのようにしてシステムが、Ｓａｍｐｌｅ．Ｃｏｕｎｔの値が入力された以降の必要ボリュームを、上記に説明したネーミングおよび検索アルゴリズムを用いてコンピューター計算できるかを示す。
【００４８】
本発明を実行する一つの態様として、コンピューター読み取り可能媒体に格納された、コンピューターシステムに上記アルゴリズムを実行させるソフトウェアの指示であり、ノードとエッジが（ｋｅｙ．ｖａｌｕｅ  ｐａｉｒｓ）というプロパティの注釈を付加された階層性グラフ構造を表す。
【００４９】
図２Ａは、適応ワークフロー手段の環境におけるオペレーションを表すアイコン１００を示す。各オペレーションはデータもしくはマテリアルに対して行われる動作を表す。入力と出力は、オペレーションにおいてそれぞれ開始するアーク（入力）と終了するアーク（出力）によって表される。特に、図２Ａに図示のアイコン１００は、「Ｃｏｍｂｉｎｅ」オペレーションを表す。
【００５０】
コンテナーは、オペレーションとその他コンテナーの集合体であり、階層の任意レベルを含む。コンテナーには２種類があり、１）バッチと、２）作業手順である。コンテナーのサブクラスのみが、図示表示（すなわち、アイコン）を有する。二つの例を以下に示す。
【００５１】
図２Ｂは、適応ワークフロー手段環境におけるバッチを現すアイコン１０２を示す。バッチとは、メンバーすべてがそのバッチに関連する座標にしたがって編成された、コンテナーのサブクラスである。アイコン１０２の上端左側のテキストは、バッチの座標の大きさと次元数を表す。特に、図２Ｂに図示のアイコン１０２は３つの個々のコンバインオペレーションの１次元バッチを表す。
【００５２】
図２Ｃは、適応ワークフロー手段環境における作業手順を表すアイコン１０２を示す。作業手順はコンテナーのサブクラスであり、例として以下のサンプルフローグラフ（ＳＦＧ）に示すように、下位の作業手順やバッチも含みうる、一部順序化された一連の作業を指定する。
【００５３】
図３はサンプルフローグラフ（ＳＦＧ）１０６である。ＳＦＧは、作業手順を表す階層型のグラフである。ＳＦＧのノードはオペレーションもしくはコンテナーを表す。オペレーションとコンテナーを接続するアークには２種類ある：  ａ）マテリアルフローアーク１０８（白）、オペレーション上で開始および終了する；  ｂ）テンプレートアーク１１０（黄）、コンテナー上で開始および終了する。細い矢印１１２は、「ｃｏｎｔａｉｎ」の関係を示す。「Ｃｏｍｂｉｎｅ」のタイトルの各緑色のバー１１４はそれぞれ、「Ｃｏｍｂｉｎｅ」１０２のタイトルの各コンバインオペレーションのバッチのメンバーである、単一のコンバインオペレーションを図で表したものである。個々のコンバインオペレーション上の番号は、バッチでのそれぞれの位置を示す（以下のインデックスを参照）。
【００５４】
図４は、少なくとも一つの実施形態にしたがった適応ワークフロー手段のユーザーインターフェース１２０の画面例であり、サンプルバッチと関連しうるプロパティを示す。ユーザーインターフェース１２０は、様々なユーザーにより選択可能なアイコン、メニュー、パレット、ボタン、および／もしくはダイアログボックスを含んでおり、ユーザーがテンプレートを作成および変更、およびワークフロー手段に別の動作をさせることができるようになっている。特に、ユーザーインターフェース１２０は、ワークスペース１２４の水平エッジに沿って延びる一つ以上のツールバー１２２を含んでおり、ＳＦＧ１０６に表すように、定義されたワークフローの各局面を操作する、ユーザーにより選択可能な様々なアイコンを含む。ユーザーインターフェース１２０はまた、ワークスペース１２４の垂直エッジに沿って延びる第２のツールバー１２６を含んでおり、オペレーション、バッチ、作業手順を作成および定義する、ユーザーにより選択可能な様々なアイコンを含む。ユーザーインターフェース１２０はまた、バッチ、作業手順、および／もしくはオペレーションの特定の特徴を指し示す多数のテキストフィールド１２８と、バッチ、作業手順、および／もしくはオペレーションの特定の属性の設定を指し示す多数のチェックボックス１３０を含む。ユーザーは、ワークスペース１２４で図示されるテンプレートにおいてＳＦＧ１０６が表すワークフローモジュールを定義するために、様々なユーザー選択のアイコンを選択してもよい。
【００５５】
図５は、図４に例示するサンプルバッチに付随したプロパティを示す。プロパティは、ＳＦＧ１０６のノードとアークに付随する一対のキー値である。プロパティは、各オペレーションもしくはコンテナーのタイプに適切なパラメテターを指定するのに用いられる。値はどのようなタイプのデータでもよい。本例では、サンプルバッチは、「Ｎｏｒｍａｌ」、「Ｃａｎｃｅｒ」、および「Ｄｉａｂｅｔｅｓ」の値をもったキーの「Ｃｏｎｄｉｔｉｏｎ」を有する第１プロパティと、「Ｌｕｎｇ」、「Ｌｉｖｅｒ」、「Ｂｌｏｏｄ」の値を持ったキーの「Ｔｉｓｓｕｅ」を有する第２プロパティを含む。当業者であればわかるように、これは単にバッチとプロパティの一例であり、これより多いもしくは少ない数のＣｏｎｄｉｔｉｏｎｓを有するバッチを定義してもよい。
【００５６】
属性は、値が常に正しいか間違っているかのどちらかである、一対のキー値である。属性はプロパティに付随するものであるが、プロパティはオペレーションとコンテナーに関連するのみである。プロパティの「Ｎａｍｅ」に対する「ｒｅｑｕｉｒｅｄ」および「ｖｉｓｉｂｌｅ」などのサンプル属性を図４に示す。
【００５７】
図６は、一例としてのバッチ１０２と、その座標を示す。バッチは軸記述子のプロパティで定義される「ｃｏｏｒｄｉｎａｔｅ  ｓｙｓｔｅｍ  （座標）」を有する。軸記述子のプロパティは有限の個別ドメイン（一連の整数、列、もしくはそれ以外のデータタイプ）を指定する。バッチの座標は、確定されたデフォールト順序（例えば、Ａｘｉｓ１，  Ａｘｉｓ２，  Ａｘｉｓ３；  コラム、ロー、プレート；  Ｘ，  Ｙ，  Ｚ  など）を必ず有する限り、軸をいくつ有してもよい。図６に図示の例では、バッチ１０２は、コラムとロー上で３×３  ２−Ｄバッチを指定する。このように、図５に図示するバッチ１０２は、ＣｏｌｕｍｎとＲｏｗの二つの軸記述子のプロパティを有する。同時に、それらの記述子は３×３  ２−Ｄ座標を指定する。特に、図６の図示例であるバッチ１０２の「Ｓａｍｐｌｅｓ」に関しては、座標は、動物タイプと組織タイプの２次元である。バッチ１０２の各メンバーは、バッチの座標での位置を特定するインデックスプロパティを有する。
【００５８】
バッチのメンバーは、バッチ内のオペレーションもしくはコンテナーである。すべてのメンバーが、バッチの座標内でのメンバーの位置を特定する「Ｉｎｄｅｘ」プロパティを有する必要がある。
【００５９】
インデックスは、バッチ内のメンバーの位置を特定するバッチメンバーのプロパティである。インデックスプロパティは、バッチの座標のベクトルであるため、軸ごとに一つの数字エントリを有する。本明細書に記載するオートフィルアルゴリズムは、すべてのバッチが同じ次元数を有することを求めるものではないが、それぞれの座標におけるインデックスが比較できるように、すべてのバッチが軸のディフォールト順序において同等であることが求められる。結果として、インデックスのプロパティは、それらのバッチの座標に含まれない軸に対するベクトル表示において、「ｅｍｐｔｙ」のエントリーを有することが可能である。以下に例を示す。
【００６０】
Ｘ，Ｙ，Ｚをすべてのバッチの軸順序にする。
【００６１】
ＡをＸ軸のみで定義される１−Ｄバッチにする。
【００６２】
ＢをＹ軸のみで定義される１−Ｄバッチにする。
【００６３】
オペレーションＬをＡのメンバーにする。したがって、Ｌは、Ｘで定義されるが、ＹとＺでは定義されないインデックスプロパティ（ベクトル）を有する必要がある。これは「１，，」と表す。
【００６４】
作業ＭをＢのメンバーにする。したがって、Ｍ  は、Ｙで定義されるが、ＸとＺでは定義されないインデックスプロパティ（ベクトル）を有する必要がある。これは「，１，」と表す。
【００６５】
慣例により、上記のコンマは削除することで、かなり長いベクトルなしに、各座標が不特定数の軸（Ａｘｉｓ１，  Ａｘｉｓ２，  Ａｘｉｓ３，  …，  ＡｘｉｓＮにあるように）を有することができる。したがって、Ｌのインデックスは「１」であり、Ｍのインデックスは「，１」となり、つまり、バッチに対して軸が特定されていない場合、インデックスは対応する位置で空白である。この定義づけは、以下に定める、オートフィルアルゴリズムの定義において重要である。
【００６６】
（問題例）
図７は、アイコン１３２で表される、一組のサンプルに対して行われる簡単な実験手順１３０の図示である。各サンプルは、アイコン１３４で表すように、アイコン１３６で示す単一のリージェントとコンバインされて、アイコン１３８に示すように培養され、アイコン１４０に示すように選別され、アイコン１４２に示すように計測される。サンプルごとに行われる一連のオペレーションは原則的に同一であり、サンプルごとのパラメターのいくつかに小さな変動があるのみである。このように、ユーザーが、オペレーションの「バッチ」を一度用いるだけでシークエンスを取り出し、その後、個々に変化するパラメータのみを、バッチを開くか表の形態で入力できるようにすると有利である。
【００６７】
大きなアイコン１３２、１３４、１３６、１３８、１４０、１４２、および、矢印１４４ａ−、１４４ｅ  （黄）は、ユーザーが作成したバッチ構造を示す。各バッチのサイズを３と指定した後、システムは自動的に、小さなバー１４６ａ，ａ  〜  １４６ｅ，ｃ  （緑）および矢印  １４８ａ，ａ  〜  １４８ｅ，ｃ  （白）で表す精細な構造を作成することになる。リージェントアイコン１３６はバッチではない。結果として、リージェントアイコン１３６は、オペレーションの「Ｃｏｍｂｉｎｅ」バッチに含まれる３つの「Ｃｏｍｂｉｎｅ」オペレーションのそれぞれに接続される。
【００６８】
図８Ａおよび８Ｂは、オートフィルアルゴリズムをかける前にユーザーによって作成されるテンプレートを示す。特に、図８Ａは、各サンプルが一つのロー全体に分配されるように、サンプルの１次元バッチの２次元アレー（もしくはプレート）への配分に対してどのような指定を希望するかを示す。図８Ｂは、ある条件式をどのように用いてプレートのロー軸の定義をリージェントのロー軸の定義から導くかを示す。コラム軸がリージェントバッチに対して限定されていないため、ローａ、ｂおよびｃはコラム１および２の両方に対して、プレートのローａ、ｂおよびｃに接続されるべきである。目的は、ユーザーが、バッチレベルでのみ接続と座標をセットアップできるようにすることであり、ある意味では、システムが適正かつ精細なグラフ構造を生成することを可能にする。こうするにあたって、本明細書で「オートフィルアルゴリズム」と呼ばれる、精細な構造を完成、もしくは「補完」するアルゴリズムを採用してもよい。
【００６９】
図８Ａおよび９は、オートフィルアルゴリズムの実行の前後それぞれの、モデルの表示を示す。次のセクションでは、ユーザーが、多岐にわたる有用なトポロジーを簡単に指定できるオートフィルアルゴリズムの詳細を提示する。
【００７０】
特に、図９は、オートフィルアルゴリズムの使用の結果得られた、ＳＦＧ１０６としてのワークフローモジュールを示す。リージェントバッチはアイコン１６０で表され、ディスペンス作業はアイコン１６２で表される。縦のバー  １６４ａ〜１６４ｂ、および  １６６１，ａ〜１６６２，ｃはバッチメンバーであり、矢印１６８（白）はオートフィルアルゴリズムにより生成されたマテリアルフローアークである。このＳＦＧ１０６は、リージェント，ａが、プレートの１，ａおよび２，ａの両方に調合されることを示す。矢印１７０（細い）はコンテナーシップを示す。
【００７１】
（オートフィルアルゴリズム）
以下のアルゴリズムは、図８に示すテンプレートを設けたユーザーからの図９に示すグラフ構造を生成する。
【００７２】
【数２】
2006520502.tif 000004
言い換えれば、このアルゴリズムは、各インデックス位置でマッチする接続バッチのメンバーを接続し、空白の位置はすべてのエントリーもしくは他の空白のエントリーにマッチする。このアルゴリズムはまた、バッチに含まれないが、エッジによってバッチに接続されるオペレーションにも有効である。このようなオペレーションはインデックスプロパティを持たないため、接続されたバッチメンバーのインデックスプロパティのすべてにマッチする。これは、単一のオペレーションをバッチのすべてのメンバーに接続するのに有効である。
【００７３】
このシンプルで一般的なアルゴリズムを用いれば、ロー、コラム、もしくはプレートのすべてのウェルへのリージェントの配分、二つの１次元バッチの「クロスプロダクト」（図１０および１１）の生成、ローおよびコラムにわたるサンプルのプーリング（図１２および１３）、オペレーションのバッチからの選択、およびトランスポジションなどの有益なグラフ構造を、自動的にかつ多数生成できる。
【００７４】
（オートフィル例）
図１０〜１５および以下の説明には、正確かつ精細な構造がオートフィルアルゴリズムによって生成できるように、バッチレベルで様々な有益なトポロジーをどのように記述するかを説明する。各例を以下に示す。
・Ｃｒｏｓｓ：二つの１次元バッチのメンバーの間でのペア間の関係をすべて一組にして作成する。
・Ｐｏｏｌ：プールされた次元にわたってマッチするサンプルすべてをコンバインすることでバッチの次元を削減する。例としては、図６に示す、２Ｄバッチにおける各動物タイプに対する組織タイプのすべてをコンバインする。こうすることで、組織タイプの次元を削除した１Ｄバッチが生成される。
・Ｓｅｌｅｃｔ：オリジナルバッチの座標のサブセットにマッチさせることで、バッチの一部のみを手順の後続ステップで用いることが可能になる。
・Ｔｒａｎｓｐｏｓｅ：オートフィルアルゴリズムがかけられる時はバッチの座標の順序を変更することで、ローがコラムに組み込まれ、その結果、様々な有益かつ実験的な構造を作成できる。例の一つとしては、一組のサンプル内で可能なすべての組み合わせを作り出すために、単一のバッチがそれ自身とクロスされる。
【００７５】
（Ｃｒｏｓｓ）
図１０および１１は、プレート内で各サンプルを各ドラッグと組み合わせる「Ｃｒｏｓｓ」実験のセットアップとその結果を示す。特に、図１０はクロス実験のセットアップを示す。図１０に示すように、アイコン２００で示すサンプルは、コラム軸に沿って単一の次元で配置される。アイコン２０２で示すドラッグは、ロー軸に沿って単一の次元で配置される。プレートは２Ｄ次元として定義され、そのローはドラッグバッチによって決まり、そのコラムはサンプルバッチによって決まる。オートフィルアルゴリズムは、プレートのｘ、ｙをサンプルのｘとドラッグのｙとマッチさせ、その結果、アイコン２０４が示すクロスプロダクトにおいて、ドラッグｙとサンプルｘが合成される。この結果が図１１に示す精細なトポロジーである。コンバインオペレーションのバッチは、ユーザーによるこの情報の確認は一箇所でできるように、そのコラム軸の定義がサンプルから導かれ、ロー軸の定義はドラッグから導かれる。
【００７６】
図１１は、その結果生成される、Ｓａｍｐｌｅｓ．Ｃｏｌｕｍｎｓ  およびＤｒｕｇｓ．Ｒｏｗｓの軸定義を入力した後の、図１０のクロス例に対して、オートフィルアルゴリズムによって生成された精細なトポロジーを示す。
【００７７】
（Ｐｏｏｌｉｎｇ）
図１２および１３は、「Ｐｏｏｌｉｎｇ」実験のセットアップとその結果を示す。プーリングの目的の一つとしては、例えば、ローもしくはコラムのすべてのメンバーを単一のコンバインオペレーションに接続することである。もし、複数のコラムにわたってプールするなら、その結果のバッチはコラム軸を持たず、ローのみのはずである。特に、図１２はプーリング例のセットアップを示す。「Ｄｒｕｇ」アイコン２１０は薬剤をしめし、「Ｓａｍｐｌｅ」アイコン２１２はサンプルを示し、「Ｃｒｏｓｓ」アイコン２１４はクロスオペレーションを示し、「Ｐｏｏｌ」アイコン２１６はプーリングオペレーションを示す。図１２に示すテンプレートは、図１３に示すように、希望するプーリングをオートフィルアルゴリズム行わせる。これは、インデックス，ｘのプールバッチのメンバーがローｘの２ｄバッチの全メンバーにマッチするので有効である。図１２の２Ｄクロスプロダクトの各ローは単一のコンバインオペレーションにプールされる。結果得られるバッチは１次元であり、クロス＿プロダクトのローと同じ数のローを有する。
【００７８】
図１３は、図１２図示のプーリング例を完遂させるためにオートフィルアルゴリズムをかけることで得られる接続性を示す。マテリアルフローは、コラムを削除するための、複数のローにわたるプーリングが後続するクロス構造を示す。
【００７９】
（Ｓｅｌｅｃｔｉｏｎ）
図１４はセレクト作業手順を示す。共通して必要なことは、与えられた一組のサンプルのサブセットに作業手順を行うことである。これは、オートフィルアルゴリズムを用いて、重要な軸のサブセットを特定することで完遂できる。次元数を同じに維持すれば、プーリングは起きない。図１４の例では、ディスペンスバッチのプレート次元がサンプルのオリジナルバッチに対するプレート次元のサブレンジとして特定される。結果として、オートフィルアルゴリズムはディスペンスバッチのメンバーを、インデックスが正確にマッチするオリジナルバッチのメンバーに接続させるのみである。
【００８０】
図１４、Ｓｅｌｅｃｔ。この構成は、５ｘ４ｘ３のバッチにおいて、３つのプレートから第一のプレートを選択する。インセット２２０は、オートフィルアルゴリズムを用いる前に、ユーザーによって要求される入力を示す。サンプルアイコン２２２はサンプルを表し、ディスペンスアイコン２２４はディスペンスオペレーションを表す。「５ｘ４ｘ１」の次元は、次元のサイズを示すのみである。実際のプレートもしくは選択されたプレートは、ユーザーによって指定されたディスペンスバッチ用の座標を介して決定する。例えば、プレートが「１」ではなく、「２、３」として特定される場合、次元サイズは５ｘ４ｘ２であり、オートフィルアルゴリズムは、第１ではなく、第２および第３のプレートにマッチする。
【００８１】
（Ｔｒａｎｓｐｏｓｅ）
図１５はトランスポーズ作業手順を図示する。バッチの配置方法を変更するのは有益な場合もある。例としては、単一のバッチから、可能なすべての組み合わせを作成する必要がある場合である。これは、オリジナルサンプルが二つのバッチに分けられ（ディスペンスオペレーション）、一つのバッチがロー軸に沿って配置され、他方がコラム軸に沿って配置される場合にのみ、上記のクロスパターンによって完遂される。このタスクは、バッチの一つに対して軸の順序が変更されるべきであるとの命令を出すことができれば、オートフィルアルゴリズムを用いて完遂できる。ランクプロパティを用いれば、違う順序にしたがって、関連するバッチに対してのみ、オートフィルアルゴリズムをマッチさせることができる。結果として、オリジナルサンプルバッチのメンバーｘはトランスポーズされたディスペンスバッチ（Ｄｏｗｎ）のメンバー，ｘにマッチする。図１５は、サンプルのバッチをそれ自身とクロスするのに、このパターンがどのように用いられるかを示す。
【００８２】
インセット２３０は、図１０および１１に示すように、単一の１次元バッチをどのように分けてトランスポーズすれば、クロス作業手順のそれ自身とコンバインできるのかを示す。サンプルアイコン２３２はサンプルを示し、「Ａｃｒｏｓｓ」アイコン２３４はアクロスオペレーションを示し、「Ｄｏｗｎ」アイコン２３６はダウンオペレーションを示し、「Ｃｒｏｓｓ」アイコン２３８はクロスオペレーションを示す。マッチングアルゴリズムによって使用される座標のディフォールト順序は、｛Ｃｏｌｕｍｎ，  Ｒｏｗ，  Ｐｌａｔｅ｝  の代わりに、｛Ｒｏｗ，  Ｃｏｌｕｍｎ  Ｐｌａｔｅ｝  の新しい順序を特定する「Ｒａｎｋ」プロパティによってオーバーライドされる。結果として、オートフィルアルゴリズムは「Ｄｏｗｎ」バッチのローを「Ｓａｍｐｌｅ」バッチのコラムにマッチさせることで、「Ｄｏｗｎ」が「Ａｃｒｏｓｓ」とクロスして、可能なすべての組み合わせの２−Ｄバッチを形成する。
【００８３】
その他の様々な有用なパターンは特に、マッチアルゴリズムを様々な次元に沿ってシフトもしくはストレッチできるようにオフセットやストライドなどの他の指令が加えられた場合に、オートフィルアルゴリズムで解析される。
【００８４】
（オートフィルアルゴリズムエクステンション）
オートフィルアルゴリズムに対するこのエクステンションは、数学的に表示されうるパターンなら実際にどれでも含むように、自動的に生成可能な構造のクラスを一般化する。簡潔かつハイレベルな仕様から、オートフィルアルゴリズムは、このエクステンションを用いて、多次元スペースにおける組み合わされた複雑な作業手順やコンピュータ計算に対するモデルを生成できる。
【００８５】
上記に論考した一般的なオートフィルアルゴリズムは、各インデックス位置でマッチした接続バッチのメンバーを接続し、空白位置はすべてのエントリーもしくは他の空白エントリにマッチする。このアルゴリズムはまた、バッチに含まれないが、バッチにエッジを介して接続されるオペレーションにも有効である。それらのオペレーションはインデックスプロパティを有しないため、接続されたバッチメンバーのインデックスプロパティすべてにマッチする。これは単一のオペレー損をバッチの全メンバーに接続するのに有効である。
【００８６】
このアルゴリズムに対するエクステンションは、各マッチを査定する前に、ユーザ定義のＧ．Ｉｎｄｅｘ．ｅへの変換を適用するため、新しいアルゴリズムは以下のように生成される。一般化されたアルゴリズムからの変更部分は太字で強調して示す。
【００８７】
【数３】
2006520502.tif 000005
この変換は、インデックスを生成する数学関数であれば、いずれともすることができる。この変換は、２００３年３月１４日に出願された、米国仮出願番号６０／４５４，７５６に記載される、モデルネームスペースにおけるすべての他の変数と同様、インデックスの関数とすることができる。変換関数は、一組の条件式としてユーザーによって表され、それぞれの条件式が座標における各次元に対応する。これらの条件式は、マッチルールと呼ばれ、我々は、このオートフィルエクステンションをマッチルールエクステンションと呼ぶ。
【００８８】
図１６は、オートフィルアルゴリズムにＳａｍｐｌｅ  ３０２とＤｉｓｐｅｎｓｅ  １  ３０４の間で接続をシフトさせるマッチルールから発生したＳＦＧ２００の簡略な一例である。図１６に図示されたコラムマッチルールは、オートフィルアルゴリズム適用前に、Ｄｉｓｐｅｎｓｅ  １  ３０４の各メンバー３０４ａ〜３０４ｄごとに、個別に査定される。１を各メンバー３０４ａ〜３０４ｄのコラム位置に加算すると、接続が左へシフトする。例えば、Ｄｉｓｐｅｎｓｅ  １  ３０４の第４メンバー３０４ｄは、Ｓａｍｐｌｅ３０２の第５メンバーの３０２ｅに接続される。また、Ｄｉｓｐｅｎｓｅ  １  ３０４は４つのメンバーを含むのみである。オートフィルアルゴリズムは、マッチのないメンバーを自動的に削除する。
【００８９】
マッチルールに若干の変更を加えたものを、図１７のＳＦＧ３２０で図示するが、ここでは、同様の４つのメンバーという結果がでているが、シフトはない。図１７では、コラムマッチルールの条件式が、Ｃｏｌｕｍｎ０に対してマッチするものがないことを確認するために使用されて、他の位置は影響を受けない。この場合、シフトはない。
【００９０】
図１８は、ＳＦＧ３５０で表されるような、有益な構造を生成するための、オートフィルアルゴリズムのパワーとマッチルールエクステンションの説明に対する、より高度な例を示している。統計的な観点から、一組のｒｅａｇｅｎｔ３５４に対するすべての可能な組み合わせを用いて、一組のＳａｍｐｌｅ３５２に実験を試みることが必要な場合がある。オートフィルアルゴリズムとマッチルールエクステンションを用いれば、そうした実験の正確なグラフ表示３５０を簡単に生成できる。
【００９１】
図１８の例では、マッチルールがどのようにオリジナルサンプルセットもしくはｂａｔｃｈ３５２を同時にトランスポーズしてペアリングの重複を避け、望ましい上位もしくは下位のトライアングルマトリックスが得られるかが示されている。この例は図１５の図示と同様であり、ｏｒｉｇｉｎａｌ  ｓａｍｐｌｅ３５２が二つのバッチ（Ｄｉｓｐｅｎｓｅ  Ｏｐｅｒａｔｉｏｎｓ  Ａｃｒｏｓｓ  ３５４およびＤｏｗｎ３５６）に分けられており、バッチの一つがロー軸に沿って配置されており、他方がコラム軸に沿って配置されている。Ａｃｒｏｓｓ  ｂａｔｃｈ３５４に対するペアの重複は、コラムがロー同等か大きい場合にはすべてのマッチングを避け、マッチングをチェックする前にローとコラムのインデックス位置をトランスポーズすることで、防ぐことができる。選択されたアイコンの間のｄａｒｋ  ｌｉｎｅ３５８は、オートフィルによって生成された接続のいくつかを強調する。Ｃｒｏｓｓ  ｂａｔｃｈ３６０の項目に対するインデックスは、それらのｏｒｉｇｉｎａｌ  Ｓａｍｐｌｅ  ｂａｔｃｈ３５２との関係を、適正に指し示す。これは、ユーザーがバッチレベルで定義する接続に沿って、バッチからバッチへ、オートフィルアルゴリズムと自動座標が伝播していることの自然な結果である。
【００９２】
（マニュアルオーバーライドに対するオートフィルアルゴリズムのエクステンション）
上記で論考されたオートフィルアルゴリズムでは、フローグラフのバッチメンバー間の接続はすべて、アルゴリズムによって決定される。これらの結果は、アルゴリズムを用いた後で、自動とマニュアルの接続を組み合わせるために、ユーザーによって変更が可能である。しかし、この方法は、バッチサイズとマッチルールが変更されるために、アルゴリズムが繰り返し再実行されるダイナミックな実行には好適とはいえない。ダイナミックなアルゴリズムの実行においては、オートフィルの結果に対してマニュアルで加えた変更は、次の実行で消去される。この問題点を解決するために、その後のオートフィルアルゴリズムの実行結果に影響を与える方法での、モデルのマニュアル編集を保存する新規な方法を以下に提起する。モデリングのエクステンションとオートフィルアルゴリズムへの変更を以下に説明する。
【００９３】
図１９においては、バッチＸはバッチＹに接続されている。結果として、バッチＸの各メンバーは、オートフィルアルゴリズムによる「ａｕｔｏｍａｔｉｃ」接続によって、バッチＹのメンバーそれぞれに自動的に接続される。
【００９４】
オリジナルなシステムでは、ユーザーが接続を削除したい場合には、例えば、バッチＸの１，ＡとバッチＹの１，Ａ間において、ユーザーは、それらの間で「ａｕｔｏｍａｔｉｃ」接続を削除できた。しかしながら、オートフィルアルゴリズムが再実行されると、ユーザーの意思に反して、この削除された接続が復元する。
【００９５】
バッチサイズやマッチルールなどのパラメータが変更されると自動接続が再計算されるダイナミックユーザーインターフェースをサポートするには、マニュアルによる変更を保存する方法が求められる。二通りのマニュアル変更が可能である。「ａｕｔｏｍａｔｉｃ」エッジの削除（すなわち、削除）、および、オートフィルアルゴリズムであれば作成されなかったエッジの追加（すなわち、追加）である。
【００９６】
新規の実行の際には、その場所の間に「ＮｏＣｏｎｎｅｃｔ」エッジを追加することでａｕｔｏｍａｔｉｃ」エッジが永久的に削除される。この「ＮｏＣｏｎｎｅｃｔ」エッジは、新規のオートフィルアルゴリズムによって遵守されるので、自動エッジは作成されない。「ＮｏＣｏｎｎｅｃｔ」エッジは図２０に白で表示している。
【００９７】
この「ＮｏＣｏｎｎｅｃｔ」エッジはユーザーから見えないようにすることも可能であるが、「ＮｏＣｏｎｎｅｃｔ」エッジは可視にすることで、ユーザーが、自動接続を復元させたい場合に、「ＮｏＣｏｎｎｅｃｔ」エッジを削除することを認識できるようにすることが好ましいと考えられる。
【００９８】
マニュアル接続を保存するには、オートフィルアルゴリズムの再実行前に、自動接続のみが削除される。図２１は、Ｘにおける２，ＡとＹにおける１，Ａ間にマニュアル接続を追加した結果を示す。
【００９９】
オートフィルのダイナミックな実行は、以下の擬似コード仕様で要約できる。
【０１００】
【数４】
2006520502.tif 000006
オートフィルアルゴリズムをこうして充実させることによる利点の一つとして、ダイナミックかつ連続した最新の詳細モデルを、マッチルールとバッチ接続構造に基づいて、ユーザーに提示できると同時に、ユーザーが選択的にオートフィル結果をオーバーライドすることができることである。オートフィルアルゴリズムの利点の一つとしては、数学的に記述可能な接続パターンを、バッチのメンバー間（ｎ−次元のアレー）に実質的に生成できることである。変則的な構造をマッチルールと非連続関数（ｉｆ−ｔｈｅｎ−ｅｌｓｅ条件式）を用いて解析することも可能だが、ユーザーが単に、オートフィルアルゴリズムと連携してパターンの変則的部位を誘引できるようにする方がはるかに効率的で直接的である。これは、オートフィルアルゴリズムの再実行中に保存される接続の追加および削除をサポートすることで完遂できる。これらの追加および削除は、システム中のほかのすべての接続に用いられる、同様の接続および切断ユーザーインターフェースを用いて追加および削除が可能である。
【０１０１】
（その他の適用）
上記の各例は、実験手順の観点から説明されるが、純粋に数学的なモデリングやコンピュータ計算にも同様に適用可能である。例として、バッチや自動的に生成された接続は生物学的システムの空間的および時間的なモデルを生成するのに使用可能である。バッチの各エレメントは、化学種の反応や凝縮に対応し、エッジは化学種の凝縮の変化を引き起こす反応内外の科学的移動に対応する。オートフィルアルゴリズムおよびマッチルールエクステンションによって、ユーザーにとって、それらのシステムや他のコンピューターシステムの複雑な有限エレメントモデルを、シンプルなアイコン表示を用いて迅速に生成することが可能になる。
【０１０２】
関連分野の当業者であれば、図２〜１８と本明細書の詳細な説明に基づいて、速やかにソースを作成することが可能であろう。
【０１０３】
ワークフローモデリングにおけるオートフィリングの機器や方法に対する各実施形態や実施例が、本明細書において、実例紹介として説明されているが、関連分野の当業者であれば気づくように、種々の均等な変更が、本発明の精神と範囲を逸脱することなく可能である。本発明の記載内容は、上記にその全体を説明した例示のコンピューターシステムに限らず、他のプロセッサー制御システムに適用可能である。同様に、本発明の記載内容は、上記にその全体を説明した例示のワークフローモデリング手段に限らず、他のワークフローモデリング手段に適用可能である。
【０１０４】
上記に説明した各実施形態を組み合わせることで、さらなる実施形態を提供可能である。本明細書に記載、および／もしくはアプリケーションデータシートに挙げられたすべての、米国特許、米国特許出願広報、米国特許出願、外国特許、外国特許出願、非特許出版物、かつ以下に挙げる同一出願人による仮特許出願−含むが限定は受けない−は、その記載全容において、参照され本書に組み込まれる。
Ｓｅｒｉａｌ  Ｎｏ．  ６０／４５４，７５６，  ｆｉｌｅｄ  Ｍａｒｃｈ  １４，  ２００３，  「ＭＥＴＨＯＤ，  ＡＰＰＡＲＡＴＵＳ  ＡＮＤ  ＡＲＴＩＣＬＥ  ＦＯＲ  ＧＲＡＰＨＩＣＡＬ  ＭＡＮＩＰＵＬＡＴＩＯＮ  ＯＦ  ＷＯＲＫＦＬＯＷ  ＵＳＩＮＧ  ＥＱＵＡＴＩＯＮＳ；Ｓｅｒｉａｌ  Ｎｏ．  ６０／４９３，７４９，  ｆｉｌｅｄ  Ａｕｇｕｓｔ  ８，  ２００３，  「ＢＡＴＣＨ−ＢＡＳＥＤ  ＭＥＴＨＯＤ  ＡＮＤ  ＴＯＯＬ  ＦＯＲ  ＧＲＡＰＨＩＣＡＬ  ＭＡＮＩＰＵＬＡＴＩＯＮ  ＯＦ  ＷＯＲＫＦＬＯＷＳ」；Ｓｅｒｉａｌ  Ｎｏ．  ６０／５０５，０９６，  ｆｉｌｅｄ  Ｓｅｐｔｅｍｂｅｒ  ２２，  ２００３，  「ＢＡＴＣＨ−ＢＡＳＥＤ  ＭＥＴＨＯＤ  ＡＮＤ  ＴＯＯＬ  ＦＯＲ  ＧＲＡＰＨＩＣＡＬ  ＭＡＮＩＰＵＬＡＴＩＯＮ  ＯＦ  ＷＯＲＫＦＬＯＷＳ」；Ｓｅｒｉａｌ  Ｎｏ．  ６０／５４３，８５９，  ｆｉｌｅｄ  Ｆｅｂｒｕａｒｙ  １１，  ２００４，  「ＢＡＴＣＨ−ＢＡＳＥＤ  ＭＥＴＨＯＤ  ＡＮＤ  ＴＯＯＬ  ＦＯＲ  ＧＲＡＰＨＩＣＡＬ  ＭＡＮＩＰＵＬＡＴＩＯＮ  ＯＦ  ＷＯＲＫ  ＦＬＯＷＳ」；Ｓｅｒｉａｌ  Ｎｏ．  ６０／４９３，  ７４８，  ｆｉｌｅｄ  Ａｕｇｕｓｔ  ８，  ２００３，  「ＣＬＯＳＥＤ  ＬＯＯＰ  ＩＮＴＥＧＲＡＴＩＯＮ  ＯＦ  ＩＮ  ＳＩＬＩＣＯ  ＡＮＤ  ＰＨＹＳＣＩＡＬ  ＭＯＤＥＬＩＮＧ」；Ｓｅｒｉａｌ  Ｎｏ．  ６０／５０８，１０９，  ｆｉｌｅｄ  Ｏｃｔｏｂｅｒ  ２，  ２００３，  「ＣＬＯＳＥＤ  ＬＯＯＰ  ＩＮＴＥＧＲＡＴＩＯＮ  ＯＦ  ＩＮ  ＳＩＬＩＣＯ  ＡＮＤ  ＰＨＹＳＣＩＡＬ  ＭＯＤＥＬＩＮＧ」。本発明の態様は、必要であれば、変更を加えることで、様々な特許、出願、印刷物のシステム、回路、概念を採用し、本発明にさらなる実施手形態を提供することが可能である。
【０１０５】
上記詳細説明を鑑みて、上記およびそれ以外の変更を加えることが可能である。一般的には、添付された請求項において、そこに記載された用語は、本明細書および開示された実施形態と請求項において、本発明に何ら限定を加えるものではないが、請求項により実施されるすべてのバッチベースの作業手順設計を含むものである。したがって、本発明はその開示による限定は受けないが、その範囲はもっぱら添付の請求項によって決定される。
【図面の簡単な説明】
【０１０６】
【図１Ａ】図１Ａは、少なくとも一つの実施形態による、適応階層型ワークフローの動作に適したコンピューターシステムの機能ブロック図である。
【図１Ｂ】図１Ｂは、少なくとも一つの実施形態による、適応ワークフローモデルを用いて表す作業手順の一例を示すサンプルフローグラフの説明図である。
【図１Ｃ】図１Ｃは、一実施形態による、各グローバル一意性識別子が個々のエレメントに関連付けられている、多数の個別ノード、エッジエレメント、および関連するプロパティを示す概略図である。
【図１Ｄ】図１Ｄは、一実施形態による、名称解決技術がエレメントに関連するグローバル非一意性名称を一意的に解決する、多数の個別ノードおよびエッジエレメント、およびそれに関連するプロパティを示す概略図である。
【図１Ｅ】図１Ｅは、少なくとも一つの実施形態による、適応ワークフロー手段のユーザーインターフェースの画面例であり、プロパティや値がどのようにサンプルワークフロー作業手順に関連付けられるのかを示す。
【図１Ｆ】図１Ｆは、図１Ｅに示すユーザーインターフェースの画面例であり、必要値が、本発明で開示されるネーミングおよび検索アルゴリズムを用いて算出可能であることをさらに示す。
【図２Ａ】図２Ａは、少なくとも一つの実施形態による、適応ワークフローモデルにおける作用を表すアイコンの説明図である。
【図２Ｂ】図２Ｂは、少なくとも一つの実施形態による、適応ワークフローモデルにおけるバッチを表すアイコンの説明図である。
【図２Ｃ】図２Ｃは、ワークフローモデルもしくは作業手順を表すアイコンの説明図である。
【図３】図３は、少なくとも一つの実施形態による、適応階層型ワークフローを用いて表す作業手順の一例を示すサンプルフローグラフの説明図である。
【図４】図４は、少なくとも一つの実施形態による、適応ワークフロー手段のユーザーインターフェースの画面例であり、サンプルバッチに関連づけられるプロパティを示す。
【図５】図５は、少なくとも一つの実施形態による、適応ワークフロー手段のユーザーインターフェースの画面例であり、バッチの一例とそのバッチの座標を示す。
【図６】図６は、少なくとも一つの実施形態による、適応ワークフロー手段のユーザーインターフェースの画面例であり、バッチの一例とそのバッチの関連メンバーを示す。
【図７】図７は、少なくとも一つの実施形態による、適応ワークフロー手段のユーザーインターフェースの画面例であり、実験手順の一例を示す。
【図８Ａ】図８Ａは、少なくとも一つの実施形態による、適応ワークフロー手段のユーザーインターフェースの画面例であり、オートフィルアルゴリズム作動前のテンプレートの一例を示す。
【図８Ｂ】図８Ｂは、少なくとも一つの実施形態による、適応ワークフロー手段のユーザーインターフェースの画面例であり、ある条件式をどのように用いて、プレートの行軸の定義をリージェントの行軸定義から導くのかを示す。
【図９】図９は、少なくとも一つの実施形態による、適応ワークフロー手段のユーザーインターフェースの画面例であり、オートフィルアルゴリズム作動前のテンプレートの一例を示す。
【図１０】図１０は、少なくとも一つの実施形態による、適応ワークフロー手段のユーザーインターフェースの画面例であり、クロス機能をセットアップするテンプレートの一例を示す。
【図１１】図１１は、少なくとも一つの実施形態による、適応ワークフロー手段のユーザーインターフェースの画面例であり、クロス機能の実行後のテンプレートの一例を示す。
【図１２】図１２は、少なくとも一つの実施形態による、適応ワークフロー手段のユーザーインターフェースの画面例であり、プーリング機能をセットアップするテンプレートの一例を示す。
【図１３】図１３は、少なくとも一つの実施形態による、適応ワークフロー手段のユーザーインターフェースの画面例であり、プーリング機能の実行後のテンプレートの一例を示す。
【図１４】図１４は、少なくとも一つの実施形態による、適応ワークフロー手段のユーザーインターフェースの画面例であり、セレクト機能を表示するテンプレートを示す。
【図１５】図１５は、少なくとも一つの実施形態による、適応ワークフロー手段のユーザーインターフェースの画面例であり、トランスポーズ機能をセットアップするテンプレートの一例を示す。
【図１６】図１６は、少なくとも一つの実施形態による、サンプルとディスペンスオペレーションとの接続をシフトする適応ワークフローモデルを用いた、多次元スペースにおける複合組み合わせ手順およびコンピューター計算用のモデル生成手順の一例を示すサンプルフローグラフの説明図である。
【図１７】図１７は、少なくとも一つの実施形態による、図１６の図示と同様であるが、接続のシフトは行わない、適応ワークフローモデルで表される作業手順の一例を示すサンプルフローグラフの説明図である。
【図１８】図１８は、少なくとも一つの実施形態による、オリジナルサンプルセットを同時にトランスポーズしてペアリングの重複を防ぐマッチルールを採用することで、望ましい上位もしくは下位のトライアンギュラーマトリックスが得られる適応ワークフローモデルで表される作業手順の一例を示すサンプルフローグラフの説明図である。
【図１９】図１９は、少なくとも一つの実施形態による、バッチＸをバッチＹに接続する作業手順の一例を示すサンプルフローグラフの説明図である。
【図２０】図２０は、少なくとも一つの実施形態による、図１９に図示のバッチＸおよびバッチＹのオペレーションに対する変更を行うＮｏＣｏｎｎｅｃｔエッジを付加した削除オペレーションを示す作業手順の一例を示すサンプルフローグラフの説明図である。
【図２１】図２１は、少なくとも一つの実施形態による、図１９に図示のバッチＸおよびバッチＹのオペレーションにおける、アイコンで表される一組のエレメント間のマニュアル接続の付加を示す作業手順の一例を示すサンプルフローグラフの説明図である。
【図１Ａ】
2006520502.tif 000007
2006520502.tif 000008
2006520502.tif 000009
【図１Ｄ】
2006520502.tif 000010
2006520502.tif 000011
2006520502.tif 000012
2006520502.tif 000013
【図３】
2006520502.tif 000014
【図４】
2006520502.tif 000015
【図５】
2006520502.tif 000016
【図６】
2006520502.tif 000017
【図７】
2006520502.tif 000018
2006520502.tif 000019
【図９】
2006520502.tif 000020
【図１０】
2006520502.tif 000021
【図１１】
2006520502.tif 000022
【図１２】
2006520502.tif 000023
【図１３】
2006520502.tif 000024
【図１４】
2006520502.tif 000025
【図１５】
2006520502.tif 000026
【図１６】
2006520502.tif 000027
【図１７】
2006520502.tif 000028
【図１８】
2006520502.tif 000029
【図１９】
2006520502.tif 000030
【図２０】
2006520502.tif 000031
【図２１】
2006520502.tif 000032
【国際調査報告】
2006520502.tif 000033
2006520502.tif 000034