(19)
(11)EP 2 199 038 B1

(12)EUROPEAN PATENT SPECIFICATION

(45)Mention of the grant of the patent:
22.02.2012 Bulletin 2012/08

(21)Application number: 08857946.1

(22)Date of filing:  07.10.2008
(51)Int. Cl.: 
B25J 13/00  (2006.01)
B25J 9/16  (2006.01)
B25J 5/00  (2006.01)
G05D 1/02  (2006.01)
(86)International application number:
PCT/JP2008/002825
(87)International publication number:
WO 2009/072228 (11.06.2009 Gazette  2009/24)

(54)

ROBOT AND TASK EXECUTION SYSTEM

ROBOTER UND AUFGABENAUSFÜHRUNGSSYSTEM

ROBOT ET SYSTÈME D'EXÉCUTION DE TÂCHES


(84)Designated Contracting States:
AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MT NL NO PL PT RO SE SI SK TR

(30)Priority: 04.12.2007 JP 2007313055

(43)Date of publication of application:
23.06.2010 Bulletin 2010/25

(73)Proprietor: Honda Motor Co., Ltd.
Minato-ku Tokyo 107-8556 (JP)

(72)Inventors:
  • KAWAGUCHI, Yuichiro
    Wako-shi Saitama 351-0193 (JP)
  • WATARI, Katsuyoshi
    Wako-shi Saitama 351-0193 (JP)
  • YOKOYAMA, Taro
    Wako-shi Saitama 351-0193 (JP)

(74)Representative: Hague, Alison Jane 
Dehns St Bride's House 10 Salisbury Square
London EC4Y 8JD
London EC4Y 8JD (GB)


