JP2020004182A - Robot, robot control program and robot control method - Google Patents

Robot, robot control program and robot control method Download PDF

Info

Publication number
JP2020004182A
JP2020004182A JP2018124289A JP2018124289A JP2020004182A JP 2020004182 A JP2020004182 A JP 2020004182A JP 2018124289 A JP2018124289 A JP 2018124289A JP 2018124289 A JP2018124289 A JP 2018124289A JP 2020004182 A JP2020004182 A JP 2020004182A
Authority
JP
Japan
Prior art keywords
robot
movement
human
plan
profit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2018124289A
Other languages
Japanese (ja)
Inventor
祥平 秋田
Shohei Akita
祥平 秋田
神田 崇行
Takayuki Kanda
崇行 神田
聡 佐竹
Satoshi Satake
聡 佐竹
昌裕 塩見
Masahiro Shiomi
昌裕 塩見
今井 倫太
Michita Imai
倫太 今井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ATR Advanced Telecommunications Research Institute International
Original Assignee
ATR Advanced Telecommunications Research Institute International
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ATR Advanced Telecommunications Research Institute International filed Critical ATR Advanced Telecommunications Research Institute International
Priority to JP2018124289A priority Critical patent/JP2020004182A/en
Publication of JP2020004182A publication Critical patent/JP2020004182A/en
Pending legal-status Critical Current

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Manipulator (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

To realize sharing of a space apart from a task.SOLUTION: A system 10 includes a robot 12, and the robot 12 is connected to a user terminal 16 via a network 14 so as to allow communication. When a task following a command from a user terminal is performed, a robot produces a path plan by selecting a combination that has the maximum mutual benefit based on a benefit when a human selects a certain movement candidate point and based on a benefit when the robot selects a certain movement candidate point. When the task is performed, the robot moves according to the path plan thus produced.SELECTED DRAWING: Figure 1

Description

この発明はロボット、ロボット制御プログラムおよびロボット制御方法に関し、特にたとえば、サービスを提供したり、サービスの提供を受けたりする、ロボット、ロボット制御プログラムおよびロボット制御方法に関する。   The present invention relates to a robot, a robot control program, and a robot control method, and more particularly to, for example, a robot, a robot control program, and a robot control method for providing a service or receiving a service.

この種の従来のロボットの一例が特許文献1に開示されている。この特許文献1に開示される説明ロボットは、この説明ロボットから訪問客に働きかけて、展示物の見所部分の説明を行う。説明ロボットは、展示物の見所部分を見易い領域に対して設定された見所領域以外の位置であって、かつ訪問客の現在位置から見所領域までの訪問客の通り道を塞がない位置であることを条件として、展示物の説明を行う際の立ち位置となる説明位置を選択する。   An example of a conventional robot of this type is disclosed in Patent Document 1. The explanation robot disclosed in Patent Literature 1 works on a visitor from the explanation robot to explain the highlight of the exhibit. The description robot is located at a position other than the highlight area set for the area where the highlight part of the exhibit is easy to see and does not block the path of the visitor from the current position of the visitor to the highlight area. , A description position to be a standing position when explaining the exhibit is selected.

特開2015−66624号JP-A-2015-66624

しかし、特許文献1の説明ロボットでは、訪問客に働きかけて、展示物の見所部分の説明を行うタスクの中に、上記のような空間を譲る条件がルールとして埋め込まれている。また、人間とロボットの立場が逆転する場合には、空間を譲られる条件がルールとして埋め込まれる。このように、タスクの中にルールを埋め込む方法では、人間とロボットのそれぞれの役割、現実空間における人間とロボットの位置関係、および、人間とロボットのそれぞれの行動の目的などの状況毎に、多種多様なルールを記述する必要があり、ルールが複雑化する。この結果、ルールの管理およびデバックが複雑化する。また、すべてのルールを網羅的に記述するのは面倒である。つまり、タスクの生成およびロボットの制御が困難になってしまう。   However, in the explanation robot of Patent Literature 1, a condition for yielding the space as described above is embedded as a rule in a task of working with a visitor to explain a highlight of an exhibit. Also, when the positions of the human and the robot are reversed, the condition for yielding the space is embedded as a rule. In this way, the method of embedding rules in a task involves various types of situations, such as the roles of humans and robots, the positional relationship between humans and robots in the real space, and the purpose of each action of humans and robots. It is necessary to describe various rules, and the rules are complicated. This complicates rule management and debugging. In addition, it is troublesome to describe all rules comprehensively. In other words, task generation and robot control become difficult.

それゆえに、この発明の主たる目的は、新規な、ロボット、ロボット制御プログラムおよびロボット制御方法を提供することである。   Therefore, a main object of the present invention is to provide a novel robot, a robot control program, and a robot control method.

また、この発明の他の目的は、タスクと切り離して空間の譲り合いを実現できる、ロボット、ロボット制御プログラムおよびロボット制御方法を提供することである。   Further, another object of the present invention is to provide a robot, a robot control program, and a robot control method that can realize a transfer of space separately from a task.

第1の発明は、移動手段を備えるロボットであって、ロボットの周囲に存在する人間が第1移動計画を選択した場合の第1利益を算出する第1利益算出手段、ロボットが第2移動計画を選択した場合の第2利益を算出する第2利益算出手段、第1利益と第2利益に基づく相互利益が最大となる第1移動計画および第2移動計画の組み合わせを選択することにより、ロボットが移動する経路計画を作成する作成手段、および作成手段によって作成された経路計画に従って移動するように移動手段を制御する制御手段を備える、ロボットである。   A first invention is a robot provided with a moving means, wherein a first profit calculating means for calculating a first profit when a human present around the robot selects the first moving plan, and wherein the robot has a second moving plan. A second profit calculating means for calculating a second profit in the case of selecting a robot, by selecting a combination of a first movement plan and a second movement plan that maximize mutual benefit based on the first profit and the second profit. Is a robot comprising: creating means for creating a route plan for moving; and control means for controlling the moving means so as to move in accordance with the route plan created by the creating means.

第2の発明は、第1の発明に従属し、人間の移動およびロボットの移動の優位性に基づいて相互利益を算出する相互利益算出手段をさらに備える。   A second invention is according to the first invention, and further includes a mutual benefit calculating means for calculating a mutual benefit based on the superiority of the movement of the human and the movement of the robot.

第3の発明は、第2の発明に従属し、第1利益算出手段は、所定時間毎に、人間が存在可能な各位置への第1移動計画を選択した場合の第1利益をそれぞれ算出し、第2利益算出手段は、所定時間毎に、ロボットが存在可能な各位置への第2移動計画を選択した場合の第2利益のそれぞれを算出し、相互利益算出手段は、所定時間毎に、人間が存在可能な各位置とロボットが存在可能な各位置についてのすべての組み合わせについて相互利益を算出し、作成手段は、所定時間毎に、相互利益が最大となる第1移動計画および第2移動計画の組み合わせを選択することにより、ロボットが移動する経路計画を作成する。   A third invention is according to the second invention, wherein the first profit calculating means calculates a first profit when a first movement plan to each position where a human can exist is selected at predetermined time intervals. Then, the second profit calculating means calculates each of the second profits when the second movement plan to each position where the robot can exist is selected every predetermined time, and the mutual profit calculating means calculates the second profit every predetermined time. In addition, the mutual benefit is calculated for all combinations of each position where a human can exist and each position where a robot can exist, and the creating means generates a first movement plan and a second travel plan that maximize the mutual benefit every predetermined time. By selecting a combination of two movement plans, a path plan for the robot to move is created.

第4の発明は、第1から第3までのいずれかの発明に従属し、作成手段は、人間とロボットが衝突する組み合わせについては選択肢から除外する。   A fourth invention is according to any one of the first to third inventions, and the creating unit excludes a combination in which a human and a robot collide from each other.

第5の発明は、第1から第4までのいずれかの発明に従属し、作成手段は、第1移動計画および第2移動計画の組み合わせと同じ組み合わせについては選択肢から除外する。   A fifth invention is according to any one of the first to fourth inventions, and the creating unit excludes the same combination as the combination of the first movement plan and the second movement plan from options.

第6の発明は、移動手段を備えるロボットを制御するロボット制御プログラムであって、ロボットまたは当該ロボットと通信可能なコンピュータのプロセッサに、ロボットの周囲に存在する人間が第1移動計画を選択した場合の第1利益を算出する第1利益算出ステップ、ロボットが第2移動計画を選択した場合の第2利益を算出する第2利益算出ステップ、第1利益と第2利益に基づく相互利益が最大となる第1移動計画および第2移動計画の組み合わせを選択することにより、ロボットが移動する経路計画を作成する作成ステップ、および作成ステップにおいて作成した経路計画に従って移動するように移動手段を制御する制御ステップを実行させる、ロボット制御プログラムである。   A sixth invention is a robot control program for controlling a robot having moving means, wherein a robot or a computer of a computer capable of communicating with the robot selects a first movement plan by a person present around the robot. A first profit calculating step of calculating a first profit, a second profit calculating step of calculating a second profit when the robot selects the second movement plan, and a mutual benefit based on the first profit and the second profit is maximized. Creating a route plan for the robot to move by selecting a combination of the first movement plan and the second movement plan, and a control step of controlling the moving means to move according to the route plan created in the creation step Is a robot control program.

第7の発明は、移動手段を備えるロボットを制御するロボット制御方法であって、(a)ロボットの周囲に存在する人間が第1移動計画を選択した場合の第1利益を算出するステップ、(b)ロボットが第2移動計画を選択した場合の第2利益を算出するステップ、(c)第1利益と第2利益に基づく相互利益が最大となる第1移動計画および第2移動計画の組み合わせを選択することにより、ロボットが移動する経路計画を作成するステップ、および(d)ステップ(c)において作成した経路計画に従って移動するように移動手段を制御するステップを含む、ロボット制御方法である。   A seventh invention is a robot control method for controlling a robot provided with a moving means, wherein (a) calculating a first profit when a person present around the robot selects the first movement plan; b) calculating a second benefit when the robot selects the second travel plan; (c) a combination of the first travel plan and the second travel plan that maximize the mutual benefit based on the first benefit and the second benefit. And (d) controlling the moving means so as to move in accordance with the path plan created in step (c).

この発明によれば、タスクと切り離して空間の譲り合いを実現することができる。   According to the present invention, it is possible to realize space transfer separately from tasks.

この発明の上述の目的、その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。   The above and other objects, features and advantages of the present invention will become more apparent from the following detailed description of embodiments with reference to the drawings.

図1はこの発明の一実施例を示すシステムの概要を示す図である。FIG. 1 is a diagram showing an outline of a system showing an embodiment of the present invention. 図2は図1に示すロボットの外観を正面から見た図である。FIG. 2 is a front view of the appearance of the robot shown in FIG. 図3は図1に示すロボットの電気的な構成を示すブロック図である。FIG. 3 is a block diagram showing an electrical configuration of the robot shown in FIG. 図4(A)はロボットが目的地まで移動する行動についてのタスクを実行する場合において、狭い幅の通路の一方の端に人間が位置し、他方の端にロボットが位置する状態を示す図であり、図4(B)は図4(A)に示す状態から、人間が狭い幅の通路を通行する状態に変化したことを示す図である。FIG. 4A is a diagram showing a state in which a human is located at one end of a narrow passage and a robot is located at the other end in a case where the robot executes a task of an action of moving to a destination. FIG. 4B is a diagram showing that the state has been changed from the state shown in FIG. 4A to a state in which a person passes through a narrow passage. 図5(A)は図4(B)に示す状態から、人間が狭い幅の通路を通行し終えた状態に変化したことを示す図であり、図5(B)は図5(A)に示す状態から、人間が狭い幅の通路から去った後に、ロボットが狭い幅の通路を通行する状態に変化したことを示す図である。FIG. 5 (A) is a diagram showing that the state has changed from the state shown in FIG. 4 (B) to a state in which a person has completed the passage of a narrow width, and FIG. FIG. 10 is a diagram showing that the robot has changed from a state shown to a state in which a robot passes through a narrow path after a human has left the narrow path. 図6はロボットが配置される環境における展示物の配置位置を示す図である。FIG. 6 is a diagram showing an arrangement position of an exhibit in an environment where a robot is arranged. 図7は展示物を鑑賞する行動を行う場合における利益を説明するための図である。FIG. 7 is a diagram for explaining a profit in performing an action of appreciating an exhibit. 図8(A)は人間が移動している場合の当該人間の目的地を推定する方法を説明するための図であり、図8(B)は人間が停止している場合の当該人間の目的地を推定する方法を説明するための図である。FIG. 8A is a diagram for explaining a method of estimating the destination of a person when the person is moving, and FIG. 8B is a diagram illustrating the purpose of the person when the person is stopped. It is a figure for explaining the method of estimating the ground. 図9は経路計画を作成する方法を説明するための図である。FIG. 9 is a diagram for explaining a method of creating a route plan. 図10(A)はロボットの移動候補を説明するための図であり、図10(B)は人間の移動候補を説明するための図であり、図10(C)は移動候補点を説明するための図である。FIG. 10A is a diagram for explaining a candidate for movement of a robot, FIG. 10B is a diagram for explaining a candidate for human movement, and FIG. 10C is a diagram for explaining a candidate point for movement. FIG. 図11は図3に示すメモリのメモリマップの一例を示す図解図である。FIG. 11 is an illustrative view showing one example of a memory map of the memory shown in FIG. 3; 図12は図3に示すCPUのロボット制御処理の一部を示すフロー図である。FIG. 12 is a flowchart showing a part of the robot control process of the CPU shown in FIG. 図13は図3に示すCPUのロボット制御処理の他の一部であって、図12に後続するフロー図である。FIG. 13 is a flowchart showing another part of the robot control process of the CPU shown in FIG. 3, and being sequel to FIG. 図14は図3に示すCPUの経路計画の作成処理の一部を示すフロー図である。FIG. 14 is a flowchart showing a part of the route plan creation processing of the CPU shown in FIG. 図15は図3に示すCPUの経路計画の作成処理の他の一部であって、図14に後続するフロー図である。FIG. 15 is a flowchart showing another part of the route plan creation process of the CPU shown in FIG. 3 and subsequent to FIG. 図16は図3に示すCPUの経路計画の作成処理のその他の一部であって、図15に後続するフロー図である。FIG. 16 is a flowchart showing another part of the process of creating the route plan by the CPU shown in FIG. 3 and subsequent to FIG.

図1を参照して、この実施例のシステム10は、コミュニケーションロボット(以下、単に「ロボット」という。)12を含む。このロボット12は、音声および身体動作(ジェスチャ)の少なくとも一方を用いて、人間や他のロボットとコミュニケーションを行うことができる。また、ロボット12は、たとえば無線LANなどのネットワーク14に接続し、ネットワーク14上のコンピュータと通信することができる。   Referring to FIG. 1, a system 10 of this embodiment includes a communication robot (hereinafter simply referred to as “robot”) 12. The robot 12 can communicate with a human or another robot using at least one of a voice and a body motion (gesture). In addition, the robot 12 can connect to a network 14 such as a wireless LAN, and communicate with a computer on the network 14.

この実施例では、ロボット12は、いわゆるテレプレゼンス(または、テレイグジステンス)ロボットであり、ネットワーク14に接続されたユーザ端末16と通信可能である。ユーザ端末16は、ロボット12を遠隔操作する操作者(以下、「ユーザ」という)が使用する汎用のコンピュータである。ユーザは、ユーザ端末16を用いてロボット12にタスクを実行させるためのコマンドを送信する。また、ユーザは、ユーザ端末16を用いて音声をロボット12に送信し、ロボット12から音声を出力することにより、ロボット12の近傍に存在する人間に話をする。以下、この明細書においては、ユーザに対して、ロボット12またはロボット12を遠隔操作するユーザのコミュニケーション対象を「人間」または「人」と呼ぶことにする。   In this embodiment, the robot 12 is a so-called telepresence (or teleexistence) robot, and can communicate with a user terminal 16 connected to a network 14. The user terminal 16 is a general-purpose computer used by an operator who remotely operates the robot 12 (hereinafter, referred to as “user”). The user uses the user terminal 16 to transmit a command for causing the robot 12 to execute a task. In addition, the user transmits a voice to the robot 12 using the user terminal 16 and outputs a voice from the robot 12 to talk to a person existing near the robot 12. Hereinafter, in this specification, a communication target of the robot 12 or a user who remotely operates the robot 12 is referred to as a “human” or a “human”.

