WO2018168537A1 - Learning target apparatus and operating method - Google Patents

Learning target apparatus and operating method Download PDF

Info

Publication number
WO2018168537A1
WO2018168537A1 PCT/JP2018/008141 JP2018008141W WO2018168537A1 WO 2018168537 A1 WO2018168537 A1 WO 2018168537A1 JP 2018008141 W JP2018008141 W JP 2018008141W WO 2018168537 A1 WO2018168537 A1 WO 2018168537A1
Authority
WO
WIPO (PCT)
Prior art keywords
learning
apparatus
operation
display
control unit
Prior art date
Application number
PCT/JP2018/008141
Other languages
French (fr)
Inventor
Tanichi Ando
Koji Takizawa
Original Assignee
Omron Corporation
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
Priority to JP2017-048335 priority Critical
Priority to JP2017048335 priority
Priority to JP2018-023614 priority
Priority to JP2018023614A priority patent/JP2018149670A/en
Application filed by Omron Corporation filed Critical Omron Corporation
Publication of WO2018168537A1 publication Critical patent/WO2018168537A1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06NCOMPUTER SYSTEMS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06NCOMPUTER SYSTEMS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computer systems based on biological models
    • G06N3/004Artificial life, i.e. computers simulating life
    • G06N3/008Artificial life, i.e. computers simulating life based on physical entities controlled by simulated intelligence so as to replicate intelligent life forms, e.g. robots replicating pets or humans in their appearance or behavior
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06NCOMPUTER SYSTEMS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computer systems based on biological models
    • G06N3/02Computer systems based on biological models using neural network models
    • G06N3/08Learning methods
    • G06N3/084Back-propagation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39212Select between autonomous or teleoperation control
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06NCOMPUTER SYSTEMS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computer systems based on biological models
    • G06N3/02Computer systems based on biological models using neural network models
    • G06N3/04Architectures, e.g. interconnection topology
    • G06N3/0445Feedback networks, e.g. hopfield nets, associative networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06NCOMPUTER SYSTEMS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computer systems based on biological models
    • G06N3/02Computer systems based on biological models using neural network models
    • G06N3/04Architectures, e.g. interconnection topology
    • G06N3/0454Architectures, e.g. interconnection topology using a combination of multiple neural nets

Abstract

A mechanism is provided that ensures the safety around a learning target apparatus that is placed at a remote location, when the learning target apparatus is remotely manipulated in order to carry out machine learning. A learning target apparatus according to an aspect of the present invention executes: an accepting step of accepting, from the learning apparatus, a command made through remote manipulation that instructs the learning target apparatus to execute an operation associated with the designated ability; an execution step of executing the operation associated with the designated ability in accordance with the accepted command made through the remote manipulation; and a display step of causing the display unit to display that an operation is being executed in accordance with the remote operation from the learning apparatus, while the operation is being executed in accordance with the command made through the remote manipulation.

Description

LEARNING TARGET APPARATUS AND OPERATING METHOD

The present invention relates to a learning target apparatus and an operating method.

The volume of data that can be handled in a system has been explosively increasing, owing to the advance of CPUs (Central Processing Units) and storage devices of computers, as well as networks. Such large volumes of data are called big data. Furthermore, a great number of apparatuses that serve as data sources and operation targets are connected to each other via networks, and various IoT (Internet of Things) systems have been developed as a mechanism for integrating them. Various kinds of information processing can be performed by handling big data in IoT systems. However, to perform new information processing, new abilities are imparted to applications. In recent years, the amount of development regarding this has increased greatly, and there is a situation where resources for application development are insufficient. If new AI (Artificial Intelligence) technology including deep learning enables applications to acquire new abilities, such a situation where resources are insufficient can be solved.

Artificial intelligence including neural networks has been widely researched for many years. For example, technology for recognizing objects appearing in images has been improved in many ways, and the recognition rate has been increasing gradually. In particular, introduction of deep learning has rapidly increased the object recognition rate. Deep learning technology is used in a wide variety of fields including not only image recognition, but also voice recognition, text summarization, automatic translation, autonomous driving, fault prediction, sensor data analysis, and the like. Machine learning such as this deep learning enables a machine to acquire a new ability.

For example, as techniques related to a method for equipping an apparatus with a new ability, Patent Documents 1 and 2 propose techniques of rewriting printer firmware. Patent Documents 3 and 4 propose techniques associated with machine learning, and Patent Document 5 proposes a character identification system using deep learning.

JP 2009-134474A JP 2007-140952A JP 2014-228972A JP 5816771B JP 2015-53008A

The present inventors found that the aforementioned conventional AI technology has the following problem. That is to say, in the conventional AI technology, an apparatus to which a new ability is to be imparted, such as a robot, is prepared at hand, and this apparatus is enabled to acquire the new ability by executing machine learning processing. For this reason, if the apparatus to which a new ability is to be imparted is placed at a remote location, it has been difficult to impart the new ability to this apparatus.

To solve the foregoing problem, the present inventors invented a system for imparting a new ability to an apparatus located at a remote location by enabling the apparatus to perform machine learning processing by means of remote manipulation. However, the present inventors found that, since the learning target apparatus is remotely manipulated in this system, there is a problem in that an unexpected accident or the like may happen around the learning target apparatus.

The present invention has been made in view of the foregoing situation in an aspect, and aims to provide a mechanism for ensuring the safety around a learning target apparatus that is placed at a remote location, when the learning target apparatus is remotely manipulated in order to carry out machine learning.

To achieve the above-stated object, the present invention employs the following configuration.

That is to say, a learning target apparatus according to an aspect of the present invention is a learning target apparatus that is placed at a location remote from a learning apparatus for performing machine learning for acquiring a designated ability in accordance with a learning request from a client, the learning target apparatus being caused to acquire the designated ability through the machine learning of the learning apparatus, including: a display unit; and a control unit, wherein the control unit is configured to execute: an accepting step of accepting, from the learning apparatus, a command made through remote manipulation that instructs the learning target apparatus to execute an operation associated with the designated ability; an execution step of executing the operation associated with the designated ability in accordance with the accepted command made through the remote manipulation; and a display step of causing the display unit to display that an operation is being executed in accordance with the remote operation from the learning apparatus, while the operation is being executed in accordance with the command made through the remote manipulation.

The learning target apparatus with this configuration displays, on the display unit, that the operation is being executed in accordance with remote manipulation from the learning apparatus, while the learning target apparatus is operating in accordance with the command made through remote manipulation from the learning apparatus. With this configuration, operators around the learning target apparatus can be notified that the learning target apparatus is being remotely manipulated, through this display on the display unit. Thus, the safety around the learning target apparatus can be ensured. Accordingly, with this configuration, it is possible to provide a mechanism for ensuring the safety around the learning target apparatus that is placed at a remote location, when the learning target apparatus is remotely manipulated in order to carry out machine learning.

Note that the learning target apparatus may not be particularly limited as long as the learning target apparatus is an apparatus that can be controlled by a computer, and may be selected as appropriate, as per an embodiment. For example, the learning target apparatus may be a robot system that is used for a production line, or surgery. The ability to be acquired may include any kind of ability that the learning target apparatus can be equipped with, and is, for example, a function that can be provided by the learning target apparatus, or information processing that can be executed by the learning target apparatus. To acquire an ability includes the learning target apparatus becoming able to carry out a new function or information processing that it is not equipped with, and the learning target apparatus becoming able to more efficiently carry out an equipped function or information processing. Furthermore, being placed at a remote location means that the learning apparatus and the learning target apparatus are physically separate from each other, and refers to, for example, placement in which a person who is present on the learning apparatus side cannot see a person who is present on the learning target apparatus side, or cannot directly hear the voice of the person who is present on the learning target apparatus side, as in the case where these apparatuses are partitioned by a wall or are placed in different buildings. Also, for example, the learning target apparatus is installed in a factory of the client who has requested the learning, the learning apparatus is installed in a building of the company that takes on the learning request, and the learning target apparatus and the learning apparatus are placed in different buildings. The present invention is particularly effective in the case where it takes time, to some extent, for an engineer who belongs to a company that manages the learning apparatus to visit the location where the learning target apparatus is placed, e.g. the learning apparatus and the learning target apparatus are placed in different prefectures. It is also favorable that machine power of the learning apparatus is higher than machine power of the learning target apparatus. That is to say, the learning target apparatus may be configured to have lower machine power than that of the learning apparatus. The machine power may be compared based on the processing speed of a CPU, the capacity of a memory, the readout speed of the memory, or the like.

The learning target apparatus according to the above-described aspect may further include a communication unit configured to communicate with a peripheral apparatus placed around the learning target apparatus. The control unit may be configured to further execute a notification step of notifying, using the communication unit, the peripheral apparatus that the operation is being executed in accordance with the remote manipulation from the learning apparatus, while the operation is being executed in accordance with the command made through the remote manipulation. With this configuration, the peripheral apparatus can recognize that the learning target apparatus is operating in accordance with remote manipulation. Thus, the peripheral apparatus can be configured not to inhibit the operation of the learning target apparatus executed in accordance with remote manipulation for machine learning.

In the learning target apparatus according to the above-described aspect, the control unit may be configured to further execute a completion notification step of notifying, using the communication unit, the peripheral apparatus that the operation executed in accordance with the remote manipulation is completed, after the remote manipulation from the learning apparatus is completed. With this configuration, the peripheral apparatus can recognize that the learning target apparatus has completed the operation executed in accordance with remote manipulation.

In the learning target apparatus according to the above-described aspect, the control unit may be configured to further execute a completion display step of causing the display unit to display that the operation executed in accordance with the remote manipulation is completed, after the remote manipulation from the learning apparatus is completed. Thus, operators around the learning target apparatus can be notified that the learning target apparatus has completed the operation executed in accordance with remote manipulation. In particular, operators around the learning target apparatus can be notified that the operation executed in accordance with remote manipulation from the learning apparatus has been completed, and that the learning target apparatus will not suddenly start to operate in accordance with remote manipulation.

In the learning target apparatus according to the above-described aspect, the display unit may be a display, and in the display step, the control unit may cause the display to display content of the operation executed in accordance with the remote manipulation from the learning apparatus. With this configuration, operators around the learning target apparatus can be notified of the content of the operation executed in accordance with remote manipulation.

