WO2020202316A1 - モデル予測制御装置、モデル予測制御プログラム、モデル予測制御システムおよびモデル予測制御方法 - Google Patents

モデル予測制御装置、モデル予測制御プログラム、モデル予測制御システムおよびモデル予測制御方法 Download PDF

Info

Publication number
WO2020202316A1
WO2020202316A1 PCT/JP2019/014180 JP2019014180W WO2020202316A1 WO 2020202316 A1 WO2020202316 A1 WO 2020202316A1 JP 2019014180 W JP2019014180 W JP 2019014180W WO 2020202316 A1 WO2020202316 A1 WO 2020202316A1
Authority
WO
WIPO (PCT)
Prior art keywords
time series
state
state quantity
model
prediction
Prior art date
Application number
PCT/JP2019/014180
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 CN201980094472.9A priority Critical patent/CN113614652A/zh
Priority to JP2021511696A priority patent/JP6929488B2/ja
Priority to DE112019006928.4T priority patent/DE112019006928T5/de
Priority to PCT/JP2019/014180 priority patent/WO2020202316A1/ja
Publication of WO2020202316A1 publication Critical patent/WO2020202316A1/ja
Priority to US17/392,557 priority patent/US20210365033A1/en

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
    • 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/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/048Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators using a predictor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • 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/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • 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/08Learning methods
    • 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/32Operator till task planning
    • G05B2219/32335Use of ann, neural network
    • 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/33Director till display
    • G05B2219/33027Artificial neural network controller