また、ロボット12から送信される音声および/または映像(動画像または静止画像)をユーザ端末16で受信し、ユーザ端末16で音声および/または映像を出力することにより、ユーザは、ロボット12の周囲に存在する物を見たり、ロボット12の周囲の状況を把握したり、ロボット12の周囲に存在する人間の話を聞いたりすることができる。   In addition, by receiving voice and / or video (moving image or still image) transmitted from the robot 12 at the user terminal 16 and outputting voice and / or video at the user terminal 16, the user is able to The user can see objects existing in the robot 12, grasp the situation around the robot 12, and listen to a human being around the robot 12.

なお、遠隔に設けられたユーザ端末16でロボット12を操作等することは既に周知であり、また、本願の本質的な内容ではないため、この明細書においては、遠隔操作についての詳細な説明は省略する。   It is well known that the robot 12 is operated by the user terminal 16 provided at a remote place, and is not an essential content of the present application. Omitted.

図2を参照して、ロボット12のハードウェアの構成について説明する。図2は、この実施例のロボット12の外観を示す正面図である。ロボット12は台車30を含み、台車30の下面にはロボット12を自律移動させる2つの車輪32および1つの従輪34が設けられる。2つの車輪32は車輪モータ36(図3参照)によってそれぞれ独立に駆動され、台車30すなわちロボット12を前後左右の任意方向に動かすことができる。また、従輪34は車輪32を補助する補助輪である。したがって、ロボット12は、配置された空間内を自律制御によって移動可能である。   The hardware configuration of the robot 12 will be described with reference to FIG. FIG. 2 is a front view showing the appearance of the robot 12 of this embodiment. The robot 12 includes a carriage 30, and two wheels 32 and one driven wheel 34 for autonomously moving the robot 12 are provided on a lower surface of the carriage 30. The two wheels 32 are independently driven by wheel motors 36 (see FIG. 3), and can move the cart 30, that is, the robot 12, in any direction of front, rear, left and right. The driven wheel 34 is an auxiliary wheel for assisting the wheel 32. Therefore, the robot 12 can move in the arranged space by autonomous control.

台車30の上には、円柱形のセンサ取り付けパネル38が設けられ、このセンサ取り付けパネル38には、多数の赤外線距離センサ40が取り付けられる。これらの赤外線距離センサ40は、センサ取り付けパネル38すなわちロボット12の周囲の物体(人間や障害物など)との距離を測定するものである。   A cylindrical sensor mounting panel 38 is provided on the carriage 30, and a number of infrared distance sensors 40 are mounted on the sensor mounting panel 38. These infrared distance sensors 40 measure the distance from the sensor mounting panel 38, that is, the object (human or obstacle) around the robot 12.

なお、この実施例では、距離センサとして、赤外線距離センサを用いるようにしてあるが、赤外線距離センサに代えて、超音波距離センサやミリ波レーダなどを用いることもできる。   In this embodiment, an infrared distance sensor is used as the distance sensor, but an ultrasonic distance sensor or a millimeter wave radar may be used instead of the infrared distance sensor.

センサ取り付けパネル38の上には、胴体42が直立するように設けられる。また、胴体42の前方中央上部(人の胸に相当する位置)には、上述した赤外線距離センサ40がさらに設けられ、ロボット12の前方の主として人間との距離を計測する。また、胴体42には、その側面側上端部のほぼ中央から伸びる支柱44が設けられ、支柱44の上には、全方位カメラ46が設けられる。全方位カメラ46は、ロボット12の周囲を撮影するものであり、後述する眼カメラ70とは区別される。この全方位カメラ46としては、たとえばCCDやCMOSのような固体撮像素子を用いるカメラを採用することができる。なお、これら赤外線距離センサ40および全方位カメラ46の設置位置は、当該部位に限定されず適宜変更され得る。   A body 42 is provided on the sensor mounting panel 38 so as to stand upright. In addition, the above-mentioned infrared distance sensor 40 is further provided at the upper front center of the torso 42 (at a position corresponding to the chest of a person), and measures the distance to a person mainly in front of the robot 12. Further, the body 42 is provided with a support 44 extending from substantially the center of the upper end on the side surface, and an omnidirectional camera 46 is provided on the support 44. The omnidirectional camera 46 is for photographing the periphery of the robot 12 and is distinguished from an eye camera 70 described later. As the omnidirectional camera 46, for example, a camera using a solid-state imaging device such as a CCD or a CMOS can be employed. In addition, the installation positions of the infrared distance sensor 40 and the omnidirectional camera 46 are not limited to the parts and can be appropriately changed.

胴体42の両側面上端部(人の肩に相当する位置)には、それぞれ、肩関節48Rおよび肩関節48Lによって、上腕50Rおよび上腕50Lが設けられる。図示は省略するが、肩関節48Rおよび肩関節48Lは、それぞれ、直交する3軸の自由度を有する。すなわち、肩関節48Rは、直交する3軸のそれぞれの軸廻りにおいて上腕50Rの角度を制御できる。肩関節48Rの或る軸(ヨー軸)は、上腕50Rの長手方向(または軸)に平行な軸であり、他の2軸(ピッチ軸およびロール軸)は、その軸にそれぞれ異なる方向から直交する軸である。同様にして、肩関節48Lは、直交する3軸のそれぞれの軸廻りにおいて上腕50Lの角度を制御できる。肩関節48Lの或る軸(ヨー軸)は、上腕50Lの長手方向(または軸)に平行な軸であり、他の2軸(ピッチ軸およびロール軸)は、その軸にそれぞれ異なる方向から直交する軸である。   An upper arm 50R and an upper arm 50L are provided at upper ends of both sides of the torso 42 (positions corresponding to the shoulders of the person) by shoulder joints 48R and 48L, respectively. Although not shown, the shoulder joint 48R and the shoulder joint 48L each have three orthogonal degrees of freedom. That is, the shoulder joint 48R can control the angle of the upper arm 50R around each of the three orthogonal axes. One axis (yaw axis) of the shoulder joint 48R is an axis parallel to the longitudinal direction (or axis) of the upper arm 50R, and the other two axes (pitch axis and roll axis) are orthogonal to the axes from different directions. It is the axis to do. Similarly, the shoulder joint 48L can control the angle of the upper arm 50L around each of the three orthogonal axes. One axis (yaw axis) of the shoulder joint 48L is an axis parallel to the longitudinal direction (or axis) of the upper arm 50L, and the other two axes (pitch axis and roll axis) are orthogonal to the axes from different directions. It is the axis to do.

また、上腕50Rおよび上腕50Lのそれぞれの先端には、肘関節52Rおよび肘関節52Lが設けられる。図示は省略するが、肘関節52Rおよび肘関節52Lは、それぞれ1軸の自由度を有し、この軸(ピッチ軸)の軸回りにおいて前腕54Rおよび前腕54Lの角度を制御できる。   An elbow joint 52R and an elbow joint 52L are provided at the respective distal ends of the upper arm 50R and the upper arm 50L. Although not shown, the elbow joint 52R and the elbow joint 52L each have one degree of freedom, and the angles of the forearm 54R and the forearm 54L can be controlled around this axis (pitch axis).

前腕54Rおよび前腕54Lのそれぞれの先端には、人の手に相当する球体56Rおよび球体56Lがそれぞれ設けられる。ただし、指や掌の機能が必要な場合には、人間の手に酷似した形状および機能を持たせた「手」を設けることも可能である。   A sphere 56R and a sphere 56L corresponding to a human hand are provided at the distal ends of the forearm 54R and the forearm 54L, respectively. However, when a function of a finger or a palm is required, a “hand” having a shape and a function very similar to a human hand can be provided.

また、図示は省略するが、台車30の前面、肩関節48Rと肩関節48Lとを含む肩に相当する部位、上腕50R、上腕50L、前腕54R、前腕54L、球体56Rおよび球体56Lには、それぞれ、接触センサ58(図3で包括的に示す)が設けられる。台車30の前面の接触センサ58は、台車30への人間や他の障害物の接触を検知する。したがって、ロボット12は、その自身の移動中に障害物との接触が有ると、それを検知し、直ちに車輪32の駆動を停止してロボット12の移動を急停止させることができる。また、その他の接触センサ58は、当該各部位に触れたかどうかを検知する。なお、接触センサ58の設置位置は、当該部位に限定されず、適宜な位置(人の胸、腹、脇、背中および腰に相当する位置)に設けられてもよい。   Although not shown, the front surface of the bogie 30, a portion corresponding to the shoulder including the shoulder joint 48R and the shoulder joint 48L, the upper arm 50R, the upper arm 50L, the forearm 54R, the forearm 54L, the sphere 56R, and the sphere 56L are respectively provided. , A contact sensor 58 (shown generically in FIG. 3). The contact sensor 58 on the front of the cart 30 detects contact of the cart 30 with a human or other obstacle. Therefore, if there is a contact with an obstacle during the movement of the robot 12 itself, the robot 12 can detect the contact and immediately stop the driving of the wheels 32 to quickly stop the movement of the robot 12. The other contact sensors 58 detect whether or not the respective parts have been touched. In addition, the installation position of the contact sensor 58 is not limited to the part, and may be provided at an appropriate position (a position corresponding to a person's chest, abdomen, side, back, and waist).

胴体42の中央上部(人の首に相当する位置)には首関節60が設けられ、さらにその上には頭部に相当する表示装置62および眼カメラ70が設けられる。図示は省略するが、首関節60は、3軸の自由度を有し、3軸の各軸廻りに角度制御可能である。或る軸(ヨー軸)はロボット12の真上(鉛直上向き)に向かう軸であり、他の2軸(ピッチ軸、ロール軸)は、それぞれ、それと異なる方向で直交する軸である。   A neck joint 60 is provided at the upper center of the body 42 (at a position corresponding to the neck of the person), and a display device 62 and an eye camera 70 corresponding to the head are further provided thereon. Although not shown, the neck joint 60 has three degrees of freedom and can be angle-controlled around each of the three axes. A certain axis (yaw axis) is an axis directed directly above (vertically upward) the robot 12, and the other two axes (pitch axis and roll axis) are axes orthogonal to each other in different directions.

表示装置62は、その表示面がロボット12の顔として機能し、主として、ロボット12を遠隔操作するユーザの顔画像(ユーザ画像)を表示する。表示装置62の表示面の向きは、首関節60の動きに従って変化される。また、ユーザ画像の画像データ(映像信号)は、ユーザ端末16に設けられたカメラで撮影され、ネットワーク14を介してロボット12に送信される。ユーザ画像が表示装置62に表示されるため、ロボット12とコミュニケーションを実行する人間は遠隔に存在するユーザとコミュニケーションを行っている体感を得る。   The display surface of the display device 62 functions as the face of the robot 12, and mainly displays a face image (user image) of a user who remotely operates the robot 12. The direction of the display surface of the display device 62 is changed according to the movement of the neck joint 60. The image data (video signal) of the user image is photographed by a camera provided in the user terminal 16 and transmitted to the robot 12 via the network 14. Since the user image is displayed on the display device 62, the person who communicates with the robot 12 gets the experience of communicating with a remote user.

図2では省略するが、表示装置62またはその近傍には、スピーカ64(図3参照)が設けられる。スピーカ64は、ロボット12が、それの周辺の人間に対して音声ないし音によってコミュニケーションを取るために用いられる。また、図2では省略するが、表示装置62またはその近傍には、マイク66(図3参照)が設けられる。マイク66は、周囲の音、とりわけコミュニケーションを実行する対象である人間の音声を取り込む。   Although omitted in FIG. 2, a speaker 64 (see FIG. 3) is provided at or near the display device 62. The speaker 64 is used by the robot 12 to communicate by voice or sound with humans around it. Although not shown in FIG. 2, a microphone 66 (see FIG. 3) is provided at or near the display device 62. The microphone 66 captures ambient sounds, particularly the voices of a person who performs communication.

また、眼カメラ70が、表示装置62の上側の中央に設けられる。眼カメラ70は、ロボット12に接近した人間の顔や他の部分ないし物体などを撮影して、それに対応する映像信号を取り込む。また、この実施例では、ユーザ端末16のユーザがロボット12を通して、対象物を見る場合には、この対象物がロボット12の眼カメラ70で撮影される。   Further, an eye camera 70 is provided at a center on the upper side of the display device 62. The eye camera 70 captures an image of a human face approaching the robot 12 and other parts or objects, and captures a corresponding video signal. In this embodiment, when the user of the user terminal 16 looks at the target through the robot 12, the target is photographed by the eye camera 70 of the robot 12.

なお、眼カメラ70の設置位置は、表示装置62の上側の中央にまたはその近傍に限定されず、適宜な位置に設けられてよい。   The installation position of the eye camera 70 is not limited to the center on the upper side of the display device 62 or its vicinity, and may be provided at an appropriate position.

また、眼カメラ70は、上述した全方位カメラ46と同様のカメラを用いることができる。上述したように、眼カメラ70は、表示装置62の上側の中央に取り付けられる。したがって、表示装置62の動きに従って撮影方向が変化される。   Further, as the eye camera 70, a camera similar to the omnidirectional camera 46 described above can be used. As described above, the eye camera 70 is attached to the upper center of the display device 62. Therefore, the shooting direction is changed according to the movement of the display device 62.

なお、上述のスピーカ64およびマイク66の設置位置は、表示装置62またはその近傍に限定されず、適宜な位置に設けられてよい。   The installation positions of the speaker 64 and the microphone 66 are not limited to the display device 62 or the vicinity thereof, and may be provided at appropriate positions.

このように、この実施例のロボット12は、車輪32の独立2軸駆動、肩関節48の3自由度(左右で6自由度)、肘関節52の1自由度(左右で2自由度)および首関節60の3自由度の合計13自由度を有する。   As described above, the robot 12 of this embodiment has two independent axes driving of the wheels 32, three degrees of freedom of the shoulder joint 48 (six degrees of freedom in left and right), one degree of freedom of the elbow joint 52 (two degrees of freedom in left and right), and The neck joint 60 has a total of 13 degrees of freedom, 3 degrees of freedom.

図3はロボット12の電気的な構成を示すブロック図である。この図3を参照して、ロボット12は、CPU80を含む。CPU80は、マイクロコンピュータ或いはプロセッサとも呼ばれ、バス82を介して、メモリ84、モータ制御ボード86、センサ入力/出力ボード88および音声入力/出力ボード90に接続される。   FIG. 3 is a block diagram showing an electrical configuration of the robot 12. As shown in FIG. Referring to FIG. 3, robot 12 includes CPU 80. The CPU 80 is also called a microcomputer or a processor, and is connected to a memory 84, a motor control board 86, a sensor input / output board 88, and a voice input / output board 90 via a bus 82.

メモリ84は、図示は省略をするが、ROM、HDDおよびRAMを含む。ROMおよびHDDには、ロボット12の動作を制御するための制御プログラムが予め記憶される。たとえば、各センサの出力(センサ情報)を検知するための検知プログラムや、外部コンピュータとの間で必要なデータやコマンドを送受信するための通信プログラムなどが記録される。また、RAMは、ワークメモリやバッファメモリとして用いられる。   Although not shown, the memory 84 includes a ROM, an HDD, and a RAM. A control program for controlling the operation of the robot 12 is stored in the ROM and the HDD in advance. For example, a detection program for detecting the output (sensor information) of each sensor, a communication program for transmitting and receiving necessary data and commands to and from an external computer, and the like are recorded. The RAM is used as a work memory or a buffer memory.

さらに、この実施例では、ロボット12は、人間とのコミュニケーションをとるために発話したり、ジェスチャしたりできるように構成されているが、メモリ84に、このような発話およびジェスチャのための辞書(発話/ジェスチャ辞書)が設定されている。   Further, in this embodiment, the robot 12 is configured to be able to speak and make gestures for communicating with humans. Utterance / gesture dictionary) is set.