In the learning target apparatus according to the above-described aspect, in the accepting step, the control unit may accept the command that instructs the learning target apparatus to execute a plurality of operations. In the display step, the control unit may cause the display to display content of an operation to be executed subsequently to the operation that is being executed due to the execution step. With this configuration, operators around the learning target apparatus can be notified, in advance, of the operation of the learning target apparatus by displaying, on the display, the content of the operation to be executed subsequently to the operation that is being executed. Thus, the safety around the learning target apparatus can be increased.

In the learning target apparatus according to the above-described aspect, if an operation that is being executed is a dangerous operation, in the display step, the control unit may cause the display to display that the operation that is being executed is a dangerous operation. With this configuration, operators around the learning target apparatus can be clearly notified that they may be in danger by clearly indicating the dangerous operation. Thus, the safety around the learning target apparatus can be increased.

In the learning target apparatus according to the above-described aspect, the display unit may be an indicator lamp. In the display step, the control unit may cause the indicator lamp to indicate that the operation is being executed in accordance with the remote manipulation from the learning apparatus, by causing the indicator lamp to emit light in a first display mode. In the completion display step, the control unit may cause the indicator lamp to indicate that the operation executed in accordance with the remote manipulation is completed, by causing the indicator lamp to emit light in a second display mode that is different from the first display mode. With this configuration, a mechanism for ensuring the safety around the learning target apparatus can be realized cheaply.

An operation method according to an aspect of the present invention is an operation method for a learning target apparatus that is placed at a location remote from a learning apparatus for performing machine learning for acquiring a designated ability in accordance with a learning request from a client, the learning target apparatus being caused to acquire the designated ability through machine learning of the learning apparatus and including a display unit, the method including: an accepting step of accepting, from the learning apparatus, a command made through remote manipulation that instructs the learning target apparatus to execute an operation associated with the designated ability; an execution step of executing the operation associated with the designated ability in accordance with the accepted command made through the remote manipulation; and a display step of causing the display unit to display that an operation is being executed in accordance with the remote operation from the learning apparatus, while the operation is being executed in accordance with the command made through the remote manipulation. With this configuration, it is possible to provide a mechanism for ensuring the safety around a learning target apparatus that is placed at a remote location, when the learning target apparatus is remotely manipulated in order to carry out machine learning.

According to the present invention, it is possible to provide a mechanism for ensuring the safety around a learning target apparatus that is placed at a remote location, when the learning target apparatus is remotely manipulated in order to carry out machine learning.

schematically shows an example of an instance in which the present invention is applied. schematically shows an example of a hardware configuration of a learning apparatus according to an embodiment. schematically shows an example of a hardware configuration of a robot arm system according to an embodiment. schematically shows an example of an operation state of the robot arm system according to an embodiment. schematically shows an example of a software configuration of the learning apparatus according to an embodiment. schematically shows an example of a software configuration of the robot arm system according to an embodiment. shows an example of a processing procedure of the learning apparatus according to an embodiment. shows an example of a processing procedure of the robot arm system according to an embodiment. schematically shows an example of a configuration of a learning apparatus according to a modification. shows an example of a processing procedure during machine learning of the learning apparatus according to a modification. schematically shows an example of a robot arm system according to a modification.

Hereinafter, an embodiment according to an aspect of the present invention (also referred to as “the embodiment” below) will be described based on the drawings. However, the embodiment described below is merely an example of the present invention in every respect. Needless to say, various improvements and modifications may be made without departing from the scope of the present invention. That is to say, to implement the present invention, a specific configuration corresponding to an embodiment may also be employed as appropriate. For example, in the following description, a robot arm system that performs a predetermined task in a factory is taken as an example of an embodiment of a learning target apparatus for which machine learning is to be performed. However, the object to which the present invention is to be applied is not limited to robot arm systems, and may be selected as appropriate, as per an embodiment. Note that, although data that is used in the embodiment is described using natural language, more specifically, the data is defined by pseudo-language, commands, parameters, machine language, or the like that can be recognized by a computer.
§1 Application example

First, an example of an instance where the present invention is applied will be described using FIG. 1. FIG. 1 schematically shows an example of an application instance of a learning apparatus and a learning target apparatus according to the embodiment.

As shown in FIG. 1, a learning apparatus 1 according to the embodiment is an information processing apparatus that performs machine learning to acquire a new ability that is designated for a learning target apparatus placed at a remote location, in accordance with a learning request from a client. Specifically, the learning apparatus 1 accepts, as a learning request from the client, the designation of a learning target apparatus that is placed at a remote location and for which machine learning is to be performed, and the designation of an ability that is to be acquired by the learning target apparatus through machine learning. The client uses a user terminal 4 to designate the learning target apparatus and the ability to be acquired, via a network 10.

In the embodiment, it is assumed that a robot arm system 2, which performs a predetermined task in a factory, is designated as the learning target apparatus that is to acquire the designated ability through machine learning of the learning apparatus 1. Note that the ability to be acquired may be selected as appropriate, as per an embodiment, from among any kind of ability that the robot arm system 2 can be equipped with. For example, the ability to be acquired may be an ability to carry out a new task, or an ability to more efficiently carry out a task that is utilized.

The learning apparatus 1 transmits control data to the robot arm system 2, which has been designated as the learning target apparatus, and thus remotely manipulates the robot arm system 2 so as to execute an operation for learning associated with the ability designated in the learning request. Next, the learning apparatus 1 collects learning data for machine learning of the designated ability, based on the result of remotely manipulating the robot arm system 2. The learning apparatus 1 then performs machine learning of a learning device (later-described neural network 6) so as to acquire the designated ability, using the collected learning data. Thus, the learning apparatus 1 can generate a trained learning device for enabling the robot arm system 2 designated as the learning target apparatus to carry out the ability designated in the learning request.

In this embodiment, the robot arm system 2 placed at a remote location only executes the operation associated with the designated ability, and machine learning processing for acquiring the designated ability is executed by the learning apparatus 1. Accordingly, even if machine power of the robot arm system 2 placed at a remote location is limited, the processing for machine learning of the ability to be acquired by the robot arm system 2 can be performed.

Accordingly, according to the embodiment it is possible to provide a technical mechanism for accepting a learning request from a normal company (client) that does not have highly skilled workers and a complicated system to be used in machine learning, and carry out machine learning in accordance with the accepted learning request. In particular, it is possible to provide a technical mechanism for appropriately imparting a new ability to an apparatus, such as the robot arm system 2, that is placed in a factory, warehouse, or the like at a remote location.

Note that being placed at a remote location means that the learning apparatus 1 is physically separate from the learning target apparatus, and refers to, for example, placement in which a person who is present on the learning apparatus side cannot see a person who is present on the learning target apparatus side, or cannot directly hear the voice of the person who is present on the learning target apparatus side, as in the case where these apparatuses are partitioned by a wall or are placed in different buildings. Also, for example, the learning target apparatus is installed in a factory of the client who has requested the learning, the learning apparatus 1 is installed in a building of the company that takes on the learning request, and the learning target apparatus and the learning apparatus 1 are placed in different buildings. Accordingly, the placement of the user terminal 4 used by the client may be selected as appropriate, as per an embodiment. For example, the user terminal 4 may also be placed in a local area network that is different from that of the learning apparatus 1 and the robot arm system 2, and may also be placed so as to be connected to the learning apparatus 1 and the robot arm system 2 via a network such as the Internet. Also, for example, the user terminal 4 may also be placed in the same local area network as that of the learning apparatus 1, and may also be placed in the same local area network as that of the robot arm system 2. Furthermore, the learning apparatus 1 may accept the learning request from the client without using the user terminal 4, by directly receiving input.

On the other hand, the robot arm system 2 according to the embodiment is an example of a learning target apparatus that is placed at a remote location relative to the learning apparatus 1 for performing machine learning to acquire the ability designated in accordance with the learning request from the client, and that is made to acquire the designated ability through machine learning of the learning apparatus 1. The robot arm system 2 according to the embodiment includes a robot arm 30, which performs a predetermined task, and a robot controller (RC) 20, which controls the robot arm 30. The robot controller may also be a PLC (programmable logic controller) or the like. Thus, the robot arm system 2 is configured to accept, from the learning apparatus 1, a command made through remote manipulation for making an instruction to carry out an operation associated with the designated ability, and execute the operation associated with the designated ability in accordance with the accepted command made through remote manipulation. That is to say, the robot arm system 2 is configured so that the RC 20 causes the robot arm 30 to execute the operation designated from the learning apparatus 1.

The robot arm system 2 also includes a display 32, which performs predetermined display. The display 32 is placed at a location that can be seen by workers in the factory who are in the vicinity of the robot arm system 2, e.g. near the robot arm 30. This display 32 is an example of a "display unit" of the present invention. The robot arm system 2 according to the embodiment is configured to cause the display 32 to display that the robot arm system 2 is operating while being remotely manipulated by the learning apparatus 1, while executing an operation in accordance with the command made through remote manipulation.

Thus, in the embodiment, the displayed content on the display 32 can notify workers or the like in the factory that the robot arm system 2 is being remotely manipulated by the learning apparatus 1. Accordingly, according to the embodiment, safety around the robot arm system 2 can be ensured while remote manipulation is performed by the learning apparatus 1.

Note that, in the embodiment, the robot arm system 2 includes a camera 31, which monitors the state of a movable area of the robot arm 30. The camera 31 is an example of a monitoring apparatus (shooting apparatus) for monitoring the state of the movable area of the robot arm 30. Also, in the embodiment, not only the robot arm system 2, but also a robot apparatus 5, which can be moved heteronomously as per an operation made by an operator, or can move autonomously, perform tasks in the factory.
§2 Configuration example
(Hardware configuration)
(Learning apparatus)

Next, an example of a hardware configuration of the learning apparatus 1 according to the embodiment will be described using FIG. 2. FIG. 2 schematically shows an example of a hardware configuration of the learning apparatus 1 according to the embodiment.

As shown in FIG. 2, the learning apparatus 1 according to the embodiment is a computer in which a control unit 11, a storage unit 12, a communication interface 13, an input device 14, an output device 15, and a drive 16 are electrically connected to each other. Note that, in FIG. 2, the communication interface is denoted as “communication I/F”.

The control unit 11 includes a CPU, a RAM (Random Access Memory), a ROM (Read Only Memory), and the like, and is configured to execute various kinds of information processing based on programs and data. The storage unit 12 is constituted by a hard disk drive, a solid-state drive, or the like, for example, and stores a learning program 121 to be executed by the control unit 11, learning data 122 to be used in the learning of the learning device, ability-imparting data 123 for imparting the ability designated by the client to the robot arm system 2, and so on.