Definitions

  • the present invention relates to model predictive control.
  • Model predictive control that controls a controlled object using a predictive model is known.
  • model predictive control can be used for automatic driving control of a vehicle.
  • Patent Document 1 discloses a model prediction control system that automatically changes a model according to an external environment.
  • a model corresponding to the weather at the time of prediction is selected from the models prepared for each weather, the selected model is corrected based on the outside air temperature, and model prediction control is performed using the corrected model.
  • Patent Document 1 cannot cope with an unexpected external environment. For example, even if a sunny model, a cloudy model, a rain model, and a snow model are prepared, it is not possible to select an appropriate model for special weather such as a typhoon. Further, even if a model suitable for the weather at the time of prediction can be selected, if the outside air temperature at the time of prediction is a temperature outside the expected range, the model cannot be appropriately corrected. As a result, the accuracy of model prediction control is reduced.
  • An object of the present invention is to make it possible to maintain the accuracy of model prediction control even in an unexpected environment.
  • the model prediction control device of the present invention An operation amount time series generator that generates an operation amount time series for the actuator in order to change the state of the control object based on the measurement state amount output from the state sensor that measures the state of the controlled object.
  • a prediction model unit that generates a state quantity prediction time series, which is a state quantity time series of the prediction of the controlled object, by calculating a prediction model by inputting the measurement state quantity and the operation quantity time series.
  • a neural network that corrects the state quantity prediction time series by inputting the measurement environment quantity output from the environment sensor that measures the operating environment of the controlled object and the state quantity prediction time series and calculating the neural network.
  • Network part and A state quantity evaluation unit that generates an evaluation result for the corrected state quantity time series by inputting a corrected state quantity prediction time series and calculating an evaluation function. It is provided with an operation amount determining unit that outputs the operation amount at the beginning of the operation amount time series to the actuator when the evaluation result satisfies an appropriate criterion.
  • the state quantity prediction time series is corrected by calculating the neural network by inputting the state quantity prediction time series obtained by the prediction model and the measurement environment quantity output from the environment sensor. Therefore, the state quantity prediction time series can be corrected even in an unexpected environment. Therefore, it is possible to maintain the accuracy of model prediction control even in an unexpected environment.
  • FIG. 1 The block diagram of the model prediction control system 100 in Embodiment 1.
  • FIG. 1 The block diagram of the model prediction control device 200 in Embodiment 1.
  • FIG. The flowchart of the model prediction control method in Embodiment 1. The figure which shows the neural network 231 in Embodiment 1.
  • FIG. The block diagram of the model prediction control system 190 which does not use a neural network 231.
  • the block diagram of the model predictive control system 190 used for the automatic driving control of a vehicle.
  • FIG. The schematic diagram of the learning method in Embodiment 2. A claw chart of the learning method according to the second embodiment.
  • the flowchart of the model prediction control method in Embodiment 3. The figure which shows the neural network 411 in Embodiment 3.
  • Embodiment 1 The model prediction control system 100 using the neural network will be described with reference to FIGS. 1 to 10.
  • the model prediction control system 100 is a system for controlling a control target by model prediction control (MPC). Model prediction control will be described later.
  • the model prediction control system 100 can be used to realize automatic driving of a vehicle.
  • the model prediction control system 100 includes a state sensor group, an environment sensor group, an actuator group, and a model prediction control device 200.
  • the state sensor group is one or more state sensors 101.
  • the state sensor 101 is a sensor for measuring the state of the controlled object.
  • the control target is a vehicle
  • the state sensor 101 is a speed sensor or a position sensor.
  • the speed sensor measures the speed of the vehicle.
  • the position sensor positions the vehicle.
  • the environmental sensor group is one or more environmental sensors 102.
  • the environment sensor 102 is a sensor for measuring the operating environment of the controlled object.
  • the control target is a vehicle
  • the environment sensor 102 is a vehicle weight sensor or an attitude sensor.
  • the vehicle weight sensor measures the weight of the vehicle (including the weight of the occupants and luggage).
  • the posture sensor measures the posture (tilt) of the vehicle. The posture of the vehicle corresponds to the inclination of the road surface.
  • the actuator group is one or more actuators 111.
  • the actuator 111 changes the state of the controlled object.
  • the controlled object is a vehicle
  • the actuator 111 is a steering wheel, a motor, or a brake.
  • the model prediction control device 200 is a device for controlling a control target by model prediction control (MPC). Model prediction control will be described later.
  • the model prediction control device 200 performs automatic driving control for the vehicle.
  • the model prediction control device 200 is characterized by including a neural network unit 230.
  • the configuration of the model prediction control device 200 will be described with reference to FIG.
  • the model prediction control device 200 is a computer including hardware such as a processor 201, a memory 202, an auxiliary storage device 203, an input / output interface 204, and a communication device 205. These hardware are connected to each other via signal lines.
  • the processor 201 is an IC that performs arithmetic processing and controls other hardware.
  • processor 201 is a CPU, DSP or GPU.
  • IC is an abbreviation for Integrated Circuit.
  • CPU is an abbreviation for Central Processing Unit.
  • DSP is an abbreviation for Digital Signal Processor.
  • GPU is an abbreviation for Graphics Processing Unit.
  • the memory 202 is a volatile storage device.
  • the memory 202 is also referred to as a main storage device or a main memory.
  • the memory 202 is a RAM.
  • the data stored in the memory 202 is stored in the auxiliary storage device 203 as needed.
  • RAM is an abbreviation for Random Access Memory.
  • the auxiliary storage device 203 is a non-volatile storage device.
  • the auxiliary storage device 203 is a ROM, HDD, or flash memory.
  • the data stored in the auxiliary storage device 203 is loaded into the memory 202 as needed.
  • ROM is an abbreviation for Read Only Memory.
  • HDD is an abbreviation for Hard Disk Drive.
  • the input / output interface 204 is a port to which an input device and an output device are connected.
  • the input / output interface 204 is connected to a state sensor group, an environment sensor group, and an actuator group.
  • USB is an abbreviation for Universal Serial Bus.
  • the communication device 205 is a receiver and a transmitter.
  • the communication device 205 is a communication chip or NIC.
  • NIC is an abbreviation for Network Interface Card.
  • the model prediction control device 200 includes elements such as an operation path generation unit 210, a prediction model unit 220, a neural network unit 230, and a state quantity evaluation unit 240. These elements are realized in software.
  • the operation path generation unit 210 includes an operation amount time series generation unit 211 and an operation amount determination unit 212.
  • the auxiliary storage device 203 stores a model prediction control device program for operating the computer as an operation path generation unit 210, a prediction model unit 220, a neural network unit 230, and a state quantity evaluation unit 240.
  • the model predictive control program is loaded into memory 202 and executed by processor 201.
  • the OS is further stored in the auxiliary storage device 203. At least a portion of the OS is loaded into memory 202 and executed by processor 201.
  • the processor 201 executes the model prediction control program while executing the OS.
  • OS is an abbreviation for Operating System.
  • the input / output data of the model prediction control program is stored in the storage unit 290.
  • the memory 202 functions as a storage unit 290.
  • a storage device such as an auxiliary storage device 203, a register in the processor 201, and a cache memory in the processor 201 may function as a storage unit 290 instead of the memory 202 or together with the memory 202.
  • the model prediction control device 200 may include a plurality of processors that replace the processor 201.
  • the plurality of processors share the role of the processor 201.
  • the model prediction control program can record (store) on a non-volatile recording medium such as an optical disk or a flash memory so that it can be read by a computer.
  • a non-volatile recording medium such as an optical disk or a flash memory
  • Model predictive control is one of the control methods for calculating the optimum control input by using the predictive estimation of the controlled object.
  • Model predictive control uses predictive models and optimizers.
  • the prediction model is a model for imitating a controlled object.
  • the optimizer evaluates the behavior of the prediction model and calculates the optimal control input.
  • the set of the operation path generation unit 210 and the state quantity evaluation unit 240 corresponds to the optimizer.
  • the operation amount u corresponds to the control input u (t) in FIG.
  • a time series xi of the predicted state quantity is generated based on the time series ui of the operation amount candidate, and the quality of the predicted state quantity is judged by the evaluation function. This process is repeated until a highly evaluated predicted state quantity is obtained. Then, the operation amount u1 corresponding to the predicted state quantity with high evaluation is output.
  • the operation of the model prediction control system 100 corresponds to the model prediction control method. Further, the procedure of the model prediction control method by the model prediction control device 200 corresponds to the procedure of the model prediction control program.
  • the model prediction control method will be described with reference to FIG. In order to make the explanation easy to understand, it is assumed that the state sensor group is one state sensor 101, the environment sensor group is one environment sensor 102, and the actuator group is one actuator 111.
  • the state sensor 101 periodically measures the state of the controlled object and outputs the measured state quantity.
  • the measured state quantity is a state quantity obtained by measuring the state of the controlled object.
  • the state quantity represents the state of the controlled object.
  • the environment sensor 102 periodically measures the operating environment of the controlled object and outputs the measured environment amount.
  • the measured environment quantity is the environment quantity obtained by measuring the operating environment of the controlled object.
  • the amount of environment represents the operating environment to be controlled.
  • Steps S110 to S160 are repeatedly executed.
  • step S110 the operation amount time series generation unit 211 receives the measurement state amount output from the state sensor 101.
  • the operation amount time series generation unit 211 generates an operation amount time series based on the received measurement state amount. Then, the operation amount time series generation unit 211 outputs the measurement state amount and the operation amount time series.
  • the operation amount time series is a plurality of operation amounts arranged in chronological order, and corresponds to the time series ui of the operation amount candidates in the conventional model prediction control (see FIG. 4).
  • the method of generating the operation amount time series is the same as the method of generating the operation amount candidate time series ui in the conventional model prediction control.
  • step S120 the prediction model unit 220 receives the measured state quantity and the manipulated variable time series output from the manipulated variable time series generation unit 211.
  • the prediction model unit 220 calculates the prediction model by inputting the measurement state quantity and the operation quantity time series. As a result, the state quantity prediction time series is generated. Then, the prediction model unit 220 outputs a state quantity prediction time series.
  • the state quantity prediction time series is a state quantity time series predicted by the prediction model.
  • the state quantity time series is a plurality of state quantities arranged in chronological order, and corresponds to the time series xi of the predicted state quantity in the conventional model prediction control (see FIG. 4).
  • the method of generating the state quantity prediction time series is the same as the method of generating the time series xi of the predicted state quantity in the conventional model prediction control.
  • step S130 the neural network unit 230 receives the measurement environment amount output from the environment sensor 102 and the state quantity prediction time series output from the prediction model unit 220.
  • the neural network unit 230 calculates the neural network 231 by inputting the measurement environment quantity and the state quantity prediction time series. As a result, the state quantity prediction time series is corrected. Then, the neural network unit 230 outputs the corrected state quantity prediction time series.
  • the neural network 231 will be described later.
  • step S140 the state quantity evaluation unit 240 receives the corrected state quantity prediction time series output from the neural network unit 230.
  • the neural network unit 230 calculates the evaluation function by inputting the corrected state quantity prediction time series. As a result, the state quantity evaluation result is generated. Then, the state quantity evaluation unit 240 outputs the state quantity evaluation result.
  • the state quantity evaluation result is an evaluation result for the corrected state quantity prediction time series, and corresponds to an evaluation result for the time series xi of the predicted state quantity in the conventional model prediction control (see FIG. 4).
  • the method of generating the state quantity evaluation result is the same as the method of generating the evaluation result for the time series xi of the predicted state quantity in the conventional model prediction control.
  • step S150 the operation amount determination unit 212 receives the state quantity evaluation result output from the state quantity evaluation unit 240. Then, the operation amount determination unit 212 determines whether the state quantity evaluation result satisfies the appropriate criterion.
  • the appropriate standard is a predetermined standard. The determination method is the same as the method in the conventional model prediction control.
  • the manipulated variable time series generated in step S110 is the optimum manipulated variable time series, that is, the optimum solution. If the operation amount time series generated in step S110 is the optimum solution, the process proceeds to step S160. If the operation amount time series generated in step S110 is not the optimum solution, the process proceeds to step S110. Then, in step S110, another operation amount time series is generated.
  • step S160 the operation amount determination unit 212 outputs the first operation amount of the operation amount time series (optimal solution) generated in step S110 to the actuator 111.
  • the first operation amount is referred to as "first operation amount”.
  • the actuator 111 receives the first operation amount output from the operation amount determination unit 212. Then, the actuator 111 operates according to the received first operation amount. As a result, the state of the controlled object changes.
  • the neural network 231 will be described with reference to FIG. 6.
  • the neural network 231 is a neural network for the model prediction control system 100.
  • a neural network has an input layer, a hidden layer, and an output layer. Each layer has one or more nodes.
  • the circle represents a node.
  • the nodes between the layers are connected by edges.
  • the dashed line represents the edge.
  • Weights are set for each edge. The value of the node of the later layer is determined based on the value of the node of the previous layer and the weight set on the edge.
  • the state quantity prediction time series (x1, ..., Xk) and the measurement environment quantity (y0) are inputs to the input layer. Then, the corrected state quantity prediction time series (x'1, ..., X'k) becomes the output from the output layer.
  • FIG. 7 shows the configuration of the model prediction control system 190 that does not use the neural network 231.
  • the model predictive control system 190 does not include a group of environmental sensors. Further, the model prediction control device 191 does not have a function corresponding to the neural network unit 230. Therefore, the model prediction control device 191 cannot correct the state quantity prediction time series based on the measurement environment quantity. However, the state sensor group and the actuator group are exposed to the external environment. Therefore, the state amount measured by the state sensor group and the state amount changed by the actuator group do not always match the state amount prediction time series.
  • FIG. 8 shows the configuration of the model predictive control system 190 used for automatic driving control of the vehicle.
  • the model prediction control system 190 includes state sensors such as a vehicle speed sensor and a position sensor.
  • the model prediction control system 190 also includes actuators such as a steering wheel, a motor, and a brake.
  • the model predictive control device 191 determines the steering amount, the motor output, and the brake output based on the speed of the vehicle and the position of the vehicle. If this model prediction control system 190 is generalized, the model prediction control system 190 can be considered as a system that outputs an operation amount based on a state amount.
  • FIG. 9 shows a state of automatic driving control of the vehicle by the model prediction control system 190.
  • the model prediction control device 191 outputs an operation amount u i in order to change the state quantity x i (vehicle speed, vehicle position). As a result, the traveling route of the vehicle is controlled.
  • Acceleration amount delta v of the vehicle can be represented by the formula (1).
  • M represents the weight of the vehicle.
  • represents the inclination of the vehicle.
  • F represents the amount of operation of the propulsion machine.
  • G represents gravitational acceleration.
  • X gain represents a gain correction amount.
  • X sense represents a measured state quantity.
  • X ofs represents an offset correction amount.
  • the gain correction amount X gain and the offset correction amount X ofs depend on the operating environment. Therefore, if the operating environment is not taken into consideration, the accuracy of automatic driving control for the vehicle may deteriorate.
  • the model prediction control device 200 realizes control in consideration of the operating environment by using the neural network 231.
  • various controls can be performed with high accuracy. For example, it is possible to realize highly accurate automatic driving control without performing accurate calibration of the vehicle state sensor.
  • Embodiment 2 The form of learning the weight parameter of the neural network 231 will be described mainly different from the first embodiment with reference to FIGS. 11 to 15.
  • the configuration of the model prediction control system 100 will be described with reference to FIG.
  • the configuration of the model prediction control system 100 is the same as the configuration in the first embodiment except for the configuration of the model prediction control device 200 (see FIG. 1).
  • the model prediction control device 200 further includes a learning unit 250.
  • the learning unit 250 includes a model calculation unit 251 and a weight parameter learning unit 252.
  • the learning unit 250 is realized by software.
  • the model predictive control program further causes the computer to function as the learning unit 250.
  • the model prediction control device 200 further includes a history unit 280.
  • the history unit 280 is realized by a storage device such as a memory 202.
  • the configuration of the history unit 280 will be described with reference to FIG.
  • Data such as the state amount history 281, the environment amount history 282, the operation amount history 283, and the state amount learning history 284 are stored in the history unit 280.
  • the state quantity history 281 is a history of measured state quantities, that is, a set of past measured state quantities.
  • the past measured state quantity is referred to as "past state quantity”.
  • the time series of the past state quantity is referred to as the "state quantity past time series”.
  • the environment quantity history 282 is a history of measurement environment quantities, that is, a set of past measurement environment quantities.
  • the past measurement environment amount is called "past environment amount”.
  • the operation amount history 283 is a history of operation amounts, that is, a set of past operation amounts.
  • the past operation amount is referred to as “past operation amount”.
  • the time series of the past operation amount is referred to as “operation amount past time series”.
  • the state quantity learning history 284 is a history of the state quantity learning time series, that is, a set of past state quantity learning time series.
  • the state quantity learning time series is a state quantity learning time series generated for learning the weight parameters used in the neural network 231.
  • Prediction means a process of generating a state quantity learning time series.
  • the state quantity learning time series corresponds to the state quantity prediction time series. That is, the state quantity learning time series is generated by calculating the same prediction model as the prediction model used to generate the state quantity prediction time series.
  • the operation amount past time series is a time series of the past operation amount.
  • Operation amount As the operation amount u1 in the past tense, the operation amount u0 at the second time (t 2) is used.
  • Operation amount As the operation amount u0 in the past tense, the operation amount u0 at the third time (t 3) is used.
  • “Learning” means the process of learning the weight parameters used in the neural network 231.
  • the state quantity learning time series and the state quantity past time series are used.
  • the learning method by the learning unit 250 will be described with reference to FIG.
  • the learning method is repeated.
  • the learning method is carried out periodically or every time the operation amount is output to the actuator 111.
  • the history unit 280 operates as follows. Every time the measured state quantity is output from the status sensor 101, the history unit 280 stores the output measured state quantity. Each time the measurement environment amount is output from the environment sensor 102, the history unit 280 saves the output measurement environment amount. Each time the operation amount is output from the operation amount determination unit 212 to the actuator 111, the history unit 280 saves the output operation amount.
  • step S210 the model calculation unit 251 acquires the past state quantity and the operation quantity past time series from the history unit 280. Then, the model calculation unit 251 calculates the prediction model by inputting the past state amount and the operation amount past time series.
  • the prediction model calculated by the model calculation unit 251 is the same as the prediction model calculated by the prediction model unit 220. As a result, a state quantity time series corresponding to the state quantity prediction time series is generated.
  • the generated state quantity time series is referred to as a "state quantity learning time series".
  • the model calculation unit 251 stores the state quantity learning time series in the history unit 280.
  • step S220 the weight parameter learning unit 252 acquires the past environment amount, the state amount past time series, and the state amount learning time series from the history unit 280. Then, the weight parameter learning unit 252 performs machine learning on the weight parameter of the neural network 231 by using the state quantity learning time series, the past environment quantity, and the state quantity past time series. Specifically, in the weight parameter learning unit 252, the corrected state quantity learning time series obtained by executing the neural network 231 by inputting the state quantity learning time series and the past environment quantity is the state quantity past time series. The weight parameter of the neural network 231 is calculated so as to match with.
  • step S230 the weight parameter learning unit 252 evaluates the weight parameter (learning result) obtained by machine learning.
  • step S210 the model calculation unit 251 generates a plurality of state quantity learning time series of the learning target period by using the plurality of past state quantities of the learning target period and the plurality of operation quantity past time series of the learning target period. ..
  • step S220 the weight parameter learning unit 252 uses the plurality of state quantity learning time series of the first period, the plurality of past environment quantities of the first period, and the plurality of state quantity past time series of the first period as a neural network.
  • Machine learning is performed on the weight parameters of the network 231.
  • the first period is part of the learning period. For example, the first period is the first half of the learning target period.
  • step S230 the weight parameter learning unit 252 temporarily sets the weight parameter obtained by machine learning in the neural network 231.
  • the weight parameter learning unit 252 calculates the neural network 231 by inputting the plurality of state quantity learning time series of the second period and the plurality of past environment quantities of the second period.
  • a plurality of state quantity correction time series of the second period can be obtained.
  • the second period is part of the learning period.
  • the second period is the latter half of the learning target period.
  • the state quantity correction time series is a state quantity learning time series after correction.
  • the weight parameter learning unit 252 evaluates the learning result based on the amount of error between the plurality of state quantity correction time series in the second period and the plurality of state quantity past time series in the second period. Evaluation of learning results is performed using common indicators in deep learning.
  • step S240 When the evaluation result that an appropriate learning result is obtained is obtained, the process proceeds to step S240.
  • the weight parameter obtained in step S220 is discarded, and the processing of the learning method ends. In this case, the weight parameter of the neural network 231 is not updated.
  • step S240 the weight parameter learning unit 252 sets the weight parameter obtained in step S220 in the neural network 231. As a result, the weight parameter of the neural network 231 is updated.
  • the neural network unit 230 corrects the state quantity prediction time series by calculating the updated neural network 231.
  • Embodiment 3 The model prediction control system 300 for calculating the operation amount using the quadratic programming method will be described with reference to FIGS. 16 to 19.
  • the model prediction control system 300 is a system for controlling a control target by model prediction control (MPC).
  • the model predictive control is as described in the first embodiment.
  • the model prediction control system 300 can be used to realize automatic driving of the vehicle.
  • the model prediction control system 300 includes a state sensor group, an environment sensor group, an actuator group, and a model prediction control device 400.
  • the state sensor group is one or more state sensors 301.
  • the state sensor 301 is a sensor for measuring the state of the controlled object.
  • the controlled object is a vehicle
  • the state sensor 301 is a speed sensor or a position sensor.
  • the speed sensor measures the speed of the vehicle.
  • the position sensor positions the vehicle.
  • the environmental sensor group is one or more environmental sensors 302.
  • the environment sensor 302 is a sensor for measuring the operating environment of the controlled object.
  • the control target is a vehicle
  • the environment sensor 302 is a vehicle weight sensor or an attitude sensor.
  • the vehicle weight sensor measures the weight of the vehicle (including the weight of the occupants and luggage).
  • the posture sensor measures the posture (tilt) of the vehicle. The posture of the vehicle corresponds to the inclination of the road surface.
  • the actuator group is one or more actuators 311.
  • the actuator 311 changes the state of the controlled object.
  • the controlled object is a vehicle
  • the actuator 311 is a steering wheel, a motor, or a brake.
  • the model prediction control device 400 is a device for controlling a control target by model prediction control (MPC).
  • MPC model prediction control
  • the model prediction control device 400 performs automatic driving control for the vehicle.
  • the model prediction control device 400 is characterized by including a neural network unit 410.
  • the configuration of the model prediction control device 400 will be described with reference to FIG.
  • the model prediction control device 400 is a computer including hardware such as a processor 401, a memory 402, an auxiliary storage device 403, an input / output interface 404, and a communication device 405. These hardware are connected to each other via signal lines.
  • the processor 401 is an IC that performs arithmetic processing and controls other hardware.
  • processor 401 is a CPU, DSP or GPU.
  • the memory 402 is a volatile storage device.
  • the memory 402 is also called a main storage device or a main memory.
  • the memory 402 is a RAM.
  • the data stored in the memory 402 is stored in the auxiliary storage device 403 as needed.
  • the auxiliary storage device 403 is a non-volatile storage device.
  • the auxiliary storage device 403 is a ROM, HDD or flash memory.
  • the data stored in the auxiliary storage device 403 is loaded into the memory 402 as needed.
  • the input / output interface 404 is a port to which an input device and an output device are connected.
  • the input / output interface 404 is connected to a state sensor group, an environment sensor group, and an actuator group.
  • the communication device 405 is a receiver and a transmitter.
  • the communication device 405 is a communication chip or NIC
  • the model prediction control device 400 includes elements such as a neural network unit 410, an evaluation formula generation unit 420, and a solver unit 430. These elements are realized in software.
  • the auxiliary storage device 403 stores a model prediction control program for operating the computer as the neural network unit 410, the evaluation formula generation unit 420, and the solver unit 430.
  • the model predictive control program is loaded into memory 402 and executed by processor 401.
  • the OS is further stored in the auxiliary storage device 403. At least part of the OS is loaded into memory 402 and executed by processor 401.
  • the processor 401 executes the model prediction control program while executing the OS.
  • the input / output data of the model prediction control program is stored in the storage unit 490.
  • the memory 402 functions as a storage unit 490.
  • a storage device such as an auxiliary storage device 403, a register in the processor 401, and a cache memory in the processor 401 may function as a storage unit 490 instead of the memory 402 or together with the memory 402.
  • the model prediction control device 400 may include a plurality of processors that replace the processor 401.
  • the plurality of processors share the role of the processor 401.
  • the model prediction control program can record (store) on a non-volatile recording medium such as an optical disk or a flash memory so that it can be read by a computer.
  • a non-volatile recording medium such as an optical disk or a flash memory
  • the operation of the model prediction control system 100 corresponds to the model prediction control method. Further, the procedure of the model prediction control method by the model prediction control device 200 corresponds to the procedure of the model prediction control program.
  • the model prediction control method will be described with reference to FIG. In order to make the explanation easy to understand, it is assumed that the state sensor group is one state sensor 101, the environment sensor group is one environment sensor 102, and the actuator group is one actuator 111.
  • the state sensor 301 periodically measures the state of the controlled object and outputs the measured state quantity.
  • the measured state quantity is a state quantity obtained by measuring the state of the controlled object.
  • the state quantity represents the state of the controlled object.
  • the environment sensor 302 periodically measures the operating environment of the controlled object and outputs the measured environment amount.
  • the measured environment quantity is the environment quantity obtained by measuring the operating environment of the controlled object.
  • the amount of environment represents the operating environment to be controlled.
  • Steps S310 to S330 are repeatedly executed.
  • step S310 the neural network unit 410 receives the measured state quantity output from the state sensor 301. Further, the neural network unit 410 receives the measurement environment amount output from the environment sensor 302. The neural network unit 410 calculates the neural network 411 by inputting the measurement state quantity and the measurement environment quantity. As a result, the model parameters set in the prediction model for predicting the change in the state of the controlled object are calculated. Then, the neural network unit 410 outputs the calculated model parameters.
  • the prediction model can be expressed by Eq. (2).
  • x k + 1 Ax k + Bu k ⁇ (2)
  • X n is the nth state quantity of the controlled object.
  • U n is the n-th manipulated variable for the actuator 311.
  • A is a matrix which is one of the model parameters.
  • B is a vector which is one of the model parameters.
  • the neural network 411 will be described with reference to FIG.
  • the neural network 411 is a neural network for the model prediction control system 300.
  • the configuration of the neural network is as described in the first embodiment.
  • the measurement state quantity x0 and the measurement environment quantity y0 are inputs to the input layer.
  • the model parameters (A, B) become the output from the output layer.
  • (A 00 , ..., A ij , ..., Ann ) constitutes matrix A.
  • (B 0 , ..., Bi , ..., B n ) constitutes the vector B.
  • step S320 the evaluation formula generation unit 420 generates the evaluation formula in the quadratic programming method based on the prediction model in which the calculated model parameters are set.
  • the evaluation formula generated is a formula for evaluating the operation amount time series for the actuator 311. Then, the evaluation formula generation unit 420 outputs the evaluation formula in the quadratic programming method.
  • the evaluation formula in the quadratic programming will be described.
  • the evaluation function for the prediction model can be expressed by Eq. (3).
  • E 1 is an evaluation value obtained by the evaluation function.
  • X Tk is the target value of the state quantity.
  • Xk is a state quantity calculated by calculating a prediction model in which the matrix A and the vector B are set.
  • the problem of optimizing the evaluation value E 1 of the evaluation function corresponds to optimizing the evaluation value E 2 of the evaluation formula.
  • the evaluation formula can be expressed by the formula (4). (U 1, ⁇ , u n ) is the manipulated variable time series. "Q” is a matrix. "R” is a vector.
  • the evaluation formula generation unit 420 calculates the matrix Q of the evaluation formula and the vector R of the evaluation formula based on the prediction model in which the matrix A and the vector B are set. Then, the evaluation formula generation unit 420 sets the matrix Q and the vector R in the evaluation formula.
  • the evaluation formula in which the matrix Q and the vector R are set is the evaluation formula in the quadratic programming method.
  • step S330 the solver unit 430 calculates the amount of operation given to the actuator 311 by solving the evaluation formula in the quadratic programming method. Specifically, the solver unit 430 solves the evaluation formula in the quadratic programming method by executing the optimized solver (quadratic programming solver). Then, the solver unit 430 gives the calculated operation amount to the actuator 311.
  • the solver unit 430 solves the evaluation formula in the quadratic programming method by executing the optimized solver (quadratic programming solver). Then, the solver unit 430 gives the calculated operation amount to the actuator 311.
  • the model prediction control device 200 includes a processing circuit 209.
  • the processing circuit 209 is hardware that realizes the operation path generation unit 210, the prediction model unit 220, the neural network unit 230, the state quantity evaluation unit 240, and the learning unit 250.
  • the processing circuit 209 may be dedicated hardware or a processor 201 that executes a program stored in the memory 202.
  • the processing circuit 209 is dedicated hardware, the processing circuit 209 is, for example, a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, an ASIC, an FPGA, or a combination thereof.
  • ASIC is an abbreviation for Application Specific Integrated Circuit.
  • FPGA is an abbreviation for Field Programmable Gate Array.
  • the model prediction control device 200 may include a plurality of processing circuits that replace the processing circuit 209.
  • the plurality of processing circuits share the role of the processing circuit 209.
  • model prediction control device 200 some functions may be realized by dedicated hardware, and the remaining functions may be realized by software or firmware.
  • the processing circuit 209 can be realized by hardware, software, firmware, or a combination thereof.
  • the model prediction control device 400 includes a processing circuit 409.
  • the processing circuit 409 is hardware that realizes the neural network unit 410, the evaluation formula generation unit 420, and the solver unit 430.
  • the processing circuit 409 may be dedicated hardware or a processor 401 that executes a program stored in the memory 402.
  • the processing circuit 409 is dedicated hardware, the processing circuit 409 is, for example, a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, an ASIC, an FPGA, or a combination thereof.
  • the model prediction control device 400 may include a plurality of processing circuits that replace the processing circuit 409.
  • the plurality of processing circuits share the role of the processing circuit 409.
  • model prediction control device 400 some functions may be realized by dedicated hardware, and the remaining functions may be realized by software or firmware.
  • the processing circuit 409 can be realized by hardware, software, firmware, or a combination thereof.
  • the embodiments are examples of preferred embodiments and are not intended to limit the technical scope of the present invention.
  • the embodiment may be partially implemented or may be implemented in combination with other embodiments.
  • the procedure described using the flowchart or the like may be appropriately changed.
  • the model prediction control device (200, 400) may be composed of a plurality of devices.
  • the server device provided in the cloud may include the learning unit 250, and the processing of the learning method may be executed in the cloud.
  • the "part" which is an element of the model prediction control device (200, 400) may be read as “process” or "process”.
  • model prediction control system 101 state sensor, 102 environment sensor, 111 actuator, 190 model prediction control system, 191 model prediction control device, 200 model prediction control device, 201 processor, 202 memory, 203 auxiliary storage device, 204 input / output interface , 209 processing circuit, 210 operation path generation unit, 211 operation amount time series generation unit, 212 operation amount determination unit, 220 prediction model unit, 230 neural network unit, 231 neural network, 240 state quantity evaluation unit, 250 learning unit, 251 Model calculation unit, 252 weight parameter learning unit, 280 history unit, 281 state quantity history, 282 environment quantity history, 283 operation volume history, 284 status quantity learning history, 290 storage unit, 300 model prediction control system, 301 status sensor, 302 Environmental sensor, 311 actuator, 400 model prediction control device, 401 processor, 402 memory, 403 auxiliary storage device, 404 input / output interface, 409 processing circuit, 410 neural network unit, 411 neural network, 420 evaluation formula generator, 430 solver unit 490 Memory unit.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Mechanical Engineering (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Transportation (AREA)
  • Feedback Control In General (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

操作パス生成部(210)が、状態センサ(101)から出力される計測状態量に基づいて、アクチュエータ(111)に対する操作量時系列を生成する。予測モデル部(220)が、前記計測状態量と前記操作量時系列とを入力にして予測モデルを演算することによって、状態量予測時系列を生成する。ニューラルネットワーク部(230)が、環境センサ(102)から出力される計測環境量と、前記状態量予測時系列と、を入力にしてニューラルネットワークを演算することによって、前記状態量予測時系列を補正する。状態量評価部(240)が、前記補正後の状態量時系列に対する評価結果を生成する。操作パス生成部が、前記評価結果が適正基準を満たす場合に前記操作量時系列の先頭の操作量を前記アクチュエータに出力する。

Description

モデル予測制御装置、モデル予測制御プログラム、モデル予測制御システムおよびモデル予測制御方法
 本発明は、モデル予測制御に関するものである。
 予測モデルを用いて制御対象を制御するモデル予測制御が知られている。
 例えば、モデル予測制御は、車両の自動運転制御に利用することができる。
 特許文献1には、外部環境に合わせて自動的にモデルを変更するモデル予測制御システムが開示されている。
 このシステムでは、天候別に用意されたモデルから予測時の天候に対応するモデルが選択され、選択されたモデルが外気温に基づいて補正され、補正後のモデルを用いてモデル予測制御が行われる。
特開2000-99107号公報
 特許文献1に開示されたシステムでは、想定外の外部環境に対応することができない。
 例えば、晴れ用モデル、曇り用モデル、雨用モデルおよび雪用モデルが用意されていても、台風のような特別な天候に対して適切なモデルを選択することができない。また、予測時の天候に適したモデルを選択することができても、予測時の外気温が想定範囲外の温度である場合、モデルを適切に補正することができない。
 その結果、モデル予測制御の精度が低下してしまう。
 本発明は、想定外の環境においてもモデル予測制御の精度を維持できるようにすることを目的とする。
 本発明のモデル予測制御装置は、
 制御対象の状態を計測する状態センサから出力される計測状態量に基づいて、前記制御対象の状態を変化させるためにアクチュエータに対する操作量時系列を生成する操作量時系列生成部と、
 前記計測状態量と前記操作量時系列とを入力にして予測モデルを演算することによって、前記制御対象の予測の状態量時系列である状態量予測時系列を生成する予測モデル部と、
 前記制御対象の動作環境を計測する環境センサから出力される計測環境量と、前記状態量予測時系列と、を入力にしてニューラルネットワークを演算することによって、前記状態量予測時系列を補正するニューラルネットワーク部と、
 補正後の状態量予測時系列を入力にして評価関数を演算することによって、前記補正後の状態量時系列に対する評価結果を生成する状態量評価部と、
 前記評価結果が適正基準を満たす場合に前記操作量時系列の先頭の操作量を前記アクチュエータに出力する操作量決定部とを備える。
 本発明によれば、予測モデルによって得られる状態量予測時系列と環境センサから出力される計測環境量とを入力にしてニューラルネットワークを演算することによって、状態量予測時系列が補正される。そのため、想定外の環境においても状態量予測時系列を補正することができる。したがって、想定外の環境においてもモデル予測制御の精度を維持することが可能である。
実施の形態1におけるモデル予測制御システム100の構成図。 実施の形態1におけるモデル予測制御装置200の構成図。 実施の形態1におけるモデル予測制御の説明図。 実施の形態1におけるモデル予測制御の説明図。 実施の形態1におけるモデル予測制御方法のフローチャート。 実施の形態1におけるニューラルネットワーク231を示す図。 ニューラルネットワーク231を使用しないモデル予測制御システム190の構成図。 車両の自動運転制御に使用されるモデル予測制御システム190の構成図。 モデル予測制御システム190による車両の自動運転制御を示す図。 車両の自動運転制御の説明図。 実施の形態2におけるモデル予測制御システム100の構成図。 実施の形態2におけるモデル予測制御装置200の構成図。 実施の形態2における履歴部280の構成図。 実施の形態2における学習方法の概要図。 実施の形態2における学習方法のクローチャート。 実施の形態3におけるモデル予測制御システム300の構成図。 実施の形態3におけるモデル予測制御装置400の構成図。 実施の形態3におけるモデル予測制御方法のフローチャート。 実施の形態3におけるニューラルネットワーク411を示す図。 実施の形態におけるモデル予測制御装置200のハードウェア構成図。 実施の形態におけるモデル予測制御装置400のハードウェア構成図。
 実施の形態および図面において、同じ要素または対応する要素には同じ符号を付している。説明した要素と同じ符号が付された要素の説明は適宜に省略または簡略化する。図中の矢印はデータの流れ又は処理の流れを主に示している。
 実施の形態1.
 ニューラルネットワークを使用するモデル予測制御システム100について、図1から図10に基づいて説明する。
 モデル予測制御システム100は、モデル予測制御(MPC)によって制御対象を制御するためのシステムである。モデル予測制御について後述する。
 例えば、モデル予測制御システム100は、車両の自動運転を実現するために利用することができる。
***構成の説明***
 図1に基づいて、モデル予測制御システム100の構成を説明する。
 モデル予測制御システム100は、状態センサ群と環境センサ群とアクチュエータ群とモデル予測制御装置200とを備える。
 状態センサ群は、1つ以上の状態センサ101である。
 状態センサ101は、制御対象の状態を計測するためのセンサである。
 例えば、制御対象は車両であり、状態センサ101は、速度センサまたは位置センサである。速度センサは車両の速度を計測する。位置センサは車両を測位する。
 環境センサ群は、1つ以上の環境センサ102である。
 環境センサ102は、制御対象の動作環境を計測するためのセンサである。
 例えば、制御対象は車両であり、環境センサ102は、車重センサまたは姿勢センサである。車重センサは、車両の重量(乗員および荷物の重量を含む)を計測する。姿勢センサは車両の姿勢(傾き)を計測する。車両の姿勢は路面の傾斜に相当する。
 アクチュエータ群は、1つ以上のアクチュエータ111である。
 アクチュエータ111は、制御対象の状態を変化させる。
 例えば、制御対象は車両であり、アクチュエータ111はステアリング、モータまたはブレーキである。
 モデル予測制御装置200は、モデル予測制御(MPC)によって制御対象を制御するための装置である。モデル予測制御について後述する。
 例えば、モデル予測制御装置200は、車両に対する自動運転制御を行う。
 モデル予測制御装置200は、ニューラルネットワーク部230を備えることを特徴とする。
 図2に基づいて、モデル予測制御装置200の構成を説明する。
 モデル予測制御装置200は、プロセッサ201とメモリ202と補助記憶装置203と入出力インタフェース204と通信装置205といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
 プロセッサ201は、演算処理を行うICであり、他のハードウェアを制御する。例えば、プロセッサ201は、CPU、DSPまたはGPUである。
 ICは、Integrated Circuitの略称である。
 CPUは、Central Processing Unitの略称である。
 DSPは、Digital Signal Processorの略称である。
 GPUは、Graphics Processing Unitの略称である。
 メモリ202は揮発性の記憶装置である。メモリ202は、主記憶装置またはメインメモリとも呼ばれる。例えば、メモリ202はRAMである。メモリ202に記憶されたデータは必要に応じて補助記憶装置203に保存される。
 RAMは、Random Access Memoryの略称である。
 補助記憶装置203は不揮発性の記憶装置である。例えば、補助記憶装置203は、ROM、HDDまたはフラッシュメモリである。補助記憶装置203に記憶されたデータは必要に応じてメモリ202にロードされる。
 ROMは、Read Only Memoryの略称である。
 HDDは、Hard Disk Driveの略称である。
 入出力インタフェース204は、入力装置および出力装置が接続されるポートである。例えば、入出力インタフェース204には、状態センサ群と環境センサ群とアクチュエータ群とが接続される。
 USBは、Universal Serial Busの略称である。
 通信装置205はレシーバ及びトランスミッタである。例えば、通信装置205は通信チップまたはNICである。
 NICは、Network Interface Cardの略称である。
 モデル予測制御装置200は、操作パス生成部210と予測モデル部220とニューラルネットワーク部230と状態量評価部240といった要素を備える。これらの要素はソフトウェアで実現される。
 操作パス生成部210は、操作量時系列生成部211と操作量決定部212とを備える。
 補助記憶装置203には、操作パス生成部210と予測モデル部220とニューラルネットワーク部230と状態量評価部240としてコンピュータを機能させるためのモデル予測制御装プログラムが記憶されている。モデル予測制御プログラムは、メモリ202にロードされて、プロセッサ201によって実行される。
 補助記憶装置203には、さらに、OSが記憶されている。OSの少なくとも一部は、メモリ202にロードされて、プロセッサ201によって実行される。
 プロセッサ201は、OSを実行しながら、モデル予測制御プログラムを実行する。
 OSは、Operating Systemの略称である。
 モデル予測制御プログラムの入出力データは記憶部290に記憶される。
 メモリ202は記憶部290として機能する。但し、補助記憶装置203、プロセッサ201内のレジスタおよびプロセッサ201内のキャッシュメモリなどの記憶装置が、メモリ202の代わりに、又は、メモリ202と共に、記憶部290として機能してもよい。
 モデル予測制御装置200は、プロセッサ201を代替する複数のプロセッサを備えてもよい。複数のプロセッサは、プロセッサ201の役割を分担する。
 モデル予測制御プログラムは、光ディスクまたはフラッシュメモリ等の不揮発性の記録媒体にコンピュータ読み取り可能に記録(格納)することができる。
 図3および図4に基づいて、モデル予測制御(MPC)について説明する。モデル予測制御は従来技術である。
 まず、図3に基づいて、モデル予測制御を説明する。
 モデル予測制御とは、制御対象の予測推定を用いて最適な制御入力を算出する制御手法の一つである。
 モデル予測制御では、予測モデルと最適化器が使用される。予測モデルは、制御対象を模倣するためのモデルである。最適化器は、予測モデルの動作を評価して最適な制御入力を算出する。
 操作パス生成部210と状態量評価部240との組が最適化器に相当する。
 次に、図4に基づいて、モデル予測制御を説明する。操作量uは図3の制御入力u(t)に相当する。
 モデル予測制御では、操作量の候補の時系列uiに基づいて予測状態量の時系列xiが生成され、予測状態量の良し悪しが評価関数によって判定される。この処理は、評価が高い予測状態量が得られるまで繰り返される。そして、評価が高い予測状態量に対応する操作量u1が出力される。
***動作の説明***
 モデル予測制御システム100の動作はモデル予測制御方法に相当する。また、モデル予測制御装置200によるモデル予測制御方法の手順はモデル予測制御プログラムの手順に相当する。
 図5に基づいて、モデル予測制御方法を説明する。
 説明を分かりやすくするため、状態センサ群が1つの状態センサ101であり、環境センサ群が1つの環境センサ102であり、アクチュエータ群が1つのアクチュエータ111であるものとして説明を行う。
 状態センサ101は、定期的に、制御対象の状態を計測し、計測状態量を出力する。計測状態量は、制御対象の状態を計測することによって得られた状態量である。状態量は、制御対象の状態を表す。
 環境センサ102は、定期的に、制御対象の動作環境を計測し、計測環境量を出力する。計測環境量は、制御対象の動作環境を計測することによって得られた環境量である。環境量は、制御対象の動作環境を表す。
 ステップS110からステップS160は、繰り返し実行される。
 ステップS110において、操作量時系列生成部211は、状態センサ101から出力される計測状態量を受け付ける。
 操作量時系列生成部211は、受け付けた計測状態量に基づいて、操作量時系列を生成する。
 そして、操作量時系列生成部211は、計測状態量と操作量時系列とを出力する。
 操作量時系列は、時刻順に並んだ複数の操作量であり、従来のモデル予測制御における操作量の候補の時系列uiに相当する(図4参照)。
 操作量時系列を生成する方法は、従来のモデル予測制御において操作量の候補の時系列uiを生成する方法と同じである。
 ステップS120において、予測モデル部220は、操作量時系列生成部211から出力される計測状態量と操作量時系列とを受け付ける。
 予測モデル部220は、計測状態量と操作量時系列とを入力にして予測モデルを演算する。これにより、状態量予測時系列が生成される。
 そして、予測モデル部220は、状態量予測時系列を出力する。
 状態量予測時系列は、予測モデルによって予測された状態量時系列である。
 状態量時系列は、時刻順に並んだ複数の状態量であり、従来のモデル予測制御における予測状態量の時系列xiに相当する(図4参照)。
 状態量予測時系列を生成する方法は、従来のモデル予測制御において予測状態量の時系列xiを生成する方法と同じである。
 ステップS130において、ニューラルネットワーク部230は、環境センサ102から出力される計測環境量と、予測モデル部220から出力される状態量予測時系列とを受け付ける。
 ニューラルネットワーク部230は、計測環境量と状態量予測時系列とを入力にしてニューラルネットワーク231を演算する。これにより、状態量予測時系列が補正される。
 そして、ニューラルネットワーク部230は、補正後の状態量予測時系列を出力する。
 ニューラルネットワーク231について後述する。
 ステップS140において、状態量評価部240は、ニューラルネットワーク部230から出力される補正後の状態量予測時系列を受け付ける。
 ニューラルネットワーク部230は、補正後の状態量予測時系列を入力にして評価関数を演算する。これにより、状態量評価結果が生成される。
 そして、状態量評価部240は、状態量評価結果を出力する。
 状態量評価結果は、補正後の状態量予測時系列に対する評価結果であり、従来のモデル予測制御における予測状態量の時系列xiに対する評価結果に相当する(図4参照)。
 状態量評価結果を生成する方法は、従来のモデル予測制御において予測状態量の時系列xiに対する評価結果を生成する方法と同じである。
 ステップS150において、操作量決定部212は、状態量評価部240から出力される状態量評価結果を受け付ける。
 そして、操作量決定部212は、状態量評価結果が適正基準を満たすか判定する。適正基準は、予め決められた基準である。判定方法は、従来のモデル予測制御における方法と同じである。
 状態量評価結果が適正基準を満たす場合、ステップS110で生成された操作量時系列は、最適な操作量時系列、すなわち、最適解である。
 ステップS110で生成された操作量時系列が最適解である場合、処理はステップS160に進む。
 ステップS110で生成された操作量時系列が最適解でない場合、処理はステップS110に進む。そして、ステップS110において別の操作量時系列が生成される。
 ステップS160において、操作量決定部212は、ステップS110で生成された操作量時系列(最適解)の先頭の操作量をアクチュエータ111に出力する。先頭の操作量を「第1操作量」と称する。
 アクチュエータ111は、操作量決定部212から出力される第1操作量を受け付ける。そして、アクチュエータ111は、受け付けた第1操作量に従って動作する。その結果、制御対象の状態が変化する。
 図6に基づいて、ニューラルネットワーク231について説明する
 ニューラルネットワーク231は、モデル予測制御システム100用のニューラルネットワークである。
 ニューラルネットワークの構成を説明する
 ニューラルネットワークは、入力層と隠れ層と出力層とを有する。
 それぞれの層は、1つ以上のノードを有する。円はノードを表している。
 層間のノードはエッジで結ばれている。破線はエッジを表している。
 それぞれのエッジには、重みが設定されている。
 前の層のノードの値とエッジに設定されている重みとに基づいて、後の層のノードの値が決定する。
 ニューラルネットワーク231では、状態量予測時系列(x1,・・・,xk)と、計測環境量(y0)が、入力層に対する入力となる。そして、補正後の状態量予測時系列(x’1,・・・,x’k)が、出力層からの出力となる。
***実施の形態1の効果***
 図7から図10に基づいて、ニューラルネットワーク231を使用しないモデル予測制御装置191の課題について説明する。
 図7に、ニューラルネットワーク231を使用しないモデル予測制御システム190の構成を示す。
 モデル予測制御システム190は、環境センサ群を備えない。
 また、モデル予測制御装置191は、ニューラルネットワーク部230に相当する機能を備えない。
 そのため、モデル予測制御装置191は、計測環境量に基づいて、状態量予測時系列を補正することができない。
 しかし、状態センサ群およびアクチュエータ群は外部環境にさらされる。そのため、状態センサ群によって計測された状態量およびアクチュエータ群によって変化した状態量が、状態量予測時系列と一致するとは限らない。
 図8に、車両の自動運転制御に利用されるモデル予測制御システム190の構成を示す。
 モデル予測制御システム190は、車速センサと位置センサといった状態センサを備える。また、モデル予測制御システム190は、ステアリングとモータとブレーキといったアクチュエータを備える。
 モデル予測制御装置191は、車両の速度と車両の位置とに基づいて、ステアリング量、モータ出力およびブレーキ出力を決定する。
 このモデル予測制御システム190を一般化すると、モデル予測制御システム190は、状態量に基づいて操作量を出力するシステムと考えることができる。
 図9に、モデル予測制御システム190による車両の自動運転制御の様子を示す。
 モデル予測制御装置191は、状態量x(車速、車両位置)を変動させるために操作量uを出力する。これにより、車両の走行経路が制御される。
 図10に基づいて、車両の自動運転制御について説明する。
 車両には、車重に基づく重力、路面からの応力および推進機による推進力などが生じる。
 車両の加速量Δは、式(1)で表すことができる。
 「M」は車重を表す。「θ」は車両の傾きを表す。「F」は推進機の操作量を表す。「g」は重力加速度を表す。
 「Xgain」はゲイン補正量を表す。「Xsens」は計測状態量を表す。「Xofs」はオフセット補正量を表す。
Figure JPOXMLDOC01-appb-M000001
 但し、各状態センサの校正を実施したうえで、他の誤差まで加味した補正を行う必要がある。また、計測状態量に非線形特性がある場合には別途考慮する必要がある。
 さらに、ゲイン補正量Xgainおよびオフセット補正量Xofsは、動作環境に依存する。
 そのため、動作環境を考慮しなければ、車両に対する自動運転制御の精度が悪くなる可能性がある。
 一方、実施の形態1におけるモデル予測制御装置200は、ニューラルネットワーク231を使用することにより、動作環境を考慮した制御を実現する。その結果、高い精度で各種制御を行うことが可能となる。
 例えば、車両の状態センサに対する正確なキャリブレーションを実施しなくても、精度が高い自動運転制御を実現することが可能となる。
 実施の形態2.
 ニューラルネットワーク231の重みパラメータを学習する形態について、主に実施の形態1と異なる点を図11から図15に基づいて説明する。
***構成の説明***
 図11に基づいて、モデル予測制御システム100の構成を説明する。
 モデル予測制御システム100の構成は、モデル予測制御装置200の構成を除いて、実施の形態1における構成と同じである(図1参照)。
 図12に基づいて、モデル予測制御装置200の構成を説明する。
 モデル予測制御装置200は、さらに、学習部250を備える。学習部250は、モデル演算部251と重みパラメータ学習部252とを備える。学習部250は、ソフトウェアによって実現される。
 モデル予測制御プログラムは、さらに、学習部250としてコンピュータを機能させる。
 モデル予測制御装置200は、さらに、履歴部280を備える。履歴部280は、メモリ202などの記憶装置によって実現される。
 図13に基づいて、履歴部280の構成を説明する。
 履歴部280には、状態量履歴281と環境量履歴282と操作量履歴283と状態量学習履歴284といったデータが記憶される。
 状態量履歴281は、計測状態量の履歴、つまり、過去の計測状態量の集合である。過去の計測状態量を「過去状態量」と称する。過去状態量の時系列を「状態量過去時系列」と称する。
 環境量履歴282は、計測環境量の履歴、つまり、過去の計測環境量の集合である。過去の計測環境量を「過去環境量」と称する。
 操作量履歴283は、操作量の履歴、つまり、過去の操作量の集合である。過去の操作量を「過去操作量」と称する。過去操作量の時系列を「操作量過去時系列」と称する。
 状態量学習履歴284は、状態量学習時系列の履歴、つまり、過去の状態量学習時系列の集合である。
 状態量学習時系列は、ニューラルネットワーク231で使用される重みパラメータの学習用に生成される状態量学習時系列である。
***動作の説明***
 図14に基づいて、学習部250による学習方法の概要を説明する。
 「予測」は、状態量学習時系列を生成する処理を意味する。
 状態量学習時系列は、状態量予測時系列に相当する。つまり、状態量学習時系列は、状態量予測時系列の生成に用いられる予測モデルと同じ予測モデルを演算することによって生成される。
 「予測」では、操作量過去時系列および過去状態量が使用される。
 操作量過去時系列は、過去操作量の時系列である。
 操作量過去時系列の操作量u0として、第1時刻(t=1)の操作量u0が使用される。
 操作量過去時系列の操作量u1として、第2時刻(t=2)の操作量u0が使用される。
 操作量過去時系列の操作量u0として、第3時刻(t=3)の操作量u0が使用される。
 過去状態量として、第1時刻(t=1)の状態量x0が使用される。
 「学習」は、ニューラルネットワーク231で使用される重みパラメータの学習する処理を意味する。
 「学習」では、状態量学習時系列および状態量過去時系列が使用される。
 状態量過去時系列の状態量x1として、第2時刻(t=2)の状態量x0が使用される。
 状態量過去時系列の状態量x2として、第3時刻(t=3)の状態量x0が使用される。
 図15に基づいて、学習部250による学習方法を説明する。
 学習方法は、繰り返し実施される。例えば、学習方法は、定期的に、または、アクチュエータ111へ操作量が出力される毎に実施される。
 学習方法において、履歴部280は、以下のように動作する。
 状態センサ101から計測状態量が出力される毎に、履歴部280は、出力された計測状態量が保存する。
 環境センサ102から計測環境量が出力される毎に、履歴部280は、出力された計測環境量を保存する。
 操作量決定部212からアクチュエータ111へ操作量が出力される毎に、履歴部280は、出力された操作量を保存する。
 ステップS210において、モデル演算部251は、履歴部280から、過去状態量と操作量過去時系列とを取得する。
 そして、モデル演算部251は、過去状態量と操作量過去時系列とを入力にして、予測モデルを演算する。モデル演算部251によって演算される予測モデルは、予測モデル部220によって演算される予測モデルと同じである。
 これにより、状態量予測時系列に相当する状態量時系列が生成される。生成される状態量時系列を「状態量学習時系列」と称する。
 モデル演算部251は、状態量学習時系列を履歴部280に保存する。
 ステップS220において、重みパラメータ学習部252は、履歴部280から、過去環境量と状態量過去時系列と状態量学習時系列とを取得する。
 そして、重みパラメータ学習部252は、状態量学習時系列と過去環境量と状態量過去時系列とを用いて、ニューラルネットワーク231の重みパラメータに対する機械学習を行う。
 具体的には、重みパラメータ学習部252は、状態量学習時系列と過去環境量とを入力にしてニューラルネットワーク231を実行することによって得られる補正後の状態量学習時系列が状態量過去時系列と一致するように、ニューラルネットワーク231の重みパラメータを算出する。
 ステップS230において、重みパラメータ学習部252は、機械学習で得られた重みパラメータ(学習結果)を評価する。
 学習結果の評価は、以下のように行われる。
 ステップS210において、モデル演算部251は、学習対象期間の複数の過去状態量と学習対象期間の複数の操作量過去時系列とを用いて、学習対象期間の複数の状態量学習時系列を生成する。
 ステップS220において、重みパラメータ学習部252は、第一期間の複数の状態量学習時系列と第一期間の複数の過去環境量と第一期間の複数の状態量過去時系列とを用いて、ニューラルネットワーク231の重みパラメータに対する機械学習を行う。第一期間は、学習対象期間の一部である。例えば、第一期間は、学習対象期間の前半である。
 ステップS230において、重みパラメータ学習部252は、機械学習で得られた重みパラメータをニューラルネットワーク231に仮設定する。次に、重みパラメータ学習部252は、第二期間の複数の状態量学習時系列と第二期間の複数の過去環境量とを入力にして、ニューラルネットワーク231を演算する。これにより、第二期間の複数の状態量補正時系列が得られる。第二期間は、学習対象期間の一部である。例えば、第二期間は、学習対象期間の後半である。状態量補正時系列は、補正後の状態量学習時系列である。そして、重みパラメータ学習部252は、第二期間の複数の状態量補正時系列と第二期間の複数の状態量過去時系列との誤差量に基づいて、学習結果を評価する。学習結果に対する評価は、ディープラーニングにおける一般的な指標を用いて行われる。
 適切な学習結果が得られたという評価結果が得られた場合、処理はステップS240に進む。
 適切な学習結果が得られなかったという評価結果が得られた場合、ステップS220で得られた重みパラメータが破棄され、学習方法の処理は終了する。この場合、ニューラルネットワーク231の重みパラメータは更新されない。
 ステップS240において、重みパラメータ学習部252は、ステップS220で得られた重みパラメータをニューラルネットワーク231に設定する。これにより、ニューラルネットワーク231の重みパラメータが更新される。
 ステップS240の後、ニューラルネットワーク部230は、更新後のニューラルネットワーク231を演算することによって、状態量予測時系列の補正を行う。
***実施の形態2の効果***
 ニューラルネットワーク231の重みパラメータを学習することができる。そのため、ニューラルネットワーク231による補正の精度が向上する。その結果、モデル予測制御の精度が向上する。
 実施の形態3.
 二次計画法を用いて操作量を算出するモデル予測制御システム300について、図16から図19に基づいて説明する。
 モデル予測制御システム300は、モデル予測制御(MPC)によって制御対象を制御するためのシステムである。モデル予測制御については実施の形態1で説明した通りである。
 例えば、モデル予測制御システム300は、車両の自動運転を実現するために利用することができる。
***構成の説明***
 図16に基づいて、モデル予測制御システム300の構成を説明する。
 モデル予測制御システム300は、状態センサ群と環境センサ群とアクチュエータ群とモデル予測制御装置400とを備える。
 状態センサ群は、1つ以上の状態センサ301である。
 状態センサ301は、制御対象の状態を計測するためのセンサである。
 例えば、制御対象は車両であり、状態センサ301は、速度センサまたは位置センサである。速度センサは車両の速度を計測する。位置センサは車両を測位する。
 環境センサ群は、1つ以上の環境センサ302である。
 環境センサ302は、制御対象の動作環境を計測するためのセンサである。
 例えば、制御対象は車両であり、環境センサ302は、車重センサまたは姿勢センサである。車重センサは、車両の重量(乗員および荷物の重量を含む)を計測する。姿勢センサは車両の姿勢(傾き)を計測する。車両の姿勢は路面の傾斜に相当する。
 アクチュエータ群は、1つ以上のアクチュエータ311である。
 アクチュエータ311は、制御対象の状態を変化させる。
 例えば、制御対象は車両であり、アクチュエータ311はステアリング、モータまたはブレーキである。
 モデル予測制御装置400は、モデル予測制御(MPC)によって制御対象を制御するための装置である。
 例えば、モデル予測制御装置400は、車両に対する自動運転制御を行う。
 モデル予測制御装置400は、ニューラルネットワーク部410を備えることを特徴とする。
 図17に基づいて、モデル予測制御装置400の構成を説明する。
 モデル予測制御装置400は、プロセッサ401とメモリ402と補助記憶装置403と入出力インタフェース404と通信装置405といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
 プロセッサ401は、演算処理を行うICであり、他のハードウェアを制御する。例えば、プロセッサ401はCPU、DSPまたはGPUである。
 メモリ402は揮発性の記憶装置である。メモリ402は、主記憶装置またはメインメモリとも呼ばれる。例えば、メモリ402はRAMである。メモリ402に記憶されたデータは必要に応じて補助記憶装置403に保存される。
 補助記憶装置403は不揮発性の記憶装置である。例えば、補助記憶装置403は、ROM、HDDまたはフラッシュメモリである。補助記憶装置403に記憶されたデータは必要に応じてメモリ402にロードされる。
 入出力インタフェース404は、入力装置および出力装置が接続されるポートである。例えば、入出力インタフェース404には、状態センサ群と環境センサ群とアクチュエータ群とが接続される。
 通信装置405はレシーバ及びトランスミッタである。例えば、通信装置405は通信チップまたはNICである。
 モデル予測制御装置400は、ニューラルネットワーク部410と評価式生成部420とソルバ部430といった要素を備える。これらの要素はソフトウェアで実現される。
 補助記憶装置403には、ニューラルネットワーク部410と評価式生成部420とソルバ部430としてコンピュータを機能させるためのモデル予測制御プログラムが記憶されている。モデル予測制御プログラムは、メモリ402にロードされて、プロセッサ401によって実行される。
 補助記憶装置403には、さらに、OSが記憶されている。OSの少なくとも一部は、メモリ402にロードされて、プロセッサ401によって実行される。
 プロセッサ401は、OSを実行しながら、モデル予測制御プログラムを実行する。
 モデル予測制御プログラムの入出力データは記憶部490に記憶される。
 メモリ402は記憶部490として機能する。但し、補助記憶装置403、プロセッサ401内のレジスタおよびプロセッサ401内のキャッシュメモリなどの記憶装置が、メモリ402の代わりに、又は、メモリ402と共に、記憶部490として機能してもよい。
 モデル予測制御装置400は、プロセッサ401を代替する複数のプロセッサを備えてもよい。複数のプロセッサは、プロセッサ401の役割を分担する。
 モデル予測制御プログラムは、光ディスクまたはフラッシュメモリ等の不揮発性の記録媒体にコンピュータ読み取り可能に記録(格納)することができる。
***動作の説明***
 モデル予測制御システム100の動作はモデル予測制御方法に相当する。また、モデル予測制御装置200によるモデル予測制御方法の手順はモデル予測制御プログラムの手順に相当する。
 図18に基づいて、モデル予測制御方法を説明する。
 説明を分かりやすくするため、状態センサ群が1つの状態センサ101であり、環境センサ群が1つの環境センサ102であり、アクチュエータ群が1つのアクチュエータ111であるものとして説明を行う。
 状態センサ301は、定期的に、制御対象の状態を計測し、計測状態量を出力する。計測状態量は、制御対象の状態を計測することによって得られた状態量である。状態量は、制御対象の状態を表す。
 環境センサ302は、定期的に、制御対象の動作環境を計測し、計測環境量を出力する。計測環境量は、制御対象の動作環境を計測することによって得られた環境量である。環境量は、制御対象の動作環境を表す。
 ステップS310からステップS330は、繰り返し実行される。
 ステップS310において、ニューラルネットワーク部410は、状態センサ301から出力される計測状態量を受け付ける。
 さらに、ニューラルネットワーク部410は、環境センサ302から出力される計測環境量を受け付ける。
 ニューラルネットワーク部410は、計測状態量と計測環境量とを入力にしてニューラルネットワーク411を演算する。これにより、制御対象の状態の変化を予測するための予測モデルに設定されるモデルパラメータが算出される。
 そして、ニューラルネットワーク部410は、算出したモデルパラメータを出力する。
 予測モデルは、式(2)で表すことができる。
 xk+1 = Ax + Bu   ・・・(2)
 「x」は、制御対象のn番目の状態量である。
 「u」は、アクチュエータ311に対するn番目の操作量である。
 「A」は、モデルパラメータの一つであるマトリクスである。
 「B」は、モデルパラメータの一つであるベクトルである。
 図19に基づいて、ニューラルネットワーク411を説明する。
 ニューラルネットワーク411は、モデル予測制御システム300用のニューラルネットワークである。
 ニューラルネットワークの構成は、実施の形態1で説明した通りである。
 ニューラルネットワーク411では、計測状態量x0と計測環境量y0が入力層に対する入力となる。そして、モデルパラメータ(A,B)が出力層からの出力となる。
 (A00,・・・,Aij,・・・,Ann)は、マトリクスAを構成する。
 (B,・・・,B,・・・,B)は、ベクトルBを構成する。
 図18に戻り、ステップS320から説明を続ける。
 ステップS320において、評価式生成部420は、算出されたモデルパラメータが設定された予測モデルに基づいて、二次計画法における評価式を生成する。生成される評価式は、アクチュエータ311に対する操作量時系列を評価するための式である。
 そして、評価式生成部420は、二次計画法における評価式を出力する。
 二次計画法における評価式について説明する。
 予測モデルに対する評価関数は、式(3)で表すことができる。
 「E」は、評価関数によって得られる評価値である。
 「xTk」は、状態量の目標値である。
 「x」は、マトリクスAとベクトルBとが設定された予測モデルを演算することによって算出される状態量である。
Figure JPOXMLDOC01-appb-M000002
 評価関数の評価値Eを最適化する問題は、評価式の評価値Eを最適化することに相当する。評価式は、式(4)で表すことができる。
 (u,・・・,u)は、操作量時系列である。
 「Q」は、マトリクスである。
 「R」は、ベクトルである。
Figure JPOXMLDOC01-appb-M000003
 評価式生成部420は、マトリクスAとベクトルBとが設定された予測モデルに基づいて、評価式のマトリクスQと評価式のベクトルRとを算出する。
 そして、評価式生成部420は、マトリクスQとベクトルRとを評価式に設定する。マトリクスQとベクトルRとのが設定された評価式が二次計画法における評価式である。
 ステップS330において、ソルバ部430は、二次計画法における評価式を解くことによって、アクチュエータ311に与える操作量を算出する。
 具体的には、ソルバ部430は、最適化ソルバ(二次計画ソルバ)を実行することによって、二次計画法における評価式を解く。
 そして、ソルバ部430は、算出した操作量をアクチュエータ311に与える。
***実施の形態3の効果***
 二次計画法を用いて操作量を算出するモデル予測制御システム300においても、実施の形態1と同じ効果を奏することができる。つまり、想定外の環境においても、モデル予測制御の精度を維持することが可能となる。
***実施の形態の補足***
 図20に基づいて、モデル予測制御装置200のハードウェア構成を説明する。
 モデル予測制御装置200は処理回路209を備える。
 処理回路209は、操作パス生成部210と予測モデル部220とニューラルネットワーク部230と状態量評価部240と学習部250とを実現するハードウェアである。
 処理回路209は、専用のハードウェアであってもよいし、メモリ202に格納されるプログラムを実行するプロセッサ201であってもよい。
 処理回路209が専用のハードウェアである場合、処理回路209は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC、FPGAまたはこれらの組み合わせである。
 ASICは、Application Specific Integrated Circuitの略称である。
 FPGAは、Field Programmable Gate Arrayの略称である。
 モデル予測制御装置200は、処理回路209を代替する複数の処理回路を備えてもよい。複数の処理回路は、処理回路209の役割を分担する。
 モデル予測制御装置200において、一部の機能が専用のハードウェアで実現されて、残りの機能がソフトウェアまたはファームウェアで実現されてもよい。
 このように、処理回路209はハードウェア、ソフトウェア、ファームウェアまたはこれらの組み合わせで実現することができる。
 図21に基づいて、モデル予測制御装置400のハードウェア構成を説明する。
 モデル予測制御装置400は処理回路409を備える。
 処理回路409は、ニューラルネットワーク部410と評価式生成部420とソルバ部430とを実現するハードウェアである。
 処理回路409は、専用のハードウェアであってもよいし、メモリ402に格納されるプログラムを実行するプロセッサ401であってもよい。
 処理回路409が専用のハードウェアである場合、処理回路409は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC、FPGAまたはこれらの組み合わせである。
 モデル予測制御装置400は、処理回路409を代替する複数の処理回路を備えてもよい。複数の処理回路は、処理回路409の役割を分担する。
 モデル予測制御装置400において、一部の機能が専用のハードウェアで実現されて、残りの機能がソフトウェアまたはファームウェアで実現されてもよい。
 このように、処理回路409はハードウェア、ソフトウェア、ファームウェアまたはこれらの組み合わせで実現することができる。
 実施の形態は、好ましい形態の例示であり、本発明の技術的範囲を制限することを意図するものではない。実施の形態は、部分的に実施してもよいし、他の形態と組み合わせて実施してもよい。フローチャート等を用いて説明した手順は、適宜に変更してもよい。
 モデル予測制御装置(200、400)は、複数の装置で構成されてもよい。例えば、クラウドに設けられたサーバ装置が学習部250を備え、クラウドにおいて学習方法の処理が実行されてもよい。
 モデル予測制御装置(200、400)の要素である「部」は、「処理」または「工程」と読み替えてもよい。
 100 モデル予測制御システム、101 状態センサ、102 環境センサ、111 アクチュエータ、190 モデル予測制御システム、191 モデル予測制御装置、200 モデル予測制御装置、201 プロセッサ、202 メモリ、203 補助記憶装置、204 入出力インタフェース、209 処理回路、210 操作パス生成部、211 操作量時系列生成部、212 操作量決定部、220 予測モデル部、230 ニューラルネットワーク部、231 ニューラルネットワーク、240 状態量評価部、250 学習部、251 モデル演算部、252 重みパラメータ学習部、280 履歴部、281 状態量履歴、282 環境量履歴、283 操作量履歴、284 状態量学習履歴、290 記憶部、300 モデル予測制御システム、301 状態センサ、302 環境センサ、311 アクチュエータ、400 モデル予測制御装置、401 プロセッサ、402 メモリ、403 補助記憶装置、404 入出力インタフェース、409 処理回路、410 ニューラルネットワーク部、411 ニューラルネットワーク、420 評価式生成部、430 ソルバ部、490 記憶部。

Claims (14)

  1.  制御対象の状態を計測する状態センサから出力される計測状態量に基づいて、前記制御対象の状態を変化させるためにアクチュエータに対する操作量時系列を生成する操作量時系列生成部と、
     前記計測状態量と前記操作量時系列とを入力にして予測モデルを演算することによって、前記制御対象の予測の状態量時系列である状態量予測時系列を生成する予測モデル部と、
     前記制御対象の動作環境を計測する環境センサから出力される計測環境量と、前記状態量予測時系列と、を入力にしてニューラルネットワークを演算することによって、前記状態量予測時系列を補正するニューラルネットワーク部と、
     補正後の状態量予測時系列を入力にして評価関数を演算することによって、前記補正後の状態量時系列に対する評価結果を生成する状態量評価部と、
     前記評価結果が適正基準を満たす場合に前記操作量時系列の先頭の操作量を前記アクチュエータに出力する操作量決定部と、
    を備えるモデル予測制御装置。
  2.  前記モデル予測制御装置は、
     前記状態センサから出力された計測状態量である過去状態量と前記アクチュエータに入力された操作量の時系列である操作量過去時系列とを入力にして前記予測モデルを演算することによって、学習用の状態量時系列である状態量学習時系列を生成するモデル演算部と、
     前記状態量学習時系列と、前記環境センサから出力された計測環境量である過去環境量と、前記状態センサから出力された計測状態量の時系列である状態量過去時系列とを用いて、前記ニューラルネットワークの重みパラメータに対する機械学習を行う重みパラメータ学習部とを備え、
     前記ニューラルネットワーク部は、前記機械学習によって得られた重みパラメータが設定されたニューラルネットワークを演算する
    請求項1に記載のモデル予測制御装置。
  3.  前記制御対象が車両であり、
     前記車両の自動運転制御のために用いられる
    請求項1または請求項2に記載のモデル予測制御装置。
  4.  制御対象の状態を計測する状態センサから出力される計測状態量に基づいて、前記制御対象の状態を変化させるためにアクチュエータに対する操作量時系列を生成する操作量時系列生成処理と、
     前記計測状態量と前記操作量時系列とを入力にして予測モデルを演算することによって、前記制御対象の予測の状態量時系列である状態量予測時系列を生成する予測モデル処理と、
     前記制御対象の動作環境を計測する環境センサから出力される計測環境量と、前記状態量予測時系列と、を入力にしてニューラルネットワークを演算することによって、前記状態量予測時系列を補正するニューラルネットワーク処理と、
     補正後の状態量予測時系列を入力にして評価関数を演算することによって、前記補正後の状態量時系列に対する評価結果を生成する状態量評価処理と、
     前記評価結果が適正基準を満たす場合に前記操作量時系列の先頭の操作量を前記アクチュエータに出力する操作量決定処理と、
    をコンピュータに実行させるためのモデル予測制御プログラム。
  5.  制御対象の状態を計測する状態センサと、
     前記制御対象の動作環境を計測する環境センサと、
     前記制御対象の状態を変化させるためのアクチュエータと、
     前記状態センサから出力される計測状態量に基づいて、前記アクチュエータに対する操作量時系列を生成する操作量時系列生成部と、
     前記計測状態量と前記操作量時系列とを入力にして予測モデルを演算することによって、前記制御対象の予測の状態量時系列である状態量予測時系列を生成する予測モデル部と、
     前記環境センサから出力される計測環境量と、前記状態量予測時系列と、を入力にしてニューラルネットワークを演算することによって、前記状態量予測時系列を補正するニューラルネットワーク部と、
     補正後の状態量予測時系列を入力にして評価関数を演算することによって、前記補正後の状態量時系列に対する評価結果を生成する状態量評価部と、
     前記評価結果が適正基準を満たす場合に前記操作量時系列の先頭の操作量を前記アクチュエータに出力する操作量決定部と、
    を備えるモデル予測制御システム。
  6.  前記モデル予測制御システムは、
     前記状態センサから出力された計測状態量である過去状態量と前記アクチュエータに入力された操作量の時系列である操作量過去時系列とを入力にして前記予測モデルを演算することによって、学習用の状態量時系列である状態量学習時系列を生成するモデル演算部と、
     前記状態量学習時系列と、前記環境センサから出力された計測環境量である過去環境量と、前記状態センサから出力された計測状態量の時系列である状態量過去時系列とを用いて、前記ニューラルネットワークの重みパラメータに対する機械学習を行う重みパラメータ学習部とを備え、
     前記ニューラルネットワーク部は、前記機械学習によって得られた重みパラメータが設定されたニューラルネットワークを演算する
    請求項5に記載のモデル予測制御システム。
  7.  前記制御対象が車両であり、
     前記車両の自動運転制御のために用いられる
    請求項5または請求項6に記載のモデル予測制御システム。
  8.  状態センサが、制御対象の状態を計測し、
     環境センサが、前記制御対象の動作環境を計測し、
     操作量時系列生成部が、前記状態センサから出力される計測状態量に基づいて、前記制御対象の状態を変化させるためのアクチュエータに対する操作量時系列を生成し、
     予測モデル部が、前記計測状態量と前記操作量時系列とを入力にして予測モデルを演算することによって、前記制御対象の予測の状態量時系列である状態量予測時系列を生成し、
     ニューラルネットワーク部が、前記環境センサから出力される計測環境量と、前記状態量予測時系列と、を入力にしてニューラルネットワークを演算することによって、前記状態量予測時系列を補正し、
     状態量評価部が、補正後の状態量予測時系列を入力にして評価関数を演算することによって、前記補正後の状態量時系列に対する評価結果を生成し、
     操作量決定部が、前記評価結果が適正基準を満たす場合に前記操作量時系列の先頭の操作量を前記アクチュエータに出力する
    モデル予測制御方法。
  9.  制御対象の状態を変化させるためのアクチュエータに操作量を与えるモデル予測制御装置であって、
     前記制御対象の状態を計測する状態センサから出力される計測状態量と、前記制御対象の動作環境を計測する環境センサから出力される計測環境量と、を入力にしてニューラルネットワークを演算することによって、前記制御対象の状態の変化を予測するための予測モデルに設定されるモデルパラメータを算出するニューラルネットワーク部と、
     算出されたモデルパラメータが設定された予測モデルに基づいて、前記アクチュエータに対する操作量時系列を評価するための式として、二次計画法における評価式を生成する評価式生成部と、
     二次計画法における前記評価式を解くことによって、前記アクチュエータに与える操作量を算出するソルバ部と、
    を備えるモデル予測制御装置。
  10.  前記制御対象が車両であり、
     前記車両の自動運転制御のために用いられる
    請求項9に記載のモデル予測制御装置。
  11.  制御対象の状態を変化させるためのアクチュエータに操作量を与えるためのモデル予測制御プログラムであって、
     前記制御対象の状態を計測する状態センサから出力される計測状態量と、前記制御対象の動作環境を計測する環境センサから出力される計測環境量と、を入力にしてニューラルネットワークを演算することによって、前記制御対象の状態の変化を予測するための予測モデルに設定されるモデルパラメータを算出するニューラルネットワーク処理と、
     算出されたモデルパラメータが設定された予測モデルに基づいて、前記アクチュエータに対する操作量時系列を評価するための式として、二次計画法における評価式を生成する評価式生成処理と、
     二次計画法における前記評価式を解くことによって、前記アクチュエータに与える操作量を算出するソルバ処理と、
    をコンピュータに実行させるためのモデル予測制御プログラム。
  12.  制御対象の状態を計測する状態センサと、
     前記制御対象の動作環境を計測する環境センサと、
     前記制御対象の状態を変化させるためのアクチュエータと、
     前記制御対象の状態を計測する状態センサから出力される計測状態量と、前記制御対象の動作環境を計測する環境センサから出力される計測環境量と、を入力にしてニューラルネットワークを演算することによって、前記制御対象の状態の変化を予測するための予測モデルに設定されるモデルパラメータを算出するニューラルネットワーク部と、
     算出されたモデルパラメータが設定された予測モデルに基づいて、前記アクチュエータに対する操作量時系列を評価するための式として、二次計画法における評価式を生成する評価式生成部と、
     二次計画法における前記評価式を解くことによって、前記アクチュエータに与える操作量を算出するソルバ部と、
    を備えるモデル予測制御システム。
  13.  前記制御対象が車両であり、
     前記車両の自動運転制御のために用いられる
    請求項12に記載のモデル予測制御システム。
  14.  制御対象の状態を変化させるためのアクチュエータに操作量を与えるモデル予測制御方法であって、
     状態センサが、前記制御対象の状態を計測し、
     環境センサが、前記制御対象の動作環境を計測し、
     ニューラルネットワーク部が、前記制御対象の状態を計測する状態センサから出力される計測状態量と、前記制御対象の動作環境を計測する環境センサから出力される計測環境量と、を入力にしてニューラルネットワークを演算することによって、前記制御対象の状態の変化を予測するための予測モデルに設定されるモデルパラメータを算出し、
     評価式生成部が、算出されたモデルパラメータが設定された予測モデルに基づいて、前記アクチュエータに対する操作量時系列を評価するための式として、二次計画法における評価式を生成し、
     ソルバ部が、二次計画法における前記評価式を解くことによって、前記アクチュエータに与える操作量を算出する
    モデル予測制御方法。
PCT/JP2019/014180 2019-03-29 2019-03-29 モデル予測制御装置、モデル予測制御プログラム、モデル予測制御システムおよびモデル予測制御方法 WO2020202316A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201980094472.9A CN113614652A (zh) 2019-03-29 2019-03-29 模型预测控制装置、模型预测控制程序、模型预测控制系统及模型预测控制方法
JP2021511696A JP6929488B2 (ja) 2019-03-29 2019-03-29 モデル予測制御装置、モデル予測制御プログラム、モデル予測制御システムおよびモデル予測制御方法
DE112019006928.4T DE112019006928T5 (de) 2019-03-29 2019-03-29 Modellprädiktive regelungsvorrichtung, modellprädiktives regelungsprogramm, modellprädiktives regelungssystem und modellprädiktives regelungsverfahren
PCT/JP2019/014180 WO2020202316A1 (ja) 2019-03-29 2019-03-29 モデル予測制御装置、モデル予測制御プログラム、モデル予測制御システムおよびモデル予測制御方法
US17/392,557 US20210365033A1 (en) 2019-03-29 2021-08-03 Model predictive control device, computer readable medium, model predictive control system and model predictive control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/014180 WO2020202316A1 (ja) 2019-03-29 2019-03-29 モデル予測制御装置、モデル予測制御プログラム、モデル予測制御システムおよびモデル予測制御方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/392,557 Continuation US20210365033A1 (en) 2019-03-29 2021-08-03 Model predictive control device, computer readable medium, model predictive control system and model predictive control method

Publications (1)

Publication Number Publication Date
WO2020202316A1 true WO2020202316A1 (ja) 2020-10-08

Family

ID=72666365

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/014180 WO2020202316A1 (ja) 2019-03-29 2019-03-29 モデル予測制御装置、モデル予測制御プログラム、モデル予測制御システムおよびモデル予測制御方法

Country Status (5)

Country Link
US (1) US20210365033A1 (ja)
JP (1) JP6929488B2 (ja)
CN (1) CN113614652A (ja)
DE (1) DE112019006928T5 (ja)
WO (1) WO2020202316A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024062626A1 (ja) * 2022-09-22 2024-03-28 富美男 大庭 演算装置、集積回路、機械学習装置、判別装置、制御方法、及び、制御装置

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11922314B1 (en) * 2018-11-30 2024-03-05 Ansys, Inc. Systems and methods for building dynamic reduced order physical models
DE112019006928T5 (de) * 2019-03-29 2021-12-02 Mitsubishi Electric Corporation Modellprädiktive regelungsvorrichtung, modellprädiktives regelungsprogramm, modellprädiktives regelungssystem und modellprädiktives regelungsverfahren
TW202125343A (zh) * 2019-12-30 2021-07-01 瑞昱半導體股份有限公司 時間序列預測方法及相關的時間序列預測電路

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08211903A (ja) * 1995-02-06 1996-08-20 Meidensha Corp モデル予測制御におけるオートチューニング装置
JPH09504129A (ja) * 1993-10-07 1997-04-22 ハネウエル・インコーポレーテッド モデル予測制御用のニューラルネットベースの外乱予測子
JP2000099107A (ja) * 1998-09-25 2000-04-07 Hitachi Ltd モデル予測制御システム
JP2002157003A (ja) * 2000-11-17 2002-05-31 Fuji Electric Co Ltd 多変数モデル予測制御装置、方法、及びその記憶媒体
JP2005044337A (ja) * 2003-06-05 2005-02-17 Fisher Rosemount Syst Inc 非線形予測機能を備える多重入力/多重出力制御ブロック
CN104238366A (zh) * 2014-09-29 2014-12-24 中国科学院自动化研究所 基于神经元网络的压电陶瓷执行器的预测控制方法及装置
US20170139423A1 (en) * 2015-11-12 2017-05-18 King Fahd University Of Petroleum And Minerals Control system and method for multi-vehicle systems
CN107561942A (zh) * 2017-09-12 2018-01-09 重庆邮电大学 基于模型补偿的智能车辆轨迹跟踪模型预测控制方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3743247B2 (ja) * 2000-02-22 2006-02-08 富士電機システムズ株式会社 ニューラルネットワークによる予測装置
JP2006302078A (ja) * 2005-04-22 2006-11-02 Yamatake Corp 制御対象モデル生成装置および生成方法
JP4644522B2 (ja) * 2005-05-06 2011-03-02 国立大学法人 千葉大学 小型無人ヘリコプタの自律飛行制御装置及び自律飛行制御方法
JP4062336B2 (ja) * 2006-01-24 2008-03-19 いすゞ自動車株式会社 燃料噴射量学習制御方法
JP2007276052A (ja) * 2006-04-06 2007-10-25 Sony Corp 制御システム、記録システム、情報処理装置および方法、プログラム、並びに記録媒体
US8880962B2 (en) * 2012-04-24 2014-11-04 International Business Machines Corporation Maintenance planning and failure prediction from data observed within a time window
CN107531244B (zh) * 2015-04-21 2020-04-21 松下知识产权经营株式会社 信息处理系统、信息处理方法、以及记录介质
CN106143533A (zh) * 2015-04-21 2016-11-23 深圳市神拓机电股份有限公司 一种工矿用车辆安全监控的方法、系统和装置
US10410113B2 (en) * 2016-01-14 2019-09-10 Preferred Networks, Inc. Time series data adaptation and sensor fusion systems, methods, and apparatus
US20180218262A1 (en) * 2017-01-31 2018-08-02 Panasonic Intellectual Property Corporation Of America Control device and control method
US10580228B2 (en) * 2017-07-07 2020-03-03 The Boeing Company Fault detection system and method for vehicle system prognosis
CN109389863B (zh) * 2017-08-02 2021-08-13 华为技术有限公司 提示方法及相关设备
CN112703457A (zh) * 2018-05-07 2021-04-23 强力物联网投资组合2016有限公司 用于使用工业物联网进行数据收集、学习和机器信号流传输实现分析和维护的方法和系统
US11681929B2 (en) * 2018-10-02 2023-06-20 Honeywell International Inc. Methods and systems for predicting a remaining useful life of a component using an accelerated failure time model
DE112019006928T5 (de) * 2019-03-29 2021-12-02 Mitsubishi Electric Corporation Modellprädiktive regelungsvorrichtung, modellprädiktives regelungsprogramm, modellprädiktives regelungssystem und modellprädiktives regelungsverfahren
JP2024500818A (ja) * 2020-12-18 2024-01-10 ストロング フォース ヴィーシーエヌ ポートフォリオ 2019,エルエルシー バリューチェーンネットワークのためのロボットフリート管理及び付加製造

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09504129A (ja) * 1993-10-07 1997-04-22 ハネウエル・インコーポレーテッド モデル予測制御用のニューラルネットベースの外乱予測子
JPH08211903A (ja) * 1995-02-06 1996-08-20 Meidensha Corp モデル予測制御におけるオートチューニング装置
JP2000099107A (ja) * 1998-09-25 2000-04-07 Hitachi Ltd モデル予測制御システム
JP2002157003A (ja) * 2000-11-17 2002-05-31 Fuji Electric Co Ltd 多変数モデル予測制御装置、方法、及びその記憶媒体
JP2005044337A (ja) * 2003-06-05 2005-02-17 Fisher Rosemount Syst Inc 非線形予測機能を備える多重入力/多重出力制御ブロック
CN104238366A (zh) * 2014-09-29 2014-12-24 中国科学院自动化研究所 基于神经元网络的压电陶瓷执行器的预测控制方法及装置
US20170139423A1 (en) * 2015-11-12 2017-05-18 King Fahd University Of Petroleum And Minerals Control system and method for multi-vehicle systems
CN107561942A (zh) * 2017-09-12 2018-01-09 重庆邮电大学 基于模型补偿的智能车辆轨迹跟踪模型预测控制方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SHINDO, TOMONORI ET AL.: "Deep Learning for Control Engineering", APPLIED BY HITACHI TO MODEL PREDICTION CONTROL, 10 August 2017 (2017-08-10), Tokyo, pages 5 - 9, ISSN: 2189-5783 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024062626A1 (ja) * 2022-09-22 2024-03-28 富美男 大庭 演算装置、集積回路、機械学習装置、判別装置、制御方法、及び、制御装置

Also Published As

Publication number Publication date
DE112019006928T5 (de) 2021-12-02
CN113614652A (zh) 2021-11-05
US20210365033A1 (en) 2021-11-25
JP6929488B2 (ja) 2021-09-01
JPWO2020202316A1 (ja) 2021-09-13

Similar Documents

Publication Publication Date Title
JP6929488B2 (ja) モデル予測制御装置、モデル予測制御プログラム、モデル予測制御システムおよびモデル予測制御方法
US10408638B2 (en) System and method for controlling a vehicle under sensor uncertainty
JP6808093B2 (ja) システムを制御する予測コントローラ、車両及び方法
CN105122166B (zh) 稳定的方向控制系统和方法
EP3321631B1 (en) A inertial and terrain based navigation system
KR101242678B1 (ko) 제어 파라미터를 적응적으로 변화시키는 pid 제어 방법 및 이를 이용한 pid 제어 장치
WO2020054345A1 (ja) 電子制御装置、ニューラルネットワーク更新システム
US20230333518A1 (en) Adjustment system, adjustment method, and adjustment program
CN117171873B (zh) 车辆空气动力学优化方法、装置和车辆
JP2021507266A (ja) 車両のための慣性センサユニットを動作させるための方法及び装置
JP6939759B2 (ja) 車両状態推定装置
WO2023281943A1 (ja) タイヤ管理装置、プログラム及びタイヤ管理方法
CN111344645B (zh) 轨迹建模中校准空速和真实空速之间的转换
EP2672277A1 (fr) Procédé et dispositif de détermination de vitesses air d'un giravion en vol stationnaire et/ou à basses vitesses
KR102427366B1 (ko) 심층 신경망을 이용한 차선 추정 방법 및 장치
JP4529964B2 (ja) シミュレーション装置、シミュレーション方法及びシミュレーションプログラム
CN114076964A (zh) 用于借助于卡尔曼滤波器确定至少一个系统状态的方法
KR20230148346A (ko) 칼만 필터를 사용하여 적어도 하나의 시스템 상태를 결정하는 방법
KR20230148833A (ko) 칼만 필터를 사용하여 적어도 하나의 시스템 상태를 결정하는 방법
JP7388523B1 (ja) ヨーレート制御装置、ヨーレート制御方法及びプログラム
WO2023286866A1 (ja) 演算装置、演算方法及びプログラム
US20230229966A1 (en) Deep learning based arrival time prediction system
JP7409037B2 (ja) 推定装置、推定方法、推定プログラム
US11631030B2 (en) Learning with moment estimation using different time constants
CN117951817A (zh) 一种无人船动力学模型辨识方法、装置、设备及介质

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021511696

Country of ref document: JP

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 19923558

Country of ref document: EP

Kind code of ref document: A1