モータ制御ボード86は、たとえばDSPで構成され、各腕や首関節などの各軸モータの駆動を制御する。すなわち、モータ制御ボード86は、CPU80からの制御データを受け、肩関節48Rの直交する3軸のそれぞれの角度を制御する3つのモータと肘関節52Rの角度を制御する1つのモータとの計4つのモータ(図3では、まとめて「右腕モータ96」と示す)の回転角度を制御する。同様にして、モータ制御ボード86は、CPU80からの制御データを受け、肩関節48Lの直交する3軸のそれぞれの角度を制御する3つのモータと肘関節52Lの角度を制御する1つのモータとの計4つのモータ(図3では、まとめて「左腕モータ98」と示す)の回転角度を制御する。   The motor control board 86 is composed of, for example, a DSP, and controls the driving of each axis motor such as each arm or neck joint. That is, the motor control board 86 receives the control data from the CPU 80 and receives a total of four motors of three motors for controlling the angles of the three orthogonal axes of the shoulder joint 48R and one motor for controlling the angle of the elbow joint 52R. The rotation angles of the two motors (referred to collectively as “right arm motor 96” in FIG. 3) are controlled. Similarly, the motor control board 86 receives the control data from the CPU 80, and controls the three motors for controlling the respective angles of the three orthogonal axes of the shoulder joint 48L and the one motor for controlling the angle of the elbow joint 52L. The rotation angles of a total of four motors (referred to collectively as “left arm motor 98” in FIG. 3) are controlled.

さらに、モータ制御ボード86は、CPU80からの制御データを受け、首関節60の直交する3軸のそれぞれの角度を制御する3つのモータ(図3では、まとめて「頭部モータ100」と示す)の回転角度を制御する。そして、モータ制御ボード86は、CPU80からの制御データを受け、車輪32を駆動する2つのモータ(図3では、まとめて「車輪モータ36」と示す)の回転角度を制御する。   Further, the motor control board 86 receives control data from the CPU 80 and controls three motors for controlling the respective angles of the three orthogonal axes of the neck joint 60 (in FIG. 3, they are collectively indicated as “head motor 100”). To control the rotation angle. Then, the motor control board 86 receives the control data from the CPU 80 and controls the rotation angles of two motors (in FIG. 3, collectively referred to as “wheel motors 36”) that drive the wheels 32.

なお、この実施例では、車輪モータ36を除くモータは、制御を簡素化するためにステッピングモータ(すなわち、パルスモータ)を用いる。ただし、車輪モータ36と同様に直流モータを用いるようにしてもよい。また、ロボット12の身体部位を駆動するアクチュエータは、電流を動力源とするモータに限らず適宜変更された、たとえば、他の実施例では、エアアクチュエータが適用されてもよい。   In this embodiment, a stepping motor (that is, a pulse motor) is used for the motors other than the wheel motor 36 in order to simplify the control. However, a DC motor may be used similarly to the wheel motor 36. Further, the actuator for driving the body part of the robot 12 is not limited to a motor using a current as a power source, and may be appropriately changed. For example, in another embodiment, an air actuator may be applied.

センサ入力/出力ボード88は、モータ制御ボード86と同様に、DSPで構成され、各センサからの信号を取り込んでCPU80に与える。すなわち、赤外線距離センサ40のそれぞれからの反射時間に関するデータがこのセンサ入力/出力ボード88を通じてCPU80に入力される。また、全方位カメラ46からの映像信号が、必要に応じてセンサ入力/出力ボード88で所定の処理を施してからCPU80に入力される。眼カメラ70からの映像信号も、同様にして、CPU80に入力される。また、上述した複数の接触センサ58(図3では、まとめて「接触センサ58」と示す)からの信号がセンサ入力/出力ボード88を介してCPU80に与えられる。音声入力/出力ボード90もまた、同様に、DSPで構成され、CPU80から与えられる音声合成データに従った音声または声がスピーカ64から出力される。また、マイク66からの音声入力が、音声入力/出力ボード90を介してCPU80に与えられる。   The sensor input / output board 88 is, similarly to the motor control board 86, composed of a DSP, takes in signals from the respective sensors, and supplies the signals to the CPU 80. That is, data relating to the reflection time from each of the infrared distance sensors 40 is input to the CPU 80 through the sensor input / output board 88. Further, the video signal from the omnidirectional camera 46 is input to the CPU 80 after performing predetermined processing on the sensor input / output board 88 as necessary. The video signal from the eye camera 70 is similarly input to the CPU 80. Further, signals from the above-described plurality of contact sensors 58 (collectively referred to as “contact sensors 58” in FIG. 3) are provided to the CPU 80 via the sensor input / output board 88. Similarly, the audio input / output board 90 is also constituted by a DSP, and outputs a voice or voice according to the voice synthesis data provided from the CPU 80 from the speaker 64. Further, a voice input from the microphone 66 is provided to the CPU 80 via the voice input / output board 90.

また、CPU80は、バス82を介して通信LANボード102に接続される。通信LANボード102は、たとえばDSPで構成され、CPU80から与えられた送信データを無線通信装置104に与え、無線通信装置104は送信データを、ネットワーク14を介してユーザ端末16に送信する。また、通信LANボード102は、無線通信装置104を介してデータを受信し、受信したデータ(受信データ)をCPU80に与える。   The CPU 80 is connected to the communication LAN board 102 via the bus 82. The communication LAN board 102 is composed of, for example, a DSP, and supplies transmission data provided from the CPU 80 to the wireless communication device 104, and the wireless communication device 104 transmits the transmission data to the user terminal 16 via the network 14. The communication LAN board 102 receives data via the wireless communication device 104 and provides the received data (received data) to the CPU 80.

たとえば、送信データとしては、ロボット12で撮影および/または記憶された映像信号および/または音声信号であったり、ロボット12が行った行動(コミュニケーション行動)についての履歴情報などであったりする。また、受信データとしては、ユーザ端末16からの映像信号および/または音声信号であったり、ユーザ端末16からの操作信号(コマンド)であったりする。   For example, the transmission data may be a video signal and / or an audio signal photographed and / or stored by the robot 12, or may be history information on an action (communication action) performed by the robot 12. The received data is a video signal and / or an audio signal from the user terminal 16 or an operation signal (command) from the user terminal 16.

また、CPU80は、バス82を介して、表示ドライバ92に接続される。上記の表示装置62が表示ドライバ92に接続される。表示ドラバイ92は、GPUおよびVRAMを含み、CPU80の指示に従って表示装置62に表示する画像に対応する画像データを生成する。表示ドライバ92で生成された画像データが表示装置62に出力され、画像データに対応する画像が表示装置62の画面に表示される。   Further, the CPU 80 is connected to the display driver 92 via the bus 82. The display device 62 is connected to the display driver 92. The display drive 92 includes a GPU and a VRAM, and generates image data corresponding to an image displayed on the display device 62 according to an instruction from the CPU 80. The image data generated by the display driver 92 is output to the display device 62, and an image corresponding to the image data is displayed on the screen of the display device 62.

さらに、CPU80は、バス82を介して、2次元距離計測装置106および3次元距離計測装置108に接続される。2次元距離計測装置106は、水平方向にレーザーを照射し、物体(人間も含む)に反射して戻ってくるまでの時間から当該物体までの距離を計測するものである。たとえば、トランスミッタ(図示せず)から照射したレーザーを回転ミラー(図示せず)で反射させて、前方を扇状に一定角度(たとえば、0.5度)ずつスキャンする。ここで、2次元距離計測装置106としては、SICK社製のレーザーレンジファインダ(型式 LMS200)を用いることができる。このレーザーレンジファインダを用いた場合には、距離8mを±15mm程度の誤差で計測可能である。   Further, the CPU 80 is connected to a two-dimensional distance measuring device 106 and a three-dimensional distance measuring device 108 via a bus 82. The two-dimensional distance measurement device 106 irradiates a laser in the horizontal direction, and measures the distance to an object (including a person) from the time it takes to return to the object. For example, a laser emitted from a transmitter (not shown) is reflected by a rotating mirror (not shown), and the front is scanned in a fan shape at a constant angle (for example, 0.5 degrees). Here, as the two-dimensional distance measuring device 106, a laser range finder (model LMS200) manufactured by SICK can be used. When this laser range finder is used, a distance of 8 m can be measured with an error of about ± 15 mm.

この実施例では、ロボット12は、2次元距離計測装置106で検出された障害物までの2次元(または水平方向)の距離情報と、ロボット12が配置される環境(たとえば、場所ないし領域)についての地図をマッチングすることで、ロボット12自身の位置すなわちロボット12の現在位置を推定する。ただし、より正確な現在位置を推定するために、パーティクルフィルタを用いて計算されたロボット12のオドメトリ(移動情報)も入力として利用される。ロボット12の現在位置を推定する手法としては、文献「D. Fox, W. Burgard and S. Thrun, Markov Localization for Mobile Robots in Dynamic Environments, Journal of Artificial Intelligence Research, vol. 11, pp. 391-427, 1999.」に開示される手法を用いることができる。ロボット12の現在位置を推定すること自体は本願の本質的な内容ではないため、詳細な説明は省略する。   In this embodiment, the robot 12 has two-dimensional (or horizontal) distance information to an obstacle detected by the two-dimensional distance measuring device 106 and an environment (for example, place or area) where the robot 12 is arranged. The position of the robot 12 itself, that is, the current position of the robot 12 is estimated by matching the maps of the robot 12. However, in order to more accurately estimate the current position, odometry (movement information) of the robot 12 calculated using the particle filter is also used as an input. A method for estimating the current position of the robot 12 is described in D. Fox, W. Burgard and S. Thrun, Markov Localization for Mobile Robots in Dynamic Environments, Journal of Artificial Intelligence Research, vol. 11, pp. 391-427. , 1999. "can be used. Since estimating the current position of the robot 12 is not essential to the present application, a detailed description thereof will be omitted.

また、3次元距離計測装置108は、水平方向を基準(0°)として上下40°(+30°〜−10°)の検知角度(垂直視野角)を有する3次元全方位レーザ距離計である。この3次元距離計測装置108は、0.1秒に1回転して、およそ100mまでの距離を計測し、ロボット12周辺の3次元距離情報を格納した点群情報を取得することができる。ここでは、3次元距離計測装置108としては、Velodine社製のイメージングユニットLiDAR(HDL-32E)(商品名)を用いることができる。   The three-dimensional distance measuring device 108 is a three-dimensional omnidirectional laser rangefinder having a detection angle (vertical viewing angle) of 40 ° (+ 30 ° to −10 °) with respect to the horizontal direction (0 °). The three-dimensional distance measuring device 108 can rotate once every 0.1 second, measure a distance up to about 100 m, and acquire point cloud information storing three-dimensional distance information around the robot 12. Here, as the three-dimensional distance measuring device 108, an imaging unit LiDAR (HDL-32E) (trade name) manufactured by Velodine can be used.

この実施例では、ロボット12は、3次元距離計測装置108で検出された3次元の距離情報に基づいて人間を検出するとともに、当該人間の位置を計測する。具体的には、3次元距離計測装置108から得られる3次元の距離情報と上記の地図を用いて、ロボット12が環境内のどの位置に存在しているか、およびどの方向を向いているかが推定される。次に、3次元距離計測装置108から取得した3次元の距離情報と、地図に基づく環境内の3次元の距離情報と比較し、近似する3次元の距離情報を格納した点群情報が示す点群を背景としてフィルタリングする。続いて、3次元距離計測装置108から取得した3次元の距離情報を格納した点群情報が示す点群のうち、閾値(Zmin, Zmax)を用いて一定の高さに存在しない点群をフィルタリングする。この実施例では、Zminが5cmに設定され、Zmaxが220cmに設定され、極端な高さの点群は、人間でないと判断し、人間の位置を計測する処理から除外される。   In this embodiment, the robot 12 detects a human based on the three-dimensional distance information detected by the three-dimensional distance measuring device 108 and measures the position of the human. Specifically, using the three-dimensional distance information obtained from the three-dimensional distance measurement device 108 and the above-described map, it is estimated at which position in the environment the robot 12 is located and in which direction. Is done. Next, the three-dimensional distance information acquired from the three-dimensional distance measuring device 108 is compared with the three-dimensional distance information in the map-based environment, and the point indicated by the point group information storing the approximate three-dimensional distance information is stored. Filter with groups as background. Subsequently, of the point groups indicated by the point group information storing the three-dimensional distance information acquired from the three-dimensional distance measurement device 108, the point groups not existing at a certain height are filtered using the thresholds (Zmin, Zmax). I do. In this embodiment, Zmin is set to 5 cm, Zmax is set to 220 cm, and a point group having an extremely high height is determined to be not a human, and is excluded from the process of measuring the position of a human.

一定の高さに存在しない点群がフィルタリングされると、フィルタリング後のすべての点群に含まれる高さ情報を0に設定した2次元の点群情報が生成される。生成された2次元の点群情報は、ユークリッド距離を用いてクラスタリングされる。一例として、Point Cloud Libraryに実装されているクラスタリング手法が利用される。   When the point group that does not exist at a certain height is filtered, two-dimensional point group information in which the height information included in all the filtered point groups is set to 0 is generated. The generated two-dimensional point group information is clustered using the Euclidean distance. As an example, the clustering method implemented in Point Cloud Library is used.

さらに、クラスタリングされた点群情報に含まれる元々の高さ情報を利用し、高さの最大値から高さの最小値を引いた値が30cm未満であるもの、および点群の数が閾値以下であるもの(ここでは4個と設定した)がフィルタリングされる。つまり、小さすぎる物または壁などの人間以外の物と判断されたクラスタが除去される。そして、フィルタリング後の各クラスタの重心位置が各人間の位置情報として設定される。つまり、ロボット12の周囲に存在する人間が検出されるとともに、検出された人間の位置が計測される。ロボット12の周囲に複数の人間が存在することが検出された場合には、ロボット12のコミュニケーション対象の一人の人間が所定のルールに従って選択される。一例として、所定のルールは、ロボット12からの距離が最短距離であること、または、ユーザ端末16から指定されたことである。ただし、ユーザ端末16からコミュニケーション対象が指定された場合には、ロボット12からの距離に基づいて決定されたコミュニケーション対象よりも優先される。   Furthermore, using the original height information included in the clustered point cloud information, the value obtained by subtracting the minimum height from the maximum height is less than 30 cm, and the number of point clouds is equal to or less than the threshold value (Here, four are set) are filtered. That is, clusters that are determined to be too small or non-human, such as walls, are removed. Then, the center of gravity position of each cluster after filtering is set as position information of each person. That is, a person present around the robot 12 is detected, and the position of the detected person is measured. When it is detected that a plurality of people exist around the robot 12, one of the communication targets of the robot 12 is selected according to a predetermined rule. As an example, the predetermined rule is that the distance from the robot 12 is the shortest distance or that the distance is specified from the user terminal 16. However, when the communication target is specified from the user terminal 16, the communication target has priority over the communication target determined based on the distance from the robot 12.

なお、ロボット12の位置を推定したり、人間の位置を計測したりするために、ロボット12は、2次元距離計測装置106および3次元距離計測装置108を備えているが、これらの計測装置は、ロボット12に備えずに、または、ロボット12に備えるとともに、ロボット12が配置される環境内に設置されてもよい。また、床センサなどの他のセンサを用いて、ロボット12の位置を推定したり、人間の位置を計測(推定)したりしてもよい。   The robot 12 includes a two-dimensional distance measuring device 106 and a three-dimensional distance measuring device 108 for estimating the position of the robot 12 and measuring the position of a human. , May be installed in the environment in which the robot 12 is arranged without the robot 12 or with the robot 12. Further, the position of the robot 12 may be estimated or the position of a human may be measured (estimated) using another sensor such as a floor sensor.

また、この実施例では、ロボット12は、2次元距離計測装置106および3次元距離計測装置108を備えるようにしてあるが、3次元距離計測装置108の計測結果を用いてロボット12の位置を推定することもできるため、2次元距離計測装置106は省略することもできる。   In this embodiment, the robot 12 includes the two-dimensional distance measuring device 106 and the three-dimensional distance measuring device 108. The position of the robot 12 is estimated using the measurement result of the three-dimensional distance measuring device 108. Therefore, the two-dimensional distance measuring device 106 can be omitted.

