WO2019111608A1 - 制御装置、無人システム、制御方法及びプログラム - Google Patents

制御装置、無人システム、制御方法及びプログラム Download PDF

Info

Publication number
WO2019111608A1
WO2019111608A1 PCT/JP2018/040865 JP2018040865W WO2019111608A1 WO 2019111608 A1 WO2019111608 A1 WO 2019111608A1 JP 2018040865 W JP2018040865 W JP 2018040865W WO 2019111608 A1 WO2019111608 A1 WO 2019111608A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
action
parameter
framework
calculation unit
Prior art date
Application number
PCT/JP2018/040865
Other languages
English (en)
French (fr)
Inventor
泰郎 藤島
夏樹 松波
Original Assignee
三菱重工業株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 三菱重工業株式会社 filed Critical 三菱重工業株式会社
Priority to EP18884859.2A priority Critical patent/EP3678060A4/en
Priority to US16/652,506 priority patent/US20200285202A1/en
Publication of WO2019111608A1 publication Critical patent/WO2019111608A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • G05B13/027Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion using neural networks only
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/042Knowledge-based neural networks; Logical representations of neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/045Explanation of inference; Explainable artificial intelligence [XAI]; Interpretable artificial intelligence

Definitions

  • the present invention relates to a control device, an unmanned system, a control method, and a program.
  • Patent Document 1 discloses a machine learning device that reduces the work load on a person and improves the work efficiency by using reinforcement learning and neural networks for the operation of a robot that performs work in collaboration with the person. Is described.
  • Non-Patent Document 1 describes Deep Deterministic Policy Gradient, which is a type of reinforcement learning.
  • the present invention provides a control device, an unmanned system, a control method, and a program that can solve the problems described above.
  • the control device determines a framework of the operation of the device on a rule basis based on the state information indicating the state of the device or the state of the environment in which the device operates;
  • a calculation unit and an operation instruction unit instructing the device to execute the operation.
  • the operation parameter calculation unit calculates a parameter that determines the content of the operation based on the state information and the learning model, and the parameter calculated by the calculation unit.
  • a learning unit that evaluates the movement based on the value of ⁇ and updates the learning model that optimizes the parameter based on the evaluation.
  • the learning model includes a neural network of actors and a neural network of critics
  • the learning unit includes a neural network of the actors and the critics according to a DDPG (Deep Deterministic Policy Gradient). Update your neural network.
  • DDPG Deep Deterministic Policy Gradient
  • the operation parameter calculation unit calculates a correction amount of a parameter that determines the content of the operation based on the state information and the learning model.
  • control device further includes a state estimation unit that estimates the state information based on information measured by a sensor.
  • the operation parameter calculation unit and the operation instruction unit are provided separately for the framework of the operation, and the control device is a framework of the operation selected by the operation selection unit.
  • the operation parameter calculation unit corresponding to the selected framework of the operation and a first switching unit configured to switch to the operation instruction unit are further provided.
  • the operation parameter calculation unit and the operation instruction unit are provided separately for some of the operations of the plurality of operations, and the controller is configured to The operation control unit that instructs predetermined operation content separately for each operation framework, and the operation framework according to the operation framework selected by the operation selection unit, for the remaining operation frameworks among the plurality of operation frameworks And a second switching unit configured to switch the operation control unit corresponding to the framework of the operation.
  • an unmanned system includes the control device described in any of the above, and an apparatus controlled by the control device.
  • the control method comprises the steps of: determining a framework of operation of the device on a rule basis based on state information indicating a state of the device or a state of an environment in which the device operates; Calculating, based on the operation of the device based on the state information and a learning model constructed based on an evaluation of the operation, a parameter for determining the content of the operation in the framework of the determined operation; Instructing the device to perform an action.
  • a program is a means for determining a framework of operation of a device on a rule basis based on state information indicating a state of a device or a state of an environment in which the device operates. And means for calculating a parameter that defines the content of the operation in the framework of the determined operation based on the operation of the device based on the state information and a learning model constructed based on an evaluation of the operation. It functions as a means for instructing the device to perform an operation.
  • control device the unmanned system, the control method, and the program described above, both the ease of understanding of control and the improvement in performance can be achieved.
  • FIG. 1 is a block diagram of an unmanned system according to a first embodiment of the present invention. It is a 1st figure explaining control by the unmanned system of a first embodiment of the present invention. It is a 2nd figure explaining control by the unmanned system of a first embodiment of the present invention.
  • FIG. 5 is a block diagram of an unmanned system according to a second embodiment of the present invention. It is a figure explaining control by the unmanned system of a second embodiment of the present invention.
  • FIG. 7 is a block diagram of an unmanned system according to a third embodiment of the present invention. It is a 1st figure explaining control by the unmanned system of 3rd embodiment of this invention. It is a 2nd figure explaining control by the unmanned system of 3rd embodiment of this invention.
  • FIG. 7 is a diagram showing an example of an unmanned system according to a fifth embodiment of the present invention. It is a flowchart which shows an example of the control method of the unmanned system by 5th embodiment of this invention. It is a figure explaining the determination processing of the action parameter by 5th embodiment of this invention. It is a figure showing an example of the hardware constitutions of the control device in a first embodiment-a fifth embodiment of the present invention.
  • FIG. 1 is a block diagram of an unmanned system according to a first embodiment of the present invention.
  • the unmanned system 1 of FIG. 1 includes a control device 10, an apparatus 20, and a sensor 30.
  • the control device 10 is a computer that controls the device 20, and includes a central processing unit (CPU) and a micro processing unit (MPU).
  • the control device 10 and the device 20 may be configured separately or integrally.
  • the control device 10 and the device 20 are connected via wired or wireless communication means, and control the operation of the device 20 by outputting and transmitting control signals from the control device 10 to the device 20.
  • the control device 10 controls the device 20 to be in a target state according to the state of the device 20 and the operating environment.
  • the control "A1" is performed when the temperature becomes "X1" or more
  • the control "A2” is performed when the temperature becomes "X2" or more.
  • the control device 10 often determines predetermined environmental information (for example, ambient temperature and the like) based on a predetermined rule, and determines the control to be performed next (control by IF-THEN rule).
  • the control device 10 according to the present embodiment is a more preferable control (for example, efficient, less loss, high safety, for the user) according to the real environment within the control framework determined based on the conventional rule base.
  • the device 20 is, for example, an unmanned operation device such as an autonomous vehicle or an Automated Aerial Vehicle (AAV).
  • AAV Automated Aerial Vehicle
  • the control device 10 includes a sensor information acquisition unit 11, an action selection unit 12, a parameter calculation unit 13, an action instruction unit 14, and a storage unit 15.
  • the sensor information acquisition unit 11 acquires information (environment information) detected by the sensor 30 with respect to the state of the device 20 and the operation environment.
  • the sensor 30 is, for example, a camera, a radar, a laser radar, a three-axis inertial sensor, a GPS (Global Positioning System) receiver, an acceleration sensor, a temperature sensor, an atmospheric pressure sensor, a current sensor, a rotation sensor, or the like.
  • the action selection unit 12 determines the framework and type of action or action to be performed by the device 20 based on environment information and on a rule basis such as IF-THEN rules.
  • the parameter calculation unit 13 selects one of the behavior selected by the behavior selection unit 12 based on the environment information, and the learning model constructed by learning the behavior of the device 20 based on the environment information and the evaluation on the result of the behavior. Determine the detailed content of actions in the framework.
  • the parameter calculation unit 13 includes a calculation unit 131 and a learning unit 132.
  • the calculation unit 131 calculates, based on the learning model, a parameter (hereinafter referred to as an action parameter) that determines the content of an appropriate action according to the environment information.
  • the learning unit 132 updates the learning model by learning the behavior of the device 20 executed using the behavior parameter calculated by the calculation unit 131 and the evaluation on the result of the behavior.
  • the learning model includes a model (actor model) for calculating an action parameter, and a model (critic model) for evaluating a result of performing an action based on the action parameter on a real environment.
  • the learning unit 132 updates the learning model (actor model or critic model) by DDPG (Deep Deterministic Policy Gradient).
  • DDPG Deep Deterministic Policy Gradient
  • the operation of the parameter calculation unit 13 can switch between the learning mode and the non-learning mode. Thereby, for example, in an environment not suitable for learning, learning can be stopped.
  • the action instruction unit 14 generates a control signal based on the action parameter calculated by the parameter calculation unit 13 (calculation unit 131), and outputs the control signal to the device 20. Thereby, the action instructing unit 14 causes the device 20 to execute the action optimized by the parameter calculating unit 13 within the range of the action framework selected by the action selecting unit 12.
  • the storage unit 15 stores various information such as environment information and a learning model acquired by the sensor information acquisition unit 11.
  • FIG. 2 is a first diagram illustrating control by the unmanned system of the first embodiment of the present invention.
  • the sensor 30 measures the state of the device 20 and the state of the operating environment of the device 20, and outputs the measured environment information to the control device 10.
  • the sensor information acquisition unit 11 acquires environmental information, and outputs the environmental information to the action selection unit 12, the parameter calculation unit 13, and the action instruction unit 14.
  • the action selection unit 12 selects an action according to the environmental information based on the IF-THEN rule.
  • the action selection unit 12 outputs the selected action framework to the parameter calculation unit 13.
  • the parameter calculation unit 13 calculates an action parameter in the selected action framework based on the environment information and the learning model.
  • the learning model is configured to output behavioral parameters for executing an optimal behavior according to the real environment when environmental information is input.
  • the parameter calculation unit 13 (calculation unit 131) inputs environmental information to the learning model.
  • the parameter calculation unit 13 outputs, to the action instruction unit 14, the action parameter output from the learning model with respect to the environment information.
  • the action instruction unit 14 generates a control signal for executing an action indicated by the action parameter based on the action parameter acquired from the parameter calculation unit 13 and the environment information acquired from the sensor information acquisition unit 11, and sends the control signal to the device 20. Output.
  • the device 20 acts in accordance with the control signal. This behavior changes the real environment.
  • the sensor 30 measures the state of the real environment again, and the control device 10 selects a rule-based action framework based on the newly measured environment information, calculates an action parameter in the framework, and acts The process of instruction, action by the device 20 is repeated.
  • a parameter that defines the content of an action is often determined based on an IF-THEN rule such as an expert system.
  • an IF-THEN rule such as an expert system.
  • it is based on determining the control framework by rule base, and it acquires about the variable parameter in the rule by reinforcement learning.
  • parameters can be made variable according to the actual environment, and more realistic control can be performed.
  • the IF-THEN rule it is possible to correspond to differences in the individual differences of the devices 20 and the use environment, and to realize control more in line with the control target and the user's preference.
  • Deep learning for example, a neural network, hereinafter sometimes referred to as NN
  • NN Deep learning
  • NN a neural network
  • a person needs to prepare a parameter table in advance.
  • it is possible to automatically find the characteristics of an object and construct a model without the need for a person to design the items to be learned.
  • a useful learning model can be constructed that can learn characteristics that a person can not notice and can output better variable parameters.
  • the rule-based action determination has the advantage of being highly readable and easy for people to understand, since the basis of the action generation is clearly indicated by a conditional branch of, for example, the IF-THEN format. Therefore, the action taken by the device 20 can be easily predicted, and can be used with confidence in application to the real world such as collaboration with people. On the other hand, it is difficult for the user to know the basis of action generation based on deep learning based action determination. Therefore, for example, if the learning model is used in the same environment as when it was built, control of the device 20 may be left to the learning model. However, since various unexpected phenomena may occur in a real environment, it may not be possible to delegate control of the device 20 to a learning model without knowing what action to take.
  • the action framework can be determined on a rule basis that can be understood by people. It can be used with heart.
  • variable parameters that determine the content of an action since values that are optimized according to the real environment are learned by reinforcement learning, better actions can be derived.
  • FIG. 3 is a second diagram illustrating control by the unmanned system of the first embodiment of the present invention.
  • the parameter calculation unit 13 includes the calculation unit 131 that calculates the action parameter based on the learning model and the environment information, and the learning unit 132 that updates the learning model.
  • DDPG Deep Deterministic Policy Gradient
  • DDPG is a method of reinforcement learning using deep learning.
  • Actor and Critic are independent neural networks.
  • the above learning model includes the actor's NN and the critic's NN.
  • the calculation unit 131 selects an action, that is, calculates an action parameter based on the NN of the actor, and the action instructing unit 14 instructs the device 20 to perform an action based on the action parameter.
  • the learning unit 132 sets a reward based on the environmental information generated as a result of the action, and updates the actor's NN and the critic's NN. A specific example of the update process will be described later (fourth embodiment).
  • the process of updating the learning model (the actor's NN and the critic's NN) based on the reward corresponds to reinforcement learning, and the action is actually generated and reflected in the real environment, and the result is the policy function (the actor's NN) Feedback will be able to generate good behavior gradually.
  • variable parameters in control can be obtained automatically by learning.
  • the performance of the device 20 is continuously extracted by maintaining the highly accurate learning model reflecting the secular change of the device 20 and the like. be able to.
  • the first embodiment is expanded to provide an unmanned system 1A and a control device 10A having a function of estimating information that can not be measured when it is necessary to determine an action parameter.
  • FIG. 4 is a block diagram of an unmanned system according to a second embodiment of the present invention.
  • symbol is attached
  • An unmanned system 1A according to the second embodiment includes a control device 10A, an apparatus 20, and a sensor 30.
  • the control device 10A includes a state estimation unit 16 in addition to the configuration of the first embodiment.
  • the state estimation unit 16 estimates the state of the device 20 and the state of the driving environment based on the environment information acquired by the sensor information acquisition unit 11.
  • FIG. 5 is a diagram for explaining control by the unmanned system of the second embodiment of the present invention.
  • the sensor 30 measures the state of the real environment and outputs environmental information to the control device 10A.
  • the sensor information acquisition unit 11 acquires environment information, and outputs the environment information to the action selection unit 12, the parameter calculation unit 13, the action instruction unit 14, and the state estimation unit 16.
  • the state estimation unit 16 estimates information (estimated state information) necessary for control based on the environment information. For example, when the control device 10A controls automatic driving of a vehicle, the state estimation unit 16 estimates the position of another vehicle that is out of the measurement range of a sensor of the vehicle, such as a blind spot at an intersection.
  • the learning model of the control device 10A acquires an action parameter of an action of lowering the speed when entering an intersection with many blind spots. There is a possibility to do it.
  • the state estimating unit 16 outputs the estimated state information thus estimated to the action selecting unit 12, the parameter calculating unit 13, and the action instructing unit 14.
  • the behavior selection unit 12 selects a framework of behavior based on the IF-THEN rule, using at least one of environmental information and estimated state information.
  • the parameter calculation unit 13 inputs at least one of the environment information and the estimated state information to the learning model (NN of the actor) to calculate the action parameter.
  • the action instruction unit 14 generates a control signal based on the action parameter to control the device 20.
  • the parameter calculation unit 13 acquires environmental information and estimated state information indicating the result of the current action, evaluates the action, and updates the learning model.
  • the present embodiment it is possible to estimate the state of the environment that can not be measured but can be measured but includes an error, and can be used for updating the control and learning model. For example, there is a possibility that the behavior parameter of the prefetch behavior can be learned by predicting the future state by the state estimation unit 16.
  • an unmanned system according to a third embodiment of the present invention will be described with reference to FIGS.
  • a method of calculating an action parameter for each of a plurality of actions which can be switched by the IF-THEN rule.
  • action selection is performed according to the IF-THEN rule, and switching to a parameter calculation unit prepared for each action according to the selection. That is, N independent parameter calculation units are prepared for each of N behaviors, and learning is performed only for the selected behavior.
  • FIG. 6 is a block diagram of an unmanned system according to a third embodiment of the present invention.
  • the third embodiment can be combined with any of the first embodiment and the second embodiment, but here, the configuration in the case of combining with the second embodiment will be described as an example.
  • symbol is attached
  • the unmanned system 1B according to the third embodiment includes a control device 10B, an apparatus 20, and a sensor 30.
  • the control device 10B includes a parameter calculation unit 13B and an action instruction unit 14B instead of the parameter calculation unit 13 and the action instruction unit 14 according to the second embodiment.
  • the parameter calculation unit 13B includes parameter calculation units 13Bm (m ⁇ n) of the parameter calculation units 13B1 to m of the behavior 1.
  • the parameter calculation unit 13B1 of the action 1 includes a calculation unit 131B1 of the action 1 and a learning unit 132B1 of the action 1.
  • the action instruction unit 14B includes an action instruction unit 14B1 to an action instruction unit 14Bn for the action n.
  • Control device 10B further includes a switching unit 17.
  • the parameter calculation units 13B1 to 13m of the action 1 are respectively prepared for the framework "action 1" to "action m" of the action.
  • the parameter calculation unit 13B1 or the like of the action 1 has a function corresponding to the parameter calculation unit 13 of the first embodiment. That is, the parameter calculation unit 13B1 of the action 1 (the calculation unit 131B1 of the action 1) calculates an action parameter for the action framework "action 1".
  • the parameter calculation unit 13B1 of the action 1 (the learning unit 132B1 of the action 1) is a learning model for the action framework "action 1" (an actor's NN for "action 1" and a critique NN for "action 1") And update these neural networks.
  • the parameter calculating unit 13B includes the parameter calculating units 13Bm (m ⁇ n) of the parameter calculating units 13B1 to m of the action 1 because the parameter calculating unit 13B is prepared for all action frameworks (n types). It means that there is no need. That is, in the framework of behavior, behavior parameters may be determined on a rule basis.
  • the action instructing units 14B1 to 14n for the action 1 are prepared for the framework "action 1" to "action n" of the action.
  • the action instructing unit 14B1 or the like of the action 1 has a function corresponding to the action instructing unit 14 of the first embodiment. That is, the action instructing unit 14B1 of the action 1 generates a control signal based on the action parameter for the action framework "action 1", and outputs the control signal to the device 20.
  • the action instructing unit 14B has the action instructing unit 14B1 or the like of the action 1 as many as the number (n) of patterns of the action framework.
  • the switching unit 17 selects the parameter calculating unit 13Bi of the action i corresponding to the action i selected by the action selecting unit 12 and the action instructing unit 14Bi of the action i, and the parameter calculating unit 13Bi of the selected action i, the action of the action i
  • the control is switched to the instruction unit 14Bi etc. (However, the parameter calculation unit 13Bi of the action i may not exist). That is, when the action i is selected, only learning of the parameter calculation unit of the action i is performed, and learning of the learning model of the parameter calculation unit 13Bj of the action j ⁇ i is not performed.
  • FIG. 7 shows an example of the configuration where the parameter calculation unit 13B is provided for all action frameworks
  • FIG. 8 shows the case where the parameter calculation unit 13B is provided only for some action frameworks. Shows a configuration example of
  • FIG. 7 is a first diagram illustrating control by the unmanned system of the third embodiment of the present invention.
  • the sensor 30 measures the state of the real environment and outputs environmental information to the control device 10B.
  • the sensor information acquisition unit 11 acquires environment information, and outputs the environment information to the action selection unit 12B, the parameter calculation unit 13B, and the action instruction unit 14B.
  • a state estimation unit 16 (not shown) estimates estimated state information as necessary, and outputs the estimated state information to the action selection unit 12B, the parameter calculation unit 13B, and the action instruction unit 14B.
  • the action selection unit 12 selects a framework of action based on the environmental information, the estimated state information, and the IF-THEN rule.
  • the action selection unit 12 outputs the result of the selection to the switching unit 17 ("switching switch" in FIG. 7).
  • the switching unit 17 switches the controller (the parameter calculating unit 13i of the action i and the action instructing unit 14Bi of the action i) according to the selection result of the action selecting unit 12. For example, when the action selection unit 12 selects "action 1", the switching unit 17 switches the controller to the parameter calculation unit 13B1 of action 1. For example, when the action selection unit 12 selects "action 2", the switching unit 17 switches the controller to the parameter calculation unit 13B2 of action 2. When the action selection unit 12 selects “action n”, the switching unit 17 switches the controller to the parameter calculation unit 13Bn of the action n.
  • the parameter calculation unit 13B1 When switched to the parameter calculation unit 13B1 of the action 1, the parameter calculation unit 13B1 calculates the action parameter of "action 1" based on the environment information, the estimated state information, and the learning model of the action 1.
  • the parameter calculation unit 13B1 outputs the value of the action parameter to the action instruction unit 14B1.
  • the action instructing unit 14B1 of the action 1 generates a control signal based on the environment information (estimated state information as needed) and the action parameter, and outputs the control signal to the device 20.
  • the parameter calculation unit 13B1 evaluates the current action based on the environment information acquired by the sensor information acquisition unit 11 after the current action, and the estimated state information. Update the action 1 learning model so that good action is possible.
  • the action selection unit 12 selects "action 2" and "action n".
  • the parameter calculation unit 13B2 of the action 2 calculates the action parameter of “action 2” and updates the learning model of the action 2.
  • the action instructing unit 14B2 of the action 2 controls the device 20 based on the action parameter calculated by the parameter calculating unit 13B2 of the action 2.
  • FIG. 8 is a second diagram illustrating control by the unmanned system of the third embodiment of the present invention. Also in the control device 10B shown in FIG. 8, the control of the device 20 is performed in the same flow as the process described in FIG. 7. However, the control device 10B illustrated in FIG. 8 does not include the parameter calculation unit 13B2 of the action 2 and the parameter calculation unit 13Bn of the action n.
  • the action selection unit 12 selects “action 2”
  • the action instructing unit 14B2 of the action 2 generates a control signal for “action 2” based on a predetermined rule
  • the device 20 is selected. Control.
  • the action instructing unit 14Bn of the action n generates a control signal for “action n” based on a predetermined rule, and controls the device 20.
  • the parameter calculation unit 13Bi of the action i can be prepared only for the necessary actions as shown in FIG. As a result, the processing load of the control device 10B can be reduced, and necessary computer resources can be saved, and the behavior of the device 20 can be improved by acquiring optimal behavior parameters.
  • FIG. 9 is a flowchart showing an example of learning model update processing by the control device of the fourth embodiment of the present invention.
  • the action selection unit 12 selects a framework of the behavior corresponding to the state information (environment information, estimated state information), and the calculation unit 131 calculates the behavior a (k) in the framework with the state information and the learning model (an actor's NN). ) Is calculated (step S11).
  • the calculation unit 131 calculates a (k) by the following equation (1).
  • a (k) ⁇ (s (k)
  • is a multi-layered neural network having a weight w with the state vector s (k) at the current time k as an input.
  • ReLU is applied to the activation function.
  • w) is a definite value, but the action a (k) is determined by the influence of the second term n (k) on the right side (for example, white Gaussian noise with an average of 0 and variance ⁇ ) , With a variation.
  • the calculation unit 131 outputs the action a (k) (action parameter) to the action instruction unit 14.
  • the parameter calculation unit 13 determines whether it is in the learning mode (step S12). For example, the user sets in the control device 10A whether the learning mode is set or not. Based on the setting, the parameter calculation unit 13 performs the determination of step S12. In the case of the learning mode (step S12; Yes), the action instructing unit 14 controls the device 20 based on the action a (k). In other words, the action a (k) is executed to change the environment. Next, the sensor 30 measures the actual environment, and the sensor information acquisition unit 11 acquires environmental information. The learning unit 132 obtains the reward r (k) based on the environmental information and the estimated state information by the state estimation unit 16 (step S13).
  • the reward r (k) is a value set for the state s (k) at time k. Qualitatively, for example, a positive reward is set for a desired state s (k), and a negative reward is set for an undesirable state s (k).
  • the sensor 30 measures the real environment, and the sensor information acquisition unit 11 acquires environment information (state vector s (k + 1)) at the next time k + 1.
  • the state estimation unit 16 estimates the state s (k + 1) at time k + 1.
  • the parameter calculation unit 13 stores the state s (k + 1) and the like in the variable R (step S14). More specifically, the learning unit 132 uses a data set in which a state s (k), an action a (k), a reward r (k), and a state s (k + 1) as a set of variables R for storing information in the past. , And are recorded in the storage unit 15.
  • the learning unit 132 extracts P pieces of data at random from the variable R (step S15).
  • the learning unit 132 calculates the value y (i) by the following equation (2) (step S16).
  • y (i) r (i) + ⁇ Q '(s (i + 1), ⁇ ' (s (i + 1)
  • w Q '), i 1, 2, ..., P ... (2)
  • Q is a state value function, and as the above equation (2), the state s and the action ⁇ are input.
  • state values are modeled by neural networks as well as actions, and weights w Q are updated and estimated.
  • Q ′ in the above equation is a neural network called a target network, and w Q ⁇ w Q ′.
  • ⁇ ' is the target network of the neural network ⁇ of behavior, and w ⁇ w'.
  • Q is a critic's NN and ⁇ is an actor's NN.
  • the learning unit 132 updates the critic's NN (step S17). Specifically, the learning unit 132 updates the weight w Q of the state value function so as to minimize the loss function represented by the following Expression (3). This minimization can be carried out using known methods such as gradient descent and Adam.
  • the learning unit 132 updates the NN of the actor (step S18). Specifically, the learning unit 132 uses the Q updated according to the above policy as an evaluation index, and updates the weight w of ⁇ according to the following equation (4) using a known method such as gradient descent.
  • the learning unit 132 updates the target network (step S19). Specifically, the learning unit 132 updates the target network by the following equation (5).
  • w ′ ⁇ w + (1 ⁇ ) w ′
  • w Q ′ ⁇ w Q + (1 ⁇ ) w Q ′ ... (5)
  • step S12 When it is determined in step S12 that the learning mode is not set (step S12; No), the action instructing unit 14 controls the device 20 based on the action a (k).
  • the sensor information acquisition unit 11 acquires environment information measured by the sensor 30, and the state estimation unit 16 estimates the next estimated state information (state s (k + 1) at time k + 1) (step S20).
  • step S21 it is determined whether the control of the device 20 is to be ended (step S21). When the control is to be ended (step S21; Yes), the present flowchart is ended. If the process does not end (step S21; No), the process from step S11 is repeated.
  • an action parameter that is often determined based on the IF-THEN rule it is possible to set an action parameter that is often determined based on the IF-THEN rule to an optimal value according to the state. Therefore, the performance of an unmanned system can be improved over conventional rule bases.
  • deep learning to build a learning model that determines behavioral parameters, parameters that can be learned can be obtained automatically without the need for human design, and in particular, complex parameters that are difficult for humans to design, human It is possible to acquire parameters that can not be noticed and obtain a more accurate learning model.
  • FIG. 10 is a diagram showing an example of an unmanned system according to a fifth embodiment of the present invention.
  • the AAV 20 ′ is equipped with a sensor 30.
  • the sensor 30 is, for example, a camera or laser radar used to detect an obstacle, a GPS necessary to move a planned route at a desired speed, a gyro sensor, an atmospheric pressure sensor, an acceleration sensor, or the like.
  • the sensor information acquisition unit 11 acquires environmental information measured by a camera or a laser radar.
  • the sensor information acquisition unit 11 analyzes, for example, an image captured by a camera and detects the function of detecting the presence of an obstacle included in the image, and measures the time from the irradiation of the laser to the reception of the reflected light. It may have a function.
  • the state estimation unit 16 may estimate the position information of the AAV 20 'by a Kalman filter for smoothing of an error included in position information by GPS or estimation of position information in measurement intervals.
  • a Kalman filter for smoothing of an error included in position information by GPS or estimation of position information in measurement intervals.
  • the state estimation unit 16 may estimate the self position by a method such as SLAM (Simultaneous Localization and Mapping) using information measured by a laser radar or a camera.
  • SLAM Simultaneous Localization and Mapping
  • the action selection unit 12 selects an action framework such as “straight ahead”, “turning”, and “hovering” based on the environmental information. For example, when the detection result of the radar indicates the presence of an obstacle, the action selection unit 12 selects “turn” to avoid the obstacle. In that case, the parameter calculation unit 13B calculates, for example, the action parameter “turning radius”.
  • the action instructing unit 14B is a control signal for turning at the turning radius calculated by the parameter calculating unit 13 (for example, the rotation speed of the turning front wing (propeller) is increased to a certain extent, and the rotation of the opposite front wing Generate the number, etc.) and output to AAV 20 '.
  • the action parameter calculated by the parameter calculation unit 13B may be an action parameter related to a part of the action framework selected by the action selection unit 12. For example, the parameter calculation unit 13B determines the behavior parameter "swing radius" in turning of the AAV 20 ', but the behavior parameter "swing start timing" may be determined on a rule basis. Next, as described by way of example, what the parameter calculation unit 13B calculates may be a correction amount for an action parameter in the action framework selected by the action selection unit 12.
  • the control device 10B includes the parameter calculation unit 13B only for "turning", and for other actions such as “straight ahead” and “hovering", the action instructing unit 14B instructs a predetermined action content on a rule basis.
  • the controller 10B may be built in the AAV 20 '.
  • FIG. 11 is a flowchart showing an example of a control method of an unmanned system according to a fifth embodiment of the present invention.
  • the controller 10B has the function of performing various actions necessary for the automatic operation of the AAV 20 ', but the explanation other than turning will be omitted.
  • position information of the target point is input to the control device 10B, and the automatic operation is started (step S31).
  • the controller 10B generates a flight path of the AAV 20 'from the start point to the end point (step S32). Thereafter, the controller 10B starts the flight of the AAV 20 '.
  • the sensor information acquisition unit 11 acquires, for example, position information of the AAV 20 ′ from a GPS receiver included in the AAV 20 ′.
  • the behavior selection unit 12 determines whether the AAV 20 'has arrived at the end point (step S33). When arriving at the end point (Step S33; Yes), the action selecting unit 12 selects the end of the automatic driving, and the action instructing unit 14B ends the automatic driving (Step S34).
  • the sensor information acquisition unit 11 acquires environmental information from the sensor 30, such as a camera, laser radar, GPS, gyro sensor, atmospheric pressure sensor, acceleration sensor, etc. (Step S35) ).
  • the action selection unit 12 determines whether an obstacle exists on the route based on the environmental information measured by the camera or the laser radar and the estimated state information by the state estimation unit 16 (step S36). When the obstacle does not exist (Step S36; No), the action selection unit 12 selects, for example, the action framework “straight ahead” by the route following control.
  • the action instruction unit 14B (the parameter calculation unit 13Bi is not prepared for “straight ahead”) causes the AAV 20 ′ to go straight along the path that is generated as it is.
  • the action instructing unit 14B maintains the predetermined altitude, the predetermined attitude, and the predetermined flying speed by using environmental information obtained by measuring the GPS, the gyro sensor, the atmospheric pressure sensor, the acceleration sensor and the like in step S32 A control signal for flying following the generated path is generated to control the AAV 20 '(step S38).
  • step S36 If there is an obstacle (step S36; Yes), the action selection unit 12 selects the action framework “turn”. Then, the parameter calculation unit 13B generates an avoidance path (step S37). In the generation of the avoidance path, it is assumed that the turning radius is changed according to the distance between the AAV 20 ′ and the obstacle, and the closer the distance is, the sharper turning (the turning radius is smaller) is to be avoided.
  • the process of determining the turning radius will be described with reference to FIG.
  • FIG. 12 is a diagram for explaining the action parameter determination process according to the fifth embodiment of the present invention.
  • the initial value of the turning radius with respect to the distance to the obstacle is shown in the graph “initial table” of the initial table of FIG.
  • this initial value is not necessarily an appropriate value in the current operation. Therefore, it is considered that learning is repeated while actually performing automatic driving by the parameter calculation unit 13B, and the turning radius of the initial table is corrected according to the result.
  • the relationship between the corrected AAV 20 'and the distance between the obstacle and the turning radius is shown in the graph "table after learning".
  • f_0 (s (k)) is a graph "initial table”.
  • the action a (k) (the correction amount of the turning radius in this example) is generated as soon as possible after avoiding the obstacle, for example,
  • the reward model is set by giving a good reward to the turning radius when it is possible to return, and the learning model of the correction amount of the initial table is updated.
  • the turning radius after correction is the graph “table after learning”.
  • the parameter calculation unit 13B adopts the learned turning radius thus learned, and generates an avoidance path.
  • the behavior instructing unit 14B causes the AAV 20 'to fly along this avoidance path.
  • the action parameter is calculated only for “turning”, but the action parameter may be calculated for all other actions such as “straight ahead” and “hovering” (FIG. 7) .
  • the unmanned system 1 of the first embodiment and the unmanned system 1A of the second embodiment can be applied to the automatic operation of the AAV 20 '.
  • FIG. 13 is a diagram showing an example of a hardware configuration of a control device in the first to fifth embodiments of the present invention.
  • the computer 900 is a computer device including a central processing unit (CPU) 901, a main storage device 902, an auxiliary storage device 903, an input / output interface 904, and a communication interface 905.
  • the computer 900 may include a processor such as a micro processing unit (MPU) or a graphics processing unit (GPU) instead of the CPU 901.
  • MPU micro processing unit
  • GPU graphics processing unit
  • the CPU 901 reads a program from the auxiliary storage device 903 and develops the program in the main storage device 902, and executes the above processing according to the program.
  • the CPU 901 secures a storage area corresponding to the storage unit 15 in the main storage device 902 according to the program.
  • the CPU 901 secures a storage area for storing data being processed in the auxiliary storage device 903 according to a program.
  • secondary storage 903 is an example of a non-transitory tangible medium.
  • non-transitory tangible media include magnetic disks connected via an input / output interface 904, magneto-optical disks, CD-ROMs, DVD-ROMs, semiconductor memories, and the like.
  • the distributed computer 900 may expand the program in the main storage unit 902 and execute the above processing.
  • the program may be for realizing a part of the functions described above.
  • the program may be a so-called difference file (difference program) that realizes the above-described function in combination with other programs already stored in the auxiliary storage device 903.
  • All or part of the functions of the control device 10 etc. may be hardware such as a microcomputer, LSI (Large Scale Integration), ASIC (Application Specific Integrated Circuit), PLD (Programmable Logic Device), FPGA (Field-Programmable Gate Array), etc. It may be realized using.
  • LSI Large Scale Integration
  • ASIC Application Specific Integrated Circuit
  • PLD Programmable Logic Device
  • FPGA Field-Programmable Gate Array
  • the switching unit 17 is an example of a first switching unit and a second switching unit.
  • the action instruction unit 14Bi (1 ⁇ i ⁇ n)
  • one having no corresponding parameter calculation unit 13Bi is an example of the operation control unit.
  • Environment information and estimated state information are examples of state information.
  • the action selection unit 12 is an example of an operation selection unit.
  • the parameter calculators 13 and 13B are an example of the operation parameter calculator.
  • the action instructing units 14 and 14B are an example of the operation instructing unit.
  • the application destination of the control device according to the first to fourth embodiments is not limited to an unmanned system related to mobile objects such as aircraft, vehicles, ships, and railways.
  • the control devices of the first to fourth embodiments can be used to control equipment (turbines, boilers, compressors, etc.) such as plants. Also in the control of these devices, it is possible to achieve both the predictability and ease of understanding of control (decision making) and the adaptability, optimality, and performance improvement of control to a situation.
  • the basic concept of the behavioral parameter calculation in the control device 10 described above can be used in a decision making system without control of an actual device.
  • the decision making system inputs parameters necessary for decision making, decides a decision making framework on a rule basis, and determines variable parameters in the framework according to a learning model constructed by reinforcement learning.
  • the decision making system evaluates the outcome of the decision made in this way and updates the learning model.
  • the function corresponding to the sensor information acquisition unit 11 acquires the piece layout information of a shogi board and the function corresponding to the action selection unit 12 is a walk
  • the type of a piece to be moved, such as a flight, is determined, and the function corresponding to the action instruction unit 14 is used to specifically determine how many squares the piece is to be moved by a formula or the like.
  • the function corresponding to the parameter calculation unit 13 adjusts the equation etc. with higher accuracy.
  • control device the unmanned system, the control method, and the program described above, both the ease of understanding of control and the improvement in performance can be achieved.
  • Unmanned System 10 10A, 10B Control Device 11 Sensor Information Acquisition Unit 12 Action Selection Unit 13, 13B1, 13B2, 13Bm Parameter Calculation Unit 14, 14B1, 14B2, 14Bn Action Instruction Unit 15 Memory Unit 16 State Estimation Unit 17 Switch Unit 131 , 131 B 1, 131 B 2, 131 Bm calculation unit 132, 132 B 1, 132 B 2, 132 Bm learning unit 20 device 30 sensor

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Automation & Control Theory (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Computational Mathematics (AREA)
  • Feedback Control In General (AREA)
  • Manipulator (AREA)

Abstract

制御装置は、機器の状態または機器が動作する環境の状態を示す状態情報に基づいてルールベースで機器の動作の枠組みを決定し、状態情報と、その状態情報に基づく機器の動作およびその動作に対する評価に基づいて構築された学習モデルと、に基づいて、決定された動作の枠組みにおける動作の内容を定めるパラメータを算出し、その動作を実行するよう機器に指示する。

Description

制御装置、無人システム、制御方法及びプログラム
 本発明は、制御装置、無人システム、制御方法及びプログラムに関する。
 本願は、2017年12月8日に、日本に出願された特願2017-236475号に基づき優先権を主張し、その内容をここに援用する。
 近年、コンピュータの計算能力の向上に伴い、機械学習や深層学習といった技術の進歩が目覚ましい。従来は計測や画像認識の分野で用いられることが多いこれらの技術が、幅広い分野に用いられるようになってきている。例えば、特許文献1には、人と協働して作業を行うロボットの動作について、人の作業負担を低減し、作業効率を向上させる動作を強化学習やニューラルネットワークを用いて学習する機械学習装置について記載がある。
 非特許文献1には、強化学習の一種であるDeep Deterministic Policy Gradientについて記載がある。
特開2017-030137号公報
T. P. Lillicrap, J. J. Hunt, A. Pritzel, N. Heess, T. Erez,Y. Tassa, and D. Silver, "Continuous Control with Deep Reinforcement Learning," Cornell University Library, 2015.
 深層学習等の手法を用いると、人が認識さえすることができない特性を学習した高精度なモデルを構築することができる反面、人は、そのモデルが様々な入力に対してどのような出力を行うのかを予測することができない。従って、深層学習等で構築されたモデルに基づいて機器の動作を決定する場合、機器が意図しない動作を行う可能性を排除することができず、制御可能性や安全性の面で課題がある。
 本発明は、上述の課題を解決することのできる制御装置、無人システム、制御方法及びプログラムを提供する。
 本発明の一態様によれば、制御装置は、機器の状態または機器が動作する環境の状態を示す状態情報に基づいてルールベースで機器の動作の枠組みを決定する動作選択部と、前記状態情報と、その状態情報に基づく前記機器の動作およびその動作に対する評価に基づいて構築された学習モデルと、に基づいて、決定された前記動作の枠組みにおける前記動作の内容を定めるパラメータを算出する動作パラメータ算出部と、前記動作を実行するよう前記機器に指示する動作指示部と、を備える。
 本発明の一態様によれば、前記動作パラメータ算出部は、前記状態情報と前記学習モデルとに基づいて、前記動作の内容を定めるパラメータを算出する算出部と、前記算出部が算出した前記パラメータの値に基づく前記動作を評価し、その評価に基づいて前記パラメータを最適化する前記学習モデルを更新する学習部と、を備える。
 本発明の一態様によれば、前記学習モデルは、アクターのニューラルネットワークとクリティックのニューラルネットワークを備え、前記学習部が、DDPG(Deep Deterministic Policy Gradient)により、前記アクターのニューラルネットワークと前記クリティックのニューラルネットワークを更新する。
 本発明の一態様によれば、前記動作パラメータ算出部は、前記状態情報と前記学習モデルとに基づいて、前記動作の内容を定めるパラメータの補正量を算出する。
 本発明の一態様によれば、前記制御装置は、センサが計測した情報に基づいて前記状態情報を推定する状態推定部、をさらに備える。
 本発明の一態様によれば、前記制御装置において、前記動作パラメータ算出部および前記動作指示部が前記動作の枠組み別に設けられ、前記制御装置は、前記動作選択部が選択する前記動作の枠組みに応じて、選択された前記動作の枠組みに対応する前記動作パラメータ算出部および前記動作指示部に切り替える第1の切替部、をさらに備える。
 本発明の一態様によれば、前記制御装置において、前記動作パラメータ算出部および前記動作指示部が、複数の前記動作の枠組みのうち一部の前記動作の枠組み別に設けられ、前記制御装置は、複数の前記動作の枠組みのうち残りの前記動作の枠組みについて、前記動作の枠組み別に所定の動作内容を指示する動作制御部と、前記動作選択部が選択する前記動作の枠組みに応じて、前記動作の枠組みに対応する前記動作パラメータ算出部および前記動作指示部、または、前記動作の枠組みに対応する前記動作制御部を切り替える第2の切替部と、をさらに備える。
 本発明の一態様によれば、無人システムは、上記の何れかに記載の制御装置と、前記制御装置が制御する機器と、を含む。
 本発明の一態様によれば、制御方法は、機器の状態または機器が動作する環境の状態を示す状態情報に基づいてルールベースで機器の動作の枠組みを決定するステップと、前記状態情報と、その状態情報に基づく前記機器の動作およびその動作に対する評価に基づいて構築された学習モデルと、に基づいて、決定された前記動作の枠組みにおける前記動作の内容を定めるパラメータを算出するステップと、前記動作を実行するよう前記機器に指示するステップと、を有する。
 本発明の一態様によれば、プログラムは、コンピュータを、機器の状態または機器が動作する環境の状態を示す状態情報に基づいてルールベースで機器の動作の枠組みを決定する手段、前記状態情報と、その状態情報に基づく前記機器の動作およびその動作に対する評価に基づいて構築された学習モデルと、に基づいて、決定された前記動作の枠組みにおける前記動作の内容を定めるパラメータを算出する手段、前記動作を実行するよう前記機器に指示する手段、として機能させる。
 上記した制御装置、無人システム、制御方法及びプログラムによれば、制御の理解容易性と性能向上を両立することができる。
本発明の第一実施形態による無人システムのブロック図である。 本発明の第一実施形態の無人システムによる制御を説明する第1の図である。 本発明の第一実施形態の無人システムによる制御を説明する第2の図である。 本発明の第二実施形態による無人システムのブロック図である。 本発明の第二実施形態の無人システムによる制御を説明する図である。 本発明の第三実施形態による無人システムのブロック図である。 本発明の第三実施形態の無人システムによる制御を説明する第1の図である。 本発明の第三実施形態の無人システムによる制御を説明する第2の図である。 本発明の第四実施形態の無人システムによる学習モデルの更新処理の一例を示すフローチャートである。 本発明の第五実施形態による無人システムの一例を示す図である。 本発明の第五実施形態による無人システムの制御方法の一例を示すフローチャートである。 本発明の第五実施形態による行動パラメータの決定処理を説明する図である。 本発明の第一実施形態~第五実施形態における制御装置のハードウェア構成の一例を示す図である。
<第一実施形態>
 以下、本発明の実施形態による制御装置を図1~図3を参照して説明する。
 図1は、本発明に係る第一実施形態における無人システムのブロック図である。
 図1の無人システム1は、制御装置10、機器20、センサ30を含む。制御装置10は、機器20を制御するコンピュータであって、CPU(Central Processing Unit)やMPU(Micro Processing Unit)を備える。制御装置10と機器20とは別体で構成されていても良いし、一体的に構成されていても良い。制御装置10と機器20は、有線または無線の通信手段を介して接続されており、制御装置10から機器20へ制御信号を出力、送信等することによって機器20の動作を制御する。制御装置10は、機器20の状態や動作環境に応じて機器20が目標とする状態となるように制御する。一般に動作環境等に応じて機器20を制御する場合、例えば、温度が「X1」度以上になったら制御「A1」を行い、「X2」度以上になったら制御「A2」を行うといったように、制御装置10は、所定の環境情報(例えば、周囲の温度等)を所定のルールに基づいて判定し、次に行うべき制御を決定する(IF-THENルールによる制御)ことが多い。本実施形態の制御装置10は、従来のルールベースで決定された制御の枠組みの中で、さらに実環境に応じたより好ましい制御(例えば、効率が良い、損失が少ない、安全性が高い、ユーザにとって望ましい、など)を実行する機能を備える。機器20は、例えば、自動運転車、無人航空機(AAV:Automated Aerial Vehicle)などの無人で動作する機器である。
 図1に示すように制御装置10は、センサ情報取得部11と、行動選択部12と、パラメータ算出部13と、行動指示部14と、記憶部15とを備える。
 センサ情報取得部11は、機器20の状態や動作環境についてセンサ30が検出した情報(環境情報)を取得する。センサ30とは、例えば、カメラ、レーダ、レーザレーダ、3軸慣性センサ、GPS(Global Positioning System)受信機、加速度センサ、温度センサ、気圧センサ、電流センサ、回転センサなどである。
 行動選択部12は、環境情報に基づいて、IF-THENルール等のルールベースで機器20が行うべき動作や行動の枠組み、種類を決定する。
 パラメータ算出部13は、環境情報と、環境情報に基づく機器20の行動およびその行動の結果に対する評価を学習することによって構築された学習モデルと、に基づいて、行動選択部12が選択した行動の枠組みにおける行動の詳細な内容を決定する。パラメータ算出部13は、算出部131と、学習部132とを備える。算出部131は、環境情報に応じた適切な行動の内容を定めるパラメータ(以下、行動パラメータと記載)を学習モデルに基づいて算出する。学習部132は、算出部131が算出した行動パラメータを用いて実行された機器20の行動およびその行動の結果に対する評価を学習して学習モデルを更新する。例えば、学習モデルには、行動パラメータを算出するためのモデル(アクターモデル)、その行動パラメータに基づく行動を実環境に対して行った結果を評価するためのモデル(クリティックモデル)が含まれており、学習部132は、DDPG(Deep Deterministic Policy Gradient)により学習モデル(アクターモデル、クリティックモデル)の更新を行う。パラメータ算出部13の動作は、学習モードと非学習モードとを切り替えることができる。これにより、例えば、学習に適さない環境では学習を停止することができる。
 行動指示部14は、パラメータ算出部13(算出部131)が算出した行動パラメータに基づいて制御信号を生成し、その制御信号を機器20に出力する。これにより、行動指示部14は、行動選択部12が選択した行動の枠組みの範囲内で、パラメータ算出部13により最適化された行動を機器20に実行させる。
 記憶部15は、センサ情報取得部11が取得した環境情報や学習モデルなど種々の情報を記憶する。
 次に図2を用いて、制御装置10による機器20の制御について説明を行う。
 図2は、本発明の第一実施形態の無人システムによる制御を説明する第1の図である。
 まず、センサ30が、機器20の状態や機器20の動作環境の状態を計測し、計測した環境情報を制御装置10へ出力する。制御装置10では、センサ情報取得部11が環境情報を取得し、行動選択部12、パラメータ算出部13、行動指示部14に出力する。
 次に行動選択部12は、IF-THENルールに基づいて、環境情報に応じた行動を選択する。行動選択部12は、選択した行動の枠組みをパラメータ算出部13に出力する。
 次にパラメータ算出部13は、選択した行動の枠組みにおける行動パラメータを環境情報と学習モデルに基づいて算出する。例えば、学習モデルは、環境情報を入力すると、実環境に応じた最適な行動を実行するための行動パラメータを出力するよう構築されている。パラメータ算出部13(算出部131)は、学習モデルに環境情報を入力する。パラメータ算出部13は、環境情報に対して学習モデルが出力した行動パラメータを行動指示部14に出力する。
 行動指示部14は、パラメータ算出部13から取得した行動パラメータとセンサ情報取得部11から取得した環境情報とに基づいて、行動パラメータが示す行動を実行するための制御信号を生成し、機器20へ出力する。機器20は、制御信号に従って行動する。この行動により、実環境は変化する。すると、センサ30は、再び実環境の状態を計測して、制御装置10は、新たに計測された環境情報に基づいて、ルールベースによる行動の枠組みの選択、その枠組みにおける行動パラメータの算出、行動指示、機器20による行動というプロセスを繰り返す。
 一般的な機器20の制御では、例えば、エキスパートシステムのようなIF-THENルールに基づいて行動の内容を定めるパラメータが決定されることが多い。しかし、エキスパートシステムといえども、あらゆる状況に対応し得るだけのルールを設定することは現実的ではない。そこで本実施形態では、ルールベースによって制御の枠組みを決定することを基本とし、そのルール内の可変パラメータについては、強化学習によって獲得する。これにより、実環境に応じてパラメータを可変とすることができ、より現実に適した制御を行うことができる。全てのパラメータをIF-THENルールで定めておく場合と比べ、機器20の個体差や使用環境などの違いに対応し、制御の目標やユーザの好みにより即した制御を実現することができる。可変パラメータの学習にはディープラーニング(例えば、ニューラルネットワーク、以下NNと記載する場合がある。)を用いる。例えば、システム制御の分野でも可変ゲインのような考え方は存在するが、人がパラメータテーブルを事前に用意する必要がある。しかし、ディープラーニングを用いれば、学習すべき項目を人が設計する必要が無く、対象の特性を自動的に見出し、モデルを構築することができる。これにより、人が気付くことができない特性を学習し、より良い可変パラメータを出力することができる有用な学習モデルを構築できる可能性がある。
 ルールベースに基づく行動の決定は、その行動生成の根拠が、例えばIF-THEN形式の条件分岐で明示されているので可読性に優れ、人が理解しやすいという利点がある。その為、機器20が起こす行動は予測し易く、人との協働など実社会へ適用するうえで安心して用いることができる。一方、ディープラーニングに基づく行動の決定は、行動生成の根拠をユーザが知ることが難しい。その為、例えば、学習モデルを構築したときと同様の環境で使用するのであれば、機器20の制御をその学習モデルに任せてもよい。しかし、実環境では様々な予期しない現象が起こり得るため、どのような行動を起こすかが分からないまま、機器20の制御を学習モデルに任せることはできない場合がある。本実施形態のルールベースとニューラルネットワークを併用した技術であれば、人が理解できるルールベースで行動の枠組みを決めることができるため、機器20の行動が人の予測から大きく外れることが無く、安心して用いることができる。また、行動の内容を定める可変パラメータについては、強化学習により、実環境に応じて最適化された値を学習するので、より良い行動を引き出すことができる。
 次にパラメータ算出部13の一例について説明する。
 図3は、本発明の第一実施形態の無人システムによる制御を説明する第2の図である。
 上記のとおり、パラメータ算出部13は、学習モデルと環境情報に基づいて行動パラメータを算出する算出部131と、学習モデルを更新する学習部132とを備える。一つの例では、Deep Deterministic Policy Gradient (DDPG)を適用してパラメータ算出部13を実現することが可能である。DDPGは、ディープラーニングを使った強化学習の手法である。DDPGでは、行動(方策)を選択するアクターと、選択された行動やその行動によって生じた状態を評価するクリティックを用いる。アクターとクリティックはそれぞれ独立したニューラルネットワークである。上記の学習モデルは、アクターのNNおよびクリティックのNNを含む。算出部131は、アクターのNNに基づいて行動の選択、つまり行動パラメータの算出を行い、行動指示部14が機器20へ行動パラメータに基づく行動を指示する。学習部132は、その行動の結果生じた環境情報に基づいて報酬を設定し、アクターのNNおよびクリティックのNNを更新する。具体的な更新処理の例については後述する(第四実施形態)。報酬に基づいて学習モデル(アクターのNNおよびクリティックのNN)を更新する処理が強化学習に相当し、実際に行動を生成して実環境に反映し、その結果を方策関数(アクターのNN)にフィードバックすることで,徐々に良い行動を生成できるようになる。
 本実施形態の無人システム1によれば、従来のルールベースの利点である行動生成の根拠の理解容易性と、強化学習の利点である性能向上とを両立することができる。従来のエキスパートシステムと異なり、制御における可変パラメータを学習により自動的に獲得することができる。
 機器20の運転と並行して学習モデルの更新を継続的に行うことで、機器20の経年変化などを反映した精度の高い学習モデルを維持し続けることで、継続的に機器20の性能を引き出すことができる。
<第二実施形態>
 以下、本発明の第二実施形態による無人システムについて図4~5を参照して説明する。第二実施形態では、第一実施形態を拡張し、計測できない情報が行動パラメータの決定に必要な場合に、その情報を推定する機能を備えた無人システム1A、制御装置10Aを提供する。
 図4は、本発明の第二実施形態による無人システムのブロック図である。
 第二実施形態に係る構成のうち、第一実施形態に係る無人システム1に含まれる構成と同じものには同じ符号を付し、それらの説明を省略する。第二実施形態に係る無人システム1Aは、制御装置10Aと、機器20と、センサ30とを含む。制御装置10Aは、第一実施形態の構成に加えて、状態推定部16を備えている。状態推定部16は、センサ情報取得部11が取得した環境情報に基づいて、機器20の状態や運転環境の状態を推定する。
 図5は、本発明の第二実施形態の無人システムによる制御を説明する図である。
 まず、センサ30が実環境の状態を計測し、環境情報を制御装置10Aへ出力する。制御装置10Aでは、センサ情報取得部11が環境情報を取得し、行動選択部12、パラメータ算出部13、行動指示部14、状態推定部16に出力する。
 状態推定部16は、環境情報に基づいて、制御に必要な情報(推定状態情報)を推定する。例えば、制御装置10Aが車両の自動運転を制御する場合、状態推定部16は、交差点の死角など、車両が備えるセンサの計測範囲外にいる他車両の位置を推定する。このようにして推定された推定状態情報に対して報酬を与えつつ繰り返し学習すると、例えば、制御装置10Aの学習モデルは、死角の多い交差点に侵入した際に速度を落とすという行動の行動パラメータを獲得できる可能性がある。状態推定部16は、推定した推定状態情報を、行動選択部12、パラメータ算出部13、行動指示部14に出力する。
 以降の処理の流れは、第一実施形態と同様である。まず、行動選択部12は、環境情報および推定状態情報の少なくとも一つを用い、IF-THENルールに基づいて行動の枠組みを選択する。次にパラメータ算出部13は、環境情報および推定状態情報の少なくとも一つを学習モデル(アクターのNN)に入力して、行動パラメータを算出する。次に行動指示部14は、行動パラメータに基づく制御信号を生成し機器20を制御する。パラメータ算出部13は、今回の行動の結果を示す環境情報や推定状態情報を取得して、行動を評価し、学習モデルを更新する。
 本実施形態によれば、計測できない、計測できるが誤差を含む環境の状態を推定して、制御および学習モデルの更新に利用することができる。例えば、状態推定部16が将来の状態を予測することにより、先読み行動の行動パラメータを学習できる可能性がある。
<第三実施形態>
 以下、本発明の第三実施形態による無人システムについて図6~8を参照して説明する。第三実施形態では、IF-THENルールで切り替え可能な複数の行動のそれぞれについて、行動パラメータを算出する方法を提供する。第一実施形態の構成では,行動が環境に反映されたその結果をフィードバックする必要がある。しかしIF-THENルールで行動を切替える場合、選択されなかった行動までも学習してしまうと、行動と評価が合致しない可能性がある。そこで、本実施形態では、まず、IF-THENルールで行動選択を行い、その選択に応じて行動別に用意されたパラメータ算出部に切り替える。つまり、N個の行動別に独立したパラメータ算出部N個を用意しておき、選ばれた行動についてのみ学習を行うよう構成する。
 図6は、本発明の第三実施形態による無人システムのブロック図である。
 第三実施形態は、第一実施形態および第二実施形態の何れとも組み合わせることが可能であるが、ここでは第二実施形態と組み合わせた場合の構成を例に説明を行う。本発明の第三実施形態に係る構成のうち、第二実施形態に係る無人システム1Aに含まれる構成と同じものには同じ符号を付し、それらの説明を省略する。第三実施形態に係る無人システム1Bは、制御装置10Bと、機器20と、センサ30とを含む。制御装置10Bは、第二実施形態のパラメータ算出部13、行動指示部14に代えて、パラメータ算出部13B、行動指示部14Bを備える。ここで、IF-THENルールによって選択される行動の枠組みの種類はnパターンあるとする。パラメータ算出部13Bは、行動1のパラメータ算出部13B1~行動mのパラメータ算出部13Bm(m≦n)を備える。行動1のパラメータ算出部13B1は、行動1の算出部131B1、行動1の学習部132B1を備える。行動2のパラメータ算出部13B2~行動mのパラメータ算出部13Bmについても同様である。行動指示部14Bは、行動1の行動指示部14B1~行動nの行動指示部14Bnを備える。制御装置10Bは、切替部17をさらに備える。
 行動1のパラメータ算出部13B1~行動mのパラメータ算出部13Bmは、それぞれ行動の枠組み「行動1」~「行動m」のために用意されたものである。行動1のパラメータ算出部13B1等は、第一実施形態のパラメータ算出部13に相当する機能を有している。つまり、行動1のパラメータ算出部13B1(行動1の算出部131B1)は、行動の枠組み「行動1」用の行動パラメータを算出する。行動1のパラメータ算出部13B1(行動1の学習部132B1)は、行動の枠組み「行動1」用の学習モデル(「行動1」用のアクターのNNおよび「行動1」用のクリティックのNN)を有し、これらのニューラルネットワークを更新する。行動2のパラメータ算出部13B2~行動mのパラメータ算出部13Bmについても同様である。
 パラメータ算出部13Bが行動1のパラメータ算出部13B1~行動mのパラメータ算出部13Bm(m≦n)を有するのは、パラメータ算出部13Bが全ての行動の枠組み(n種類)に対して用意されていなくても良いことを意味する。つまり、行動の枠組みの中には、ルールベースで行動パラメータが決定されるものがあっても良い。
 行動1の行動指示部14B1~行動nの行動指示部14Bnは、それぞれ行動の枠組み「行動1」~「行動n」のために用意されたものである。行動1の行動指示部14B1等は、第一実施形態の行動指示部14に相当する機能を有している。つまり、行動1の行動指示部14B1は、行動の枠組み「行動1」用の行動パラメータに基づく制御信号を生成し、機器20へ出力する。行動2の行動指示部14B2~行動nの行動指示部14Bnについても同様である。行動指示部14Bは、行動1の行動指示部14B1等を行動の枠組みのパターンの数(n個)だけ有している。
 切替部17は、行動選択部12が選択した行動iに対応する行動iのパラメータ算出部13Bi、行動iの行動指示部14Biを選択し、選択した行動iのパラメータ算出部13Bi、行動iの行動指示部14Bi等に制御を切り替える(但し、行動iのパラメータ算出部13Biは存在しない場合がある)。すなわち、行動iが選択されたとき、行動iのパラメータ算出部の学習のみを行い,行動j≠iのパラメータ算出部13Bjの学習モデルについての学習は行わない。
 次に図7、図8を用いて、制御装置10Bによる機器20の制御について説明を行う。図7は、全ての行動の枠組みに対してパラメータ算出部13Bが設けられている場合の構成例、図8は、一部の行動の枠組みに対してのみパラメータ算出部13Bが設けられている場合の構成例を示している。
 図7は、本発明の第三実施形態の無人システムによる制御を説明する第1の図である。
 まず、センサ30が実環境の状態を計測し、環境情報を制御装置10Bへ出力する。制御装置10Bでは、センサ情報取得部11が環境情報を取得し、その環境情報を行動選択部12B、パラメータ算出部13B、行動指示部14Bに出力する。必要に応じて図示しない状態推定部16が推定状態情報を推定し、その推定状態情報を行動選択部12B、パラメータ算出部13B、行動指示部14Bに出力する。
 次に行動選択部12は、環境情報や推定状態情報とIF-THENルールとに基づいて、行動の枠組みを選択する。
 行動選択部12は、選択の結果を切替部17(図7の「切り替えスイッチ」)へ出力する。切替部17は、行動選択部12の選択結果に従って、制御器(行動iのパラメータ算出部13i、行動iの行動指示部14Bi)を切り替える。例えば、行動選択部12が「行動1」を選択した場合、切替部17は、制御器を行動1のパラメータ算出部13B1へ切り替える。例えば、行動選択部12が「行動2」を選択した場合、切替部17は、制御器を行動2のパラメータ算出部13B2へ切り替える。行動選択部12が「行動n」を選択した場合、切替部17は、制御器を行動nのパラメータ算出部13Bnへ切り替える。
 行動1のパラメータ算出部13B1へ切り替えられた場合、パラメータ算出部13B1は、「行動1」の行動パラメータを、環境情報や推定状態情報と行動1の学習モデルとに基づいて算出する。パラメータ算出部13B1は、行動パラメータの値を行動指示部14B1に出力する。
 行動1の行動指示部14B1は、環境情報(必要に応じて推定状態情報)と行動パラメータに基づく制御信号を生成し、機器20へ出力する。
 「行動1」について学習モードとなっている場合、パラメータ算出部13B1は、今回の行動の後にセンサ情報取得部11が取得した環境情報や、推定状態情報に基づいて今回の行動を評価し、より良い行動が可能となるように行動1の学習モデルを更新する。
 行動選択部12が、「行動2」、「行動n」を選択した場合も同様である。例えば、行動選択部12が「行動2」を選択した場合、行動2のパラメータ算出部13B2が「行動2」の行動パラメータの算出や行動2の学習モデルの更新を行う。行動2の行動指示部14B2は、行動2のパラメータ算出部13B2が算出した行動パラメータに基づき機器20の制御を行う。
 図8は、本発明の第三実施形態の無人システムによる制御を説明する第2の図である。
 図8に示す制御装置10Bにおいても、図7で説明した処理と同様の流れで機器20の制御を行う。しかし、図8に示す制御装置10Bは、行動2のパラメータ算出部13B2、行動nのパラメータ算出部13Bnを備えていない。図8の構成では、行動選択部12が「行動2」を選択した場合、行動2の行動指示部14B2が、所定のルールに基づいて「行動2」用の制御信号を生成し、機器20を制御する。行動選択部12が「行動n」を選択した場合、行動nの行動指示部14Bnが、所定のルールに基づいて「行動n」用の制御信号を生成し、機器20を制御する。
 本実施形態によれば、複数の行動のそれぞれについて、最適な行動パラメータを強化学習により獲得することができる。全ての行動について、行動パラメータの最適な値を学習する必要がない場合、図8のように必要な行動についてのみ行動iのパラメータ算出部13Biを用意することができる。これにより、制御装置10Bの処理負荷を軽減し、必要なコンピュータリソースを節約しつつ、最適な行動パラメータの獲得によって機器20の挙動を改善することができる。
<第四実施形態>
 第四実施形態では、第一実施形態~第三実施形態における行動パラメータ算出のための学習モデルの更新処理の一例を提供する。以下、第二実施形態の構成を例として、図9を用いてパラメータ算出部13をDDPGにより実現する方法を説明する。
 図9は、本発明の第四実施形態の制御装置による学習モデルの更新処理の一例を示すフローチャートである。
 まず、行動選択部12が状態情報(環境情報、推定状態情報)に応じた行動の枠組みを選択し、算出部131が、その枠組みにおける行動a(k)を状態情報と学習モデル(アクターのNN)に基づいて算出する(ステップS11)。具体的には、算出部131が以下の式(1)によりa(k)を算出する。
 a(k)=μ(s(k)|w)+n(k)  ・・・(1)
 ここで、μは、現在時刻kにおける状態ベクトルs(k)を入力とし、重みwを持つ多層ニューラルネットワークである。活性化関数には、例えば、ReLUを適用する。μ(s(k)|w)は、確定的な値であるが,右辺第二項n(k)(例えば、平均0、分散Σの白色ガウス雑音)の影響により、行動a(k)は、ばらつきを持った値となる。算出部131は、行動a(k)(行動パラメータ)を行動指示部14へ出力する。
 次にパラメータ算出部13は、学習モードか否かの判定を行う(ステップS12)。例えば、ユーザが制御装置10Aに学習モードか否かの設定を行う。その設定に基づいて、パラメータ算出部13は、ステップS12の判定を行う。学習モードの場合(ステップS12;Yes)、行動指示部14は、行動a(k)に基づき機器20を制御する。つまり行動a(k)を実行し、環境に変化を起こす。次にセンサ30が実環境を計測し、センサ情報取得部11が環境情報を取得する。学習部132は、環境情報や状態推定部16による推定状態情報に基づいて報酬r(k)を獲得する(ステップS13)。報酬r(k)は、時刻kにおける状態s(k)に対して設定される値である。定性的には、望ましい状態s(k)に対しては、例えば正の報酬を設定し、望ましくない状態s(k)に対しては負の報酬を設定する。
 次にセンサ30が実環境を計測し、センサ情報取得部11が次の時刻k+1の環境情報(状態ベクトルs(k+1))を取得する。または、状態推定部16が時刻k+1における状態s(k+1)を推定する。パラメータ算出部13は、状態s(k+1)等を、変数Rに保存する(ステップS14)。より具体的には、学習部132は、状態s(k)と行動a(k)と報酬r(k)と状態s(k+1)とを組みとするデータセットを、過去の情報格納用変数Rに追加して、記憶部15に記録する。
 次に学習部132は、変数RからランダムにP個のデータを抽出する(ステップS15)。このように抽出したP個のデータセット(s(i),a(i),r(i),s(i+1))、i=1,2,・・・,Pをミニバッチとよぶ。
 次に学習部132は、以下の式(2)により価値y(i)を算出する(ステップS16)。
y(i)=r(i)+ 
    γQ´(s(i+1),μ´(s(i+1)|w´)|w´),
            i=1,2,・・・,P      ・・・(2)
ここで、Qは状態価値関数であり、上式(2)の通り状態sと行動μを入力とする。DDPGでは行動と同様に状態価値もニューラルネットワークでモデル化して、重みwを更新して推定する。上式のQ´はターゲットネットワークとよばれるニューラルネットワークであり、w≠w´である。同様にμ´は行動のニューラルネットワークμのターゲットネットワークであり、w≠w´である。QはクリティックのNN、μはアクターのNNである。
 次に学習部132は、クリティックのNNを更新する(ステップS17)。具体的には、学習部132は、以下の式(3)で表される損失関数を最小化するように状態価値関数の重みwを更新する。この最小化は、勾配降下法やAdamなどの公知の方法を用いて実行することができる。
Figure JPOXMLDOC01-appb-M000001
 次に学習部132は、アクターのNNを更新する(ステップS18)。具体的には、学習部132は、上述の方針で更新したQを評価指標とし、勾配降下などの公知の方法を用いて以下の式(4)によってμの重みwを更新する。
Figure JPOXMLDOC01-appb-M000002
 次に学習部132は、ターゲットネットワークを更新する(ステップS19)。具体的には、学習部132は、ターゲットネットワークを以下の式(5)により更新する。
 w´=τw+(1-τ)w´、w´=τw+(1-τ)w´
                           ・・・(5)
 現在のアクターのNNの重みw、クリティックのNNの重みwとの荷重平均により更新することで、重みの急激な変化を抑制する。これにより、アクターのNNの重み、クリティックのNNの重みが、それぞれw´、w´に更新される。
 ステップS12で学習モードではないと判定した場合(ステップS12;No)、行動指示部14は、行動a(k)に基づき機器20を制御する。センサ情報取得部11は、センサ30が計測した環境情報を取得し、状態推定部16は次の推定状態情報(時刻k+1における状態s(k+1))を推定する(ステップS20)。
 次に機器20の制御を終了するか否かを判定し(ステップS21)、制御を終了する場合(ステップS21;Yes)、本フローチャートを終了する。終了しない場合(ステップS21;No)、ステップS11からの処理を繰り返す。
 本実施形態によれば、従来はIF-THENルールに基づいて決定されることが多い行動パラメータを状態に応じて最適な値とすることができる。その為、従来のルールベースよりも無人システムの性能を改善できる。行動パラメータを決定する学習モデルの構築に深層学習を用いることにより、学習すべきパラメータを人が設計する必要がなく自動的に獲得でき、さらに特に人が設計するのが困難な複雑なパラメータ、人が気付くことができないパラメータを獲得し、より精度の高い学習モデルを得ることができる。
<第五実施形態>
 次に第一実施形態~第四実施形態で説明した行動パラメータの算出および学習方法を、無人航空機(AAV:Automated Aerial Vehicle)の自動運転に適用した具体例を示す。
 図10は、本発明の第五実施形態による無人システムの一例を示す図である。
 AAV20´は、センサ30を備えている。センサ30は、例えば、障害物の検知に用いるカメラやレーザレーダ、計画した経路を所望の速度で移動するために必要なGPS、ジャイロセンサ、大気圧センサ、加速度センサなどである。制御装置10Bではセンサ情報取得部11が、カメラやレーザレーダが計測した環境情報を取得する。センサ情報取得部11は、例えば、カメラが撮影した画像を解析して、画像に含まれる障害物の存在を検出する機能や、レーザを照射してから反射光を受光するまでの時間を計測する機能を有していてもよい。
 例えば、状態推定部16は、GPSによる位置情報に含まれる誤差の平滑化や、計測のインターバルにおける位置情報の推定のために、カルマンフィルタによってAAV20´の位置情報を推定してもよい。これにより、より正確な状態を反映させた学習モデルの構築、より精度の高い学習モデルに基づく行動パラメータの算出を行うことができる。あるいは、GPS信号が受信できない環境の場合、状態推定部16は、レーザレーダやカメラが計測した情報を用いて、SLAM(Simultaneous Localization and Mapping)等の方法により自己位置を推定してもよい。これにより、制御装置10Bは、GPSによる自己位置の測位ができない環境でも、AAV20´を制御することができる。
 行動選択部12は、環境情報に基づいて、「直進」、「旋回」、「ホバリング」などの行動の枠組みを選択する。例えば、レーダの検出結果が障害物の存在を示している場合、行動選択部12は、その障害物を回避すべく「旋回」を選択する。その場合、パラメータ算出部13Bは、例えば、行動パラメータ「旋回半径」を算出する。行動指示部14Bは、パラメータ算出部13が算出した旋回半径で旋回するための制御信号(例えば、旋回する側の前翼(プロペラ)の回転数をどの程度上昇させ、逆側の前翼の回転数をどの程度低下させるかなど)を生成し、AAV20´に出力する。
 パラメータ算出部13Bが算出する行動パラメータは、行動選択部12が選択する行動の枠組みの中の一部に関する行動パラメータであってよい。例えば、AAV20´の旋回において行動パラメータ「旋回半径」についてはパラメータ算出部13Bが決定するが、行動パラメータ「旋回開始タイミング」についてはルールベースで決定しても良い。次に例を挙げて説明するようにパラメータ算出部13Bが算出するのは、行動選択部12が選択する行動の枠組みの中の行動パラメータについての補正量であってもよい。
 制御装置10Bは、「旋回」についてのみパラメータ算出部13Bを備え、「直進」、「ホバリング」などの他の行動については、行動指示部14Bがルールベースで所定の動作内容を指示する。制御装置10Bは、AAV20´に内蔵されていてもよい。
 図11は、本発明の第五実施形態による無人システムの制御方法の一例を示すフローチャートである。
 具体例として、AAV20´を、障害物を行動「旋回」によって回避しながら目標地点まで自動飛行させる制御を考える。制御装置10Bは、AAV20´の自動運転に必要な種々の行動を行う機能を有しているが、旋回以外の説明を省略する。
 まず、制御装置10Bに目標地点の位置情報を入力し、自動運転を開始する(ステップS31)。すると、制御装置10Bは、始点から終点までのAAV20´の飛行経路を生成する(ステップS32)。その後、制御装置10Bは、AAV20´の飛行を開始する。センサ情報取得部11は、例えば、AAV20´が備えるGPS受信機からAAV20´の位置情報を取得する。行動選択部12は、AAV20´が終点に到着したかどうかを判定する(ステップS33)。終点に到着した場合(ステップS33;Yes)、行動選択部12は、自動運転終了を選択し、行動指示部14Bが自動運転を終了する(ステップS34)。
 終点に到着していない場合(ステップS33;No)、センサ情報取得部11が、カメラ、レーザレーダ、GPS、ジャイロセンサ、大気圧センサ、加速度センサなどのセンサ30から環境情報を取得する(ステップS35)。行動選択部12は、カメラやレーザレーダが計測した環境情報や状態推定部16による推定状態情報に基づいて、経路上に障害物が存在するかどうかを判定する(ステップS36)。障害物が存在しない場合(ステップS36;No)、行動選択部12は、経路追従制御により、例えば、行動の枠組み「直進」を選択する。すると、行動指示部14B(「直進」についてはパラメータ算出部13Biが用意されていない)が、AAV20´をそのまま生成した経路に従って直進させる。例えば、行動指示部14Bは、GPS、ジャイロセンサ、大気圧センサ、加速度センサなどが計測した環境情報などを用いて、所定の高度、所定の姿勢、所定の飛行速度を維持しつつ、ステップS32で生成した経路に追従して飛行するような制御信号を生成し、AAV20´を制御する(ステップS38)。
 障害物が存在する場合(ステップS36;Yes)、行動選択部12は、行動の枠組み「旋回」を選択する。すると、パラメータ算出部13Bが回避経路を生成する(ステップS37)。回避経路の生成では、旋回半径をAAV20´と障害物との距離に応じて変化させ、距離が近ければ近いほど急旋回(旋回半径が小さい)で回避させるとする。ここで、図12を用いて旋回半径の決定処理について説明する。
 図12は、本発明の第五実施形態による行動パラメータの決定処理を説明する図である。障害物との距離に対する旋回半径の初期値を、図12の初期テーブルのグラフ「初期テーブル」に示す。ただし、この初期値は、現在の運転において必ずしも適切な値であるとは限らない。そこで、パラメータ算出部13Bによって、実際に自動運転を行う中で学習を繰り返し、その結果に応じて初期テーブルの旋回半径を補正することを考える。補正後のAAV20´と障害物の距離と旋回半径との関係を、グラフ「学習後のテーブル」に示す。このときの補正量をa(k)=μ(s(k)|w)+n(k)として設定し、旋回半径f(k)=f_0(s(k))+a(k)として回避経路を生成して自動運転を行う。
ここで、f_0(s(k))はグラフ「初期テーブル」である。これに対して、第四実施形態で説明した方法で、行動a(k)(この例では旋回半径の補正量)を、例えば、障害物を回避した後になるべく早く、無理なく当初生成した経路に戻ることができたときの旋回半径に良い報酬を与える等の報酬の設定を行って、初期テーブルの補正量の学習モデルを更新する。補正後の旋回半径がグラフ「学習後のテーブル」である。パラメータ算出部13Bは、このようにして学習した学習後の旋回半径を採用して、回避経路を生成する。行動指示部14Bは、この回避経路に沿ってAAV20´を飛行させる。
 第五実施形態で例示したようにある行動パラメータ(旋回半径)について。初期テーブルを用意し、補正量を学習するように構成することで、初期値を与えない場合と比べ、短時間で学習を収束させられる可能性がある。
 上記の図11の説明では、「旋回」についてのみ行動パラメータを算出こととしたが、「直進」や「ホバリング」など他の全ての行動についても行動パラメータを算出する構成としてもよい(図7)。AAV20´の自動運転に第一実施形態の無人システム1や、第二実施形態の無人システム1Aを適用することができることは勿論である。
 図13は、本発明の第一実施形態~第五実施形態における制御装置のハードウェア構成の一例を示す図である。
 コンピュータ900は、CPU(Central Processing Unit)901、主記憶装置902、補助記憶装置903、入出力インタフェース904、通信インタフェース905を備えるコンピュータ装置である。コンピュータ900は、CPU901に代えて、MPU(Micro Processing Unit)やGPU(Graphics Processing Unit)などのプロセッサを備えていてもよい。上述の制御装置10、10A、10Bは、コンピュータ900に実装される。そして、上述した各処理部の動作は、プログラムの形式で補助記憶装置903に記憶されている。CPU901は、プログラムを補助記憶装置903から読み出して主記憶装置902に展開し、当該プログラムに従って上記処理を実行する。CPU901は、プログラムに従って、記憶部15に対応する記憶領域を主記憶装置902に確保する。CPU901は、プログラムに従って、処理中のデータを記憶する記憶領域を補助記憶装置903に確保する。
 少なくとも1つの実施形態において、補助記憶装置903は、一時的でない有形の媒体の一例である。一時的でない有形の媒体の他の例としては、入出力インタフェース904を介して接続される磁気ディスク、光磁気ディスク、CD-ROM、DVD-ROM、半導体メモリ等が挙げられる。このプログラムが通信回線によってコンピュータ900に配信される場合、配信を受けたコンピュータ900が当該プログラムを主記憶装置902に展開し、上記処理を実行しても良い。当該プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、当該プログラムは、前述した機能を補助記憶装置903に既に記憶されている他のプログラムとの組み合わせで実現するもの、いわゆる差分ファイル(差分プログラム)であっても良い。
 制御装置10等の機能の全て又は一部は、マイコン、LSI(Large Scale Integration)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、FPGA(Field-Programmable Gate Array)等のハードウェアを用いて実現されてもよい。
 その他、本発明の趣旨を逸脱しない範囲で、上記した実施の形態における構成要素を周知の構成要素に置き換えることは適宜可能である。この発明の技術範囲は上記の実施形態に限られるものではなく、本発明の趣旨を逸脱しない範囲において種々の変更を加えることが可能である。
 切替部17は第1の切替部、第2の切替部の一例である。行動指示部14Bi(1≦i≦n)のうち対応するパラメータ算出部13Biが存在しないものは動作制御部の一例である。環境情報と推定状態情報は状態情報の一例である。行動選択部12は動作選択部の一例である。パラメータ算出部13、13Bは動作パラメータ算出部の一例である。行動指示部14、14Bは動作指示部の一例である。
 第一実施形態~第四実施形態の制御装置の適用先は、航空機、車両、船、鉄道などの移動体に関する無人システムに限定されない。例えば、第一実施形態~第四実施形態の制御装置は、プラント等の機器(タービン、ボイラー、圧縮機など)の制御に用いることができる。これらの機器の制御においても、制御(意思決定)の予測可能性・理解容易性と、状況への制御の適応性、最適性、性能向上を両立させることができる。
 上記の制御装置10における行動パラメータ算出の基本的な考え方は、実際の機器の制御を伴わなくとも、意思決定システムに用いることができる。例えば、意思決定システムは、意思決定に必要なパラメータを入力し、ルールベースで意思決定の枠組みを決定し、その枠組みの中の可変パラメータについては、強化学習により構築された学習モデルによって決定する。意思決定システムは、このようにして決定された意思決定の結果を評価し、学習モデルを更新する。例えば、意思決定システムとして、将棋を指すコンピュータ装置へ適用した場合であれば、センサ情報取得部11に相当する機能が将棋盤の駒の配置情報を取得し、行動選択部12に相当する機能が歩・飛車などの動かす駒の種類を決定し,行動指示部14に相当する機能は,その駒を何マス動かすかを数式等によって具体的に決める。パラメータ算出部13に相当する機能は、その数式等をより高精度に調整する。
 上記した制御装置、無人システム、制御方法及びプログラムによれば、制御の理解容易性と性能向上を両立することができる。
 1   無人システム
10、10A、10B   制御装置
11   センサ情報取得部
12   行動選択部
13、13B1、13B2、13Bm   パラメータ算出部
14、14B1、14B2、14Bn   行動指示部
15   記憶部
16   状態推定部
17   切替部
131、131B1、131B2、131Bm   算出部
132、132B1、132B2、132Bm   学習部
20   機器
30   センサ

Claims (10)

  1.  機器の状態または機器が動作する環境の状態を示す状態情報に基づいてルールベースで機器の動作の枠組みを決定する動作選択部と、
     前記状態情報と、その状態情報に基づく前記機器の動作およびその動作に対する評価に基づいて構築された学習モデルと、に基づいて、決定された前記動作の枠組みにおける前記動作の内容を定めるパラメータを算出する動作パラメータ算出部と、
     前記動作を実行するよう前記機器に指示する動作指示部と、
     を備える制御装置。
  2.  前記動作パラメータ算出部は、
     前記状態情報と前記学習モデルとに基づいて、前記動作の内容を定めるパラメータを算出する算出部と、
     前記算出部が算出した前記パラメータの値に基づく前記動作を評価し、その評価に基づいて前記パラメータを最適化する前記学習モデルを更新する学習部と、
     を備える請求項1に記載の制御装置。
  3.  前記学習モデルは、アクターのニューラルネットワークとクリティックのニューラルネットワークを備え、
     前記学習部が、DDPG(Deep Deterministic Policy Gradient)により、前記アクターのニューラルネットワークと前記クリティックのニューラルネットワークを更新する、
     請求項2に記載の制御装置。
  4.  前記動作パラメータ算出部は、前記状態情報と前記学習モデルとに基づいて、前記動作の内容を定めるパラメータの補正量を算出する、
     請求項1から請求項3の何れか1項に記載の制御装置。
  5.  センサが計測した情報に基づいて前記状態情報を推定する状態推定部、をさらに備える、
     請求項1から請求項4の何れか1項に記載の制御装置。
  6.  前記動作パラメータ算出部および前記動作指示部が前記動作の枠組み別に設けられ、
     前記動作選択部が選択する前記動作の枠組みに応じて、選択された前記動作の枠組みに対応する前記動作パラメータ算出部および前記動作指示部に切り替える第1の切替部、
     をさらに備える請求項1から請求項5の何れか1項に記載の制御装置。
  7.  前記動作パラメータ算出部および前記動作指示部が、複数の前記動作の枠組みのうち一部の前記動作の枠組み別に設けられ、
     複数の前記動作の枠組みのうち残りの前記動作の枠組みについて、前記動作の枠組み別に所定の動作内容を指示する動作制御部と、
     前記動作選択部が選択する前記動作の枠組みに応じて、前記動作の枠組みに対応する前記動作パラメータ算出部および前記動作指示部、または、前記動作の枠組みに対応する前記動作制御部を切り替える第2の切替部と、
     をさらに備える請求項1から請求項5の何れか1項に記載の制御装置。
  8.  請求項1から請求項7の何れか1項に記載の制御装置と、
     前記制御装置が制御する機器と、を含む無人システム。
  9.  機器の状態または機器が動作する環境の状態を示す状態情報に基づいてルールベースで機器の動作の枠組みを決定するステップと、
     前記状態情報と、その状態情報に基づく前記機器の動作およびその動作に対する評価に基づいて構築された学習モデルと、に基づいて、決定された前記動作の枠組みにおける前記動作の内容を定めるパラメータを算出するステップと、
     前記動作を実行するよう前記機器に指示するステップと、
     を有する制御方法。
  10.  コンピュータを、
     機器の状態または機器が動作する環境の状態を示す状態情報に基づいてルールベースで機器の動作の枠組みを決定する手段、
     前記状態情報と、その状態情報に基づく前記機器の動作およびその動作に対する評価に基づいて構築された学習モデルと、に基づいて、決定された前記動作の枠組みにおける前記動作の内容を定めるパラメータを算出する手段、
     前記動作を実行するよう前記機器に指示する手段、
     として機能させるためのプログラム。
PCT/JP2018/040865 2017-12-08 2018-11-02 制御装置、無人システム、制御方法及びプログラム WO2019111608A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP18884859.2A EP3678060A4 (en) 2017-12-08 2018-11-02 CONTROL DEVICE, UNMANNED SYSTEM, CONTROL PROCEDURE AND PROGRAM
US16/652,506 US20200285202A1 (en) 2017-12-08 2018-11-02 Control device, unmanned system, control method, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017-236475 2017-12-08
JP2017236475A JP6884685B2 (ja) 2017-12-08 2017-12-08 制御装置、無人システム、制御方法及びプログラム

Publications (1)

Publication Number Publication Date
WO2019111608A1 true WO2019111608A1 (ja) 2019-06-13

Family

ID=66750486

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/040865 WO2019111608A1 (ja) 2017-12-08 2018-11-02 制御装置、無人システム、制御方法及びプログラム

Country Status (4)

Country Link
US (1) US20200285202A1 (ja)
EP (1) EP3678060A4 (ja)
JP (1) JP6884685B2 (ja)
WO (1) WO2019111608A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11676064B2 (en) * 2019-08-16 2023-06-13 Mitsubishi Electric Research Laboratories, Inc. Constraint adaptor for reinforcement learning control
WO2021138420A1 (en) * 2019-12-31 2021-07-08 Zipline International Inc. Acoustic based detection and avoidance for aircraft
JP7406656B2 (ja) * 2019-12-31 2023-12-27 ジップライン インターナショナル インク. 航空機の相関動作及び検知
US20220308598A1 (en) * 2020-04-30 2022-09-29 Rakuten Group, Inc. Learning device, information processing device, and learned control model
WO2021220467A1 (ja) * 2020-04-30 2021-11-04 楽天株式会社 学習装置、情報処理装置、及び学習済の制御モデル
JP7379403B2 (ja) 2021-03-19 2023-11-14 株式会社 日立産業制御ソリューションズ 動作改善支援装置、プログラムおよび動作改善支援方法
CN113433900B (zh) * 2021-06-16 2022-02-11 深圳市佳运通电子有限公司 一种油田站场无人值守智能集控方法和系统
KR102644038B1 (ko) * 2021-11-19 2024-03-05 한화오션 주식회사 선박 항해 경로 설정 시스템
JP2024046708A (ja) 2022-09-23 2024-04-04 株式会社Subaru 航空機制御システム、航空機制御方法、航空機制御プログラム及び航空機

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05225166A (ja) * 1992-02-14 1993-09-03 Hitachi Zosen Corp ニューラルネットワークの知識学習方法
WO2001010763A1 (fr) * 1999-08-03 2001-02-15 Mitsubishi Denki Kabushiki Kaisha Appareil de commande de groupe d'ascenseurs
JP2004294360A (ja) * 2003-03-28 2004-10-21 Hitachi High-Technologies Corp 欠陥分類方法及び装置
JP2017030137A (ja) 2015-07-31 2017-02-09 ファナック株式会社 人の行動パターンを学習する機械学習装置、ロボット制御装置、ロボットシステム、および機械学習方法
JP6224811B1 (ja) * 2016-12-07 2017-11-01 たけおかラボ株式会社 ルールセットを選択可能な推論エンジンを有するプログラム、装置及び方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5649066A (en) * 1992-01-03 1997-07-15 The Florida State University For And On Behalf Of The Florida Board Of Regents Method and apparatus for refinement of learning in expert networks
US10065654B2 (en) * 2016-07-08 2018-09-04 Toyota Motor Engineering & Manufacturing North America, Inc. Online learning and vehicle control method based on reinforcement learning without active exploration

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05225166A (ja) * 1992-02-14 1993-09-03 Hitachi Zosen Corp ニューラルネットワークの知識学習方法
WO2001010763A1 (fr) * 1999-08-03 2001-02-15 Mitsubishi Denki Kabushiki Kaisha Appareil de commande de groupe d'ascenseurs
JP2004294360A (ja) * 2003-03-28 2004-10-21 Hitachi High-Technologies Corp 欠陥分類方法及び装置
JP2017030137A (ja) 2015-07-31 2017-02-09 ファナック株式会社 人の行動パターンを学習する機械学習装置、ロボット制御装置、ロボットシステム、および機械学習方法
JP6224811B1 (ja) * 2016-12-07 2017-11-01 たけおかラボ株式会社 ルールセットを選択可能な推論エンジンを有するプログラム、装置及び方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
See also references of EP3678060A4
T.P.LILLICRAPJ.J.HUNTA. PRITZELN. HEESST. EREZY. TASSAD. SILVER: "Continuous Control with Deep Reinforcement Learning", 2015, CORNELL UNIVERSITY LIBRARY

Also Published As

Publication number Publication date
EP3678060A1 (en) 2020-07-08
JP6884685B2 (ja) 2021-06-09
EP3678060A4 (en) 2021-06-16
JP2019105891A (ja) 2019-06-27
US20200285202A1 (en) 2020-09-10

Similar Documents

Publication Publication Date Title
WO2019111608A1 (ja) 制御装置、無人システム、制御方法及びプログラム
Woo et al. Deep reinforcement learning-based controller for path following of an unmanned surface vehicle
Akametalu et al. Reachability-based safe learning with Gaussian processes
Shin et al. Nonlinear model predictive formation flight
KR101813697B1 (ko) 딥 러닝을 이용한 무인기 비행 제어 시스템 및 방법
Sampedro et al. Laser-based reactive navigation for multirotor aerial robots using deep reinforcement learning
WO2017091629A1 (en) Reinforcement learning using confidence scores
KR102303126B1 (ko) 사용자 선호에 따른 강화학습 기반 자율주행 최적화 방법 및 시스템
Dobrevski et al. Adaptive dynamic window approach for local navigation
Engedy et al. Artificial neural network based mobile robot navigation
Kersandt Deep reinforcement learning as control method for autonomous uavs
KR20200048808A (ko) 로봇의 행동을 제어하는 정책을 갱신하는 방법 및 그 방법을 수행하는 전자 장치
Srikanthakumar et al. Optimization-based safety analysis of obstacle avoidance systems for unmanned aerial vehicles
Ariza Ramirez et al. Exploration of the applicability of probabilistic inference for learning control in underactuated autonomous underwater vehicles
Suwoyo et al. Maximum likelihood estimation-assisted ASVSF through state covariance-based 2D SLAM algorithm
US20230025154A1 (en) Dual agent reinforcement learning based system for autonomous operation of aircraft
Chronis et al. Dynamic navigation in unconstrained environments using reinforcement learning algorithms
Tian et al. Deep reinforcement learning for shared control of mobile robots
Saito et al. Performance evaluation of a DQN-based autonomous aerial vehicle mobility control method in an indoor single-path environment with a staircase
KR102670927B1 (ko) 지능형 자율비행을 위한 액터-크리틱 심층강화학습 기반 목표점 추정 및 충돌회피 기법을 이용하는 자율 비행 플랫폼
Dujari et al. Adaptive Mayfly Algorithm for UAV Path Planning and Obstacle Avoidance in Indoor Environment
JP7459238B2 (ja) ユーザ選好による強化学習基盤の自律走行最適化方法およびシステム
Kumar et al. Comparative evaluation of path planning algorithms in a simulated disaster environment
Zhu Motion Planning Framework for Unmanned Aerial Vehicles in Dynamic Environments
US20240147412A1 (en) Integrated monitoring method and system for operation area

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: 18884859

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2018884859

Country of ref document: EP

Effective date: 20200403

NENP Non-entry into the national phase

Ref country code: DE