The learning program 121 is a program for causing the learning apparatus 1 to execute later-described machine learning processing (FIG. 7). The learning data 122 is data to be used in machine learning of the ability designated by the client, and is collected from the robot arm system 2 that is remotely manipulated. The ability-imparting data 123 is data for imparting an ability acquired as a result of machine learning to the robot arm system 2. The details will be described later.

The communication interface 13 is a wired LAN (Local Area Network) module, a wireless LAN module, or the like, for example, and is an interface for performing wired or wireless communication via the network 10. The learning apparatus 1 can perform data communication with the robot arm system 2 and the user terminal 4 via the network 10, using this communication interface 13. Note that the type of the network 10 may be selected as appropriate from among the Internet, a wireless communication network, a telecommunication network, a telephone network, a dedicated network, and the like, for example.

The input device 14 is a device for performing input, such as a mouse or a keyboard, for example. The output device 15 is a device for performing output, such as a display or a speaker, for example. The operator can operate the learning apparatus 1 via the input device 14 and the output device 15.

The drive 16 is a CD drive, a DVD drive, or the like, for example, and is a drive device for loading a program stored in a storage medium 91. The type of the drive 16 may be selected as appropriate in accordance with the type of the storage medium 91. The learning program 121 may also be stored in this storage medium 91.

The storage medium 91 is a medium that accumulates information such as that of a program by means of an electric, magnetic, optical, mechanical, or chemical effect, so that a computer or other kind of apparatus, machine, or the like can read the recorded information such as that of the program. The learning apparatus 1 may also acquire the learning program 121 from this storage medium 91.

Here, FIG. 2 shows a disk-type storage medium such as a CD or DVD as an example of the storage medium 91. However, the type of storage medium 91 is not limited to the disk type, and may also be a type other than the disk type. Examples of a storage medium of a type other than the disk type may include a semiconductor memory such as a flash memory.

Note that, regarding the specific hardware configuration of the learning apparatus 1, constituent elements may be omitted, replaced, and added as appropriate, as per an embodiment. For example, the control unit 11 may also include a plurality of processors. The learning apparatus 1 may also be constituted by a plurality of information processing apparatuses. The learning apparatus 1 may also be an information processing apparatus designed exclusively for a service to be provided, as well as a general-purpose server device, a PC (Personal Computer), or the like. To execute the later-described machine learning processing, it is favorable that the learning apparatus 1 is configured to have higher machine power than that of the robot arm system 2. Note that the machine power may be specified by the processing speed of a CPU, the storage capacity of a memory, the readout speed of the memory, or the like. For example, the learning apparatus 1 may also have higher machine power than that of the robot arm system 2 as a result of having a CPU that operates at a higher speed than the RC 20 in the robot arm system 2. In the case where the CPUs in the learning apparatus 1 and the RC 20 have the same processing speed, the learning apparatus 1 may also have higher machine power than that of the robot arm system 2 as a result of the RAM in the learning apparatus 1 having more capacity or a higher speed than the RAM in the RC 20.
<Robot arm system>

Next, an example of a hardware configuration of the robot arm system 2 according to the embodiment will be described, also using FIGS. 3 and 4. FIG. 3 schematically shows an example of the hardware configuration of the RC 20 according to the embodiment. FIG. 4 schematically shows an example of an operation state of the robot arm 30 according to the embodiment. As shown in FIGS. 1 and 3, the robot arm system 2 according to the embodiment includes the RC 20, the robot arm 30, the camera 31, and the display 32. The respective constituent elements are described below.
(RC)

First, the RC 20 will be described. The RC 20 according to the embodiment is a computer in which a control unit 21, a storage unit 22, external interfaces 23, and a communication interface 24 are electrically connected to one another. The RC 20 is thus configured to control operations of the robot arm 30, the camera 31, and the display 32. Note that, in FIG. 3, each of the external interfaces and the communication interface are denoted as “external I/F” and “communication I/F”, respectively.

The control unit 21 is configured to include a CPU, a RAM, a ROM, and the like, and execute various kinds of information processing based on programs and data. The storage unit 22 is constituted by a RAM, a ROM, or the like, for example, and stores a control program 221. The control program 221 is a program for causing the RC 20 to execute later-described processing for controlling the robot arm 30 (FIG. 8). The control unit 21 is configured to execute processes in later-described steps by interpreting and executing this control program 221.

The external interfaces 23 are interfaces for connection with external devices, and are configured as appropriate in accordance with the external devices to be connected. In the embodiment, the RC 20 is connected to the robot arm 30, the camera 31, and the display 32 via the respective external interfaces 23.

The communication interface 24 is a wired LAN (Local Area Network) module, a wireless LAN module, or the like, for example, and is an interface for wired or wireless communication. The communication interface 24 is an example of a "communication unit" of the present invention. Using the communication interface 24, the RC 20 can communicate data with the learning apparatus 1 that is placed at a remote location, and a peripheral device (e.g. a self-running robot apparatus 5) that is placed in the vicinity of the robot arm system 2 in the factory.

Note that, regarding the specific hardware configuration of the RC 20, constituent elements may be omitted, replaced, and added as appropriate, as per an embodiment. The control unit 21 may also include a plurality of processors. The control unit 21 may also be constituted by an FPGA. The storage unit 22 may also be constituted by the RAM and ROM included in the control unit 21. The storage unit 22 may also be constituted by an auxiliary storage device such as a hard disk drive or a solid-state drive. The RC 20 may also be an information processing apparatus designed exclusively for a service to be provided, as well as a general-purpose desktop PC, a tablet PC, or the like, in accordance with the control target.
(Robot arm)

Next, the robot arm 30 will be described. The robot arm 30 may be configured to be able to execute a predetermined operation, as appropriate. In the example in FIG. 4, the robot arm 30 includes a base portion 301, which serves as a starting point, two joint portions 302, which serve as movable shafts, two link portions 303, which form a frame, and an end effector 304, which is attached to a leading end.

The joint portions 302 are each configured to include a drive motor such as a servo motor or a brushless motor, and to be able to turn or rotate a corresponding link portion 303. An angle sensor able to detect an angle, such as a rotary encoder, is attached to each of the joint portions 302. Thus, the robot arm 30 is configured to be able to specify the angles of the joint portions 302.

The end effector 304 is formed as appropriate in accordance with a task to be carried out in the factory. A force sensor configured to detect a force exerted on the end effector 304 may also be attached to this end effector 304. Thus, the robot arm 30 can be configured to detect the force exerted on the end effector 304.

The robot arm 30 has a movable area 308, which is defined in accordance with the joint portions 302, the link portions 303, and the end effector 304. That is to say, the movable area 308 is an area that can be reached by the end effector 304 with the joint portions 302 being driven. In the embodiment, an allowable area 309, in which the robot arm 30 is allowed to operate, is set within the movable area 308. The details will be described later.

Note that, regarding the specific configuration of the robot arm 30, constituent elements may be omitted, replaced, and added as appropriate, as per an embodiment. For example, the number of joint portions 302 and the number of link portions 303 may be selected as appropriate, as per an embodiment. A torque sensor may also be attached, in addition to the angle sensor, to each joint portion 302. Thus, the joint portions 302 can be controlled according to torque.
(Display)

In the embodiment, the display 32 is used for displaying the state of the robot arm system 2 (robot arm 30). For this reason, the display 32 may not be particularly limited as long as it can display the state, and may be a known liquid-crystal display, a touch panel display, or the like.
(Camera)

In the embodiment, the camera 31 is placed so as to capture an image of the state of the movable area 308 of the robot arm system 2 (robot arm 30). Thus, the state of the movable area 308 is reflected in the image captured by the camera 31. This captured image is an example of state information that indicates the state of the movable area 308. Note that the camera 31 may also be fixed at a predetermined location, or may also be configured to be able to change its shooting direction (orientation) using a motor or the like. The camera 31 may be a general digital camera, video camera, 360-degree camera, or the like, or may also be a camera for capturing visible light or infrared light.
<Robot apparatus>

For example, the robot apparatus 5 includes a control unit, which is constituted by a CPU or the like, a storage unit for storing programs and the like, a communication interface for communicating with the RC 20, a robot arm that is similar to the robot arm 30, a wheel module for moving heteronomously or autonomously, and so on. Thus, the robot apparatus 5 is configured to move in the factory and perform a predetermined task, as appropriate. Note that the type of the robot apparatus 5 is not particularly limited. Needless to say, the robot apparatus 5 may not be a humanoid robot, and may be selected as appropriate in accordance with tasks to be performed in the factory.
<User terminal>

For example, the user terminal 4 is a computer in which a control unit, which is constituted by a CPU or the like, a storage unit for storing programs and the like, a communication interface for communication via a network, and an input-output device are electrically connected to one another. The user terminal 4 is used by a client to make a machine learning request (learning request) to a service provider that manages the learning apparatus 1. For example, the user terminal 4 may be a desktop PC, a tablet PC, a cellular phone including a smartphone, or the like that can connect to a network.
(Software configuration)
<Learning apparatus>

Next, an example of a software configuration of the learning apparatus 1 according to the embodiment will be described using FIG. 5. FIG. 5 schematically shows an example of a software configuration of the learning apparatus 1 according to the embodiment.

The control unit 11 in the learning apparatus 1 loads the learning program 121 stored in the storage unit 12 to the RAM. The control unit 11 then interprets and executes the learning program 121 loaded to the RAM, using the CPU, and controls the constituent elements. Thus, as shown in FIG. 5, the learning apparatus 1 according to the embodiment is configured to be a computer that includes, as software modules, a learning request accepting unit 110, an allowable area setting unit 111, a state acquisition unit 112, a remote manipulation unit 113, a learning data collection unit 114, a learning processing unit 115, an ability-imparting data generation unit 116, and a distribution unit 117.

The learning request accepting unit 110 accepts, from the client, the designation of a learning target apparatus placed at a remote location and the designation of an ability that the designated learning target apparatus is to acquire through machine learning, as a learning request. In the embodiment, it is assumed that a request for machine learning of the robot arm system 2 is accepted from the client.

The allowable area setting unit 111 sets the allowable area in which the learning target apparatus is allowed to operate, within the movable area of the learning target apparatus. In the embodiment, the allowable area setting unit 111 sets an allowable area 309 within the movable area 308 of the robot arm 30.

The state acquisition unit 112 acquires state information that indicates the state of the movable area, from a monitoring apparatus that monitors the state of the movable area of the learning target apparatus. In the embodiment, the state acquisition unit 112 acquires, from the camera 31 that is placed so as to capture images of the movable area 308, an image captured by this camera 31 as the state information.

