リアルタイム制御システム(RCS)は、多くのソフトウェア集約型リアルタイムコンピューティング制御問題領域に適した参照モデルアーキテクチャです。リアルタイムインテリジェント制御システムに必要な機能の種類と、それらの機能間の関係性を定義します。

RCSはシステム設計でもなければ、特定のシステムを実装する方法の仕様でもありません。RCSは、システムの複雑さを整理するために、一連の確固たる工学原理に基づいた階層的な制御モデルを規定しています。すべてのレベルのすべての制御ノードは、汎用ノードモデルを共有します。[ 1 ]
また、RCSは制御システムの設計、エンジニアリング、統合、テストのための包括的な方法論を提供します。アーキテクトは、システムタスクと情報を、制御可能で効率的なより細かい有限のサブセットに反復的に分割します。RCSは、不確実で非構造化された動作環境に適応するインテリジェント制御に焦点を当てています。主な関心事は、センシング、知覚、知識、コスト、学習、計画、実行です。[ 1 ]
参照モデルアーキテクチャは、システム設計仕様ではなく、標準的な形式です。RCS参照モデルアーキテクチャは、リアルタイムモーションプランニングと制御を、高レベルのタスクプランニング、問題解決、ワールドモデリング、再帰的状態推定、触覚および視覚画像処理、音響シグネチャ分析と組み合わせます。実際、RCSコンセプトの進化は、サブサンプションからSOAR、ブラックボードからオブジェクト指向プログラミングまで、文献で現在知られているほとんどすべてのインテリジェント制御システムの最良の特性と機能を取り込む努力によって推進されてきました。[ 2 ]
RCS(リアルタイム制御システム)は、人間のパフォーマンスレベルを含むあらゆるレベルのインテリジェントな動作を可能にするように設計されたインテリジェントエージェントアーキテクチャへと発展しました。RCSは、微細な運動協調と意識的な動きの制御を担う脳の部位である小脳の理論モデルに着想を得ています。当初は、実験室用マニピュレータの感覚的にインタラクティブな目標指向制御のために設計されました。30年以上にわたり、インテリジェント工作機械、工場自動化システム、インテリジェント自律車両のためのリアルタイム制御アーキテクチャへと進化してきました。[ 3 ]
RCSは、製造業の例や車両システムの例など、多くの問題領域に適用できます。RCSアーキテクチャに基づくシステムは、工作機械における部品や工具の積み下ろし、加工ワークステーションの制御、ロボットによるバリ取りや面取り、宇宙ステーションのテレロボット、複数の自律型水中ビークル、無人陸上車両、石炭採掘自動化システム、郵便サービス郵便物処理システム、潜水艦運用自動化システムの制御など、さまざまな用途向けに、さまざまな程度で設計および実装されています。[ 2 ]
RCSは、知能行動の複雑さと高度化に対する理解が深まるにつれて、長年にわたってさまざまなバージョンを経て進化してきました。最初の実装は、1970年代半ばにバーベラによって感覚対話型ロボット用に設計されました。 [ 4 ]

RCS-1では、コマンドと感覚フィードバックを組み合わせて、目標と状態のあらゆる組み合わせに対して適切な応答を計算することに重点が置かれていました。アプリケーションは、視覚追跡タスクで構造化光視覚システムを備えたロボットアームを制御することでした。RCS-1は、Marr-Albusモデル[ 5 ]や小脳モデル算術コンピュータ(CMAC)[ 6 ]などの生物学的モデルに大きく影響を受けていました。[ 2 ]
CMACは、その出力の一部が入力に直接フィードバックされる場合にステートマシンとなるため、RCS-1は制御レベルの階層構造に配置されたステートマシンの集合として実装されました。各レベルにおいて、入力コマンドは刺激応答方式のフィードバックによって駆動される動作を効果的に選択します。このようにして、CMACは図に示すようにRCS-1の参照モデル構成要素となりました。
これらの構成要素の階層構造は、Tinbergen [ 7 ]らが観察したような動作の階層構造を実装するために使用されました。RCS-1 は、多くの点でBrooksのサブサンプション アーキテクチャ[ 8 ]と似ていますが、 RCS はサブサンプションによって事後に動作を選択するのではなく、コマンドで表現された目標によって事前に動作を選択します。[ 2 ]