日常生活においては、人間と人間の間において、様々な空間の譲り合いが生じている。たとえば、店員が顧客に商品を見るための最も良い場所を譲る。また、狭い幅の通路では、人々は、車椅子に乗った人に道を譲る。さらに、人々は、美術品または動物のような対象物を見る場所において、自分よりも低身長の人または子供に見易い場所を譲る。   In everyday life, there is a concession of various spaces between human beings. For example, a clerk gives a customer the best place to view a product. Also, in narrow passages, people give way to people in wheelchairs. In addition, people give short-sighted people or children a better place to see objects such as artwork or animals.

この実施例では、このような空間の譲り合いを上記のロボット12と人間との間においても実現するように、ロボット12を行動させる。ただし、この明細書において、ロボット12の行動は、単に、ロボット12が目的地に移動することを含む。   In this embodiment, the robot 12 is caused to act so as to realize such a transfer of space between the robot 12 and a human. However, in this specification, the action of the robot 12 simply includes moving the robot 12 to a destination.

上記のような空間の譲り合いは、多くの場合、明示的なコミュニケーションを経由することなく行われており、状況に依存した多くのルールまたは規範が存在すると考えられる。しかし、多種多様な状況に依存したすべてのルールを網羅的に記述してロボット12の行動を制御するのは現実的に不可能である。   Such space concessions are often made without explicit communication, and there are likely to be many rules or norms depending on the situation. However, it is practically impossible to control the behavior of the robot 12 by comprehensively describing all rules depending on various situations.

このため、この実施例では、大量のルールをロボット12の行動に記述するのではなく、人間とロボット12が同じ空間を占有したい状況が発生した場合に、優先度の低い方が自身の利益の最大化を行うのではなく、むしろ自分の利益を差し引き、より優先度の高い方の利益に寄与する行動を選択するように、ロボット12が実行可能な形で定式化し、空間の譲り合いを実現するようにしてある。つまり、一連の空間の譲り合いは、人間とロボット12の間における相互利益を最大化する、人間とロボット12の振る舞いとして表現される。   For this reason, in this embodiment, rather than describing a large number of rules in the behavior of the robot 12, when a situation occurs in which a human and the robot 12 want to occupy the same space, the lower priority has the benefit of itself. Rather than maximizing, the robot 12 formulates a feasible form of realizing the concession of space so that it deducts its own interests and selects actions that contribute to higher priority interests. It is like that. That is, a series of concessions in space is expressed as a behavior between the human and the robot 12 that maximizes a mutual benefit between the human and the robot 12.

人間をエージェントiとし、ロボット12をエージェントjとした場合に、空間の譲り合いというエージェントiおよびエージェントjが協調および/または連携する行動は、エージェントiとエージェントjの間における空間リソースの競合の解決プロセスとみなすことができる。エージェントiが、合理的な振る舞いを行うとすれば、エージェントiにおける行動の選択は、自身の利益最大化として表現される。具体的には、数1で表現することができる。   In the case where a human is an agent i and a robot 12 is an agent j, the action of cooperating and / or cooperating with the agent i and the agent j in the space transfer is a process of resolving a conflict of space resources between the agent i and the agent j. Can be considered. Assuming that the agent i performs a reasonable behavior, the selection of the action at the agent i is expressed as maximizing its own profit. Specifically, it can be expressed by Equation 1.

[数1]
[Equation 1]

また、pは、エージェントiが取り得る移動計画を示し、U(p)は、移動計画pを選択したときにエージェントiが得る利益を示す。この明細書において、利益とは、タスクの目的を達成する度合を意味する。この実施例では、タスクの目的を達成する度合が高い程、利益が大きい。したがって、移動するエージェントでは、目的地に早く到達できるほど利益が大きい。また、物を見るエージェントでは、対象物が見易い位置へ移動できるほど利益が大きい。また、Pはエージェントiが取り得る全ての移動計画の集合である。これらのことは、エージェントjについても同様である。 Also, p indicates a movement plan that the agent i can take, and U i (p) indicates a profit that the agent i obtains when the movement plan p is selected. In this specification, profit refers to the degree to which the purpose of the task is achieved. In this embodiment, the greater the degree to which the task objective is achieved, the greater the benefit. Therefore, for a moving agent, the sooner the destination is reached, the greater the profit. In addition, an agent who looks at an object has a greater profit as it can move to a position where the object can be easily seen. P is a set of all the movement plans that the agent i can take. The same applies to the agent j.

仮に、エージェントiのみが存在する場合には、数1によって、エージェントiの目的を達成する最適な移動計画が選択される。ただし、エージェントiおよびエージェントjが存在する場合には、お互いの利益間に競合が生じると、数1を同時に満足する解は存在しなくなってしまう。この場合、エージェントiとエージェントjの間で移動の調整が必要である。   If only the agent i exists, the optimal movement plan that achieves the purpose of the agent i is selected according to Equation 1. However, in the case where the agent i and the agent j exist, if a conflict occurs between the mutual benefits, there is no solution that satisfies Equation 1 simultaneously. In this case, it is necessary to adjust the movement between the agent i and the agent j.

上述したように、人間同士では、こうしたお互いの利益の競合が生じた場合には、明示的な会話を行う事なく、競合を解決する事がある。より具体的には、狭い幅の通路の反対側から車椅子に乗った人がやってきた場合には、他方の人は、立ち止まって横によけ、車椅子の人が通るスペースを自然と確保する。この例は、空間の譲り合いで生じる二つの点を示していると言える。   As described above, in the case where such conflict of interests occurs between humans, the conflict may be resolved without performing an explicit conversation. More specifically, when a person in a wheelchair comes from the opposite side of a narrow width passage, the other person stops and lays down to naturally secure the space for the person in the wheelchair. This example can be said to show two points caused by the concession of space.

一つ目は、エージェント同士(人間同士)がお互いの目的と、目的を達成する最適な行動を互いに認識している点である。つまり、人間は、お互いの目的と、目的を達成するための最適な振る舞いを知っている。上記の例で言えば、各人は、車椅子の人が狭い幅の通路を通り抜けたいこと、その目的を達成するには、車椅子の人がまっすぐ進むことが好ましいことを理解している。   The first is that agents (humans) recognize each other's goals and the optimal actions to achieve the goals. In other words, humans know each other's goals and the optimal behavior to achieve them. In the above example, each person understands that the person in a wheelchair wants to go through a narrow passage, and that the person in the wheelchair preferably goes straight to achieve that purpose.

二つ目は、エージェント同士の優先関係を認識している点である。優先度の低い人間が、自身の利益を差し引き、優先度の高い人間の利益を確保している。上記の例で言えば、各人は、車椅子に乗る人の優先度が高く、他方の人(車椅子に乗る人以外の人々)の優先度が低いものとして認識している。   The second is that they recognize the priority relationship between agents. Low-priority humans are deducting their own interests and securing the high-priority human interests. In the above example, each person recognizes that the priority of the person in the wheelchair is high and the priority of the other person (people other than the person in the wheelchair) is low.

この実施例では、上記の考えに基づいて、空間リソースの競合または利益競合の解決方法を、相互利益を最大化する行動の選択として、数2のように定式化した。   In this embodiment, based on the above idea, a method for resolving contention of space resources or contention of interest is formulated as Expression 2 as a selection of an action that maximizes mutual benefit.

[数2]

[Equation 2]

ここで、αは、エージェントiの優位性を示し、その値は0から1の間で設定される。数2からも明らかなように、αが1に近づけば、エージェントjは、よりエージェントjの利益を差し引き、エージェントiの利益を最大化する行動(この実施例では、移動)が選択される。   Here, α indicates the superiority of the agent i, and its value is set between 0 and 1. As is clear from Equation 2, when α approaches 1, the agent j further deducts the profit of the agent j and selects an action (movement in this embodiment) that maximizes the profit of the agent i.

この実施例では、人間とロボット12の間に空間を譲り合う状況が発生した場合に、人間とロボット12の社会的な立場または権威に応じて決定される優位性(または優先度)αを用いて、ロボット12とその周囲の人間の相互利益を最大化するように、ロボット12を移動させる。ただし、優位性は、ロボット12が実行する行動(タスク)の緊急度に応じて決定される場合もある。   In this embodiment, when a situation occurs in which space is given between a human and the robot 12, the superiority (or priority) α determined according to the social position or authority of the human and the robot 12 is used. The robot 12 is moved so as to maximize mutual benefits of the robot 12 and the people around it. However, the superiority may be determined according to the urgency of the action (task) performed by the robot 12.

上記のようなシステム10においては、ロボット12はユーザ端末16からのコマンドに従うタスクを実行する。   In the system 10 as described above, the robot 12 performs a task according to a command from the user terminal 16.

たとえば、ロボット12が或る店舗に配置され、このロボット12またはこのロボット12を遠隔で操作するユーザが店員として行動する場合には、陳列棚の商品を確認したり、商品などの荷物を運んだりする。   For example, when the robot 12 is arranged in a certain store and the robot 12 or a user who operates the robot 12 remotely acts as a store clerk, the user checks the products on the display shelf or carries luggage such as products. I do.

商品棚の商品を確認する場合には、ユーザは、ユーザ端末16を用いて、陳列された商品を見るタスクを実行するためのコマンドをロボット12に送信する。   When confirming the product on the product shelf, the user uses the user terminal 16 to transmit a command for executing a task of viewing the displayed product to the robot 12.

詳細な説明は省略するが、商品を見る場合には、ロボット12は、首関節60を回転したり、身体の向きを変更したりすることにより、頭部に相当する表示装置62および眼カメラ70の向きを変える。また、このとき、ロボット12は、商品を眼カメラ70で撮影した撮影画像の画像データをユーザ端末16に送信する。したがって、ユーザは、撮影画像をユーザ端末16に表示することにより、商品を確認することができる。   Although a detailed description is omitted, when viewing a product, the robot 12 rotates the neck joint 60 or changes the direction of the body to change the display device 62 corresponding to the head and the eye camera 70. Change the direction of At this time, the robot 12 transmits to the user terminal 16 image data of a captured image of the product taken by the eye camera 70. Therefore, the user can confirm the product by displaying the captured image on the user terminal 16.

また、商品などの荷物を運ぶ場合には、ユーザは、ユーザ端末16を用いて、所定の場所(後述する目的地Gに相当する)まで移動するタスクを実行するためのコマンドをロボット12に送信する。この場合、荷物は、他の店員からロボット12に渡される(積載される)。   When carrying luggage such as merchandise, the user uses the user terminal 16 to send a command to the robot 12 to execute a task of moving to a predetermined place (corresponding to a destination G described later). I do. In this case, the luggage is transferred (loaded) from another clerk to the robot 12.

なお、この実施例では、ロボット12は、胴体42、両手および両腕(48R、48L、50R、50L、52R、52L、54R、54L、56R、56L)に相当する部位を有する形態であるため、両手および両腕を用いて荷物を目的地Gまで運ぶことができる。ただし、ロボット12は、胴体、両手および両腕に相当する部位に代えて、全方位カメラ46、表示装置62および眼カメラ70を支持するように、台車30と首関節60を連結する支持棒が設けられてもよく、その場合には、たとえば、荷物は台車30の上に載せられる。   In this embodiment, the robot 12 has a body corresponding to the body 42, both hands and both arms (48R, 48L, 50R, 50L, 52R, 52L, 54R, 54L, 56R, 56L). Luggage can be carried to destination G using both hands and both arms. However, the robot 12 has a supporting rod connecting the carriage 30 and the neck joint 60 so as to support the omnidirectional camera 46, the display device 62, and the eye camera 70 instead of the body, the hands, and the arms. It may be provided, in which case, for example, the luggage is placed on the trolley 30.

ロボット12が店員として振る舞う場合には、一般的には、ロボット12(店員)の行動よりも客のような人間の行動が優先される。したがって、人間が商品を確認するロボット12の方に近づいた場合、商品を見易くするために、ロボット12は移動する。つまり、ロボット12は今居る場所を空ける。   When the robot 12 acts as a clerk, generally, the behavior of a human such as a customer has priority over the behavior of the robot 12 (clerk). Therefore, when a human approaches the robot 12 for checking a product, the robot 12 moves to make it easier to see the product. That is, the robot 12 clears the place where it is now.

また、店舗内を移動するロボット12と人間が狭い幅の通路を挟んだ位置に存在し、ロボット12と人間が逆向きに通路を通り抜けたい場合には、同時に通路を移動すると、すれ違うことができないため、立ち往生してしまう。   In addition, when the robot 12 and the human who move in the store are located at positions sandwiching the narrow passage, and the robot 12 and the human want to pass through the aisle in opposite directions, they cannot pass each other if they move in the aisle at the same time. Therefore, they get stuck.

ただし、ここでは、ロボット12の優位性よりも客の優位性が高いため、ロボット12は、顧客が狭い幅の通路を通り抜けるのを待機し、顧客が狭い幅の通路を通り抜けると、狭い幅の通路に侵入し、当該通路を通り抜ける。   However, here, since the customer's superiority is higher than that of the robot 12, the robot 12 waits for the customer to pass through the narrow passage, and when the customer passes through the narrow passage, the robot 12 It enters a passage and passes through the passage.

図4(A)は、人間とロボット12が狭い幅の通路を挟んだ位置に存在する様子の概略を真上方向から見た概略図である。図4(A)において(図4(B)、図5(A)、図5(B)、図9、図10(A)および図10(B)も同じ)、人間およびロボット12の頭部を丸で示し、頭部に記載した目の付いている方が前方(図10(A)および図10(B)の(6)で示す方向)であり、その反対方向が後方(図10(A)および図10(B)の(4)で示す方向)である。ここでは、壁で挟まれた狭い幅の通路を、人間が一方から他方に通り抜けたい状況であり、ロボット12が他方から一方に通り抜けたい状況である。ただし、狭い幅の通路は、ロボット12と人間がすれ違うことができないため、同時に通り抜けようとした場合、立ち往生が発生する。   FIG. 4A is a schematic view of a state in which a human and the robot 12 are present at positions sandwiching a narrow passage, as viewed from directly above. In FIG. 4A (the same applies to FIG. 4B, FIG. 5A, FIG. 5B, FIG. 9, FIG. 10A and FIG. 10B), the head of the human and the robot 12 Is indicated by a circle, and the side with the eye described on the head is the front (the direction indicated by (6) in FIGS. 10A and 10B), and the opposite direction is the rear (FIG. 10 ( 10A) and (4) of FIG. 10B). Here, a situation is such that a human wants to pass from one side to the other through a narrow passage that is sandwiched between walls, and the robot 12 wants to pass from the other side to one side. However, since the robot 12 and the human cannot pass each other in the narrow passage, if the robot 12 tries to pass through the narrow passage at the same time, the robot 12 gets stuck.

上記のとおり、ロボット12は店員として振る舞うため、顧客である人間の優位性はロボット12の優位性よりも高く設定される。このような状況においては、先に、人間が狭い幅の通路を通り抜けて、その後、ロボット12がその通路を通り抜けることにより、優位性を考慮したロボット12の移動を実行(実現)することができる。つまり、空間の譲り合いが実行(実現)される。   As described above, since the robot 12 behaves as a clerk, the superiority of the human being as the customer is set higher than the superiority of the robot 12. In such a situation, first, a human passes through a narrow passage, and then the robot 12 passes through the passage, whereby the movement of the robot 12 in consideration of superiority can be executed (realized). . That is, the space is executed (realized).

具体的には、図4(B)および図5(A)に示すように、人間が狭い幅の通路を移動し、さらに、狭い幅の通路を通り抜けるまで、ロボット12は停止して、人間が通路を通り抜けるのを待機する。そして、図5(A)および図5(B)に示すように、人間が狭い幅の通路を通り抜けると、ロボット12は人間とは逆向きに狭い幅の通路を移動し、通り抜ける。   Specifically, as shown in FIG. 4B and FIG. 5A, the robot 12 stops and moves until the human moves through the narrow passage and further passes through the narrow passage. Wait to pass through the aisle. Then, as shown in FIGS. 5A and 5B, when the human passes through the narrow passage, the robot 12 moves in the narrow passage in the opposite direction to the human and passes through.