The remote manipulation unit 113 transmits control data to the learning target apparatus, and thus remotely manipulates the learning target apparatus so as to execute an operation associated with the ability designated in the learning request. The learning data collection unit 114 collects the learning data for machine learning of the designated ability, based on the remote manipulation result.

In the embodiment, the remote manipulation unit 113 remotely manipulates the robot arm 30 in the robot arm system 2 by transmitting control data for making a command that a predetermined operation be performed to the RC 20 via the network 10. At this time, the remote manipulation unit 113 remotely manipulates the robot arm system 2 so as to operate within the designated allowable area 309, based on the captured image acquired from the camera 31. The learning data collection unit 114 then collects the learning data 122, in which goal data indicating a task goal to be achieved with respect to the designated ability and sensor data obtained in the process of operation performed until this task goal is achieved are pieces of input data, and control data transmitted to the RC 20 in the process of operation performed until the task goal is achieved is training data.

The learning processing unit 115 performs machine learning of the learning device so as to acquire the designated ability, using the collected learning data. The ability-imparting data generation unit 116 generates ability-imparting data for imparting the designated ability to the learning target apparatus by mounting the trained learning device for which machine learning has been completed onto the learning target apparatus. The distribution unit 117 distributes the generated ability-imparting data to the learning target apparatus.

In the embodiment, the learning processing unit 115 performs machine learning of the neural network 6, using the learning data 122 collected from the robot arm system 2. The ability-imparting data generation unit 116 generates the ability-imparting data 123 for equipping the RC 20 with the trained neural network 6. The distribution unit 117 distributes the generated ability-imparting data 123 to the RC 20 via the network 10.
(Learning device)

Next, the learning device will be described. As shown in FIG. 5, the learning device according to the embodiment is constituted by the neural network 6. The neural network 6 is a multi-layer neural network that is to be used in so-called deep learning, and includes an input layer 61, an intermediate layer (hidden layer) 62, and an output layer 63 in this order from the input side.

Note that, in the example of FIG. 5, the neural network 6 includes one intermediate layer 62, the output from the input layer 61 is input to the intermediate layer 62, and the output from the intermediate layer 62 is input to the output layer 63. However, the number of intermediate layers 62 may not be limited to one, and the neural network 6 may also include two or more intermediate layers 62.

Each of the layers 61 to 63 includes one or more neurons. For example, the number of neurons in the input layer 61 can be set in accordance with input data to be used as an input. The number of neurons in the intermediate layer 62 can be set as appropriate, as per an embodiment. The number of neurons in the output layer 63 can be set in accordance with control data to be output. A threshold value is set for each neuron. Basically, the output of each neuron is determined based on whether or not the sum of products of the input and the weight exceeds the threshold value.

Neurons in adjacent layers are connected as appropriate, and a weight (connection weight) is set for each connection. In the example in FIG. 5, each neuron is connected to all neurons in an adjacent layer. However, the connection of neurons may not be limited to this example, and may be set as appropriate, as per an embodiment.

The learning processing unit 115 performs neural network learning processing to construct the neural network 6 so as to output control data as output values upon the goal data and sensor data included in the collected learning data 122 being input. The ability-imparting data generation unit 116 generates the ability-imparting data 123 that includes information indicating the configuration of the constructed neural network 6 (e.g. the number of layers of the neural network, the number of neurons in each layer, the connection relationship between neurons, and transfer functions of the neurons), the connection weights between neurons, and the threshold value for each neuron.
<Robot arm system>

Next, an example of a software configuration of the robot arm system 2 according to the embodiment will be described using FIG. 6. FIG. 6 schematically shows an example of the software configuration of the robot arm system 2 that includes the RC 20 according to the embodiment.

The control unit 21 in the RC 20 loads the control program 221 stored in the storage unit 22 to the RAM. The control unit 21 then interprets and executes, using the CPU, the control program 221 loaded to the RAM, and controls the constituent elements. Thus, as shown in FIG. 6, the robot arm system 2 that includes the RC 20 according to the embodiment is configured to be a computer that includes, as software modules, a remote manipulation accepting unit 211, an operation processing unit 212, a display control unit 213, and a notification unit 214.

The remote manipulation accepting unit 211 accepts, from the learning apparatus 1, a command made through remote manipulation for giving an instruction to execute an operation for learning associated with the designated ability. The operation processing unit 212 executes an operation associated with the designated ability in accordance with the accepted command made through remote manipulation. The display control unit 213 causes the display 32 to display that the operation is being performed in accordance with remote manipulation from the learning apparatus 1, while the operation is being executed in accordance with the command made through remote manipulation. The notification unit 214 notifies peripheral apparatuses (e.g. the robot apparatus 5) that the operation is being performed in accordance with remote manipulation from the learning apparatus 1, while the operation is being executed in accordance with the command made through remote manipulation.
<Others>

The software modules of the learning apparatus 1 and the robot arm system 2 (RC 20) will be described in detail in a later-described operation example. Note that the embodiment describes an example in which all of the software modules of the learning apparatus 1 and the RC 20 are realized by general-purpose CPUs. However, some or all of those software modules may also be realized by one or more dedicated processors. Regarding the software configurations of the learning apparatus 1 and the RC 20, software modules may be omitted, replaced, and added as appropriate, as per an embodiment.
§3 Operation example
(Learning apparatus)

Next, an operation example of the learning apparatus 1 will be described using FIG. 7. FIG. 7 is a flowchart showing an example of a processing procedure of the learning apparatus 1 according to the embodiment. Note that the processing procedure described below is merely an example, and each process may be modified as much as possible. Regarding the processing procedure described below, steps may be omitted, replaced, and added as appropriate, as per an embodiment.

(Step S101)
In step S101, the control unit 11 operates as the learning request accepting unit 110, and accepts the learning request from the client. For example, the client operates the user terminal 4, designates the learning target apparatus that is placed at a remote location and for which machine learning is to be performed, and designates the ability that the learning target apparatus is to acquire through machine learning. This learning request may also be input by a person who was informed of the content of the request from the client, rather than by the client himself/herself. That is to say, the content of the request may not be input by the client himself/herself. After completing designation of the learning target apparatus and the ability to be acquired, the control unit 11 advances the processing to the next step S102.

Note that, in step S101, the learning apparatus 1 acquires the information to be used in remote manipulation of the learning target apparatus by accepting the designation of the learning target apparatus. For example, the learning apparatus 1 acquires an IP address or the like of the RC 20 as the information to be used in remote manipulation of the robot arm system 2, in accordance with the robot arm system 2 having been designated as the learning target apparatus.

The learning apparatus 1 may also accept the designation of the ability that is to be learned through machine learning, by presenting a list of abilities that can be acquired through machine learning to the client in accordance with the type of the learning target apparatus. The list of abilities to be acquired through machine learning may also be prepared in advance as a template for each learning target apparatus.

The ability to be acquired through machine learning may be selected as appropriate from all abilities that the learning target apparatus can be equipped with. For example, in the case where the robot arm 30 is used in a task such as transfer, attachment, processing, removal of burrs, soldering, welding or the like of parts, an ability to carry out this task for a new object or the like may be designated as a target of machine learning, for example. In the case where such a task is already utilized, the ability to more efficiently carry out this already-utilized task or the like may be designated as a target of machine learning, for example.

Also, in step S101, the control unit 11 may also accept the input of a condition for achievement of this ability together with the designation of the ability to be acquired through machine learning. The condition for achievement of the ability is an additional condition for the ability that the learning target apparatus is to acquire, and is a temporal condition that a certain designated task is performed within a certain number of seconds, for example.

(Step S102)
In step S102, the control unit 11 operates as the allowable area setting unit 111, and sets the allowable area in which the learning target apparatus is allowed to operate, within the movable area of the learning target apparatus designated in step S101. In the embodiment, the control unit 11 sets the allowable area 309 in which the robot arm 30 is allowed to operate, within the movable area 308 of the robot arm 30. After completing the setting of the allowable area 309, the control unit 11 advances processing to the next step S103.

Note that the setting of the allowable area 309 may be performed as appropriate. For example, the control unit 11 may accept the designation of the allowable area 309 from the operator. In this case, the operator sets the allowable area 309 within the movable area 308 by operating the input device 14. At this time, the learning apparatus 1 acquires a captured image from the camera 31 that captures images of the state of the movable area 308, and outputs the acquired captured image to the output device 15. The operator can thus designate the allowable area 309 within the output captured image while omitting locations that are not related to the ability designated in step S101. The allowable area 309 may also be changed in real time based on the result of image processing performed on the captured image acquired from the camera 31. For example, if it is determined as a result of image processing that a person or an object is present within the movable area 308, the allowable area 309 at this point in time may be set while excluding the portion where the person or object is present from the area.

Also, for example, the control unit 11 may also accept the designation of the allowable area 309 from the client. In this case, the control unit 11 may also accept the designation of the allowable area 309 together with the learning request in step S101. Thus, the control unit 11 can set the allowable area 309 within the movable area 308 based on the input made by the client.

Also, for example, the control unit 11 may also automatically set the allowable area 309 within the movable area 308 based on the ability designated in step S101. In this case, the control unit 11 may also specify an area that is associated with the carrying out of the ability designated in step S101, and set the specified area as the allowable area 309.

(Step S103)
In step S103, the control unit 11 operates as the state acquisition unit 112, and acquires state information that indicates the state of the movable area, from the monitoring apparatus that monitors the state of the movable area of the learning target apparatus designated in step S101. In the embodiment, the control unit 11 accesses the RC 20 using the information acquired in step S101, and captures an image of the state of the movable area 308 using the camera 31 connected to the RC 20. Thus, the control unit 11 can acquire the captured image that reflects the state of the movable area 308 as the state information. After acquiring the captured image, the control unit 11 advances the processing to the next step S104.

(Step S104)
In step S104, the control unit 11 operates as the remote manipulation unit 113, transmits control data to the learning target apparatus, and thus remotely manipulates the learning target apparatus so as to execute an operation associated with the ability designated in step S101. In the embodiment, the control unit 11 transmits the control data for making a command that a predetermined operation associated with the ability designated in step S101 be performed to the RC 20 via the network 10. The control data defines the amount of driving of the drive motors for the joint portions 302, for example. As will be described later, the RC 20 drives the joint portions 302 of the robot arm 30 based on the received control data. Thus, the control unit 11 remotely manipulates the robot arm system 2. After remotely manipulating the robot arm system 2, the control unit 11 advances the processing to the next step S105.

