(57)【要約】【課題】製造ラインの停止を防止する。【解決手段】搬送システム制御装置は、取得部と、予測部と、指示部とを備える。取得部は、複数の製造装置が協働して一の完成品を製造する製造ラインに関する製造ライン情報を取得する。予測部は、前記取得部が取得した前記製造ライン情報に基づいて、前記製造ラインで物品を搬送する搬送装置に対する指示を実行させた場合に前記製造装置に前記完成品の部品が閾値以上溜められ、且つ前記部品が不足することはないかを予測する。指示部は、前記予測部が閾値以上の前記部品が溜められることはないと予測し、且つ前記部品が不足することはないと予測した場合に、前記搬送装置に前記指示を実行させる。【選択図】図６
2020155076.tif 000002
【特許請求の範囲】
【請求項１】
複数の製造装置が協働して一の完成品を製造する製造ラインに関する製造ライン情報を取得する取得部と、
前記取得部が取得した前記製造ライン情報に基づいて、前記製造ラインで物品を搬送する搬送装置に対する指示を実行させた場合に前記製造装置に前記完成品の部品が閾値以上溜められ、且つ前記部品が不足することはないかを予測する予測部と、
前記予測部が閾値以上の前記部品が溜められることはないと予測し、且つ前記部品が不足することはないと予測した場合に、前記搬送装置に前記指示を実行させる指示部と、
を備える搬送システム制御装置。
【請求項２】
前記予測部は、前記部品を搬送する搬送経路の途中に、前記搬送装置に引かせて前記物品を搬送する台車を交換する前記指示を前記搬送装置に実行させた場合に、前記製造装置に前記完成品の部品が閾値以上溜められ、且つ前記部品が不足することはないかを予測し、
前記指示部は、前記予測部が閾値以上の前記部品が溜められることはないと予測し、且つ前記部品が不足することはないと予測した場合に、前記搬送装置に前記指示を実行させる、
請求項１に記載の搬送システム制御装置。
【請求項３】
前記予測部は、前記部品を収納する収納容器を搬送させる前記指示を前記搬送装置に実行させた場合に、前記製造装置に前記完成品の部品が閾値以上溜められ、且つ前記部品が不足することはないかを予測し、
前記指示部は、前記予測部が閾値以上の前記部品が溜められることはないと予測し、且つ前記部品が不足することはないと予測した場合に、前記搬送装置に前記指示を実行させる、
請求項１または請求項２に記載の搬送システム制御装置。
【請求項４】
工場において、バッテリーを動力源とする複数の無人搬送車の稼働状態を制御する搬送システム制御装置であって、
前記無人搬送車の各々のバッテリーの充電量を取得する充電量取得部と、
前記無人搬送車の各々のタスク実行状態を取得する動作状態取得部と、
タスクを実行していない無人搬送車に対してタスクを割り当てるタスク設定部と、
前記充電量取得部が取得した充電量に基づいて、前記タスク設定部によって割り当てられたタスクを行ったと想定した場合の、当該無人搬送車の充電量を予測する充電量予測部と、
前記充電量予測部が予測した充電量に基づいて、当該無人搬送車に対して、前記タスク設定部が割り当てたタスクを実行させるか、又は充電を行わせるかを判定する判定部と、
を備える搬送システム制御装置。
【請求項５】
前記判定部は、前記充電量予測部が予測した充電量が第１の閾値以上である場合に、当該無人搬送車に対して割り当てたタスクを実行させる、
請求項４に記載の搬送システム制御装置。
【請求項６】
前記判定部は、前記充電量予測部が予測した充電量が前記第１の閾値よりも少ない場合に、当該無人搬送車に対して充電を行わせる、
請求項５に記載の搬送システム制御装置。
【請求項７】
前記判定部は、前記無人搬送車の各々のバッテリーの現在の充電量の平均値が第２の閾値よりも少なくて、尚且つ前記充電量のばらつきが第３の閾値よりも小さい場合に、タスクを実行していない無人搬送車に対して充電を行わせる、
請求項５または請求項６に記載の搬送システム制御装置。
【請求項８】
前記第２の閾値は、前記第１の閾値よりも大きい値に設定する、
請求項７に記載の搬送システム制御装置。
【請求項９】
前記タスク設定部は、充電を行わせることが設定された無人搬送車を、タスク設定が可能な無人搬送車の候補から削除する、
請求項４から請求項８のいずれか１項に記載の搬送システム制御装置。
【請求項１０】
前記タスク設定部は、充電が完了した無人搬送車を、タスク設定が可能な無人搬送車の候補に追加する、
請求項４から請求項９のいずれか１項に記載の搬送システム制御装置。
【請求項１１】
工場において、バッテリーを動力源とする複数の無人搬送車の稼働状態を制御する搬送システム制御方法であって、
前記無人搬送車の各々のバッテリーの充電量を取得する充電量取得工程と、
前記無人搬送車の各々のタスク実行状態を取得する動作状態取得工程と、
タスクを実行していない無人搬送車に対してタスクを割り当てるタスク設定工程と、
前記充電量取得工程が取得した充電量に基づいて、前記タスク設定工程によって割り当てられたタスクを行ったと想定した場合の、当該無人搬送車の充電量を予測する充電量予測工程と、
前記充電量予測工程が予測した充電量に基づいて、当該無人搬送車に対して、前記タスク設定工程が割り当てたタスクを実行させるか、又は充電を行わせるか、を判定する判定工程と、
を実行する搬送システム制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、搬送システム制御装置および搬送システム制御方法に関する。
【背景技術】
【０００２】
従来、工場内で部品や製品を運搬するために、人間が運転操作を行うことなく自動で目的地まで走行することが可能な無人搬送車、いわゆるＡＧＶ（Automated  Guided  Vehicle）が用いられている。また、このようなＡＧＶにおいて未来予測推論による行動決定方法が知られている。この行動決定方法によれば、工場での未来の生産稼働状況を予測し、ＡＧＶが実行すべき行動を選択する。その結果、生産比率に悪影響を与えることなく工場を稼働させることができる。
【０００３】
このような無人搬送車は、一般に、電動機（モータ）によって走行するため、電力供給源として、充電可能なバッテリーを備えている。そして、バッテリーの充電量が少なくなった場合には、充電ステーションにて充電を行う。複数の無人搬送車に対して、効率的に充電を行うために、充電時間が確保可能な場合に、最も充電量が少ない無人搬送車に充電タスクを割り当てる例が知られている。
【先行技術文献】
【特許文献】
【０００４】
【非特許文献１】山本秀彦、“自律分散型ＦＭＳにおける未来予測推論によるＡＧＶ行動決定”、日本機械学会論文集Ｃ編、６５巻（１９９９−３）６３１号
【特許文献１】特許第５１３５５５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、非特許文献１には、一の製造装置が完成品を製造する技術が開示されている。すなわち、非特許文献１には、製造ラインにおいて、複数台の製造装置が協働して、一の完成品を製造する技術は開示されていない。そして、複数台の製造装置が協働して完成品を製造する場合に、一の製造装置に必要以上の部品が溜められることは好ましくない。そのため、一の製造装置に必要以上の部品が溜められた場合に、製造ラインは停止してしまう。
【０００６】
また、例えば特許文献１にあっては、充電時間を確保可能な無人搬送車に充電タスクを割り当てていたため、複数の無人搬送車の稼働率を向上させることができなかった。
【０００７】
そこで、本開示の課題の一つは、例えば、製造ラインの停止を防止することである。またもう一つの課題は、無人搬送車の充電を効率的に行うことである。
【課題を解決するための手段】
【０００８】
上述した課題を解決するために、実施形態にかかる搬送システム制御装置は、例えば、複数の製造装置が協働して一の完成品を製造する製造ラインに関する製造ライン情報を取得する取得部と、前記取得部が取得した前記製造ライン情報に基づいて、前記製造ラインで物品を搬送する搬送装置に対する指示を実行させた場合に前記製造装置に前記完成品の部品が閾値以上溜められ、且つ前記部品が不足することはないかを予測する予測部と、前記予測部が閾値以上の前記部品が溜められることはないと予測し、且つ前記部品が不足することはないと予測した場合に、前記搬送装置に前記指示を実行させる指示部と、を備える。これにより、搬送システム制御装置は、製造ラインの停止を防止することができる。
【０００９】
また、上記搬送システム制御装置では、一例として、前記予測部は、前記部品を搬送する搬送経路の途中に、前記搬送装置に引かせて前記物品を搬送する台車を交換する前記指示を前記搬送装置に実行させた場合に、前記製造装置に前記完成品の部品が閾値以上溜められ、且つ前記部品が不足することはないかを予測し、前記指示部は、前記予測部が閾値以上の前記部品が溜められることはないと予測し、且つ前記部品が不足することはないと予測した場合に、前記搬送装置に前記指示を実行させる。これにより、搬送システム制御装置は、搬送装置に実行させるタスクに、台車を交換するタスクが含まれている場合であっても、製造ラインの停止を防止することができる。
【００１０】
また、上記搬送システム制御装置では、前記予測部は、前記部品を収納する収納容器を搬送させる前記指示を前記搬送装置に実行させた場合に、前記製造装置に前記完成品の部品が閾値以上溜められ、且つ前記部品が不足することはないかを予測し、前記指示部は、前記予測部が閾値以上の前記部品が溜められることはないと予測し、且つ前記部品が不足することはないと予測した場合に、前記搬送装置に前記指示を実行させる。これにより、搬送システム制御装置は、搬送装置に実行させるタスクに、ラックを搬送するタスクが含まれている場合であっても、製造ラインの停止を防止することができる。
【００１１】
また、実施形態にかかる搬送システム制御装置は、工場において、バッテリーを動力源とする複数の無人搬送車の稼働状態を制御する搬送システム制御装置であって、前記無人搬送車の各々のバッテリーの充電量を取得する充電量取得部と、前記無人搬送車の各々のタスク実行状態を取得する動作状態取得部と、タスクを実行していない無人搬送車に対してタスクを割り当てるタスク設定部と、前記充電量取得部が取得した充電量に基づいて、前記タスク設定部によって割り当てられたタスクを行ったと想定した場合の、当該無人搬送車の充電量を予測する充電量予測部と、前記充電量予測部が予測した充電量に基づいて、当該無人搬送車に対して、前記タスク設定部が割り当てたタスクを実行させるか、又は充電を行わせるかを判定する判定部と、を備える。
【００１２】
これにより、無人搬送車の充電の頻度をできるだけ低く抑えることによって、無人搬送車の稼働率を向上させることができる。
【００１３】
また、上記搬送システム制御装置では、一例として、判定部は、充電量予測部が予測した充電量が第１の閾値以上である場合に、当該無人搬送車に対して割り当てたタスクを実行させる。これにより、タスク完了時のバッテリーの充電量が、タスクの遂行を継続可能な最低レベルを下回らない無人搬送車に対して、優先的にタスクを割り当てることができるため、充電の頻度を下げることができる。
【００１４】
また、上記搬送システム制御装置では、一例として、判定部は、充電量予測部が予測した充電量が第１の閾値よりも少ない場合に、当該無人搬送車に対して充電を行わせる。これにより、充電量が少ない無人搬送車に対して、優先的に充電を行わせることができる。
【００１５】
また、上記搬送システム制御装置では、一例として、判定部は、充電量取得部が取得した無人搬送車の各々のバッテリーの現在充電量の平均値が第２の閾値よりも少なくて、尚且つ充電量のばらつきが第３の閾値よりも小さい場合に、タスクを実行していない無人搬送車に対して充電を行わせる。これにより、全てのＡＧＶが同時に充電切れになる事態を回避することができる。さらに、同時に充電可能なＡＧＶの数が制限される場合に、複数の無人搬送車が同時に充電を行う事態を回避することができる。
【００１６】
また、上記搬送システム制御装置では、一例として、第２の閾値は、前記第１の閾値よりも大きい値に設定される。これにより、タスクの遂行を継続可能な最低レベルを下回る前に、できるだけ早い時点で充電を行わせることができる。
【００１７】
また、上記搬送システム制御装置では、一例として、タスク設定部は、充電を行わせることが設定された無人搬送車を、タスク設定が可能な無人搬送車の候補から削除する。これにより、充電中の無人搬送車に対してタスク割り当てを行うのを防止することができる。
【００１８】
また、上記搬送システム制御装置では、一例として、タスク設定部は、充電が完了した無人搬送車を、タスク設定が可能な無人搬送車の候補に追加する。これにより、充電を完了した無人搬送車は、即座にタスク割り当ての候補とすることができる。
【図面の簡単な説明】
【００１９】
【図１】図１は、無人搬送システムのシステム構成の一例を示すブロック図である。
【図２】図２は、無人搬送システムが設定する代表的なタスクの一例を示す図である。
【図３】図３は、無人搬送システムのハードウェア構成の一例を示すハードウェアブロック図である。
【図４】図４は、搬送システム制御装置のハードウェア構成の一例を示すハードウェアブロック図である。
【図５】図５は、搬送システム制御装置の入出力情報の内容と、搬送システム制御装置が行う処理の内容と、の一例を示す図である。
【図６】図６は、第２の実施形態にかかる搬送システム制御装置の機能構成の一例を示す機能ブロック図である。
【図７】図７は、第２の実施形態にかかる搬送システム制御装置が実行する指示処理を示した例示的かつ模式的なフローチャートである。
【図８】図８は、搬送システム制御装置の機能構成の一例を示す機能ブロック図である。
【図９】図９は、搬送システム制御装置が行う一連の処理の流れの一例を示すフローチャートである。
【図１０】図１０は、搬送システム制御装置が行う未来予測推論の流れの一例を示すフローチャートである。
【図１１】図１１は、搬送システム制御装置が行う１回目の未来予測推論の流れの一例を示すフローチャートである。
【図１２】図１２は、搬送システム制御装置が行うｉ回目（ｉ＝２，３，…）の未来予測推論の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【００２０】
（第１の実施形態）
以下、本発明の第１の実施形態を図面に従って説明する。本実施形態は、本発明を、電子部品の製造工場において、必要な時に必要な場所に、部品や製品を搬送する無人搬送車（以下、ＡＧＶと呼ぶ）の配送計画の設定と実行を行う無人搬送システムに適用した例である。
【００２１】
（無人搬送システムの概要説明）
図１は、無人搬送システムのシステム構成の一例を示すブロック図である。工場内には複数のＡＧＶ３０ａ，３０ｂ，…が常備されている。無人搬送システム１０は、ＡＧＶ３０ａ，３０ｂ，…を、指示した走行ルートを追従走行させることによって、設定された目的地まで部品や製品を搬送する。なお、ＡＧＶは複数台が常備されるが、簡単のため、以下の説明は、ＡＧＶ３０ａについて行う。特に断りのない限り、以下の説明は、他のＡＧＶ３０ｂ，…に対しても適用される。また、以下の説明においては、ＡＧＶ３０ａ，３０ｂ，…を識別する必要がない場合には、ＡＧＶ３０と表記する。
【００２２】
図１に示す工場には、ＡＧＶ３０ａの行先となる複数の地点が存在する。すなわち、台車Ａステーション１１と、台車Ｂステーション１２と、充電ステーション１６と、ラック置場１７と、部品置場１８と、中間バッファ１９と、型物置場２０と、完成品置場２１と、完成品集積所２２と、型物集積所２３と、部品集積所２４である。
【００２３】
台車Ａステーション１１は、ＡＧＶ３０ａが牽引する、小型の部品を運搬する小型台車のステーションである。台車Ｂステーション１２は、ＡＧＶ３０ａが牽引する、大型の部品を運搬する大型台車のステーションである。
【００２４】
充電ステーション１６は、ＡＧＶ３０ａが動力源であるバッテリーを充電するための充電場所である。
【００２５】
ラック置場１７は、ＡＧＶ３０ａが、製造された基板を搬送する際に、当該基板を載置するラックの置場である。
【００２６】
製造工程は、第１組立ライン１３、第２組立ライン１４、第３組立ライン１５があり、その組立ライン間をＡＧＶ３０が搬送する。
【００２７】
部品置場１８は、第１組立ライン１３の近傍に設けられて、部品を一時的に載置する場所である。部品集積所２４は、部品置場１８に搬送される前の電子部品の集積場所である。
【００２８】
中間バッファ１９は、実装を完了した基板が一時的に載置される場所である。
【００２９】
型物置場２０は、第３組立ライン１５の近傍に設けられて、電子部品の筐体等の型物を一時的に載置する場所である。型物集積所２３は、型物置場２０に搬送される前の型物の集積場所である。
【００３０】
完成品置場２１は、第３組立ライン１５の近傍に設けられて、完成した電子部品（完成品）を一時的に載置する場所である。完成品集積所２２は、完成品置場２１から搬送された、完成品の集積場所である。
【００３１】
上記した部品置場１８と、部品集積所２４と、中間バッファ１９と、型物置場２０と、型物集積所２３と、完成品置場２１と、完成品集積所２２とには、当該場所に置かれた物品数を計測する、図１に非図示のセンサが設置されている。当該センサが計測した物品数は、即時に搬送システム制御装置４０に送信される。製造工程に投入すべき物品数が０になると、電子部品の製造を行うことができなくなるため、製造ラインを停止せざるを得なくなる。そのため、搬送システム制御装置４０は、絶えず物品数をモニタすることによって、製造ラインの正常な運用状態を維持する。
【００３２】
ＡＧＶ３０ａは、前記した各場所に、必要な物品を運搬するタスクを行う。また、ＡＧＶ３０ａは、必要に応じて充電ステーション１６で充電を行う。
【００３３】
すなわち、ＡＧＶ３０ａは、部品搬送タスクＴ１と、工程間搬送タスクＴ２と、中間回収タスクＴ３と、中間投入タスクＴ４と、ラック投入タスクＴ５と、ラック回収タスクＴ６とを行う。また、ＡＧＶ３０ａは、完成品搬送タスクＴ７と、台車交換タスクＴ８と、予測充電タスクＴ９と、完成品空箱補充タスクＴ１０と、部品空箱回収タスクＴ１１と、型物空箱回収タスクＴ１２と、型物搬送タスクＴ１３とを行う。
【００３４】
ＡＧＶ３０ａは、図１に示す、各タスクに対応した矢印に沿って移動することによって、部品、基板、型物、完成品、ラックの搬送、及び台車の交換と充電とを行う。なお、代表的なタスクについて、詳しくは後述する（図２）。
【００３５】
搬送システム制御装置４０は、ＡＧＶ３０ａと無線通信によって必要な情報の送受信を行う。すなわち、搬送システム制御装置４０は、ＡＧＶ３０ａに対して、当該ＡＧＶ３０ａを識別する識別番号とともに、割り当てたタスクの内容を送信する。具体的には、搬送システム制御装置４０は、ＡＧＶ３０ａに対して、行き先と、走行ルートと、運搬物情報（何を運搬するのか）と、台車情報（大型台車を使用するか、小型台車を使用するか）とを送信する。
【００３６】
ＡＧＶ３０ａは、搬送システム制御装置４０が送信した情報を受信するとともに、自身の現在位置情報と、自身のステータス（実行しているタスクの内容、又はタスクを行っていないことを示す情報）と、バッテリーの充電量とを、搬送システム制御装置４０に送信する。このようにして、ＡＧＶ３０ａは、搬送システム制御装置４０が割り当てたタスクを遂行する。
【００３７】
（ＡＧＶのタスク例の説明）
図２を用いて、ＡＧＶ３０ａが行う代表的なタスクを説明する。図２は、無人搬送システムが設定する代表的なタスクの一例を示す図である。
【００３８】
部品搬送タスクＴ１は、製品や部品を次の工程に搬送するタスクである。例えば、図１に示すＡＧＶ３０ａは、部品集積所２４から部品置場１８まで部品を搬送する部品搬送タスクＴ１が割り当てられた例である。
【００３９】
ラック投入タスクＴ５、及びラック回収タスクＴ６は、製品搬送用のラックの投入及び回収を行うタスクである。例えば、図１に示すＡＧＶ３０ａは、ラック置場１７からラック投入口にラックを投入するラック投入タスクＴ５、又はラック排出口からラック置場１７にラックを回収するラック回収タスクＴ６が割り当てられた例である。
【００４０】
台車交換タスクＴ８は、牽引する台車を大型台車から小型台車、又は小型台車から大型台車に交換するタスクである。例えば、図１に示すＡＧＶ３０ａは、大型台車から小型台車に交換する、台車交換タスクＴ８が割り当てられた例である。
【００４１】
予測充電タスクＴ９は、バッテリーの充電量が所定の値を下回ることが予想される場合に、バッテリーを充電させるタスクである。例えば、図１に示すＡＧＶ３０ａは、割り当て可能なタスクＡ，タスクＢ，…，タスクＮを実行したと想定した場合に、いずれの場合もバッテリーの充電量が所定の値を下回ると予想されたために、ＡＧＶ３０ａに対して予測充電タスクＴ９が割り当てられた例である。なお、本実施形態において前記した充電量の所定の値は、例えば３０％に設定されるものとする。この値は、バッテリーの性能低下を防止するために、無人搬送車が、最低限必要な充電量として、常時有しておく必要がある値である。また、所定の値は３０％に限定されるものではなく、適宜設定することができる。
【００４２】
（無人搬送システムのハードウェア構成の説明）
図３を用いて、無人搬送システム１０のハードウェア構成を説明する。図３は、無人搬送システムのハードウェア構成の一例を示すハードウェアブロック図である。
【００４３】
図３に示すように、無人搬送システム１０は、搬送システム制御装置４０と、ＡＧＶ３０ａとを備える。そして、ＡＧＶ３０ａは、通信網５２に接続された通信装置５０を介して、搬送システム制御装置４０と無線通信を行う。搬送システム制御装置４０は、通信網５２の一例であるＬＡＮを介して、工場内に設置されてもよいし、通信網５２の一例であるインターネットを介して、クラウドに設置されてもよい。なお、全てのＡＧＶ３０は同じハードウェア構成を有するため、図３にはＡＧＶ３０ａの構成のみを示す。
【００４４】
搬送システム制御装置４０は、ＡＧＶ３０ａと無線通信を行い、ＡＧＶ３０ａの現在の状態を取得する。また、搬送システム制御装置４０は、ＡＧＶ３０ａに対して、前記した各種タスクを割り当て、割り当てたタスクの実行を指示する。
【００４５】
ＡＧＶ３０ａは、バッテリー３２と、モータコントローラ３３と、モータ３４と、通信装置３６とを備える。
【００４６】
バッテリー３２は、モータ３４に電力を供給する。なお、バッテリー３２は充電可能な二次電池である、ニッケル水素二次電池やリチウムイオン二次電池等が用いられる。なお、バッテリー３２は、充電量を検出する機能を備えており、検出された充電量は、随時、搬送システム制御装置４０に送信される。
【００４７】
モータ３４は、バッテリー３２からの電力によって動作して、ＡＧＶ３０ａを走行させる。
【００４８】
モータコントローラ３３は、モータ３４の動作を制御することによって、ＡＧＶ３０ａの速度制御、進行方向制御等を行う。
【００４９】
ＡＧＶ３０ａが持つ工場マップ（非図示）により、自身の工場内での位置を検出する。検出された位置は、随時、搬送システム制御装置４０に送信される。なお、ＡＧＶ３０の誘導方法は、例えば、壁や柱に設置した反射板の位置をレーザレーダで検出するレーザ誘導方式であってもよいし、ＡＧＶ３０ａに設置したカメラが撮像した画像情報に基づいて誘導する方式であってもよい。また、ＡＧＶ３０ａの位置は、ＧＰＳ（Global  Positioning  System）測位を用いて検出してもよいし、Ｗｉ−Ｆｉ（登録商標）測位を用いて検出してもよい。
【００５０】
ＡＧＶ３０ａは、台車６２またはラック６４のいずれか一方を搬送する。台車６２は、ＡＧＶ３０ａに牽引されて、大型の部品の搬送に用いられる。なお、台車６２には、前記したように、大型台車と小型台車とがある。ラック６４は、ＡＧＶ３０ａの上面に載置されて、小型の部品の搬送に用いられる。なお、図３は説明のために、台車６２とラック６４とを両方描いている。
【００５１】
（搬送システム制御装置のハードウェア構成の説明）
図４を用いて、搬送システム制御装置４０のハードウェア構成を説明する。図４は、搬送システム制御装置のハードウェア構成の一例を示すハードウェアブロック図である。搬送システム制御装置４０は、制御部４２と、記憶部４３と、コントローラ４５とを備える。
【００５２】
制御部４２は、ＣＰＵ（Central  Processing  Unit）４２１と、ＲＯＭ（Read  Only  Memory）４２２と、ＲＡＭ（Random  Access  Memory）４２３とを備える。ＣＰＵ４２１は、バスライン４４を介して、ＲＯＭ４２２と、ＲＡＭ４２３と接続する。ＣＰＵ４２１は、記憶部４３に記憶された制御プログラムＰ１を、ＲＡＭ４２３に展開する。ＣＰＵ４２１は、ＲＡＭ４２３に展開された制御プログラムＰ１とＲＯＭ４２２に記憶された各種データに従って動作することで、搬送システム制御装置４０の動作を制御する。すなわち、制御部４２は、一般的なコンピュータの構成を有する。
【００５３】
制御部４２は、更に、バスライン４４を介して、記憶部４３と、コントローラ４５と接続する。
【００５４】
記憶部４３は、電源を切っても記憶情報が保持される、フラッシュメモリ等の不揮発性メモリ、又はＨＤＤ（Hard  Disk  Drive）等である。記憶部４３は、制御プログラムＰ１を含むプログラム等を記憶する。制御プログラムＰ１は、搬送システム制御装置４０が備える機能を発揮させるためのプログラムである。
【００５５】
なお、制御プログラムＰ１は、ＲＯＭ４２２に予め組み込まれて提供されてもよい。また、制御プログラムＰ１は、制御部４２にインストール可能な形式又は実行可能な形式のファイルで、ＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Digital  Versatile  Disc）等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。さらに、制御プログラムＰ１を、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、制御プログラムＰ１を、インターネット等のネットワーク経由で提供又は配布するように構成してもよい。
【００５６】
また、記憶部４３は、ＡＧＶ状態情報Ｄ１と、タスク情報Ｄ２とを記憶する。ＡＧＶ状態情報Ｄ１は、工場で稼働している全てのＡＧＶ３０の現在の状態を記憶した情報である。具体的には、ＡＧＶ状態情報Ｄ１は、各ＡＧＶの現在のタスクの有無、現在位置、充電量等を記憶している。なお、ＡＧＶ状態情報Ｄ１は、ＡＧＶ３０から送信された情報に基づいて生成される。
【００５７】
タスク情報Ｄ２は、現在行うことが可能な全てのタスクを記憶した情報である。なお、タスク情報Ｄ２は、前記したように、部品置場１８と、部品集積所２４と、中間バッファ１９と、型物置場２０と、型物集積所２３と、完成品置場２１と、完成品集積所２２とに置かれた物品数の計測結果に基づいて生成される。
【００５８】
コントローラ４５は、表示デバイス４６と、操作デバイス４７と、通信デバイス４８と接続する。コントローラ４５は、制御部４２からの指令に基づいて、接続された各種ハードウェアの動作を制御する。
【００５９】
表示デバイス４６は、例えば液晶ディスプレイであり、全てのＡＧＶ３０の動作状態等の情報を表示する。
【００６０】
操作デバイス４７は、例えばタッチパネルやキーボードであり、搬送システム制御装置４０を動作させるために必要な情報の入力を受け付ける。
【００６１】
通信デバイス４８は、ＡＧＶ３０との通信を制御する。
【００６２】
次に、図５を用いて、搬送システム制御装置４０とＡＧＶ３０ａ，３０ｂ，…との間の情報の流れを説明する。図５は、搬送システム制御装置の入出力情報の内容と、搬送システム制御装置が行う処理の内容と、の一例を示す図である。
【００６３】
搬送システム制御装置４０は、図５に示す製造ライン情報を取得する。
【００６４】
すなわち、搬送システム制御装置４０は、実行が必要な所要タスクと、前記した各所の物品数を示すバッファ数と、使用されている台車６２の数を示す台車情報と、使用されているラック６４の数を示すラック情報と、各ＡＧＶ３０ａ，３０ｂ，…の場所、タスク実行状態、実行中のタスク内容等を含むＡＧＶ情報と、充電ステーション１６の使用状態である充電ステーション情報とを取得する。なお、所要タスクは、取得したバッファ数に基づいて、搬送システム制御装置４０が算出してもよい。
【００６５】
搬送システム制御装置４０は、取得した製造ライン情報に基づいて、必要な演算処理を行う。すなわち、搬送システム制御装置４０は、タスク割り当てと、走行ルート選択と、予測推論と、充電量予測とを行う。各処理の流れは、後述するフローチャートで説明する。
【００６６】
搬送システム制御装置４０は、各種演算処理によって算出した情報に基づいて、各ＡＧＶ３０ａ，３０ｂ，…に対するタスク割り当てを行う。そして割り当てたタスクにかかる情報を、各ＡＧＶ３０ａ，３０ｂ，…に送信する。すなわち、搬送システム制御装置４０は、各ＡＧＶ３０ａ，３０ｂ，…に対して、送信先のＡＧＶ３０ａ，３０ｂ，…を識別する識別番号と、行先と、走行ルートと、運搬する物品の内容と数量とを示す運搬物情報と、運搬に用いる台車６２又はラック６４を指定する台車（又はラック）情報とを送信する。
【００６７】
（搬送システム制御装置の機能構成の説明）
図６を用いて、搬送システム制御装置４０ａの機能構成を説明する。図６は、搬送システム制御装置の機能構成の一例を示す機能ブロック図である。
【００６８】
ここで、図６は、第１の実施形態にかかる搬送システム制御装置４０の機能構成の一例を示す機能ブロック図である。搬送システム制御装置４０の制御部４２は、制御プログラムＰ１をＲＡＭ４２３に展開して動作させることによって、図６に示す製造ライン情報取得部８１と、予測部８２と、指示部８３とを機能部として実現する。
【００６９】
製造ライン情報取得部８１は、複数の製造装置が協働して一の完成品を製造する製造ラインに関する製造ライン情報を取得する。
【００７０】
ここで、図１に示すように、製造ラインには、第１組立ライン１３、第２組立ライン１４、及び第３組立ライン１５等の複数の製造装置が協働して一の完成品を製造する製造ラインが設置されている。製造ライン情報取得部８１は、製造ラインに設置された製造ラインに関する製造ライン情報を取得する。
【００７１】
また、製造ライン情報には、図５に示すように、所要タスク、バッファ数、台車情報、ラック情報、ＡＧＶ情報、及び充電ステーション情報が含まれる。なお、製造ライン情報取得部８１は、製造ライン情報を一つの情報として取得してもよいし、製造ライン情報に含まれる情報をそれぞれ個別に取得してもよい。
【００７２】
例えば、製造ライン情報取得部８１は、所要タスクを取得する場合、バッファ数に基づいて算出することで取得する。なお、製造ライン情報取得部８１は、バッファ数に基づいて算出に限らず、図示していない装置から受信することで所要タスクを取得してもよいし、他の方法により所要タスクを取得してもよい。
【００７３】
例えば、製造ライン情報取得部８１は、各所に設置されたセンサ等を用いて、物品数を示すバッファ数を取得する。ここで、バッファ数とは、図１に示された各所の物品数を示す。すなわち、バッファ数とは、例えば、第１組立ライン１３、第２組立ライン１４、第３組立ライン１５、部品置場１８、中間バッファ１９、型物置場２０、完成品置場２１等の各所の部品、ラック６４や、型物等の物品の数である。そして、製造ライン情報取得部８１は、第１組立ライン１３、第２組立ライン１４、及び第３組立ライン１５等の製造装置に部品がどの程度溜められているかを示すバッファ数を取得する。なお、製造ライン情報取得部８１は、センサによるバッファ数の取得に限らず、部品の搬送先を記録することで各所のバッファ数を取得してもよいし、他の方法によりバッファ数を取得してもよい。
【００７４】
例えば、製造ライン情報取得部８１は、台車情報を記憶する記憶装置から台車情報を取得する。すなわち、製造ライン情報取得部８１は、大型や小型等の台車６２の種類と、各種類の台車６２の台数と、各台車６２の現在位置とを示す台車情報を記憶する記憶装置から受信することにより取得する。なお、製造ライン情報取得部８１は、製造ラインの台車６２を検出するセンサ等から台車情報を取得してもよいし、他の方法により台車情報を取得してもよい。
【００７５】
例えば、製造ライン情報取得部８１は、ラック情報を記憶する記憶装置からラック情報を取得する。すなわち、製造ライン情報取得部８１は、完成品の部品を収納する収納容器であるラック６４の種類と、各種類のラック６４の個数と、各ラック６４の現在位置とを示すラック情報を記憶する記憶装置から受信することにより取得する。なお、製造ライン情報取得部８１は、製造ラインのラック６４を検出するセンサ等からラック情報を取得してもよいし、他の方法によりラック情報を取得してもよい。
【００７６】
例えば、製造ライン情報取得部８１は、製造ラインで完成品や、部品や、ラック６４等の物品を搬送する搬送装置であるＡＧＶ３０に関するＡＧＶ情報を記憶する記憶装置からラック情報を取得する。すなわち、製造ライン情報取得部８１は、ＡＧＶ３０が実行中のタスク、ＡＧＶ３０の現在位置等のＡＧＶ３０に関する情報であるＡＧＶ情報を取得する。なお、製造ライン情報取得部８１は、ＡＧＶ３０からＡＧＶ情報を取得してもよいし、ＡＧＶ情報を記憶する記憶装置から受信することにより取得してもよいし、他の方法によりＡＧＶ情報を取得してもよい。
【００７７】
例えば、製造ライン情報取得部８１は、充電ステーション１６の状態を示す充電ステーション情報を充電ステーション１６から取得する。すなわち、製造ライン情報取得部８１は、充電ステーション１６が使用状態であるか否か等の状態を取得する。なお、製造ライン情報取得部８１は、充電ステーション１６の状態を検出するセンサ等から充電ステーション情報を取得してもよい。
【００７８】
予測部８２は、製造ライン情報取得部８１が取得した製造ライン情報に基づいて、製造ラインで物品を搬送するＡＧＶ３０に対する指示を実行させた場合に製造装置に完成品の部品が閾値以上溜められ、且つ部品が不足することはないかを予測する。すなわち、予測部８２は、ＡＧＶ３０にタスクを実行させた場合に、第１組立ライン１３、第２組立ライン１４、及び第３組立ライン１５等の製造装置が製造に使用する部品の数、つまり各所のバッファ数が閾値以上になるか否かを予測する。さらに、予測部８２は、製造装置に投入する部品が閾値以下とならないかを予測する。
【００７９】
更に詳しくは、予測部８２は、未来予想推論に基づいて、製造装置に完成品の部品が閾値以上溜められるかを予測する。さらに、予測部８２は、製造装置が使用する部品が不足することはないかを予測する。すなわち、予測部８２は、製造装置が使用する部品の個数が規定値未満であるか否かを予測する。具体的には、予測部８２は、製造ラインで物品を搬送する複数のＡＧＶ３０から一の主役のＡＧＶ３０を選択する。予測部８２は、主役のＡＧＶ３０に対して所要タスクを実行させることを想定した仮想生産シミュレーションを実行する。そして、予測部８２は、仮想生産シミュレーションの実行結果に基づいて、製造ラインが停止したか否かを判定する。すなわち、予測部８２は、製造装置に完成品の部品が閾値以上溜められず、且つ部品の個数が規定値未満である為に、製造ラインが停止したか否かを判定する。
【００８０】
予測部８２は、製造装置に完成品の部品が閾値以上溜められず、且つ製造装置が使用する部品の個数が規定値以上であるために製造ラインが停止しないと予測した場合に、主役のＡＧＶ３０とは異なるＡＧＶ３０に対して所要タスクを実行させることを想定した仮想生産シミュレーションを実行する。この未来予想推論を設定回数繰り返し実行することで、予測部８２は、製造装置に完成品の部品が閾値以上溜められるか否かを予測する。
【００８１】
このような、製造ラインが停止するか否かの予測において、予測部８２は、ＡＧＶ３０に実行させる所要タスクは任意に選択することができる。
【００８２】
例えば、予測部８２は、部品を搬送する搬送経路の途中に、ＡＧＶ３０に引かせて物品を搬送する台車６２を交換する指示をＡＧＶ３０に実行させた場合に、製造装置に完成品の部品が閾値以上溜められず、且つ部品が不足しないかを予測する。すなわち、予測部８２は、部品を搬送する搬送経路の途中に、台車Ａステーション１１や、台車Ｂステーション１２で台車６２を交換するタスクを実行させた場合に、製造装置に完成品の部品が閾値以上溜められず、且つ部品が不足しないかを予測する。
【００８３】
また、予測部８２は、部品を収納する収納容器を搬送させる指示をＡＧＶ３０に実行させた場合に、製造装置に完成品の部品が閾値以上溜められず、且つ部品が不足しないかを予測する。すなわち、予測部８２は、各所に溜められたラック６４をラック置場１７に搬送させるタスクを実行させた場合に、製造装置に完成品の部品が閾値以上溜められず、且つ部品が不足しないかを予測する。
【００８４】
指示部８３は、予測部８２が閾値以上の部品が溜められず、且つ部品の個数が規定値以上であると予測した場合に、ＡＧＶ３０に指示を実行させる。さらに詳しくは、未来予想推論を設定回数繰り返し実行しても、製造装置に完成品の部品が閾値以上溜められず、且つ部品の個数が規定値以上であるため製造ラインが停止しないと予測部８２が予測した場合に、指示部８３は、ＡＧＶ３０にタスクを実行させる。すなわち、指示部８３は、未来予想推論の一回目に選択した主役のＡＧＶ３０に、未来予想推論の一回目で選択した経路で移動することで、未来予想推論の一回目で選択したタスクを実行することを指示する。
【００８５】
次に、第１の実施形態にかかる搬送システム制御装置４０が実行する指示処理を説明する。ここで、指示処理とは、ＡＧＶ３０に実行させるタスク等を指示する処理である。図７は、第１の実施形態にかかる搬送システム制御装置４０が実行する指示処理を示した例示的かつ模式的なフローチャートである。
【００８６】
製造ライン情報取得部８１は、製造ライン情報を取得する（ステップＳ５１）。
【００８７】
予測部８２は、製造ライン情報に基づいて、空いているＡＧＶ３０があるか否かを判定する（ステップＳ５２）。すなわち、予測部８２は、ＡＧＶ情報に基づいて、タスクが割り当てられていないＡＧＶ３０があるか否かを判定する。全てのＡＧＶ３０にタスクが割り当てられている場合に（ステップＳ５２；Ｎｏ）、予測部８２は、ステップＳ５１に移行して、割り当てられていないＡＧＶ３０が出現するまで待機する。
【００８８】
割り当てられていないＡＧＶ３０がある場合に（ステップＳ５２；Ｙｅｓ）、予測部８２は、仮想生産シミュレーションの主役となる一のＡＧＶ３０を選択する（ステップＳ５３）。予測部８２は、主役のＡＧＶ３０に実行させるタスクを選択する（ステップＳ５４）。予測部８２は、選択したタスクを実行するＡＧＶ３０の移動経路を選択する（ステップＳ５５）。
【００８９】
予測部８２は、主役のＡＧＶ３０が、選択した移動経路で移動して、選択したタスクを実行する場合の仮想生産シミュレーションを実行する（ステップＳ５６）。更に詳しくは、予測部８２は、製造ラインの稼働を仮想的にシミュレーションする。具体的には、予測部８２は、主役のＡＧＶ３０を含む製造ラインに設置された複数のＡＧＶ３０のうち、最も早期にタスクを完了するＡＧＶ３０の実行時間を取得する。予測部８２は、仮想生産シミュレーションを取得した実行時間進める。すなわち、予測部８２は、次の状態に移行するまで仮想生産シミュレーションを進める。そして、予測部８２は、次の状態まで移行した仮想生産シミュレーションの実行結果を取得する。
【００９０】
予測部８２は、仮想生産シミュレーションの実行結果が製造ラインの停止を示しているか否かを判定する（ステップＳ５７）。すなわち、予測部８２は、仮想生産シミュレーションの実行結果が、製造装置に完成品の部品が閾値以上溜められず、且つ部品の個数が規定値以上であることを示しているか否かを判定する。
【００９１】
仮想生産シミュレーションの実行結果が製造ラインの停止を示している場合に（ステップＳ５７；Ｎｏ）、予測部８２は、ステップＳ５４に移行する。すなわち、予測部８２は、別のタスクを選択し、移動経路を選択した場合の仮想生産シミュレーションを実行する。
【００９２】
仮想生産シミュレーションの実行結果が、製造ラインは停止しないことを示している場合に（ステップＳ５７；Ｙｅｓ）、予測部８２は、ステップＳ５３からステップＳ５７までの未来予想推論を設定回数実行したか否かを判定する（ステップＳ５８）。
【００９３】
未来予想推論の実行回数が設定回数未満の場合に（ステップＳ５８；Ｎｏ）、予測部８２は、ステップＳ５３に移行する。予測部８２は、別のＡＧＶ３０を選択し、タスクを選択し、移動経路を選択した場合の仮想生産シミュレーションを実行する。
【００９４】
未来予想推論の実行回数が設定回数の場合に（ステップＳ５８；Ｙｅｓ）、指示部８３は、ＡＧＶ３０にタスクの実行を指示する。すなわち、指示部８３は、一回目の未来予想推論で選択した主役のＡＧＶ３０に、一回目の未来予想推論で選択したタスクを、一回目の未来予想推論で選択した移動経路で実行させることをＡＧＶ３０に指示する。
【００９５】
以上により、第１の実施形態にかかる搬送システム制御装置４０は、指示処理を終了する。
【００９６】
以上のように、第１の実施形態にかかる搬送システム制御装置４０によれば、製造ライン情報取得部８１は、複数の製造装置が協働して一の完成品を製造する製造ラインに関する製造ライン情報を取得する。予測部８２は、製造ライン情報取得部８１が取得した製造ライン情報に基づいて、製造ラインで物品を搬送するＡＧＶ３０に対する指示を実行させた場合に製造装置に完成品の部品が閾値以上溜められるかを予測する。指示部８３は、予測部８２が閾値以上の部品が溜められることはないと予測した場合に、ＡＧＶ３０に指示を実行させる。よって、搬送システム制御装置４０は、製造ラインの停止を防止することができる。
【００９７】
（第２の実施形態）
第２の実施形態の無人搬送システムは、ＡＧＶ３０の充電量を制御する機能を備えるものである。第２の実施形態の無人搬送システムは、第１の実施形態で説明した搬送システム制御装置４０の代わりに、搬送システム制御装置４０ａを備える。以下、図８を用いて、搬送システム制御装置４０ａの機能構成を説明する。図８は、搬送システム制御装置の機能構成の一例を示す機能ブロック図である。
【００９８】
搬送システム制御装置４０ａの制御部４２は、制御プログラムＰ１をＲＡＭ４２３に展開して動作させることによって、図８に示す動作状態取得部７１と、充電量取得部７２と、仮想生産シミュレーション部７３と、判定部７４と、タスク設定部７５とを機能部として実現する。
【００９９】
動作状態取得部７１は、ＡＧＶ３０の各々のタスク実行状態を取得する。
【０１００】
充電量取得部７２は、ＡＧＶ３０の各々のバッテリーの充電量を取得する。
【０１０１】
仮想生産シミュレーション部７３は、現在タスクを実行していないＡＧＶ３０ａ，３０ｂ，…に対して、後述するタスク設定部７５が仮想的に割り当てたタスクを実行させた場合の、各ＡＧＶ３０ａ，３０ｂ，…の充電量と工場の稼働状態のシミュレーション（未来予測推論）を行う。なお、仮想生産シミュレーション部７３は、更に、シミュレーション設定部７３ａと、充電量予測部７３ｂと、工場状態予測部７３ｃとを備える。
【０１０２】
シミュレーション設定部７３ａは、予測推論を行うための各種設定を行う。
【０１０３】
充電量予測部７３ｂは、充電量取得部７２が取得した各ＡＧＶ３０ａ，３０ｂ，…の充電量に基づいて、タスク設定部７５によって割り当てられたタスクを行ったと想定した場合の、当該ＡＧＶ３０ａ，３０ｂ，…の充電量を予測する。
【０１０４】
工場状態予測部７３ｃは、タスク設定部７５によって割り当てられたタスクを行ったと想定した場合の、タスク完了後の工場の状態（前記した各所の物品数、ＡＧＶ３０ａ，３０ｂ，…の位置、ライン停止の有無等）を予測する。
【０１０５】
判定部７４は、充電量予測部７３ｂが予測した充電量に基づいて、ＡＧＶ３０ａ，３０ｂ，…に対して、タスク設定部７５が割り当てたタスクを実行させるか、又は充電を行わせるかを判定する。
【０１０６】
タスク設定部７５は、タスクを実行していないＡＧＶ３０ａ，３０ｂ，…に対してタスクを割り当てる。
【０１０７】
（搬送システム制御装置が行う処理の流れの説明）
図９を用いて、搬送システム制御装置４０ａが行う処理の流れを説明する。図９は、搬送システム制御装置が行う一連の処理の流れの一例を示すフローチャートである。
【０１０８】
まず、図９を用いて、搬送システム制御装置４０ａが行う処理の全体の流れを説明する。最初に、動作状態取得部７１は、ＡＧＶ３０ａ，３０ｂ，…の中にタスクを行っていないＡＧＶがあるかを判定する（ステップＳ１１）。タスクを行っていないＡＧＶがあると判定される（ステップＳ１１：Ｙｅｓ）と、ステップＳ１２に進む。一方、タスクを行っていないＡＧＶがあると判定されない（ステップＳ１１：Ｎｏ）と、ステップＳ１１の判定を繰り返す。
【０１０９】
ステップＳ１１においてＹｅｓと判定されると、シミュレーション設定部７３ａは、タスクのないＡＧＶを主役に設定する（ステップＳ１２）。
【０１１０】
次に、タスク設定部７５は、実行が必要な所要タスクがあるかを判定する（ステップＳ１３）。所要タスクがあると判定される（ステップＳ１３：Ｙｅｓ）と、ステップＳ１４に進む。一方、所要タスクがあると判定されない（ステップＳ１３：Ｎｏ）と、ステップＳ１１に戻る。
【０１１１】
ステップＳ１３においてＹｅｓと判定されると、仮想生産シミュレーション部７３は、未来予測推論を行う（ステップＳ１４）。なお、ステップＳ１４における詳細な処理の流れは後述する（図１０，図１１，図１２参照）。
【０１１２】
次に、タスク設定部７５は、ステップＳ１４で行った未来予測推論の結果に基づいて、各ＡＧＶ３０ａ，３０ｂ，…に対してタスクを割り当てるとともに、割り当てたタスクを実行させる（ステップＳ１５）。その後、搬送システム制御装置４０ａは、図９の処理を終了する。
【０１１３】
なお、図９のフローチャートは、ステップＳ１４の実行後に終了しているが、これは、ステップＳ１４の実行後に、再びステップＳ１１に戻って、次のタスク割り当てを行う構成としてもよい。
【０１１４】
（未来予想推論の流れの説明）
仮想生産シミュレーション部７３は、工場を円滑に稼働させるために、数手先まで各ＡＧＶ３０ａ，３０ｂ，…に対するタスク割り当てを行う。すなわち、未来予測推論をＮ回に分けて行う。１回目の予測推論では、各ＡＧＶ３０ａ，３０ｂ，…に行わせる最初のタスクを割り当てる。そして、２回目の予測推論として、ＡＧＶ３０ａ，３０ｂ，…のうち、いずれかが１回目のタスクを完了した時点を想定して、当該時点における新たなタスクの割り当てを行う。以降、同様に３回目の予測推論、４回目の予測推論、…、Ｎ回目の予測推論を行い、その都度各ＡＧＶ３０ａ，３０ｂ，…にタスクを割り当てる。ある回数の予測推論が完了すると、その時点で、タスクのないＡＧＶ、及び所要タスクが新たに出現するため、新たな予測推論は、これらのＡＧＶ及び新たな所要タスクを加えて行う。なお、各回の予測推論を行った後で、工場のライン停止が発生しないかを評価する。ライン停止が発生するおそれがある場合は、タスクの割り当てを変更して、当該回の予測推論を再度実行する。
【０１１５】
以下、図１０を用いて、未来予測推論の流れを説明する。図１０は、搬送システム制御装置が行う未来予測推論の流れの一例を示すフローチャートである。
【０１１６】
仮想生産シミュレーション部７３は、１回目の予測推論を行う（ステップＳ２１）。なお、１回目の予測推論の詳細な処理の流れは後述する（図１１参照）。
【０１１７】
次に、仮想生産シミュレーション部７３は、２回目の予測推論を行う（ステップＳ２２）。なお、２回目以降の予測推論の詳細な処理の流れは後述する（図１２参照）。
【０１１８】
仮想生産シミュレーション部７３は、同様の予測推論を繰り返し実行して、Ｎ回目の予測推論を行う（ステップＳ２３）。その後、図９のメインルーチンのステップＳ１５に戻る。
【０１１９】
（１回目の未来予想推論の流れの説明）
以下、図１１を用いて、１回目の未来予測推論の流れを説明する。図１１は、搬送システム制御装置が行う１回目の未来予測推論の流れの一例を示すフローチャートである。
【０１２０】
充電量予測部７３ｂは、全てのＡＧＶ３０ａ，３０ｂ，…のバッテリーの平均充電量が第２の閾値Ｔｈ２よりも少なく、尚且つ全てのＡＧＶ３０ａ，３０ｂ，…のバッテリーの充電量の分散が第３の閾値Ｔｈ３よりも小さいかを判定する（ステップＳ２５）。条件を満足すると判定される（ステップＳ２５：Ｙｅｓ）と、ステップＳ２６に進む。一方、条件を満足すると判定されない（ステップＳ２５：Ｎｏ）と、ステップＳ３２に進む。
【０１２１】
なお、第２の閾値Ｔｈ２は、第１の閾値Ｔｈ１よりも大きい値、例えば４０％に設定される。第２の閾値Ｔｈ２を第１の閾値Ｔｈ１よりも大きい値に設定することによって、充電量が、タスクの遂行を継続可能な最低レベル（第１の閾値Ｔｈ１）を下回る前に、早い時点で充電を行わせることができる。
【０１２２】
また、第３の閾値Ｔｈ３は、事前の評価を行って、適切な値に設定すればよい。なお、評価するパラメータは、充電量の分散に限定されるものではなく、充電量のばらつきを表すパラメータであればよい。例えば、標準偏差や、最大値と最小値の差分値等であってもよい。
【０１２３】
ステップＳ２５においてＹｅｓと判定されると、タスク設定部７５は、図９のステップＳ１２で設定された主役のＡＧＶに予測充電タスクＴ９を割り当てる（ステップＳ２６）。その後、図９のメインルーチンのステップＳ１５に戻る。
【０１２４】
一方、ステップＳ２５においてＮｏと判定されると、タスク設定部７５は、図９のステップＳ１２で設定された主役のＡＧＶに対して、実行する必要があるタスクを割り当てる（ステップＳ３２）。具体的には、前記したバッファ数が不足していることが検出された順番に、当該不足を補うタスクを割り当てる（ＦＩＦＯ）のが望ましい。
【０１２５】
続いて、仮想生産シミュレーション部７３は、仮想生産シミュレーションを行う（ステップＳ３３）。仮想生産シミュレーション部７３は、具体的には、各ＡＧＶ３０ａ，３０ｂ，…の未来の状態を時系列でシミュレーションする。その際、充電量予測部７３ｂは、各ＡＧＶ３０ａ，３０ｂ，…のバッテリーの充電量を予測する。また、工場状態予測部７３ｃは、タスク完了後の工場の状態を予測する。
【０１２６】
充電量予測部７３ｂは、主役のＡＧＶに、実行する必要があるタスクをそれぞれ行わせた際に、いずれのタスクを実行させた場合でも、タスク完了時の充電量が第１の閾値Ｔｈ１より少ないかを判定する（ステップＳ３４）。いずれのタスクを実行させた場合でも、タスク完了時の充電量が第１の閾値Ｔｈ１よりも少ないと判定される（ステップＳ３４：Ｙｅｓ）と、ステップＳ３５に進む。一方、主役のＡＧＶにいずれかのタスクを実行させた際に、タスク完了時の充電量が第１の閾値Ｔｈ１よりも少ないと判定されない（ステップＳ３４：Ｎｏ）と、ステップＳ３６に進む。
【０１２７】
なお、第１の閾値Ｔｈ１は、前記した充電量の所定の値に対応し、例えば３０％に設定される。
【０１２８】
ステップＳ３４においてＹｅｓと判定されると、タスク設定部７５は、主役のＡＧＶに対して予測充電タスクＴ９を割り当てる（ステップＳ３５）。その後、図９のメインルーチンのステップＳ１５に戻る。
【０１２９】
なお、ステップＳ３５において予測充電タスクＴ９が割り当てられたＡＧＶは、２回目以降の予測推論においてタスクが割り当てられないように、タスク設定部７５は、当該ＡＧＶを、タスク実行可能なＡＧＶのリストから削除する。そして、予測充電タスクＴ９が完了した場合に、タスク設定部７５は、当該ＡＧＶをタスク実行可能なＡＧＶのリストに再登録する。
【０１３０】
一方、ステップＳ３４においてＮｏと判定されると、工場状態予測部７３ｃは、割り当てられたタスク完了時に、工場のライン停止が発生しないかを判定する（ステップＳ３６）。工場のライン停止が発生しないと判定される（ステップＳ３６：Ｙｅｓ）と、２回目の予測推論（図１２参照）に進む。一方、工場のライン停止が発生しないと判定されない（ステップＳ３６：Ｎｏ）と、ステップＳ３２に戻って、タスクの割り当てを変更し、再度１回目の予測推論を行う。なお、工場のライン停止が発生するかの判定は、前記したように、例えば、工場の各所における物品数の不足が生じないか等に基づいて行えばよい。
【０１３１】
（２回目以降の未来予想推論の流れの説明）
以下、図１２を用いて、２回目以降の未来予測推論の流れを説明する。図１２は、搬送システム制御装置が行うｉ回目（ｉ＝２，３，…）の未来予測推論の流れの一例を示すフローチャートである。
【０１３２】
図１２のフローチャートが示す処理の流れは、図１１のフローチャートで説明した処理の流れとほぼ同様であるため、動作が異なる点のみを説明する。
【０１３３】
すなわち、図１２のフローチャートが示す処理の流れは、図１１のステップＳ３５に対応するステップＳ４５の処理を行った後で、メインルーチンに戻らずに、予測推論を継続する点が異なる。
【０１３４】
また、２回目以降の予測推論を行う際には、まず、ステップＳ４１において、シミュレーション設定部７３ａが、タスクのないＡＧＶを主役に設定して、主役のＡＧＶに対して、割当可能なタスクを割り当てる。
【０１３５】
このように、２回目以降の予測推論では、主役のＡＧＶに予測充電タスクＴ９が割り当てられた場合に、予測推論を継続する。なお、前記したように、タスク設定部７５は、予測充電タスクＴ９が割り当てられたＡＧＶを、タスク実行可能なＡＧＶのリストから削除する。そして、タスク設定部７５は、予測充電タスクＴ９が完了した場合に、当該ＡＧＶをタスク実行可能なＡＧＶのリストに再登録する。
【０１３６】
また、２回目以降の予測推論の中で、ステップＳ４６及びステップＳ４７を実行することによって、割り当てたタスクを実行したと想定した場合の、全ＡＧＶの充電量を予測して、条件を満たす最も充電量が少ないと予測されたＡＧＶに充電タスクを割り当ててもよい。
【０１３７】
以上説明したように、第２の実施の形態の搬送システム制御装置４０ａによれば、動作状態取得部７１が、ＡＧＶ（無人搬送車）３０の各々のタスク実行状態を取得して、タスク設定部７５が、タスクを実行していないＡＧＶ３０ａ，３０ｂ，…に対してタスクを割り当てる。そして、充電量予測部７３ｂが、各ＡＧＶ３０ａ，３０ｂ，…が割り当てられたタスクを行ったと想定した場合の、各ＡＧＶ３０ａ，３０ｂ，…の充電量を予測する。そして、判定部７４が、充電量予測部７３ｂが予測した充電量に基づいて、各ＡＧＶ３０ａ，３０ｂ，…に対して、タスク設定部７５が割り当てたタスクを実行させるか、又は充電を行わせるかを判定する。したがって、ＡＧＶ３０の充電の頻度をできるだけ低く抑えることによって、ＡＧＶ３０の稼働率を向上させることができる。
【０１３８】
また、第２の実施形態の搬送システム制御装置４０ａによれば、判定部７４は、充電量予測部７３ｂが予測した充電量が第１の閾値Ｔｈ１以上である場合に、当該ＡＧＶ３０（無人搬送車）に対して割り当てたタスクを実行させる。したがって、タスク完了時のバッテリーの充電量が、タスクの遂行を継続可能な最低レベルを下回らないＡＧＶ３０に対して、優先的にタスクを割り当てることができるため、充電の頻度を下げることができる。
【０１３９】
また、第２の実施形態の搬送システム制御装置４０ａによれば、判定部７４は、充電量予測部７３ｂが予測した充電量が第１の閾値Ｔｈ１よりも少ない場合に、当該ＡＧＶ３０（無人搬送車）に対して充電を行わせる。したがって、充電量が少ないＡＧＶ３０に対して、優先的に充電を行わせることができる。
【０１４０】
また、第２の実施形態の搬送システム制御装置４０ａによれば、判定部７４は、ＡＧＶ３０（無人搬送車）の各々のバッテリーの現在の充電量の平均値が第２の閾値Ｔｈ２よりも少なくて、尚且つ充電量の分散（ばらつき）が第３の閾値Ｔｈ３よりも小さい場合に、タスクを行っていない充電量が最も少ないＡＧＶ３０に対して充電を行わせる。したがって、全てのＡＧＶ３０が同時に充電切れになる事態を回避することができる。さらに、同時に充電可能なＡＧＶ３０の数が制限される場合に、複数の無人搬送車が同時に充電を行う事態を回避することができる。
【０１４１】
また、第２の実施形態の搬送システム制御装置４０ａによれば、第２の閾値Ｔｈ２は、第１の閾値Ｔｈ１よりも大きい値に設定される。したがって、タスクの遂行を継続可能な最低レベルを下回る前に、できるだけ早い時点で充電を行わせることができる。
【０１４２】
また、第２の実施形態の搬送システム制御装置４０ａによれば、タスク設定部７５は、充電を行わせることが設定されたＡＧＶ３０（無人搬送車）を、タスク設定が可能なＡＧＶ３０の候補から削除する。したがって、充電中のＡＧＶ３０に対してタスク割り当てを行うのを防止することができる。
【０１４３】
また、第２の実施形態の搬送システム制御装置４０ａによれば、タスク設定部７５は、充電が完了したＡＧＶ３０（無人搬送車）を、タスク設定が可能なＡＧＶ３０の候補に追加する。したがって、充電を完了したＡＧＶ３０は、即座にタスク割り当ての候補とすることができる。
【０１４４】
以上、本発明の実施形態を例示したが、上記実施形態はあくまで一例であって、発明の範囲を限定することは意図していない。上記実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、組み合わせ、変更を行うことができる。また、各実施形態の構成や形状は、部分的に入れ替えて実施することも可能である。
【符号の説明】
【０１４５】
１０…無人搬送システム、３０，３０ａ，３０ｂ…ＡＧＶ（無人搬送車）、４０，４０ａ…搬送システム制御装置、７１…動作状態取得部、７２…充電量取得部、７３…仮想生産シミュレーション部、７３ａ…シミュレーション設定部、７３ｂ…充電量予測部、７３ｃ…工場状態予測部、７４…判定部、７５…タスク設定部、８１…製造ライン情報取得部、８２…予測部、８３…指示部、Ｔｈ１…第１の閾値、Ｔｈ２…第２の閾値、Ｔｈ３…第３の閾値
【図１】
2020155076.tif 000003
【図２】
2020155076.tif 000004
【図３】
2020155076.tif 000005
【図４】
2020155076.tif 000006
【図５】
2020155076.tif 000007
【図６】
2020155076.tif 000008
【図７】
2020155076.tif 000009
【図８】
2020155076.tif 000010
【図９】
2020155076.tif 000011
【図１０】
2020155076.tif 000012
【図１１】
2020155076.tif 000013
【図１２】
2020155076.tif 000014