このように、特別な制約または条件が存在しない場合には、人間は、遠回りせずに目的地に向けて、適切な移動速度で移動する。この行動は、(1)移動によって、より目的地に近付くほど利益が高く、(2)適切な速度で移動できる程利益が高いという2つの要素に分類することができる。   As described above, in the case where no special constraint or condition exists, a person moves at an appropriate moving speed toward a destination without making a roundabout. This behavior can be categorized into two elements: (1) the higher the profit, the closer to the destination, the higher the profit due to the movement;

これらの要素を利用した「移動」についてのタスクに関する利益関数は数3で示される。また、数3をまとめると、数4となる。ただし、数3および数4において、Uは利益であり、tは経路計画で使用する予測時間であり、posはt秒後の予測位置であり、posnowは現在位置であり、Gは目的地であり、Distは距離(または差分)であり、xは移動距離であり、vprefは適切な速度を意味する。この実施例では、移動のタスクを実行する場合には、10秒(後述する予測時間t)分の予測を実施する。また、ロボット12の経路計画を算出する場合には、人間とロボット12のそれぞれの利益Uが時間間隔Δt毎(たとえば、0.5秒毎)に、数4に従って算出される。 The profit function for the task of “movement” using these elements is shown in Expression 3. In addition, when Equation 3 is put together, Equation 4 is obtained. In Equations 3 and 4, U is a profit, t is a predicted time used in a route plan, pos is a predicted position after t seconds, pos now is a current position, and G is a destination. , Dist is a distance (or difference), x is a moving distance, and v pref means an appropriate speed. In this embodiment, when executing the task of movement, prediction for 10 seconds (predicted time t described later) is performed. Further, when calculating the route plan of the robot 12, the profit U of each of the human and the robot 12 is calculated according to Equation 4 at each time interval Δt (for example, every 0.5 seconds).

この明細書においては、「経路計画」は、予測時間t分について予測されるロボット12の移動経路(以下、「予測時間t分の移動経路」ということがある)を意味し、「移動計画」は、時間間隔Δt後に予測されるロボット12の位置を意味する。   In this specification, the “path plan” means a moving path of the robot 12 predicted for the predicted time t (hereinafter, may be referred to as a “moving path of the predicted time t”), and the “movement plan”. Means the position of the robot 12 predicted after the time interval Δt.

適切な速度vprefは、人間またはロボット12が移動するときに望ましい移動速度を意味し、行動(またはタスク)に応じて設定される。緊急性の無い行動であれば、通常の移動速度が適切な速度vprefとして設定される。通常の移動速度は、成人が歩く速度の平均値であり、ロボット12は、減速距離を考慮して、その平均値よりも少し低く設定される。緊急性の高い行動であれば、通常の移動速度よりも早い速度が適切な速度vprefとして設定される。最徐行する必要のある行動であれば、通常の移動速度よりも遅い速度が適切な速度vprefとして設定される。たとえば、人間およびロボット12のそれぞれについて、高、中(通常の移動速度)、低の3段階の速度が予め想定されており、行動に応じて、適切な速度vprefが設定される。以下、この明細書において同じである。 The appropriate speed v pref means a desired moving speed when the human or the robot 12 moves, and is set according to an action (or task). If the action is not urgent, the normal moving speed is set as an appropriate speed vpref . The normal moving speed is an average value of the walking speed of the adult, and the robot 12 is set slightly lower than the average value in consideration of the deceleration distance. If the action is highly urgent, a speed faster than the normal moving speed is set as an appropriate speed v pref . If the action requires slowing down, a speed lower than the normal moving speed is set as an appropriate speed v pref . For example, for each of the human and the robot 12, three speeds of high, medium (normal moving speed), and low are assumed in advance, and an appropriate speed v pref is set according to the action. Hereinafter, the same applies in this specification.

[数3]
U(G, t, pos)=f(Dist(posnow, G)-Dist(pos, G))
ただし, f(d)=-|d-vpref*t|
[数4]
U(G, t, pos)=-|(Dist(posnow, G)-Dist(pos, G))-vpref*t|
この実施例では、利益Uの最大値は0になるように調整されている。数3において、(Dist(posnow, G)-Dist(pos, G))は、目的地Gへの近接項であり、現在位置posnowから、t秒後の位置posが目的地Gに近い程、大きい値となり、大きい値程、利益Uが大きくなる。
[Equation 3]
U (G, t, pos) = f (Dist (pos now , G) -Dist (pos, G))
Where f (d) =-| dv pref * t |
[Equation 4]
U (G, t, pos) =-| (Dist (pos now , G) -Dist (pos, G))-v pref * t |
In this embodiment, the maximum value of the profit U is adjusted to be zero. In Equation 3, (Dist (pos now , G) -Dist (pos, G)) is a proximity term to the destination G, and the position pos after t seconds from the current position pos now is close to the destination G. The larger the value, the larger the value.

また、数3において、f(d)=-|d-vpref*t|は、ロボット12の移動制約項を示し、t秒の間に、望ましい速度vprefで移動できるときに最大値(すなわち、f(d)=0)となり、望ましい速度vprefからずれるに従ってf(d)の値は小さくなる。 In Equation 3, f (d) = − | dv pref * t | indicates a movement constraint term of the robot 12, and has a maximum value (that is, f (d)) when the robot 12 can move at a desired speed v pref during t seconds. (d) = 0), and the value of f (d) becomes smaller as it deviates from the desired speed v pref .

目的地Gへの近接項とロボット12の移動制約項を組み合わせることで、目的地Gに近づきつつ、望ましい速度vprefでロボット12が移動されるように、利益Uが最大化されるように設計されている。 By combining the proximity term to the destination G and the movement constraint term of the robot 12, the profit U is maximized so that the robot 12 moves at the desired speed v pref while approaching the destination G. Have been.

なお、図示は省略するが、ロボット12またはロボット12のユーザが客であり、人間が店員である場合には、立場が逆転するため、たとえば、ロボット12が先に狭い幅の通路を通り抜け、その後、人間が狭い幅の通路を通り抜ける。   Although illustration is omitted, when the robot 12 or the user of the robot 12 is a customer and the person is a clerk, the position is reversed. For example, the robot 12 first passes through a narrow passage, and thereafter, , Humans pass through narrow passages.

また、上記の例では、店員と客の場合の例について説明したが、これに限定される必要はない。ロボット12と車椅子に乗った人が狭い幅の通路を互いに逆向きに通り抜ける場合には、車椅子の人の優位性がロボット12の優位性よりも高くされ、ロボット12は、車椅子の人が通路を通り抜けた後に、通路を通り抜ける。   Further, in the above example, the case of the clerk and the customer has been described, but the invention is not limited to this. If the robot 12 and the person in the wheelchair pass through the narrow width passage in opposite directions, the superiority of the person in the wheelchair is made higher than the superiority of the robot 12, and the robot 12 After passing through, walk through the passage.

図6は、或る展示会場の或る一室に複数の展示物が配置されている様子を真上方向から見た概略図である。図6等を参照して、展示物を鑑賞する場合において、人間とロボット12が空間を譲り合う他の例について説明する。ただし、ここでは、鑑賞者が人間であり、説明員がロボット12であるものとする。   FIG. 6 is a schematic view of a state where a plurality of exhibits are arranged in a certain room in a certain exhibition hall, as viewed from directly above. With reference to FIG. 6 and the like, another example in which the human and the robot 12 give up space when appreciating an exhibit will be described. However, here, it is assumed that the viewer is a human and the explainer is the robot 12.

図6に示すように、4つの展示物A、展示物B、展示物Cおよび展示物Dがそれぞれ別の壁面の前に展示されている。通常、鑑賞者は、順路に沿って移動する。たとえば、鑑賞者からの要請があった場合、展示物A、B、C、Dの概要または内容を紹介するロボット12は、展示物A、B、C、Dに周囲に存在し、鑑賞者が展示物A、B、C、Dに近づくと、展示物A、B、C、Dの正面からずれた位置に立つ。つまり、ロボット12は、鑑賞者に、展示物A、B、C、Dを鑑賞し易い場所を譲る。   As shown in FIG. 6, four exhibits A, B, C and D are displayed in front of different wall surfaces. Usually, the viewer moves along the route. For example, when there is a request from the viewer, the robot 12 that introduces the outline or the contents of the exhibits A, B, C, and D is present around the exhibits A, B, C, and D, and the viewer 12 When approaching the exhibits A, B, C, and D, they stand at positions shifted from the front of the exhibits A, B, C, and D. That is, the robot 12 gives the viewer a place where the exhibits A, B, C, and D can be easily viewed.

このとき、ロボット12は、頭部すなわち表示装置62の向きを上下左右に動かしたり、身体の動きを回転させるたりすることで、展示物A、B、C、Dを見て、当該展示物A、B、C、Dについての説明の音声をスピーカ64から出力する。ただし、説明の音声は、ロボット12の合成音声でもよいし、ユーザがユーザ端末16を通して発話した音声でもよい。一方、鑑賞者は、展示物A、B、C、Dの正面に立ち、ロボット12から展示物A、B、C、Dについての説明を受ける。   At this time, the robot 12 looks at the exhibits A, B, C, and D by moving the head, that is, the direction of the display device 62 up, down, left, and right, and rotating the movement of the body. , B, C, and D are output from the speaker 64. However, the description voice may be a synthesized voice of the robot 12 or a voice uttered by the user through the user terminal 16. On the other hand, the viewer stands in front of the exhibits A, B, C, and D and receives explanations about the exhibits A, B, C, and D from the robot 12.

図7に示すように、展示物A、B、C、Dを鑑賞する場合には、展示物A、B、C、Dから見て正面方向に近い方向であり、展示物A、B、C、Dからの距離が近いほど、展示物A、B、C、Dを鑑賞する場合における利益Uが大きくなる。ただし、上記の方向および距離は、展示物A、B、C、Dの配置位置(または中心位置)からの正面方向に対する方向およびその中心位置からの距離である。ただし、方向および距離は、高さ情報を含まない2次元の方向および距離である。したがって、展示物A、B、C、Dのような対象物を見る(鑑賞する)場合には、利益関数は数5で示される。   As shown in FIG. 7, when viewing the exhibits A, B, C, and D, the directions are close to the front as viewed from the exhibits A, B, C, and D, and the exhibits A, B, and C are displayed. , D, the profit U when viewing the exhibits A, B, C, D increases. However, the above directions and distances are the directions from the arrangement position (or the center position) of the exhibits A, B, C, and D with respect to the front direction and the distance from the center position. However, the direction and distance are two-dimensional directions and distances that do not include height information. Therefore, when viewing (appreciating) an object such as the exhibits A, B, C, and D, the profit function is represented by Expression 5.

ただし、数5において、Uは利益であり、Distは距離(差分)であり、Gは目的地である。ただし、目的地Gは、展示物A、B、C、Dの配置位置である。また、方向の要素に0.1を乗算しているが、これは方向の要素に対する重み付けであり、重みを0.1に決定したのは、方向の要素よりも距離の要素が利益に与える影響が大きいと考えられるからである。たとえば、対象物を鑑賞する人間の数が多い場合には、対象物に対する方向を気にせずに、なるべく対象物に近づこうとする人が比較的多いからである。ただし、これは一例であり、対象物等によって適宜変更可能である。また、ロボット12の経路計画を算出する場合には、鑑賞者およびロボット12のそれぞれの利益Uが時間間隔Δt毎に数5に従って算出される。   However, in Equation 5, U is a profit, Dist is a distance (difference), and G is a destination. However, the destination G is an arrangement position of the exhibits A, B, C, and D. Also, the directional element is multiplied by 0.1. This is the weight for the directional element, and the weight is determined to be 0.1 because the effect of the distance element on profits is greater than that of the directional element. Is considered to be large. This is because, for example, when there are a large number of people appreciating an object, relatively many people try to approach the object as much as possible without regard to the direction to the object. However, this is only an example, and can be appropriately changed depending on the target object or the like. When calculating the route plan of the robot 12, the profit U of each of the viewer and the robot 12 is calculated in accordance with Equation 5 at each time interval Δt.

[数5]
U(pos, G)=f(cosθ*0.1-Dist(pos, G))
上述したように、一般的には、鑑賞者は、順路に沿って移動し、展示物A、B、C、Dを鑑賞するが、必ずしも順路に沿って移動するとは限らない。したがって、この実施例では、次のようにして、目的地Gを決定するようにしてある。
[Equation 5]
U (pos, G) = f (cosθ * 0.1-Dist (pos, G))
As described above, in general, the viewer moves along the route and views the exhibits A, B, C, and D, but does not necessarily move along the route. Therefore, in this embodiment, the destination G is determined as follows.

図8(A)は鑑賞者である人間が移動している場合に、目的地Gを推定する方法を説明するための図であり、図8(B)は人間が静止している場合に、目的地Gを推定する方法を説明するための図である。   FIG. 8A is a diagram for explaining a method of estimating the destination G when the viewer, who is moving, is illustrated in FIG. 8B. FIG. 6 is a diagram for explaining a method of estimating a destination G.

図8(A)に示すように、人間が移動している場合には、人間が移動する方向に配置された展示物A、B、CまたはDが、当該人間が鑑賞しようとしている対象物として決定され、鑑賞の対象物として決定された展示物A、B、CまたはDの配置位置が目的地Gとして推定(または決定)される。   As shown in FIG. 8A, when a person is moving, the exhibits A, B, C, or D arranged in the direction in which the person moves are regarded as objects to be viewed by the person. The arrangement position of the exhibits A, B, C, or D that have been determined and determined as the viewing objects is estimated (or determined) as the destination G.

図8(B)に示すように、人間が停止している場合には、人間に最も近い位置に配置された展示物A、B、CまたはDが、当該人間が鑑賞しようとしている対象物として決定され、鑑賞の対象物として決定された展示物A、B、CまたはDの配置位置が目的地Gとして推定される。ただし、人間からの距離が同じまたは同程度(差が所定距離以内)の対象物が複数存在する場合には、複数の対象物のうち、人間が停止するまでに移動していた方向に存在する対象物の配置位置が目的地Gとして推定される。   As shown in FIG. 8B, when the person is stopped, the exhibits A, B, C, or D arranged closest to the person are regarded as objects to be viewed by the person. The arrangement position of the exhibits A, B, C, or D determined and determined as the objects to be viewed is estimated as the destination G. However, when there are a plurality of objects having the same distance or the same distance from a human (the difference is within a predetermined distance), among the plurality of objects, the objects exist in the direction in which the human was moving before stopping. The arrangement position of the object is estimated as the destination G.

なお、環境に展示物A、B、C、Dのような対象物が存在しない場合には、人間が移動する方向の先に存在する場所ないし領域の中心位置、または、人間が静止している場所ないし領域の中心位置が目的地Gとして推定される。   In the case where no object such as the exhibits A, B, C, and D exists in the environment, the center position of a place or area that exists ahead in the direction in which the person moves, or the person is stationary The center position of the place or area is estimated as the destination G.

また、ロボット12が移動のタスクを実行する場合には、ロボット12の目的地Gはコマンドとともにユーザ端末16から送信(指定)される。   When the robot 12 performs a task of moving, the destination G of the robot 12 is transmitted (designated) from the user terminal 16 together with a command.

図9はロボット12の経路計画を作成する方法を説明するための図である。また、図10(A)は人間の移動方向を示す図であり、図10(B)はロボット12の移動方向を示す図であり、図10(C)は移動候補点を説明するための図である。   FIG. 9 is a diagram for explaining a method of creating a route plan for the robot 12. FIG. 10A is a diagram showing a moving direction of a human, FIG. 10B is a diagram showing a moving direction of the robot 12, and FIG. 10C is a diagram for explaining a movement candidate point. It is.

