Remote control device
The remote control device addresses instability in moving object control due to network transmission delays by using a stochastic system optimization calculation unit to optimize control decisions based on a reference route, ensuring high trackability even with curved paths.
Patent Information
- Application Number
- PCT/JP2023/041216
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-11-16
- Publication Date
- 2025-05-22
AI Technical Summary
Existing remote control systems for moving objects experience instability due to transmission delays in networks, especially when the reference path has curvature, leading to decreased tracking ability.
A remote control device that includes a moving object control calculation unit, which calculates a control amount based on a reference route and uses a stochastic system optimization calculation unit to solve a stochastic programming problem, converting a stochastic evaluation function into a deterministic evaluation function to optimize control decisions.
The system maintains high trackability of the moving object to the reference path even with curvature, effectively addressing the instability issues caused by transmission delays.
Smart Images

Figure JP2023041216_22052025_PF_FP_ABST
Abstract
Description
Remote control device
[0001] The present disclosure relates to a remote control device that controls a mobile object from a remote location via a network.
[0002] In remote control of a mobile object, there is a possibility that the operation of the mobile object may become unstable due to transmission delays that occur in a network. As a technique for solving this problem, for example, Patent Document 1 listed below discloses a technique for suppressing the phenomenon of unstable operation of the mobile object by setting a control gain using a probability distribution of transmission delays.
[0003] Patent No. 6940036
[0004] Yohei Hosoe and Tomomichi Hagiwara, Equivalent Stability Notions, Lyapunov Inequality, and Its Application in Discrete-Time Linear Systems with Stochastic Dynamics Determined by an iid Process, IEEE TRANSACTIONS ON AUTOMATIC CONTROL, 2019.
[0005] Generally, a reference path that serves as a reference when a moving object moves has a curvature. However, the technology of Patent Document 1 does not use information about the reference path, and if the reference path has a curvature, there is a risk that the tracking ability of the moving object to the reference path will be reduced.
[0006] The present disclosure has been made to solve the above-mentioned problems, and aims to provide a remote control device that can maintain high tracking ability of a moving body's reference path even when the moving body's reference path has curvature.
[0007] A remote control device according to the present disclosure is a remote control device that controls one or more moving objects via a network, and includes a moving object control calculation unit that calculates a control amount for the moving object based on a reference path of the moving object, and the moving object control calculation unit includes a control calculation unit, and the control calculation unit includes a stochastic system optimization calculation unit that calculates an optimal sequence by sequentially solving a stochastic programming problem based on an evaluation function, using a state equation that models dynamic characteristics of the moving object that depend on a stochastic transmission delay having a probability distribution as a constraint, and a control decision unit that converts the optimal sequence into the control amount for the moving object, and the stochastic system optimization calculation unit is configured to include a stochastic system evaluation function conversion unit that converts a stochastic evaluation function into a deterministic evaluation function based on a stochastic process model of stochastic parameters, and a deterministic system optimization calculation unit that solves the stochastic programming problem by solving the optimization problem of the deterministic evaluation function.
[0008] According to the remote control device according to the present disclosure, it is possible to maintain high followability of the moving object to the reference path even when the reference path of the moving object has curvature.
[0009] The objects, features, aspects, and advantages of the present disclosure will become more apparent from the following detailed description and the accompanying drawings.
[0010] FIG. 1 is a functional block diagram of a remote control device in embodiment 1. FIG. 2 is a functional block diagram of a first mobile object control calculation unit in embodiment 1. FIG. 3 is a diagram showing the configuration of a mobile object when the mobile object control amount is a control input. FIG. 4 is a functional block diagram of a control calculation unit in embodiment 1. FIG. 5 is an explanatory diagram of a network control system. FIG. 6 is an explanatory diagram of an example of the configuration of a mobile object. FIG. 7 is an explanatory diagram of a state equation of a mobile object. FIG. 8 is a diagram showing an example of a time series of transmission delay. FIG. 9 is a diagram showing an example of a transmission delay model unit. FIG. 10 is a functional block diagram of a remote control device in embodiment 2. FIG. 11 is a functional block diagram of a mobile object control calculation unit in embodiment 2. FIG. 12 is a functional block diagram of a stochastic system optimization calculation unit in embodiment 2. FIG. 13 is an explanatory diagram of constraint generation. FIG. 14 is a diagram showing a first exemplary configuration of a control calculation unit in embodiment 3. FIG. 15 is an explanatory diagram of the output of a speed planning unit. FIG. 16 is a diagram showing a second exemplary configuration of a control calculation unit in embodiment 3. FIG. 17 is a functional block diagram of a remote control device in embodiment 4. FIG. 18 is a diagram showing a first exemplary configuration of a mobile object control calculation unit in embodiment 4. FIG. 19 is a diagram showing a second exemplary configuration of a mobile object control calculation unit in embodiment 4. FIG. 19 is an explanatory diagram of operation near an intersection. FIG. 20 is a diagram showing a third exemplary configuration of a mobile object control calculation unit in embodiment 4. FIG. 21 is an explanatory diagram of operation when an oncoming vehicle is approaching. It is an explanatory diagram concerning the operation at the time of facing.It is a diagram showing an example of the hardware configuration of the remote control device.It is a diagram showing an example of the hardware configuration of the remote control device.
[0011] <Embodiment 1> Fig. 1 is a diagram showing the configuration of a remote control system in embodiment 1. As shown in Fig. 1, the remote control system is made up of a remote control device 10, a mobile object 20, a network 30, an object information acquisition unit 40, an environment information acquisition unit 50, and a map database 60.
[0012] 1 shows an example of the configuration of the remote control device 10 when controlling one moving body 20 (first moving body 20-1). However, there may be a plurality of moving bodies 20.
[0013] The network 30 interconnects the various components included in the remote control system via cables, radio waves, etc. The components of the remote control system can send and receive data via the network 30. The network 30 can be a local area network (LAN), a wide area network (WAN), the Internet, a telephone line, wireless communication, or any other type of network. However, the network 30 is not limited to these, and can be any medium that allows data to be sent and received between the remote control device 10 and a mobile object 20 located in a remote location.
[0014] A first moving body 20-1 as one of the moving bodies 20 travels based on a moving body control amount transmitted from the remote control device 10. The configuration of the first moving body 20-1 will be described in detail later.
[0015] The object information acquisition unit 40 is composed of one or more sensors installed around the mobile object 20 or on the mobile object 20 itself. The object information acquisition unit 40 acquires the positions and attitudes (hereinafter referred to as "positions and attitudes") and speeds of obstacles such as automobiles, bicycles, and pedestrians that exist around the mobile object 20 as surrounding information. The object information acquisition unit 40 also acquires the position, attitude, and speed of the mobile object 20 as mobile object information. If an internal sensor is installed on the mobile object 20, the object information acquisition unit 40 may also acquire information detected by the internal sensor as mobile object information. The object information acquisition unit 40 transmits the mobile object information and surrounding information to the remote control device 10 via the network 30.
[0016] The object information acquisition unit 40 has a time synchronization unit 41. The time synchronization unit 41 cooperates with the time synchronization unit 21 in the mobile object 20, the time synchronization unit 51 in the environmental information acquisition unit 50, and the time synchronization unit 11 in the remote control device 10, and has a function of synchronizing the timing of data transmission and reception.
[0017] These time synchronization units 11, 21, 41, and 51 can achieve time synchronization outdoors by using a Global Navigation Satellite System (GNSS) sensor (GNSS is originally a global time synchronization system). Indoors, the time synchronization units 11, 21, 41, and 51 can achieve time synchronization by accessing an NTP (Network Time Protocol) server installed on the network 30.
[0018] Similar to the object information acquisition unit 40, the environmental information acquisition unit 50 is composed of one or more sensors installed around the mobile object 20. The environmental information acquisition unit 50 acquires information such as traffic lights and stop lines as environmental information. The environmental information acquisition unit 50 transmits the environmental information to the remote control device 10 via the network 30.
[0019] The environmental information may be included in the surrounding information acquired by the object information acquisition unit 40. In this embodiment, the environmental information is considered to be included in the surrounding information. Therefore, in the following description, the environmental information and the surrounding information will be collectively referred to as "surrounding information." Furthermore, the sensor used by the environmental information acquisition unit 50 may be installed in the mobile object 20.
[0020] The environmental information acquisition unit 50 has a time synchronization unit 51. The time synchronization unit 51 cooperates with the time synchronization unit 21 in the mobile object 20, the time synchronization unit 41 in the object information acquisition unit 40, and the time synchronization unit 11 in the remote control device 10, and has a function of synchronizing the timing of data transmission and reception.
[0021] The sensors used in the object information acquisition unit 40 and the environmental information acquisition unit 50 include, for example, a camera, LiDAR (Light Detection and Ranging), and radar. The camera is installed in a position where it can capture images of the front, sides, and rear of the vehicle 20, and acquires information from the captured images, such as the lane markings around the vehicle 20 and the position and speed of obstacles. The LiDAR detects the position of an object by emitting a laser beam to the surrounding area and detecting the time difference between the laser beam reflected by the surrounding object and the returned beam. The radar irradiates the surrounding area and detects the reflected wave to measure the relative distance and relative speed of nearby obstacles to the radar, and outputs the measurement results.
[0022] In addition, if a GNSS sensor capable of detecting the absolute position of obstacles around the mobile body 20 is installed on each obstacle or on the mobile body 20, and the GNSS sensor is capable of transmitting absolute position information to the remote control device 10 via the network 30, the GNSS sensor can detect mobile body information and surrounding information, so the object information acquisition unit 40 is not necessary.
[0023] The map database 60 stores map data of the area surrounding the mobile object 20. In FIG. 1 , the mobile object control calculation unit 15 in the remote control device 10 is connected to the map database 60, but not only the mobile object control calculation unit 15 but also each component in the remote control device 10 can access the map database 60. If the mobile object 20 is an automobile, the map database 60 often contains data related to automobile travel, such as road center coordinate information, stop line information, white line information, and drivable area information. If the mobile object 20 is a mobility robot that moves indoors, the map database 60 often contains data indicating the layout of structures within its range of movement and the location of passageways.
[0024] The remote control device 10 includes a time synchronization unit 11 , a receiving unit 12 , a transmission delay measurement unit 13 , a transmission delay distribution estimation unit 14 , a mobile object control calculation unit 15 , and a transmitting unit 16 .
[0025] The time synchronization unit 11 cooperates with the time synchronization unit 21 in the mobile body 20, the time synchronization unit 51 in the environmental information acquisition unit 50, and the time synchronization unit 41 in the object information acquisition unit 40, and has the function of synchronizing the timing of data transmission and reception.
[0026] The receiving unit 12 receives the moving body information and surrounding information from the object information acquiring unit 40 , the surrounding information (environmental information) from the environmental information acquiring unit 50 , and the moving body information from the moving body 20 .
[0027] The mobile object information includes a first state quantity, a second state quantity, and time information. The first state quantity is a state quantity acquired by a sensor, such as the position, velocity, acceleration, and angular velocity of the mobile object 20. The second state quantity is a state quantity not acquired by a sensor, and is estimated by a state estimation unit 1502 (described later) or the like. The time information is, for example, the time synchronized by the time synchronization unit 51, information for time synchronization processing, etc.
[0028] The mobile object control calculation unit 15 includes a first mobile object control calculation unit 15-1. The first mobile object control calculation unit 15-1 generates a mobile object control amount for controlling the movement of the mobile object 20 based on map information from the map database 60 and surrounding information and mobile object information from the receiving unit 12. The mobile object control amount is a signal for controlling the mobile object 20, such as a target route, a target trajectory, or a command value for an actuator of the mobile object 20.
[0029] In the present disclosure, the position coordinates of the path to be followed by the moving body 20 are referred to as a "target path." Furthermore, when the information on the target path includes instructions other than position coordinates, such as instructions on the time to reach each point on the path, the target path is referred to as a "target trajectory." The target path may also include a target speed (equivalent to an instruction on the time to reach). Note that the information included in the target trajectory along with the target path is not limited to the target speed or target position, and may be any state quantity of the moving body 20.
[0030] The transmission delay measurement unit 13 measures the transmission delay occurring between the first moving object 20-1 and the remote control device 10 using the time synchronized by the time synchronization unit 11. The transmission delay can be calculated from the difference between the transmission time included in the moving object information and the reception time when the moving object information is received by the remote control device 10.
[0031] Furthermore, if the mobile unit 20 does not have a time synchronization unit 21, the remote control device 10 can measure the transmission delay as follows. That is, first, the remote control device 10 transmits a packet to the mobile unit 20 and simultaneously records the time. The mobile unit 20 receives the packet and simultaneously transmits it to the remote control device 10, and the transmission delay can be calculated from the difference between the time the remote control device 10 received the packet and the time it was transmitted. The transmission delay calculated in this way is called RTT (Round Trip Time). Similarly, if the mobile unit 20 records the time, the RTT as seen from the mobile unit 20 can also be calculated.
[0032] The transmission delay distribution estimator 14 estimates transmission delay distribution information, which is information on the probability distribution of transmission delay, using the transmission delay information from the transmission delay measurement unit 13. The transmission delay distribution information is estimated based on a transmission delay model (a model of the probability distribution of transmission delay, the mode of transmission delay, etc.) created in advance. Note that instead of estimating the probability distribution of transmission delay, a model of the probability distribution of transmission delay created in advance may be used as the transmission delay distribution information, in which case the transmission delay distribution estimator 14 is not necessary.
[0033] The transmitter 16 transmits the moving object control amount from the first moving object control calculation unit 15-1 to the first moving object 20-1 via the network 30.
[0034] 2 is a block diagram showing an example of the configuration of the first mobile object control calculation unit 15-1 in this embodiment. The first mobile object control calculation unit 15-1 includes a reference path generation unit 1501, a state estimation unit 1502, and a control calculation unit 1503. When the remote control device 10 remotely controls two or more mobile objects 20, a second mobile object control calculation unit 15-2, a third mobile object control calculation unit 15-3, etc. are added to the mobile object control calculation unit 15, and these also include the reference path generation unit 1501, the state estimation unit 1502, and the control calculation unit 1503.
[0035] The reference route generating unit 1501 generates a reference route, which is a route to be used as a reference, from map information acquired from the map database 60 and position and attitude information of the mobile object 20. If the mobile object 20 is an automobile, the reference route may be a route that indicates the center of the lane. The reference route generating unit 1501 may also calculate a route from the initial position and attitude of the mobile object 20 to the target position and attitude using a general method such as the Dijkstra algorithm or the A* algorithm, and use this as the reference route.
[0036] The state estimation unit 1502 estimates a second state quantity, which is different from the first state quantity, among the state quantities of the mobile object 20, based on the mobile object information from the receiving unit 12, the reference route from the reference route generation unit 1501, and the transmission delay information from the transmission delay measurement unit 13. The second state quantity is a state quantity not acquired by a sensor. The state estimation unit 1502 estimates the second state quantity by applying an observer, a Kalman filter, a particle filter, or the like, based on a state equation that models the dynamic characteristics of the mobile object 20 and the mobile object information. The remote control device 10 controls the mobile object 20 using the second state quantity not acquired by the sensor, thereby enabling more accurate remote control of the mobile object 20. If the second state quantity includes a deviation from the reference route, the state estimation unit 1502 uses the reference route information. If there is no second state quantity, i.e., if all state quantities can be acquired by a sensor, the state estimation unit 1502 is unnecessary.
[0037] The control calculation unit 1503 calculates a moving object control amount for causing the moving object 20 to follow the reference path, based on the state quantities (including both the first state quantity and the second state quantity) from the state estimation unit 1502 and the reference path from the reference path generation unit 1501. The processing of the control calculation unit 1503 will be described in detail later.
[0038] Here, the mobile body 20 will be described. The mobile body 20 is an object that can change the position and orientation of its own body coordinate system relative to a reference coordinate system by using its own movement mechanisms such as wheels, propellers, legs, crawlers, etc. Examples of the mobile body 20 include automobiles, aircraft, drones, legged robots, probes, and agricultural machinery. Objects that can move other than these can also be treated as the mobile body 20. Note that if there are multiple mobile bodies 20, they may be combined.
[0039] 3 is a block diagram showing an example of the configuration of a first moving body 20-1 in this embodiment. The first moving body 20-1 includes a time synchronization unit 21, an internal sensor 22, a transmission unit 23, a reception unit 24, a command value calculation unit 25, and an actuator 26. When the remote control device 10 remotely controls two or more moving bodies 20, i.e., a second moving body 20-2, a third moving body 20-3, etc., these moving bodies also include a time synchronization unit 21, an internal sensor 22, a transmission unit 23, a reception unit 24, a command value calculation unit 25, and an actuator 26.
[0040] The time synchronization unit 21 cooperates with the time synchronization unit 11 of the remote control device 10, the time synchronization unit 51 in the environmental information acquisition unit 50, and the time synchronization unit 41 in the object information acquisition unit 40, and has the function of synchronizing the timing of data transmission and reception.
[0041] The internal sensor 22 is installed in the mobile body 20 and outputs internal information as mobile body information. The internal information is information necessary for grasping the internal state of the mobile body 20, in addition to information about the inertia of the mobile body 20, such as acceleration, speed, angular acceleration, and angular velocity. For example, in the case of an automobile, the internal sensor 22 is, for example, a vehicle speed sensor, an IMU (Inertial Measurement Unit) sensor, a steering angle sensor, and a steering torque sensor.
[0042] The transmitting unit 23 transmits the mobile object information from the internal sensor 22 to the receiving unit 24 of the remote control device 10 via the network 30 .
[0043] The receiving unit 24 receives the moving object control amount from the transmitting unit 16 of the remote control device 10 .
[0044] The command value calculation unit 25 converts the mobile object control amount into a current value or the like based on the mobile object information from the internal sensor 22 and the mobile object control amount from the receiving unit 24 , and outputs it to the actuator 26 .
[0045] The actuator 26 is a drive source for driving the moving mechanism of the moving body 20, and in the case where the moving body 20 is an automobile, it is an electric motor, a vehicle drive device, a brake control device, etc. In this case, the command value calculation unit 25 calculates the current value to be supplied to the electric motor in order to make the steering of the automobile follow the target steering amount, and outputs the calculation result to the electric motor.
[0046] Next, the control calculation unit 1503 of the first moving object control calculation unit 15-1 will be described with reference to Fig. 4. The control calculation unit 1503 is made up of a stochastic system optimization calculation unit 1511 and a control decision unit 1512.
[0047] The stochastic system optimization calculation unit 1511 has the function of performing optimization calculations to minimize or maximize a predetermined evaluation function from transmission delay distribution information, the state quantity of the mobile body 20, and the reference route, and outputting the optimal sequence to the control decision unit 1512.
[0048] The control decision unit 1512 has a function of deciding the amount of control of the moving object using the optimal sequence from the stochastic system optimization calculation unit 1511 .
[0049] The technology disclosed herein relates to a technology called probabilistic model predictive control, and therefore, probabilistic model predictive control will be first described here.
[0050] In the following, we will use the term "probabilistic" when dealing with quantities represented by random variables, and "deterministic" when dealing with deterministic quantities not represented by random variables. In addition, we will assume that the probability distribution is a probability density function used when the random variable is a real number, but the same applies to discrete probability distributions where the random variable takes discrete values. In the following, we will use the term ξ k is a Z-dimensional probabilistic vector whose elements vary in value according to their respective probability distributions.
[0051] Conventional model predictive control is a control method that sequentially determines control inputs by expressing the desired behavior over a horizon, which is a finite evaluation interval, as an evaluation function and solving a constrained optimal control problem from moment to moment, with the dynamic characteristics of the controlled object (corresponding to the mobile body 20 in this disclosure) expressed by a state equation and state and input constraints as constraints.
[0052] Based on this idea, stochastic model predictive control is a control method that treats the state variables and disturbances of the controlled object as random variables. Below, we consider the following discrete-time state equation:
[0053]
[0054] In formula (1), x k is an n-dimensional vector representing the state of the controlled object at time k (k is an integer), u k is an m-dimensional vector representing the control input, z k is an r-dimensional vector representing the evaluation output. In the following, the subscript k represents the time k. A(ξ k ), B u (ξ k ), B w (ξ k ), C(ξ k ), D u (ξ k ), D w (ξ k ) and ξ k These matrices are n×n, n×m, n×1, r×n, r×m, and r×1 matrices whose elements are ξ k In equation (1), A k :=A(ξ k ), B u,k :=B u (ξ k ), B w,k :=B w (ξ k ), C k :=C(ξ k ), D u,k :=D u (ξ k ), D w,k :=D w (ξ k ) Because these matrices are probabilistic, xk , z k is a random variable.
[0055] In stochastic model predictive control, as mentioned above, a constrained optimal control problem is solved moment by moment. To do this, first consider a horizon of length N (N is a natural number greater than or equal to 1), and the initial time k of the horizon is k = k 0 From the end time k = k 0 The evaluation function J for the response of Equation (1) up to +N is taken as Equation (2) below.
[0056]
[0057] Here, P N is an nxn, Q is an rxr, and R is an mxm definite positive definite symmetric matrix. A positive definite matrix is one whose eigenvalues are real numbers greater than or equal to 0. P N is set so that the controlled object is stable, and Q and R are z k and u k The superscript T represents the transpose. The initial state x of the horizon k0 is estimated by the state estimation unit 1502. E[f] represents the expected value calculation for the mapping f. That is, E[f] means the multiple integral of the quantity obtained by multiplying f by the joint probability density function p of the random variables on which f depends. More specifically, x k0+N is ξ k0 From ξ k0+N Since E[f] depends on Equation (3), for example, E[f] is expressed by the following equation (3).
[0058]
[0059] Since the expectation calculation has linearity, the expectation calculation for the linear sum of the mappings f and g is expressed as the following equation (4).
[0060]
[0061] Hereinafter, an evaluation function in the form of Equation (2) will be referred to as a "stochastic evaluation function."
[0062] Below, the input sequence U between horizons Nis defined as the following formula (5) and is treated as a variable vector to be optimized.
[0063]
[0064] At this time, U N is an N·m-dimensional vector. Similarly, the state sequence X between horizon N s,N is defined as the following equation (6).
[0065]
[0066] At this time, X s,N is an n·(N−1) dimensional vector.
[0067] In the case of probabilistic model predictive control, the state sequence is a random variable, so n p The constraints are probabilistic as shown in the following equation (7).
[0068]
[0069] Here, H p is n p ×n·(N-1) deterministic matrix. p is n p It is a β-dimensional vector. p is n p Pr is a dimensional vector, and each element is a real number ranging from 0 to 1. Pr represents the probability that the event occurs, and Equation (7) is H p X s,N Each element of H p The probability that p In this disclosure, a constraint such as that in Equation (7) is called a "chance constraint."
[0070] On the other hand, the expected value of the following state sequence is e Individual deterministic constraints can also be imposed.
[0071]
[0072] Here, H e is n e ×n·(N-1) deterministic matrix. e is n eis a -dimensional vector. In this disclosure, a constraint such as Equation (8) is called an "expectation constraint."
[0073] In addition, nc deterministic constraints can be imposed on the input sequence itself.
[0074]
[0075] Here, H c is n c ×N m deterministic matrix. c is n c is a -dimensional vector. In this disclosure, a constraint such as Equation (9) is called an "input constraint."
[0076] To summarize, the probabilistic model predictive control problem is solved by solving U that minimizes the evaluation function J of Equation (2) with Equation (1) as the state equation and Equations (7), (8), and (9) as the constraints. N That is, the probabilistic model predictive control problem is expressed as in the following equation (10).
[0077]
[0078] Here, although Equation (10) is written as minimizing J, if J is changed to -J, it becomes a maximization problem, so hereafter we will not distinguish between minimizing and maximizing J, but will use the term minimization. Note that the stochastic optimization problem of Equation (2) is N Since the problem is written in quadratic form, it is a stochastic quadratic programming problem. Although the constraints are expressed as equations (7), (8), and (9), it is not necessary to use all of them; appropriate constraints can be set for the problem.
[0079] Various methods have been proposed for solving Equation (10), but there are problems such as the solution being an approximation depending on the solution method or algorithm, or the optimization calculation taking a long time. k Assuming that the probability distribution of is known, a technique for converting the stochastic optimization problem of Equation (10) into a deterministic optimization problem using mapping is disclosed.
[0080] For deterministic constrained optimization problems, there are many algorithms and solvers that can efficiently and quickly obtain optimal solutions, such as the active set method and the interior point method. Hereinafter, these will be referred to as "deterministic solvers." Rather than solving the stochastic optimization problem of Equation (10), it is possible to convert it into a deterministic optimization problem and then solve it using a deterministic solver, thereby enabling efficient and fast solution of the stochastic optimization problem.
[0081] 4, a description will be given of the stochastic optimization calculation unit 1511. The stochastic optimization calculation unit 1511 is made up of a stochastic evaluation function conversion unit 1521 and a deterministic optimization calculation unit 1522.
[0082] The probability system evaluation function conversion unit 1521 converts the probability system evaluation function into U as shown in the following equation (11) from the state quantity of the moving object 20 and the reference path. N It has the function of converting it into a deterministic evaluation function of quadratic form with respect to
[0083]
[0084] Here, H N is an N m × N m matrix, c N is an N·m-dimensional vector. const. is U N It is a constant term that does not contribute to the optimization of the above, and will be ignored below. Note that hereinafter, the evaluation function that can be expressed by the formula (11) will be referred to as a "deterministic evaluation function."
[0085] The deterministic optimization calculation unit 1522 converts the deterministic evaluation function from the stochastic evaluation function conversion unit 1521 into a U that minimizes the deterministic evaluation function using the deterministic solver described above. N is calculated and output as the optimal sequence.
[0086] The following describes a specific calculation method for converting the stochastic evaluation function of formula (2) into the deterministic evaluation function of formula (11), which is the function of the stochastic evaluation function conversion unit 1521. As an example, the calculation of one item of formula (2), i.e., the following formula (12), will be described.
[0087]
[0088] From the discrete time state equation of equation (1), xk0+N can be written as the following equation (13).
[0089]
[0090] Here, it is defined as in the following equation (14).
[0091]
[0092] Then, equation (13) can be written as the following equation (15).
[0093]
[0094] Therefore, equation (12) can be expressed as follows: N It can be written in quadratic form with respect to
[0095]
[0096] Here, the term of Equation (12) in Equation (2) has been described, but the remaining terms are also similarly N Since equation (2) can be written in a quadratic form with respect to
[0097] By calculating the expected value calculation E included in Equation (16) by offline or online processing, the equation can be solved by a deterministic solver. Note that the expected value calculation E includes calculations such as the following Equation (17).
[0098]
[0099] A T k0 and A k0 It should be noted that since the are not independent, the relationship of the following equation (18) holds: This makes it difficult to convert a stochastic evaluation function into a deterministic evaluation function.
[0100]
[0101] According to the method of the present disclosure, it is possible to perform calculations such as those in Equation (17) precisely and quickly by using mapping.
[0102] There are two main methods for calculating E, as included in Equation (16). k Using the probability distribution that follows, ξ k0 From ξ k0+N This method generates multiple sample paths up to and including , and calculates the sample average of Equation (17). This is a calculation based on the law of large numbers, but if the number of sample paths is insufficient, the accuracy is poor and the calculation efficiency is also very poor, so it is not suitable for calculation in online processing. However, it is possible to calculate the expected value calculation E in advance using the sample average in offline processing and record it in memory, and then read and use that part in online processing.
[0103] The second method is ξ k This method is a method of analytically calculating the relationship between time k and ξ, i.e., a stochastic process model. With this method, by defining a mapping for each stochastic process model, it becomes possible to calculate the expected value quickly. This mapping differs depending on the stochastic process model, but in this disclosure, we will use ξ as an example. k We will explain the cases where the values follow an independent and identical distribution (hereinafter abbreviated as "i.i.d.") with respect to time k, and where the values follow a hidden Markov model (hereinafter abbreviated as "HMM"). For other stochastic process models, it is possible to define a mapping for each model in a similar manner.
[0104] In order to explain the mapping, the following will explain the term that arises when converting the probability system evaluation function of Equation (2) into Equation (11), that is, the calculation of the following Equation (19).
[0105]
[0106] First, ξ k We will explain the case where ξ follows i.i.d. k If follows i.i.d., then ξ kThe shape of the probability distribution of is time-invariant and has no time dependency in terms of how the values are generated. In the case of i.i.d., Lemma 2 described in Non-Patent Document 1 can be used. That is, we utilize the fact that the following equation (20) holds for any n×n symmetric matrix M.
[0107]
[0108] The symbol O and × represents the Kronecker product. A is a matrix H that satisfies the following equation (21) and is expressed as an n'×n matrix H Ai (i=1, . . . , n), and then expressing it as in Equation (23), it is an n'·n×n matrix.
[0109]
[0110]
[0111]
[0112] Here, row(A 0 ) is the matrix A 0 It is a row vector in which each element of A is arranged in order from the first row. 0 (i.e., when k = 0) is only considered because k is i.i.d., and it is sufficient to consider the case where k=0.
[0113] Using equation (20), the mapping V AA is defined as the following equation (24).
[0114]
[0115] This mapping is used to calculate Equation (19). In the case of i.i.d., ξ k are independent, the following equation (25) holds.
[0116]
[0117] Considering the equation (3), the equation (19) can be expressed as the following equation (26).
[0118]
[0119] Here, by using the mapping of the formula (24), the following relationship of the formula (27) is obtained.
[0120]
[0121] Repeat this process to get X N is expressed as Equation (19), and X 0 =P, the following formula (28) is obtained, which makes it possible to calculate formula (19) efficiently and precisely.
[0122]
[0123] Here, a method using a mapping has been described for calculating Equation (19), but other terms that arise when converting the stochastic evaluation function of Equation (2) into the deterministic evaluation function of Equation (11) can also be calculated efficiently by defining a mapping in the same way. For example, terms such as the following Equation (29) arise, so as with Equation (20), G that satisfies the following Equation (30) can be calculated. Bu The mapping of Equation (30) is defined using
[0124]
[0125]
[0126]
[0127] Using this mapping, Equation (29) can be calculated as Equation (32) below.
[0128]
[0129] In addition, G Bu is B u,0 can be obtained by the same procedure as in equations (21), (22) and (23) using
[0130] In this way, in the case of i.i.d., by defining a mapping, it is possible to convert a stochastic evaluation function into a deterministic evaluation function.
[0131] Next, ξ kThe following describes the case where the HMM follows. The HMM is a probabilistic model constructed assuming that modes (states) that output a sequence that follows a discrete or continuous probability distribution transition between modes according to a transition probability determined for each mode. Hereinafter, the probability distribution corresponding to each mode in the HMM will be referred to as the output distribution.
[0132] The output and mode transitions of an HMM will now be described. For example, if an HMM is in mode A at a certain time, it outputs a sequence according to the probability distribution of mode A. On the other hand, the mode may transition to another mode according to a certain transition probability, and the probability distribution of the output may change. For example, if there is a transition from mode A to mode B, a sequence according to the probability distribution of mode B is output during the time interval in which mode B is present. Since it is not possible to directly observe which mode an HMM is currently in, and only its output sequence can be observed, it is considered "hidden."
[0133] In the following, the HMM is assumed to be composed of L modes, which are referred to as mode 1, mode 2, ..., mode L. The output distribution of each mode is D 1 , D 2 , ..., D L and the mode at each time k is σ k (i.e., σ k (takes 1, 2, ..., L). Also, η k is the output sequence output by the HMM at time k, and η k is D at each time 1 , D 2 , ..., D L The output distribution is assumed to be η k is written as the random variable η(j). In the following, η at the time when the same mode occurs is k are independent at each time. k is expressed as the following equation (33), and σ k This indicates that the output distribution differs depending on the
[0134]
[0135] The transition probability from mode i to mode j is p ijand the transition between the modes of the HMM follows an irreducible and aperiodic Markov chain, the relationship of the following equation (34) is obtained.
[0136]
[0137] The transition matrix Π expressed by equations (35) and (36) and the probability vector A at time k k Using the above, the time transition of the mode can be expressed as follows by Equation (37):
[0138]
[0139]
[0140]
[0141] Next, similar to the explanation for the i.i.d. case, we will explain the mapping defined by the HMM using Equation (19) as an example. In the case of the HMM, ξ k is ξ one time ago k-1 Since it depends only on , the following equation (38) holds when the conditional probability is used.
[0142]
[0143] Considering Equation (3), Equation (19) can be expressed as Equation (39) using conditional expectation.
[0144]
[0145] The conditional expectation of equation (39) is ξ k Of which η k It does not depend on σ k Since it depends only on σ k Only σ k0-1 is k 0 This is the mode one hour earlier.
[0146] The calculation of Equation (39) needs to take into consideration the path that the HMM modes take between horizons. To do this, we use an n × n matrix M corresponding to L modes at time k. k (i) (i=1, 2, ..., L) and M k(i) is arranged in an ordered sequence M t,k is defined as the following equation (40).
[0147]
[0148] Furthermore, we define mappings expressed by the following equations (41) and (41).
[0149]
[0150]
[0151] Here, G Ai is the probability distribution D in mode i i and its output η (i) is a matrix expressed as in the following equation (43) using
[0152]
[0153] G Ai can be obtained by the same procedure as in equations (21), (22), and (23).
[0154] Equation (39) is calculated using Equations (40), (41), and (42). First, it is expressed as Equation (44) below, and the innermost part of Equation (39) can be expressed as Equation (45).
[0155]
[0156]
[0157] Here, by using the recurrence formula of the following formula (46), formula (39) can be further expressed as formula (47).
[0158]
[0159]
[0160] By repeating this, the following equation (48) can be calculated.
[0161]
[0162] This formula (48) is σ k0-1 For this calculation, time k 0Probability vector A at -1 k0-1 Consider the time k 0 If it is possible to observe which mode the HMM is in at -1, for example, at time k 0 If it is -1 and mode 1, then A k0-1 = [1 0 ... 0] T Also, at time k 0 If the HMM at -1 cannot be observed, A is k0-1 is given, and the probability of each mode is considered to be uniform, and the following equation (49) can be used.
[0163]
[0164] The time k given in this way 0 Probability vector A at -1 k0-1 Using the above, the following equation (50) is obtained.
[0165]
[0166] In this way, it is possible to efficiently and precisely calculate equation (19), where A k0-1,i is a probability vector A k0-1 is the i-th element of
[0167] For other terms such as those in Equation (39), mappings and recurrence formulas can be defined in a similar manner. In the case of HMMs, by defining the mapping in this way, it is possible to convert a probabilistic evaluation function into a deterministic evaluation function.
[0168] In addition, the horizon length N and the element p of the transition matrix Π of the HMM ij is not a fixed value, but may be changed online in accordance with the surrounding environment of the mobile object 20.
[0169] The processing in the stochastic evaluation function conversion unit 1521 explained here is the state x k0 , the initial probability A of the HMM k0-1 and transition probability p ijExcept for the parts related to terms that take different values online, such as , most parts are deterministic matrices and numerical values. Therefore, matrices and numerical values that do not change online can be calculated offline, stored in memory, and then read and used online, thereby speeding up online processing. This enables high-speed processing even when the horizon length N increases or decreases.
[0170] For example, in the case of i.i.d., ξ k As long as the shape of the probability distribution of A does not change with online information. A Calculate the value of G for online processing. A After reading out the above, it is possible to convert the stochastic evaluation function into a deterministic evaluation function by using the recurrence formula of formula (28). Since the calculation of the numerical recurrence formula itself has a small processing load, it is possible to convert the stochastic evaluation function into a deterministic evaluation function at high speed.
[0171] Similarly, in the case of HMM, η (i) k As long as the shape of the probability distribution of Ai does not change with online information. Therefore, as in the case of i.i.d., the G calculated and recorded offline Ai is read out online and the recurrence formula of Equation (46) is calculated, it is possible to convert a stochastic evaluation function into a deterministic evaluation function at high speed.
[0172] Similarly, the control decision unit 1512 described below can also speed up the process for matrices and numerical values that do not change with information obtained online by performing offline calculations, recording them in memory, and reading them out during online processing.
[0173] Depending on the surrounding environment of the moving body 20, the ξ k and η (i) k It is also possible that the shape of the probability distribution of changes. A and G AiRecalculate it online, or if you know in advance that there are multiple patterns of probability distribution, calculate G using the probability distribution for each pattern. A and G Ai In online processing, G is calculated according to the probability distribution pattern. A and G Ai can be read and used.
[0174] In this way, the probability system evaluation function conversion unit 1521 calculates ξ k By using the stochastic process model, the stochastic evaluation function is converted into a deterministic evaluation function.
[0175] 4, the specific operation of the control decision unit 1512 will be described. The control decision unit 1512 calculates the U N The optimum series is used to convert the data into a mobile object control amount for controlling the mobile object 20.
[0176] As described above, the moving body control amount is a target route, a target trajectory, or a command value to the actuator 26 of the moving body 20. In the case of a command value to the actuator 26, U N U included in k0 is output from the control decision unit 1512, but taking into consideration the delay in calculation, U N The terms included in, for example, u k0+1 etc. may be output.
[0177] When outputting a target route or a target trajectory as a moving object control amount, N and the state equation of the moving body 20, which is given by Equation (1). That is, the following Equation (51) is used.
[0178]
[0179] In equation (51), Ψ N , Θ u,N , and Θ w,N are expressed by the following equations (52), (53), and (54), respectively.
[0180]
[0181]
[0182]
[0183] The control decision unit 1512 determines whether X s,N The amount required for controlling the moving body 20 is extracted from the target path or target trajectory, and the moving body control amount is output. s,N is ξ k Since the probability distribution of X depends on the target route and target trajectory, the target route and target trajectory also have a probability distribution. If the moving body 20 can be controlled in accordance with the target route and target trajectory having such a probability distribution, it is sufficient to leave it as it is, but usually it is necessary to convert from the probability distribution to a definite target route and target trajectory. There are various conversion methods, such as taking the expected value or the maximum value of the distribution, but here we will use s,N The expected value E[X s,N ] is expressed as Equation (55), and E[X s,N ], we will describe a method for generating a target path or a target trajectory.
[0184]
[0185] Here too, ξ k We will explain the case where E[Ψ N ] is described below.
[0186] ξ k When i.i.d., as shown in equation (25), ξ k is independent of time k, so E[Ψ N ] can be calculated as follows:
[0187]
[0188] ξ k When HMM is used, as shown in equation (38), ξ k is ξ k-1 Therefore, for example, the following equation (57) holds true:
[0189]
[0190] As in the case of the stochastic evaluation function conversion unit 1521, an n×n matrix N corresponding to L modes at time k is k (i) (i=1, 2, ..., L) and Nk (i) The sequence N of the following formula (58) t,k is used.
[0191]
[0192] Here, a mapping expressed by the following equation (59) is defined.
[0193]
[0194] This mapping gives the following formula (60), which then gives a recurrence formula such as formula (61).
[0195]
[0196]
[0197] Using this mapping and the recurrence formula, equation (57) gives the initial probability A k0-1 Using the above, it is possible to perform the calculation as shown in the following equation (62).
[0198]
[0199] So far, we have looked at i.i.d. and HMM's E[Ψ N ] has been explained. u,N ] and E[Θ w,N ] can also be calculated in the same way.
[0200] The control decision unit 1512 determines the optimal sequence U N Extraction of a part of E[X s,N ] to generate a target path or a target trajectory.
[0201] Next, a method for remotely controlling the mobile object 20 will be described. A system that controls a control target (the mobile object 20 in this disclosure) via a network is called a network control system, and is used as a model for deriving a state equation of the control target. Here, a discrete-time state equation in a network control system will be described.
[0202] 5 is a block diagram for explaining a network control system in which a remote control device 10 controls a mobile object 20. In FIG. 5, solid lines represent input and output of signals expressed in continuous values, and dashed lines represent input and output of signals expressed in discrete values.
[0203] Since the mobile object information of the mobile object 20 acquired by the sensor is a discrete value, the mobile object information corresponds to the output value of the sampler S. Since the mobile object information is transmitted to the remote control device 10 via the network 30, a transmission delay (here, an upload transmission delay D up ) occurs. The mobile information is up The controller Ψ is delayed by d is input to the controller Ψ d outputs a control amount for controlling the mobile object 20 based on the mobile object information and other information. This control amount corresponds to the mobile object control amount output by the control calculation unit 1503. Since the control amount is transmitted to the mobile object 20 via the network 30, a transmission delay (here, a download transmission delay D dw ) occurs. The control amount input to the moving body 20 at a certain time is kept constant by the holder H until the next input. In other words, the holder H has a zero-order hold function. The control amount that has been zero-order held is input to the moving body 20.
[0204] Here, the continuous-time state equation of the control object Pc is expressed as the following equation (63).
[0205]
[0206] x c , u c are the states and inputs in continuous time. The superscript "'" indicates time differentiation. S and H in FIG. 5 are the sampling times t that satisfy the following equation (64). k is a sampler and zero-order hold operating under
[0207]
[0208] The sampling interval is h k = t k+1 -t kThen, in the network control system shown in FIG. k is not constant, but is sampled non-periodically. up and D dw At each time k, the arrival from the source to the destination is τ uk , τ dk It is a delay element that delays the
[0209] Now consider the stochastic process ξ. k =[ξ uk , ξ dk ] T and the constant ε u , ε d Using .gtoreq.0, the transmission delay is expressed as in the following equation (65).
[0210]
[0211] In this case, the following equation (66) holds true.
[0212]
[0213] where ε u , ε d is a physically determined transmission delay other than the stochastically varying transmission delay. Using the sampler S and the holder H, Equation (63) is converted into a discrete-time state equation as shown in the following Equation (67).
[0214]
[0215] Here, the relationship between the continuous signal and the discrete signal is as shown in Equation (68).
[0216]
[0217] At this time, A k、 B u,k and B w,k is given by the following equation (69).
[0218]
[0219] From this A k , B u,k and B w,k is,ξ k Equation (67) expresses the fact that the control input is uk Not U k-1 It is x k Determined depending on k cannot be obtained as an input at time k. Therefore, a new state x ek An expanded system expressed by Equation (70) is prepared by adding
[0220]
[0221] By replacing the formula (70) obtained here with the formula (1), h k can be applied to the control calculation unit 1503 by modeling it as a probability distribution that the transmission delay follows.
[0222] The processing of the remote control device 10 has been described above. Here, in order to provide a more specific example, a case where the mobile object 20 is an automobile will be described. Fig. 6 is a diagram showing an example of the configuration of the mobile object 20 when the mobile object 20 is an automobile.
[0223] In an automobile 200, which is a moving body 20, a steering wheel 201, which is used by a driver (i.e., a person operating the vehicle) to operate the automobile 200, is coupled to a steering shaft 202. A pinion shaft of a rack-and-pinion mechanism 204 is connected to the steering shaft 202. The rack shaft of the rack-and-pinion mechanism 204 is capable of reciprocating motion in response to rotation of the pinion shaft, and front knuckles 206 are connected to both left and right ends of the rack shaft via tie rods 205. The front knuckles 206 rotatably support the front wheels, which serve as steered wheels, and are supported by the vehicle body frame so that they can be steered.
[0224] The torque generated when the driver operates the steering wheel 201 rotates the steering shaft 202, and the rack and pinion mechanism 204 moves the rack shaft left and right in accordance with the rotation of the steering shaft 202. The movement of the rack shaft causes the front knuckle 206 to rotate about a kingpin shaft (not shown), thereby steering the front wheels left and right. Therefore, the driver can change the amount of lateral movement of the automobile 200 by operating the steering wheel 201 when the automobile 200 moves forward or backward. Note that if the automobile 200 is a driverless type that performs fully automatic driving or the like, a component for driver operation such as the steering wheel 201 is not required.
[0225] The automobile 200 is equipped with the internal sensors 22 shown in FIG. 3, such as a vehicle speed sensor 220, an IMU sensor 221, a steering angle sensor 222, and a steering torque sensor 223.
[0226] The automobile 200 is also equipped with an electric motor 203 for realizing lateral movement, a vehicle drive device 207 for controlling the longitudinal movement of the automobile 200, a brake control device 210, and the like, as the actuator 26 shown in FIG. 3.
[0227] The electric motor 203 is generally composed of a motor and a gear, and can freely rotate the steering shaft 202 by applying torque to the steering shaft 202. In other words, the electric motor 203 can freely steer the front wheels independently of the operation of the steering wheel 201 by the driver.
[0228] The vehicle drive device 207 drives the automobile 200 in the forward and backward directions. The vehicle drive device 207 rotates the front and rear wheels using driving force obtained from a driving source such as an engine or a motor via a transmission and a shaft (not shown). This allows the vehicle drive device 207 to freely control the driving force of the automobile 200.
[0229] The brake control device 210 brakes the automobile 200 and controls the amount of braking of the brakes installed on the front and rear wheels of the automobile 200. A typical brake generates braking force by using hydraulic pressure to press pads against disc rotors that rotate together with the front and rear wheels.
[0230] The camera 230 detects lane lines, obstacles, and the like that exist around the automobile 200 and functions as an object information acquisition unit 40 .
[0231] 3 , and controls the traveling of the automobile 200. That is, the mobile body control device 250 controls the electric motor 203, the vehicle drive device 207, the brake control device 210, and the like, which are actuators 26, based on mobile body information acquired by the internal sensors 22, such as the vehicle speed sensor 220, the IMU sensor 221, the steering angle sensor 222, and the steering torque sensor 223, and based on the mobile body control amount received from the remote control device 10.
[0232] Although not shown, the automobile 200 is also equipped with the time synchronization unit 21, the transmission unit 23, and the reception unit 24 shown in FIG.
[0233] Each device mounted on the automobile 200 forms part of a network 30 using a CAN (Controller Area Network) or a LAN (Local Area Network) within the automobile 200, and is able to acquire information necessary for each device's operation via the network 30. In addition, the internal sensors 22, namely, a vehicle speed sensor 220, an IMU sensor 221, a steering angle sensor 222, and a steering torque sensor 223, are also able to transmit and receive data to and from each other via the network 30.
[0234] A continuous-time state equation that models the dynamic characteristics is obtained for each dynamic characteristic of the moving body 20. This disclosure provides a remote control device 10 that can be applied to various moving bodies 20, but here, a detailed description will be given of an example in which the moving body 20 is an automobile 200. Note that although many methods for controlling the moving body 20 have been proposed, this embodiment will describe a method for controlling lateral movement relative to a reference path.
[0235] First, a continuous-time state equation representing the lateral dynamic characteristics of the moving body 20 will be described with reference to Fig. 7. The coordinate system having the X and Y axes in Fig. 7 is a reference coordinate system, and the x b axis, y b The coordinate system having the axes is the body coordinate system. The lateral deviation and the deflection angle of the moving body 20 relative to the reference path expressed in the reference coordinate system are respectively expressed as e y , e θ Then, the continuous-time state equation of the moving body 20 in the lateral direction is expressed by the following equation (71).
[0236]
[0237] In formula (71), x c , A c , B cu , B cw is expressed by the following equation (72).
[0238]
[0239] The superscript "'" indicates time differentiation. Each symbol is defined as follows: x : Vehicle speed [m / s] δ: Rudder angle [rad] κ: Curvature of reference route [1 / m] m: Mass [kg] L f : Distance between center of gravity and front wheel axle [m] L r : Distance between center of gravity and rear wheel axle [m] I z : Moment of inertia around the yaw axis [kg m2] C f : Front wheel cornering stiffness [N / rad] C r : Rear wheel cornering stiffness [N / rad] e y : Lateral deviation from the reference path to the center of gravity of the vehicle [m] e y ':e y Time derivative of [m / s] e θ : Deflection angle from the reference path to the center of gravity of the vehicle [rad] e θ ':e θ The cornering stiffness is a proportional coefficient that represents the relationship between the lateral force generated on the moving body 20 and the sideslip angle, and is a value that changes depending on the state of the contact surface between the moving body 20 and the road surface, for example, a dry surface, a wet surface, or a frozen surface.
[0240] The curvature κ of the reference trajectory requires a predicted value between horizons N. There are several possible methods for this prediction, but the simplest method is to assume that κ is a constant value between horizons N and use the same value of κ between horizons.
[0241] As another method, the predicted position of the moving body 20 on the reference path between horizons N is obtained by assuming that the moving body 20 moves on the reference path at a constant speed. If the information on the reference path includes the curvature of each point on the reference path, the curvature of the reference path at the predicted position can be read and used. Furthermore, if the reference path is expressed by a spline, a polynomial, or the like, the curvature at the predicted position can be calculated. That is, for example, if the reference path is expressed by Y = fr(X), the curvature at the predicted position can be obtained by the following equation (73).
[0242]
[0243] If the reference path is expressed as an X, Y point group or the like, the point group is first approximated by a smooth function such as a spline or polynomial, and the curvature can be found by calculating Equation (73). In addition, the curvature can be treated as a parameter with variation, and ξ can be used as a random variable with a probability distribution. k and can be incorporated into equation (1).
[0244] The continuous time state equation of Equation (71) is calculated using the sampling interval h determined by the probability distribution of the transmission delay. k Using the formulas (69) and (70), the state equation for remote control of the moving body 20 is derived in the form of formula (1). k Although the explanation has been given that includes only the transmission delay, the deterministic optimization calculation unit 1522 varies in its processing time, so h k may include a random variable that represents the variation in the processing time of the stochastic system optimization calculation unit 1511.
[0245] Next, we will discuss the stochastic model of transmission delay. The stochastic model must take into account the shape of the probability distribution and the time dependency of the probability distribution, i.e., a stochastic process model.
[0246] Although Rayleigh distribution, log-normal distribution, and other distributions have been proposed as the shape of the probability distribution of transmission delay, the method disclosed herein can use any shape for the probability distribution. Therefore, for example, it is possible to measure transmission delay data in advance, create a histogram using that data, and treat the resulting histogram as the probability distribution of transmission delay.
[0247] Furthermore, although the stochastic process model may be the i.i.d. or HMM, which have already been described, in the method of the present disclosure, any model may be used as long as a mapping such as that in Equation (24) or Equation (41) can be defined.
[0248] Here, the reason why transmission delay can be modeled using an HMM will be explained using Figures 8 and 9. Figure 8 is an explanatory diagram showing an example of a time series of transmission delay. The figure shows a series with time on the horizontal axis and the amount of transmission delay on the vertical axis, and can be easily obtained using the output of the transmission delay measurement unit 13.
[0249] When a dedicated line is not used, transmission delay generally does not take a constant value, but always takes a variable value. This is shown in Figure 8, which shows that the variation changes for each time interval. Time intervals 1 and 3, as well as time intervals 4 and 6 in the figure, each show a similar degree of variation, while time intervals 2 and 5 are clearly intervals where large transmission delays are likely to occur.
[0250] If we consider that transmission delays output a sequence according to an HMM, then time intervals that vary in the same way can be considered to be in the same mode in the HMM. That is, time intervals 1 and 3, and time intervals 2 and 4 can be considered to be in the same mode, and are designated mode 1 and mode 2, respectively. Similarly, time intervals 2 and 5 can be considered to be mode 3 and mode 4, respectively.
[0251] These can be represented as an HMM and modeled as shown in Figure 9. Figure 9 shows an HMM with a total of four modes. In mode 1, it is possible to configure an HMM that outputs a normal distribution with a relatively small mean and variance. In mode 2, it is possible to configure an HMM that outputs a normal distribution with a large mean and variance. In mode 3, it is possible to configure an HMM that outputs an exponential distribution with a small mean value. In mode 4, it is possible to configure an HMM that outputs an exponential distribution with a large mean value. However, it should be noted that these distributions are merely an image, and that actual communication delays do not take negative values like normal distributions.
[0252] Here, p ij (i = 1, 2, 3, 4, j = 1, 2, 3, 4) is the transition probability from the source mode i to the destination mode j. For example, if the source mode is 1, then p 11 , p 12 , p 13 represent the transition probabilities from mode 1 to mode 1, from mode 1 to mode 2, and from mode 1 to mode 3, respectively. The same is true for mode 2, mode 3, and mode 4. In this way, the transmission delay can be modeled using an HMM as an example of a transmission delay model.
[0253] The inventors of the technology disclosed herein will now explain the reason why transmission delay is modeled in this way. In a typical network 30, routing control is performed to efficiently and reliably deliver packets, which are the units of data transmission and reception, to the correct destination. This routing control may result in changes to the packet route, and mode transitions can be interpreted as representing the route switching situation. While such routing control occurs less frequently in small-scale networks 30, the frequency of route switching and the variation in transmission delays change significantly in large-scale networks 30. Such route switching can be interpreted as mode switching in the HMM. However, in reality, other factors, such as the surrounding conditions of the mobile unit 20, may also be responsible.
[0254] In this disclosure, the configuration of FIG. 9 is used to explain the HMM, but the increase or decrease of modes and the probability distribution of each mode can be set arbitrarily.
[0255] When the transmission delay can be modeled by an HMM, the mode of the HMM can be estimated by the transmission delay distribution estimation unit 14 and used for processing in the probability system evaluation function calculation unit. In other words, it can also be used as the initial mode probability between horizon N.
[0256] Next, z in Equation (1) k First, we design x k Therefore, if the relationship of the following equation (74) is established, the control calculation unit 1503 can k The optimal sequence is output such that converges to 0.
[0257]
[0258] Here, z as shown in equation (74) k However, when noise is added to the position and posture of the moving body 20, e y Yae θ It is possible to take into account multiplicative noise or additive noise by adding it to the random variable. In this case, a new random variable is considered, and in the case of additive noise, D w,k In the case of multiplicative noise, the random variable is set to the element corresponding to C k Noe y and e θ Similarly, we can set the random variable to the element corresponding to e y 'Ya θ The probability distribution of ' can also be considered.
[0259] In formula (72), B cw is a term that takes into account the curvature of the reference path. In the present disclosure, by using a state equation that takes into account this term, it is possible to take into account the curvature of the reference path that could not be taken into account in Patent Document 1, thereby producing the effect of improving the followability to the reference path.
[0260] In this disclosure, the evaluation function is expressed as the optimization variable U Nis a quadratic programming problem, but it is a linear programming problem, i.e., the evaluation function is U N In this case, the problem is called a linear programming problem, but it is possible to convert the stochastic programming problem into a deterministic optimization problem using a method similar to that described in this disclosure. In this case, an efficient solver using linear programming or the like can be used as the deterministic solver.
[0261] Furthermore, although a state equation such as Equation (72) is used in this disclosure, it must be modified to suit the mobile object 20.
[0262] The mass m and moment of inertia I used in equation (72) z , Cornering Stiffness C f Or C r The parameters of may change depending on the number of occupants and the state of the contact surface between the car and the road surface. Although these cannot be directly observed, if the probability distribution is known, we can define the random variable with that probability distribution as ξ k and can be incorporated into Equation (1). This enables more accurate control of the moving body. Note that even for moving bodies 20 other than automobiles, adding the uncertain part of the dynamic characteristics of the moving body 20 to the random variables enables more accurate control of the moving body.
[0263] The method disclosed herein uses information about the reference route (future information between horizons from the current time), and therefore can provide a remote control device 10 that can improve tracking of the reference route even when the reference route includes curvature.
[0264] <Embodiment 2> In embodiment 2, a remote control device 10 is provided that can ensure safety by avoiding obstacles even when the obstacles are present around the mobile object 20. Note that a description of the same content as in embodiment 1 will be omitted.
[0265] Fig. 10 is a functional block diagram of the remote control device 10 in embodiment 2. An obstacle movement prediction unit 17 is added to the configuration of the remote control device 10 in embodiment 1 (Fig. 1).
[0266] The obstacle movement prediction unit 17 has a function of predicting the position of an obstacle within the horizon N using the surrounding information from the receiving unit 12 and the map information from the map database 60, and outputting the prediction result as obstacle prediction information. As a method for predicting the movement of an obstacle, for example, when the surrounding information includes speed information of the obstacle, various existing methods can be applied, such as a method of predicting the movement of an obstacle by assuming that the obstacle moves at a constant speed in a straight line, or a method of predicting the movement of an obstacle using an obstacle movement prediction model learned by machine learning. The obstacle movement prediction unit 17 may use any method as long as it can predict the position of an obstacle within the horizon N.
[0267] 11 shows the configuration of the mobile object control calculation unit 15 (first mobile object control calculation unit 15-1) in embodiment 2. Obstacle prediction information from the obstacle movement prediction unit 17 is combined with the configuration of the mobile object control calculation unit 15 in embodiment 2 (FIG. 2) so that it can be used in the control calculation unit 1503.
[0268] 12 is a functional block diagram of a stochastic system optimization calculation unit 1511 in embodiment 2. A constraint calculation unit 1523 is added to the configuration of the stochastic system optimization calculation unit 1511 included in the control calculation unit 1503 (FIG. 4) in embodiment 1.
[0269] The constraint calculation unit 1523 has a function of generating definite constraint conditions for avoiding obstacles using the reference route and obstacle prediction information. Here, the definite constraint conditions are n u These are individual constraints, and are referred to as "definite constraints" in this disclosure.
[0270]
[0271] Here, H u is n u ×m N deterministic matrix, and h u is n u It is a dimensional vector.
[0272] As shown above, constraints in probabilistic model predictive control include chance constraints, expected value constraints, and input constraints, as shown in equations (7), (8), and (9). For input constraints, equation (7) can be used as is. For expected value constraints, E[X s,N ] can be calculated using Equation (55). As already shown, if a stochastic process model such as i.i.d. or HMM is used, high-speed and precise calculation becomes possible.
[0273] Various methods have been proposed to convert chance constraints into deterministic constraints, such as using probability inequalities such as Chebyshev's inequality and Cantelli's inequality, generalized polynomial chaos, and conversion to expectation constraints (conservative approximation). Using these methods, the chance constraints in Equation (7) can be converted into deterministic constraints.
[0274] The constraint calculation unit 1523 calculates a deterministic constraint condition such as equation (75) by combining the chance constraint, the expected value constraint, and the input constraint, and outputs it to the deterministic optimization calculation unit 1522 .
[0275] The deterministic optimization calculation unit 1522 optimizes the deterministic evaluation function from the stochastic evaluation function conversion unit 1521 under the deterministic constraint conditions from the constraint calculation unit 1523, and outputs an optimal sequence.
[0276] The operation of the constraint calculation unit 1523 will be described with reference to Fig. 13. In Fig. 13, the reference route of the car is calculated by dividing the reference route into two routes with an interval of 2L. l The figure shows a scene in which a stationary obstacle exists near the reference route, with the center line between the lane markings. In this case, the vehicle must observe the constraint of not approaching the stationary obstacle. The black dots in Figure 13 represent the predicted positions of the moving object 20 near the reference route during horizon N, and are determined by assuming that the moving object 20 moves at a constant speed on the reference route.
[0277] In such a case, the constraint calculation unit 1523 sets an avoidance area large enough to include the stationary obstacle so as not to get closer than necessary to the stationary obstacle, and sets constraints on this avoidance area. In the case of Figure 13, the avoidance area is set at Lo inward from the position of the lane marking. Time between horizons N, k = k 0 +i 1 , k=k 0 +i 2 , k=k 0 +i 3 It is assumed that the vehicle is predicted to approach the avoidance area of a stationary obstacle at these times. y,k0+i1 , e y,k0+i2 , e y,k0+i3 A chance constraint is set as shown in the following equation (76).
[0278]
[0279] If βc is set to, for example, 0.95, it is possible to prevent the moving body 20 from entering the avoidance area with a probability of 95% or more. Furthermore, if there is no problem with the expected value constraint, the following formula (77) can be used.
[0280]
[0281] In addition, e at other times y For e, we set a constraint so that it does not go beyond the boundary lines. y,k0+i1 , e y,k0+i2 , e y,k0+i3 The constraints on are the appropriate Dc and X s,N Therefore, it can be written as in Equation (7).
[0282] In this embodiment, an example of avoiding a stationary obstacle has been described, but moving obstacles can also be avoided in the same way. Specifically, it is sufficient to set constraints according to the predicted positions of obstacles between horizons N.
[0283] The obstacle movement prediction unit 17 may predict the position of the moving object 20 and its probability distribution by taking into account the probability distribution of transmission delay.
[0284] The configuration of this embodiment makes it possible to provide a remote control device 10 that can avoid obstacles.
[0285] Third Embodiment In a third embodiment, a remote control device 10 is provided that can simultaneously control the movement in the forward / backward direction and the lateral direction by separating the control of the lateral direction and the forward / backward direction of the moving object 20. Note that a description of the same content as in the first and second embodiments will be omitted.
[0286] The reason why such a remote control device 10 is necessary will be explained below. Here, the front-rear direction is the x direction in the body coordinate system of FIG. b The axial direction is indicated by y b In general, when the controlled object is a moving body, the movement in the forward / backward direction and the movement in the lateral direction are coupled due to the motion constraint. Therefore, it is desirable to control the movement in the forward / backward direction and the lateral direction simultaneously, but in this case, the state equation of the moving body 20 becomes nonlinear with respect to the state, making it difficult to handle. In fact, when the velocity v is added to the state equation in the lateral direction as in Equation (72), x Therefore, it is preferable to first control the front-rear direction and then use that information to control the lateral direction.
[0287] Two configuration examples of the control calculation unit 1503 included in the mobile object control calculation unit 15 of the remote control device 10 in the third embodiment will be shown below.
[0288] 14 shows a first example configuration of the control calculation unit 1503 in embodiment 3. As shown in FIG. 14 , the control calculation unit 1503 in the first example configuration is made up of a longitudinal direction control unit 1531, a lateral direction control unit 1532, and a control determination unit 1533.
[0289] The longitudinal direction control unit 1531 has a function of using the reference route, obstacle prediction information, and state quantities to output a longitudinal direction sequence between horizons N. The lateral direction control unit 1532 has a function of using the longitudinal direction sequence, reference route, obstacle prediction information, and state quantities to output an optimal lateral direction sequence between horizons N. The control determination unit 1533 determines a mobile object control amount for controlling the mobile object 20 from the longitudinal direction sequence and the optimal lateral direction sequence.
[0290] The forward / backward direction control unit 1531 is further configured with a speed planning unit 1541. The output of the speed planning unit 1541 will be explained using Fig. 15. In Fig. 15, the horizontal axis represents time, and the vertical axis represents the speed at that time. The speed planning unit 1541 calculates the speed at the start time k of the horizon. 0 From k 0 The speeds at each time up to +N are calculated as a longitudinal direction series and output. In particular, Fig. 15 shows speed series for normal driving sections, curve sections, approach sections, and stopping sections, and shows an example of a speed series in which the specified speed is set in normal driving sections, deceleration is performed in curve sections in accordance with the curvature of the reference route, deceleration is performed in approach sections to stop before an obstacle, and the vehicle is maintained stopped in stopping sections. The longitudinal direction control unit 1531 outputs the longitudinal direction series from the speed planning unit 1541 that performs such operations.
[0291] The horizontal direction control unit 1532 further comprises a stochastic optimization calculation unit 1551. The stochastic optimization calculation unit 1551 reflects the longitudinal direction sequence from the longitudinal direction control unit 1531 and calculates the horizontal direction optimum sequence. Now, in order to take the longitudinal direction sequence into consideration, Equation (1) is changed to the external parameter q k That is, the horizontal control unit 1532 rewrites the equation (1) as the following equation (78).
[0292]
[0293] In equation (78), A and B u , B w , C, D u , D w The matrix of random variables ξ k and the external deterministic parameter q k In the present disclosure, q k corresponds to the longitudinal direction series from the longitudinal direction control unit 1531. More specifically, as shown in Equation (72), the state equation is x Since it depends on q k v between horizons x This is equivalent to regarding it as
[0294] In this case, it is necessary to change the mapping of the formula (24) or the formula (41) used in the stochastic system evaluation function conversion unit 1521. For example, in the case of the formula (24), G A Gaq k That is, the mapping V AA is defined as the following equation (79).
[0295]
[0296] G A (q k Regarding the calculation method of A, in the process of calculating the formulas (21), (22) and (23), 0 (ξ k ) but A 0 (ξ k , q k ) can be calculated as follows. A (q k ) for q k Although it is possible to calculate it sequentially when q is obtained, it is not suitable for online processing because it takes time to calculate. k For example, if the speed is controlled only within the range of 0 [km / h] to 100 [km / h], the speed range is divided into Nq points, and the divided points are designated as q 1 , q 2 , ..., q Nq Then, G at each division point A The map of (q) is obtained by offline processing. In online processing, the map obtained by offline processing is used to efficiently perform G A (q k ) can be used. k A mapping can be defined according to
[0297] Here, we have described the mapping in the case of i.i.d., but the mapping in the case of HMM can also be calculated in a similar way. k A mapping can be defined according to
[0298] The control decision unit 1533 outputs the moving body control amount from the longitudinal direction series and the lateral direction optimum series. Specifically, as in the first embodiment, it outputs the target route, the target trajectory, and the command value to the actuator 26 of the moving body 20.
[0299] The first configuration example of the control calculation unit 1503 can provide a remote control device 10 that can control not only the lateral direction of the moving body 20 but also the forward and backward directions at the same time.
[0300] FIG. 16 shows a second configuration example of the control calculation unit 1503 in the third embodiment. In this configuration, a remote control device 10 is provided that can further improve performance by applying probabilistic model predictive control to longitudinal control. The configuration shown in this embodiment can improve ride comfort by suppressing changes in acceleration, for example. The difference from the first configuration example is that the longitudinal control unit 1531 is composed of a stochastic system optimization calculation unit 1542 and a longitudinal control determination unit 1543. A feature of this configuration is that the longitudinal control unit 1531 also uses probabilistic model predictive control.
[0301] The stochastic system optimization calculation unit 1542 uses the reference route, obstacle prediction information, and state quantities to output the longitudinal direction optimal sequence.
[0302] The state equation of the moving body 20 in the forward / backward direction is the target acceleration u a From vehicle speed v x The continuous time state equation up to time constant T a When modeled as a first-order lag system, the longitudinal acceleration α x and the gravitational acceleration g, the gradient θ of the reference path a Using the above, it can be expressed as the following equation (80).
[0303]
[0304] x in formula (80) a , A a , B au , B aw is expressed by the following equation (81). a is included in the map database 60, etc.
[0305]
[0306] As in the case of the horizontal continuous-time state equation shown in the first embodiment, the sampling interval is set to h kAfter constructing the discretization and augmentation system using equations (69) and (70) in this case, the evaluation function of equation (2) can be constructed taking into account the output of equation (74).
[0307] In this case, for the evaluation function Q, α x By adjusting the vehicle to suppress this, it is possible to improve the ride comfort. Also, by setting appropriate constraints, it is possible to realize behaviors such as stopping the vehicle in front of an obstacle, or following the speed of a moving obstacle.
[0308] Other processing by the stochastic optimization calculation unit 1542 is the same as that of the stochastic optimization calculation unit 1511 described in the first embodiment, and the optimal sequence U aN will be output.
[0309] The longitudinal direction control determination unit 1543 has a function of outputting a longitudinal direction sequence from the longitudinal direction optimum system. Specifically, the longitudinal direction optimum sequence U aN Using equations (80) and (51), a series of velocities between horizons N is output.
[0310] Furthermore, although a state equation such as Equation (81) is used in this disclosure, it must be modified to suit the moving body 20.
[0311] The configuration of this embodiment makes it possible to provide a remote control device 10 that can take into consideration the riding comfort in the longitudinal direction.
[0312] Fourth Embodiment In a fourth embodiment, a remote control device 10 is provided that can simultaneously control a plurality of moving objects 20. Note that a description of the same content as in the first, second, and third embodiments will be omitted.
[0313] Fig. 17 is a block diagram showing an example of the configuration of the remote control device 10 when controlling two or more moving objects 20 in this embodiment. The configuration of the remote control device 10 in Fig. 17 differs from Figs. 1 and 10 in that the moving objects 20 include multiple moving objects (first moving object 20-1, second moving object 20-2, ..., Mth moving object 20-M), that it further includes a global behavior planning unit 18, and that the moving object control calculation unit 15 includes multiple moving object control calculation units (first moving object control calculation unit 15-1, second moving object control calculation unit 15-2, ..., Mth moving object control calculation unit 15-M) that control the multiple moving objects. Other than these, the configuration is the same as Figs. 1 and 10, and therefore description thereof will be omitted.
[0314] The receiving unit 12 receives the moving body information and surrounding information from the object information acquiring unit 40 , the surrounding information from the environment information acquiring unit 50 , and the moving body information from each moving body 20 .
[0315] The transmission delay measurement unit 13 calculates the transmission delay of each of the two or more mobile objects 20 based on the mobile object information from the receiving unit 12 .
[0316] The transmission delay distribution estimator 14 calculates transmission delay distribution information for each of the two or more mobile objects 20 based on the transmission delay information for each of the two or more mobile objects 20 from the transmission delay measuring unit 13 .
[0317] The global action planning unit 18 has a function of calculating a global desired action for each of two or more moving bodies 20 using the surrounding information and moving body information, and outputting the calculated global desired action to the moving body control calculation unit 15. The desired action is a desired action for each moving body 20, such as normal driving, decelerating, obstacle avoidance, stopping, changing lanes, avoiding onto the shoulder, and emergency avoidance. The desired action includes numerical or symbolic representations of these actions (e.g., desired action A, desired action B, etc.). The desired action also includes a target signal for each action, such as a target stopping position in the case of stopping, or a target lane number in the case of changing lanes.
[0318] The global target action is a signal that summarizes the target actions for each of the moving bodies 20. The global target action may also include a priority that indicates the order in which two or more moving bodies 20 should take action.
[0319] The mobile object control calculation unit 15 calculates mobile object control amounts for controlling two or more mobile objects 20 using the global target behavior, surrounding information, and mobile object information from the global behavior planning unit 18. Details will be explained later.
[0320] In addition, if the network environment and surrounding conditions of two or more mobile objects 20 can be considered to be approximately the same, the transmission delay distribution estimation unit 14 considers the transmission delay distribution information of those two or more mobile objects 20 to be the same. For example, if there are two mobile objects 20, a first mobile object 20-1 and a second mobile object 20-2, the transmission delay distribution estimation unit 14 considers the transmission delay distribution information of the first mobile object 20-1 and the transmission delay distribution information of the second mobile object 20-2 to be the same. In other words, the transmission delay distribution estimation unit 14 calculates a single transmission delay distribution using either the transmission delay distribution information of the first mobile object 20-1 or the transmission delay distribution information of the second mobile object 20-2, and outputs this to the first mobile object control calculation unit 15-1 and the second mobile object control calculation unit 15-2. In this configuration, the transmission delay distribution estimation calculation only needs to be performed once, reducing the calculation load. The same applies when there are three or more mobile objects 20.
[0321] The transmitter 16 transmits the mobile body control amounts for the multiple mobile bodies 20 output by the mobile body control calculation unit 15 to the multiple mobile bodies 20 via the network 30. For example, the mobile body control amount from the first mobile body control calculation unit 15-1 is transmitted to the first mobile body 20-1, and the mobile body control amount from the second mobile body control calculation unit 15-2 is transmitted to the second mobile body 20-2.
[0322] Three configuration examples of the mobile object control calculation unit 15 included in the remote control device 10 in the fourth embodiment will be shown below.
[0323] 18 shows a first configuration example of the mobile object control calculation unit 15 in embodiment 4. The mobile object control calculation unit 15 in FIG. 18 includes a first mobile object control calculation unit 15-1, a second mobile object control calculation unit 15-2, ..., an M-th mobile object control calculation unit 15-M that control a first mobile object 20-1, a second mobile object 20-2, ..., an M-th mobile object 20-M, respectively. For example, the first mobile object control calculation unit 15-1 calculates a control amount for the first mobile object 20-1 based on obstacle prediction information, map information, mobile object information of the first mobile object 20-1, a target behavior of the first mobile object 20-1, and transmission delay distribution information of the first mobile object 20-1. Similarly, the second mobile body control calculation unit 15-2 calculates the control amount for the second mobile body 20-2 based on obstacle prediction information, map information, mobile body information of the second mobile body 20-2, target behavior of the second mobile body 20-2, and transmission delay distribution information of the second mobile body 20-2.
[0324] With this configuration, it is possible to remotely control multiple moving bodies 20. However, with this configuration, the global action plan must plan the target action for each moving body 20, which tends to complicate processing and increase the processing load. When the number of moving bodies 20 is small, the first configuration example is sufficient, but the second and third configuration examples shown below are more preferable.
[0325] FIG. 19 shows a second configuration example of the mobile object control calculation unit 15 in the fourth embodiment. The mobile object control calculation unit 15 in FIG. 19 also includes a first mobile object control calculation unit 15-1, a second mobile object control calculation unit 15-2, ..., an M-th mobile object control calculation unit 15-M that control a plurality of mobile objects 20. However, the mobile objects 20 controlled by the first mobile object control calculation unit 15-1, the second mobile object control calculation unit 15-2, ..., the M-th mobile object control calculation unit 15-M are determined by the priorities of the plurality of mobile objects 20 calculated by the global behavior planning unit 18. Here, the priorities are expressed in order from highest to lowest as priority 1, priority 2, .... That is, the first mobile object control calculation unit 15-1 calculates the mobile object control amount for the mobile object 20 with priority 1, and the second mobile object control calculation unit 15-2 calculates the mobile object control amount for the mobile object 20 with priority 2.
[0326] Furthermore, the calculation of the moving body control amount by the first moving body control calculation unit 15-1, the second moving body control calculation unit 15-2, ..., the Mth moving body control calculation unit 15-M is performed in descending order of priority. That is, each of the first moving body control calculation unit 15-1, the second moving body control calculation unit 15-2, ..., the Mth moving body control calculation unit 15-M uses, as its own constraint condition, a target trajectory determined from the moving body control amount of another moving body 20 that has a higher priority than the moving body 20 that it controls and for which calculation was completed earlier.
[0327] Specifically, first, the first mobile object control calculation unit 15-1 calculates the control amount of the mobile object 20 with priority 1, and then the second mobile object control calculation unit 15-2 calculates the control amount of the mobile object 20 with priority 2. At this time, the second mobile object control calculation unit 15-2 calculates the mobile object control amount of the mobile object 20 with priority 2, using the mobile object control amount of priority 1, for which calculation has already been completed, as a constraint. Similarly, the control amounts of the mobile objects 20 with priority 3 and above are calculated using the mobile object control amounts of the other mobile objects 20, for which calculation has already been completed, as constraints.
[0328] As an example of controlling multiple moving bodies 20 according to priority, an example of controlling multiple moving bodies 20 at an intersection will be described with reference to Fig. 20. Fig. 20 shows a scene in which a first moving body 20-1 and a second moving body 20-2 are approaching each other near an intersection.
[0329] The global behavior planning unit 18 assigns a priority to each of the first moving body 20-1 and the second moving body 20-2. In the situation of Fig. 20, the first moving body 20-1 enters the intersection first, so the global behavior planning unit 18 assigns a priority of 1 to the first moving body 20-1 and a priority of 2 to the second moving body 20-2. The global behavior planning unit 18 also outputs the target behaviors (e.g., normal driving) of each of the first moving body 20-1 and the second moving body 20-2 as global target behaviors.
[0330] In the mobile object control calculation unit 15, first, the first mobile object control calculation unit 15-1 calculates the mobile object control amount for the mobile object 20 with priority 1, i.e., the first mobile object 20-1. Since the first mobile object 20-1 has a higher priority than the second mobile object 20-2, the mobile object control amount is calculated for the first mobile object 20-1 so that it passes through the intersection as is.
[0331] Next, the second moving body control calculation unit 15-2 calculates the moving body control amount of the moving body 20 with priority 2, i.e., the second moving body 20-2. At this time, the moving body control amount of the first moving body 20-1 has already been calculated, and the moving body control amount of the first moving body 20-1 includes information such as the target trajectory, i.e., the position and attitude of the first moving body 20-1 between horizons N. The second moving body control calculation unit 15-2 treats the position information of the first moving body 20-1 as a constraint and calculates the moving body control amount of the second moving body 20-2. In the example of FIG. 20 , the target trajectory in which the first moving body 20-1 passes through the intersection as is is treated as a constraint, and therefore, due to this constraint, a moving body control amount is calculated for the second moving body 20-2 such that the second moving body 20-2 stops at a position just before the intersection.
[0332] With this configuration, the processing performed by the global behavior planning unit 18 can be simple, such as determining the priority of each moving body 20. However, since the calculation processing of the moving body control amount for each moving body 20 must wait until the calculation processing of the moving body control amount for other moving bodies 20 with higher priority is completed, the overall processing time tends to be relatively long. This configuration is sufficient when the number of moving bodies 20 is small, but when the number of moving bodies 20 is large, the third configuration example is preferable.
[0333] 21 shows a third example configuration of the mobile object control calculation unit 15 in embodiment 4. The mobile object control calculation unit 15 in Fig. 21 is made up of a first mobile object control calculation unit 15-1, a second mobile object control calculation unit 15-2, ..., an M-th mobile object control calculation unit 15-M that control a first mobile object 20-1, a second mobile object 20-2, ..., an M-th mobile object 20-M, respectively, and a control amount holding unit 1504.
[0334] The control amount holding unit 1504 has a function of holding all mobile object control amounts calculated in the past for all mobile objects 20, and at the time of current calculation, reading out mobile object control amounts from one time point or more in the past and outputting them to the first mobile object control calculation unit 15-1, the second mobile object control calculation unit 15-2, ..., the Mth mobile object control calculation unit 15-M. At the initial time, the mobile object control amount held in the control amount holding unit 1504 is considered to be 0. Alternatively, the reference path of each mobile object 20 may be considered to be the mobile object control amount at the initial time.
[0335] Each of the first mobile object control calculation unit 15-1, the second mobile object control calculation unit 15-2, ..., the Mth mobile object control calculation unit 15-M calculates its own mobile object control amount using the target action from the global action plan and the past mobile object control amount from the control amount storage unit 1504. Note that the past mobile object control amount is treated as a constraint condition in each of the first mobile object control calculation unit 15-1, the second mobile object control calculation unit 15-2, ..., the Mth mobile object control calculation unit 15-M, as in the second configuration example.
[0336] As an example of controlling a plurality of moving bodies 20, an example of controlling a plurality of moving bodies 20 on a narrow road will be described with reference to Figures 22 and 23. Figures 22 and 23 show a scene in which a first moving body 20-1 and a second moving body 20-2 are approaching each other on a narrow road, and there is also a stationary obstacle.
[0337] At time t0, first, the global action planning unit 18 outputs a target action for both the first moving body 20-1 and the second moving body 20-2 to travel normally, as shown in FIG. 22 . Thereafter, the target action of the global action plan is assumed to remain unchanged. The first moving body 20-1 attempts to perform normal travel, which is the target action, but because a stationary obstacle is nearby, the first moving body control calculation unit 15-1 calculates a moving body control amount for the first moving body 20-1 so that the first moving body 20-1 avoids the stationary obstacle. The second moving body control calculation unit 15-2 calculates a moving body control amount for the second moving body 20-2 so that the second moving body 20-2 continues to travel normally. The control amount storage unit 1504 stores the moving body control amounts for the first moving body 20-1 and the second moving body 20-2 calculated in this manner.
[0338] At time t1, the control amount holding unit 1504 outputs past moving body control amounts of the first moving body 20-1 and the second moving body 20-2 to the first moving body control calculation unit 15-1 and the second moving body control calculation unit 15-2. The first moving body control calculation unit 15-1 and the second moving body control calculation unit 15-2 use the past moving body control amounts of the first moving body 20-1 and the second moving body 20-2 as constraint conditions. Specifically, the first moving body control calculation unit 15-1 that controls the first moving body 20-1 treats the past moving body control amount of the second moving body 20-2 as a constraint, and the second moving body control calculation unit 15-2 that controls the second moving body 20-2 treats the past moving body control amount of the first moving body 20-1 as a constraint.
[0339] The first moving body control calculation unit 15-1 treats the moving body control amount of the second moving body 20-2 at time t0 as a constraint, and therefore calculates a moving body control amount for the first moving body 20-1 such that the first moving body 20-1 avoids the second moving body 20-2 after avoiding the stationary obstacle, as shown in Fig. 23. The second moving body control calculation unit 15-2 treats the moving body control amount of the first moving body 20-1 at time t0 as a constraint, and therefore calculates a moving body control amount for the second moving body 20-2 such that the second moving body 20-2 automatically stops to avoid colliding with the first moving body 20-1, as shown in Fig. 23.
[0340] By doing so, the global behavior planning unit 18 can perform simple processing, and even if there are a large number of mobile objects 20, the overall processing time can be reduced.
[0341] <Hardware Configuration Example> Figures 24 and 25 are diagrams showing examples of the hardware configuration of the remote control device 10. The functions of the components of the remote control device 10 shown in Figures 1, 10, or 17 are realized by, for example, a processing circuit 300 shown in Figure 24. That is, the remote control device 10 includes a processing circuit 300 for calculating a control amount for the mobile object 20 based on a reference route for the mobile object 20 and controlling one or more mobile objects 20 via a network 30. The calculation of the control amount for the mobile object 20 includes a process of calculating an optimal sequence by sequentially solving a stochastic programming problem based on an evaluation function, using a state equation that models the dynamic characteristics of the mobile object 20 that depend on a stochastic transmission delay having a probability distribution as a constraint, and a process of converting the optimal sequence into a control amount for the mobile object 20. The process of calculating the optimal sequence includes a process of converting a stochastic evaluation function into a deterministic evaluation function based on a stochastic process model of stochastic parameters, and a process of solving the stochastic programming problem by solving the optimization problem of the deterministic evaluation function.
[0342] The processing circuit 300 may be dedicated hardware, or may be configured using a processor (also called a central processing unit (CPU), processing device, arithmetic unit, microprocessor, microcomputer, or DSP (Digital Signal Processor)) that executes a program stored in memory.
[0343] When the processing circuitry 300 is dedicated hardware, the processing circuitry 300 may be, for example, a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or a combination thereof. The functions of the components of the remote control device 10 may be realized by individual processing circuits, or the functions may be realized together by a single processing circuit.
[0344] FIG. 25 shows an example of the hardware configuration of the remote control device 10 when the processing circuit 300 is configured using a processor 301 that executes a program. In this case, the functions of the components of the remote control device 10 are realized by software, etc. (software, firmware, or a combination of software and firmware). The software, etc. is written as a program and stored in memory 302. The processor 301 realizes the functions of each unit by reading and executing the program stored in memory 302. That is, the remote control device 10 includes memory 302 for storing a program that, when executed by the processor 301, results in the execution of a process for calculating a control amount for the moving object 20 based on the reference path of the moving object 20 and a process for controlling one or more moving objects 20 via the network 30. In other words, this program can be said to cause a computer to execute the procedures and methods of the operation of the components of the remote control device 10.
[0345] Here, the memory 302 may be, for example, a non-volatile or volatile semiconductor memory such as a RAM (Random Access Memory), a ROM (Read Only Memory), a flash memory, an EPROM (Erasable Programmable Read Only Memory), or an EEPROM (Electrically Erasable Programmable Read Only Memory), a HDD (Hard Disk Drive), a magnetic disk, a flexible disk, an optical disk, a compact disk, a mini disk, a DVD (Digital Versatile Disc), and a drive device for such a disk, or any other storage medium that will be used in the future.
[0346] The above describes a configuration in which the functions of the components of the remote control device 10 are realized either by hardware or software, etc. However, this is not limited to this, and the remote control device 10 may be configured such that some of the components are realized by dedicated hardware and other components are realized by software, etc. For example, some of the components may be realized by the processing circuit 300 as dedicated hardware, and other components may be realized by the processing circuit 300 as the processor 301 reading and executing a program stored in the memory 302.
[0347] As described above, the remote control device 10 can realize the above-described functions by hardware, software, or a combination of these.
[0348] It is possible to freely combine the embodiments, and to modify or omit the embodiments as appropriate.
[0349] The above description is illustrative in all respects, and it is understood that countless variations not illustrated can be envisioned.
[0350] 10 Remote control device, 11 Time synchronization unit, 12 Receiving unit, 13 Transmission delay measurement unit, 14 Transmission delay distribution estimation unit, 15 Mobile object control calculation unit, 1501 Reference path generation unit, 1502 State estimation unit, 1503 Control calculation unit, 1504 Control amount holding unit, 1511 Stochastic optimization calculation unit, 1512 Control decision unit, 1521 Stochastic evaluation function conversion unit, 1522 Deterministic optimization calculation unit, 1523 Constraint calculation unit, 1531 Forward / backward direction control unit, 1532 Lateral direction control unit, 1533 Control decision unit, 1541 Speed planning unit, 1542 Stochastic optimization calculation unit, 1543 Forward / backward direction control decision unit, 1551 Stochastic optimization calculation unit, 16 Transmitting unit, 17 Obstacle movement prediction unit, 18 Global action planning unit, 20 Mobile object, 21 Time synchronization unit, 22 Internal sensor, 23 transmitter, 24 receiver, 25 command value calculation unit, 26 actuator, 30 network, 40 object information acquisition unit, 41 time synchronization unit, 50 environmental information acquisition unit, 51 time synchronization unit, 60 map database, 200 automobile, 201 steering wheel, 202 steering shaft, 203 electric motor, 204 rack and pinion mechanism, 205 tie rod, 206 front knuckle, 207 vehicle drive unit, 208 shaft, 209 acceleration / deceleration control device, 210 brake control device, 211 brake, 212 steering control device, 213 pinion shaft, 214 rack shaft, 215 front wheel, 216 rear wheel, 220 vehicle speed sensor, 221 IMU sensor, 222 steering angle sensor, 223 steering torque sensor, 230 camera, 250 Mobile control device, 300 processing circuit, 301 processor, 302 memory.
Claims
1. A remote control device that controls one or more moving objects via a network, comprising: a moving object control calculation unit that calculates a control amount for the moving object based on a reference route for the moving object, the moving object control calculation unit comprising a control calculation unit, the control calculation unit comprising: a stochastic system optimization calculation unit that calculates an optimal sequence by successively solving a stochastic programming problem based on an evaluation function, with a state equation that models dynamic characteristics of the moving object that depend on a stochastic transmission delay having a probability distribution as a constraint condition; and a control decision unit that converts the optimal sequence into the control amount for the moving object, the stochastic system optimization calculation unit comprising: a stochastic system evaluation function conversion unit that converts a stochastic evaluation function into a deterministic evaluation function based on a stochastic process model of stochastic parameters; and a deterministic system optimization calculation unit that solves the stochastic programming problem by solving the optimization problem of the deterministic evaluation function.
2. The remote control device according to claim 1, wherein the stochastic system evaluation function conversion unit converts the stochastic evaluation function into the deterministic evaluation function using a mapping and a recurrence formula defined based on the stochastic process model.
3. A remote control device as described in claim 1 or claim 2, further comprising an obstacle movement prediction unit that predicts obstacle movement from surrounding information and outputs the prediction result as obstacle prediction information, wherein the stochastic optimization calculation unit outputs deterministic constraint conditions that are treated as constraint conditions in the deterministic optimization calculation unit from the reference route and the obstacle prediction information, and the deterministic optimization calculation unit optimizes the deterministic evaluation function under the deterministic constraint conditions.
4. A remote control device as described in any one of claims 1 to 3, wherein the control calculation unit comprises: a longitudinal control unit that outputs a longitudinal series for controlling the moving body in the longitudinal direction; and a lateral control unit that outputs a lateral optimum series for controlling the moving body in the lateral direction, and the lateral control unit calculates the lateral optimum series by referring to the longitudinal series as a deterministic parameter and performing optimization in the stochastic system optimization calculation unit.
5. The remote control device according to claim 4, wherein the forward / rearward direction control unit calculates an optimal sequence in the forward / rearward direction using dynamic characteristics of the moving object in the forward / rearward direction.
6. The remote control device according to any one of claims 1 to 5, wherein the remote control device comprises one or more mobile object control calculation units that calculate the control amount of each of the one or more mobile objects, the remote control device further comprises a global behavior planning unit, the global behavior planning unit plans a target behavior of each of the one or more mobile objects, and each of the one or more mobile object control calculation units calculates the control amount of the mobile object according to a global target behavior that is a compilation of target behaviors of the one or more mobile objects.
7. The remote control device described in claim 6, wherein the global behavior planning unit plans the priority of one or more of the moving bodies, and each of the one or more moving body control calculation units calculates the control amount of the moving body according to the priority of the one or more moving bodies, and uses the control amount of the moving body having a higher priority than the moving body controlled by the same unit as a constraint condition.
8. The remote control device according to claim 6, wherein the moving object control calculation unit further comprises a control amount holding unit, which holds the past control amounts of one or more of the moving objects and outputs the past control amounts to one or more of the moving object control calculation units, and the one or more of the moving object control calculation units use the past control amounts of the one or more moving objects as constraint conditions to calculate the control amounts of the moving objects.
9. A remote control device as described in any one of claims 1 to 8, further comprising a transmission delay distribution estimation unit that estimates transmission delay distribution information, which is information regarding the probability distribution of the transmission delay, and the probability system evaluation function conversion unit uses the transmission delay distribution information to convert the probabilistic evaluation function into the deterministic evaluation function.
10. The variance in the calculation time of the optimization problem is expressed as a probability distribution and incorporated into the state equation as random sampling times. A remote control device according to any one of claims 1 to 9.
Citation Information
Patent Citations
Circuit and method for designing communication network and medium for recording their control program
JP1999215124A
Multi-vehicle cooperative trajectory planning method, device, system, equipment, storage medium, and computer program product
JP2023503483A
Remote control device, remote control method, remote control system and mobile object
JP7330398B1