The content of the operation performed through remote manipulation may be determined as appropriate. For example, the content of the operation performed through remote manipulation may also be determined by the operator. For example, a plurality of templates that define different operations of the robot arm 30 may also be prepared. In this case, the control unit 11 may also determine the content of the operation performed through remote manipulation by randomly selecting a template. The control unit 11 may also determine the content of the operation performed through remote manipulation so as to match the ability to be acquired that is designated in step S101, using a method such as dynamic planning, during repeated remote manipulation. Furthermore, the control unit 11 may also cause the robot arm system 2 to execute a series of operations including a plurality of steps through this remote manipulation.

Note that, in the embodiment, the allowable area 309 is set within the movable area 308 in step S102, and in step S103, the control unit 11 acquires, from the camera 31, the captured image obtained by capturing an image of the state of the movable area 308. Then, in step S104, the control unit 11 remotely manipulates the robot arm system 2 so that the robot arm 30 operates within the set allowable area 309, based on the captured image acquired from the camera 31. That is to say, the control unit 11 remotely manipulates the robot arm system 2 while checking whether or not the robot arm 30 has moved outside the allowable area 309, using the captured image acquired from the camera 31.

The control unit 11 also monitors whether or not any foreign object (e.g. a person, object etc.) has entered the allowable area 309. For example, whether or not any foreign object has entered the allowable area 309 can be determined through known image processing, such as template matching. If it is determined that a foreign object has entered the allowable area 309, the control unit 11 temporarily stops (suspends) transmission of commands made through remote manipulation to the robot arm system 2. At this time, the control unit 11 may also transmit, to the robot arm system 2, a command for announcing that the foreign object that has entered the allowable area 309 be removed therefrom. After the foreign object has been removed from the allowable area 309, the control unit 11 resumes transmitting the commands made through remote manipulation to the robot arm system 2. Thus, safety within the allowable area 309 can be ensured.

(Step S105)
In step S105, the control unit 11 operates as the learning data collection unit 114, and collects the learning data 122 for machine learning of the designated ability, based on the result of remote manipulation in step S104. After collecting the learning data 122, the control unit 11 advances the processing to the next step S106.

The content of the learning data 122 may be determined as appropriate in accordance with the type of learning device, the type of learning target apparatus, the ability to be acquired, and the like. In the embodiment, the neural network 6 is used as the learning device. The robot arm system 2 is designated as the learning target apparatus. The ability of the robot arm 30 to carry out a new task or to more efficiently carry out an already-utilized task is designated as the ability to be acquired. It is also assumed that the RC 20 controls operations of the robot arm 30 based on the goal to be achieved and the sensor data from the angle sensors of the joint portions 302.

In this case, the control unit 11 creates goal data that indicates a task goal to be achieved in accordance with the ability to be acquired that is designated in step S101. The content of the goal data may be determined as appropriate, as per an embodiment. For example, the goal data may specify the position, angle, moving speed, or the like of the robot arm 30 in accordance with the goal of completing a target task within a predetermined time. In the case of improving operations of the robot arm 30, the control unit 11 may also determine the content of the goal data so as to improve operations of the robot arm 30 by acquiring a captured image obtained by capturing an image of operations of the robot arm 30 from the camera 31 and performing image analysis on the acquired captured image.

Next, the control unit 11 determines whether or not the robot arm system 2 has achieved the task goal indicated by the goal data, based on the result of remote manipulation in step S104. If the robot arm system 2 has achieved the task goal indicated by the goal data, the control unit 11 acquires the control data transmitted to the RC 20 in the process of operation performed until the task goal is achieved. Furthermore, the control unit 11 acquires, from the RC 20, sensor data detected from the angle sensors of the joint portions 302 in the process of operation performed until the task goal is achieved. The sensor data is an example of the state data that indicates a state of the learning target apparatus (robot arm system 2). The sensor data may be acquired before the robot arm 30 is driven in accordance with a command indicated by the control data.

The control unit 11 then sets the goal data, the sensor data, and the control data in association with one another, with the control data as training data, and with the sensor data and goal data that are obtained immediately before the operation is performed based on the control data that is set as the training data, as input data. The control unit 11 thus collects the learning data 122 that includes the goal data and the sensor data as the input data, and includes the control data as the training data. That is to say, in step S105, the control unit 11 ignores the result of remote manipulation in the case where the task goal is not achieved, and collects the learning data to be used in machine learning of the ability from the result of remote manipulation in the case where the designated ability is achieved.

Note that whether or not the task goal has been achieved may be determined as appropriate. For example, the control unit 11 may also determine whether or not the task goal has been achieved, by acquiring a captured image in which the remote manipulation result appears from the camera 31, and performing image analysis on the acquired captured image. The remote manipulation result may also be obtained by using the robot arm system 2 and various sensors (such as the angle sensors) provided therearound. In this case, the control unit 11 may also determine whether or not the task goal has been achieved, based on detection results from various sensors (such as the angle sensors) provided in and around the robot arm system 2. If, in step S101, the input of a condition for achievement of the ability was accepted together with the designation of the ability to be acquired, the control unit 11 may also determine, as appropriate, whether or not this achievement condition is satisfied.

(Step S106)
In step S106, the control unit 11 determines whether or not a sufficient number of pieces of learning data 122 has been collected. If it is determined that a sufficient number of pieces of learning data 122 has been collected, the control unit 11 advances the processing to the next step S107. On the other hand, if it is determined that a sufficient number of pieces of learning data 122 has not been collected, the control unit 11 repeats the processes in steps S103 to S105.

Note that this determination may be performed using a threshold value. That is to say, the control unit 11 may also determine whether or not a sufficient number of pieces of learning data 122 has been collected, by comparing the number of collected pieces of learning data 122 with the threshold value. At this time, the threshold value may also be set by the operator, or may also be set in accordance with the ability that is to be learned through machine learning. The method for setting the threshold value can be selected as appropriate, as per an embodiment.

(Step S107)
In step S107, the control unit 11 transmits, to the robot arm system 2, a completion notification indicating that remote manipulation for machine learning has been completed. After completing transmission of the completion notification, the control unit 11 advances the processing to the next step S108.

(Step S108)
In step S108, the control unit 11 operates as the learning processing unit 115, and performs machine learning of the neural network 6 so as to acquire the designated ability, using the learning data 122 collected in step S105.

Specifically, first, the control unit 11 prepares the neural network 6 for which machine learning processing is to be performed. The configuration of the neural network 6 to be prepared, initial values of the connection weights between neurons, and initial values of the threshold values for the respective neurons may also be provided by a template, or may also be provided through input made by an operator. In the case of re-learning, the control unit 11 may also prepare the neural network 6 based on learning result data indicating the configuration of the neural network with which re-learning is to be performed, the connection weights between neurons, and the threshold value for each neuron.

Next, the control unit 11 trains the neural network 6 using the goal data and sensor data included in the learning data 122 collected in step S105 as input data, and using the control data as the training data. The neural network 6 may be trained using a gradient descent method, a stochastic gradient descent method, or the like.

For example, the control unit 11 inputs the goal data and the sensor data included in the learning data 122 to the input layer 61, and performs computation processing for the neural network 6 in the direction of forward propagation. Thus, the control unit 11 obtains output values from the output layer 63 of the neural network 6. Next, the control unit 11 calculates errors between the output values output from the output layer 63 and the control data included in the learning data 122. Subsequently, the control unit 11 calculates errors in the connection weights between neurons and in the threshold values for the respective neurons using the errors in the output values calculated by means of an error back-propagation method. The control unit 11 updates the values of the connection weights between neurons and the threshold values for the respective neurons, based on the calculated errors.

The control unit 11 performs machine learning of the neural network 6 by repeating this series of processes until the output values output from the output layer 63 match the corresponding control data, for each piece of the learning data 122. Thus, a trained neural network 6 can be constructed that outputs corresponding control data upon goal data and sensor data being input. After completing machine learning of the neural network 6, the control unit 11 advances the processing to the next step S109.

(Step S109)
In step S109, the control unit 11 operates as the ability-imparting data generation unit 116, and generates the ability-imparting data 123 for imparting the designated ability to the robot arm system 2 by equipping the robot arm system 2 (RC 20) with the trained neural network 6 for which machine learning has been completed. After generating the ability-imparting data 123, the control unit 11 advances the processing to the next step S110.

Note that the format of the ability-imparting data 123 may be determined as appropriate, as per an embodiment. For example, in the case where the RC 20 performs computation processing using a neural network, the control unit 11 may also generate, as the ability-imparting data 123, learning result data that indicates the configuration of the neural network 6 constructed in step S108, the connection weights between neurons, and the threshold values for the respective neurons. Also, for example, in the case where the RC 20 includes an FPGA, the control unit 11 may also generate, as the ability-imparting data 123, data that is to be written in the FPGA in order to realize, within the FPGA, the neural network 6 constructed in step S108. Also, for example, the control unit 11 may also generate, as the ability-imparting data 123, a program or patch data for correcting a program so as to cause the RC 20 to execute computation processing using the neural network 6 constructed in step S108. The ability-imparting data 123 of the aforementioned formats may also be automatically generated using any known automatic program generation method or the like.

(Step S110)
In step S110, the control unit 11 operates as the distribution unit 117, and distributes the ability-imparting data 123 generated in step S109 to the robot arm system 2 via the network 10. The RC 20 can acquire the ability designated in step S101 by installing the received ability-imparting data 123. After completing the distribution of the ability-imparting data 123, the control unit 11 ends the processing in this operation example.
(Robot arm system)

Next, an operation example of the robot arm system 2 will be described using FIG. 8. FIG. 8 is a flowchart showing an example of a processing procedure of the robot arm system 2 according to the embodiment. Note that the processing procedure described below is merely an example, and each process may be modified as much as possible. Regarding the processing procedure described below, steps may be omitted, replaced, and added as appropriate, as per an embodiment.

(Step S201)
In step S201, the control unit 21 in the RC 20 operates as the remote manipulation accepting unit 211, and accepts, from the learning apparatus 1, a command made through remote manipulation for making an instruction to execute an operation associated with the designated ability. This step S201 is an example of an "accepting step" of the present invention. Specifically, the control unit 21 accepts, from the learning apparatus 1, a command made through remote manipulation based on control data in step S104. At this time, the control unit 21 may also receive a plurality of pieces of control data that make instructions to execute a plurality of operations. After receiving the control data, the control unit 21 advances the processing to the next step S202.