ロボット12の経路計画を作成する、すなわち予測時間t分の移動経路を算出する場合には、ロボット12の現在位置(以下、「自己位置」ということがある)を推定するとともに、人間の現在位置を検出し、現在位置からΔt秒後の位置(以下、「移動候補点」)に移動したと仮定した場合における人間の利益とロボット12の利益をそれぞれ算出し、各利益に人間の優位性およびロボット12の優位性を考慮した重み付けをして、相互利益を算出する。ただし、図9では、エージェントjの優位性αは、1からエージェントiの優位性αを減算した値である。 When creating a route plan for the robot 12, that is, when calculating a movement route for the predicted time t, the current position of the robot 12 (hereinafter, sometimes referred to as “self position”) is estimated, and the current position of the human is Is calculated, and the profit of the human and the profit of the robot 12 are calculated respectively when it is assumed that the robot has moved to the position Δt seconds after the current position (hereinafter, “movement candidate point”). The mutual benefit is calculated by weighting in consideration of the superiority of the robot 12. However, in FIG. 9, the superiority α j of the agent j is a value obtained by subtracting the superiority α i of the agent i from 1.

図10(A)に示すように、Δt秒後の人間の位置は(1)−(9)で示す方向における位置である。同様に、図10(B)に示すように、Δt秒後のロボット12の位置は(1)−(9)で示す方向における位置である。この実施例では、予測時間t分の移動経路を算出する場合には、ロボット12が存在する環境についての地図が所定長さ(たとえば、0.4mまたは0.5m)のグリッド状に分解され、人間およびロボット12がグリッド単位で移動されるように、時間間隔Δt分移動した位置すなわち移動候補点が決定される。ただし、上記の所定長さは、ロボット12が適切な速度vprefでΔt秒間移動した場合に移動可能な距離に決定される。 As shown in FIG. 10A, the position of the person after Δt seconds is the position in the direction shown by (1)-(9). Similarly, as shown in FIG. 10B, the position of the robot 12 after Δt seconds is a position in the direction shown by (1)-(9). In this embodiment, when calculating the movement route for the predicted time t, the map of the environment where the robot 12 exists is decomposed into a grid of a predetermined length (for example, 0.4 m or 0.5 m), A position moved by the time interval Δt, that is, a movement candidate point is determined so that the human and the robot 12 are moved in grid units. However, the above-mentioned predetermined length is determined as a distance that can be moved when the robot 12 moves at an appropriate speed v pref for Δt seconds.

図10(C)に示すように、上記の(1)−(9)で示す移動方向における移動候補点は、9つの升目の各々の中心位置である。つまり、現在の移動方向(正面方向)を基準に、前後左右および斜め方向に移動した場合の位置に対応する8つの移動候補点に、中央の升目の中心位置(現在位置)に対応する1つの移動候補点が追加される。ただし、(5)で示す中央の升目の中心位置は、人間またはロボット12が移動しない(静止している)場合の位置である。   As shown in FIG. 10C, the movement candidate points in the movement directions indicated by the above (1) to (9) are the center positions of each of the nine cells. That is, based on the current movement direction (front direction), one of eight movement candidate points corresponding to the position when moving in the front, rear, left, right, and diagonal directions, and one corresponding to the center position of the center cell (current position). A movement candidate point is added. However, the center position of the center cell shown in (5) is a position when the human or the robot 12 does not move (is stationary).

図9に戻って、相互利益は、人間が複数(この実施例では、9つ)の移動候補点(Δt秒後の位置)の各々に移動した場合(「第1移動計画を選択した場合」に相当する)における各利益と、ロボット12が複数(この実施例では、9つ)の移動候補点の各々に移動した場合(「第2移動計画を選択した場合」に相当する)における各利益の全ての組み合わせについて、それぞれ算出される。つまり、人間の複数の移動候補点と、ロボット12の複数の移動候補点のすべての組み合わせ(9×9=81)について、相互利益が算出される。   Returning to FIG. 9, mutual benefit is obtained when a person moves to each of a plurality of (in this embodiment, nine) movement candidate points (positions after Δt seconds) (“when the first movement plan is selected”). And the profit when the robot 12 moves to each of a plurality of (in this embodiment, nine) movement candidate points (corresponding to “when the second movement plan is selected”). Are calculated for all combinations of. That is, the mutual benefit is calculated for all combinations (9 × 9 = 81) of the plurality of human movement candidate points and the plurality of movement candidate points of the robot 12.

ただし、図9に示す例では、人間とロボット12の前方に鑑賞するべき展示物が配置されているものとする。また、移動前の人間とロボット12を実線で示し、移動後の人間とロボット12を点線で示す。なお、人間またはロボット12は移動しない場合もある。   However, in the example illustrated in FIG. 9, it is assumed that an exhibit to be viewed is arranged in front of the human and the robot 12. The human and the robot 12 before the movement are indicated by solid lines, and the human and the robot 12 after the movement are indicated by dotted lines. Note that the human or the robot 12 may not move.

算出された全ての相互利益から最大の相互利益の組み合わせが選択され、選択された組み合わせのロボット12の移動候補点がΔt秒後のロボット12の位置として記憶される。ただし、人間とロボット12が衝突する場合の組み合せについては、最大の相互利益の組み合わせを選択する前に選択の候補(または選択肢)から除外される。この実施例では、人間とロボット12の距離が所定距離(たとえば、1m)以下である場合に、これらが衝突すると判断するようにしてある。   The maximum combination of mutual benefits is selected from all the calculated mutual benefits, and the movement candidate point of the robot 12 of the selected combination is stored as the position of the robot 12 after Δt seconds. However, the combination in the case where the human and the robot 12 collide is excluded from the selection candidates (or options) before selecting the maximum mutual benefit combination. In this embodiment, when the distance between the human and the robot 12 is less than a predetermined distance (for example, 1 m), it is determined that they collide.

また、最大の相互利益の組み合わせが選択されると、選択された組み合わせにおけるΔt秒後の人間の位置とロボット12の位置を基準として、さらにΔt秒後(つまり、2×Δt秒後)に人間が複数の移動候補点の各々に移動した場合の各利益と、2×Δt秒後にロボット12が複数の移動候補点の各々に移動した場合の各利益との全ての組み合わせについて、それぞれ相互利益が算出される。つまり、前の回で選択された人間の位置とロボット12の位置をそれぞれ現在位置として、Δt秒後の移動候補点が人間およびロボット12のそれぞれについて算出される。   Further, when the combination of the maximum mutual benefit is selected, the position of the human being after Δt seconds and the position of the robot 12 in the selected combination is further set as a reference, and the human position is further added after Δt seconds (that is, 2 × Δt seconds). For each combination of each profit when the robot 12 moves to each of the plurality of movement candidate points and each profit when the robot 12 moves to each of the plurality of movement candidate points after 2 × Δt seconds, Is calculated. That is, with the position of the human and the position of the robot 12 selected in the previous round as the current position, the movement candidate points after Δt seconds are calculated for each of the human and the robot 12.

なお、図9に示す例では、Δt秒後および2×Δt秒後のいずれの場合にも中段に記載された移動候補点の組み合わせについての相互利益が最大である。   In the example shown in FIG. 9, the mutual benefit of the combination of the movement candidate points described in the middle row is the largest in both cases after Δt seconds and after 2 × Δt seconds.

このようにして、人間とロボット12のΔt秒毎の位置(移動候補点)が予測時間t分選択または決定される。つまり、予測時間t分のロボット12の移動経路すなわち経路計画が算出される。予測時間tは、実行されるタスクに応じて予め決定されており、たとえば、ロボット12が任意の目的地Gまで移動するタスクを実行する場合には、ロボット12は移動するエージェントであり、この場合には、予測時間tは10秒である。また、ロボット12が展示物A、B、C、Dの概要または内容を紹介するタスクを実行する場合には、ロボット12は物を見るエージェントであり、この場合には、予測時間tは5秒である。   In this manner, the positions (moving candidate points) of the human and the robot 12 at every Δt seconds are selected or determined for the predicted time t. That is, the movement route of the robot 12 for the predicted time t, that is, the route plan is calculated. The predicted time t is determined in advance according to the task to be executed. For example, when the robot 12 performs a task of moving to an arbitrary destination G, the robot 12 is a moving agent. , The prediction time t is 10 seconds. When the robot 12 performs a task of introducing the outline or contents of the exhibits A, B, C, and D, the robot 12 is an agent who looks at the object. In this case, the predicted time t is 5 seconds. It is.

ただし、実際にロボット12を移動させている場合に、人間または障害物に衝突する可能性がある場合には、ロボット12は移動を停止する。ロボット12は、自身の位置を算出する場合に、2次元距離計測装置106の出力に基づいて周囲に存在する人間または障害物との距離を計測しているため、人間または障害物に衝突する可能性があることを知ることができる。   However, when the robot 12 is actually moving and there is a possibility of collision with a human or an obstacle, the robot 12 stops moving. When calculating the position of the robot 12, the robot 12 measures the distance to a nearby human or obstacle based on the output of the two-dimensional distance measuring device 106, and thus may collide with the human or the obstacle. You can know that there is sex.

なお、上記のように作成される経路計画では、何度も同じ場所を通る冗長な経路計画が作成されてしまうことがある。冗長な経路計画が作成された場合には、利益の総和が減少せず、かつ人間とロボット12が衝突しない範囲で、冗長部分が削除される。   In the route plan created as described above, a redundant route plan that passes the same place many times may be created. When a redundant route plan is created, the redundant portion is deleted to the extent that the total profit does not decrease and the human and the robot 12 do not collide.

また、図4(A)−図5(B)の説明では省略したが、人間とロボット12が細い幅の通路を通り抜ける場合にも、図9および図10(A)、(B)、(C)を用いて説明した方法により、ロボット12の経路計画は作成される(予測時間t分の移動経路が算出される)。   Although omitted in the description of FIGS. 4A to 5B, FIGS. 9 and 10A, 10B, and 10C also show a case where the human and the robot 12 pass through a narrow passage. ), A route plan for the robot 12 is created (a movement route for the predicted time t is calculated).

図11は図3に示したメモリ84(RAM)のメモリマップ500を示す図である。図11に示すように、メモリ84は、プログラム記憶領域502およびデータ記憶領域504を含む。プログラム記憶領域502は、ロボット制御プログラムを記憶する。ロボット制御プログラムは、自己位置推定プログラム502a、人間位置検出プログラム502b、目的地推定プログラム502c、移動候補点算出プログラム502d、相互利益算出プログラム502e、経路計画作成プログラム502fおよび行動制御プログラム502gを含む。   FIG. 11 is a diagram showing a memory map 500 of the memory 84 (RAM) shown in FIG. As shown in FIG. 11, the memory 84 includes a program storage area 502 and a data storage area 504. The program storage area 502 stores a robot control program. The robot control program includes a self-position estimation program 502a, a human position detection program 502b, a destination estimation program 502c, a movement candidate point calculation program 502d, a mutual benefit calculation program 502e, a route plan creation program 502f, and an action control program 502g.

自己位置推定プログラム502aは、2次元距離計測装置106の出力と地図データ504aに基づいて、ロボット12自身の位置すなわち自己位置を推定(または検出)するためのプログラムである。人間位置検出プログラム502bは、3次元距離計測装置108の出力に基づいて、ロボット12の周囲に存在する人間を検出するとともに、検出した人間の位置を検出するためのプログラムである。   The self-position estimation program 502a is a program for estimating (or detecting) the position of the robot 12, that is, the self-position based on the output of the two-dimensional distance measurement device 106 and the map data 504a. The human position detection program 502b is a program for detecting a human present around the robot 12 and detecting the detected position of the human based on the output of the three-dimensional distance measuring device 108.

目的地推定プログラム502cは、対象物を鑑賞する場合において、人間の目的地Gを推定するためのプログラムである。移動候補点算出プログラム502dは、人間のΔt秒後の複数の移動候補点とのロボット12のΔt秒後の複数の移動候補点を、それぞれ算出するためのプログラムである。ただし、移動候補点は、ロボット12が、基準位置からΔt秒分移動した場合の位置である。また、基準位置の初期値は、ロボット12の現在位置であり、時間間隔Δt秒毎に更新される。これらのことは人間についても同様である。   The destination estimating program 502c is a program for estimating a human destination G when appreciating an object. The movement candidate point calculation program 502d is a program for respectively calculating a plurality of movement candidate points of the robot 12 after Δt seconds and a plurality of movement candidate points of the robot 12 after Δt seconds. However, the movement candidate point is a position when the robot 12 moves by Δt seconds from the reference position. The initial value of the reference position is the current position of the robot 12, and is updated every time interval Δt seconds. The same goes for humans.

相互利益算出プログラム502eは、人間が複数の移動候補点に移動した場合の各利益と、ロボット12が複数の移動候補点に移動した場合の各利益に基づいて、人間の複数の移動候補点とロボット12の複数の移動候補点の各組み合わせについての相互利益をそれぞれ算出するためのプログラムである。ただし、利益関数および優位性(重みα)は、実行中のタスクに応じて決定される。   The mutual benefit calculation program 502e calculates a plurality of human movement candidate points based on each profit when a human moves to a plurality of movement candidate points and each profit when the robot 12 moves to a plurality of movement candidate points. This is a program for calculating a mutual benefit for each combination of a plurality of movement candidate points of the robot 12. However, the profit function and the superiority (weight α) are determined according to the task being executed.

経路計画作成プログラム502fは、移動候補点算出プログラム502dおよび相互利益算出プログラム502eを予測時間t分繰り返し実行し、各回において、相互利益算出プログラム502eに従って算出される複数の相互利益から最大の相互利益を選択し、選択した相互利益を有する組における人間およびロボット12の移動候補点をそれぞれ記憶して、ロボット12の経路計画を作成するためのプログラムである。ただし、上述したように、冗長な経路計画が作成されないために、人間の移動候補点とロボット12の移動候補点の組み合わせと同じ組み合わせについては、選択肢から除外される。また、上述したように、最大の相互利益を選択する前に、人間とロボット12が衝突する場合の移動候補点の組み合わせについては選択肢から除外される。   The route plan creation program 502f repeatedly executes the movement candidate point calculation program 502d and the mutual benefit calculation program 502e for the estimated time t, and in each time, calculates the maximum mutual benefit from a plurality of mutual benefits calculated according to the mutual benefit calculation program 502e. This is a program for creating a path plan for the robot 12 by storing the selected candidate points of the human and the robot 12 in the selected and mutually beneficial group. However, as described above, since a redundant route plan is not created, the same combination as the combination of the human movement candidate point and the robot 12 movement candidate point is excluded from the options. Further, as described above, before selecting the maximum mutual benefit, combinations of movement candidate points when a human and the robot 12 collide are excluded from options.

行動制御プログラム502gは、ユーザ端末16から指示されたコマンドに対応するタスクを実行するためのプログラムであって、ロボット12自身の行動を制御する。ただし、上述したように、タスクを実行する場合、ロボット12は、作成した経路計画に従って移動させる。   The behavior control program 502g is a program for executing a task corresponding to a command instructed from the user terminal 16, and controls the behavior of the robot 12 itself. However, as described above, when executing a task, the robot 12 moves according to the created route plan.

図示は省略するが、プログラム記憶領域502には、音声入力プログラム、映像入力プログラムおよび音声出力プログラムなどの他のプログラムロボット制御プログラムとは異なるプログラムも記憶御される。   Although not shown, the program storage area 502 also stores programs different from other program robot control programs, such as an audio input program, a video input program, and an audio output program.

また、データ記憶領域504には、地図データ504a、重みデータ504b、自己位置データ504c、人間位置データ504d、相互利益データ504eおよび経路計画データ504fが記憶される。   The data storage area 504 stores map data 504a, weight data 504b, self-position data 504c, human position data 504d, mutual benefit data 504e, and route planning data 504f.

地図データ504aは、ロボット12が配置される環境を上方から見た2次元の地図についてのデータである。たとえば、地図には、通路、壁、柱および固定的に配置されている障害物(たとえば、消火器、ごみ箱など)が記載される。また、展示物(A、B、C、Dなど)が配置された環境においては、展示物も地図に記載される。   The map data 504a is data on a two-dimensional map of the environment where the robot 12 is arranged, as viewed from above. For example, the map describes walkways, walls, columns, and fixedly located obstacles (eg, fire extinguishers, recycle bins, etc.). In an environment where exhibits (A, B, C, D, etc.) are arranged, the exhibits are also described on the map.