次世代のRCS-2は、1980年代初頭にNIST自動製造研究施設(AMRF)で製造制御のためにBarbera、Fitzgerald、Kentらによって開発されました。 [ 9 ] [ 10 ] [ 11 ] RCS-2の基本構成要素を図に示します。
H関数は、有限状態機械の状態テーブル実行器として機能しました。RCS-2の新機能は、構造化光やブロブ解析アルゴリズムなど、多数の感覚処理アルゴリズムからなるG関数の搭載でした。RCS-2は、サーボ、座標変換、E-Move、タスク、ワークステーション、セル、ショップ、施設レベルの制御からなる8階層の階層構造を定義するために使用されました。
実際に構築されたのは最初の 6 レベルのみでした。AMRF ワークステーションのうち 2 台は、RCS-2 の 5 レベルを完全に実装しました。陸軍野戦資材運搬ロボット (FMR) [ 12 ]の制御システムも、陸軍の半自律型地上車両プロジェクト TMAP [ 2 ]と同様に、RCS-2 で実装されました。

RCS-3はNBS/DARPA多目的自律型水中ビークル(MAUV)プロジェクト[ 13 ]のために設計され、宇宙ステーション飛行用遠隔ロボットサービス装置向けに開発されたNASA/NBS標準参照モデル遠隔ロボット制御システムアーキテクチャ(NASREM) [ 14 ]に適合した。RCS-3の基本構成要素を図に示す。
RCS-3 で導入された主な新機能は、ワールド モデルとオペレータ インターフェースです。ワールド モデルが組み込まれたことで、タスク プランニングとモデル ベースの感覚処理の基礎が提供されます。これにより、タスク分解 (TD) モジュールが改良され、各モジュールにジョブ割り当てモジュール、およびジョブが割り当てられた各サブシステムのプランナーと実行モジュールが備わりました。これは、Saridis [ 15 ]の3 レベルの制御階層にほぼ対応しています。[ 2 ]

RCS-4 は 1990 年代から NIST ロボットシステム部門によって開発されています。基本的な構成要素は図に示されています。RCS-4 の主な新機能は、価値判断 (VJ) システムの明示的な表現です。VJ モジュールは、RCS-4 制御システムに、生物の脳の辺縁系によって提供されるタイプの機能を提供します。VJ モジュールには、計画されたアクションのコスト、利益、リスクを計算し、オブジェクト、材料、領域、状況、イベント、結果に価値を置くプロセスが含まれています。価値状態変数は、どの目標が重要であり、どのオブジェクトまたは領域に注意を向け、攻撃し、防御し、支援し、またはその他のアクションを実行する必要があるかを定義します。価値判断、または評価機能は、あらゆる形態の計画または学習の不可欠な部分です。価値判断のインテリジェント制御システムへの適用は、George Pugh によって取り上げられています。[ 16 ] VJ モジュールの構造と機能は、Albus (1991) でより詳細に説明されています。[ 2 ] [ 17 ]
RCS-4 では、RCS-3 のタスク 5 分解 (TD) の代わりに、動作生成 (BG) という用語も使用しています。この変更の目的は、自律的な意思決定の度合いを強調することです。RCS-4 は、戦場、深海、または遠方の惑星で動作する無人車両など、高帯域幅通信が不可能な非構造化環境における高度に自律的なアプリケーションに対応するように設計されています。これらのアプリケーションでは、自律的な価値判断と高度なリアルタイム知覚能力が必要です。RCS-3 は、製造、建設、または近宇宙や浅海での遠隔ロボット操作など、環境がより構造化されており、人間とのインターフェースへの通信帯域幅が制限されていない、要求の低いアプリケーションで引き続き使用されます。これらのアプリケーションでは、価値判断はタスク計画プロセスまたは人間のオペレーターの入力に暗黙的に表現されることがよくあります。[ 2 ]
図では、日常の交通状況下での自律走行のための制御システムを設計するRCS手法の例を6つのステップでまとめています。 [ 18 ]

ステップ3の結果、各組織単位は、各入力コマンドに対して、拡張有限状態オートマトン(FSA)による実行に適した順序付きプロダクションルールの状態テーブルを持つことになります。入力コマンドを実行するために必要な出力サブコマンドのシーケンスは、FSAが1つの出力サブコマンドから次の出力サブコマンドに遷移する状況(つまり、分岐条件)によって生成されます。[ 18 ]

RCS参照モデルアーキテクチャに基づいて、NISTはリアルタイム制御システムソフトウェアライブラリを開発しました。これは、リアルタイム制御システムで使用されるソフトウェアのプログラマ、特にインテリジェントシステム設計の参照モデルアーキテクチャを使用するプログラマを支援するために開発された、無料のC++、Java、Adaコード、スクリプト、ツール、メイクファイル、およびドキュメントのアーカイブです。[ 19 ]