(In step S202)
In step S202, the control unit 21 operates as the operation processing unit 212, and executes the operation associated with the designated ability in accordance with the command made through remote manipulation accepted in step S201. This step S202 is an example of an "execution step" of the present invention. In the embodiment, the control unit 21 causes the robot arm 30 to execute an operation corresponding to the command made through remote manipulation, by driving the drive motors of the joint portions 302 based on the control data. While the robot arm 30 is executing the operation in accordance with the command made through remote manipulation in step S202, the control unit 21 executes the next steps S203 and S204.

Note that the learning apparatus 1 monitors whether or not a foreign object has entered the allowable area 309. If it is determined that a foreign object has entered the allowable area 309, the learning apparatus 1 temporarily stops carrying out remote manipulation. At this time, the control unit 21 may also cause the display 32 to display an announcement to remove the foreign object that has entered, from the allowable area 309. If the RC 20 is connected to a speaker (not shown), this announcement may also be output from the speaker. The control unit 21 may also carry out this announcement in accordance with a command from the learning apparatus 1.

(Step S203)
In step S203, the control unit 21 operates as the display control unit 213, and causes the display 32 to display that the operation is being performed in accordance with remote manipulation from the learning apparatus 1. This step S203 is an example of a "display step" of the present invention. After completing display control for the display 32, the control unit 21 advances the processing to the next step S204.

Here, the content to be displayed on the display 32 may not be particularly limited as long as the content is associated with the fact that the operation is being performed in accordance with remote manipulation from the learning apparatus 1. For example, the control unit 21 may also display “operation in progress in accordance with remote manipulation” or “learning in progress in accordance with remote manipulation” on the display 32. Also, for example, the control unit 21 may also cause the display 32 to display the content of the operation executed in accordance with remote manipulation from the learning apparatus 1, by referencing the control data.

Also, for example, if a plurality of pieces of control data are received in step S201, the control unit 21 may also cause the display 32 to display the content of the operation that is to be executed next after the operation that is being executed in step S202. At this time, the control unit 21 may also cause the display 32 to display the content of the operation that is being executed together with the content of the operation to be executed next.

Also, for example, if the operation that is being executed in step S202 is a dangerous operation or an operation executed at a higher speed than usual, the control unit 21 may also cause the display 32 to display that the operation that is being executed is a dangerous operation or an operation executed at a high speed. The display content to indicate that the operation that is being executed is a dangerous operation may be determined as appropriate, as per an embodiment. For example, the control unit 21 may also display “dangerous operation in progress” or “high-speed operation in progress” on the display 32. Also, for example, the control unit 21 may also cause the display 32 to display a message for prompting people around the robot arm 30 to be careful, as the display content to indicate that the operation that is being executed is a dangerous operation.

Note that the method for determining whether or not the operation that is being executed is a dangerous operation may be selected as appropriate, as per an embodiment. For example, the control unit 21 may also determine whether or not the operation that is being executed in step S202 is a dangerous operation, based on conditions that define dangerous operations. Also, for example, information indicating that a target operation is dangerous may be included in the control data. In this case, the control unit 21 can determine whether or not the operation that is being executed in step S202 is a dangerous operation, by referencing the control data received in step S201.

(Step S204)
In step S204, the control unit 21 operates as the notification unit 214, and notifies peripheral apparatuses (e.g. the robot apparatus 5) that the operation is being performed in accordance with remote manipulation from the learning apparatus 1, by controlling the communication interface 24. This step S204 is an example of a "notification step" of the present invention. After completing this notification, the control unit 21 advances the processing to the next step S205.

Note that the peripheral apparatuses that have received this notification can recognize that the robot arm system 2 is being remotely manipulated by the learning apparatus 1. Thus, the peripheral apparatuses can be configured not to inhibit the operation of the robot arm 30 performed through remote manipulation. For example, the robot apparatus 5, which is configured to be able to move in the factory, can be configured not to approach an area near the robot arm 30 (particularly the movable area 308 or the allowable area 309) in response to receiving the notification. That is to say, in order not to inhibit the operation of the robot arm 30 performed through remote manipulation, it is possible to set a movement limit in accordance with remote manipulation in progress, and cause the robot apparatus 5 to move while avoiding an area near the robot arm 30.

(Step S205)
In step S205, the control unit 21 determines whether or not remote manipulation from the learning apparatus 1 has been completed. In the embodiment, upon remote manipulation being completed, the completion notification is transmitted from the learning apparatus 1 in the above-described step S107. Therefore, the control unit 21 determines whether or not remote manipulation from the learning apparatus 1 has been completed, based on whether or not the completion notification has been received. If it is determined that remote manipulation has been completed, i.e. after remote manipulation from the learning apparatus 1 has been completed, the control unit 21 advances the processing to the next step S206. On the other hand, if it is determined that remote manipulation has not been completed, the control unit 21 repeats the processing in steps S201 to S204.

(Step S206)
In step S206, the control unit 21 operates as the display control unit 213, and causes the display 32 to display that the operation executed in accordance with remote manipulation from the learning apparatus 1 has been completed. This step S206 is an example of a "completion display step" of the present invention. The content to be displayed on the display 32 may not be particularly limited as long as the content is associated with the fact that the operation executed in accordance with remote manipulation from the learning apparatus 1 has been completed. For example, the control unit 21 may display “remote manipulation ended” or “operation according to remote manipulation completed” on the display 32. Thus, workers around the robot arm system 2 can be notified that the operation executed in accordance with remote manipulation from the learning apparatus 1 has been completed, and that the robot arm 30 will not suddenly move. After completing this completion display, the control unit 21 advances the processing to the next step S207.

(Step S207)
In step S207, the control unit 21 operates as the notification unit 214, and notifies peripheral apparatuses (e.g. the robot apparatus 5) that the operation executed in accordance with remote manipulation from the learning apparatus 1 has been completed, by controlling the communication interface 24. This step S207 is an example of a "completion notification step" of the present invention. After completing the notification, the control unit 21 ends the processing in this operation example.

Note that peripheral apparatuses that have received this notification can recognize that remote manipulation of the robot arm system 2 from the learning apparatus 1 has been completed. As a result, for example, the robot apparatus 5, which is configured to be able to move in the factory, can also be allowed to approach an area near the robot arm 30 (particularly the allowable area 309) when the robot arm 30 is not operating. That is to say, it is possible to cancel the movement limit in accordance with remote manipulation in progress, and allow the robot apparatus 5 to pass through the area near the robot arm 30.
(Effects)

As described above, in step S101, the learning apparatus 1 according to the embodiment accepts the designation of a learning target apparatus for which machine learning is to be performed and an ability that the learning target apparatus is to acquire, as a learning request from a client. In steps S104 and S105, the learning apparatus 1 remotely manipulates the learning target apparatus (the robot arm system 2), thereby collecting the learning data 122 to be used in machine learning of the ability designated in the learning request. Furthermore, in step S108, the learning apparatus 1 carries out machine learning of the neural network 6 so as to acquire the ability designated in the learning request, using the learning data 122 collected. Thus, a trained neural network 6 for causing the learning target apparatus to carry out the ability designated in the learning request can be constructed. The learning target apparatus (robot arm system 2) placed at a remote location only executes, through steps S201 and S202, an operation associated with the ability designated in step S101, and the machine learning processing in step S108 is executed by the learning apparatus 1. For this reason, the processing for machine learning of the ability to be acquired by the learning target apparatus can be performed even if the machine power of the learning target apparatus placed at a remote location is limited. Accordingly, the embodiment can provide a technical mechanism for appropriately imparting a new ability to an apparatus placed at a remote location.

While the robot arm system 2 according to the embodiment is operating in accordance with the command made through remote manipulation from the learning apparatus 1, in step S203, the robot arm system 2 displays that the operation is being executed in accordance with remote manipulation from the learning apparatus 1, on the display 32. In the embodiment, operators around the robot arm system 2 can be notified that the robot arm 30 is being remotely manipulated, through this display on the display 32. Thus, the safety around the robot arm 30 can be ensured. Accordingly, the embodiment can provide a mechanism for ensuring the safety around the learning target apparatus when the learning target apparatus placed at a remote location is remotely manipulated.

Note that, in step S203, the control unit 21 may also display, on the display 32, the content of the operation executed in accordance with remote manipulation from the learning apparatus 1. By employing this display, operators around the robot arm system 2 can be notified of the content of the operation executed in accordance with remote manipulation, thereby being able to increase the safety around the robot arm system 2.

In step S203, the control unit 21 may also display, on the display 32, the content of an operation to be executed subsequently to the operation that is being executed due to step S202. By employing this display, operators around the robot arm system 2 can be notified, in advance, of the content of the operation of the robot arm 30. Thus, the safety around the robot arm system 2 can be increased.

If the operation that is being executed due to step S202 is a dangerous operation, in step S203, the control unit 21 may also display, on the display 32, that the operation that is being executed is a dangerous operation. By employing this display, operators around the robot arm system 2 can be notified that they may be in danger, thereby being able to increase the safety around the robot arm system 2.
§4 Modifications

Although the embodiment of the present invention has been described above in detail, the above descriptions are merely examples of the present invention in all aspects. Needless to say, various improvements and modifications may be made without departing from the scope of the present invention. For example, the following modifications are possible. Note that, in the following description, the same constituent elements as the constituent elements described in the above embodiment are assigned the same signs, and descriptions of the same points as the points described in the above embodiment are omitted as appropriate. The following modifications may be combined as appropriate.

<4.1>
The above embodiment has described the robot arm system 2 as an example of the learning target apparatus. However, the type of learning target apparatus may not be limited to this example, and may be selected as appropriate, as per an embodiment.

For example, the learning target apparatus may also be a working robot, such as the robot apparatus 5, that moves in a warehouse and performs a task such as transportation of luggage. In this case, in the learning request, a procedure for efficiently transporting luggage in the warehouse can be designated as the ability to be acquired. An area in which the working robot can move is the movable area, and the area in which the working robot is to move can be limited by setting the allowable area.

For example, the learning target apparatus may also be a vehicle capable of autonomous driving. In this case, a client can designate, in the learning request, autonomous driving on a road as the ability that the vehicle is to acquire, using a test course or the like. The client can also designate, for example, autonomous parking, which is one function performed during autonomous driving operations, as the ability that the vehicle is to acquire. In this case, to set the movable area, one of or both a camera for capturing images of the outside of the vehicle and a laser or the like for detecting an object outside the vehicle can be used. Note that a display unit, such as a display, for displaying that an operation is being performed in accordance with remote manipulation may also be attached to an outer portion of the vehicle, or may be placed at a predetermined location in the test course.