なお、ユーザ端末16は、地図データ504aと同じまたは同等の地図データを記憶しており、または、参照可能であり、ユーザは、ユーザ端末16を介してこの地図データに対応する地図を参照し、ロボット12の目的地Gを指定したり、コミュニケーション対象として選択する人間が存在する位置を指定したりする。   The user terminal 16 stores or can refer to map data that is the same as or equivalent to the map data 504a. The user refers to a map corresponding to this map data via the user terminal 16, A destination G of the robot 12 is specified, and a position where a human to be selected as a communication target exists is specified.

重みデータ504bは、相互利益を算出する場合の重みαについてのデータであり、重みαはロボット12が実行するタスクに応じて予め設定されている。自己位置データ504cは、ロボット12の現在位置についての座標データである。人間位置データ504dは、ロボット12によって検出された人間の現在位置についての座標データである。ただし、複数の人間が検出された場合には、所定のルールに従ってコミュニケーション対象として選択された一人の人間の現在位置についての座標データが人間位置データ504dとして記憶され、タスクの実行を終了するまで追跡される。   The weight data 504b is data on the weight α when the mutual benefit is calculated, and the weight α is set in advance according to the task executed by the robot 12. The self-position data 504c is coordinate data on the current position of the robot 12. The human position data 504d is coordinate data on the current position of a human detected by the robot 12. However, when a plurality of persons are detected, coordinate data on the current position of one person selected as a communication target according to a predetermined rule is stored as the person position data 504d, and is tracked until the execution of the task is completed. Is done.

相互利益データ504eは、相互利益算出プログラム502eに従って算出される複数の相互利益についてのデータである。上述したように、移動候補点算出プログラム502dおよび相互利益算出プログラム502eは、予測時間t分繰り返し実行されるため、相互利益データ504eは各回で更新される。   The mutual benefit data 504e is data on a plurality of mutual benefits calculated according to the mutual benefit calculation program 502e. As described above, since the movement candidate point calculation program 502d and the mutual benefit calculation program 502e are repeatedly executed for the predicted time t, the mutual benefit data 504e is updated each time.

経路計画データ504fは、Δt秒毎に(各回で)相互利益が最大となるロボット12の位置(移動候補点)を、予測時間t分時系列に従って並べた移動経路すなわち経路計画についてのデータである。この経路計画データ504fは、後述する展開済みの移動計画リストLcloseに含まれるロボット12の移動予測軌跡P.Prのデータに相当する。 The route plan data 504f is data on a travel route, that is, a route plan in which positions (movement candidate points) of the robot 12 having the maximum mutual benefit every Δt seconds (each time) are arranged in a time series of a predicted time t. . The route plan data 504f corresponds to data of the predicted movement locus P.Pr of the robot 12 included in the developed movement plan list L close described later.

図示は省略するが、データ記憶領域504には、他のデータが記憶されたり、フラグおよび/またはタイマ(カウンタ)が設けられたりする。   Although not shown, other data is stored in the data storage area 504, and a flag and / or a timer (counter) are provided.

図12および図13は、図3に示したCPU80のロボット制御処理を示すフロー図である。図12に示すように、CPU80は、ロボット制御処理を開始すると、ステップS1で、終了かどうかを判断する。ここでは、CPU80は、ユーザ端末16から停止コマンドを受信したかどうかを判断する。ステップS1で“YES”であれば、つまり、終了であれば、ロボット制御処理を終了する。   FIGS. 12 and 13 are flowcharts showing a robot control process of the CPU 80 shown in FIG. As shown in FIG. 12, when starting the robot control process, the CPU 80 determines whether or not to end in a step S1. Here, the CPU 80 determines whether a stop command has been received from the user terminal 16. If "YES" in the step S1, that is, if it is to be ended, the robot control processing is ended.

一方、ステップS1で“NO”であれば、つまり、終了でなければ、ステップS3で、自己位置を推定(検出)し、ステップS5で、人間の位置を検出して、ステップS7に進む。ただし、ステップS3では、自己位置データ504cが更新され、ステップS5では、人間位置データ504dが更新される。また、ステップS5では、複数の人間が検出された場合には、上記のように、選択された一人の人間の位置が検出される。これらのことは、後述するステップS19およびS21についても同じである。   On the other hand, if “NO” in the step S1, that is, if not to end, the self-position is estimated (detected) in a step S3, and the position of a person is detected in a step S5, and the process proceeds to the step S7. However, in step S3, the self position data 504c is updated, and in step S5, the human position data 504d is updated. In step S5, when a plurality of persons are detected, the position of the selected one person is detected as described above. The same applies to steps S19 and S21 described later.

なお、図示は省略するが、ユーザ端末16から何らコマンドを受信していない場合には、ロボット12は停止していても良く、また、自由に移動しても良い。   Although not shown, if no command is received from the user terminal 16, the robot 12 may be stopped or may move freely.

ステップS7では、行動の内容が決定されたかどうかを判断する。つまり、CPU80は、ユーザ端末16からタスクの実行を指示するコマンドを受信したかどうかを判断する。ただし、ユーザは、ユーザ端末16を用いてコマンドを入力するともに、目的地Gを指定する。   In step S7, it is determined whether the content of the action has been determined. That is, the CPU 80 determines whether a command for instructing execution of a task has been received from the user terminal 16. However, the user inputs a command using the user terminal 16 and specifies the destination G.

ステップS7で“NO”であれば、つまり、行動の内容が決定されていなければ、ステップS1に戻る。一方、ステップS7で“YES”であれば、つまり、行動の内容が決定されれば、ステップS9で、人間の目的地Gを推定(決定)する。ただし、複数の人間が存在する場合には、選択された一人の人間の目的地Gが推定される。   If “NO” in the step S7, that is, if the content of the action is not determined, the process returns to the step S1. On the other hand, if “YES” in the step S7, that is, if the content of the action is determined, the destination G of the human is estimated (determined) in a step S9. However, when there are a plurality of persons, the destination G of the selected one person is estimated.

次のステップS11では、行動の内容に応じて優位性を決定する。つまり、CPU80は、実行するタスクに応じて重みαを決定する。このとき、重みαの数値データすなわち重みデータ504bがデータ記憶領域504に記憶される。続くステップS13では、後述する経路計画の作成処理(図14、図15および図16参照)を実行して、図13に示すステップS15に進む。   In the next step S11, superiority is determined according to the content of the action. That is, the CPU 80 determines the weight α according to the task to be executed. At this time, the numerical data of the weight α, that is, the weight data 504b is stored in the data storage area 504. In the following step S13, a route plan creation process (see FIGS. 14, 15 and 16), which will be described later, is executed, and the process proceeds to step S15 shown in FIG.

図13に示すように、ステップS15では、行動を開始する。ロボット12は、ロボット制御処理と並行して、ステップS7において、決定された行動すなわちユーザ端末16からのコマンドに従う行動についての処理を実行(タスクを実行)することにより、移動を含む行動を実行し、移動するときに、作成した経路計画に従って(後述する、展開済みの移動計画リストLcloseに含まれるロボット12の移動予測軌跡P.Prを参照して)移動する。 As shown in FIG. 13, in step S15, an action is started. In step S7, the robot 12 executes an action including a movement by executing a process for the determined action, that is, an action according to a command from the user terminal 16 (executes a task), in parallel with the robot control processing. , when moving, according to the route plan created (described below with reference to the movement prediction path P.Pr robot 12 included in the deployed movement plan list L close the) moves.

次のステップS17では、行動を完了したかどうかを判断する。つまり、CPU80は、タスクの実行を終了したかどうかを判断する。ステップS17で“YES”であれば、つまり、行動を完了すれば、図12に示したステップS1に戻る。一方、ステップS17で“NO”であれば、つまり、行動を完了していなければ、ステップS19で、自己位置を推定し、ステップS21で、人間の位置を検出し、ステップS23で、経路計画の作成処理を実行して、ステップS17に戻る。   In the next step S17, it is determined whether or not the action has been completed. That is, the CPU 80 determines whether the execution of the task has been completed. If “YES” in the step S17, that is, if the action is completed, the process returns to the step S1 shown in FIG. On the other hand, if “NO” in the step S17, that is, if the action is not completed, the own position is estimated in a step S19, a position of a human is detected in a step S21, and a route planning is performed in a step S23. The creation process is performed, and the process returns to step S17.

図14、図15および図16は、図12のステップS13および図13のステップS23に示した経路計画の作成処理を示すフロー図である。図14に示すように、CPU80は、経路計画の作成処理を開始すると、ステップS51で、展開済みの移動計画リストLcloseと、展開前の移動計画リストLopenを初期化する。次のステップS53では、初期移動計画P0を作成する。 FIGS. 14, 15, and 16 are flowcharts showing the route plan creation processing shown in step S13 of FIG. 12 and step S23 of FIG. As shown in FIG. 14, when starting the route plan creation processing, the CPU 80 initializes a developed travel plan list L close and a pre-expanded travel plan list L open in step S51. In the next step S53, to create the initial movement plan P 0.

ここで、移動計画Pは、時間間隔Δtの累積値P.t、人間の移動予測軌跡P.Pp、ロボット12の移動予測軌跡P.Prおよび累積値P.tにおける利益P.Uを含む。   Here, the movement plan P includes the cumulative value P.t of the time interval Δt, the predicted movement trajectory P.Pp of the human, the predicted movement trajectory P.Pr of the robot 12, and the profit P.U in the cumulative value P.t.

また、上記の初期移動計画P0は、移動計画Pの初期値である。したがって、初期移動計画P0では、累積値P.t=0であり、人間の移動予測軌跡P.Ppは人間の現在位置のみであり、ロボット12の移動予測軌跡P.Prはロボット12の現在位置のみであり、利益P.Uは、人間の現在位置とロボット12の現在位置に基づいて算出される。ただし、人間の移動予測軌跡P.Ppは、時間間隔Δt毎の人間の位置を時系列順に並べた集合(またはリスト)である。また、ロボット12の移動予測軌跡P.Prは、時間間隔Δt毎のロボット12の位置を時系列順に並べた集合(またはリスト)である。 The initial movement plan P 0 above is the initial value of the movement plan P. Therefore, in the initial movement plan P 0 , the accumulated value Pt = 0, the predicted movement trajectory P.Pp of the human is only the current position of the human, and the predicted movement trajectory P.Pr of the robot 12 is only the current position of the robot 12. And the profit PU is calculated based on the current position of the human and the current position of the robot 12. However, the predicted movement trajectory P.Pp of the human is a set (or list) in which the positions of the human at each time interval Δt are arranged in chronological order. The predicted movement trajectory P.Pr of the robot 12 is a set (or list) in which the positions of the robot 12 at the time intervals Δt are arranged in chronological order.

次に、ステップS55で、初期移動計画を展開前の移動計画リストLopenの先頭に追加し、ステップS57で、展開前の移動計画リストLopenの先頭にある移動計画Pを取り出し、展開済みの移動計画リストLcloseに追加した後に、ステップS59で、取り出した移動計画Pを、展開前の移動計画リストLopenから削除する。 Next, in step S55, adds the initial movement plan to the beginning of the movement plan list L open predeployment, in step S57, the removed movement plans P at the beginning of the movement plan list L open before deployment, deployed after you have added to the movement plan list L close, in step S59, the movement plan P taken out, it wants to remove from the movement plan list L open prior to deployment.

図15に示すように、続くステップS61では、累積値P.tが予測時間tと一致するかどうかを判断する。つまり、予測時間t分の移動経路が算出されたかどうかを判断する。上述したように、予測時間tは、実行中のタスクによって予め決定されている。   As shown in FIG. 15, in a succeeding step S61, it is determined whether or not the accumulated value P.t matches the predicted time t. That is, it is determined whether or not the travel route for the predicted time t has been calculated. As described above, the predicted time t is determined in advance by the task being executed.

ステップS61で“YES”であれば、つまり、累積値P.tが予測時間tと一致すれば、経路計画の作成処理を終了して、図12および図13に示したロボット制御処理にリターンする。   If “YES” in the step S61, that is, if the accumulated value P.t coincides with the predicted time t, the process of creating the route plan ends, and the process returns to the robot control process shown in FIGS.

一方、ステップS61で“NO”であれば、つまり、累積値P.tが予測時間tと一致しなければ、ステップS63で、基準位置を中心とした人間の移動候補点をすべて算出する。ただし、基準位置は、移動候補点を算出するための人間の位置であり、初回は人間の現在位置であり、2回目以降は、Δt秒毎に予測された人間の位置である。   On the other hand, if “NO” in the step S61, that is, if the accumulated value P.t does not coincide with the predicted time t, in a step S63, all the human movement candidate points around the reference position are calculated. However, the reference position is a human position for calculating a movement candidate point, the first time is the current position of the human, and the second and subsequent times are the human positions predicted every Δt seconds.

次のステップS65では、基準位置を中心としたロボット12の移動候補点をすべて算出する。ただし、基準位置は、移動候補点を算出するためのロボット12の位置であり、初回はロボット12の現在位置であり、2回目以降は、Δt秒毎に予測されたロボット12の位置である。   In the next step S65, all the movement candidate points of the robot 12 around the reference position are calculated. However, the reference position is the position of the robot 12 for calculating the movement candidate point, the current position of the robot 12 for the first time, and the position of the robot 12 predicted every Δt seconds after the second time.

続いて、ステップS67で、変数mを初期化し(m=1)、ステップS69で、変数nを初期化する(n=1)。変数mは、人間の移動候補点を個別に識別するための変数であり、変数nは、ロボット12の移動候補点を個別に識別するための変数である。   Subsequently, in a step S67, a variable m is initialized (m = 1), and in a step S69, a variable n is initialized (n = 1). The variable m is a variable for individually identifying a human movement candidate point, and the variable n is a variable for individually identifying a movement candidate point of the robot 12.

次に、ステップS71で、m番目の人間の移動候補点を読出し、ステップS73で、n番目のロボット12の移動候補点を読み出す。そして、図16に示すステップS75で、時間間隔Δt後の移動計画P(以下、「移動計画P´」という)を作成する。移動計画P´では、累積値P.t=P.t+Δtであり、人間の移動予測軌跡P.Ppには人間のm番目の移動候補点が追加され、ロボット12の移動予測軌跡P.Prにはロボット12のn番目の移動候補点が追加され、相互利益P.Uは、人間のm番目の移動候補点と、ロボット12のn番目の移動候補点に基づいて算出される。つまり、人間がm番目の移動候補点に移動した場合の利益と、ロボット12がn番目の移動候補点に移動した場合の利益の相互利益P.Uが数2に従って算出される。このとき、ステップS11で決定された重みαが用いられる。   Next, in step S71, an m-th human movement candidate point is read, and in step S73, an n-th robot 12 movement candidate point is read. Then, in step S75 shown in FIG. 16, a movement plan P after the time interval Δt (hereinafter, referred to as “movement plan P ′”) is created. In the movement plan P ′, the cumulative value Pt = P.t + Δt, and the m-th movement candidate point of the human is added to the predicted movement path P.Pp of the human, and the robot 12 is added to the predicted movement path P.Pr of the robot 12. Twelve n-th movement candidate points are added, and the mutual benefit PU is calculated based on the m-th movement candidate point of the human and the n-th movement candidate point of the robot 12. In other words, the mutual benefit P.U of the profit when the human moves to the m-th movement candidate point and the profit when the robot 12 moves to the n-th movement candidate point is calculated according to Equation 2. At this time, the weight α determined in step S11 is used.

次のステップS77では、移動計画P´が展開済みの移動計画リストLcloseに存在するかどうかを判断する。ステップS77で“YES”であれば、つまり、移動計画P´が展開済みの移動計画リストLcloseに存在すれば、ステップS85に進む。このように、重複する移動計画P´については、展開前の移動計画リストLopenに含まれない。つまり、人間の移動候補点とロボット12の移動候補点の組み合わせと同じ組み合わせについては、選択肢から除外される。このため、冗長な経路計画が作成されるのが防止される。一方、ステップS77で“NO”であれば、つまり、移動計画P´が展開済みの移動計画リストLcloseに存在しなければ、ステップS79で、移動計画P´で、人間とロボット12の衝突が発生するかどうかを判断する。 In the next step S77, it is determined whether or not the movement plan P 'exists in the developed movement plan list L close . If “YES” in the step S77, that is, if the movement plan P ′ exists in the developed movement plan list L close , the process proceeds to a step S85. In this way, for the movement plan P'duplicate, not included in the movement plan list L open prior to deployment. That is, the same combination as the combination of the candidate movement points of the human and the candidate movement points of the robot 12 is excluded from the options. Therefore, creation of a redundant route plan is prevented. On the other hand, if “NO” in the step S77, that is, if the movement plan P ′ does not exist in the developed movement plan list L close , the collision between the human and the robot 12 is determined in the movement plan P ′ in a step S79. Determine if it occurs.

