(57)【特許請求の範囲】
【請求項１】
複数のサブシステムがネットワークで結合されたネットワークシステムであって、
各々の前記サブシステムに設けられ自己の状態と自己の機能を保持する自己認識部と、
前記複数のサブシステムの全てまたは前記自己を除く全ての前記サブシステムの状態および機能を取得する取得部と、
目標状態の設定を受け付ける目標受付部と、
前記目標状態を実現するために必要な各々の前記サブシステムの機能の組み合わせ構造の知識を記憶する共有記憶部と、
前記目標状態と前記サブシステムの状態および機能と前記組み合わせ構造の知識とに基づいて、各々の前記サブシステムの機能の活性化の可否を含む各々の前記サブシステムの機能の組み合わせ構造を自動設定する構造設定部と、
前記構造設定部で自動設定された前記組み合わせ構造に基づいて、各々の前記サブシステムが実行する機能を決定する決定部と、
決定した各々の前記サブシステムの機能を各々の前記サブシステムに通知する通知部と、
前記組み合わせ構造の知識を、前記目標状態と各々の前記サブシステムの状態および機能とから機械学習によって用意する知識作成部と、を備え、
前記共有記憶部は、前記組み合わせ構造の知識を、複数の選択肢として記憶し、
前記共有記憶部に、前記受け付けた目標状態を実現するために必要な前記サブシステムの機能の組み合わせ構造の知識が記憶されていない場合、前記知識作成部は、前記サブシステムの機能の組み合わせ構造の知識を機械学習によって用意する、
ネットワークシステム。
【請求項２】
前記複数のサブシステムを管理する管理システムを備え、
前記取得部は、前記管理システムに設けられており、
前記複数のサブシステムの状態および機能を、各々の前記サブシステムの前記自己認識部から取得する、
請求項１に記載のネットワークシステム。
【請求項３】
前記複数のサブシステムを管理する管理システムを備え、
前記取得部は、前記管理システムに設けられており、
前記サブシステムのそれぞれには、前記自己を除く全ての前記サブシステムの状態および機能を認識する他者認識部が設けられており、
前記取得部は、前記全てのサブシステムの状態および機能を、いずれかの前記サブシステムの前記自己認識部および前記他者認識部から取得する、
請求項１に記載のネットワークシステム。
【請求項４】
前記取得部は、いずれかの前記サブシステムに設けられており、
前記自己を除く全ての前記サブシステムの状態および機能を認識して取得する、
請求項１に記載のネットワークシステム。
【請求項５】
前記目標受付部によって新たに設定された目標状態が受け付けられた場合、前記構造設定部は、前記新たな目標状態に基づいて新たな前記組み合わせ構造を自動設定し、
前記決定部は、前記新たな組み合わせ構造に基づいて、各々の前記サブシステムが実行する新たな前記機能を決定し、
前記通知部は、前記新たな機能を各々の前記サブシステムに通知する、
請求項１に記載のネットワークシステム。
【請求項６】
前記自己認識部が、前記設定された目標を達成するうえで前記サブシステムが現在実行している役割に影響がある自己の状態の変化を認識した場合、
前記構造設定部は、新たな複数の前記サブシステムの状態に基づいて、新たな前記組み合わせ構造を自動設定し、
前記決定部は、前記新たな組み合わせ構造に基づいて、各々の前記サブシステムが実行する新たな前記機能を決定し、
前記通知部は、前記新たな機能を各々の前記サブシステムに通知する、
請求項１に記載のネットワークシステム。
【請求項７】
前記サブシステムは、前記自己の機能として、自己の動作を停止する非活性化の条件を記憶しており、
いずれかの前記サブシステムの動作を停止する条件が成立した場合、前記構造設定部は、新たな複数の前記サブシステムの状態に基づいて、新たな前記組み合わせ構造を自動設定し、
前記決定部は、前記新たな組み合わせ構造に基づいて、各々の前記サブシステムが実行する新たな前記機能を決定し、
前記通知部は、前記新たな機能を各々の前記サブシステムに通知する、
請求項１に記載のネットワークシステム。
【請求項８】
新たな前記サブシステムが前記ネットワークに追加された場合、前記構造設定部は、新たな複数の前記サブシステムの状態に基づいて、新たな前記組み合わせ構造を自動設定し、
前記決定部は、前記新たな組み合わせ構造に基づいて、各々の前記サブシステムが実行する新たな前記機能を決定し、
前記通知部は、前記新たな機能を各々の前記サブシステムに通知する、
請求項１に記載のネットワークシステム。
【請求項９】
前記いずれかのサブシステムには、前記目標設定部、前記構造設定部、前記決定部および前記通知部が設けられており、他の各々の前記サブシステムが実行する機能を他の各々の前記サブシステムに通知する、
請求項４に記載のネットワークシステム。
【請求項１０】
前記ネットワークに接続された複数の前記サブシステムの各々には、前記目標受付部が設けられており、
前記目標状態の設定を受け付けた前記サブシステムは、前記受け付けた目標状態を、他の各々の前記サブシステムに対して通知する、
請求項４に記載のネットワークシステム。
【請求項１１】
複数のサブシステムがネットワークで結合されたネットワークシステムであって、
各々の前記サブシステムに設けられ自己の状態と自己の機能を保持する自己認識部と、
前記複数のサブシステムの全てまたは前記自己を除く全ての前記サブシステムの状態および機能を取得する取得部と、
目標状態の設定を受け付ける目標受付部と、
前記目標状態を実現するために必要な各々の前記サブシステムの機能の組み合わせ構造の知識を記憶する共有記憶部と、
前記目標状態と前記サブシステムの状態および機能と前記組み合わせ構造の知識とに基づいて、各々の前記サブシステムの機能の活性化の可否を含む各々の前記サブシステムの機能の組み合わせ構造を自動設定する構造設定部と、
前記構造設定部で自動設定された前記組み合わせ構造に基づいて、各々の前記サブシステムが実行する機能を決定する決定部と、
決定した各々の前記サブシステムの機能を、各々の前記サブシステムに通知する通知部と、を備え、
前記複数のサブシステムの各々には、前記取得部、前記目標受付部および前記構造設定部が設けられており、
前記取得部は、前記自己を除く全ての前記サブシステムの状態および機能を認識して取得し、
前記目標状態の設定を受け付けた前記サブシステムは、前記受け付けた目標状態を、他の各々の前記サブシステムに対して通知し、
所定の前記サブシステムに設けられ各々の前記サブシステムの実行する機能を調整する機能調整部を更に備え、
各々の前記サブシステムの前記構造設定部は、前記自動設定した組み合わせ構造から自己の機能を決定し、
前記所定のサブシステム以外の各々の前記サブシステムは、決定した自己の前記機能を前記所定のサブシステムに連絡し、
前記所定のサブシステムの前記機能調整部は、自己が前記自動設定した前記組み合わせ構造と、連絡を受けた他の前記サブシステムの機能とから、自己を含む各々のサブシステムの機能を調整する、
ネットワークシステム。
【請求項１２】
前記ネットワークに接続された複数の前記サブシステムのうちの全部またはいくつかのサブシステムに、前記機能調整部が設けられており、
前記受け付けた目標状態と現在の各々の前記サブシステムの状態および機能に基づいて、複数の前記サブシステムのうち前記調整を行うサブシステムが変更される、
請求項１１に記載のネットワークシステム。
【請求項１３】
複数のサブシステムがネットワークで結合されたネットワークシステムであって、
各々の前記サブシステムに設けられ自己の状態と自己の機能を保持する自己認識部と、
前記複数のサブシステムの全てまたは前記自己を除く全ての前記サブシステムの状態および機能を取得する取得部と、
目標状態の設定を受け付ける目標受付部と、
前記目標状態を実現するために必要な各々の前記サブシステムの機能の組み合わせ構造の知識を記憶する共有記憶部と、
前記目標状態と前記サブシステムの状態および機能と前記組み合わせ構造の知識とに基づいて、各々の前記サブシステムの機能の活性化の可否を含む各々の前記サブシステムの機能の組み合わせ構造を自動設定する構造設定部と、
前記構造設定部で自動設定された前記組み合わせ構造に基づいて、各々の前記サブシステムが実行する機能を決定する決定部と、
決定した各々の前記サブシステムの機能を、各々の前記サブシステムに通知する通知部と、を備え、
複数の前記サブシステムの各々には、前記目標受付部、前記取得部、前記構造設定部、前記決定部および前記通知部が設けられており、
前記取得部は、前記自己を除く全ての前記サブシステムの状態および機能を認識して取得し、
前記受け付けた目標状態と現在の各々の前記サブシステムの状態および機能に基づいて、複数の前記サブシステムのうち前記組み合わせ構造の自動設定を行うサブシステムが変更される、
ネットワークシステム。
【請求項１４】
各々のサブシステムがネットワークで結合されたネットワークシステムを用いて所定の目標状態を実行するために各々の前記サブシステムの機能を設定する機能設定方法であって、
前記目標状態を実現するために必要な各々の前記サブシステムの機能の組み合わせ構造の知識を、複数の選択肢として記憶する記憶ステップと、
前記目標状態の設定を受け付ける目標受付ステップと、
各々の前記サブシステムが、自己の状態と自己の機能を保持する自己認識ステップと、
前記ネットワークに結合された全てまたは前記自己を除く全ての前記サブシステムの状態および機能を取得する取得ステップと、
前記受け付けた目標状態を実現するために必要な前記サブシステムの機能の組み合わせ構造の知識が記憶されていない場合、前記組み合わせ構造の知識を、前記目標状態と各々の前記サブシステムの状態および機能とから機械学習によって用意する知識作成ステップと、
前記目標状態と、前記サブシステムの状態および機能と、前記目標状態を実現するために必要な各々の前記サブシステムの機能の組み合わせ構造の知識とに基づいて、各々の前記サブシステムの機能の活性化の可否を含む各々の前記サブシステムの機能の組み合わせ構造を自動設定する構造設定ステップと、
前記構造設定ステップで自動設定された前記組み合わせ構造に基づいて、各々の前記サブシステムが実行する機能を決定する決定ステップと、
決定した各々の前記サブシステムの機能を各々の前記サブシステムに通知する通知ステップと、
を備えた、機能設定方法。
【請求項１５】
各々のサブシステムがネットワークで結合されたネットワークシステムを用いて所定の目標状態を実行するために各々の前記サブシステムの機能を設定する機能設定プログラムであって、
前記目標状態を実現するために必要な各々の前記サブシステムの機能の組み合わせ構造の知識を、複数の選択肢として記憶する記憶ステップと、
前記目標状態の設定を受け付ける目標受付ステップと、
各々の前記サブシステムが、自己の状態と自己の機能を保持する自己認識ステップと、
前記ネットワークに結合された全てまたは前記自己を除く全ての前記サブシステムの状態および機能を取得する取得ステップと、
前記受け付けた目標状態を実現するために必要な前記サブシステムの機能の組み合わせ構造の知識が記憶されていない場合、前記組み合わせ構造の知識を、前記目標状態と各々の前記サブシステムの状態および機能とから機械学習によって用意する知識作成ステップと、
前記目標状態と、前記サブシステムの状態および機能と、前記目標状態を実現するために必要な各々の前記サブシステムの機能の組み合わせ構造の知識と、前記自己の状態及び機能とに基づいて、各々の前記サブシステムの機能の活性化の可否を含む各々の前記サブシステムの機能の組み合わせ構造を自動設定する構造設定ステップと、
前記構造設定ステップで自動設定された前記組み合わせ構造に基づいて、各々の前記サブシステムが実行する機能を決定する決定ステップと、
決定した各々の前記サブシステムの機能を各々の前記サブシステムに通知する通知ステップと、
を備えた、機能設定方法をコンピュータに実行させる機能設定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定の目標を実行するためにネットワークで接続された複数のサブシステムの機能を設定するネットワークシステム、機能設定方法および機能設定プログラムに関する。
【背景技術】
【０００２】
近年、複数の装置をネットワーク等によって接続し複数の装置同士を連携させる構成が提示されている。
例えば、特許文献１には、テレビを中心として新しい機器が接続された場合に、その機器の機能がテレビに連絡され、ネットワーク上の各機器の機能がテレビに表示可能な情報処理装置が開示されている。そして、ユーザが、その表示画面で機能を選択すれば、テレビからその機能を行う機器に対して情報が送られ、その機器が処理を実行する。
【０００３】
また、例えば、特許文献２には、複数のカメラを連動させた監視カメラシステムが開示されており、侵入を検出した侵入センサごとにどのカメラをどのような状態で動作させるかが予め設定されている。
また、例えば、特許文献３には、複数の端末と管理手段が通信ネットワークを介して接続されたシステムが開示されており、このシステムは、例えばセキュリティ対策として使用される。特許文献３に示すシステムでは、事態に対応する対処を完全に実行できる端末が存在しなくても、複数個の端末を組み合わせることにより事態に対応する処理が実行される。
【０００４】
しかしながら、上記従来の装置およびシステムでは、以下に示すような問題点を有している。
すなわち、上記特許文献１に開示された情報処理装置では、テレビに他の機器の機能を表示させるという連携をさせていても、各装置は個別で行う処理（目標ともいえる）しか実行できない。このため、複数の機器で連携して行う処理を実行することができない。
【０００５】
また、特許文献２に開示されたシステムでは、予め決められた処理については複数の機器を用いて実行できるが、カメラが故障したときや外部からカメラに不正にアクセスされる場合などに対応することができない。また、特許文献３に示すシステムにおいても、端末が故障した場合などに目標を実行できないときがある。このように特許文献２および３のシステムでは、システムの内外の状態によっては適応できず目標が達成できない場合があった。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−１４６３８４号公報
【特許文献２】特開２００２−１５０４４１号公報
【特許文献３】特許第３９７２７０４号公報
【特許文献４】特開２０１５−１６６９６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明の課題は、システムの内外の状況に対して適応性の高いネットワークシステム、機能設定方法、および機能設定プログラムを提供することにある。
【課題を解決するための手段】
【０００８】
第１の発明のネットワークシステムは、複数のサブシステムがネットワークで結合されたネットワークシステムであって、自己認識部と、取得部と、目標受付部と、共有記憶部と、構造設定部と、決定部と、通知部とを備える。自己認識部は、各々の前記サブシステムに設けられ自己の状態と自己の機能を保持する。取得部は、複数のサブシステムの全てまたは前記自己を除く全ての前記サブシステムの状態および機能を取得する。目標受付部は、目標状態の設定を受け付ける。共有記憶部は、目標状態を実現するために必要な各々の前記サブシステムの機能の組み合わせ構造の知識を記憶する。構造設定部は、目標状態とサブシステムの状態および機能と組み合わせ構造の知識とに基づいて、各々のサブシステムの機能の活性化の可否を含む各々のサブシステムの機能の組み合わせ構造を自動設定する。決定部は、構造設定部で自動設定された組み合わせ構造に基づいて、各々のサブシステムが実行する機能を決定する。通知部は、決定した各々のサブシステムの機能を各々のサブシステムに通知する。
【０００９】
ここで、自己認識部が自己の状態と自己の機能を保持しているため、各サブシステムは自己の動作状況、故障の有無、外部からの侵入などを検知し、その情報を保持することが出来る。そして、全てのサブシステムの状態および機能に基づいてサブシステムの機能の組み合わせ構造が自動設定される。
このため、あるサブシステムが故障したり、あるサブシステムへ外部からの不正アクセスがあった場合であってもシステム全体で目標を達成することが出来、システムの内外の状況に対して適応性が向上できる。
【００１０】
なお、サブシステムとしては、例えば、センサやそれらセンサを組込んだ機器、カメラ（画像センサともいえる）、コンベア、中継機およびロボット（ハンドロボット、搬送用ロボット、多機能ロボット等）等が含まれる。センサとしては、例えば、加速度センサ、電圧センサ、電流センサ、温度センサ、湿度センサ、照度センサ、重量センサ、人感センサ、接触センサ、圧力センサ等、物理量を計測する各種センサが含まれる。
【００１１】
また、目標状態とは、例えば、所定空間における監視、所定の製品の組み立て、製品の組み立て速度、所定の位置の間における情報通信の確保、およびメンテナンス時期までの装置間における情報通信の確保などを含む。
また、自己の機能とは、サブシステムが複数の機能を保有する場合は、その複数の機能を示している。例えば、カメラの場合、自己の機能は、撮影機能、ズーム機能、首振り機能等が挙げられる。
【００１２】
また、自己の状態とは、例えば、サブシステムの動作の状態や周囲の動作環境を含む。動作の状態とは、例えば、実行中の動作内容を含む。周囲の動作環境とは、例えば、自己の動作に影響を与える外部要素（温度、湿度、明暗、障害物による可動範囲の制限、ノイズの状況など）を含む。
第２の発明に係るネットワークシステムは、第１の発明に係るネットワークシステムであって、複数のサブシステムを管理する管理システムを備える。取得部は、管理システムに設けられている。取得部は、複数のサブシステムの状態および機能を、各々のサブシステムの自己認識部から取得する。
【００１３】
これにより、管理システムは、ネットワークに接続されている複数のサブシステムの全ての状態および機能を取得することができる。
第３の発明に係るネットワークシステムは、第１の発明に係るネットワークシステムであって、複数のサブシステムを管理する管理システムを備える。取得部は、管理システムに設けられている。サブシステムのそれぞれには、自己を除く全てのサブシステムの状態および機能を認識する他者認識部が設けられている。取得部は、複数のサブシステムの全てのサブシステムの状態および機能を、いずれかのサブシステムの自己認識部および他者認識部から取得する。
【００１４】
これにより管理システムは、いずれかのサブシステムが故障し管理システムに自己の状態を送信できない場合でも、他のサブシステムが故障情報を認識できるため、ネットワークに接続されている複数のサブシステムの全ての状態および機能を取得することが出来る。
第４の発明に係るネットワークシステムは、第１の発明に係るネットワークシステムであって、取得部は、いずれかのサブシステムに設けられている。取得部は、自己を除く全ての前記サブシステムの状態および機能を認識して取得する。
【００１５】
ここで、取得部は、他のサブシステムの状態および機能を認識する他者認識部として構成される。
これにより、サブシステムが他のサブシステムの状態および機能を取得することができるため、ネットワークに接続されている複数のサブシステムの全ての状態および機能を取得することが出来る。
【００１６】
第５の発明に係るネットワークシステムは、第１の発明に係るネットワークシステムであって、目標受付部によって新たに設定された目標状態が受け付けられた場合、構造設定部は、新たな目標状態に基づいて新たな組み合わせ構造を自動設定する。決定部は、新たな組み合わせ構造に基づいて、各々のサブシステムが実行する新たな機能を決定する。通知部は、新たな機能を各々のサブシステムに通知する。
【００１７】
このように、新たな目標状態が受け付けられると、新たな組み合わせ構造が設定され、各々のサブシステムが実行する新たな機能が決定される。そして、決定された新たな機能が各サブシステムに通知される。
これにより、新たな目標状態が設定された場合であっても、各サブシステムに新たな機能が通知されることにより、新たな目標状態を実行することが出来る。
【００１８】
なお、新たな目標状態が設定されるとは、例えば、組み立てる製品が変更となる場合、製品の組み立て完成までの速度（期間）が変更となる場合、製品や部品を搬送する位置が変更となる場合などを挙げることができる。
第６の発明に係るネットワークシステムは、第１の発明に係るネットワークシステムであって、自己認識部が、設定された目標を達成するうえでサブシステムが現在実行している役割に影響がある自己の状態の変化を認識した場合、構造設定部は、新たな複数のサブシステムの状態に基づいて、新たな組み合わせ構造を自動設定する。決定部は、新たな組み合わせ構造に基づいて、各々のサブシステムが実行する新たな機能を決定する。通知部は、新たな機能を各々の前記サブシステムに通知する。
【００１９】
これにより、所定のサブシステムの自己の状態の変化により、目標状態の実行が困難になった場合であっても、新たな組み合わせ構造を自動設定することにより、目標状態を実行することができる。
なお、自己の状態の変化とは、例えば、充電量の減少、部品の作成に用いる材料の減少、周囲のノイズの増加などを含む。
【００２０】
第７の発明に係るネットワークシステムは、第１の発明に係るネットワークシステムであって、サブシステムは、自己の機能として、自己の動作を停止する非活性化とする条件を記憶している。いずれかのサブシステムの動作を停止する条件が成立した場合、構造設定部は、新たな複数のサブシステムの状態に基づいて、新たな組み合わせ構造を自動設定する。決定部は、新たな組み合わせ構造に基づいて、各々のサブシステムが実行する新たな機能を決定する。通知部は、新たな機能を各々のサブシステムに通知する。
【００２１】
これにより、所定のサブシステムに対して外部からの不正アクセス、故障等があった場合に自己の機能を停止し、そのサブシステムを除いた新たなサブシステムの組み合わせ構造が自動設定され、目標状態を実行することが出来る。
なお、動作を停止する条件とは、例えば、充電量が充電の必要な所定量以下となる条件、外部からの不正アクセス、故障、部品の作成に用いる材料の一定量上の減少などを含む。
【００２２】
また、非活性化とは、活性化が否の状態である。
第８の発明に係るネットワークシステムは、第１の発明に係るネットワークシステムであって、新たなサブシステムがネットワークに追加された場合、構造設定部は、新たな複数のサブシステムの状態に基づいて、新たな組み合わせ構造を自動設定する。決定部は、新たな組み合わせ構造に基づいて、各々のサブシステムが実行する新たな機能を決定する。通知部は、新たな機能を各々のサブシステムに通知する。
【００２３】
これにより、新たなサブシステムが追加された場合に、そのサブシステムも考慮した新たなサブシステムの組み合わせ構造が自動設定され、目標状態を実行することが出来る。このため、新たに追加されたサブシステムを効率的に利用することが出来る。
第９の発明に係るネットワークシステムは、第１の発明に係るネットワークシステムであって、共有記憶部は、組み合わせ構造の知識を、複数の選択肢として記憶している。
【００２４】
これにより、構造設定部は、組み合わせ構造の知識を選択して、各々のサブシステムの機能の組み合わせ構造を自動設定することが出来る。
第１０の発明に係るネットワークシステムは、第９の発明に係るネットワークシステムであって、知識作成部を更に備える。知識作成部は、組み合わせ構造の知識を、目標状態と各々のサブシステムの状態および機能とから機械学習によって用意する。
【００２５】
これによって、ユーザがサブシステムの機能の組み合わせ構造を用意しなくても、機械学習によってシステム自体が組み合わせ構造の知識を用意するため、システム内外の状態に対する適応性を向上することができる。
なお、機械学習としては、例えばＡＩ（Artificial Intelligence）によるディープラーニングを含む。
【００２６】
第１１の発明に係るネットワークシステムは、第１０の発明に係るネットワークシステムであって、共有記憶部に、受け付けた目標状態を実現するために必要なサブシステムの機能の組み合わせ構造の知識が記憶されていない場合、構造設定部は、サブシステムの機能の組み合わせ構造の知識を機械学習によって用意して、組み合わせ構造を自動設定する。
【００２７】
これによって、目標状態を実現するためのサブシステムの機能の組み合わせ構造の知識がユーザによって用意されていなくても、機械学習によってシステム自体が組み合わせ構造の知識を用意するため、システム内外の状態に対する適応性を向上することができる。
なお、機械学習としては、例えばＡＩ（Artificial Intelligence）によるディープラーニングを含む。
【００２８】
第１２の発明に係るネットワークシステムは、第４の発明に係るネットワークシステムであって、いずれかのサブシステムには、目標設定部、構造設定部、決定部および通知部が設けられている。いずれかのサブシステムは、他の各々のサブシステムが実行する機能を他の各々のサブシステムに通知する。
これにより、複数のサブシステムのうちいずれかのサブシステムにおいて決定された他の各々のサブシステムが実行する機能を、他の各々のサブシステムに通知でき、システム全体として目標状態を実行できる。
【００２９】
第１３の発明に係るネットワークシステムは、第４の発明に係るネットワークシステムであって、ネットワークに接続された複数のサブシステムの各々には、目標受付部が設けられている。目標状態の設定を受け付けたサブシステムは、受け付けた目標状態を、他の各々の前記サブシステムに対して通知する。
これにより、複数のサブシステムのうちいずれかのサブシステムに目標受付部が設けられている場合であっても、受け付けた目標状態を他のサブシステムに対して通知することができる。
【００３０】
第１４の発明に係るネットワークシステムは、第１３の発明に係るネットワークシステムであって、複数のサブシステムの各々には、取得部、構造設定部が更に設けられている。ネットワークシステムは、所定のサブシステムに設けられ各々のサブシステムの実行する機能を調整する機能調整部を更に備える。各々のサブシステムの構造設定部は、自動設定した組み合わせ構造から自己の機能を決定する。所定のサブシステム以外の各々のサブシステムは、決定した自己の機能を所定のサブシステムに連絡する。所定のサブシステムの機能調整部は、自己が自動設定した組み合わせ構造と、連絡を受けた他のサブシステムの機能とから、自己を含む各々のサブシステムの機能を調整する。
【００３１】
これにより、機能調整部を有するサブシステムをリーダとして、他のサブシステムが実行する機能を調整することができる。
第１５の発明に係るネットワークシステムは、第１４の発明に係るネットワークシステムであって、ネットワークに接続された複数のサブシステムのうちの全部またはいくつかのサブシステムに、機能調整部が設けられている。受け付けた目標状態と現在の各々のサブシステムの状態および機能に基づいて、複数のサブシステムのうち調整を行うサブシステムが変更される。
【００３２】
これにより、複数のサブシステムのいずれかが全てのサブシステムの機能の組み合わせ構造を調整できる。また、組み合わせ構造を調整しているサブシステムが、充電量の減少、故障、および外部からの不正アクセスなどにより動作を停止する場合には、他のサブシステムにおいて全てのサブシステムの組み合わせ構造を調整することができる。
第１６の発明に係るネットワークシステムは、第４の発明に係るネットワークシステムであって、複数のサブシステムの各々には、目標受付部、取得部、構造設定部、決定部および前記通知部が設けられている。受け付けた目標状態と現在の各々のサブシステムの状態および機能に基づいて、複数のサブシステムのうち組み合わせ構造の自動設定を行うサブシステムが変更される。
【００３３】
これにより、複数のサブシステムのいずれかが全てのサブシステムの機能の組み合わせ構造を設定できる。また、組み合わせ構造を調整しているサブシステムが、充電量の減少、故障、および外部からの不正アクセスなどにより動作を停止する場合には、他のサブシステムにおいて全てのサブシステムの組み合わせ構造を調整することができる。
第１７の発明に係る機能設定方法は、複数のサブシステムがネットワークで結合されたネットワークシステムを用いて所定の目標状態を実行するために各々のサブシステムの機能を設定する機能設定方法であって、自己認識ステップと、取得ステップと、目標受付ステップと、構造設定ステップと、決定ステップと、通知ステップと、を備える。自己認識ステップは、各々のサブシステムが、自己の状態と自己の機能を保持する。取得ステップは、複数のサブシステムの全てまたは自己を除く全てのサブシステムの状態および機能を取得する。目標受付ステップは、目標状態の設定を受け付ける。構造設定ステップは、目標状態と、サブシステムの状態および機能と、目標状態を実現するために必要な各々のサブシステムの機能の組み合わせ構造の知識とに基づいて、各々のサブシステムの機能の活性化の可否を含む各々のサブシステムの機能の組み合わせ構造を自動設定する。決定ステップは、構造設定ステップで自動設定された組み合わせ構造に基づいて、各々のサブシステムが実行する機能を決定する。通知ステップは、決定した各々のサブシステムの機能を各々のサブシステムに通知する。
【００３４】
ここで、自己認識ステップにより自己の状態と自己の機能を保持されるため、各サブシステムは、自己の動作状況、故障の有無、外部からの侵入などを検知し、その情報を保持することが出来る。そして、全てのサブシステムの状態および機能に基づいてサブシステムの機能の組み合わせ構造が自動設定される。
このため、あるサブシステムが故障したり、あるサブシステムへ外部からの不正アクセスがあった場合であってもシステム全体で目標を達成することが出来、システムの内外の状況に対して適応性が向上できる。
【００３５】
なお、サブシステムとしては、例えば、センサやそれらを組み込んだ機器、カメラ、コンベア、中継機およびロボット（ハンドロボット、搬送用ロボット、多機能ロボット等）等が含まれる。センサとしては、例えば、加速度センサ、電圧センサ、電流センサ、温度センサ、湿度センサ、照度センサ、重量センサ、人感センサ、接触センサ、圧力センサ等、物理量を計測する各種センサが含まれる。
【００３６】
また、目標状態とは、例えば、所定空間における監視、所定の製品の組み立て、製品の組み立て速度、所定の位置の間における通信の確保、およびメンテナンス時期までの装置間における情報通信の確保などを含む。
また、自己の機能とは、サブシステムが複数の機能を保有する場合は、その複数の機能を示している。例えば、カメラの場合、自己の機能は、撮影機能、ズーム機能、首振り機能等が挙げられる。
【００３７】
また、自己の状態とは、例えば、サブシステムの動作の状態や周囲の動作環境を含む。動作の状態とは、例えば、実行中の動作内容を含む。周囲の動作環境とは、例えば、自己の動作に影響を与える外部要素（温度、湿度、明暗、障害物による可動範囲の制限、ノイズの状況など）を含む。
第１８の発明に係る機能設定プログラムは、複数のサブシステムがネットワークで結合されたネットワークシステムを用いて所定の目標状態を実行するために各々のサブシステムの機能を設定する機能設定方法であって、自己認識ステップと、取得ステップと、目標受付ステップと、構造設定ステップと、決定ステップと、通知ステップと、を備える機能設定方法をコンピュータに実行させる。自己認識ステップは、各々の前記サブシステムが、自己の状態と自己の機能を保持する。取得ステップは、複数のサブシステムの全てまたは自己を除く全てのサブシステムの状態および機能を取得する。目標受付ステップは、目標状態の設定を受け付ける。構造設定ステップは、目標状態と、サブシステムの状態および機能と、目標状態を実現するために必要な各々のサブシステムの機能の組み合わせ構造の知識とに基づいて、各々のサブシステムの機能の活性化の可否を含む各々のサブシステムの機能の組み合わせ構造を自動設定する。決定ステップは、構造設定ステップで自動設定された組み合わせ構造に基づいて、各々のサブシステムが実行する機能を決定する。通知ステップは、決定した各々のサブシステムの機能を各々のサブシステムに通知する。
【００３８】
ここで、自己認識ステップが自己の状態と自己の機能を保持しているため、各サブシステムは、自己の動作情報、故障の有無、外部からの侵入などを検知し、その情報を保持することが出来る。そして、全てのサブシステムの状態および機能に基づいてサブシステムの機能の組み合わせ構造が自動設定される。
このため、あるサブシステムが故障したり、あるサブシステムへ外部からの不正アクセスがあった場合であってもシステム全体で目標を達成することが出来、システムの内外の状況に対して適応性が向上できる。
【００３９】
なお、サブシステムとしては、例えば、センサやそれらセンサを組み込んだ機器、カメラ、コンベア、中継機およびロボット（ハンドロボット、搬送用ロボット、多機能ロボット等）等が含まれる。センサとしては、例えば、加速度センサ、電圧センサ、電流センサ、温度センサ、湿度センサ、照度センサ、重量センサ、人感センサ、接触センサ、圧力センサ等、物理量を計測する各種センサが含まれる。
【００４０】
また、目標状態とは、例えば、所定空間における監視、所定の製品の組み立て、製品の組み立て速度、所定の位置の間における通信の確保、およびメンテナンス時期までの装置間における情報通信の確保などを含む。
また、自己の機能とは、サブシステムが複数の機能を保有する場合は、その複数の機能を示している。例えば、カメラの場合、自己の機能は、撮影機能、ズーム機能、首振り機能等が挙げられる。
【００４１】
また、自己の状態とは、例えば、サブシステムの動作の状態や周囲の動作環境を含む。動作の状態とは、例えば、実行中の動作内容を含む。周囲の動作環境とは、例えば、自己の動作に影響を与える外部要素（温度、湿度、明暗、障害物による可動範囲の制限、ノイズの状況）などを含む。
【発明の効果】
【００４２】
本発明によれば、システムの内外の状況に対して適応性の高いネットワークシステム、機能設定方法、および機能設定プログラムを提供することが出来る。
【図面の簡単な説明】
【００４３】
【図１】本発明にかかる実施の形態１におけるネットワークシステムの構成を示す図。
【図２】図１のネットワークシステムの動作を示すフロー図。
【図３】図１のネットワークシステムの動作を示すフロー図。
【図４】図１のネットワークシステムの動作を示すフロー図。
【図５】本発明にかかる実施例１におけるネットワークシステムの構成を示す図。
【図６】図５のネットワークシステムのサブシステム情報データベースの情報の一例を示す図。
【図７】図５のネットワークシステムの組み合わせ構造知識データベースの組み合わせ構造の一例を示す図。
【図８】図６の状態から変化したサブシステム情報データベースの情報の一例を示す図。
【図９】図８の状態から変化したサブシステム情報データベースの情報の一例を示す図。
【図１０】（ａ）、（ｂ）図５の状態から変化したネットワークシステムの動作を説明するための図。
【図１１】本発明にかかる実施例２におけるネットワークシステムの構成を示す図。
【図１２】（ａ）、（ｂ）図１１のネットワークシステムの目標が変化した際の動作を説明するための図。
【図１３】図１１のネットワークシステムの組み合わせ構造知識データベースの組み合わせ構造の一例を示す図。
【図１４】図１１のネットワークシステムのサブシステム情報データベースの情報の一例を示す図。
【図１５】図１１のネットワークシステムにおいてサブシステムの状態が変化した際の動作を説明するための図。
【図１６】（ａ）、（ｂ）図１１のネットワークシステムにおいて新しいサブシステムが追加された際の動作を説明するための図。
【図１７】本発明にかかる実施の形態２におけるネットワークシステムの構成を示す図。
【図１８】図１７のネットワークシステムの動作を示すフロー図。
【図１９】本発明にかかる実施の形態３におけるネットワークシステムの構成を示す図。
【図２０】図１９のネットワークシステムの動作を示すフロー図。
【図２１】本発明にかかる実施の形態４におけるネットワークシステムの構成を示す図。
【図２２】本発明にかかる実施例３におけるネットワークシステムの構成を示す図。
【図２３】（ａ）、（ｂ）、（ｃ）図２２のネットワークシステムにおいてサブシステムの状態が変化した際の動作を説明するための図。
【図２４】本発明にかかる実施例４におけるネットワークシステムの構成を示す図。
【図２５】図２４のネットワークシステムのサブシステム情報データベースの情報の一例（動作状態）を示す図。
【図２６】（ａ）図２５のネットワークシステムにおいて組み合わせ構造の変更後のサブシステムの動作状態を示すサブシステム情報データベースの一部を示す図、（ｂ）図２６（ａ）の役割を実行するネットワークシステムの状態を示す図。
【図２７】（ａ）図２５のネットワークシステムにおいて組み合わせ構造の変更後のサブシステムの動作状態を示すサブシステム情報データベースの一部を示す図、（ｂ）図２７（ａ）の役割を実行するネットワークシステムの状態を示す図。
【図２８】（ａ）図２５のネットワークシステムにおいて組み合わせ構造の変更後のサブシステムの動作状態を示すサブシステム情報データベースの一部を示す図、（ｂ）図２８（ａ）の役割を実行するネットワークシステムの状態を示す図。
【図２９】（ａ）図２５のネットワークシステムにおいて組み合わせ構造の変更後のサブシステムの動作状態を示すサブシステム情報データベースの一部を示す図、（ｂ）図２９（ａ）の役割を実行するネットワークシステムの状態を示す図。
【図３０】（ａ）図２５のネットワークシステムにおいて組み合わせ構造の変更後のサブシステムの動作状態を示すサブシステム情報データベースの一部を示す図、（ｂ）図３０（ａ）の役割を実行するネットワークシステムの状態を示す図。
【図３１】本発明にかかる実施の形態２の変形例のネットワークシステムの構成を示す図。
【発明を実施するための形態】
【００４４】
以下に、本発明の実施の形態に係るネットワークシステム、機能設定方法および機能設定プログラムについて図面に基づいて説明する。
（実施の形態１）
本発明にかかる実施の形態１におけるネットワークシステムＮ１について以下に説明する。
【００４５】
＜構成＞
（ネットワークシステムＮ１の概要）
図１は、本発明に係る実施の形態１におけるネットワークシステムＮ１の構成を示すブロック図である。
本実施の形態のネットワークシステムＮ１は、所定の目標を実行するネットワークシステムであって、図１に示すように、中央管理システム２（管理システムの一例）と、複数のサブシステム３とを備えている。中央管理システム２と、複数のサブシステム３は互いにネットワーク５によって接続されている。このネットワーク５は、有線、無線またはそれらの混合であっても良く、インターネットを通じたものでも良い。図１では、２つのサブシステム３Ａ、３Ｂが図示されているが、２つに限定されるものではない。なお、サブシステム３について区別を付けて説明するときには、サブシステム３Ａ、３Ｂと符号を付けて説明する。
【００４６】
中央管理システム２は、目標を受け付けると、その目標状態を実行可能なように複数のサブシステム３の各々の機能（役割）を決定して、各々のサブシステム３に通知する。
ここで、目標状態としては、例えば、所定空間における監視（後述する実施例１、４）、所定の製品の組み立て（後述する実施例２、４）、製品の組み立て速度（後述する実施例２）、所定の位置の間における通信の確保（後述する実施例３）、およびメンテナンス時期までの所定の位置の間における情報通信の確保（後述する実施例３）などを含む。
【００４７】
また、サブシステム３としては、例えば、実施例１に示すセンサ、実施例１、２に示すカメラ、コンベア、搬送機、実施例３に示す中継機および実施例２、４に示すロボット（ハンドロボット、搬送用ロボット、多機能ロボット等）等が含まれる。センサとしては、例えば、加速度センサ、電圧センサ、電流センサ、温度センサ、湿度センサ、照度センサ、重量センサ、人感センサ、接触センサ、圧力センサ等、物理量を計測する各種センサが含まれる。
【００４８】
（サブシステム３）
各々のサブシステム３は、自己認識部３１と、他者認識部３２（取得部の一例）と、自己役割設定部３３と、役割実行部３４とを有している。
自己認識部３１は、自己の状態および機能を保持または認識して保持する。自己の状態および機能とは、例えば、実行中の自己の動作状態３１ａ、自己の動作環境３１ｂ、および自己の機能３１ｃを含む。
【００４９】
自己の動作状態３１ａは、実行中の動作内容などを含み、実行中の動作内容としては、例えばサブシステム３が監視カメラの場合には、撮影を行っているか否か、旋回しているか否か、ズームをしているか否かおよび記録を行っているか否か、または絞りの値などの情報を含んでいてもよい。また、例えば、サブシステム３が多機能ロボットの場合には、実行中の動作内容としては、どの部品を組み立てているか、または部品の搬送を行っているか等の情報を含んでいてもよい。
【００５０】
自己の動作環境３１ｂは、周囲の動作環境などを含み、周囲の動作環境としては、自己の動作に影響を与える外部要素を含む。外部要素としては、温度、湿度、障害物による可動範囲の制限、またはノイズの状況などの情報を含む。例えば、サブシステム３がカメラの場合には、外部要素としては、撮像範囲が照明によって照らされているかなどの情報も含んでいてもよい。
【００５１】
自己の機能３１ｃとしては、自己の最大限可能な動作などの情報を含む。自己の最大限可能な動作としては、例えば、サブシステム３がカメラの場合、旋回可能な範囲、望遠によって撮像可能な距離などの情報を含む。また、例えば、サブシステム３が搬送用ロボットの場合には、自己の最大限可能な動作としては、搬送可能な最大速度および搬送可能な最大重量の情報を含んでいてもよい。また、例えば、サブシステム３が部品を組み立てるロボットの場合は、自己の最大限可能な動作としては、部品を組み立てる速度および組み立て可能な部品の種類などの情報を含んでいてもよい。
【００５２】
他者認識部３２は、ネットワーク５で接続されている他の複数のサブシステム３の各々の状態および機能を認識する。すなわち、他者認識部３２は、ネットワーク５で接続されているサブシステム３ごとの状態および機能を認識する。例えば、サブシステム３Ａの他者認識部３２は、サブシステム３Ｂの動作状態として、他者１の動作状態３２ａと、他者１の動作環境３２ｂと、他者１の機能３２ｃとを認識する。
【００５３】
他者１の動作状態３２ａは、実行中の動作内容などを含み、実行中の動作内容としては、例えばサブシステム３Ｂが監視カメラの場合には、撮影を行っているか否か、旋回しているか否か、ズームをしているか否かおよび記録を行っているか否か、または絞りの値などの情報を含んでいてもよい。また、例えば、サブシステム３Ｂが多機能ロボットの場合には、実行中の動作内容としては、どの部品を組み立てているか、または部品の搬送を行っているか等の情報を含んでいてもよい。
【００５４】
他者１の動作環境３２ｂは、周囲の動作環境などを含み、周囲の動作環境としては、他者の動作に影響を与える外部要素を含む。外部要素としては、温度、湿度、障害物による可動範囲の制限、またはノイズの状況などの情報を含む。例えば、サブシステム３Ｂがカメラの場合には、外部要素としては、撮像範囲が照明によって照らされているかなどの情報も含んでいてもよい。
【００５５】
他者１の機能３２ｃとしては、他者の最大限可能な動作などの情報を含む。他者の最大限可能な動作としては、例えば、サブシステム３Ｂがカメラの場合、旋回可能な範囲、望遠によって撮像可能な距離などの情報を含む。また、例えば、サブシステム３Ｂが搬送用ロボットの場合には、自己の最大限可能な動作としては、搬送可能な最大速度および搬送可能な最大重量の情報を含んでいてもよい。また、例えば、サブシステム３Ｂが部品を組み立てるロボットの場合は、自己の最大限可能な動作としては、部品を組み立てる速度および組み立て可能な部品の種類などの情報を含んでいてもよい。
【００５６】
自己役割設定部３３は、中央管理システム２によって決定され通知されたサブシステム３の役割（機能ともいえる）に基づいて、自己の役割を設定する。例えば、現在所定の動作を実行中の場合、自己役割設定部３３は、その動作と通知された機能とを比較し、異なっている場合には、機能（役割）を更新する。
役割実行部３４は、自己役割設定部３３において設定されたサブシステム３の機能を実行する。
【００５７】
なお、サブシステム３Ｂの他者認識部３２は、他のサブシステム３の１つとしてサブシステム３Ａの動作状態、動作環境および機能を認識する。
また、複数のサブシステム３は、複数の異なる種類の装置によって構成されていてもよいし、複数の同じ種類の装置によって構成されていてもよい。すなわち、サブシステム３Ａとサブシステム３Ｂは、同じ種類の装置であってもよいし、他の種類の装置であってもよい。
【００５８】
（中央管理システム２）
中央管理システム２は、図１に示すように、目標受付部２１と、共有記憶部２２と、構造設定部２３と、役割決定部２４（決定部の一例）と、役割通知部２５（通知部の一例）と、共有情報通信部２７（取得部の一例）と、知識作成部２８と、を有する。
目標受付部２１は、ユーザが行った目標状態の設定を受け付ける。例えば、所定の製造ラインにおいて、ユーザが、製品αを製造するという目標を操作パネルなどに入力すると、目標受付部２１は、その目標状態の設定を受け付ける。
【００５９】
共有情報通信部２７は、複数のサブシステム３と通信を行い、複数のサブシステム３の各々の自己認識部３１によって認識された自己の動作状態３１ａ、自己の動作環境３１ｂ、および自己の機能３１ｃを受信する。なお、１つのサブシステム３から全てのサブシステムの動作状態、動作環境および機能を受信してもよい。例えば、共有情報通信部２７が、サブシステム３Ａの自己認識部３１から自己のサブシステム３Ａの動作状態３１ａ、動作環境３１ｂおよび機能３１ｃを受信するとともに、サブシステム３Ａの他者認識部３２から他のサブシステム３（例えば、３Ｂ）の動作状態３２ａ、動作環境３２ｂ及び機能３２ｃを受信してもよい。
【００６０】
共有記憶部２２は、サブシステム情報ＤＢ（データベース）２２ａと、機能組み合わせ構造知識ＤＢ（データベース）２２ｂと、を有している。サブシステム情報ＤＢ２２ａは、共有情報通信部２７を介して受信したネットワーク５に繋がっている全てのサブシステム３の各々の状態および機能に関する情報を保存しているデータベースである。サブシステム３が複数の機能を保有する場合は、その複数の機能が、サブシステム情報ＤＢ２２ａに記憶されている。
【００６１】
組み合わせ構造の知識ＤＢ２２ｂは、目標状態を実現するために必要な各々のサブシステム３の機能の組み合わせ構造を複数記憶しているデータベースである。組み合わせ構造知識ＤＢ２２ｂには、目標状態ごとに、必要な各々のサブシステム３の機能の組み合わせ構造（以下組み合わせ構造ともいう）が記憶されている。
知識作成部２８は、サブシステム情報ＤＢ２２ａの各々のサブシステム３の動作状態、動作環境および機能と、目標受付部２１によって受け付けた目標状態とから、その目標状態の実現に必要な各々のサブシステム３の機能の組み合わせ構造を作成する。
【００６２】
なお、知識作成部２８は、予め複数の目標状態について、その目標状態の実現に必要な各々のサブシステム３の機能の組み合わせ構造を作成し、組み合わせ構造の知識ＤＢ２２ｂに記憶していてもよい。また、目標受付部２１が目標を受け付けるたびに、その目標状態の実現ために必要な組み合わせ構造を作成し、組み合わせ構造の知識ＤＢ２２ｂに記憶して蓄積させていってもよい。
【００６３】
また、知識作成部２８は、ＡＩ（Artificial Intelligence）を含み、機械学習の一例としてのディープラーニングを用いて、目標状態の実現に必要な組み合わせ構造を作成してもよい。ディープラーニングについては、例えば、特許文献４（特開２０１５−１６６９６２号公報）等に示されている。
構造設定部２３は、目標受付部２１によって受け付けた目標状態と、各サブシステム３の状態および機能と、組み合わせ構造の知識ＤＢ２２ｂに記憶されている組み合わせ構造とに基づいて、各々のサブシステム３の機能の組み合わせ構造を自動設定する。ここで、自動設定された機能の組み合わせ構造には、各々のサブシステム３の活性化の可否の情報も含んでいる。活性化の可否の情報とは、各々のサブシステム３の動作の可否を含む情報である。すなわち自動設定された機能の組み合わせ構造に含まれていないサブシステム３については、動作が不要であるため、動作が行われない（活性化が否の状態であり、非活性化ともいえる）。
【００６４】
役割決定部２４は、構造設定部２３で自動設定された組み合わせ構造に基づいて、各サブシステム３が実行する機能（役割）を決定する。例えば、サブシステム３Ａおよびサブシステム３Ｂが双方とも多機能ロボットである場合、サブシステム３Ａに対しては部品の製造を行わせ、サブシステム３Ｂに対しては材料や部品の搬送を行わせるというように、各サブシステムが実行する機能を決定する。ここで、サブシステム３が実行する機能とは、サブシステム３の役割と言い換えることもできる。また、サブシステム３が複数の機能を有している場合には、実行する機能とは、その複数の機能のうちの全部の機能であってもよいし、一部の機能であってもよい。
【００６５】
役割通知部２５は、各サブシステム３の自己役割設定部３３に対して、役割決定部２４で決定された各サブシステム３が実行する機能（役割）を通知する。
＜動作＞
次に、本発明に係る実施の形態１のネットワークシステムＮ１の動作を説明するとともに、本発明の機能設定方法の一例についても同時に述べる。
【００６６】
（サブシステムへの機能の通知動作）
図２は、中央管理システム２から各サブシステム３への機能（役割）を通知する動作を示すフロー図である。
はじめに、ステップＳ１０において、ユーザが、図示しない端末などによって目標の設定の入力を行うと、ステップＳ１１において、目標受付部２１によって、目標状態の設定が受け付けられる。ステップＳ１１は、目標受付ステップの一例に対応する。
【００６７】
次に、ステップＳ１２において、共有情報通信部２７は、各々のサブシステム３において認識された自己の動作状態３１ａ、自己の動作環境３１ｂおよび自己の機能３１ｃから各サブシステム３の状態（動作状態および動作環境を含む）と機能を受信する。受信した各サブシステム３の状態および機能は、サブシステム情報ＤＢ２２ａに保存される。なお、上述したように、共有情報通信部２７は、１つのサブシステム３から自己の状態および機能の情報と、他の全てのサブシステム３の機能および情報を取得しても良い。ステップＳ１２は、自己認識ステップおよび取得ステップの一例に対応する。
【００６８】
次に、ステップＳ１３において、構造設定部２３は、知識作成部２８によって予め作成されて組み合わせ構造の知識ＤＢ２２ｂに保存されている各目標状態に対応する組み合わせ構造のなかから、各サブシステム３の状態および機能を考慮して、受け付けた目標状態に対応する組み合わせ構造を選択する。一方、組み合わせ構造の知識ＤＢ２２ｂのなかに、受け付けた目標状態に対応する組み合わせ構造が存在しない場合は、知識作成部２８は、各サブシステム３の状態および機能と、受け付けた目標状態に基づいて、例えばディープラーニングを用いて組み合わせ構造を新たに作成する。そして、構造設定部２３は、新たに作成された組み合わせ構造を選択する。ステップＳ１３は、構造設定ステップの一例に対応する。
【００６９】
次に、ステップＳ１４において、役割決定部２４は、構造設定部２３において選択された組み合わせ構造に基づいて、組み合わせ対象の各サブシステム３の活性化の可否と機能（役割）を設定する。ここで、活性化の可否とは、サブシステム３の全部または一部の機能の動作の実行もしくは停止のことである。ステップＳ１４は、決定ステップの一例に対応する。
【００７０】
次に、ステップＳ１５において、通知部１５は、各サブシステム３に機能（役割）の通知を行う。ステップＳ１５は、通知ステップの一例に対応する。
なお、ステップＳ１６においていずれかのサブシステム３の状態に変化が生じ、現在の目標状態が実行できない場合は、ステップＳ１２において、共有情報通信部２７が、変化が生じたサブシステム３の自己認識部３１からの情報を受信する。そして、再度、ステップＳ１２〜Ｓ１５が実行される。すなわち、新たな組み合わせ構造が選択され、新たな組み合わせ構造に基づいて各サブシステム３の機能が決定されて各サブシステム３に機能が通知される。
【００７１】
また、ステップＳ１７において、ユーザによって異なる目標状態が入力された場合には、ステップＳ１１において、目標受付部２１において新たな目標状態が設定される。そして、ステップＳ１２〜Ｓ１５が実行され、新たな組み合わせ構造に基づいて各サブシステム３の機能が決定されて各サブシステム３に機能が通知される。
（各サブシステムにおける制御実行動作）
上記ステップＳ１５において、各サブシステム３に機能（役割）が通知された後の各々のサブシステム３における制御の実行動作について説明する。
【００７２】
図３は、各サブシステム３における自己の制御を実行する動作を示すフロー図である。  ステップＳ２０において、各サブシステム３が、中央管理システム２から機能（役割）の通知を受けると、ステップＳ２１において、自己役割設定部３３は、自己が実行する機能（役割）を設定（更新）する。
次に、ステップＳ２２において、自己役割設定部３３は、更新された自己の機能（役割）における制御内容が、現在の自己の制御内容から変化があるか否かを判定する。そして、変化がある場合には、ステップＳ２３において、自己役割設定部３３は、新たに設定した自己の機能に基づいて自己の制御内容を新たに設定する。
【００７３】
そして、ステップＳ２４において、役割実行部３４は、設定された自己の機能（役割）を実行する。
（自己の状態変化を検出した際の動作）
上記ステップＳ１６における各サブシステム３の自己の状態変化の検出時の動作について説明する。
【００７４】
図４は、各サブシステム３が自己の状態の変化を検出した際の動作を示すフロー図である。
ステップＳ３０において、サブシステム３の自己認識部３１が、自己の状態の変化を検出すると、ステップＳ３１において、自己認識部３１は、変化後の自己の状態を中央管理システム２に通知する。
【００７５】
次に、ステップＳ３２において、自己認識部３１は、自己の状態の情報を修正または更新する。
なお、自己の状態の変化とは、例えば、充電量が充電の必要な所定量以下まで減少したこと、外部からの不正アクセスを検出したこと、自己のサブシステム内に故障を検出したこと、または部品の作成に用いる材料が所定量以下まで減少したことなどを含んでもよい。
【００７６】
以上の動作によって、目標状態が設定された場合もしくはサブシステム３の状態が変化した場合等に、目標状態を実行可能なサブシステム３の機能の組み合わせ構造が自動で設定される。そして、その組み合わせ構造に基づいて、各サブシステム３の機能が決定され、その機能が各サブシステム３に通知される。これにより、設定された目標状態をネットワークシステムＮ１が実行できる。
【００７７】
次に、実施例１、２を用いて、より具体的に本実施の形態１について説明する。
（実施例１）
本実施例１のネットワークシステムＮ１は、悪意ある者に対するセキュリティを考慮したセンサネットワークである。実施例１のネットワークシステムＮ１は、サブシステム３として、複数のドアの開閉センサと、複数の画像センサを有している。
【００７８】
（実施例１のネットワークシステムＮ１の概要）
図５は、本実施例１のネットワークシステムＮ１の構成を示す図である。実施例１のネットワークシステムＮ１は、上述したサブシステム３として、ドアの開閉センサ（第１開閉センサ３０１、第２開閉センサ３０２）と、画像センサであるカメラ（第１カメラ３０３、第２カメラ３０４、第３カメラ３０５）とを備えている。
【００７９】
第１開閉センサ３０１は、所定空間４００（例えば、部屋）への入口のドア４０１の開閉を検出する。第２開閉センサ３０２は、所定空間４００からの出口のドア４０２の開閉を検出する。第１カメラ３０３、第２カメラ３０４、第３カメラ３０５は、所定空間４００の内側であって天井に配置されている。
ネットワークシステムＮ１を構成する開閉センサ（第１開閉センサ３０１、第２開閉センサ３０２）および画像センサ（第１カメラ３０３、第２カメラ３０４、第３カメラ３０５）は、データを相互に送受信できる。また、開閉センサ３０１、３０２およびカメラ３０３、３０４、３０５は、自身に外部からの物理的なアクセスがあったか否かを判断できる。例えば、自己認識部３１が、加速度センサなどを有することによって、触れられるとログを残すことができる。また、例えば、開閉センサ３０１、３０２およびカメラ３０３、３０４、３０５のコネクタの接続状態を監視する監視機能を自己認識部３１が有している。これにより、ケーブル等が接続されるとログを残すことが出来る。
【００８０】
本実施例１のネットワークシステムＮ１の目標として、所定空間４００に入ってから出るまで人を監視し続けることが設定されている。
（通常動作）
はじめに、通常時の動作について説明する。
例えば、通常時の動作の前に現在第１カメラ３０３、第２カメラ３０４および第３カメラ３０５は停止しており、第１開閉センサ３０１および第２開閉センサ３０２も停止していると想定する。
【００８１】
図６は、このように全てのセンサが停止している状態におけるサブシステム情報ＤＢ２２ａの一例を示す図である。図６のサブシステム情報ＤＢ２２ａでは、例えば、第１開閉センサ３０１および第２開閉センサ３０２は、ドア４０１、４０２の開閉の検知を停止している状態である。また、第１開閉センサ３０１および第２開閉センサ３０２は、温度・湿度・ノイズ状況などの動作環境が正常の範囲内となっている。また、第１開閉センサ３０１および第２開閉センサ３０２は、機能として、ドアの開閉検知機能を有している。また、第１カメラ３０３、第２カメラ３０４および第３カメラ３０５は、動作状態として撮影停止かつ固定状態であり、動作環境は正常範囲内である。また、第１カメラ３０３、第２カメラ３０４および第３カメラ３０５は、機能として、撮影機能、首振り機能、所定位置における固定機能を有している。なお、サブシステム情報ＤＢ２２ａに記憶されている機能は、各サブシステム３が可能な複数の機能が含まれている。
【００８２】
また、組み合わせ構造の知識ＤＢ２２ｂには、予め知識作成部２８によって作成された組み合わせ構造が記憶されている。図７は、組み合わせ構造の知識ＤＢ２２ｂの一例を示す図である。図７には、「人が所定空間４０に入ってから出るまでその人を監視する」という目標状態を実行するための複数の組み合わせ構造が示されている。
目標受付部２１が、上記目標を受け付ける（ステップＳ１１）と、共有情報通信部２７は、各々のサブシステム３が認識した状態および機能（ステップＳ１２）を受信する。
【００８３】
構造設定部２３は、上記目標を実現するために必要な組み合わせ構造として、例えば、組み合わせ構造（１）を選択する（ステップＳ１３）。そして、役割決定部２４は、サブシステム３である、第１開閉センサ３０１、第２開閉センサ３０２、第１カメラ３０３、第２カメラ３０４、および第３カメラ３０５の各機能を決定する（ステップＳ１４）。そして、役割通知部２５が、第１開閉センサ３０１、第２開閉センサ３０２、第１カメラ３０３、第２カメラ３０４、および第３カメラ３０５の各々に機能を通知する（ステップＳ１５）。第１開閉センサ３０１、第２開閉センサ３０２、第１カメラ３０３、第２カメラ３０４、および第３カメラ３０５は、各々の機能を役割実行部３４によって実行する。すなわち、第１カメラ３０３、第２カメラ３０４および第３カメラ３０５は、固定した状態で撮影可能状態となり、第１開閉センサ３０１はドア４０１の開閉の有無の検出可能状態となり、第２開閉センサ３０２はドア４０２の開閉の有無の検出可能状態となる。
【００８４】
これにより、第１開閉センサ３０１によってドア４０１が開いたことが検出されると、第１カメラ３０３が人を撮影しながらトラッキングする。続いて、第２カメラ３０４が人を撮影しながらトラッキングする。続いて、第３カメラ３０５が人を撮影しながらトラッキングする。そして、ドア４０２が開き、人が外に出て、ドア４０２が閉まったことを第２開閉センサ３０２が検出すると、各カメラによる撮影が終了される。
【００８５】
このように、第１カメラ３０３、第２カメラ３０４および第３カメラ３０５の撮影機能および、第１開閉センサ３０１および第２開閉センサ３０２の開閉機能によって、人が所定空間４００に入ってから出るまでその人を監視し続けるという目標状態が達成されている。
なお、図８は、図５に示す通常動作におけるサブシステム情報ＤＢ２２ａの一例を示す図である。図８のサブシステム情報ＤＢ２２ａでは、例えば、第１開閉センサ３０１および第２開閉センサ３０２は、ドア４０１、４０２の開閉を検知可能な状態である。また、第１開閉センサ３０１および第２開閉センサ３０２は、温度・湿度・ノイズ状況などの動作環境が正常の範囲内となっている。また、第１カメラ３０３、第２カメラ３０４および第３カメラ３０５は、動作状態として撮影可能かつ固定状態であり、動作環境として正常の範囲内である。
【００８６】
（サブシステム３の状態変化）
本実施例１において、サブシステム３の状態が変化した場合について説明する。なお、本実施例１のネットワークシステムＮ１の目標についての変更はないものとする。
上述した図４の動作フローに基づいて、第１開閉センサ３０１と第２カメラ３０４が自己に対する外部からの物理的な不正アクセスを検出すると、第１開閉センサ３０１と第２カメラ３０４は、共有情報通信部２７へ不正アクセスがあったという状態変化の情報を送信する（ステップＳ３１）。
【００８７】
すると、ステップＳ１２において、共有情報通信部２７が、第１開閉センサ３０１と第２カメラ３０４に対する不正アクセスの情報を認識して、その情報がサブシステム情報ＤＢ２２ａに記録される。
図９は、第１開閉センサ３０１と第２カメラ３０４への不正アクセスが検出された場合におけるサブシステム情報ＤＢ２２ａの一例を示す図である。
【００８８】
このように、第１開閉センサ３０１と第２カメラ３０４への不正アクセスが検出されると、構造設定部２３は、組み合わせ構造の知識ＤＢ２２ｂから、第１開閉センサ３０１と第２カメラ３０４を非活性化して目標状態を実現できる組み合わせ構造を選択する（ステップＳ１３）。ここで第１開閉センサ３０１と第２カメラ３０４の非活性化とは、動作を停止するか出力結果を使用しないことである。一方、組み合わせ構造の知識ＤＢ２２ｂに、第１開閉センサ３０１と第２カメラ３０４の非活性化して目標状態を実現できる組み合わせ構造が存在しない場合には、知識作成部２８が、そのような組み合わせ構造を作成する。なお、非活性化とは、活性化が否の状態である。
【００８９】
ここで、図７の組み合わせ構造の知識ＤＢ２２ｂには、第１開閉センサ３０１と第２カメラ３０４を非活性化として、目標状態を実現できる組み合わせ構造（３）が存在している。そのため、構造設定部２３は、この組み合わせ構造（３）を選択する。第１カメラ３０３は、旋回（首ふり）可能で最大でＸ１〜Ｘ２の範囲を撮影可能という機能を有しており、第３カメラ３０５は、旋回（首ふり）可能で最大でＺ１〜Ｚ２の範囲を撮影可能という機能を有している。このため、組み合わせ構造（３）は、第１開閉センサ３０１と第２カメラ３０４の機能の代わりに第１カメラ３０３の首ふり機能と、第３カメラ３０５の首ふり機能とを用いて目標状態を実現する組み合わせである。
【００９０】
すなわち、構造設定部２３は、第１開閉センサ３０１および第２カメラ３０４の活性化を否とし、第１カメラ３０３および第３カメラ３０５の役割を撮影機能および首ふり機能に設定し、第２開閉センサ３０２の役割を開閉検出機能に設定する（ステップＳ１４）。これによって、所定空間４００に入ってから出るまで人を監視し続ける目標状態を実現する。
【００９１】
そして、第１開閉センサ３０１、第２開閉センサ３０２、第１カメラ３０３、第２カメラ３０４および第３カメラ３０５に、各々の役割が通知される（ステップＳ１５）。
その後、第１開閉センサ３０１、第２開閉センサ３０２、第１カメラ３０３、第２カメラ３０４および第３カメラ３０５はそれぞれの役割を実行する（ステップＳ２４）。
変更後の動作について説明する。
【００９２】
第１カメラ３０３の首を振って、第１カメラ３０３がドア４０１を撮影し続ける。図１０（ａ）に示すように、第１カメラ３０３がドア４０１からの人の進入を検出すると、第１カメラ３０３が首をふりながら人のトラッキングを開始する。そして、第３カメラ３０５が撮影を開始し、第３カメラ３０５は、第１カメラ３０３が撮影している方向に向けて首を振る。第１カメラ３０３は、首を振りながら第３カメラ３０５が撮影可能な範囲まで人をトラッキングし続ける。
【００９３】
図１０（ｂ）に示すように、人が第３カメラ３０５の撮影範囲に進入すると、第３カメラ３０５が人のトラッキングを開始し、第３カメラ３０５は首を振りながら人のトラッキングを行う。第３カメラ３０５が人のトラッキングを開始すると、第１カメラ３０３はドア４０１側に首を振ってドア４０１を撮影する。
そして、ドア４０２が開き、人が外に出てドア４０２が閉まると第３カメラ３０５の撮影が終了する。
【００９４】
以上のように、通常時、ネットワークシステムＮ１を構成するセンサ（開閉センサおよび画像センサ）は連携して目的（目標）を達成する。そして、センサに対し物理的なアクセスがあった場合、悪意ある者によるアクセスである可能性を考慮し、例えば停止するなどすることによってセンサの挙動を変える。
いずれかのセンサが挙動変化した場合や停止した場合、目的（目標）を達成するために、残りのセンサが連携する。すなわち、現状から動作内容を変化させることによって、目的を達成することができるようになる。
なお、図７に示す組み合わせ構造（２）では、第１開閉センサ３０１の代わりに第１カメラ３０３の首振り機能を用いてドア４０１の監視が行われる。また、図７に示す組み合わせ構造（４）では、第２開閉センサ３０２の代わりに第３カメラ３０５の首振り機能を用いてドア４０２の監視が行われる。
【００９５】
（実施例２）
本実施例２のネットワークシステムＮ１は、異なる部品を製造可能な組み立てラインである。図１１は、本実施例２のネットワークシステムＮ１の構成を示す図である。図１１に示すように、実施例２のネットワークシステムＮ１は、サブシステム３として、搬送機Ｃ１０と、ロボットＲ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１を有している。搬送機Ｃ１０、ロボットＲ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１は、中央管理システム２にネットワーク５を介して接続されている。Ｃ１０は、コンベアや、搬送用ロボット等である。ロボットＲ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１は、製品を作成するために部品をピッキングして組み付けなどを行うハンドロボットである。
【００９６】
本実施例２のネットワークシステムＮ１は、異なる製品（完成品）を組み立て可能であって、搬送機Ｃ１０や、ロボットＲ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１などの各機能を組み合わせることにより、その都度（例えば、１回の組み立てごとに）、異なる製品の組み立てを行う。
本実施例２のネットワークシステムＮ１の目標としては、所定の製品を組み立てることである。サブシステム３の各々の機能は、次のように設定されている。搬送機Ｃ１０は、搬送速度を０〜Ｘ１の範囲で可変できる機能を有する。各々のロボットＲ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１は、水平方向の可動範囲が３６０°であり、垂直方向の可動範囲はｈ１〜ｈ２（ｍ）であり、さらにハンド部分の可動範囲やピッキング可能な部品などが予め機能として特定されている。また、搬送機Ｃ１０およびロボットＲ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１は、その他各装置の仕様に記載されているような内容の機能を有している。
【００９７】
また、搬送機Ｃ１０、およびロボットＲ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１の各々のサブシステム３は、自己の不具合を判断することができる。自己の不具合は、自己認識部３１による自己の動作状態３１ａ、自己の動作環境３１ｂ等により判断できる。
また、構造設定部２３は、いずれかのサブシステム３で不具合が判定された場合には、その装置は使用しないような組み合わせ構造を選択する。また、組み合わせ構造の知識ＤＢ２２ｂには、いずれかのサブシステム３を使用しなくても目標を実現するために、残りのサブシステム３が連携して目標を達成できるような組み合わせ構造が記憶されている。また、目標状態に対して選択可能な組み合わせ構造が組み合わせ構造の知識ＤＢ２２ｂに存在しない場合には、知識作成部２８が、目標を実現可能な組み合わせ構造を作成する。
【００９８】
このような構成のネットワークシステムによって、製品αを組み立てるという目標が設定されているとする。図１２（ａ）は、ネットワークシステムＮ１によって製品αを組み立てている状態を示す図である。また、図１３は、実施例２における組み合わせ構造の知識ＤＢ２２ｂの一例を示す図である。図１４は、製品αを組み立てている状態におけるサブシステム情報ＤＢ２２ａを示す図である。
【００９９】
組み合わせ構造の知識ＤＢ２２ｂには、図１３に示すように、目標ごとの組み合わせ構造が保存されている。詳細には、製品α、β、γの組み立てごとに各サブシステム３の機能（役割）が設定されている。この目標ごとの組み合わせ構造は、知識作成部２８によってディープラーニングを用いて予め作成されていてもよいし、ユーザが予め作成しておいてもよい。製品αを組み立てる際には、構造設定部２３によって図１４の組み合わせ構造（１）が選択されて、各サブシステムにおいて、その機能（役割）が実行される。
【０１００】
図１２（ａ）の状態では、図１４に示すように、搬送機Ｃ１０は、搬送時の速度Ｘ１、ロボットＲ１１、Ｒ１２の箇所での停止時間Ｙ１、ロボットＲ２１、Ｒ２２での停止時間Ｙ２、およびロボットＲ３１の箇所での停止時間Ｙ３で動作するよう決定されている。また、ロボットＲ１１、Ｒ１２は、筐体に部品ａ１を組み付けるよう決定されている。また、ロボットＲ２１、Ｒ２２は、筐体に部品ｂ１を組み付けるよう決定されている。また、ロボットＲ３１は、筐体に部品ｃ１を組み付けるよう決定されている。
【０１０１】
これらの機能（役割）は、構造設定部２３によって選択された組み合わせ構造に基づいて、役割決定部２４が決定し役割通知部２５によって搬送機Ｃ１０、ロボットＲ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１に通知されたものである。
搬送機Ｃ１０、ロボットＲ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１が、上記決定された動作を行うことにより、製品αが組み立てられる。
【０１０２】
（目標の変更）
次に、目標が変更された場合について説明する。
ユーザが、例えば、製品βを組み立てるという目標状態を入力すると、目標受付部２１は、その目標状態を受け付ける（ステップＳ１１）。
次に、ステップＳ１２において、搬送機Ｃ１０、ロボットＲ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１の各々が機能と状態を認識し、それらの機能と情報を、共有情報通信部２７が取得する。
【０１０３】
構造設定部２３は、実施例１と同様に、組み合わせ構造の知識ＤＢ２２ｂから、製品βを組み立てることが可能な組み合わせ構造を選択する（ステップＳ１３）。ここで、製品βを組み立てることが可能な組み合わせ構造が存在しない場合、知識作成部２８は、サブシステム情報ＤＢに記憶されている各サブシステム３の動作状態、動作環境および機能から、製品βを組み立てることが可能な組み合わせ構造を作成する。そして、ステップＳ１４において、構造設定部２３によって選択された組み合わせ構造に基づいて、役割決定部２４が搬送機Ｃ１０、ロボットＲ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１の各機能を決定する。次に、ステップＳ１５において、それらの機能が役割通知部２５によって搬送機Ｃ１０、ロボットＲ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１の各々に通知される。
【０１０４】
図１２（ｂ）は、ネットワークシステムＮ１によって製品βを組み立てている状態を示す図である。図１２（ｂ）では、搬送機Ｃ１０の機能（役割または動作内容ともいえる）は、搬送時の速度Ｘ１、ロボットＲ１１、Ｒ１２の箇所での停止時間Ｙ４、ロボットＲ２１、Ｒ２２での停止時間Ｙ５、およびロボットＲ３１の箇所での停止時間Ｙ６と決定されている。また、ロボットＲ１１、Ｒ１２の機能（役割、動作内容）は、筐体に部品ａ２とａ３を組み付けることに決定されている。また、ロボットＲ２１、Ｒ２２の機能（役割、動作内容）は、筐体に部品ｂ２とｂ３を組み付けることに決定されている。また、ロボットＲ３１の機能（役割、動作内容）は、筐体に部品ｃ２を組み付けることに決定されている。
【０１０５】
搬送機Ｃ１０、ロボットＲ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１が、上記決定された動作を行うことにより、製品βが組み立てられる。
以上のように、本実施例２のネットワークシステムＮ１によれば、製品αから製品βの組み立てへと目標状態が変更された場合であっても、目標を実現することが出来る。
（サブシステムの状態が変化した場合）
次に、サブシステム３の状態が変更された場合について説明する。
【０１０６】
ここで、このときの部品ｂ１の組み付けは、ロボットＲ２１とロボットＲ２２の共同作業とする。また、各ロボットが更に以下の機能を有しているとする。
ロボットＲ１１は、ロボットＲ２１、Ｒ３１の単体の作業を代替可能とし、ロボットＲ１２は、ロボットＲ２２の単体作業を代替可能とし、ロボットＲ３１は、ロボットＲ１１とロボットＲ２１の単体作業を代替可能とする。また、ロボットＲ１１とロボットＲ１２の共同作業は、ロボットＲ２１とロボットＲ２２の共同作業で代替可能とし、ロボットＲ２１とロボットＲ２２の共同作業は、ロボットＲ１１とロボットＲ１２の共同作業で代替可能とする。
【０１０７】
このようなネットワークシステムＮ１の構成において、図１２（ａ）において説明したように製品αを組み立てている際に、ロボットＲ２２が自己の不具合を認識した場合を想定する。
ステップＳ１６において、ロボットＲ２２が自己の不具合を認識すると、中央管理システム２へと通知が行われ、中央管理システム２は、ロボットＲ２２の状態を認識する（ステップＳ１２）。なお、ロボットＲ２２が不具合により自己の不具合を報告できない場合には、中央管理システム２は、他のロボットＲの他者認識部３２からロボットＲ２２の不具合に関する情報を受け取ることができる。
【０１０８】
次に、構造設定部２３は、ロボットＲ２２を停止した状態で、製品αの組み立て目標を達成するために、機能の組み合わせ構造の知識ＤＢ２２ｂから組み合わせ構造を選択する（ステップＳ１３）。そのような組み合わせ構造が存在しない場合、知識作成部２８が、ロボットＲ２２を非活性化とした状態で製品αの組み立てを実現できる組み合わせ構造を、搬送機Ｃ１０、ロボットＲ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１の機能および状態（動作状態および動作環境）から作成する。そして、選択された組み合わせ構造に基づいて、役割決定部２４が、搬送機Ｃ１０、ロボットＲ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１の機能を決定する（ステップＳ１４）。そして、決定された機能が、搬送機Ｃ１０、ロボットＲ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１の各々に通知される（ステップＳ１５）。
【０１０９】
図１５は、ロボットＲ２２を使用せずに、製品αを組み立てる場合の各サブシステム３の動作内容（決定された機能）の一例を示す図である。
図１５に示す例では、搬送機Ｃ１０は、搬送時の速度がＸ１であり、ロボットＲ１１、Ｒ１２の箇所での停止時間がＹ７に設定され、ロボットＲ２１、Ｒ２２の箇所での停止時間がなく、ロボットＲ３１の箇所での停止時間がＹ３に設定されている。また、ロボットＲ１１、Ｒ１２は、筐体に部品ａ１と部品ｂ１を組み付ける。ロボットＲ２１、Ｒ２２は停止する。ロボットＲ３１は、部品ｃ１を組み付ける。
【０１１０】
これによって、ロボットＲ２１を使用せずに製品αを組み立てることが可能となる。
（新しいサブシステムが追加された場合）
図１６（ａ）に示すように製品βを組み立てている状態において新しいロボットＲ３２がネットワークシステムＮ１に追加された場合について説明する。
製品βを組み立てるという目標を実行する各サブシステム３（搬送機Ｃ１０、ロボットＲ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１）の動作内容は、次のように設定されている。搬送機Ｃ１０の機能（役割、動作内容）は、搬送時の速度Ｘ１、ロボットＲ１１、Ｒ１２の箇所での停止時間Ｙ４、ロボットＲ２１、Ｒ２２での停止時間Ｙ５、およびロボットＲ３１の箇所での停止時間Ｙ６と決定されている。また、ロボットＲ１１、Ｒ１２の機能（役割、動作内容）は、筐体に部品ａ２とａ３を組み付けることに決定されている。また、ロボットＲ２１、Ｒ２２の機能（役割、動作内容）は、筐体に部品ｂ２とｂ３を組み付けることに決定されている。また、ロボットＲ３１の機能（役割、動作内容）は、筐体に部品ｃ２を組み付けることに決定されている。
【０１１１】
このような状態から新しいロボットＲ３２が追加されると、ステップＳ１６において、ロボットＲ３２が追加されたことが、ロボットＲ３２の自己認識部３１もしくは他のロボットＲの他者認識部３２によって認識されて、中央管理システム２へと通知が行われる。そして、中央管理システム２は、ロボットＲ２２の状態を認識する（ステップＳ１２）。
次に、構造設定部２３は、新しいロボットＲ３２も使用し製品βを組み立てるという目標を達成する組み合わせ構造を選択する（ステップＳ１３）。そのような組み合わせ構造が組み合わせ構造の知識ＤＢ２２ｂに存在しない場合には、知識作成部２８が、ロボットＲ３２を組み入れて製品βを組み立てるという目標を実行できる組み合わせ構造を作成する。その組み合わせ構造に基づいて、ステップＳ１４において、役割決定部２４が搬送機Ｃ１０、ロボットＲ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１、Ｒ３２の機能を決定する。そして、ステップＳ１５において、決定された機能が、搬送機Ｃ１０、ロボットＲ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１、Ｒ３２の各々に通知される。
【０１１２】
例えば、図１６（ｂ）に示すように、各サブシステム３（搬送機Ｃ１０、ロボットＲ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１、Ｒ３２）の各機能（役割、動作内容）が決定される。搬送機Ｃ１０の機能（役割、動作内容）は、搬送時の速度Ｘ１、ロボットＲ１１、Ｒ１２の箇所での停止時間Ｙ４、ロボットＲ２１、Ｒ２２での停止時間Ｙ８、およびロボットＲ３１、Ｒ３２の箇所での停止時間Ｙ９と決定されている。また、ロボットＲ１１、Ｒ１２の機能（役割、動作内容）は、筐体に部品ａ２とａ３を組み付けることに決定されている。また、ロボットＲ２１、Ｒ２２の機能（役割、動作内容）は、筐体に部品ｂ２を組み付けることに決定されている。また、ロボットＲ３１、Ｒ３２の機能（役割、動作内容）は、筐体に部品ｂ３と部品ｃ２を組み付けることに決定されている。
以上のように機器の機能（役割ともいえる）を変更することによって、新しいサブシステム３が導入された場合であっても、ネットワークシステムＮ１は、目標状態を実行できる。
【０１１３】
（実施の形態２）
次に、本発明にかかる実施の形態２におけるネットワークシステムＮ２について説明する。本実施の形態２のネットワークシステムＮ２では、各サブシステム３の役割を設定する機能が、いずれかのサブシステム３に設けられている。本実施の形態２におけるネットワークシステムＮ２は、実施の形態１のネットワークシステムＮ１と比較して、中央管理システム２を備えていない。本実施の形態２では、実施の形態１との相違点を中心に説明する。尚、実施の形態２において、実施の形態１と同様の構成については同一の符号を付す。
【０１１４】
＜構成＞
図１７は、本実施の形態２のネットワークシステムＮ２の構成を示すブロック図である。図１７に示すように、ネットワークシステムＮ２は、複数のサブシステム３（３Ｃ、３Ｄ）と、共有記憶部２２とを備えている。それぞれのサブシステム３（３Ｃ、３Ｄ）は、目標受付部２１と、自己認識部３１と、他者認識部３２と、自己役割設定部３３と、役割実行部３４と、通信部３５とを有する。目標受付部２１は、実施の形態１では、中央管理システム２に設けられているが、本実施の形態２では、各々のサブシステム３に設けられている。各々のサブシステム３は、各々の通信部３５を介してネットワーク５に接続されている。
【０１１５】
共有記憶部２２は、ネットワーク５に接続されており、図１７ではサブシステム３とは別の装置として設けられている。
共有記憶部２２には、実施の形態１と同様に、サブシステム情報ＤＢ２２ａと組み合わせ構造の知識ＤＢ２２ｂが設けられている。サブシステム情報ＤＢ２２ａには、複数のサブシステム３の通信部３５から、各々の自己認識部３１によって認識された自己の動作状態３１ａ、自己の動作環境３１ｂ、および自己の機能３１ｃが送信されてくる。なお、１つのサブシステム３の自己認識部３１および他者認識部３２から得た全てのサブシステムの動作状態、動作環境および機能を受信してもよい。
【０１１６】
また、ネットワークシステムＮ２に接続されている複数のサブシステム３のうち１つのサブシステム３が、構造設定部２３と、役割決定部２４と、を備えている。本実施の形態２では、サブシステム３Ｃが構造設定部２３および役割決定部２４を備えている。すなわち、本実施の形態２では、実施の形態１の中央管理システム２の代わりに、サブシステム３Ｃによって組み合わせ構造が選択され、自己のサブシステム３Ｃを含めた全てのサブシステム３の機能（役割または動作内容ともいえる）を決定する。
【０１１７】
また、本実施の形態２のネットワークシステムＮ２では、各々のサブシステム３が目標受付部２１を有しているため、いずれかのサブシステム３に目標状態が入力されれば、ネットワーク５を介して目標状態に関する情報を相互に連絡することが出来る。
＜動作＞
次に、本実施の形態２のネットワークシステムＮ２の動作について説明するとともに、本発明の機能設定方法の一例についても同時に述べる。
【０１１８】
図１８は、本実施の形態２のネットワークシステムＮ２の動作を示すフロー図である。
ステップＳ４０において、ユーザが図示しない端末などによって目標状態の設定の入力を行うと、ステップＳ４１において、いずれかのサブシステム３の目標受付部２１によって目標状態の設定が受け付けられる。ここで、構造設定部２３を有していないサブシステム３（図１７では、サブシステム３Ｄ）が目標設定を受け付けた場合には、通信部３５およびネットワーク５を介して構造設定部２３を有するサブシステム３に通信される。これにより、構造設定部２３を有するサブシステム３Ｃが、受け付けられた目標状態を受信する。ステップＳ４１は、目標受付ステップの一例に対応する。
【０１１９】
次に、ステップＳ４２において、構造設定部２３を有するサブシステム３Ｃは、自己認識部３１および他者認識部３２によって、各々のサブシステム３の機能および状態を認識する。ステップＳ４２は、自己認識ステップおよび取得ステップの一例に対応する。
次に、ステップＳ４３において、サブシステム３Ｃの構造設定部２３は、組み合わせ構造の知識ＤＢ２２ｂから、受け付けた目標状態を実現するために必要な機能の組み合わせ構造を選択する。すなわち、構造設定部２３は、組み合わせ構造の知識ＤＢ２２ｂに保存されている各目標状態に対応する組み合わせ構造のなかから、受け付けた目標状態に対応する組み合わせ構造を選択する。各目標状態に対応する組み合わせ構造は、知識作成部２８によって例えばディープラーニング等の機械学習を用いて予め作成されている。一方、組み合わせ構造の知識ＤＢ２２ｂのなかに、受け付けた目標状態に対応する組み合わせ構造が存在しない場合は、知識作成部２８は、目標状態と各サブシステム３の動作状態、動作環境および機能とに基づいて、組み合わせ構造を作成する。そして、構造設定部２３は、新たに作成された組み合わせ構造を選択する。ステップＳ４３は、構造設定ステップの一例に対応する。
【０１２０】
次に、ステップＳ４４において、役割決定部２４は、構造設定部２３において選択された組み合わせ構造に基づいて、組み合わせ対象の各サブシステム３の活性化の可否と機能（役割）を設定する。ここで、活性化の可否とは、サブシステム３の全部または一部の機能の動作の実行もしくは停止のことである。ステップＳ４４は、決定ステップの一例に対応する。
【０１２１】
次に、ステップＳ４５において、サブシステム３Ｃは、通信部３５を介して他のサブシステム３（３Ｄ等）に機能（役割）の通知を行う。ステップＳ４５は、通知ステップの一例に対応する。
次に、ステップＳ４６において、自己役割設定部３３は、自己の機能（役割）を設定（更新）する。
【０１２２】
次に、ステップＳ４７において、自己役割設定部３３は、更新された自己の機能における制御内容が、現在の自己の制御内容から変化があるか否かを判定する。そして、変化がある場合には、ステップＳ４８において、自己役割設定部３３は、新たに設定した自己の機能（役割）に基づいて自己の制御内容を新たに設定する。
そして、ステップＳ４９において、各々のサブシステム３は、役割実行部３４において設定された自己の制御内容を実行する。
【０１２３】
なお、ステップＳ５０においていずれかのサブシステム３の状態に変化が生じて現在の目標状態が実行できない場合は、ステップＳ４２において、サブシステム３Ｃは変化が生じたサブシステム３の自己認識部３１からの情報を受信し、再度ステップＳ４２〜Ｓ４５を実行する。すなわち、新たな組み合わせ構造が選択され、新たな組み合わせ構造に基づいて各サブシステム３の機能が決定されて各サブシステム３に機能が通知される。
【０１２４】
また、ステップＳ５１において、ユーザによって異なる目標状態が入力された場合には、ステップＳ４１において、いずれかのサブシステム３の目標受付部２１において新たな目標が設定される。そして、ステップＳ４２〜Ｓ４５が実行され、新たな組み合わせ構造に基づいて各サブシステム３の機能が決定されて各サブシステム３に機能が通知される。
なお、本実施の形態２における実施例としては、例えば、実施例１の複数のサブシステム３（第１開閉センサ３０１、第２開閉センサ３０２、第１カメラ３０３、第２カメラ３０４、第３カメラ３０５）のいずれか１つが図１７に示すような構造設定部２３および役割決定部２４を有するサブシステム３Ｃであればよい。また、例えば、実施例２の複数のサブシステム３（搬送機Ｃ１０、ロボットＲ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１）のいずれか１つが図１７に示すような構造設定部２３および役割決定部２４を有するサブシステム３Ｃであればよい。
【０１２５】
（実施の形態３）
次に、本発明に係る実施の形態３におけるネットワークシステムＮ３について説明する。
＜構成＞
図１９は、本実施の形態３のネットワークシステムＮ３の構成を示すブロック図である。
【０１２６】
本実施の形態３のネットワークシステムＮ３は、実施の形態２のネットワークシステムＮ２と異なり、各々のサブシステム３が自己の役割を決定し、役割調整決定部３７を有するいずれかのサブシステム３が各々のサブシステム３の役割の調整を行う。本実施の形態３において、実施の形態２と異なる点を中心に説明する。尚、実施の形態３において、実施の形態２と同様の構成については同一の符号を付す。
【０１２７】
本実施の形態３のネットワークシステムＮ３は、複数のサブシステム３（３Ｅ、３Ｆ）と、共有記憶部２２とを備える。各々のサブシステム３は、目標受付部２１と、自己認識部３１と、他者認識部３２と、自己役割設定部３３と、役割実行部３４と、通信部３５と、自己役割決定部３６（構造設定部の一例）とを有する。また、ネットワーク５に接続されている複数のサブシステム３のうちいくつかのサブシステム３（例えば、サブシステム３Ｅ）には、知識作成部２８と、役割調整決定部３７（機能決定部の一例）が設けられている。
【０１２８】
知識作成部２８は、サブシステム情報ＤＢ２２ａの各々のサブシステム３の動作状態、動作環境および機能と、目標受付部２１によって受け付けた目標状態とから、その目標状態の実現に必要な各々のサブシステム３の機能の組み合わせ構造を作成する。
各々のサブシステム３が有する自己役割決定部３６は、いずれかのサブシステム３が受け付けた目標状態に基づいて、組み合わせ構造の知識ＤＢ２２ｂから、その目標状態を実現できる組み合わせを選択し、自己の役割を決定する。そして、各々のサブシステム３は、役割を調整するリーダとして設定されているサブシステム３に送信する。例えば、サブシステム３Ｅがリーダとして設定されている場合には、サブシステム３Ｅに他のサブシステム３から、各々のサブシステム３が決定した自己の役割が送信される。
【０１２９】
役割調整決定部３７は、他のサブシステム３（例えば、３Ｆ）から送信されてくる役割に基づいて、自己を含む複数のサブシステム３の役割を調整して、各々のサブシステム３の役割を決定する。なお、役割調整決定部３７を有するサブシステム３が複数存在する場合には、今回の目標に対して調整を行うサブシステム３がその都度決められる。そして、決まったサブシステム３のみがリーダとして役割調整決定部３７を使って調整を行い、その他のサブシステムはそれに従う。また、役割調整決定部３７を有するサブシステム３が一つしか存在しない場合には、そのサブシステム３が常に役割調整決定部３７を使って調整を行う。
【０１３０】
＜動作＞
次に、本実施の形態３のネットワークシステムＮ３の動作について説明するとともに、本発明の機能設定方法の一例についても同時に述べる。
図２０は、本実施の形態３のネットワークシステムＮ３の動作を示すフロー図である。
ステップＳ６０において、ユーザが図示しない端末などによって目標状態の設定の入力を行うと、ステップＳ６１において、いずれかのサブシステム３の目標受付部２１によって目標状態の設定が受け付けられる。ここで、いずれかのサブシステム３が受け付けた目標状態は、通信部３５およびネットワーク５を介して他の全てのサブシステム３に通信される。ステップＳ６１は、目標受付ステップの一例に対応する。
【０１３１】
次に、ステップＳ６２において、各々のサブシステム３が、自己認識部３１と他者認識部３２によって、ネットワークシステムＮ３に接続されている全てのサブシステム３の機能と状態を把握する。ステップＳ６２は、自己認識ステップおよび取得ステップの一例に対応する。
次に、ステップＳ６３において、各々のサブシステム３が、自己役割決定部３６において、組み合わせ構造の知識ＤＢ２２ｂに記憶されている組み合わせ情報から目標状態を実現するために必要な機能の組み合わせ構造を選択する。ステップＳ６３は、構造設定ステップの一例に対応する。
【０１３２】
なお、受け付けた目標状態を実現する組み合わせ構造がない場合には、知識作成部２８および役割調整決定部３７が設けられているサブシステム３は、知識作成部２８において組み合わせ構造を作成する。一方、知識作成部２８を有していないサブシステム３は、「選択肢なし」との情報を選択することになる。
次に、ステップＳ６４において、各々のサブシステム３は、それぞれが選択もしくは作成して選択した組み合わせ構造に基づいて、自己の活性化の可否と役割を決定する。
【０１３３】
次に、ステップＳ６５において、調整を行うサブシステム３が、他のサブシステム３から活性化の可否と役割の情報を受け付ける。ここで、サブシステム３Ｅが調整を行うサブシステム３とする。
次に、ステップＳ６６において、サブシステム３Ｅの役割調整決定部３７は、自己が選択した組み合わせ構造と、他のサブシステム３からの情報を比較する。
【０１３４】
そして、役割調整決定部３７は、ステップＳ６７において違いがあると判断した場合には、ステップＳ６８において、違いのあったサブシステム３に対して自己（サブシステム３Ｅ）が選択した組み合わせ構造に基づく活性化の可否と役割の情報を連絡する。ステップＳ６６、Ｓ６７は、決定ステップの一例に対応する。
また、役割調整決定部３７は、違いのなかったサブシステム３に対しては、ステップＳ６９において、修正がない旨を連絡する。違いのあったサブシステム３では、連絡された情報に基づいて、自己役割設定部３３において自己の役割を更新する。一方、違いのなかったサブシステム３では、自らが決定した役割に基づいて、自己役割設定部３３において自己の役割を更新する。なお、以前の役割と同じ場合には、更新が行われなくても良い。
【０１３５】
次に、ステップＳ７０において、サブシステム３Ｅは、制御開始を他のサブシステム３（例えば、３Ｆ）に通信部３５を介して連絡する。連絡を受けると、サブシステム３Ｅ以外の他のサブシステム３は、更新された役割に基づいて、役割実行部３４において役割を実行する。
その後、ステップＳ７１において、サブシステム３Ｅは、自己役割設定部３３において自己の役割を更新し、役割実行部３４で自己の役割を実行する。
【０１３６】
なお、ステップＳ６７において、役割調整決定部３７によって違いがないと判断された場合には、役割調整決定部３７は、ステップＳ７２において、各々のサブシステム３に修正がない旨と制御開始の連絡を行う。次に、制御はステップＳ７１へと進み、自己（サブシステム３Ｅ）の制御が実行される。ステップＳ６８、Ｓ６９、Ｓ７２は、通知ステップの一例に対応する。
【０１３７】
また、ステップＳ７３においていずれかのサブシステム３の状態に変化が生じ、現在の目標状態が実行できない場合は、ステップＳ６２において、各々のサブシステム３は、他者認識部３２からの情報を受信し、再度、ステップＳ６２〜Ｓ７２が実行される。すなわち、各々のサブシステム３が新たな組み合わせ構造が選択し、新たな組み合わせ構造に基づいて各サブシステム３が自己の機能を決定する。そして、サブシステム３Eが、他のサブシステム３の機能の調整を行う。
【０１３８】
また、ステップＳ７４において、ユーザによって異なる目標状態が入力された場合には、ステップＳ６１において、いずれかのサブシステム３の目標受付部２１において新たな目標が設定される。そして、ステップＳ６２〜Ｓ７２が実行され、新たな組み合わせ構造に基づいて各サブシステム３の機能が決定されて各サブシステム３がその機能を実行する。
【０１３９】
（実施の形態４）
本実施の形態４のネットワークシステムＮ４は、上記実施の形態３のネットワークシステムＮ３と異なり、ネットワーク５に接続されている全てのサブシステム３に知識作成部２８および役割調整決定部３７が設けられている。
図２１は、本実施の形態４のおけるネットワークシステムＮ４の構成を示すブロック図である。図２１に示すように、本実施の形態４のネットワークシステムＮ４では、全てのサブシステム３（図２１では、サブシステム３Ｇ、３Ｈ）に知識作成部２８および役割調整決定部３７が設けられている。
【０１４０】
実施の形態３においても述べたが、複数のサブシステム３が役割調整決定部３７を有しているため、目標状態が設定されると、システム全体の調整を行うリーダとなるサブシステム３が決められる。そして、そのサブシステム３が役割調整決定部３７を用いて他のサブシステム３の役割の調整を行う。リーダとなるサブシステム３は、目標ごとに変更されてもよいし、変更されなくてもよい。また、サブシステム３の状態に基づいて、リーダとなるサブシステム３が変更されてもよい。
【０１４１】
このように、全てのサブシステム３に知識作成部２８および役割調整決定部３７が設けられていることにより、どのサブシステム３が故障や停止した場合であっても、他のサブシステム３が代わりとして機能できるため、安定して目標状態を実現できる。
なお、ネットワークシステムＮ４の動作は図２０に示すフロー図における動作と同じであるため、説明を省略する。
【０１４２】
（実施例３）
次に、実施例３を用いて実施の形態４のネットワークシステムＮ４について詳細に説明する。
本実施例３のネットワークシステムＮ４は、電源の状態を考慮して相互に通信エリアを補完しあうマルチホップ通信ネットワークである。図２２は、本実施例３のネットワークシステムＮ４の構成を示す図である。
【０１４３】
本実施例３のネットワークシステムＮ４のサブシステム３としては、中継機ＲＰ１、中継機ＲＰ２、中継機ＲＰ３、中継機ＲＰ４が設けられている。これらの中継機ＲＰ１、中継機ＲＰ２、中継機ＲＰ３、中継機ＲＰ４は、センサ等の情報出力装置４１と、最終的に情報を取得する上位装置４２との間に設けられている。すなわち、情報出力装置４１から発信された情報が、中継機ＲＰ１、中継機ＲＰ２、中継機ＲＰ３、中継機ＲＰ４の全部または一部を介して上位装置４２まで送信される。
【０１４４】
また、目標状態としては、例えば以下の内容が挙げられる。
・例１として、ネットワークシステムＮ４全体のバッテリ稼働時間を最長化する。
・例２として、メンテナンス予定日時など、特定のタイミングまで動作し続ける。
・例３として、全ての中継機のバッテリ消費が均等になるように制御する。
・例４として、特に重要な特定データについて、一定の時間内に伝達する。
【０１４５】
そして、各中継機ＲＰ１、ＲＰ２、ＲＰ３、ＲＰ４は、以下の機能を有しているとする。
・各中継機ＲＰ１、ＲＰ２、ＲＰ３、ＲＰ４は、自己のバッテリ残量を把握する機能と、バッテリの消耗に影響する情報を把握する機能を有する。バッテリの消耗に影響する情報とは、例えば温度、通信の集中度等であって、上述した自己の動作環境３１ｂに含まれる。
・各中継機ＲＰ１、ＲＰ２、ＲＰ３、ＲＰ４は、相互に通信を行うことが可能であり、目標に応じて通信の設定を変化させることが出来る。
・各中継機ＲＰ１、ＲＰ２、ＲＰ３、ＲＰ４は、電波出力を高出力化することで中継を１段飛ばすことが可能である。また、低出力化することで干渉する範囲を狭くすることが出来る。
・各中継機ＲＰ１、ＲＰ２、ＲＰ３、ＲＰ４は、伝送レートを落とすことでバッテリ消費を抑えて長距離通信が可能である。
・各中継機ＲＰ１、ＲＰ２、ＲＰ３、ＲＰ４は、通信タイミングをずらすことで通信の衝突回避が可能である。
・各中継機ＲＰ１、ＲＰ２、ＲＰ３、ＲＰ４は、送信アンテナの指向性を調整することで長距離通信や通信の衝突回避が可能である。
【０１４６】
このような構成において、目標が上記例２に設定されているとする。すなわち、メンテナンス予定日時まで情報出力装置４１から上位装置４２まで送信し続けることが目標として設定されている。
また、動作内容として、以下の内容が規定されているとする。
・全ての中継機の伝送レートはＸ（ｋｂｐｓ）に設定されており、バッテリ残量が５％以下になると機能が停止される。
・はじめは、中継機ＲＰ１が、リーダとして全体のコントロールを行うこととし、他の中継機ＲＰの機能の組み合わせ構造を決定する。中継機ＲＰ１のバッテリ残量が１５％以下になると調整決定機能（リーダの機能）を他の中継機に移す。
・中継機ＲＰ１〜ＲＰ４は、時間Ｔ１ごとに各自のバッテリ残量を中継機ＲＰ１まで連絡する。
【０１４７】
図２２では、情報出力装置４１から出力された情報が、中継機ＲＰ４、中継機ＲＰ３、中継機ＲＰ２、中継機ＲＰ１の順に伝達されて上位装置４２に送信される。このように、情報を送信していると、中継機ＲＰ１、ＲＰ２、ＲＰ３、ＲＰ４のバッテリ残量が低下する。
図２３（ａ）は、初期の動作状態を示し、図２３（ｂ）は、メンテナンス５日前の動作を示し、図２３（ｃ）は、メンテナンス前日の動作を示す。
【０１４８】
例えば、中継機ＲＰ１が他の中継機ＲＰ２、ＲＰ３、ＲＰ４の機能を調整する状態において、図２３（ａ）および図２３（ｂ）に示すように中継機ＲＰ１のバッテリ残量が８０％から１５％になり、中継機ＲＰ３のバッテリ残量が５％になったとする。
このようにサブシステム３の状態に変化があった場合（ステップＳ７３）、中継機ＲＰ１から中継機ＲＰ２に他の中継機を調整する機能が移動するとともに、中継機ＲＰ３の動作が停止する。
【０１４９】
この場合、中継機ＲＰ１、ＲＰ２、ＲＰ３、ＲＰ４は、各々の自己認識部３１によって自己の動作状態３１ａ、自己の動作環境３１ｂおよび自己の機能３１ｃを認識するとともに、他者認識部３２によって他の中継機の動作状態３２ａ、動作環境３２ｂおよび機能３２ｃを認識する（ステップＳ６２）。
中継機ＲＰ３は停止するため、中継機ＲＰ１、ＲＰ２、ＲＰ４の各々の自己役割決定部３６が、組み合わせ構造の知識ＤＢ２２ｂから中継機ＲＰ３を使用せずに、目標を実現できる組み合わせを選択し（ステップＳ６３）、自己の役割を決定する（ステップＳ６４）。なお、ネットワークシステムＮ４の全体を調整する中継機ＲＰ２は、自己の役割とともに、他の中継機ＲＰ１、ＲＰ３、ＲＰ４の役割も決定する。また、中継機ＲＰ２には、他の中継機ＲＰ１および中継機ＲＰ４から、それぞれが決定した自己の役割が送信される（ステップＳ６５）。
【０１５０】
中継機ＲＰ２は、役割調整決定部３７で中継機ＲＰ２が決定した中継機ＲＰ１の役割と、中継機ＲＰ１が決定した自己の役割を比較し（ステップＳ６６）、異なっている場合（ステップＳ６７）には、中継機ＲＰ２が決定した役割を中継機ＲＰ１に通知して実行させる（図２０のステップＳ６８）。一方、中継機ＲＰ２の決定した中継機ＲＰ１の役割と、中継機ＲＰ１自身が決定した中継機ＲＰ１の役割が同じ場合には、修正がない旨を連絡する（ステップＳ６９、Ｓ７２）また、中継機ＲＰ２は、中継機ＲＰ４に対しても同様の制御を行う。
【０１５１】
これにより、図２３（ｂ）に示すように、中継機ＲＰ４は、情報出力装置４１からＸ（ｋｂｐｓ）で受信した情報を、中継機ＲＰ３を飛ばし中継機ＲＰ２にＹ（ｋｂｐｓ）で送信する。なお、伝送レートＹは、Ｘよりも小さい値となっている。中継機ＲＰ２は、中継機ＲＰ４から受け取った情報を、中継機ＲＰ１にＸ（ｋｂｐｓ）で送信する。中継機ＲＰ１は、中継機ＲＰ２から受け取った情報を上位装置４２にＸ（ｋｂｐｓ）で送信する。
【０１５２】
以上のようにして、全体を調整する中継機（サブシステム３）を変更し、組み合わせ構造を変更することによって、情報出力装置４１から上位装置４２まで情報の通信を行うことが出来る。
次に、図２３（ｂ）の状態から更に各中継機のバッテリが低下し、図２３（ｃ）に示すように、中継機ＲＰ１のバッテリ残量が５％になると、サブシステム３の状態が変化（ステップＳ７３）したとしてステップＳ６２〜ステップＳ７２が行われる。そして、図２３（ｃ）に示すように、情報出力装置４１から出力された情報を、Ｘ（ｋｂｐｓ）の伝送レートで中継機ＲＰ４が受信する。中継機ＲＰ４は、受け取った情報を、中継機ＲＰ３を飛ばして中継機ＲＰ２へとＺ（ｋｂｐｓ）で送信する。なお、伝送レートは、Ｘ＞Ｙ＞Ｚとなっている。そして、中継機ＲＰ２は、中継機ＲＰ４から受け取った情報を、中継機ＲＰ１を飛ばして上位装置４２へとＹ（ｋｂｐｓ）で送信する。
【０１５３】
以上のように、本実施例３のネットワークシステムＮ３では、組み合わせ構造を変更することによって、メンテナンスまで情報出力装置４１からの情報を上位装置４２へと送信するという目標を達成できるように制御が行われる。
なお、実施例３のように複数の中継機が設けられたシステムにおいて、実施の形態１で説明したようなネットワークシステムＮ１が適用されてもよい。すなわち、中継機ＲＰ１、ＲＰ２、ＲＰ３、ＲＰ４を管理する中央管理システムが設けられ、中央管理システムにおいて、各中継機のそれぞれの機能が決定されてもよい。
【０１５４】
また、実施例３のように複数の中継機が設けられたシステムにおいて、実施の形態２、３で説明したようなネットワークシステムＮ２、Ｎ３が適用されてもよい。その場合、少なくとも他のサブシステム３の役割を決定または調整するリーダとなるサブシステム３は、決定または調製する機能だけは発揮できるようにバッテリの残量を調整する必要がある。
【０１５５】
（実施例４）
次に、実施例４のネットワークシステムを用いて、サブシステム３の状態が変化した場合（サブシステム３の追加、サブシステム３の離脱）、目標が変化しサブシステム３の状態が変化した場合等について説明する。
実施例４のネットワークシステムは、実施の形態１〜４で説明したいずれのネットワークシステムＮ１、Ｎ２、Ｎ３、Ｎ４を用いてもよいが、一例としてネットワークシステムＮ４を用いて説明する。
【０１５６】
すなわち、本実施例４では、各々のサブシステム３が、知識作成部２８および役割調整決定部３７を有している。
本実施例４のネットワークシステムＮ４は、複数のロボットを用いた製品の組み立て工場を想定している。ロボットは、工場での製品組立の実施、工場の監視、他のロボットやセンサなどの情報の中継（ホッピング）などを行う。
【０１５７】
図２４は、本実施例４のネットワークシステムＮ４の構成を示す図であり、工場５０の作業場を上から見たイメージ図である。
ネットワークシステムＮ４は、サブシステム３として、部品や製品などの搬送を専門に行う搬送用ロボットＲＤ１〜ＲＤ７と、その他の作業を行う作業ロボットＲＷ１〜ＲＷ９と、３ＤプリンタＰ１、Ｐ２と、検査装置Ｓ１とを有している。
【０１５８】
次に、搬送用ロボットＲＤ１〜ＲＤ７と、作業ロボットＲＷ１〜ＲＷ９が有している機能について説明する。ここでの機能とは役割分担とも言い換えることができる。
・各作業ロボットＲＷ１〜ＲＷ９はどの作業でも行うことが出来る。
・搬送用ロボットＲＤ１〜ＲＤ７は搬送のみ行う。
・各ロボットＲＤ１〜ＲＤ７、ＲＷ１〜ＲＷ９には役割が与えられ、その役割をこなす。
・リーダの役割を行うロボットが１体設けられ、そのリーダが各ロボットの役割調整を行う。
・リーダは各ロボットや各生産装置、各検査装置と通信ができ、他者認識部３２により各者を認識している。
・リーダは、各ロボットの現在の充電量（他者の動作状態３２ａ）を他者認識部３２によって把握しており、充電量に応じた役割と効率的な作業交代の流れに応じて、各ロボットを動かす。
・各作業ロボットＲＷ１〜ＲＷ９は、実行する作業によって消費電力が異なる。搬送用ロボットＲＤ１〜ＲＤ７の消費電力はほぼ同じである。
・各ロボットは、自己の充電量が一定量以下に減ったら、リーダから役割の交代連絡が来て、充電場所ＢＳに行って充電する。
・充電場所ＢＳにいるロボットはリーダからの役割の割り振りに基づいて、いずれかのロボットと交代するか、いずれかのロボットと共同作業を行うか、新たな作業を行う等の作業を行う。
・各ロボットや装置は、通信可能な範囲の他のロボットや装置と相互に通信可能である。また、他のロボットや装置の情報を他のロボットにホッピング（中継）が可能である。
【０１５９】
（初期状態）
初期状態として、実施例４のネットワークシステムＮ４が、以下の目標状態を同時に実行しているとする。
・目標（１）製品αの生産および梱包と外の所定位置への搬送（納期：Ｔ１、生産目標数：Ｘ）
・目標（２）侵入者（不審者）の監視、通報、排除
・目標（３）所定時間ごとに工場内の装置の状態と生産量を上位装置に報告
図２５は、図２１に示すサブシステムの情報ＤＢ２２ａに記憶されているロボットＲＷ１〜ＲＷ９とロボットＲＤ１〜ＲＤ７の動作状態を示す図である。これらのサブシステムの情報は、各サブシステム３が自己認識部３１と他者認識部３２によって得られる情報ともいえる。
【０１６０】
図２５に示すように、ロボットＲＷ１は、システム全体の役割調整を行うリーダである。ロボットＲＷ１は、工場５０のドア５１、５２からの侵入者の認証と、不審者の監視、通報、および排除を行う。さらに、ロボットＲＷ１は、各装置から得た情報を収集して、上位装置に連絡する。
ロボットＲＷ２、ＲＷ３は、共同でセル生産（セル生産場所Ｃ１参照）を行い、部品aを作成する。
【０１６１】
ロボットＲＷ４は、単体でセル生産（セル生産場所Ｃ２参照）を行い、部品aを作成する。
ロボットＲＷ５は、３ＤプリンタＰ１で作成された部品ｂを組み付ける。
ロボットＲＷ６は、３ＤプリンタＰ２で作成された部品ｃを組み付ける。
ロボットＲＷ７は、完成した製品αの梱包と、不具合製品の移動を行う。
【０１６２】
ロボットＲＷ８、ＲＷ９は、充電中である。
ロボットＲＤ１〜ＲＤ６は、「セル生産場所Ｃ１、Ｃ２→３ＤプリンタＰ１、Ｐ２→検査装置Ｓ１→梱包→セル生産場所Ｃ１、Ｃ２→  ・・・  」の順番で移動しながら部品および製品の搬送を行う。図中点線Ｍ１は、搬送ルートを示す。
ロボットＲＤ７は、充電中である。
【０１６３】
ロボットＲＤ８は、梱包が完了した製品α（完成品）を外に搬送する（図中点線Ｍ２参照）。
３ＤプリンタＰ１は、部品ｂを作成する。
３ＤプリンタＰ２は、部品ｃを作成する。
検査装置Ｓ１は、製品αの検査を行う。
【０１６４】
全装置は、リーダ（ロボットＲＷ１）に対して所定の間隔で自己の状態を連絡する。
（サブシステム３の状態変化（サブシステムの追加））
次に、サブシステム３の追加の例として、初期の状態からロボットＲＷ８の充電が完了した場合について説明する。なお、目標状態は変化していない。
ネットワークシステムＮ４内の各々のサブシステム３（ロボットＲＤ１〜ＲＤ７、ロボットＲＷ１〜ＲＷ９、３ＤプリンタＰ１、Ｐ２、検査装置Ｓ１）が、ロボットＲＷ８の充電の完了を認識する（図２０のステップＳ６２参照）。そして、ステップＳ６３において、各々のサブシステム３が、組み合わせ構造の知識ＤＢ２２ｂからロボットＲＷ８も利用して目標を実現できる組み合わせ構造を選択し、ステップＳ６４において自己の活性化の可否と役割を決定する。なお、選択可能な組み合わせ構造が存在しない場合には、知識作成部２８によって新たな組み合わせ構造が作成される。そして、リーダであるロボットＲＷ１には、他のサブシステム３（ロボットＲＤ１〜ＲＤ７、ロボットＲＷ２〜ＲＷ９、３ＤプリンタＰ１、Ｐ２、検査装置Ｓ１）から自己の役割が送信される。またリーダであるロボットＲＷ１は、自己の役割とともに、他のサブシステム３の役割も決定する。
【０１６５】
ロボットＲＷ１は、役割調整決定部３７によって、自己が決定した他のサブシステム３の役割と、他のサブシステム３が自己で決定した役割を比較する（ステップＳ６６）。そして、ステップＳ６７において異なっている場合には、リーダであるロボットＲＷ１が決定した他のサブシステム３の役割を他のサブシステム３に通知して実行させる（図２０のステップＳ６８）。一方、リーダであるロボットＲＷ１の決定した他のサブシステム３の役割と、他のサブシステム３自身が決定した役割が同じ場合には、修正がない旨を連絡する（ステップＳ６９、Ｓ７２）。
【０１６６】
このように、調整を行うことによって新たな組み合わせ構造に基づいて、各々のサブシステム３の機能が設定される。
図２６（ａ）は、組み合わせ構造の変更後のサブシステム３の動作状態を示すサブシステム情報ＤＢ２２ａの一部を示す図である。図２６（ｂ）は、組み合わせ構造変更後の工場５０の状態を上から視たイメージ図である。
【０１６７】
図２６（ａ）および図２６（ｂ）に示すように、ロボットＲＷ８が、セル生産場所Ｃ２へと移動する。そして、ロボットＲＷ８の移動後、ロボットＲＷ４とロボットＲＷ８が共同でセル生産を行い、部品ａを作成する。
（サブシステム３の状態変化（サブシステムの離脱））
次に、サブシステム３の離脱の例として、初期の状態からロボットＲＷ６の充電量が低下し充電が必要となった場合について説明する。なお、目標状態は変化していない。
【０１６８】
ネットワークシステムＮ４内の各々のサブシステム３（ロボットＲＤ１〜ＲＤ７、ロボットＲＷ１〜ＲＷ９、３ＤプリンタＰ１、Ｐ２、検査装置Ｓ１）が、ロボットＲＷ６の充電量の低下による充電の必要を認識する（図２０のステップＳ６２参照）。
そして、ステップＳ６３において、各々のサブシステム３の自己役割決定部３６は、組み合わせ構造の知識ＤＢ２２ｂからロボットＲＷ６が製品の組み立てから離脱した状態で目標を実現できる組み合わせ構造を選択する。そして、ステップＳ６４において、各々のサブシステム３の自己役割決定部３６は、自己の活性化の可否と役割を決定する。なお、選択可能な組み合わせ構造が存在しない場合には、知識作成部２８によって新たな組み合わせ構造の知識が作成される。
【０１６９】
以上の動作は、上記（サブシステム３の追加）の場合と同様である。
このように、調整を行うことによって新たな組み合わせ構造に基づいて、各々のサブシステム３の機能が設定される。
図２７（ａ）は、組み合わせ構造の変更後のサブシステム３の動作状態を示すサブシステム情報ＤＢ２２ａの一部である。図２７（ｂ）は、組み合わせ構造変更後の工場５０の状態を上から視たイメージ図である。
【０１７０】
図２７（ａ）および図２７（ｂ）に示すように、ロボットＲＷ６は充電場所ＢＳへと移動する。そして、ロボットＲＷ５が、３ＤプリンタＰ１で作られた部品ｂの組み付け、および３ＤプリンタＰ２で作られた部品ｃの組み付けを行う。
詳細には、ロボットＲＷ５は、３ＤプリンタＰ１で作成された部品bを組み付け、その後、３ＤプリンタＰ２の場所に移動する（点線Ｍ３参照）。そして、ロボットＲＷ５は、３ＤプリンタＰ２で作成された部品ｃを組み付けた後、３ＤプリンタＰ１の場所に移動する（点線Ｍ３参照）。
【０１７１】
このように、ロボットＲＷ６が離脱した場合であっても、製品αを製造することが出来る。
（サブシステム３の状態変化（充電量低下））
次に、上記のようにロボットＲＷ６が充電場所ＢＳに移動した後に、ロボットＲＷ５の充電量が低下した場合について説明する。なお、目標状態は変更なしとする。
【０１７２】
ロボットＲＷ５の充電量が所定の値に低下し、充電は未だ不要であるが、上記のように部品ｂ、ｃの組み付けを１台で行っているため電力の消費量が多く、このまま作業を続けると生産全体に影響が生じる場合を想定する。
ネットワークシステムＮ４内の各々のサブシステム３（ロボットＲＤ１〜ＲＤ７、ロボットＲＷ１〜ＲＷ９、３ＤプリンタＰ１、Ｐ２、検査装置Ｓ１）が、ロボットＲＷ５の充電量の所定値への低下を認識する（図２０のステップＳ６２参照）。
【０１７３】
そして、ステップＳ６３において、各々のサブシステム３が組み合わせ構造の知識ＤＢ２２ｂからロボットＲＷ６の電力消費を抑えた状態で目標を実現できる組み合わせ構造を選択し、ステップＳ６４において、自己の活性化の可否と役割を決定する。なお、選択可能な組み合わせ構造が存在しない場合には、知識作成部２８によって新たな組み合わせ構造の知識が作成される。
【０１７４】
以上の動作は、上記（サブシステム３の追加）の場合と同様である。
このように、調整を行うことによって新たな組み合わせ構造に基づいて、各々のサブシステム３の機能が設定される。
図２８（ａ）は、組み合わせ構造の変更後のサブシステム３の動作状態を示すサブシステム情報ＤＢ２２ａの一部である。図２８（ｂ）は、組み合わせ構造変更後の工場５０の状態を上から視たイメージ図である。
【０１７５】
図２８（ａ）および図２８（ｂ）に示すように、ロボットＲＷ２は、ロボットＲＷ３が３ＤプリンタＰ１に移動後、単独でセル生産を行い、部品ａを作成する。ロボットＲＷ３は、３ＤプリンタＰ１の場所に移動し、３ＤプリンタＰ１で作成された部品ｂを組み付ける。ロボットＲＷ５は、３ＤプリンタＰ２の場所に留まり、３ＤプリンタＰ２で作成された部品ｃを組み付ける。
このように、３ＤプリンタＰ１で作成された部品ｂを組み付ける役割をロボットＲＷ３が担当することによって、ロボットＲＷ５が３ＤプリンタＰ１と３ＤプリンタＰ２の間を移動する必要がなくなり、消費電力を抑えた状態で、製品αを製造することが出来る。
【０１７６】
（目標の追加およびサブシステム３の状態変化）
次に、初期状態から目標が追加された場合（ステップＳ７４）について説明する。
初期状態から、サブシステム３の状態変化として、３ＤプリンタＰ２が原料不足のため所定時間後に３ＤプリンタＰ２が停止する場合（ステップＳ７３）を想定する。
更に、明日のメンテナンス時間まで製品αの生産を継続するという目標（４）が初期状態の目標に加えられることを想定する。
【０１７７】
詳細には、リーダであるロボットＲＷ１は、３ＤプリンタＰ２から原料が一定以下に減少し、あと所定の時間で停止する予定である旨の連絡をもらって、上位装置（管理人）に通知をしている。その後、管理人から上記目標が追加されたと想定する。
このような場合、ロボットＲＤ１〜ＲＤ７、ロボットＲＷ１〜ＲＷ９、３ＤプリンタＰ１、Ｐ２、検査装置Ｓ１のうちいずれかのサブシステム３が、新たな目標状態を受け付け、更に、３ＤプリンタＰ２の原料不足を認識する（図２０のステップＳ６２参照）。
【０１７８】
そして、ステップＳ６３において、各々のサブシステム３が組み合わせ構造の知識ＤＢ２２ｂから、３ＤプリンタＰ２を動作させない状態で、初期状態の目標状態に加えて新たな目標状態も実現できる組み合わせ構造を選択する。そして、ステップＳ６４において、各々のサブシステム３は、自己の活性化の可否と役割を決定する。なお、選択可能な組み合わせ構造が存在しない場合には、知識作成部２８によって新たな組み合わせ構造の知識が作成される。
【０１７９】
以上の動作は、上記（サブシステム３の追加）の場合と同様である。
このように、調整を行うことによって新たな組み合わせ構造に基づいて、各々のサブシステム３の機能が設定される。
図２９（ａ）は、組み合わせ構造の変更後のサブシステム３の動作状態を示すサブシステム情報ＤＢ２２ａの一部である。図２９（ｂ）は、組み合わせ構造変更後の工場５０の状態を上から視たイメージ図である。
【０１８０】
図２９（ａ）および図２９（ｂ）に示すように、３ＤプリンタＰ２は停止する。３ＤプリンタＰ１は、部品ｂを作成し、その後、部品ｃを作成する。ロボットＲＷ４は、充電場所ＢＳに移動して充電する。ロボットＲＷ５は、３ＤプリンタＰ１で作成された部品ｂと部品ｃを組み付ける。ロボットＲＷ６は、一時停止する。ロボットＲＤ１〜ＲＤ４は、「セル生産場所Ｃ１→３ＤプリンタＰ１→検査装置Ｓ１→梱包→セル生産場所Ｃ１→  ・・・  」の順番で移動しながら搬送を行う。ロボットＲＤ５、ＲＤ６は、充電場所ＢＳに移動して充電する。
【０１８１】
これにより、３ＤプリンタＰ２を停止した状態であっても製品αの生産を継続できる。
（目標の変更およびサブシステム３の状態変化（追加および離脱））
次に、目標が変更され、更にサブシステム３の追加および離脱の状態変化が行われた場合について説明する。
製品αの生産目標が達成されたため、初期状態の目標（１）が、下記の目標（５）に変更される。
・目標（５）製品βの生産および梱包と外の所定位置への搬送（納期：Ｔ２、生産目標数：Ｙ）
また、サブシステム３の追加としてロボットＲＷ１０が新たに投入され、サブシステム３の離脱としてロボットＲＷ１の充電量が低下し充電が必要となった場合を想定する。
【０１８２】
このような場合、ロボットＲＤ１〜ＲＤ７、ロボットＲＷ１〜ＲＷ９、３ＤプリンタＰ１、Ｐ２、検査装置Ｓ１のうちいずれかのサブシステム３が、新たな目標状態を受け付ける（ステップＳ６２）。そして、各々のサブシステム３は、ロボットＲＷ１０の投入およびロボットＲＷ１の充電量の低下を認識する（図２０のステップＳ６３参照）。
なお、ロボットＲＷ１は、自己の充電量の低下を認識すると、リーダの交代を他のサブシステム３に連絡する。ここで、次のリーダとして、ロボットＲＷ８が決定されるとする。
【０１８３】
そして、各々のサブシステム３が、組み合わせ構造の知識DB２２ｂから、ロボットＲＷ１を使用せず新たなロボットＲＷ１０を使用した状態で変更した目標（１）と初期状態からの目標（２）、（３）を実現できる組み合わせ構造を選択する（ステップＳ６３）。そして、各々のサブシステム３が、選択した組み合わせ構造に基づいて自己の活性化の可否と役割を決定する（ステップＳ６４）。なお、選択可能な組み合わせ構造が存在しない場合には、知識作成部２８によって新たな組み合わせ構造の知識が作成される。
【０１８４】
以上の動作は、上記（サブシステム３の追加）の場合と同様である。
このように、調整を行うことによって新たな組み合わせ構造に基づいて、各々のサブシステム３の機能が設定される。
図３０（ａ）は、組み合わせ構造の変更後のサブシステム３の動作状態を示すサブシステム情報ＤＢ２２ａの一部である。図３０（ｂ）は、組み合わせ構造変更後の工場５０の状態を上から視たイメージ図である。
【０１８５】
図３０（ａ）および図３０（ｂ）に示すように、ロボットＲＷ１は、リーダの交代を各ロボットおよび装置に連絡後、充電場所に移動して充電を行う。ロボットＲＷ２およびロボットＲＷ１０は、単体でセル生産を行い、部品ａ２を作成する。ロボットＲＷ３およびロボットＲＷ４は、単体でセル生産を行い、部品ａ３を作成し、部品ａ２に部品ａ３を組み付ける。ロボットＲＷ５は、３ＤプリンタＰ１で作成された部品ｂ２を組み付ける。ロボットＲＷ６は、３ＤプリンタＰ２で作成された部品ｃ２を組み付ける。ロボットＲＷ７は、完成した製品βの梱包を行い、不具合製品を移動する。ロボットＲＷ８は、リーダを引き継ぎ、監視装置（ドア５１、５２からの侵入者の認証と、不審者の監視、通報、排除）としての役割を果たす。更にロボットＲＷ８は、各装置から得た情報を収集して、上位装置に連絡する。ロボットＲＤ１〜ＲＤ６は、「セル生産場所Ｃ１またはＣ２→３ＤプリンタＰ１、Ｐ２→検査装置Ｓ１→梱包→セル生産場所Ｃ１またはＣ２→  ・・・  」の順番で移動しながら部品および製品の搬送を行う。ロボットＲＤ８は、梱包が完了した製品β（完成品）を外に搬送する。３ＤプリンタＰ１は、部品ｂ２を作成する。３ＤプリンタＰ２は、部品ｃ２を作成する。検査装置Ｓ１は、製品βの検査を行う。全装置は、リーダ（ロボットＲＷ８）に対して、所定の間隔で自己の状態を連絡する。
【０１８６】
［他の実施形態］
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、発明の要旨を逸脱しない範囲で種々の変更が可能である。
（Ａ）
上記実施の形態１〜４では、本発明の一例である機能設定方法として、図２〜図４、図１８、図２０に示すフローチャートに従って、機能設定方法を実施する例を挙げて説明したが、これに限定されるものではない。
【０１８７】
例えば、図２〜図４、図１８、図２０に示すフローチャートに従って実施される機能設定方法をコンピュータに実行させる機能設定プログラムとして、本発明を実現しても良い。
また、機能設定プログラムの一つの利用形態は、コンピュータにより読取可能な、ＲＯＭ等の記録媒体に記録され、コンピュータと協働して動作する態様であってもよい。
【０１８８】
また、機能設定プログラムの一つの利用形態は、インターネット等の伝送媒体、光・電波・音波などの伝送媒体中を伝送し、コンピュータにより読みとられ、コンピュータと協働して動作する態様であってもよい。
また、上述したコンピュータは、ＣＰＵ等のハードウェアに限らずファームウェアや、ＯＳ、更に周辺機器を含むものであってもよい。
なお、以上説明したように、機能設定方法はソフトウェア的に実現してもよいし、ハードウェア的に実現しても良い。
【０１８９】
（Ｂ）
上記実施の形態１で説明した中央管理システム２は、クラウド上に設けられていてもよい。  さらに、上記実施の形態２、３、４で説明したネットワークシステムＮ２、Ｎ３、Ｎ４の共有記憶部２２は、別の装置に限られるものではなく、クラウド上であってもよいし、いずれかのサブシステム３に設けられていてもよい。
【０１９０】
（Ｃ）
上記実施の形態１のネットワークシステムＮ１では、各サブシステム３が他者認識部３２を有しているが、有していなくてもよく、その場合であっても、中央管理システム２は、各サブシステム３の情報を入手できる。
すなわち、各サブシステム３は、自己の動作状態３１ａ、自己の動作環境３１ｂおよび自己の機能３１ｃをサブシステム情報ＤＢ２２ａに送信するため、この情報を用いることにより、中央管理システム２は、各々のサブシステム３の情報を得ることが出来る。
【０１９１】
（Ｄ）
上記実施の形態２、３、４で述べたネットワークシステムＮ２、Ｎ３、Ｎ４では、共有記憶部１１にサブシステム情報ＤＢ２２ａが設けられているが、各々のサブシステム３は他のサブシステム３の情報を他者認識部３２で認識して取得できるため、サブシステム情報ＤＢ２２ａが設けられていなくてもよい。
【０１９２】
（Ｅ）
上記実施の形態２では、ネットワーク５に接続されているサブシステム３のうち１つのサブシステム３にのみ構造設定部２３、役割決定部２４および知識作成部２８が設けられているが、これに限られなくてもよい。すなわち、全てのサブシステム３に構造設定部２３、役割決定部２４および知識作成部２８が設けられていてもよく、この場合、他のサブシステム３の役割を決定するリーダが設定される。すなわち、実施例３、４で述べたように、いずれかのサブシステム３がリーダとなり、目標の変更やサブシステム３の状態によってリーダが変更される。
【０１９３】
（Ｆ）
上記実施の形態１〜４では、知識作成部２８は予め組み合わせ構造の知識を作成し、作成された組み合わせ構造の知識は共有記憶部２２に記憶されているが、これに限られるものではなく、予め作成していなくてもよい。例えば、目標状態を受け付けるたびに、知識作成部２８は、その都度、組み合わせ構造を生成するようにしてもよい。この場合、組み合わせ構造の知識ＤＢ２２ｂが存在しなくてもよく、共有記憶部２２が、作成された組み合わせ構造を一旦保存するだけでよい。
【０１９４】
（Ｇ）
上記実施の形態３、４で説明したネットワークシステムＮ３、Ｎ４では、知識作成部２８および役割調整決定部３７を有する全てのサブシステム３が、目標を実行可能な組み合わせ構造が存在しない場合、そのような組み合わせ構造を作成しているが、これに限らない。目標を設定するときにリーダとして設定されたサブシステム３のみが、知識作成部２８を用いて新たな組み合わせ構造を作成してもよい。
【０１９５】
（Ｈ）
上記実施の形態および他の実施の形態で説明したネットワークシステムＮ１〜Ｎ４には、知識作成部２８が設けられており、ＡＩを用いた機械学習によって、組み合わせ構造の知識が作成されているが、知識作成部２８が設けられていなくてもよい。この場合、予め想定された組み合わせ構造の知識が組み合わせ構造の知識ＤＢ２２ｂに記憶されている。
【産業上の利用可能性】
【０１９６】
本発明のネットワークシステム、機能設定方法、および機能設定プログラムは、システムの内外の状況に対して適応性を向上できる効果を有し、監視装置やファクトリーオートメーション等に広く適用可能である。
【符号の説明】
【０１９７】
２          ：中央管理システム（管理システムの一例）
３          ：サブシステム
５          ：ネットワーク
１１        ：共有記憶部
１５        ：通知部
２１        ：目標受付部
２２        ：共有記憶部
２２ａ      ：サブシステム情報ＤＢ
２２ｂ      ：組み合わせ構造の知識ＤＢ
２３        ：構造設定部（構造設定部の一例）
２４        ：役割決定部（決定部の一例）
２５        ：役割通知部（通知部の一例）
２７        ：共有情報通信部（取得部の一例）
２８        ：知識作成部
３１        ：自己認識部
３１ａ      ：動作状態
３１ｂ      ：動作環境
３１ｃ      ：機能
３２        ：他者認識部（取得部の一例）
３２ａ      ：動作状態
３２ｂ      ：動作環境
３２ｃ      ：機能
３３        ：自己役割設定部
３４        ：役割実行部
３５        ：通信部
３６        ：自己役割決定部（構造設定部の一例）
３７        ：役割調整決定部（機能決定部の一例）
４０        ：所定空間
４１        ：情報出力装置
４２        ：上位装置
５０        ：工場
５１、５２  ：ドア
３０１      ：第１開閉センサ
３０２      ：第２開閉センサ
３０３      ：第１カメラ
３０４      ：第２カメラ
３０５      ：第３カメラ
４００      ：所定空間
４０１、４０２    ：ドア
ＢＳ        ：充電場所
Ｃ１        ：セル生産場所
Ｃ１０      ：搬送機
Ｃ２        ：セル生産場所
Ｎ１〜Ｎ４  ：ネットワークシステム
Ｐ１、Ｐ２  ：３Ｄプリンタ
Ｒ１１、Ｒ１２、Ｒ２１、Ｒ２２、Ｒ３１、Ｒ３２    ：ロボット
ＲＤ１〜ＲＤ８    ：搬送用ロボット
ＲＰ１〜ＲＰ４    ：中継機
ＲＷ１〜ＲＷ１０  ：作業ロボット
Ｓ１        ：検査装置
【図１】
0006724436.tif 000002
【図２】
0006724436.tif 000003
【図３】
0006724436.tif 000004
【図４】
0006724436.tif 000005
【図５】
0006724436.tif 000006
【図６】
0006724436.tif 000007
【図７】
0006724436.tif 000008
【図８】
0006724436.tif 000009
【図９】
0006724436.tif 000010
【図１０】
0006724436.tif 000011
【図１１】
0006724436.tif 000012
【図１２】
0006724436.tif 000013
【図１３】
0006724436.tif 000014
【図１４】
0006724436.tif 000015
【図１５】
0006724436.tif 000016
【図１６】
0006724436.tif 000017
【図１７】
0006724436.tif 000018
【図１８】
0006724436.tif 000019
【図１９】
0006724436.tif 000020
【図２０】
0006724436.tif 000021
【図２１】
0006724436.tif 000022
【図２２】
0006724436.tif 000023
【図２３】
0006724436.tif 000024
【図２４】
0006724436.tif 000025
【図２５】
0006724436.tif 000026
【図２６】
0006724436.tif 000027
【図２７】
0006724436.tif 000028
【図２８】
0006724436.tif 000029
【図２９】
0006724436.tif 000030
【図３０】
0006724436.tif 000031
【図３１】
0006724436.tif 000032