A plurality of apparatuses, rather than one apparatus, may also be designated as the learning target apparatuses. For example, the robot arm system 2 may also include a plurality of robot arms 30. In this case, in the learning request, a task that is to be performed by the plurality of apparatuses in cooperation with each other can be designated as the ability to be acquired.

<4.2>
In the embodiment, a general, forward-propagation multi-layer neural network is used as the neural network 6, as shown in FIG. 5. However, the type of the neural network 6 may not be limited to this example, and may be selected as appropriate, as per an embodiment. For example, in the case of using images as input data, the neural network 6 may also be a convolutional neural network that includes a convolutional layer and a pooling layer. Also, for example, in the case of using time-series data as input data, the neural network 6 may also be a recurrent neural network having connections that recur from the output side to the input side, e.g. from the intermediate layer to the input layer. Note that the number of layers of the neural network 6, the number of neurons in each layer, the connection relationship between neurons, and transfer functions for neurons may be determined as appropriate, as per an embodiment.

<4.3>
In the embodiment, the learning device is constituted by a neural network. However, the type of learning device may not be limited to a neural network, and may be selected as appropriate, as per an embodiment. For example, the learning device may also be a support vector machine, a self-organizing map, a learning device that is trained by means of reinforcement learning, or the like. In the case of performing machine learning by means of reinforcement learning, the machine learning process in step S108 may also be carried out while carrying out remote manipulation in step S104.

<4.4>
In the embodiment, the camera 31 will be described as an example of the monitoring apparatus for monitoring the state of the movable area 308. However, the type of monitoring apparatus may not be limited to a shooting apparatus, and may be selected as appropriate, as per an embodiment. For example, the monitoring apparatus may also be a position detection system that is constituted by one or more infrared sensors and detects an operating position of the learning target apparatus (in the embodiment, the position of the robot arm 30). In this case, in step S103, the learning apparatus 1 can acquire information indicating the detection result from the position detection system as state information.

In the above embodiments, the camera 31 is connected to the RC 20. For this reason, the learning apparatus 1 can acquire a captured image from the camera 31 via the RC 20, using information (e.g. IP address) to be used in remote manipulation of the learning target apparatus designated in step S101. However, the method by which the learning apparatus 1 acquires the state information may not be limited to this example, and may be selected as appropriate, as per an embodiment. For example, if the camera 31 can connect to the network 10, the learning apparatus 1 may also acquire information (e.g. IP address) to be used in accessing the camera 31, similar to the learning target apparatus, in step S101.

Note that, if the movable area 308 of the robot arm system 2 does not need to be monitored, steps S102 and S103 may also be omitted in the processing procedure of the learning apparatus 1. In addition, in the software configuration of the learning apparatus 1, the allowable area setting unit 111 and the state acquisition unit 112 may also be omitted. Also, if the allowable area 309 does not need to be monitored, a series of processes from temporarily stopping remote manipulation until resumption may also be omitted in the processing procedure of the learning apparatus 1.

<4.5>
In step S109, the learning apparatus 1 according to the embodiment generates the ability-imparting data 123. Then, in step S110, the learning apparatus 1 distributes the ability-imparting data 123 to the robot arm system 2, which is the learning target apparatus. However, the method for generating and distributing the ability-imparting data 123 may not be limited to this example, and may be selected as appropriate, as per an embodiment.

For example, the ability-imparting data 123 may be generated by another information processing apparatus or the operator. In this case, step S109 may also be omitted in the processing procedure of the learning apparatus 1. In addition, in the software configuration of the learning apparatus 1, the ability-imparting data generation unit 116 may also be omitted.

For example, the ability-imparting data 123 may also be stored in a storage medium such as a CD drive, a DVD drive, or a flash memory. The storage medium that stores the ability-imparting data 123 may also be distributed to the client. In this case, step S110 may also be omitted in the processing procedure of the learning apparatus 1. In addition, the distribution unit 117 may also be omitted in the software configuration of the learning apparatus 1.

Note that, if the ability-imparting data 123 is thus distributed using a storage medium, the client reads out, as appropriate, the ability-imparting data 123 from the received storage medium, and installs the ability-imparting data 123 loaded to the RC 20 in the robot arm system 2. Thus, the ability-imparting data 123 can be applied to the robot arm system 2.

<4.6>
In the embodiment, the learning apparatus 1 is constituted by one computer. However, the learning apparatus 1 may also be constituted by a plurality of computers. In this case, each computer may be equipped with some software modules of the learning apparatus 1. For example, only the learning data collection unit 114 may be mounted in one computer. When carrying out machine learning, the computer on which the learning data collection unit 114 is mounted may also be lent to the client. Thus, real-time properties in processing for collecting the learning data 122 in step S104 can be improved.

<4.7>
In step S101, the control unit 11 may further accept, as the learning request, the designation of a password that is set for the learning target apparatus (the robot arm system 2) to allow remote manipulation thereof. In this case, in step S104, the control unit 11 may also remotely manipulate the robot arm system 2 after being authenticated by the robot arm system 2 with the designated password. Thus, the security when remotely manipulating the robot arm system 2 can be improved.

<4.8>
In step S101, the control unit 11 may further accept, as the learning request, the designation of a time period in which remote manipulation of the learning target apparatus (the robot arm system 2) is allowed. In this case, the control unit 11 may also execute step S104 (remote manipulation of the robot arm system 2) only during the designated time period. Thus, for example, the learning data 122 to be used in machine learning of the robot arm system 2 can be collected during a time period at night or early morning in which the robot arm system 2 is not used. Thus, the efficiency in using the robot arm system 2 can be improved.

<4.9>
In step S101, the control unit 11 may further accept, as the learning request, the designation of a learning period in which remote manipulation of the learning target apparatus (the robot arm system 2) is allowed. In this case, the control unit 11 may also execute step S104 (remote manipulation of the robot arm system 2) during the designated learning period, and delete information (e.g. IP address) that was used in remote manipulation of the robot arm system 2, after the designated learning period has passed.

<4.10>
In the embodiment, after accepting the learning request in step S101, the learning apparatus 1 executes a series of processes until the neural network 6 that has acquired the ability designated in the accepted learning request through machine learning is constructed in step S108. However, the mode of processing the learning request performed by the learning apparatus 1 may not be limited to this example. For example, the learning apparatus 1 may also be configured to able to accept cancellation of the learning request.

FIG. 9 schematically shows an example of a software configuration of a learning apparatus 1A according to a modification. As shown in FIG. 9, the learning apparatus 1A according to this modification is configured to be a computer that further includes a cancellation accepting unit 118 for accepting cancellation of the learning request, and a data deletion unit 119 for deleting, if cancellation of the learning request is accepted, information associated with the learning request, including the learning data that has been collected until the cancellation of the learning request is accepted and information that has been used in remote manipulation of the learning target apparatus, by executing the learning program 121 using the control unit 11. Note that the learning apparatus 1A is configured similar to the learning apparatus 1 except for this point.

Next, an example of a processing procedure of the learning apparatus 1A according to the modification will be described using FIG. 10. FIG. 10 shows an example of a processing procedure associated with accepting cancellation of the learning request while the processes in steps S102 to S108 are being executed. After accepting the learning request in step S101, the control unit 11 in the learning apparatus 1A starts the process in step S102, and also starts the process in the following step S301.

(Step S301)
In step S301, the control unit 11 operates as the cancellation accepting unit 118, and accepts cancellation of the learning request. The client who desires cancellation of the learning request operates the user terminal 4 to make a request to cancel the learning request made in step S101, to the learning apparatus 1A. In the case of accepting the cancellation of the learning request before starting the process in step S108, the control unit 11 advances the processing to the next step S302. On the other hand, in the case of not accepting the cancellation of the learning request before starting the process in step S108, the control unit 11 omits the processing in the following step S302, and ends processing associated with the cancellation of the learning request.

(Step S302)
In step S302, the control unit 11 operates as the data deletion unit 119, and deletes information associated with the learning request including the learning data 122 that has been collected in step S105 until the cancellation of the learning request is accepted and information (e.g. IP address) that was used in remote manipulation of the robot arm system 2. The information associated with the learning request includes information that was used in remote manipulation of the robot arm system 2, as well as information indicating the content of the learning request designated in step S101, for example. After completing deletion of the information associated with the learning request, the control unit 11 ends processing for canceling the learning request. According to this modification, a request for machine learning that is no longer necessary can be canceled, and thus, the efficiency of resources in the learning apparatus can be increased.

<4.11>
In the embodiment, in step S206, the control unit 21 causes the display 32 to display that remote manipulation has been completed. However, the processing in step S206 may also be omitted in the processing procedure of the robot arm system 2.

In the embodiment, in steps S204 and S207, the control unit 21 notifies peripheral apparatuses of the state of the robot arm system 2. However, at least one of these steps S204 and S207 may also be omitted in the processing procedure of the robot arm system 2. In the case of omitting both steps S204 and S207, the notification unit 214 may also be omitted in the software configuration of the robot arm system 2.

Note that the processing order between steps S203 and S204 may also be reversed. Similarly, the processing order between steps S206 and S207 may also be reversed.

<4.12>
In the embodiment, the display 32 is used as the display unit for displaying the state of the robot arm system 2. However, the type of the display unit may not be limited to a display, and may be selected as appropriate, as per an embodiment. For example, as shown in FIG. 11, an indicator lamp may also be used as the display unit.

FIG. 11 schematically shows an example of a configuration of a robot arm system 2B according to this modification. In the robot arm system 2B, the RC 20 is connected to an indicator lamp 33 via an external interface 23. For example, the indicator lamp 33 may also be an LED (light emitting diode) lamp, a neon lamp, or the like.

In this case, in step S203, the control unit 21 may also cause the indicator lamp 33 to indicate that an operation is being executed in accordance with remote manipulation from the learning apparatus 1, by causing the indicator lamp 33 to emit light in a first display mode. Then, in step S206, the control unit 21 may also cause the indicator lamp 33 to indicate that the operation executed in accordance with remote manipulation from the learning apparatus 1 has been completed, by causing the indicator lamp 33 to emit light in a second display mode that is different from the first display mode.

Note that the display mode is determined based on an element that affects the visual sense of a person who sees the indicator light 33, such as color or blinking speed. For example, in step S203, the control unit 21 may also cause the indicator lamp 33 to emit red light as the first display mode. In step S206, the control unit 21 may also cause the indicator lamp 33 to emit blue light as the second display mode. Thus, a display unit for displaying the state of the learning target apparatus can be configured cheaply.