ステップS79で“YES”であれば、つまり、移動計画P´で、人間とロボット12の衝突が発生する場合には、ステップS85に進む。つまり人間とロボット12の衝突する場合の移動計画P´は、展開前の移動計画リストLopenに含まれない。一方、ステップS79で“NO”であれば、つまり、移動計画P´で、人間とロボット12の衝突が発生しない場合には、ステップS81で、移動計画P´を展開前の移動計画リストLopenに追加して、ステップS83で、展開前の移動計画リストLopenの要素を相互利益P.Uの大きい順に並べる。 If “YES” in the step S79, that is, if a collision between the human and the robot 12 occurs in the movement plan P ′, the process proceeds to a step S85. That movement plan P'in the case of collision between humans and robots 12 are not included in the movement plan list L open prior to deployment. On the other hand, if “NO” in the step S79, that is, if the collision between the human and the robot 12 does not occur in the movement plan P ′, in a step S81, the movement plan list L open before the development of the movement plan P ′ is opened. In step S83, the elements of the movement plan list Lopen before development are arranged in descending order of the mutual benefit PU.

続いて、ステップS85で、変数nが9であるかどかを判断する。つまり、CPU80は、累積値P.tにおいて、m番目の人間の移動候補点と、すべてのロボット12の移動候補点の組み合わせのそれぞれについての相互利益P.Uを算出したかどうかを判断する。   Subsequently, in a step S85, it is determined whether or not the variable n is 9. That is, the CPU 80 determines whether or not the mutual benefit P.U has been calculated for each combination of the m-th human movement candidate point and all the movement candidate points of the robot 12 in the cumulative value P.t.

ステップS85で“NO”であれば、つまり、変数nが9でなければ、ステップS87で、変数nを1加算して(n=n+1)、図15に示したステップS73に戻る。一方、ステップS85で“YES”であれば、つまり、変数nが9であれば、ステップS89で、変数mが9であるかどうかを判断する。つまり、CPU80は、累積値P.tにおいて、人間の複数の移動候補点とロボット12の複数の移動候補点のすべての組み合わせのそれぞれについての相互利益P.Uを算出したかどうかを判断する。   If “NO” in the step S85, that is, if the variable n is not 9, the variable n is incremented by 1 (n = n + 1) in a step S87, and the process returns to the step S73 shown in FIG. On the other hand, if “YES” in the step S85, that is, if the variable n is 9, it is determined whether or not the variable m is 9 in a step S89. That is, the CPU 80 determines whether or not the mutual benefit P.U has been calculated for each of all the combinations of the plurality of movement candidate points of the human and the plurality of movement candidate points of the robot 12 with the accumulated value P.t.

ステップS89で“NO”であれば、つまり、変数mが9でなければ、ステップS91で、変数mを1加算して(m=m+1)、図15に示したステップS69に戻る。一方、ステップS89で“YES”であれば、つまり、変数mが9であれば、図14に示したステップS57に戻る。   If “NO” in the step S89, that is, if the variable m is not 9, the variable m is added by 1 in a step S91 (m = m + 1), and the process returns to the step S69 shown in FIG. On the other hand, if “YES” in the step S89, that is, if the variable m is 9, the process returns to the step S57 shown in FIG.

この実施例によれば、ロボットが実行するタスクとは別に、人間とロボットの空間の譲り合いを考慮したロボットの経路計画を作成し、作成した経路計画に従ってロボットを移動させるので、タスクと切り離して譲り合いを実現することができる。したがって、様々な状況に応じた空間の譲り合いを考慮したタスクを作成する必要が無く、開発コストを大幅に低減することができる。   According to this embodiment, apart from the tasks executed by the robot, a path plan for the robot is created in consideration of the space between the human and the robot, and the robot is moved according to the created path plan. Can be realized. Therefore, there is no need to create a task that takes into account the assignment of spaces according to various situations, and development costs can be significantly reduced.

なお、この実施例では、ロボット12が経路計画を作成するようにしたが、経路計画はロボット12と通信可能に接続されたコンピュータで作成するようにしてもよい。かかる場合には、ロボット12は、人間の現在位置、ロボット12の現在位置および目的地の情報をネットワーク14上のコンピュータに送信し、コンピュータのプロセッサは、図14−図16に示したような経路計画の作成処理を実行して、経路計画を作成する。そして、コンピュータは、作成した経路計画をロボット12に送信する。このコンピュータは、一例として、ユーザ端末16である。   In this embodiment, the robot 12 creates the route plan. However, the route plan may be created by a computer communicably connected to the robot 12. In such a case, the robot 12 transmits the information of the current position of the human, the current position of the robot 12 and the destination to the computer on the network 14, and the processor of the computer transmits the route as shown in FIGS. Execute a plan creation process to create a route plan. Then, the computer transmits the created route plan to the robot 12. This computer is, for example, the user terminal 16.

また、この実施例では、人間およびロボットのそれぞれについて、9つの移動候補点に移動した場合の利益を算出し、相互利益を算出するようにしたが、移動候補点の数は9に限定される必要はない。CPUまたはコンピュータの処理能力が高い場合には、移動候補点の数は10以上であってもよい。また、CPUまたはコンピュータの処理能力が低い場合には、移動候補点の数は9未満にしてもよいが、移動候補点の数を減らし過ぎるのは好ましくない。   Further, in this embodiment, for each of the human and the robot, the profit when moving to nine movement candidate points is calculated and the mutual benefit is calculated, but the number of movement candidate points is limited to nine. No need. When the processing capacity of the CPU or the computer is high, the number of movement candidate points may be 10 or more. When the processing capacity of the CPU or the computer is low, the number of movement candidate points may be less than 9, but it is not preferable to reduce the number of movement candidate points too much.

10 …システム
12 …コミュニケーションロボット
14 …ネットワーク
16 …ユーザ端末
62 …表示装置
64 …スピーカ
66 …マイク
70 …眼カメラ
80 …CPU
106 …2次元距離計測装置
108 …3次元距離計測措置
120 …カメラ
124 …アンテナ
DESCRIPTION OF SYMBOLS 10 ... System 12 ... Communication robot 14 ... Network 16 ... User terminal 62 ... Display device 64 ... Speaker 66 ... Microphone 70 ... Eye camera 80 ... CPU
106: two-dimensional distance measuring device 108: three-dimensional distance measuring device 120: camera 124: antenna

Claims (7)

移動手段を備えるロボットであって、
前記ロボットの周囲に存在する人間が第1移動計画を選択した場合の第1利益を算出する第1利益算出手段、
前記ロボットが第2移動計画を選択した場合の第2利益を算出する第2利益算出手段、
前記第1利益と前記第2利益に基づく相互利益が最大となる前記第1移動計画および前記第2移動計画の組み合わせを選択することにより、前記ロボットが移動する経路計画を作成する作成手段、および
前記作成手段によって作成された経路計画に従って移動するように前記移動手段を制御する制御手段を備える、ロボット。
A robot having a moving means,
First profit calculating means for calculating a first profit when a human present around the robot selects the first movement plan;
Second profit calculating means for calculating a second profit when the robot selects a second movement plan;
Creating means for creating a route plan in which the robot moves by selecting a combination of the first movement plan and the second movement plan that maximize mutual benefit based on the first benefit and the second benefit; and A robot, comprising: control means for controlling the moving means so as to move in accordance with the route plan created by the creating means.
前記人間の移動および前記ロボットの移動の優位性に基づいて前記相互利益を算出する相互利益算出手段をさらに備える、請求項1記載のロボット。   The robot according to claim 1, further comprising a mutual benefit calculation unit configured to calculate the mutual benefit based on superiority of the movement of the human and the movement of the robot. 前記第1利益算出手段は、所定時間毎に、前記人間が存在可能な各位置への第1移動計画を選択した場合の第1利益をそれぞれ算出し、
前記第2利益算出手段は、前記所定時間毎に、前記ロボットが存在可能な各位置への第2移動計画を選択した場合の第2利益のそれぞれを算出し、
前記相互利益算出手段は、前記所定時間毎に、前記人間が存在可能な各位置と前記ロボットが存在可能な各位置についてのすべての組み合わせについて前記相互利益を算出し、
前記作成手段は、前記所定時間毎に、前記相互利益が最大となる前記第1移動計画および前記第2移動計画の組み合わせを選択することにより、前記ロボットが移動する経路計画を作成する、請求項2記載のロボット。
The first profit calculation means calculates a first profit when the first movement plan to each position where the human can exist is selected at predetermined time intervals,
The second profit calculation means calculates, for each predetermined time, each of the second profits when the second movement plan to each position where the robot can exist is selected,
The mutual benefit calculation means calculates the mutual benefit for every combination of each position where the human can exist and each position where the robot can exist, for each predetermined time,
The said creation means creates the path plan which the said robot moves by selecting the combination of the said 1st movement plan and the said 2nd movement plan which the said mutual benefit becomes the maximum for every predetermined time. 2. The robot according to 2.
前記作成手段は、前記人間と前記ロボットが衝突する組み合わせについては選択肢から除外する、請求項1から3までのいずれかに記載のロボット。   The robot according to any one of claims 1 to 3, wherein the creation unit excludes a combination in which the human and the robot collide from each other. 前記作成手段は、前記第1移動計画および前記第2移動計画の組み合わせと同じ組み合わせについては選択肢から除外する、請求項1から4までのいずれかに記載のロボット。   The robot according to any one of claims 1 to 4, wherein the creating unit excludes a combination that is the same as the combination of the first movement plan and the second movement plan from options. 移動手段を備えるロボットを制御するロボット制御プログラムであって、
前記ロボットまたは当該ロボットと通信可能なコンピュータのプロセッサに、
前記ロボットの周囲に存在する人間が第1移動計画を選択した場合の第1利益を算出する第1利益算出ステップ、
前記ロボットが第2移動計画を選択した場合の第2利益を算出する第2利益算出ステップ、
前記第1利益と前記第2利益に基づく相互利益が最大となる前記第1移動計画および前記第2移動計画の組み合わせを選択することにより、前記ロボットが移動する経路計画を作成する作成ステップ、および
前記作成ステップにおいて作成した経路計画に従って移動するように前記移動手段を制御する制御ステップを実行させる、ロボット制御プログラム。
A robot control program for controlling a robot having moving means,
To the robot or a computer processor capable of communicating with the robot,
A first profit calculating step of calculating a first profit when a human present around the robot selects the first movement plan;
A second profit calculating step of calculating a second profit when the robot selects the second movement plan;
A creation step of creating a path plan in which the robot moves by selecting a combination of the first movement plan and the second movement plan that maximizes a mutual benefit based on the first benefit and the second benefit; and A robot control program for executing a control step of controlling the moving means so as to move according to the route plan created in the creating step.
移動手段を備えるロボットを制御するロボット制御方法であって、
(a)前記ロボットの周囲に存在する人間が第1移動計画を選択した場合の第1利益を算出するステップ、
(b)前記ロボットが第2移動計画を選択した場合の第2利益を算出するステップ、
(c)前記第1利益と前記第2利益に基づく相互利益が最大となる前記第1移動計画および前記第2移動計画の組み合わせを選択することにより、前記ロボットが移動する経路計画を作成するステップ、および
(d)前記ステップ(c)において作成した経路計画に従って移動するように前記移動手段を制御するステップを含む、ロボット制御方法。
A robot control method for controlling a robot including a moving unit,
(A) calculating a first profit when a human present around the robot selects the first movement plan;
(B) calculating a second profit when the robot selects a second movement plan;
(C) creating a path plan in which the robot moves by selecting a combination of the first movement plan and the second movement plan that maximizes a mutual benefit based on the first benefit and the second benefit. And (d) controlling the moving means so as to move in accordance with the route plan created in the step (c).
JP2018124289A 2018-06-29 2018-06-29 Robot, robot control program and robot control method Pending JP2020004182A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018124289A JP2020004182A (en) 2018-06-29 2018-06-29 Robot, robot control program and robot control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018124289A JP2020004182A (en) 2018-06-29 2018-06-29 Robot, robot control program and robot control method

Publications (1)

Publication Number Publication Date
JP2020004182A true JP2020004182A (en) 2020-01-09

Family

ID=69100106

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018124289A Pending JP2020004182A (en) 2018-06-29 2018-06-29 Robot, robot control program and robot control method

Country Status (1)

Country Link
JP (1) JP2020004182A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112869968A (en) * 2021-01-14 2021-06-01 北京三角洲机器人科技有限公司 Autonomous operation method and device based on electric wheelchair
JP2023106819A (en) * 2022-01-21 2023-08-02 本田技研工業株式会社 Control system, control method and program
JP7547994B2 (en) 2020-12-22 2024-09-10 トヨタ自動車株式会社 Photographing system, photographing method and program thereof
WO2024183605A1 (en) * 2023-03-06 2024-09-12 The Chinese University Of Hong Kong System and method for mobile robot task planning

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012039280A1 (en) * 2010-09-21 2012-03-29 トヨタ自動車株式会社 Mobile body

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012039280A1 (en) * 2010-09-21 2012-03-29 トヨタ自動車株式会社 Mobile body

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7547994B2 (en) 2020-12-22 2024-09-10 トヨタ自動車株式会社 Photographing system, photographing method and program thereof
CN112869968A (en) * 2021-01-14 2021-06-01 北京三角洲机器人科技有限公司 Autonomous operation method and device based on electric wheelchair
CN112869968B (en) * 2021-01-14 2023-01-17 安徽金百合医疗器械有限公司 Autonomous operation method and device based on electric wheelchair
JP2023106819A (en) * 2022-01-21 2023-08-02 本田技研工業株式会社 Control system, control method and program
JP7457737B2 (en) 2022-01-21 2024-03-28 本田技研工業株式会社 Control system, control method, and program
WO2024183605A1 (en) * 2023-03-06 2024-09-12 The Chinese University Of Hong Kong System and method for mobile robot task planning

Similar Documents

Publication Publication Date Title
US11673269B2 (en) Method of identifying dynamic obstacle and robot implementing same
JP5324286B2 (en) Network robot system, robot control apparatus, robot control method, and robot control program
Nakauchi et al. A social robot that stands in line
JP5617562B2 (en) Mobile robot
JP5768273B2 (en) A robot that predicts a pedestrian's trajectory and determines its avoidance behavior
JP2020004182A (en) Robot, robot control program and robot control method
JP5747191B2 (en) Mobile remote control system and control program therefor
Veloso et al. Cobots: Collaborative robots servicing multi-floor buildings
US9235216B2 (en) Running information generating apparatus of autonomous running apparatus, running information generating method, running information generating program, and autonomous running apparatus
JP5764795B2 (en) Mobile robot, mobile robot learning system, and mobile robot behavior learning method
US11409295B1 (en) Dynamic positioning of an autonomous mobile device with respect to a user trajectory
JP5366048B2 (en) Information provision system
JP6069606B2 (en) Robot control system and robot control method
US11256261B1 (en) System for movement of autonomous mobile device
KR20190003123A (en) Method for operating moving robot
JP7139643B2 (en) Robot, robot control method and program
KR20180040839A (en) Airport robot, and airport robot system including same
JP2015066621A (en) Robot control system, robot, output control program and output control method
JP2017170568A (en) Service providing robot system
KR20210026595A (en) Method of moving in administrator mode and robot of implementing thereof
JP7317436B2 (en) ROBOT, ROBOT CONTROL PROGRAM AND ROBOT CONTROL METHOD
JP6142307B2 (en) Attention target estimation system, robot and control program
JP5552710B2 (en) Robot movement control system, robot movement control program, and robot movement control method
JP5732633B2 (en) Communication robot
JP2012203646A (en) Flow-state discrimination device, flow-state discrimination method, flow-state discrimination program, and robot control system using the device, method and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210325

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220301

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220415

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220913

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221024

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230221