(56)References cited: : 
JP-A- 2003 291 083
JP-A- 2003 345 435
JP-A- 2006 007 341
JP-A- 2006 231 421
US-A1- 2005 256 610
JP-A- 2003 345 435
JP-A- 2005 324 278
JP-A- 2006 007 341
JP-A- 2007 245 317
  
      
    Note: Within nine months from the publication of the mention of the grant of the European patent, any person may give notice to the European Patent Office of opposition to the European patent granted. Notice of opposition shall be filed in a written reasoned statement. It shall not be deemed to have been filed until the opposition fee has been paid. (Art. 99(1) European Patent Convention).


    Description

    PRIORITY CLAIM



    [0001] The present application is based on and claims the priority benefit of Japanese Patent Application 2007-313055 filed on December 4, 2007.

    BACKGROUND OF THE INVENTION


    Field of the Invention



    [0002] The present invention relates to a robot or the like executing a task by making autonomous motions.

    Description of the Related Art



    [0003] Trials have been made on a robot by applying various functions such as environment-recognizing function or autonomous moving function to the robot so as to make it execute tasks such as transporting luggage, locomotive road-guiding and the like. When there are a plurality of robots having such functions present in an environment, it is necessary to construct an execution plan to assign tasks to appropriate robots from the viewpoint of performing the tasks efficiently. Thus, there has been disclosed a technical approach for assigning each task to an appropriate robot according to a priority level or an execution cost of each task (refer to Japanese Patents Laid-open No. 2005-324278 and No. 2006-326703).

    [0004] However, generally, it is necessary to execute a new unscheduled task, or a state of a task may vary, for example, a content of a scheduled task may be altered. Also, it is considerable that a task may vary from an unassigned state to an assigned state of being executed. Moreover, a state of a robot may vary, for example, the robot may change its position when executing a task. Thus, when the state of a task varies, it is impossible to make each robot execute the task efficiently if the state of each robot is not known correctly. In this regard, central controlling the states of robots in a server may be raised as one of solutions.

    [0005] Nevertheless, due to increased communication information amount between the server and the robots and the heavy information processing load for recognizing the states of the plurality of robots controlled by the server, the states of the robots may vary massively during the information communication and the information processing, and consequently, it is possible that an execution instruction for a task issued from the server to each robot is inappropriate from the viewpoint of performing the task efficiently.

    [0006] JP 2003 345435A discloses a plurality of robots for executing a task, wherein one robot selects a robot to carry out the task based on data from each of the other robots.

    SUMMARY OF THE INVENTION



    [0007] The present invention has been accomplished in view of the aforementioned problems, and it is therefore an object of the present invention to provide a robot and the like capable of executing a task in an appropriate condition from the viewpoint of execution economy even when a state of the task is altered.

    [0008] A first aspect of the present invention provides a robot which executes a task by making autonomous motions, comprising: a first processing element configured to recognize a content of a designated task among a plurality of tasks stored in a task database, to evaluate a cost indicating a labor or load required for the robot to execute the designated task according to the recognition result, and to store the evaluated cost in the task database; and a second processing element configured to recognize whether the cost of the robot stored in the task database is the lowest in a robot group containing other robots, and to control the motions of the robot so as to execute the designated task on a condition that the cost thereof has been recognized to be the lowest; characterised in that the robot makes autonomous motions according to communication with a support server provided with said task database; the first processing element is configured to recognise said content and to store said evaluated cost in the task database according to communication with the support server; the second processing element is configured to recognise whether the cost of the robot stored in the task database is the lowest according to communication with the support server; and the first processing element evaluates the cost of a scheduled execution task for the robot when the designated task has been executed and the cost of the scheduled execution task for the robot when the designated task is not executed after an execution duration of the designated task, respectively, evaluates the cost of the designated task higher continuously or discontinuously as the cost of the scheduled execution task when the designated task has been executed becomes higher than the cost of the scheduled execution task when the designated task is not executed, and evaluates the cost of the designated task lower continuously or discontinuously as the cost of the scheduled execution task when the designated task has been executed becomes lower than the cost of the scheduled execution task when the designated task is not executed.

    [0009] According to the robot of the first aspect of the present invention, the cost indicating the labor or load required for a robot to execute the designated task is evaluated and the cost evaluated for each robot is stored in the task database disposed in the support server. When it is recognized that the cost of a self robot is the lowest in the plurality of robots stored in the task database, the self robot is controlled to execute the designated task. The evaluation of the cost for the plurality of robots and the storage thereof in the task database of the support server may be deemed as a bid for executing the designated task by the plurality of robots with the cost as a bid price. The execution of the designated task by a robot with the lowest cost in the plurality of robots may be deemed as a contract for executing the designated bask by the robot. Through performing the bid and contract of the designated task, the designated task can be executed by an appropriate robot in the plurality of robots from the viewpoint of execution economy of the designated task. Thereby, the robot can execute the designated task in an appropriate condition from the viewpoint of execution economy of the task even though the state thereof is altered.

    [0010] Further, if the cost of the scheduled execution task when the designated task has been executed becomes lower than the cost of the scheduled execution task when the designated task is not executed, the robot can execute the designated task by priority over the case where the cost becomes higher. On the other hand, if the cost of the scheduled execution task when the designated task is not executed becomes lower than the cost of the scheduled execution task when the designated task has been executed, the robot can execute the designated task by priority over the case where the cost becomes higher. Thereby, the robot can execute the designated task before the scheduled execution task in an appropriate condition from the viewpoint of executing the scheduled execution task at a lower cost.

    [0011] A second aspect of the present invention is dependent on the first aspect of the robot of the present invention, wherein the first processing element recognizes an execution starting time for the designated task as the content of the designated task, and evaluates the cost predicted for executing the designated task at the execution starting time.

    [0012] According to the robot of the second aspect of the present invention, through performing the bid and contract of the designated task according to the cost evaluated in relation to a predicted future state of a robot, the robot can execute the designated task in an appropriate condition from the viewpoint of execution economy of the task.

    [0013] A third aspect of the present invention is dependent on the first aspect of the robot of the present invention, wherein the first processing element recognizes an execution starting position and an execution ending position for the designated task as the content of the designated task, determines a position of the robot, calculates a travel distance from the determined position of the robot to the execution starting position or the execution ending position of the designated task, and evaluates the cost higher continuously or discontinuously as the travel distance becomes longer.

    [0014] According to the robot of the third aspect of the present invention, when a robot has the travel distance starting from the execution starting position of the designated task or passing through the execution starting position of the designated task to the execution ending position thereof is shorter than another robot, the robot can execute the designated task by priority over the other robot. On the contrary, when the travel distance is longer than the travel distance by another robot, the robot is prevented from executing the designated task. Thereby, the robot can execute the designated task in an appropriate condition from the viewpoint of shortening the travel distance for executing the designated task.

    [0015] A fourth aspect of the present invention is dependent on the first aspect of the robot of the present invention, wherein the first processing element recognizes whether the robot is executing another task different from the designated task, and evaluates higher the cost required for executing the designated task if it is recognized that the robot is executing the other task than the cost required for executing the designated task if it is recognized that the robot is not executing the other task.

    [0016] According to the robot of the fourth aspect of the present invention, the robot can execute the designated task when the robot is not executing another task different from the designated task by priority over when the robot is executing the other task.

    [0017] A fifth aspect of the present invention is dependent on the fourth aspect of the robot of the present invention, wherein the first processing element recognizes a priority level of the designated task as the content thereof, recognizes whether the priority level of the designated task is higher than the priority level of the other task further after it is recognized that the robot is executing the other task, and evaluates higher the cost if it is recognized that the priority level of the designated task is lower than the priority level of the other task than the cost if it is recognized that the priority level of the designated task is higher than the priority level of the other task.

    [0018] According to the robot of the fifth aspect of the present invention, when another task is in execution, if the priority level of the other task is lower than the priority level of the designated task, the designated task can be executed. Thereby, the robot can execute the designated task in an appropriate condition from the viewpoint of executing a task with higher priority level by priority.

    [0019] A six aspect of the present invention is dependent on the fourth aspect of the robot of the present invention, wherein the first processing element further recognizes whether a remained part of the other task is equal to or greater than a reference value after it is recognized that the other task is being executed, and evaluates higher the cost if it is recognized that the remained part of the other task is greater than the reference value than the cost if it is recognized that the remained part of the other task is equal to or less than the reference value.

    [0020] According to the robot of the sixth aspect of the present invention, even another task different from the designated task is being executed, however, if the other task can be completed in a short duration, the robot can be assigned to execute the designated task. Thereby, the robot can execute the designated task in an appropriate condition from the viewpoint of efficiently executing the task being executed and the designated task continuously.

    [0021] A seventh aspect of the present invention is dependent on the first aspect of the robot of the present invention, wherein the first processing element recognizes a designated robot which is an execution subject of the designated task as the content thereof, further recognizes whether the robot corresponds to the designated robot, and evaluates lower the cost if it is recognized that the robot corresponds to the designated robot than the cost if it is recognized that the robot does not correspond to the designated robot.

    [0022] According to the robot of the seventh aspect of the present invention, the robot can execute the designated task in an appropriate condition for the execution subject of the designated task in consideration of a specification or the like.

    [0023] An eighth aspect of the present invention is dependent on the first aspect of the robot of the present invention, wherein the first processing element estimates an energy residual of the robot after the execution of the task, and evaluates the cost higher continuously or discontinuously as the energy residual becomes less.

    [0024] According to the robot of the eighth aspect of the present invention, when a robot has more energy residual estimated after executing the designated task, the robot can execute the designate by priority over the other robot with less energy residual. On the contrary, when a robot has less energy residual than the other robot, the robot can be prevented from executing the designated task. Thereby, the robot can execute the designated task in an appropriate condition from the viewpoint of assuring sufficient energy for executing a new task after the execution of the designated task.

    [0025] A ninth aspect of the present invention is dependent on the first aspect of the robot of the present invention, wherein the first processing element stores the cost in the task database on a condition that the cost is equal to or less than a first threshold.

    [0026] According to the robot of the ninth aspect of the present invention, the self robot performs the bid for the designated task on a condition that the cost indicating the labor or load required for the self robot to execute the designated task is equal to or less than the first threshold. Thereby, each robot can be prevented from executing the designated task in spite of over-labor or over-load.

    [0027] A tenth aspect of the present invention is dependent on the first aspect of the robot of the present invention, wherein the first processing element evaluates the labor or load required for the robot to execute a scheduled execution task as a second cost, and stores the scheduled execution task in the task database as a designated task according to communication with the support server on a condition that the second cost is equal to or higher than a second threshold.

    [0028] According to the robot of the tenth aspect of the present invention, the content of a scheduled task will be stored in the task database as the content of the designated task on a condition that the second cost indicating the labor required for the self robot to execute the scheduled task is equal to or more than the second threshold. Thereafter, as aforementioned, by performing the bid and the contract for the designated task by each robot, the designated task can be executed by another robot appropriately from the viewpoint of execution economy. Thereby, a task possibly consuming a great labor from the self robot may be executed by another robot in place of the self robot.

    [0029] An eleventh aspect of the present invention is a task execution system comprising: a support server provided with a task database stored with a content of each task among a plurality of tasks, and a plurality of robots according to the first aspect of the invention, each executing a task by making autonomous motions according to communication with the support server and being provided with a controller, which controller includes a first processing element configured to recognize a content of a designated task among a plurality of tasks stored in the task database according to communication with the support server, to evaluate a cost indicating a labor or load required for a self robot to execute the designated task according to the recognition result, and to store the evaluated cost in the task database according to communication with the support server, and a second processing element configured to recognize whether the cost of the self robot stored in the task database according to communication with the support server is the lowest in a robot group containing other robots and to control the motions of the self robot so as to execute the designated task on a condition that the cost thereof has been recognized to be the lowest.

    [0030] According to the task execution system of the eleventh aspect of the present invention, the designated task can be executed by an appropriate robot among the plurality of robots in consideration of the execution economy of the designated task by performing the bid and the contract for the designated task.

    BRIEF DESCRIPTION OF THE DRAWINGS



    [0031] 

    Fig. 1 is a schematic diagram illustrating a task execution system of the present invention.

    Fig. 2 is a schematic diagram illustrating a robot of the present invention.

    Fig. 3 is a block diagram illustrating a controller of the robot and a support server.

    Fig. 4 is a flow chart related to a bid procedure in the task execution system.

    Fig. 5 is a flow chart related to a contract procedure in the task execution system.

    Fig. 6 is an explanatory diagram related to generation of a path.

    Fig. 7 is an explanatory diagram related to a cost evaluation method.

    Fig. 8 is a diagram related to task information stored in the task database.

    Fig. 9(a), Fig. 9(b) and Fig. 9(c) are diagrams related to designated tasks, respectively.

    Fig. 10(a) and Fig. 10(b) are diagrams related to a task shared by a plurality of robots (Example 1).

    Fig. 11 (a) and Fig. 11 (b) are diagrams related to a task shared by a plurality of robots (Example 2).


    DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS



    [0032] Hereinafter, embodiments of a task execution system of the present invention will be described in detail with reference to the drawings. The task execution system illustrated in Fig. 1 is composed of a plurality of robots R and a support server 200.The robot R illustrated in Fig. 2 is provided with a body 10, a head 11 disposed at an upper portion of the body 10, a pair of left and right arms 12 extended from both lateral sides of the upper portion of the body 10, a hand 14 disposed at an end portion of the arm 12, a pair of left and right legs 13 extended downward from a lower portion of the body 10, and a foot 15 attached to an end portion of the leg 13. As disclosed in domestic re-publications of PCT international application 03/090978 and 03/090979, according to a force transmitted from the actuator 1000 (refer to Fig. 2), the robot R can stretch and bend the arm 12 or the leg 13 at a plurality of joints equivalent to a plurality of joints of a human, such as a shoulder joint, an elbow joint, a wrist joint, a hip joint, a knee joint, an ankle joint and so forth. The robot R can autonomously move according to iterated motions of stepping on ground and leaving off ground of the left and right legs 13 (or the feet 15), respectively. The height of the head 11 can be adjusted through adjusting an inclined angle relative to the vertical direction of the body 10. The head 11 is mounted with a pair of head cameras (CCD camera) C1. The pair of head cameras C1 are laterally disposed and directed to the front of the robot R. The body 10 is mounted with a waist camera (infrared camera) C2 at a lower portion of the front side thereof. In addition to the robot R which moves autonomously according to the motions of the plurality of legs 13, any device which is movable, such as a wheel-type moving robot (automobile); may be used as a motion device.

    [0033] The robot R is provided with a controller 100 and a communication device 102. The controller 100 is comprised of an ECU or a computer (comprising a CPU, a ROM, a RAM, an I/O and the like) as hardware. A control program (software) is stored in a memory of the computer. The control program may be installed in the computer via a software-recording medium such as a CD or a DVD. The control program may also be downloaded from a server via a network or a satellite to the computer every time when there is a request transmitted from the robot R to the server.

    [0034] The controller 100 illustrated in Fig. 3 controls the motions of the arms 12 and the legs 13 through controlling an actuator 1000 on the basis of output signals from an internal state sensor 111 and an external state sensor 112.

    [0035] The internal sensor 111 is configured to determine an internal state or a behavior state of the robot R. The internal state sensor 111 may be of various sensors mounted on the robot R, such as a gyro sensor which outputs a signal in relation to an acceleration of the body 10, a rotary encoder which outputs a signal in relation to a joint angle of each joint, a force sensor or the like which outputs a signal in relation to a floor reactant force acted on the legs 13. The external state sensor 112 is configured to determine a behavior state or the like of an object and an external state or an environment of the robot R. The head camera C1, the waist camera C2 and so forth are equivalent to the external state sensor 112. In addition to a driving source such as an electric motor, the actuator 1000 is composed of a reduction gear disposed between an output shaft of the driving source and a link constituting the arm 12 or the leg 13, and a flexible element such as an elastic member. The controller 100 includes a first processing element 110 and a second processing element 120. Note that "a component of the present invention "recognizes" information" means that the component performs a possible information processing on a piece of information to prepare the piece of information ready for other information processing, for example, the component searches a piece of information in a database or retrieves the piece of information from a storing device such as a memory or the like; measures, calculates, estimates, determines a piece of information on the basis of output signals from a sensor or the like; and stores in memory or the like the determined information or the like.

    [0036] The first processing element 110 is configured to recognize a content of a designated task among a plurality of tasks stored in the task database 204 according to communication with the support server 200, to evaluate a cost indicating a labor or load required for the self robot R to execute the designated task according to the recognition result, and to store the evaluated cost in the task database 204 according to communication with the support server 200.

    [0037] The second processing element 120 is configured to recognize whether the cost of the self robot R stored in the task database 204 is the lowest in a robot group containing other robots according to communication with the support server 200, and to control the motions of the self robot R so as to execute the designated task on a condition that the cost thereof has been recognized to be the lowest.

    [0038] The support server 200 as illustrated in Fig. 3 (composed of a CPU, a ROM, a RAM, an I/O and so forth) can communicate with each of the plural robots R via a base station (not shown) and a communication network. As illustrated in Fig. 1, the support server 200 may be composed of a computer independent from each robot R, or may be composed of one computer mounted on one robot or plural computers mounted on plural robots (for example, a main robot to be described hereinafter) R. The support server 200 is provided with the task database 204. The task database 204 stores the content of each of the plurality of tasks containing the designated task and the cost evaluated by each robot R. The content of a task includes whether there is a robot designated as an execution subject of the task, identification information of the designated robot, a priority level of the task and so forth.

    [0039] Various functions of the task execution system with the aforementioned configuration will be described hereinafter. Firstly, a bid procedure, namely, a procedure in which the cost for executing the designated task is evaluated for each robot R and the evaluated cost is stored in the task database 204 provided in the support server 200 will be described.

    [0040] The content of the designated task stored in the task database 204 is retrieved by the first processing element 110 according to communication with the support server 200 (Fig. 4/ S 102). For example, illustrated in Fig. 9(a) is a first task of moving a wagon W on which a first tray T1 and a second T2 are placed; illustrated in Fig. 9(b) is a second task of fetching up the first tray T1 from the wagon W, transporting the first tray T1 to a table Tb and disposing it on the table Tb; and illustrated in Fig. 9(c) is a third task of fetching up the second tray T2 from the wagon W, transporting the second tray T2 to the table Tb and disposing it on the table Tb. The content of a part of or the entire part of the three tasks is retrieved as the content of the designated task. If a plurality of tasks are defined by dividing one task into a first task, a second task, a third task and so forth, it is acceptable to define a part of or the entire part of the plurality of tasks which are not executed as the designated task.

    [0041] Thereafter, whether the robot R is executing another task is determined on the basis of a task execution flag or the like stored in a storing device (Fig. 4/ S104). If it is determined that the robot R is executing the other task (Fig. 4/ S104··YES), then, whether the priority level of the designated task is higher than the priority level of the task being executed is determined (Fig. 4/S106). If it is determined that the robot R is not executing the other task (Fig. 4/ S104··NO) or the priority level of the designated task is higher than the priority level of the task being executed (Fig. 4/ S106··YES), whether there is a robot being designated as the execution subject for the designated task is determined (Fig. 4/ S108). If it is determined that the designated robot is not present (Fig. 4/ S108··YES), whether the operation state of the robot R is set at the ON state which is ready for executing the designated task or at the OFF state which is not ready for executing the designated task is determined according to a flag or the like stored in the storing device (Fig. 4/S110).

    [0042] If it is determined that the operation state of the robot R is set at the ON state (Fig. 4/S110··YES), as illustrated in Fig. 6, a path from the present position (or an estimated position at the execution starting time of a task) of the robot R to an execution starting position of the task and a path from the execution starting position to an execution ending position are generated (Fig. 4/ S 112). If a task can be executed without the need of making displacements, such as recognizing a human, outputting audio voices or addressing a greeting on the basis of the recognition result, the execution starting position and the execution ending position are the same. The present position ((latitude, longitude) or (latitude, longitude, altitude)) of the robot R can be determined according to GPS signals received from a satellite by a GPS receiver (not shown) serving as the internal state sensor 111 or output signals from a gyro sensor or an acceleration sensor serving as the internal state sensor 111. The execution starting position and end position of a task can be recognized on the basis of the task information. Map information indicating a position ((latitude, longitude) or (latitude, longitude, altitude)) of a passable node or a passable region or the like is used in generating the path. The path is formed from one or plural links joining the nodes contained in the map information. The map information may be stored in a map database disposed in the support server 200 to be distributed from the support server 200 to each robot R, or may be preliminarily stored in a map database disposed in the controller 100. It is acceptable that a path from the execution starting position to the execution ending position is generated differently for each robot R.

    [0043] Thereafter, the first processing element 110 determines an internal state of the robot R on the basis of output signals from the internal state sensor 111 (Fig. 4/ S 116). A battery residual amount (remained energy) of a battery serving as the energy source of the robot R, an orientation or posture of the robot R such as the robot R is facing to the northwestern direction and the like are determined as the internal state. Subsequently, on the basis of the determination result on the internal state of the robot R, an execution cost ci (i: identification information for the robot R) indicating a labor or load required for the robot R to execute the task while moving along the generated path is evaluated (Fig. 4/ S118). The longer the generated path is, the longer an estimated time required for moving along the generated path, or the greater an estimated battery consumption amount required for moving or altering orientations while executing the task along the generated path, the execution cost ci will be evaluated higher. In addition, the less an estimated battery residual amount after the robot R has executed the task is, the higher the execution cost ci will be evaluated higher. Specifically, as illustrated in Fig. 7, the less the battery residual amount SOC becomes, the higher the execution cost ci will be estimated by using a stepwise-greater correction factor α. The correction factor α is a function of the battery residual amount SOC defined by the equation (1), and is preliminarily stored in the memory of the controller 100. The correction factor a may be defined as not only a discontinuous decreasing function with the battery residual amount SOC as a variant but also a continuous decreasing function with the battery residual amount SOC as the variant.



    [0044] As illustrated in Fig. 7, the present battery residual amount is denoted as b2 (SOC2< b2< 100) and the estimated battery residual amount after executing the task is denoted as b1 (SOC1< b< SOC2). Generally, the estimated battery consumption amount δSOC is simply equal to (b2-b1). However, since the estimated battery residual amount b1 will be more consumed in a residual region where the correction factor α has a value α1 greater than 1, thus, the estimated battery consumption amount δSOC is evaluated higher correspondingly by using the correction factor α according to the equation (2).



    [0045] Similarly, in a situation where the present battery residual amount is denoted as b2 (SOC2<b2<100) and the estimated battery residual amount after executing the task is denoted as b1(0< b1<SOC1), since the estimated battery residual amount b1 will be more consumed in a residual region where the correction factor α has a value α2 greater than α1(>1), thus, the estimated battery consumption amount δSOC is evaluated higher correspondingly according to the equation (3).



    [0046] It is also acceptable to evaluate the execution cost according to the following way: the position of an obstacle such as a human or another robot R in the ambient of the robot R is recognized by the external state sensor 112; thereafter, the contacting possibility with the obstacle when executing a task along a generated path is evaluated; the higher the contacting possibility is, the higher the execution cost will be evaluated.

    [0047] If the designated robot is determined to be present as the execution subject for the designated task (Fig. 4/ S108··NO), whether the robot R is corresponding to the designated robot is further determined (Fig. 4/ S120). Whether the robot R is corresponding to the designated robot can be determined according to whether the identification information included in the task information for the designated robot is consistent to the identification information preliminarily store in the storing device for the robot R or the like. If it is determined that the robot R is corresponding to the designated robot (Fig. 4/ S120··YES), the execution cost ci is evaluated as the lowest cost cmin (a predefined value such as zero for making the execution cost ci equal to the lowest bid price) (Fig. 4/ S122). If it is determined that the robot R is not corresponding to the designated robot (Fig. 4/ S120··NO), the execution cost ci for the designated task is evaluated as the highest cost cmax (a predefined value for making the execution cost ci equal to the highest bid price) (Fig. 4/ S124). In addition, if it is determined that the priority level of the designated task is equal to or lower than the priority level of the other task being executed (Fig. 4/ S106··NO), the cost ci is evaluated as the highest cost cmax (Fig. 4/ S124). Thereafter, the cost ci and the identification information for the robot R are stored in the task database 204 by the first processing element 110 via communication with the support server 200 (Fig. 4/ S126). If it is determined that the operation state of the robot R is set at the OFF state (Fig. 4/ S110··NO), the procedure is terminated without performing the bid of cost. As illustrated in Fig. 8, according to the bid performed by each of the plurality of robots R, the cost ci (i= 1~n) for each designated task j evaluated for each robot R is stored in the task database 204. If there are plural robots R and each has the lowest cost ci, the cost ci for each of the plural robots R may be adjusted so that only the cost ci for one robot R will be the lowest according to the priority level attached to each robot R by the support server 200. Moreover, since the execution cost ci is not evaluated for a robot R whose operation state is set at the OFF state, the cost ci for this robot R will not be stored in the task database 204.

    [0048] Hereinafter, a contract procedure, namely, a procedure in which the designated task is executed by a robot R with the lowest cost ci will be described.

    [0049] The second processing element 120 determines whether the cost ci for the self robot R is the lowest according to communication with the support server 200 (Fig. 5/ S128). If it is determined that the cost ci for the self robot R is the lowest (Fig. 5/ S128··YES), whether the robot R is executing another task is determined (Fig. 5/S130). If it is determined that the robot is executing the other task (Fig. 5/S130··YES), the robot R is controlled to terminate the task in execution (Fig. 5/ S132). Subsequently, whether it is necessary to execute the terminated task is determined (Fig. 5/ S134). If it is determined that it is necessary to execute the terminated task (Fig. 5/S134··YES), the content of the terminated task is stored in the task database 204 according to communication with the support server 200 (Fig. 5/ S136). Thereby, a part of or the entire part of the content of the terminated task is stored in the task database 204. The terminated task may serve as a new designated task. Thereafter, the robot R is controlled to execute the designated task (Fig. 5/ S138). Accordingly, the robot R executes a task by moving to a first table (execution starting position) included in the task along a generated path, operating the arms 12 and the hands 14 to fetch a tray on the first table, transporting the tray along the remained path to a second table (execution ending position) and disposing the tray on the second table. Further, the robot R can execute a task by griping a wagon with a luggage disposed thereon at a first location (execution starting position), pushing the wagon along a generated path to transport it to a second location (execution ending position). Furthermore, the robot R can recognize or authorize a guest at the guest reception (execution starting position) according to output signals from the external state sensor 112, move the head 11 to perform greeting motions such as explanation or the like, and guide the guest to the reception room (execution ending position). On the other hand, if it is determined that the robot R is not executing a task (Fig. 5/S130··NO) or it is not necessary to re-execute the terminated task (Fig. 5/S134··NO), the robot R is controlled to execute the designated task (Fig. 5/ S138).

    [0050] According to the robot R with the aforementioned functions, the cost ci indicating the labor or load required for executing a designated task (for example, a task serving as a factor which alters the states of a plurality of tasks) is evaluated according to the internal state and the like (refer to Fig. 4/ S116, S118, S22 and S124). The cost ci is stored in the task database 204 disposed in the support server 200 (refer to Fig. 4/ S126). If it is recognized that the cost ci of the self robot R is the lowest in the plurality of robots R stored in the task database 204, the robot R is controlled to execute the designated task. The evaluation of the cost for the plurality of robots and the storage thereof in the task database 204 disposed in the support server 200 may be deemed as a bid for executing the designated task by the plurality of robots R with the cost as a bid price. The execution of the designated task by a robot R with the lowest cost in the plurality of robots R may be deemed as a contract for executing the designated task by the robot R. Through performing the bid and contract of the designated task, the designated task can be executed by an appropriate robot R in the plurality of robots R from the viewpoint of execution economy of the designated task. Thereby, the robot R can execute the designated task in an appropriate condition from the viewpoint of execution economy for the designated task even though the state thereof is altered.

    [0051] For example, among the first task, the second task and the third task illustrated in Fig. 9(a) to Fig. 9(c), respectively, the third task serving as the designated task can be executed by the second robot R2 in place of the first robot R1. In this situation, as illustrated in Fig. 10(a), the second robot R2 serving as the execution subject for the third task moves toward the parking position of the wagon W serving as the estimated execution ending position of the first task by the first robot R1. After the first robot R1 has executed the first task, as illustrated in Fig. 10(b), while the second task is executed by the first robot R1, the third task is executed by the second robot R2. Moreover, among the first task, the second task and the third task, the second task and the third task serving as the designated tasks can be executed by the second robots R2; and R2j, respectively, in place of the first robot R1. In this situation, as illustrated in Fig. 11(a), the second robots R2; and R2j designated as the execution subjects for the second task and the third task, respectively, move toward the parking position of the wagon W serving as the estimated execution ending position of the-first task by the first robot R1. After the first robot R1 has executed the first task, as illustrated in Fig. 11(b), while the second task is executed by the second robot R2i, the third task is executed by the second robot R2j. After the first tray T1 has been transported away from the wagon W by the second robot R2i and the second tray T2 has been transported away from the wagon W by the second robot R2j, as illustrated by dashed lines in Fig. 11(b), the first robot R1 (it may serve as the second robot R2 if necessary) can execute a further task such as moving the wagon W or the like. Thereby, it is expected to alleviate the labor from the robot R1 by making full use of the second robot R2 and through the assistance on the task execution from the second robot R2. In the example illustrated in Fig. 10(a) and Fig. 10(b), it is possible to economically alleviate the labor for the first robot R1 to return from the position of the table Tb serving as the execution ending position of the second task to the parking position of the wagon W serving as the execution starting position of the third task. In the example illustrated in Fig. 11(a) and Fig. 11(b), it is possible to economically decrease the labor for the first robot R1 to alter the direction thereof by moving to the lateral side of the wagon W before initiating the second task.

    [0052] The first processing element 110 determines the position of the robot R, calculates the travel distance for the robot to move from the determined position to the execution starting position or to the execution ending position via the execution starting position, and evaluates the cost ci higher if the travel distance is longer (refer to Fig. 6). Thereby, if the travel distance to the execution starting position of a designated task or to the execution ending position of the designated task via the execution starting position thereof is shorter than the travel distance by another robots R, the robot R can execute the designated task by priority over the other robot R. On the contrary, if the travel distance is longer than the travel distance by another robot R, the robot R can be prevented from executing the designated task. Thus, it is possible for the robot R to execute the designated task in an appropriate condition from the viewpoint of shortening the travel distance for executing the designated task.

    [0053] If it is determined by the first processing element 110 that the robot R is executing another task, the cost ci for executing the designated task will be evaluated higher than that when it is determined that the robot is not executing another task (refer to Fig. 4/ S104, S118 and S124). Thereby, the robot R can execute the designated task when the robot R is not executing the other task different from the designated task by priority over when the robot R is executing the other task. Thus, it is possible for the robot R to execute the designated task in an appropriate condition from the viewpoint of concentrating on the designated task.

    [0054] If the priority level of the designated task is determined by the first processing element 110 to be lower than the priority level of another task, the cost ci is evaluated higher than that when the priority level of the designated task is determined to be higher than the priority level of the other task (refer to Fig. 4/ S106, S118 and S124). Thereby, if the robot R is executing the other task and the priority level of the other task is lower than the priority level of the designated task, the robot R can be assigned to execute the designated task. Thus, it is possible for the robot R to execute the designated task in an appropriate condition from the viewpoint of executing a task with higher priority level preferentially.

    [0055] If the robot R is determined by the first processing element 110 to be corresponding to a designated robot serving as the execution subject of the designated task, the cost ci is evaluated higher than that when the robot is determined not to be corresponding to the designated robot (refer to Fig. 4/ S120, S122 and S124). Thereby, it is possible for the robot R to execute the designated task in a condition appropriate for the execution subject of the designated task in consideration of a specification or the like.

    [0056] The battery residual amount (energy residual amount) SOC of the robot R after executing the task is estimated by the first processing element 110, the cost ci will be evaluated higher as the battery residual amount becomes less (refer to the equations (1) to (3), Fig. 4/ S116, S118 and Fig. 7). Thereby, when the robot R has more battery residual amount estimated after executing a designated task, the robot R can execute a new designated task by priority over the other robot R with less battery residual amount. On the contrary, when robot R has less battery residual amount than the other robot R, the robot R can be prevented from executing the designated task. Thereby, it is possible for the robot R to execute the designated task in an appropriate condition from the viewpoint of assuring sufficient energy for executing a new task after the execution of the designated task.

    [0057] The robot constituting the task execution system may be a robot different from the robot R described in the aforementioned embodiments or any device which can move autonomously, such as a trolley or the like. Moreover, the plurality of robots may be of different types, respectively.

    [0058] The execution cost ci for a designated task assigned to each robot R is evaluated in the following method. Firstly, the cost of a scheduled execution task to the robot R after the execution duration of a designated task is evaluated respectively in two conditions: whether the designated task has been executed or has not been executed. The execution cost ci of the designated task is evaluated higher continuously or discontinuously as the cost of the scheduled execution task when the designated task has been executed becomes higher than the cost of the scheduled execution task when the designated task is not executed. On the contrary, the execution cost ci of the designated task is evaluated lower continuously or discontinuously as the cost of the scheduled execution task when the designated task has been executed becomes lower than the cost of the scheduled execution task when the designated task is not executed. Accordingly, if the cost of the scheduled execution task when the designated task has been executed becomes lower than the cost of the scheduled execution task when the designated task is not executed, the robot R can execute the designated task by priority over the case when the cost becomes higher. On the other hand, if the cost of the scheduled execution task when the designated task is not executed becomes lower than the cost of the scheduled execution task when the designated task has been executed, the robot R can execute the designated task by priority over the case when the cost becomes higher. Thereby, the robot R can execute the designated task before the scheduled execution task in an appropriate condition from the viewpoint of executing the scheduled execution task at a lower cost.

    [0059] It is acceptable also to dispose a first support processing element in the support server 200 to recognize an execution starting time for a designated task as the content thereof and evaluate an execution cost ci for the designated task estimated at the execution starting time. For example, when the actions or motions of the robot R are controlled according to a motion plan (defined by a trajectory of representative points or a temporal variation behavior of angles for each joint), a behavior state of the robot R at an estimated execution starting time, such as a position, an orientation and a travel velocity thereof, or whether the operation state is set at the ON state or OFF state can be estimated according to the motion plan. If the robot R is executing a task, the ending time for the task can be estimated according to a travel distance traveled to complete the task and the present travel velocity thereof. According to whether the estimated ending time is before or after the estimated starting time for the designated task, whether or not the task is still in execution can be estimated. According to the robot R with the mentioned configuration, through performing the bid and contract of the designated task according to the cost ci evaluated in relation to a predicted future state of the robot R, the robot R can execute the designated task in an appropriate condition from the viewpoint of execution economy of the task.

    [0060] It is acceptable that after the first processing element 110 disposed in the robot R has determined that the robot R is executing another task (refer to fit. 4/ S104), it determines whether a remained part of the other task is equal to or greater than a reference value, and evaluates higher the cost ci when it is determined that the remained part of the other task is less than the reference value than the cost ci when it is determined that the remained part of the other task is equal to or greater than the reference value. The battery consumption amount required for completing the task in execution, the remained travel distance or the like may be calculated as the remained part of the task. Thereby, when the robot R is executing another task different from the designated task, but the other task can be completed in a short time, the robot R can be assigned to execute the designated task. Therefore, the robot R can execute the designated task in an appropriate condition from the viewpoint of efficiently executing the task which is being executed and the designated task continuously.

    [0061] It is also acceptable that the first processing element 110 stores the cost for executing the designated task by the self robot R in the task database 204 on a condition that the cost indicating the labor or load required for the self robot R to execute the designated task is equal to or less than the first threshold. Thereby, each robot R can be prevented from executing the designated task in spite of over-labor or over-load.

    [0062] It is also acceptable that the first processing element 110 evaluates the labor or load required for the self robot R to execute a scheduled execution task as a second cost, and stores the content of the scheduled execution task as the content of the designated task in the task database 204 according to communication with the support server 200 on a condition that the second cost is equal to or higher than a second threshold. Thus, as aforementioned, the scheduled execution task by the self robot R becomes the subject of bid and contract for another robot R. Thereby, a task possibly consuming excessive labor from the self robot R may be executed by another appropriate robot R in place of the self robot R from the viewpoint of executing economy.

    [0063] In the aforementioned embodiment, whether the cost indicating a labor or load required for the self robot R to execute a designated task is the lowest in a robot group including another robot R is determined by each robot R (refer to Fig. 5/ S128); however, it is acceptable for the support server 200 to select a robot R with the lowest cost from the robot group (determine a contractor of a designated task), transmit the selection result or bid result from the support server 200 to the selected robot R, and cause the selected robot R to recognize that the cost of the self robot is the lowest.


    Claims

    1. A robot which executes a task by making autonomous motions, comprising:

    a first processing element (110) configured to recognize a content of a designated task among a plurality of tasks stored in a task database (204), to evaluate a cost indicating a labor or load required for the robot (R) to execute the designated task according to the recognition result, and to store the evaluated cost in the task database (204); and

    a second processing element (120) configured to recognize whether the cost of the robot (R) stored in the task database (204) is the lowest in a robot group containing other robots (R), and to control the motions of the robot so as to execute the designated task on a condition that the cost thereof has been recognized to be the lowest;

    characterised in that:

    the robot (R) makes autonomous motions according to communication with a support server (200) provided with said task database (204);

    the first processing element (110) is configured to recognise said content and to store said evaluated cost in the task database (204) according to communication with the support server (200);

    the second processing element (120) is configured to recognise whether the cost of the robot (R) stored in the task database (204) is the lowest according to communication with the support server (200); and

    the first processing element (110) is configured to :

    - evaluate the cost of a scheduled execution task for the robot (R) when the designated task has been executed and the cost of the scheduled execution task for the robot (R) when the designated task is not executed after an execution duration of the designated task, respectively,

    - evaluate the cost of the designated task higher continuously or discontinuously as the cost of the scheduled execution task when the designated task has been executed becomes higher than the cost of the scheduled execution task when the designated task is not executed, and

    - evaluate the cost of the designated task lower continuously or discontinuously as the cost of the scheduled execution task when the designated task has been executed becomes lower than the cost of the scheduled execution task when the designated task is not executed.


     
    2. The robot according to claim 1, wherein the first processing element (110) recognizes an execution starting time for the designated task as the content of the designated task, and evaluates the cost predicted for executing the designated task at the execution starting time.
     
    3. The robot according to claim 1, wherein the first processing element (110)
    recognizes an execution starting position and an execution ending position for the designated task as the content of the designated task,
    determines a position of the robot (R),
    calculates a travel distance from the determined position of the robot (R) to the execution starting position or the execution ending position of the designated task, and
    evaluates the cost higher continuously or discontinuously as the travel distance becomes longer.
     
    4. The robot according to claim 1, wherein the first processing element (110)
    recognizes whether the robot (R) is executing another task different from the designated task, and
    evaluates higher the cost required for executing the designated task if it is recognized that the robot (R) is executing the other task than the cost required for executing the designated task if it is recognized that the robot (R) is not executing the other task.
     
    5. The robot according to claim 4, wherein the first processing element (110)
    recognizes a priority level of the designated task as the content thereof,
    recognizes whether the priority level of the designated task is higher than the priority level of the other task further after it is recognized that the robot (R) is executing the other task, and
    evaluates higher the cost if it is recognized that the priority level of the designated task is lower than the priority level of the other task than the cost if it is recognized that the priority level of the designated task is higher than the priority level of the other task.
     
    6. The robot according to claim 4, wherein the first processing element (110)
    further recognizes whether a remained part of the other task is equal to or greater than a reference value after it is determined that the other task is being executed, and
    evaluates higher the cost if it is recognized that the remained part of the other task is greater than the reference value than the cost if it is recognized that the remained part of the other task is equal to or less than the reference value.
     
    7. The robot according to claim 1, wherein the first processing element (110)
    recognizes a designated robot which is an execution subject of the designated task as the content thereof, further recognizes whether the robot (R) corresponds to the designated robot, and
    evaluates lower the cost if it is recognized that the robot corresponds to the designated robot than the cost if it is recognized that the robot (R) does not correspond to the designated robot.
     
    8. The robot according to claim 1, wherein the first processing element (110)
    estimates an energy residual of the robot (R) after the execution of the task, and
    evaluates the cost higher continuously or discontinuously as the energy residual becomes less.
     
    9. The robot according to claim 1, wherein the first processing element (110) stores the cost in the task database on a condition that the cost is equal to or less than a first threshold.
     
    10. The robot according to claim 1, wherein the first processing element (110)
    evaluates the labor or load required for the robot (R) to execute a scheduled execution task as a second cost, and
    stores the scheduled execution task in the task database as a designated task according to communication with the support server (200) on a condition that the second cost is equal to or higher than a second threshold.
     
    11. A task execution system, comprising:

    a support server (200) provided with a task database (204) stored with a content of each task among a plurality of tasks, and

    a plurality of robots (R) as claimed in claim 1, executing a task by making autonomous motions according to communication with the support server (200), wherein each robot (R) is provided with a controller (100) including said first processing element (110) and said second processing element (120).


     


    Ansprüche

    1. Roboter, welcher eine Aufgabe durch Durchführen selbstständiger Bewegungen ausführt, gekennzeichnet durch:

    ein erstes Verarbeitungselement (110), welches dazu eingerichtet ist, einen Inhalt einer vorgesehenen Aufgabe unter einer Mehrzahl von Aufgaben zu erkennen, welche in einer Aufgabendatenbank (204) gespeichert sind, einen Aufwand auszuwerten, welcher eine Arbeit oder Last anzeigt, welche der Roboter (R) benötigt, um die vorgesehene Aufgabe gemäß dem Erkennungsergebnis auszuführen, und den ausgewerteten Aufwand in der Aufgabendatenbank (204) zu speichern; und

    ein zweites Verarbeitungselement (120), welches dazu eingerichtet ist, zu erkennen, ob der Aufwand des Roboters (R), welcher in der Aufgabendatenbank (204) gespeichert ist, der geringste in einer Robotergruppe ist, welche andere Roboter (R) umfasst, und die Bewegungen des Roboters so zu kontrollieren, dass die vorgesehene Aufgabe aufgeführt wird, unter der Bedingung, dass der Aufwand, davon als der geringste erkannt worden ist;

    dadurch gekennzeichnet, dass:

    der Roboter (R) selbstständige Bewegungen durchführt gemäß einer Kommunikation mit einem Unterstützungsserver (200), welcher mit der Aufgabendatenbank (204) bereitgestellt ist;

    das erste Verarbeitungselement (110) dazu eingerichtet ist, den Inhalt zu erkennen und den ermittelten Aufwand in der Aufgabendatenbank (204) gemäß der Kommunikation mit dem Unterstützungsserver (200) zu speichern;

    das zweite Verarbeitungselement (120) dazu eingerichtet ist, zu erkennen, ob der Aufwand des Roboters (R), welcher in der Aufgabendatenbank (204) gespeichert ist, der geringste gemäß der Kommunikation mit dem Unterstützungsserver (200) ist; und

    das erste Verarbeitungselement (110) dazu eingerichtet ist:

    - den Aufwand einer geplanten Ausführungsaufgabe für den Roboter (R) auszuwerten, wenn die vorgesehene Aufgabe ausgeführt worden ist, bzw. den Aufwand der geplanten Ausführungsaufgabe für den Roboter (R) auszuwerten, wenn die vorgesehene Aufgabe nicht nach einer Ausführungsdauer der vorgesehenen Aufgabe ausgeführt ist,

    - den Aufwand der vorgesehenen Aufgabe höher kontinuierlich oder diskontinuierlich auszuwerten, wenn der Aufwand der geplanten Ausführungsaufgabe, wenn die vorgesehene Aufgabe ausgeführt worden ist, höher wird als der Aufwand der geplanten Ausführungsaufgabe, wenn die vorgesehene Aufgabe nicht ausgeführt ist, und

    - den Aufwand der vorgesehenen Aufgabe geringer kontinuierlich oder diskontinuierlich auszuwerten, wenn der Aufwand der geplanten Ausführungsaufgabe, wenn die vorgesehene Aufgabe ausgeführt worden ist, geringer wird als der Aufwand der geplanten Ausführungsaufgabe, wenn die vorgesehene Aufgabe nicht ausgeführt ist.


     
    2. Roboter nach Anspruch 1, wobei das erste Verarbeitungselement (110) eine Ausführungsstartzeit für die vorgesehene Aufgabe als den Inhalt der vorgesehenen Aufgabe erkennt, und den Aufwand auswertet, welcher zum Ausführen der vorgesehenen Aufgabe zur Ausführungsstartzeit vorausgesagt ist.
     
    3. Roboter nach Anspruch 1, wobei das erste Verarbeitungselement (110) eine Ausführungsstartposition und eine Ausführungsendposition für die vorgesehene Aufgabe als den Inhalt der vorgesehenen Aufgabe erkennt,
    eine Position des Roboters (R) ermittelt,
    eine Wegstrecke von der ermittelten Position des Roboters (R) zu der Ausführungsstartposition oder der Ausführungsendposition der vorgesehenen Aufgabe berechnet, und
    den Aufwand höher kontinuierlich oder diskontinuierlich auswertet, wenn die Wegstrecke länger wird.
     
    4. Roboter nach Anspruch 1, wobei das erste Verarbeitungselement (110) erkennt, ob der Roboter (R) eine andere Aufgabe, die sich von der vorgesehenen Aufgabe unterscheidet, ausführt, und
    den benötigten Aufwand zum Ausführen der vorgesehenen Aufgabe höher auswertet, wenn erkannt ist, dass der Roboter (R) die andere Aufgabe ausführt, als den benötigten Aufwand zum Ausführen der vorgesehenen Aufgabe, wenn erkannt ist, dass der Roboter (R) die andere Aufgabe nicht ausführt.
     
    5. Roboter nach Anspruch 4, wobei das erste Verarbeitungselement (110) eine Prioritätsstufe der vorgesehenen Aufgabe als den Inhalt davon erkennt,
    erkennt, ob die Prioritätsstufe der vorgesehenen Aufgabe höher ist als die Prioritätsstufe der anderen Aufgabe, nachdem ferner erkannt ist, dass der Roboter (R) eine andere Aufgabe ausführt, und
    den Aufwand höher auswertet, wenn erkannt ist, dass die Prioritätsstufe der vorgesehenen Aufgabe geringer ist als die Prioritätsstufe der anderen Aufgabe, als den Aufwand, wenn erkannt ist, dass die Prioritätsstufe der vorgesehenen Aufgabe höher ist als die Prioritätsstufe der anderen Aufgabe.
     
    6. Roboter nach Anspruch 4, wobei das erste Verarbeitungselement (110) ferner erkennt, ob ein verbliebener Teil der anderen Aufgabe gleich einem oder größer als ein Referenzwert ist, nachdem ermittelt ist, dass die andere Aufgabe ausgeführt ist, und den Aufwand höher auswertet, wenn erkannt ist, dass der verbliebene Teil der anderen Aufgabe größer ist als der Referenzwert, als den Aufwand, wenn erkannt ist, dass der verbliebene Teil der anderen Aufgabe gleich dem oder geringer als der Referenzwert ist.
     
    7. Roboter nach Anspruch 1, wobei das erste Verarbeitungselement (110) einen vorgesehenen Roboter, welcher ein Ausführungsgegenstand der vorgesehenen Aufgabe ist, als den Inhalt davon erkennt, ferner erkennt, ob der Roboter (R) dem vorgesehenen Roboter entspricht, und
    den Aufwand geringer auswertet, wenn erkannt ist, dass der Roboter dem vorgesehenen Roboter entspricht, als den Aufwand, wenn erkannt ist, dass der Roboter (R) nicht dem vorgesehenen Roboter entspricht.
     
    8. Roboter nach Anspruch 1, wobei das erste Verarbeitungselement (110) einen Energierest des Roboters (R) nach dem Ausführen des Aufgabe abschätzt, und
    den Aufwand höher kontinuierlich oder diskontinuierlich auswertet, wenn der Energierest weniger wird.
     
    9. Roboter nach Anspruch 1, wobei das erste Verarbeitungselement (110) den Aufwand in der Aufgabendatenbank speichert, unter der Bedingung, dass der Aufwand gleich einem oder geringer als ein erster Schwellenwert ist.
     
    10. Roboter nach Anspruch 1, wobei das erste Verarbeitungselement (110) die für den Roboter (R) benötigte Arbeit oder Last zum Ausführen einer geplanten Ausführungsaufgabe als einen zweiten Aufwand auswertet, und
    die geplante Ausführungsaufgabe in der Aufgabendatenbank als eine vorgesehene Aufgabe gemäß der Kommunikation mit dem Unterstützungsserver (200) speichert, unter der Bedingung, dass der zweite Aufwand gleich einem oder größer als ein zweiter Schwellenwert ist.
     
    11. Aufgabenausführungssystem, umfassend:

    einen Unterstützungsserver (200), welcher mit einer Aufgabendatenbank (204) bereitgestellt ist, welche mit einem Inhalt jeder Aufgabe unter einer Mehrzahl von Aufgaben gespeichert ist, und

    eine Mehrzahl von Robotern (R) nach Anspruch 1, welche eine Aufgabe durch Durchführen selbstständiger Bewegungen ausführen gemäß einer Kommunikation mit dem Unterstützungsserver (200), wobei jeder Roboter (R) mit einer Regelungs-/Steuerungseinheit (100) bereitgestellt ist, welche das erste Verarbeitungselement (110) und das zweite Verarbeitungselement (120) umfasst.


     


    Revendications

    1. Robot exécutant une tâche par accomplissement de mouvements autonomes, comprenant :

    un premier élément de traitement (110) conçu pour reconnaître la teneur d'une tâche assignée, parmi une pluralité de tâches stockées dans une base (204) de données de tâches, afin d'évaluer un coût indicatif d'un travail ou d'une charge nécessaire pour que ledit robot (R) exécute la tâche assignée, en conformité avec le résultat de la reconnaissance, et afin de stocker le coût évalué dans ladite base (204) de données de tâches ; et

    un second élément de traitement (120) conçu pour reconnaître si le coût du robot (R), stocké dans la base (204) de données de tâches, est le plus bas au sein d'un groupe de robots incluant d'autres robots (R), et pour piloter les mouvements dudit robot afin d'exécuter la tâche assignée, à la condition que le coût de ce dernier ait été reconnu comme le plus bas ;

    caractérisé par le fait que :

    ledit robot (R) accomplit des mouvements autonomes en fonction d'une communication avec un serveur de support (200) doté de ladite base (204) de données de tâches ;

    le premier élément de traitement (110) est conçu pour reconnaître ladite teneur et pour stocker ledit coût évalué, dans la base (204) de données de tâches, en fonction de la communication avec ledit serveur de support (200) ;

    le second élément de traitement (120) est conçu pour reconnaître si le coût du robot (R), stocké dans la base (204) de données de tâches, est le plus bas conformément à ladite communication avec le serveur de support (200) ; et

    ledit premier élément de traitement (110) est conçu pour :

    - évaluer, respectivement, le coût d'une tâche d'exécution planifiée dévolue au robot (R) lorsque la tâche assignée a été exécutée, et le coût de la tâche d'exécution planifiée dévolue audit robot (R), lorsque ladite tâche assignée n'est pas exécutée après une durée d'exécution de ladite tâche assignée,

    - évaluer le coût de la tâche assignée plus haut, en mode continu ou discontinu, si le coût de la tâche d'exécution planifiée, après exécution de ladite tâche assignée, devient supérieur au coût de ladite tâche d'exécution planifiée lorsque ladite tâche assignée n'est pas exécutée, et

    - évaluer le coût de la tâche assignée plus bas, en mode continu ou discontinu, si le coût de la tâche d'exécution planifiée, après exécution de ladite tâche assignée, devient inférieur au coût de ladite tâche d'exécution planifiée lorsque ladite tâche assignée n'est pas exécutée.


     
    2. Robot selon la revendication 1, dans lequel le premier élément de traitement (110) reconnaît un instant de début d'exécution de la tâche assignée, en tant que teneur de ladite tâche assignée, et évalue le coût prédit pour l'exécution de ladite tâche assignée à l'instant du début d'exécution.
     
    3. Robot selon la revendication 1, dans lequel le premier élément de traitement (110)
    reconnaît une position de début d'exécution et une position de fin d'exécution affectées à la tâche assignée, en tant que teneur de ladite tâche assignée,
    détermine une position du robot (R),
    calcule une course de déplacement, à partir de la position déterminée dudit robot (R), jusqu'à ladite position de début d'exécution ou ladite position de fin d'exécution de la tâche assignée, et
    évalue le coût plus haut, en mode continu ou discontinu, si ladite course de déplacement devient plus longue.
     
    4. Robot selon la revendication 1, dans lequel le premier élément de traitement (110)
    reconnaît si le robot (R) exécute une tâche autre, différant de la tâche assignée, et
    évalue plus haut le coût nécessaire à l'exécution de la tâche assignée, s'il est reconnu que le robot (R) exécute la tâche autre, que le coût nécessaire à l'exécution de ladite tâche assignée s'il est reconnu que ledit robot (R) n'exécute pas ladite tâche autre.
     
    5. Robot selon la revendication 4, dans lequel le premier élément de traitement (110)
    reconnaît un niveau prioritaire de la tâche assignée, en tant que teneur de cette dernière,
    reconnaît si ledit niveau prioritaire de la tâche assignée est supérieur au niveau prioritaire de la tâche autre, après qu'il a été reconnu que le robot (R) exécute ladite tâche autre, et
    évalue plus haut le coût, s'il est reconnu que le niveau prioritaire de la tâche assignée est inférieur au niveau prioritaire de la tâche autre, que le coût s'il est reconnu que ledit niveau prioritaire de ladite tâche assignée est supérieur au niveau prioritaire de ladite tâche autre.
     
    6. Robot selon la revendication 4, dans lequel le premier élément de traitement (110)
    reconnaît, en outre, si une part restante de la tâche autre est égale ou supérieure à une valeur de référence après qu'il a été déterminé que ladite tâche autre est en cours d'exécution, et
    évalue le coût plus haut, s'il est reconnu que la part restante de la tâche autre est supérieure à la valeur de référence, que le coût s'il est reconnu que ladite part restante de ladite tâche autre est égale ou inférieure à ladite valeur de référence.
     
    7. Robot selon la revendication 1, dans lequel le premier élément de traitement (110)
    reconnaît un robot désigné, qui est un sujet exécutant la tâche assignée, en tant que teneur de cette dernière, reconnaît par ailleurs si le robot (R) correspond audit robot désigné, et
    évalue le coût plus bas , s'il est reconnu que le robot correspond au robot désigné, que le coût s'il est reconnu que ledit robot (R) ne correspond pas audit robot désigné.
     
    8. Robot selon la revendication 1, dans lequel le premier élément de traitement (110)
    estime une énergie résiduelle dudit robot (R) après l'exécution de la tâche, et
    évalue le coût plus haut, en mode continu ou discontinu, si ladite énergie résiduelle devient moindre.
     
    9. Robot selon la revendication 1, dans lequel le premier élément de traitement (110) stocke le coût, dans la base de données de tâches, à la condition que ledit coût soit égal ou inférieur à un premier seuil.
     
    10. Robot selon la revendication 1, dans lequel le premier élément de traitement (110)
    évalue, en tant que second coût, le travail ou la charge nécessaire pour que ledit robot (R) exécute une tâche d'exécution planifiée, et
    stocke ladite tâche d'exécution planifiée en tant que tâche assignée, dans la base de données de tâches, en fonction d'une communication avec le serveur de support (200), à la condition que ledit second coût soit égal ou supérieur à un second seuil.
     
    11. Système d'exécution de tâches, comprenant :

    un serveur de support (200), doté d'une base (204) de données de tâches dans laquelle est stockée une teneur de chaque tâche, au sein d'une pluralité de tâches, et

    une pluralité de robots (R) conformes à la revendication 1, exécutant une tâche par accomplissement de mouvements autonomes en fonction d'une communication avec ledit serveur de support (200), chaque robot (R) étant pourvu d'un dispositif de commande (100) incluant ledit premier élément de traitement (110) et ledit second élément de traitement (120).


     




    Drawing

































    REFERENCES CITED IN THE DESCRIPTION



    This list of references cited by the applicant is for the reader's convenience only. It does not form part of the European patent document. Even though great care has been taken in compiling the references, errors or omissions cannot be excluded and the EPO disclaims all liability in this regard.

    Patent documents cited in the description