<4. 13>
In the above embodiment, in step S105, the control unit 11 generates the learning data 122 by combining the sensor data, the goal data, and the control data into a set. Of these data, the sensor data is an example of state data that indicates a state of the learning target apparatus. However, the type of state data may not be limited to the sensor data, and may be selected as appropriate, as per an embodiment. If the state data is not required when controlling operations of the learning target apparatus, this state data may also be omitted from the learning data. In the above embodiment, in step S105, the control unit 11 may also generate the learning data 122 by combining the goal data and the control data into a set.

1,1A Learning apparatus
11 Control unit
12 Storage unit
13 Communication interface
14 Input device
15 Output device
16 Drive
110 Learning request accepting unit
111 Allowable area setting unit
112 State acquisition unit
113 Remote manipulation unit
114 Learning data collection unit
115 Learning processing unit
116 Ability-imparting data generation unit
117 Distribution unit
118 Cancellation accepting unit
119 Data deletion unit
121 Learning program
122 Learning data
123 Ability-imparting data
2 Robot arm system
20 RC
21 Control unit
22 Storage unit
23 External interface
24 Communication interface
211 Remote manipulation accepting unit
212 Operation processing unit
213 Display control unit
214 Notification unit
221 Control program
30 Robot arm
301 Base portion
302 Joint portion
303 Link portion
304 End effector
308 Movable area
309 Allowable area
31 Camera
32 Display
4 User terminal
5 Robot apparatus
6 Neural network
61 Input layer
62 Intermediate layer (hidden layer)
63 Output layer

Claims (9)

  1. A learning target apparatus that is placed at a location remote from a learning apparatus for performing machine learning for acquiring a designated ability in accordance with a learning request from a client, the learning target apparatus being caused to acquire the designated ability through the machine learning of the learning apparatus, comprising:
    a display unit; and
    a control unit,
    wherein the control unit is configured to execute:
    an accepting step of accepting, from the learning apparatus, a command made through remote manipulation that instructs the learning target apparatus to execute an operation associated with the designated ability;
    an execution step of executing the operation associated with the designated ability in accordance with the accepted command made through the remote manipulation; and
    a display step of causing the display unit to display that an operation is being executed in accordance with the remote operation from the learning apparatus, while the operation is being executed in accordance with the command made through the remote manipulation.
  2. The learning target apparatus according to claim 1, further comprising:
    a communication unit configured to communicate with a peripheral apparatus placed around the learning target apparatus,
    wherein the control unit is configured to further execute a notification step of notifying, using the communication unit, the peripheral apparatus that the operation is being executed in accordance with the remote manipulation from the learning apparatus, while the operation is being executed in accordance with the command made through the remote manipulation.
  3. The learning target apparatus according to claim 2,
    wherein the control unit is configured to further execute a completion notification step of notifying, using the communication unit, the peripheral apparatus that the operation executed in accordance with the remote manipulation is completed, after the remote manipulation from the learning apparatus is completed.
  4. The learning target apparatus according to any one of claims 1 to 3,
    wherein the control unit is configured to further execute a completion display step of causing the display unit to display that the operation executed in accordance with the remote manipulation is completed, after the remote manipulation from the learning apparatus is completed.
  5. The learning target apparatus according to any one of claims 1 to 4,
    wherein the display unit is a display, and
    in the display step, the control unit causes the display to display content of the operation executed in accordance with the remote manipulation from the learning apparatus.
  6. The learning target apparatus according to claim 5,
    wherein, in the accepting step, the control unit accepts the command that instructs the learning target apparatus to execute a plurality of operations, and
    in the display step, the control unit causes the display to display content of an operation to be executed subsequently to the operation that is being executed due to the execution step.
  7. The learning target apparatus according to claim 5 or 6,
    wherein, if an operation that is being executed is a dangerous operation, in the display step, the control unit causes the display to display that the operation that is being executed is a dangerous operation.
  8. The learning target apparatus according to claim 4,
    wherein the display unit is an indicator lamp, and
    in the display step, the control unit causes the indicator lamp to indicate that the operation is being executed in accordance with the remote manipulation from the learning apparatus, by causing the indicator lamp to emit light in a first display mode, and
    in the completion display step, the control unit causes the indicator lamp to indicate that the operation executed in accordance with the remote manipulation is completed, by causing the indicator lamp to emit light in a second display mode that is different from the first display mode.
  9. An operation method for a learning target apparatus that is placed at a location remote from a learning apparatus for performing machine learning for acquiring a designated ability in accordance with a learning request from a client, the learning target apparatus being caused to acquire the designated ability through machine learning of the learning apparatus and including a display unit, the method comprising:
    an accepting step of accepting, from the learning apparatus, a command made through remote manipulation that instructs the learning target apparatus to execute an operation associated with the designated ability;
    an execution step of executing the operation associated with the designated ability in accordance with the accepted command made through the remote manipulation; and
    a display step of causing the display unit to display that an operation is being executed in accordance with the remote operation from the learning apparatus, while the operation is being executed in accordance with the command made through the remote manipulation.
PCT/JP2018/008141 2017-03-14 2018-03-02 Learning target apparatus and operating method WO2018168537A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2017-048335 2017-03-14
JP2017048335 2017-03-14
JP2018-023614 2018-02-14
JP2018023614A JP2018149670A (en) 2017-03-14 2018-02-14 Learning object device and operation method

Publications (1)

Publication Number Publication Date
WO2018168537A1 true WO2018168537A1 (en) 2018-09-20

Family

ID=61691551

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/008141 WO2018168537A1 (en) 2017-03-14 2018-03-02 Learning target apparatus and operating method

Country Status (1)

Country Link
WO (1) WO2018168537A1 (en)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5816771B2 (en) 1977-06-06 1983-04-02 Mitsubishi Electric Corp
JP2007140952A (en) 2005-11-18 2007-06-07 Canon Inc Distributed processing system and its processing method
JP2009134474A (en) 2007-11-29 2009-06-18 Brother Ind Ltd Firmware reprogramming method, firmware reprogramming program, and firmware management device
US20140316570A1 (en) * 2011-11-16 2014-10-23 University Of South Florida Systems and methods for communicating robot intentions to human beings
JP2014228972A (en) 2013-05-20 2014-12-08 日本電信電話株式会社 Information processing device, information processing system, information processing method, and learning program
JP2015053008A (en) 2013-09-09 2015-03-19 株式会社東芝 Identification device and arithmetic device
US20150283702A1 (en) * 2014-04-03 2015-10-08 Brain Corporation Learning apparatus and methods for control of robotic devices via spoofing
US20160129592A1 (en) * 2014-11-11 2016-05-12 Google Inc. Dynamically Maintaining A Map Of A Fleet Of Robotic Devices In An Environment To Facilitate Robotic Action
US20160157943A1 (en) * 2005-06-30 2016-06-09 Intuitive Surgical Operations, Inc. Indicator for tool state and communication in multiarm robotic telesurgery

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5816771B2 (en) 1977-06-06 1983-04-02 Mitsubishi Electric Corp
US20160157943A1 (en) * 2005-06-30 2016-06-09 Intuitive Surgical Operations, Inc. Indicator for tool state and communication in multiarm robotic telesurgery
JP2007140952A (en) 2005-11-18 2007-06-07 Canon Inc Distributed processing system and its processing method
JP2009134474A (en) 2007-11-29 2009-06-18 Brother Ind Ltd Firmware reprogramming method, firmware reprogramming program, and firmware management device
US20140316570A1 (en) * 2011-11-16 2014-10-23 University Of South Florida Systems and methods for communicating robot intentions to human beings
JP2014228972A (en) 2013-05-20 2014-12-08 日本電信電話株式会社 Information processing device, information processing system, information processing method, and learning program
JP2015053008A (en) 2013-09-09 2015-03-19 株式会社東芝 Identification device and arithmetic device
US20150283702A1 (en) * 2014-04-03 2015-10-08 Brain Corporation Learning apparatus and methods for control of robotic devices via spoofing
US20160129592A1 (en) * 2014-11-11 2016-05-12 Google Inc. Dynamically Maintaining A Map Of A Fleet Of Robotic Devices In An Environment To Facilitate Robotic Action

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KAWASAKI HEAVY INDUSTRIES, LTD.: "Kawasaki Robot Safety Manual", 1 January 2006 (2006-01-01), XP055475567, Retrieved from the Internet <URL:https://www.astor.com.pl/wsparcie/dokumentacja-techniczna/pobierz/Kawasaki/Roboty%20przemyslowe/Seria%20K/Podreczniki/90801-1001DEE-Safety-Manual.pdf> [retrieved on 20180516] *

Similar Documents

Publication Publication Date Title
US20110288684A1 (en) Mobile Robot System
US7620477B2 (en) Robotic intelligence kernel
US8073564B2 (en) Multi-robot control interface
US7584020B2 (en) Occupancy change detection system and method
US7974738B2 (en) Robotics virtual rail system and method
US7587260B2 (en) Autonomous navigation system and method
US9358685B2 (en) Apparatus and methods for control of robot actions based on corrective user inputs
US20090234499A1 (en) System and method for seamless task-directed autonomy for robots
US9785149B2 (en) Time-dependent navigation of telepresence robots
CN102880179B (en) A power tunnel in the multi-purpose intelligent robot inspection
US20080009968A1 (en) Generic robot architecture
US20080009970A1 (en) Robotic Guarded Motion System and Method
EP2542994B1 (en) Method and apparatus for simulating a physical environment to facilitate vehicle operation and task completion
JP2014503376A (en) Interfacing with mobile telepresence robot
US8639666B2 (en) System and method for real-time environment tracking and coordination
KR20110064861A (en) Mobile robot based on a crowed intelligence, method for controlling the same and watching robot system
Yang et al. Vision-based tower crane tracking for understanding construction activity
US9463574B2 (en) Mobile inspection robot
WO2012091801A2 (en) Mobile human interface robot
WO2003058477A1 (en) Human/machine interface for a machinevision sensor and method for installing and operating the same
WO2008005659A2 (en) Robotic follow system and method
JP2005103681A (en) Robot system
US10195741B2 (en) Controlling a robot in the presence of a moving object
US20140350723A1 (en) Universal construction robotics interface
CN101825890A (en) Object network

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18712027

Country of ref document: EP

Kind code of ref document: A1

DPE1 Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101)
NENP Non-entry into the national phase in:

Ref country code: DE