WO2021033574A1 - 情報処理装置、および情報処理方法、並びにプログラム - Google Patents
情報処理装置、および情報処理方法、並びにプログラム Download PDFInfo
- Publication number
- WO2021033574A1 WO2021033574A1 PCT/JP2020/030309 JP2020030309W WO2021033574A1 WO 2021033574 A1 WO2021033574 A1 WO 2021033574A1 JP 2020030309 W JP2020030309 W JP 2020030309W WO 2021033574 A1 WO2021033574 A1 WO 2021033574A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- mask
- orbit
- collision
- trajectory
- orbital
- Prior art date
Links
- 230000010365 information processing Effects 0.000 title claims abstract description 38
- 238000003672 processing method Methods 0.000 title claims abstract description 8
- 238000005070 sampling Methods 0.000 claims abstract description 44
- 238000012545 processing Methods 0.000 claims description 97
- 238000000034 method Methods 0.000 claims description 88
- 230000008569 process Effects 0.000 claims description 79
- 238000001514 detection method Methods 0.000 claims description 52
- 238000011156 evaluation Methods 0.000 claims description 43
- 238000004364 calculation method Methods 0.000 abstract description 27
- 238000004904 shortening Methods 0.000 abstract description 2
- 238000003860 storage Methods 0.000 description 35
- 238000004891 communication Methods 0.000 description 32
- 238000004458 analytical method Methods 0.000 description 30
- 230000033001 locomotion Effects 0.000 description 29
- 230000001133 acceleration Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 8
- 102220543961 RBPJ-interacting and tubulin-associated protein 1_M12A_mutation Human genes 0.000 description 7
- 230000010391 action planning Effects 0.000 description 7
- 238000005457 optimization Methods 0.000 description 7
- 230000005856 abnormality Effects 0.000 description 5
- 230000006399 behavior Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000003384 imaging method Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 102220556385 V-set and transmembrane domain-containing protein 1_M13A_mutation Human genes 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000036544 posture Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 241001465754 Metazoa Species 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000002349 favourable effect Effects 0.000 description 2
- 239000000446 fuel Substances 0.000 description 2
- 238000007788 roughening Methods 0.000 description 2
- 240000004050 Pentaglottis sempervirens Species 0.000 description 1
- 235000004522 Pentaglottis sempervirens Nutrition 0.000 description 1
- 230000036626 alertness Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000037007 arousal Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 238000002485 combustion reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 230000004424 eye movement Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0214—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W30/00—Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
- B60W30/08—Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
- B60W30/095—Predicting travel path or likelihood of collision
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W40/00—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
- B60W40/02—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
- B60W40/04—Traffic conditions
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
- B60W60/0011—Planning or execution of driving tasks involving control alternatives for a single driving scenario, e.g. planning several paths to avoid obstacles
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/0088—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0238—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0268—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
- G05D1/0274—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/16—Anti-collision systems
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B29/00—Maps; Plans; Charts; Diagrams, e.g. route diagram
- G09B29/10—Map spot or coordinate position indicators; Map reading aids
Definitions
- the present disclosure relates to an information processing device, an information processing method, and a program, and particularly to an information processing device, an information processing method, and a program capable of shortening the calculation time in a track plan for autonomous driving.
- the occupied grid map is a table that divides the moving space in the real world including moving objects into grid-like cells and expresses the presence or absence of obstacles for each cell.
- the autonomous moving body When moving to the destination, the autonomous moving body does not collide with obstacles and proceeds while sequentially calculating a moving path that makes a preferable movement in light of the moving body's motion model.
- This movement route is a "sequence of positions, postures, and velocities that should be at each time" drawn on the physical space, and the route that takes the time into consideration is called an orbit.
- the preference for movement is expressed as some kind of evaluation function that depends on the situation and application required for autonomous mobiles.
- the orbit plan is required to continue to be solved every hour at high speed enough to avoid obstacles.
- Sampling-based orbit planning is known as one of such methods.
- the sampled orbital candidates are sequentially evaluated, and when an orbital whose evaluation value is lower than the reference value is found, the subsequent evaluation is stopped and the candidate is stopped.
- the optimum one is not selected from all the candidates, but it is possible to reduce the amount of calculation by compromising at a reasonable level.
- Patent Document 1 is a highly versatile method, the approximation of the optimization problem may become coarser depending on how the reference value is selected, and the movement performance when moving the adopted target trajectory. There was a risk of reducing.
- the present disclosure has been made in view of such a situation, and in particular, when the target trajectory is moved by reducing the calculation time without roughening the approximation of the optimization problem in the sampling-based trajectory planning. It suppresses the deterioration of the movement performance of the device and shortens the calculation time.
- the information processing apparatus and program of one aspect of the present disclosure occupy a plurality of the orbital candidates among the orbital candidate sampling unit that samples the orbital candidates of the moving body and the orbital candidates sampled by the orbital candidate sampling unit.
- An orbit mask generation unit that generates an orbit mask in which the plurality of orbit candidates integrated with the grid of the grid map and the grid of the occupied grid map correspond to each other, and the orbit mask generation unit generated by the orbit mask generation unit. It is an information processing apparatus and a program including a trajectory mask and a collision determination unit that determines a collision of the trajectory candidates based on the occupied grid map.
- the information processing method of one aspect of the present disclosure is an occupying grid map of a plurality of the orbit candidates among the orbit candidate sampling process for sampling the orbit candidates of the moving body and the orbit candidates sampled by the orbit candidate sampling process.
- An orbit mask generation process for generating an orbit mask corresponding to a plurality of the orbit candidates integrated with the grid of the occupied grid map, and the orbit mask generated by the orbit mask generation process.
- This is an information processing method including a collision determination process for determining a collision of the trajectory candidates based on the occupied grid map.
- the orbital candidates of the moving body are sampled, and among the sampled orbital candidates, a plurality of the orbital candidates are integrated and integrated in association with the grid of the occupied grid map.
- An orbit mask corresponding to the orbit candidate and the grid of the occupied grid map is generated, and the collision determination of the orbit candidate is performed based on the generated orbit mask and the occupied grid map.
- the vehicle C which is an autonomous moving body, travels in the vicinity of obstacles B1 and B2 toward the upper side in the figure.
- the vehicle C is an occupied grid map (OccupancyMap) as shown in the lower part of FIG. 1 by a stereo camera that cannot be shown by itself or a distance sensor such as LiDAR (Light Detection and Ringing or Laser Imaging Detection and Ringing). Get M.
- OccupancyMap occupied grid map
- the occupied grid map M is a map in which the space movable by the vehicle C is divided into grid-shaped cell-shaped grids, and the presence or absence of obstacles is expressed for each grid.
- the position of the object is represented for each region in which the surrounding space when the vehicle C is viewed from above is represented by a grid, and the regions MB1 and MB2 are obstacles B1 and B2, respectively. It represents an existing area.
- the vehicle C is represented as a region MC unrelated to the grid.
- the vehicle C shall sample the track candidates R1 to R5 in the sampling base track plan.
- the orbital candidates that are actually sampled may exist not only in R1 to R5 but also innumerably between them, but in the conventional method, obstacles on the occupied grid map M are used for each of the orbital candidates. The collision with was judged.
- the orbital candidates at close positions are integrated in units of the grid on the occupied grid map, and the orbital masks corresponding to the occupied grid map are set, and a plurality of orbital candidates are set.
- the orbit mask in which the orbit candidates are integrated and the occupied grid map are superimposed, and the collision is determined by collating the orbit mask with the obstacle on the occupied grid map.
- the orbit mask MR that integrates the orbit candidates R3 and R4 as shown by the dotted line is set on the grid through which the orbit candidates R3 and R4 pass, and is superimposed on the occupied grid map. To do.
- the collision is determined based on whether or not the area of the dotted orbit mask MR overlaps with the obstacle on the occupied grid map.
- collision determination with obstacles of the orbital candidates R3 and R4 integrated in the area of the orbital mask MR can be realized at the same time.
- each orbit candidate can be determined. It is possible to reduce the amount of calculation as compared with the case of determining a collision with an obstacle.
- FIG. 2 is a block diagram showing a configuration example of a schematic function of the vehicle control system 100 of the vehicle 91, which is an example of a mobile control system to which the present technology can be applied.
- FIG. 1 is a block diagram showing a schematic functional configuration example of a vehicle control system 100, which is an example of a mobile control system to which the present technology can be applied.
- a vehicle provided with the vehicle control system 100 is distinguished from other vehicles, it is referred to as a own vehicle or a own vehicle.
- the vehicle control system 100 includes an input unit 101, a data acquisition unit 102, a communication unit 103, an in-vehicle device 104, an output control unit 105, an output unit 106, a drive system control unit 107, a drive system system 108, a body system control unit 109, and a body. It includes a system system 110, a storage unit 111, and an automatic operation control unit 112.
- the input unit 101, the data acquisition unit 102, the communication unit 103, the output control unit 105, the drive system control unit 107, the body system control unit 109, the storage unit 111, and the automatic operation control unit 112 are connected via the communication network 121. They are interconnected.
- the communication network 121 is, for example, from an in-vehicle communication network or bus that conforms to any standard such as CAN (Controller Area Network), LIN (Local Interconnect Network), LAN (Local Area Network), or FlexRay (registered trademark). Become. In addition, each part of the vehicle control system 100 may be directly connected without going through the communication network 121.
- CAN Controller Area Network
- LIN Local Interconnect Network
- LAN Local Area Network
- FlexRay registered trademark
- the description of the communication network 121 shall be omitted.
- the input unit 101 and the automatic operation control unit 112 communicate with each other via the communication network 121, it is described that the input unit 101 and the automatic operation control unit 112 simply communicate with each other.
- the input unit 101 includes a device used by the passenger to input various data, instructions, and the like.
- the input unit 101 includes an operation device such as a touch panel, a button, a microphone, a switch, and a lever, and an operation device capable of inputting by a method other than manual operation by voice or gesture.
- the input unit 101 may be a remote control device using infrared rays or other radio waves, or an externally connected device such as a mobile device or a wearable device corresponding to the operation of the vehicle control system 100.
- the input unit 101 generates an input signal based on data, instructions, and the like input by the passenger, and supplies the input signal to each unit of the vehicle control system 100.
- the data acquisition unit 102 includes various sensors and the like that acquire data used for processing of the vehicle control system 100, and supplies the acquired data to each unit of the vehicle control system 100.
- the data acquisition unit 102 includes various sensors for detecting the state of the own vehicle and the like.
- the data acquisition unit 102 includes a gyro sensor, an acceleration sensor, an inertial measurement unit (IMU), an accelerator pedal operation amount, a brake pedal operation amount, a steering wheel steering angle, and an engine speed. It is equipped with a sensor or the like for detecting the rotation speed of the motor, the rotation speed of the wheels, or the like.
- IMU inertial measurement unit
- the data acquisition unit 102 includes various sensors for detecting information outside the own vehicle.
- the data acquisition unit 102 includes an imaging device such as a ToF (TimeOfFlight) camera, a stereo camera, a monocular camera, an infrared camera, and other cameras.
- the data acquisition unit 102 includes an environment sensor for detecting the weather or the weather, and a surrounding information detection sensor for detecting an object around the own vehicle.
- the environment sensor includes, for example, a raindrop sensor, a fog sensor, a sunshine sensor, a snow sensor, and the like.
- the ambient information detection sensor includes, for example, an ultrasonic sensor, a radar, LiDAR (Light Detection and Ringing, Laser Imaging Detection and Ringing), a sonar, and the like.
- the data acquisition unit 102 includes various sensors for detecting the current position of the own vehicle.
- the data acquisition unit 102 includes a GNSS receiver or the like that receives a GNSS signal from a GNSS (Global Navigation Satellite System) satellite.
- GNSS Global Navigation Satellite System
- the data acquisition unit 102 includes various sensors for detecting information in the vehicle.
- the data acquisition unit 102 includes an imaging device that images the driver, a biosensor that detects the driver's biological information, a microphone that collects sound in the vehicle interior, and the like.
- the biosensor is provided on, for example, the seat surface or the steering wheel, and detects the biometric information of the passenger sitting on the seat or the driver holding the steering wheel.
- the communication unit 103 communicates with the in-vehicle device 104 and various devices, servers, base stations, etc. outside the vehicle, transmits data supplied from each unit of the vehicle control system 100, and transmits the received data to the vehicle control system. It is supplied to each part of 100.
- the communication protocol supported by the communication unit 103 is not particularly limited, and the communication unit 103 may support a plurality of types of communication protocols.
- the communication unit 103 wirelessly communicates with the in-vehicle device 104 by wireless LAN, Bluetooth (registered trademark), NFC (Near Field Communication), WUSB (Wireless USB), or the like. Further, for example, the communication unit 103 uses USB (Universal Serial Bus), HDMI (registered trademark) (High-Definition Multimedia Interface), or MHL () via a connection terminal (and a cable if necessary) (not shown). Wired communication is performed with the in-vehicle device 104 by Mobile High-definition Link) or the like.
- the communication unit 103 is connected to a device (for example, an application server or a control server) existing on an external network (for example, the Internet, a cloud network or a network peculiar to a business operator) via a base station or an access point. Communicate. Further, for example, the communication unit 103 uses P2P (Peer To Peer) technology to connect with a terminal (for example, a pedestrian or store terminal, or an MTC (Machine Type Communication) terminal) existing in the vicinity of the own vehicle. Communicate.
- a device for example, an application server or a control server
- an external network for example, the Internet, a cloud network or a network peculiar to a business operator
- the communication unit 103 uses P2P (Peer To Peer) technology to connect with a terminal (for example, a pedestrian or store terminal, or an MTC (Machine Type Communication) terminal) existing in the vicinity of the own vehicle. Communicate.
- P2P Peer To Peer
- a terminal for example, a pedestrian or
- the communication unit 103 includes vehicle-to-vehicle (Vehicle to Vehicle) communication, road-to-vehicle (Vehicle to Infrastructure) communication, vehicle-to-house (Vehicle to Home) communication, and pedestrian-to-vehicle (Vehicle to Pedestrian) communication. ) Perform V2X communication such as communication. Further, for example, the communication unit 103 is provided with a beacon receiving unit, receives radio waves or electromagnetic waves transmitted from a radio station or the like installed on the road, and acquires information such as the current position, traffic congestion, traffic regulation, or required time. To do.
- the in-vehicle device 104 includes, for example, a mobile device or a wearable device owned by a passenger, an information device carried in or attached to the own vehicle, a navigation device for searching a route to an arbitrary destination, and the like.
- the output control unit 105 controls the output of various information to the passengers of the own vehicle or the outside of the vehicle.
- the output control unit 105 generates an output signal including at least one of visual information (for example, image data) and auditory information (for example, audio data) and supplies the output signal to the output unit 106.
- the output control unit 105 synthesizes image data captured by different imaging devices of the data acquisition unit 102 to generate a bird's-eye view image, a panoramic image, or the like, and outputs an output signal including the generated image. It is supplied to the output unit 106.
- the output control unit 105 generates voice data including a warning sound or a warning message for dangers such as collision, contact, and entry into a danger zone, and outputs an output signal including the generated voice data to the output unit 106.
- Supply for example, the output control unit 105 generates voice data including a warning sound or a warning message for dangers such as collision, contact, and entry into
- the output unit 106 is provided with a device capable of outputting visual information or auditory information to the passengers of the own vehicle or the outside of the vehicle.
- the output unit 106 includes a display device, an instrument panel, an audio speaker, headphones, a wearable device such as a spectacle-type display worn by a passenger, a projector, a lamp, and the like.
- the display device included in the output unit 106 displays visual information in the driver's field of view, such as a head-up display, a transmissive display, and a device having an AR (Augmented Reality) display function, in addition to the device having a normal display. It may be a display device.
- the drive system control unit 107 controls the drive system system 108 by generating various control signals and supplying them to the drive system system 108. Further, the drive system control unit 107 supplies a control signal to each unit other than the drive system system 108 as necessary, and notifies the control state of the drive system system 108.
- the drive system system 108 includes various devices related to the drive system of the own vehicle.
- the drive system system 108 includes a drive force generator for generating a drive force of an internal combustion engine or a drive motor, a drive force transmission mechanism for transmitting the drive force to the wheels, a steering mechanism for adjusting the steering angle, and the like. It is equipped with a braking device that generates braking force, ABS (Antilock Brake System), ESC (Electronic Stability Control), an electric power steering device, and the like.
- the body system control unit 109 controls the body system 110 by generating various control signals and supplying them to the body system 110. Further, the body system control unit 109 supplies control signals to each unit other than the body system 110 as necessary, and notifies the control state of the body system 110.
- the body system 110 includes various body devices equipped on the vehicle body.
- the body system 110 includes a keyless entry system, a smart key system, a power window device, a power seat, a steering wheel, an air conditioner, and various lamps (for example, head lamps, back lamps, brake lamps, winkers, fog lamps, etc.). Etc.
- the storage unit 111 includes, for example, a magnetic storage device such as a ROM (Read Only Memory), a RAM (Random Access Memory), an HDD (Hard Disc Drive), a semiconductor storage device, an optical storage device, an optical magnetic storage device, and the like. ..
- the storage unit 111 stores various programs, data, and the like used by each unit of the vehicle control system 100.
- the storage unit 111 has map data such as a three-dimensional high-precision map such as a dynamic map, a global map which is less accurate than the high-precision map and covers a wide area, and a local map including information around the own vehicle.
- map data such as a three-dimensional high-precision map such as a dynamic map, a global map which is less accurate than the high-precision map and covers a wide area, and a local map including information around the own vehicle.
- the automatic driving control unit 112 controls automatic driving such as autonomous driving or driving support. Specifically, for example, the automatic driving control unit 112 issues collision avoidance or impact mitigation of the own vehicle, follow-up running based on the inter-vehicle distance, vehicle speed maintenance running, collision warning of the own vehicle, lane deviation warning of the own vehicle, and the like. Collision control is performed for the purpose of realizing the functions of ADAS (Advanced Driver Assistance System) including. Further, for example, the automatic driving control unit 112 performs coordinated control for the purpose of automatic driving in which the vehicle autonomously travels without depending on the operation of the driver.
- the automatic operation control unit 112 includes a detection unit 131, a self-position estimation unit 132, a situation analysis unit 133, a planning unit 134, and an operation control unit 135.
- the detection unit 131 detects various types of information necessary for controlling automatic operation.
- the detection unit 131 includes an outside information detection unit 141, an inside information detection unit 142, and a vehicle state detection unit 143.
- the vehicle outside information detection unit 141 performs detection processing of information outside the own vehicle based on data or signals from each unit of the vehicle control system 100. For example, the vehicle outside information detection unit 141 performs detection processing, recognition processing, tracking processing, and distance detection processing for an object around the own vehicle. Objects to be detected include, for example, vehicles, people, obstacles, structures, roads, traffic lights, traffic signs, road markings, and the like. Further, for example, the vehicle outside information detection unit 141 performs detection processing of the environment around the own vehicle. The surrounding environment to be detected includes, for example, weather, temperature, humidity, brightness, road surface condition, and the like.
- the vehicle outside information detection unit 141 outputs data indicating the result of the detection process to the self-position estimation unit 132, the map analysis unit 151 of the situation analysis unit 133, the traffic rule recognition unit 152, the situation recognition unit 153, and the operation control unit 135. It is supplied to the emergency situation avoidance unit 171 and the like.
- the in-vehicle information detection unit 142 performs in-vehicle information detection processing based on data or signals from each unit of the vehicle control system 100.
- the vehicle interior information detection unit 142 performs driver authentication processing and recognition processing, driver status detection processing, passenger detection processing, vehicle interior environment detection processing, and the like.
- the state of the driver to be detected includes, for example, physical condition, alertness, concentration, fatigue, gaze direction, and the like.
- the environment inside the vehicle to be detected includes, for example, temperature, humidity, brightness, odor, and the like.
- the in-vehicle information detection unit 142 supplies data indicating the result of the detection process to the situation recognition unit 153 of the situation analysis unit 133, the emergency situation avoidance unit 171 of the operation control unit 135, and the like.
- the vehicle state detection unit 143 performs the state detection process of the own vehicle based on the data or signals from each part of the vehicle control system 100.
- the state of the own vehicle to be detected includes, for example, speed, acceleration, steering angle, presence / absence and content of abnormality, driving operation state, power seat position / tilt, door lock state, and other in-vehicle devices. The state etc. are included.
- the vehicle state detection unit 143 supplies data indicating the result of the detection process to the situation recognition unit 153 of the situation analysis unit 133, the emergency situation avoidance unit 171 of the operation control unit 135, and the like.
- the self-position estimation unit 132 estimates the position and attitude of the own vehicle based on data or signals from each unit of the vehicle control system 100 such as the vehicle exterior information detection unit 141 and the situational awareness unit 153 of the situation analysis unit 133. Perform processing. In addition, the self-position estimation unit 132 generates a local map (hereinafter, referred to as a self-position estimation map) used for self-position estimation, if necessary.
- the map for self-position estimation is, for example, a highly accurate map using a technique such as SLAM (Simultaneous Localization and Mapping).
- the self-position estimation unit 132 supplies data indicating the result of the estimation process to the map analysis unit 151, the traffic rule recognition unit 152, the situation recognition unit 153, and the like of the situation analysis unit 133. Further, the self-position estimation unit 132 stores the self-position estimation map in the storage unit 111.
- the situation analysis unit 133 analyzes the situation of the own vehicle and the surroundings.
- the situation analysis unit 133 includes a map analysis unit 151, a traffic rule recognition unit 152, a situation recognition unit 153, and a situation prediction unit 154.
- the map analysis unit 151 uses data or signals from each unit of the vehicle control system 100 such as the self-position estimation unit 132 and the vehicle exterior information detection unit 141 as necessary, and the map analysis unit 151 of various maps stored in the storage unit 111. Perform analysis processing and build a map containing information necessary for automatic driving processing.
- the map analysis unit 151 applies the constructed map to the traffic rule recognition unit 152, the situation recognition unit 153, the situation prediction unit 154, the route planning unit 161 of the planning unit 134, the action planning unit 162, the operation planning unit 163, and the like. Supply to.
- the traffic rule recognition unit 152 determines the traffic rules around the own vehicle based on data or signals from each unit of the vehicle control system 100 such as the self-position estimation unit 132, the vehicle outside information detection unit 141, and the map analysis unit 151. Perform recognition processing. By this recognition process, for example, the position and state of the signal around the own vehicle, the content of the traffic regulation around the own vehicle, the lane in which the vehicle can travel, and the like are recognized.
- the traffic rule recognition unit 152 supplies data indicating the result of the recognition process to the situation prediction unit 154 and the like.
- the situation recognition unit 153 can be used for data or signals from each unit of the vehicle control system 100 such as the self-position estimation unit 132, the vehicle exterior information detection unit 141, the vehicle interior information detection unit 142, the vehicle condition detection unit 143, and the map analysis unit 151. Based on this, the situation recognition process related to the own vehicle is performed. For example, the situational awareness unit 153 performs recognition processing such as the situation of the own vehicle, the situation around the own vehicle, and the situation of the driver of the own vehicle. In addition, the situational awareness unit 153 generates a local map (hereinafter, referred to as a situational awareness map) used for recognizing the situation around the own vehicle, if necessary.
- the situational awareness map is, for example, an occupied grid map (OccupancyGridMap).
- the status of the own vehicle to be recognized includes, for example, the position, posture, movement (for example, speed, acceleration, moving direction, etc.) of the own vehicle, and the presence / absence and contents of an abnormality.
- the surrounding conditions of the vehicle to be recognized include, for example, the type and position of surrounding stationary objects, the type, position and movement of surrounding animals (for example, speed, acceleration, moving direction, etc.), and the surrounding roads.
- the composition and road surface condition, as well as the surrounding weather, temperature, humidity, brightness, etc. are included.
- the state of the driver to be recognized includes, for example, physical condition, arousal level, concentration level, fatigue level, eye movement, driving operation, and the like.
- the situational awareness unit 153 supplies data indicating the result of the recognition process (including a situational awareness map, if necessary) to the self-position estimation unit 132, the situation prediction unit 154, and the like. Further, the situational awareness unit 153 stores the situational awareness map in the storage unit 111.
- the situation prediction unit 154 performs a situation prediction process related to the own vehicle based on data or signals from each unit of the vehicle control system 100 such as the map analysis unit 151, the traffic rule recognition unit 152, and the situation recognition unit 153. For example, the situation prediction unit 154 performs prediction processing such as the situation of the own vehicle, the situation around the own vehicle, and the situation of the driver.
- the situation of the own vehicle to be predicted includes, for example, the behavior of the own vehicle, the occurrence of an abnormality, the mileage, and the like.
- the situation around the own vehicle to be predicted includes, for example, the behavior of the animal body around the own vehicle, the change in the signal state, the change in the environment such as the weather, and the like.
- the driver's situation to be predicted includes, for example, the driver's behavior and physical condition.
- the situation prediction unit 154 together with the data from the traffic rule recognition unit 152 and the situation recognition unit 153, provides the data indicating the result of the prediction processing to the route planning unit 161, the action planning unit 162, and the operation planning unit 163 of the planning unit 134. And so on.
- the route planning unit 161 plans a route to the destination based on data or signals from each unit of the vehicle control system 100 such as the map analysis unit 151 and the situation prediction unit 154. For example, the route planning unit 161 sets a route from the current position to the specified destination based on the global map. Further, for example, the route planning unit 161 appropriately changes the route based on the conditions such as traffic congestion, accidents, traffic restrictions, construction work, and the physical condition of the driver. The route planning unit 161 supplies data indicating the planned route to the action planning unit 162 and the like.
- the action planning unit 162 safely sets the route planned by the route planning unit 161 within the planned time based on the data or signals from each unit of the vehicle control system 100 such as the map analysis unit 151 and the situation prediction unit 154. Plan your vehicle's actions to drive. For example, the action planning unit 162 plans starting, stopping, traveling direction (for example, forward, backward, left turn, right turn, turning, etc.), traveling lane, traveling speed, overtaking, and the like. The action planning unit 162 supplies data indicating the planned behavior of the own vehicle to the motion planning unit 163 and the like.
- the motion planning unit 163 is the operation of the own vehicle for realizing the action planned by the action planning unit 162 based on the data or signals from each unit of the vehicle control system 100 such as the map analysis unit 151 and the situation prediction unit 154. Plan. For example, the motion planning unit 163 plans acceleration, deceleration, traveling track, and the like. The motion planning unit 163 supplies data indicating the planned operation of the own vehicle to the acceleration / deceleration control unit 172 and the direction control unit 173 of the motion control unit 135.
- the motion planning unit 163 includes a trajectory planning unit 181.
- the track planning unit 181 plans a traveling track (target track) by sampling track planning based on data or signals from each unit of the vehicle control system 100 such as the map analysis unit 151 and the situation prediction unit 154.
- the detailed configuration of the track planning unit 181 will be described in detail later with reference to FIG.
- the motion control unit 135 controls the motion of the own vehicle.
- the operation control unit 135 includes an emergency situation avoidance unit 171, an acceleration / deceleration control unit 172, and a direction control unit 173.
- the emergency situation avoidance unit 171 may collide, contact, enter a danger zone, have a driver abnormality, or have a vehicle. Performs emergency detection processing such as abnormalities.
- the emergency situation avoidance unit 171 detects the occurrence of an emergency situation, it plans the operation of the own vehicle to avoid an emergency situation such as a sudden stop or a sharp turn.
- the emergency situation avoidance unit 171 supplies data indicating the planned operation of the own vehicle to the acceleration / deceleration control unit 172, the direction control unit 173, and the like.
- the acceleration / deceleration control unit 172 performs acceleration / deceleration control for realizing the operation of the own vehicle planned by the motion planning unit 163 or the emergency situation avoidance unit 171.
- the acceleration / deceleration control unit 172 calculates a control target value of a driving force generator or a braking device for realizing a planned acceleration, deceleration, or sudden stop, and drives a control command indicating the calculated control target value. It is supplied to the system control unit 107.
- the direction control unit 173 performs direction control for realizing the operation of the own vehicle planned by the motion planning unit 163 or the emergency situation avoidance unit 171. For example, the direction control unit 173 calculates the control target value of the steering mechanism for realizing the traveling track or the sharp turn planned by the motion planning unit 163 or the emergency situation avoidance unit 171 and controls to indicate the calculated control target value. The command is supplied to the drive system control unit 107.
- the orbit planning unit 181 includes an orbit candidate sampling unit 211, an orbit mask generation unit 212, an orbit mask storage unit 213, an occupied grid map adjustment unit 214, a collision determination unit 215, and an orbit evaluation unit 216.
- the track candidate sampling unit 211 is based on the aircraft information consisting of the attitude and surrounding information of the vehicle 91 supplied from each unit of the vehicle control system 100 such as the map analysis unit 151 and the situation prediction unit 154 of the situation analysis unit 133. Trajectory candidates are sampled in consideration of 91 motion models.
- the orbit candidate sampling unit 211 outputs the sampled orbit candidate information to the orbit mask generation unit 212 and the collision determination unit 215.
- the orbit candidate sampling unit 211 samples the orbit candidates in consideration of the resolution of the occupied grid map adjusted by the occupied grid map adjusting unit 214 when sampling the orbit.
- the orbit mask generation unit 212 generates an orbit mask that integrates a plurality of orbit candidates in a mass-shaped grid unit corresponding to the occupied grid map based on the orbit candidates supplied from the orbit candidate sampling unit 211. Is stored in the orbit mask storage unit 213 as a correspondence table showing the relationship between the grid on which the is formed and the corresponding orbit candidates.
- the trajectory mask generation unit 212 forms a grid region as a trajectory mask by integrating a plurality of trajectory candidates among the grids corresponding to the occupied grid map, and corresponds to the grid on which the trajectory mask is formed.
- a correspondence table showing the relationship with the orbit is generated and stored in the orbit mask storage unit 213 as information on the orbit mask.
- the track candidate sampling unit 211 samples track candidates R11 to R16 from the current position P of the vehicle 91 according to the posture and surrounding conditions, as shown in the left part of FIG. , Orbit mask generation unit 212, and collision determination unit 215.
- the track mask generation unit when setting a mass-shaped grid corresponding to the occupied grid map with respect to the track candidates R11 to R16 with reference to the position of the vehicle 91, the track mask generation unit.
- the 212 sets the trajectory mask by integrating the trajectory candidates passing through each grid.
- each grid in FIG. 4 is represented by the symbols a to g in the horizontal direction and the symbols A to G in the vertical direction.
- the position P of the vehicle 91 is represented as a square grid (d, G) with diagonal lines in FIG.
- the grids (d, F), (d, E), (d, D), and (c, D) through which the orbit candidate R11 passes are set in the corresponding orbit masks.
- the grids (d, F), (d, E), and (d, D) through which the orbit candidate R12 passes are set in the corresponding orbit masks.
- the grids (d, F), (d, E), (d, D), (d, C), and (d, B) through which the orbit candidate R15 passes are set in the orbit mask.
- the grids (d, F), (d, E), (d, D), and (e, D) through which the orbit candidate R13 passes are set in the corresponding orbit masks.
- the grids (d, F), (d, E), (e, D), (e, C), (f, C), and (f, B) through which the orbit candidate R16 passes are set in the orbit mask.
- the grids (d, E), (d, D), and (e, D) are common to all of the orbit candidates R11 to R16, they are integrated and set as the orbit mask.
- the orbit mask generation unit 212 stores the orbit mask set as described with reference to FIG. 4 in the orbit mask storage unit 213 as a table for associating the grid set in the orbit mask with the corresponding orbit candidate.
- the orbital mask set as shown in FIG. 4 is stored as a correspondence table as shown in FIG.
- the orbital mask generation unit 212 Registers that the orbital candidates R11 to R16 are set as an integrated orbital mask for the grids (d, E), (d, D), and (d, C).
- the orbit mask generation unit 212 refers to the orbit candidate R11 with respect to the grid (c, D). , R14 is registered as an integrated orbital mask.
- the orbit mask generation unit 212 refers to the orbit candidate R13 with respect to the grid (e, D). , R16 is registered as an orbital mask.
- the orbit mask generation unit 212 can be used as a grid (c). , C), (b, C), (c, B) are registered as the orbit masks of the orbit candidate R14.
- the orbit mask generation unit 212 can use the grids (d, C) and (d). , B) are registered as the orbit mask of the orbit candidate R15.
- the orbit mask generation unit 212 can be set by the grid (e). , C), (f, C), (f, B) are registered as the orbit masks of the orbit candidate R16.
- the orbit mask storage unit 213 stores the orbit mask as information as a correspondence table as shown in FIG.
- the occupied grid map adjusting unit 214 When the occupied grid map adjusting unit 214 acquires the occupied grid map generated by the situation recognition unit 153 of the situation analysis unit 133, it adjusts the resolution so as to correspond to the grid spacing of the trajectory mask and outputs it to the collision determination unit 215. To do.
- the resolution of the occupied grid map referred to here is substantially the size of the grid. That is, the occupied grid map adjusting unit 214 adjusts the grid size of the occupied grid map and the grid size on which the trajectory mask is set so as to correspond to each other.
- the collision determination unit 215 uses the orbit mask as a unit based on the occupied grid map, the orbit candidate, and the orbit mask whose resolution has been adjusted to correspond to the grid spacing of the orbit mask supplied by the occupied grid map adjusting unit 214. As a result, it is determined whether or not there is a collision with an obstacle on the occupied grid map, and a trajectory candidate without a collision is output to the trajectory evaluation unit 216.
- the collision determination unit 215 superimposes the occupied grid map and the orbit mask, and makes a collision determination based on the presence or absence of obstacles on the occupied grid map on the orbit mask.
- the collision determination unit 215 has obstacles in the regions MB11 and MB12 on the trajectory mask M1 of FIG. 6, and the grids (c, D) and (e, D) on the trajectory mask M1. In, since a collision will occur, it is determined that there is a collision.
- the collision determination unit 215 divides the orbital mask M1 into, for example, orbital masks M2A and M2B, and the same as described above for each. Make a collision judgment.
- the collision determination unit 215 divides the orbit mask M1 into orbit mask units in which orbit candidates are integrated.
- the collision determination unit 215 includes the orbit mask M1, the orbit mask M2A in which the orbit candidates R11, R12, and R14 are integrated, and the orbit candidates R12, R13, R15, and R16. It is divided into an integrated orbital mask M2B. That is, the collision determination unit 215 sequentially subdivides the trajectory mask until it is considered that there is no collision.
- the orbit candidates R11, R12, and R14 integrated in the orbit mask M2A are the orbit evaluation units 216. Is output to.
- the collision determination unit 215 determines the trajectory of the trajectory candidates R11, R12, and R14 integrated in the trajectory mask M2A, which is close to the current position.
- the orbital mask M3A in which the candidates R11 and R12 are integrated is extracted, and a collision determination is performed.
- the collision determination unit 215 sequentially subdivides the orbit mask until it is considered that there is no collision, and when simple subdivision becomes impossible, the collision determination unit 215 extracts the orbit mask in which the orbit candidates in the range close to the current position are integrated. , Make a collision judgment.
- the subdivision of the orbital mask determined to have a collision is to simply subdivide the orbital mask, and further, by extracting the orbital mask in which the orbital candidates in the range close to the current position are integrated. is there.
- the collision determination unit 215 evaluates the trajectory candidates R11, R12, and R14 of the trajectory mask M3A. Output to unit 216.
- the collision determination unit 215 has a collision in all of the orbit candidates R11, R12, and R14 integrated in the orbit mask M3A. Therefore, the orbital mask M3A is further subdivided and the orbital mask M4A of FIG. 6 is extracted.
- the orbit mask M4A does not interfere with any obstacles in the areas MB11 and MB12 on the occupied grid map, it is determined that there is no collision, and only the corresponding orbit candidate R12 is output to the orbit evaluation unit 216.
- the collision determination unit 215 uses the R12, R13, R15, and R16 integrated in the orbit mask M2B as the orbit evaluation unit 216. Output to.
- the collision determination unit 215 determines the trajectory mask M2B as shown in FIG. Is divided into an orbital mask M3B in which orbital candidates R12 and R15 are integrated and an orbital mask M3C in which orbital candidates R12, R13 and R16 are integrated.
- the orbit candidates R12, R15 or R12, R13, R16 integrated in each of the orbit masks M3B or M3C are output to the orbit evaluation unit 216. ..
- the collision determination unit 215 determines that the trajectory mask corresponds to the trajectory candidate R12 whose trajectory mask is close to the current position P among the trajectory candidates R12 and R15 of the trajectory mask M3B. M4A is extracted and collision determination is performed.
- the collision determination unit 215 determines that the trajectory mask R12, among the trajectory candidates R12, R13, and R16 of the trajectory mask M3C, the trajectory mask is close to the current position.
- the trajectory mask M4B corresponding to R13 is extracted, and collision determination is performed.
- the orbit candidates R12 and R13 are output to the orbit evaluation unit 216, and if there is a collision, the orbit mask M4A corresponding to the orbit candidate R12 close to the current position P among the orbit masks M3C is used. Extract and make a collision judgment.
- the orbit mask M4A interferes with some obstacle on the occupied grid map and it is determined that there is a collision, there is no orbit candidate without collision. Therefore, there is no orbit candidate without collision.
- the orbit evaluation unit 216 is notified.
- the trajectory evaluation unit 216 sets evaluation values for each of the trajectory candidates deemed to have no collision by the collision determination unit 215, and selects and outputs the trajectory candidate with the highest evaluation as the target trajectory.
- the track evaluation unit 216 uses, for example, an evaluation value obtained by scoring the evaluation of each track candidate such as mileage, running speed, behavioral stability, and fuel efficiency when the vehicle 91 travels on each of the track candidates without collision.
- the orbit candidate with the highest calculated evaluation value is set as the target orbit and output.
- step S11 the track candidate sampling unit 211 acquires aircraft information including the attitude and surrounding information of the vehicle 91 supplied by the map analysis unit 151 and the situation prediction unit 154 of the situation analysis unit 133.
- step S12 the orbit candidate sampling unit 211 samples the orbit candidate based on the acquired aircraft information and outputs it to the orbit mask generation unit 212.
- step S13 the orbital mask generation unit 212 generates an orbital mask based on the sampled orbital candidates as described above with reference to FIG. 5, and the orbital mask storage unit as a correspondence table between the grid and the orbital candidates. Store in 213.
- step S14 the occupied grid map adjusting unit 214 acquires the occupied grid map generated by the situation recognition unit 153 of the situation analysis unit 133, adjusts the resolution of the occupied grid map, and outputs it to the collision determination unit 215.
- the collision determination unit 215 includes the orbit mask information stored in the orbit mask storage unit 213, the occupied grid map supplied by the occupied grid map adjusting unit 214, and the orbit supplied by the orbit candidate sampling unit 211. Based on the candidate information, the collision determination process is executed, and the presence or absence of a collision with an obstacle is determined for each trajectory mask. Then, the collision determination unit 215 outputs the collision-free trajectory candidate integrated into the collision-free trajectory mask to the trajectory evaluation unit 216 based on the determination result.
- step S16 the track evaluation unit 216 describes the track candidates without collision supplied by the collision determination unit 215, for example, the mileage, the running speed, the stability of the behavior, and the fuel consumption when traveling on each track candidate. Calculate the evaluation value obtained by scoring the evaluation of each orbital candidate such as.
- step S17 the trajectory evaluation unit 216 sets the trajectory candidate having the highest calculated evaluation value as the target trajectory and outputs it.
- the orbit candidate with a high evaluation value is planned and output as the target orbit.
- step S15 when the collision determination process notifies that there is no trajectory candidate without collision, the trajectory evaluation unit 216 does not notify the trajectory candidate without collision in step S16. Cannot be set.
- step S17 the trajectory evaluation unit 218 notifies the user by voice, image, or the like that there is no trajectory candidate without collision but does not exist.
- step S31 the collision determination unit 215 reads out the track mask information from the track mask storage unit 213 and sets all the track masks as processing targets.
- step S32 the collision determination unit 215 superimposes the orbital mask set as the processing target and the occupied grid map, and determines whether or not there is an obstacle on the occupied grid map on the orbital mask. To judge.
- step S32 for example, in the orbital mask M1 described with reference to FIG. 6, if there is an obstacle as shown in the regions MB11 and MB12 and it is considered that there is a collision, the process proceeds to step S33.
- step S33 the collision determination unit 215 registers that the trajectory mask to be processed has a collision. That is, here, all orbital masks as shown by the orbital mask M1 in FIG. 6 are registered as having a collision.
- step S32 If it is determined that there is no collision in step S32, the process proceeds to step S34.
- step S34 the collision determination unit 215 registers that the trajectory mask to be processed has no collision. That is, here, all orbital masks as shown by the orbital mask M1 in FIG. 6 are registered as no collision.
- step S35 the collision determination unit 215 determines whether or not there is an unprocessed trajectory mask.
- the orbital mask to be processed is the orbital mask M1
- the process proceeds to step S37. ..
- step S37 the collision determination unit 215 determines whether or not there is a trajectory mask registered as having a collision.
- step S37 for example, when the orbital mask M1 of FIG. 6 is registered as having a collision, the orbital mask with a collision exists, so the process proceeds to step S38.
- step S38 the collision determination unit 215 determines whether or not the orbital mask with collision has a subdividable orbital mask.
- step S38 for example, since the orbital mask M1 to be processed in FIG. 6 can be subdivided into orbital masks M2A and M2B, it is considered that there is a subdividable orbital mask, and the processing is performed in step S38. Proceed to S39.
- step S39 the collision determination unit 215 subdivides the subdividable orbital mask with collision and sets it as an unprocessed orbital mask.
- the collision determination unit 215 subdivides the orbital mask M1 into orbital masks M2A and M2B, and sets the subdivided orbital masks M2A and M2B as unprocessed orbital masks.
- step S36 the collision determination unit 215 sets one of the unprocessed trajectory masks as the trajectory mask to be processed, and the process returns to step S32.
- step S35 when the collision determination of the orbital mask to be processed is made by the processing of steps S32 to S34, if there is an unprocessed orbital mask in step S35, the processing returns to step S36 and a new unprocessed.
- the orbital mask of is set as the orbital mask to be processed, and the subsequent processing is repeated.
- steps S32 to S36 are repeated until the presence or absence of a collision is determined for all of the subdivided orbital masks.
- step S35 when the presence or absence of collision is determined for all the subdivided orbit masks, it is considered that there is no unprocessed orbit mask in step S35, and the process proceeds to step S37.
- step S37 the orbital mask with collision exists, and in step S38, as long as the orbital mask with collision has a subdividable orbital mask, the processes of steps S32 to S39 are repeated to subdivide the orbital mask. Then, the determination of the presence or absence of collision of the subdivided orbital masks is repeated.
- step S37 if there is no collision orbital mask, that is, for example, if the orbital mask to be processed is the orbital mask M1 and there is no collision, the process proceeds to step S40.
- step S40 if there is an orbital mask with a collision in step S37 but there is no orbital mask that can be subdivided in step S38, the process proceeds to step S40.
- step S40 the collision determination unit 215 determines whether or not there is a collision-free trajectory mask.
- step S40 If there is a collision-free trajectory mask in step S40, the process proceeds to step S41.
- step S41 the collision determination unit 215 outputs the trajectory candidate integrated in the collision-free trajectory mask to the trajectory evaluation unit 216.
- step S40 if there is no collision-free trajectory mask, the process proceeds to step S42.
- step S42 the collision determination unit 215 notifies the trajectory evaluation unit 216 that there is no collision-free trajectory.
- the collision determination unit 215 determines the presence or absence of a collision in the orbit mask unit in which the orbit candidates are integrated. Therefore, the calculation amount is compared with the process of determining the collision for each orbit candidate. It becomes possible to reduce the number of orbit candidates and select orbit candidates at a higher speed.
- Second Embodiment >> In the above, collision determination is made in order from all orbit masks in the orbit mask unit in which orbit candidates are integrated, and if there is a collision, the orbit mask is gradually subdivided and the process of determining the presence or absence of collision is repeated. I have explained an example.
- the method of determining the presence or absence of a collision from all orbital masks and subdividing the orbital mask when there is a collision can significantly reduce the amount of calculation when there are few collision orbits, but it collides.
- the orbit mask is subdivided and the process of determining the presence or absence of a collision is increased, so that the calculation amount may not be reduced.
- the collision may be determined from the minimum orbit mask, the collision may be determined while gradually expanding the orbit mask, and finally the presence or absence of the collision of all the orbit masks may be determined.
- the minimum orbital mask M11 composed of grids (d, F), (d, E), and (d, C) is set, and obstacles on the occupied grid map are set. make it possible to determine whether or not there is a collision with an object.
- a grid (c, C), (b, C), (b, B) is added to the orbital mask M12A to set the orbital mask M13A, and similarly, a grid (e) is added to the orbital mask M12B.
- C), (f, C), (f, B) are added so that the orbital mask M13B is set and the presence or absence of collision with an obstacle on the occupied grid map is determined.
- the orbital mask is gradually expanded from the smallest orbital mask including all orbital candidates, and the processing can be terminated at any timing when the orbital mask without collision disappears. This is possible, and when there are many collisions, the amount of calculation can be suppressed.
- the orbital mask M13A or M13B when an obstacle exists in the area MB11 or MB12 on the occupied grid map, the orbital mask M13A or M13B also has an obstacle in the area MB11 on the occupied grid map. It is determined that there is a collision. Therefore, when it is determined that there is a collision in the orbital masks M12A or M12C, the collision determination with respect to the orbital masks M13A or M13B becomes unnecessary, and the calculation can be terminated.
- step S61 the collision determination unit 215 reads the trajectory mask from the trajectory mask storage unit 213 and sets the minimum trajectory mask that integrates all the trajectory candidates close to the current position as the processing target.
- step S62 the collision determination unit 215 superimposes the orbital mask set as the processing target and the occupied grid map, and determines the presence or absence of a collision depending on whether or not there is an obstacle on the occupied grid map on the orbital mask. To judge.
- step S62 for example, in the orbital mask M11 described with reference to FIG. 9, if there is an obstacle and it is considered that there is a collision, the process proceeds to step S63.
- step S63 the collision determination unit 215 registers that the trajectory mask to be processed has a collision. That is, here, all orbital masks as shown by the orbital mask M11 in FIG. 9 are registered as having a collision.
- step S62 If it is determined that there is no collision in step S62, the process proceeds to step S64.
- step S64 the collision determination unit 215 registers that the trajectory mask to be processed has no collision. That is, here, all orbital masks as shown by the orbital mask M11 in FIG. 9 are registered as no collision.
- step S65 the collision determination unit 215 determines whether or not there is an unprocessed trajectory mask.
- trajectory mask to be processed is the trajectory mask M11
- the process proceeds to step S67. ..
- step S67 the collision determination unit 215 determines whether or not there is an orbit mask registered without collision.
- step S67 for example, when the trajectory mask M11 of FIG. 9 is registered as no collision, the trajectory mask without collision exists, so the process proceeds to step S68.
- step S68 the collision determination unit 215 determines whether or not there is an additional trajectory mask in the trajectory mask without collision.
- step S68 for example, the orbital mask M11 to be processed in FIG. 9 adds grids (c, D), (d, C) and (b, C), (e, D) as new orbital masks, respectively. By doing so, it is possible to use the orbital masks M12A, M12B, and M12C. Therefore, it is considered that there is an additional orbital mask, and the process proceeds to step S69.
- step S69 the collision determination unit 215 generates a trajectory mask by adding a new mask to the trajectory mask without collision, and sets it as an unprocessed trajectory mask.
- the collision determination unit 215 adds a new orbital mask to the orbital mask M11 to generate orbital masks M12A to M12C, and sets the generated orbital masks M12A to M12C as unprocessed orbital masks.
- step S66 the collision determination unit 215 sets one of the unprocessed trajectory masks as the trajectory mask to be processed, and the process returns to step S62.
- step S65 when the collision determination of the orbital mask to be processed is made by the processing of steps S62 to S64, if there is an unprocessed orbital mask in step S65, the processing returns to step S66 and new unprocessed.
- the orbital mask of is set as the orbital mask to be processed, and the subsequent processing is repeated.
- steps S62 to S66 are repeated until the presence or absence of a collision is determined for all of the unprocessed trajectory masks.
- step S65 when the presence or absence of collision is determined for all the orbital masks, it is considered that there is no unprocessed orbital mask in step S65, and the process proceeds to step S67.
- step S67 the process of steps S62 to S69 is repeated as long as the orbital mask without collision exists and the orbital mask without collision has an addable orbital mask, and a new orbital mask is added. Then, the determination of the presence or absence of collision of the orbital mask to which a new orbital mask is added is repeated.
- step S67 if there is no collision-free trajectory mask, the process proceeds to step S71.
- step S71 the collision determination unit 215 notifies the trajectory evaluation unit 216 that there is no collision-free trajectory candidate integrated in the collision-free trajectory mask.
- step S67 if there is a trajectory mask without collision, but in step S68, there is no trajectory mask that can be added, the process proceeds to step S70.
- step S70 the collision determination unit 215 outputs the trajectory candidate integrated in the collision-free trajectory mask to the trajectory evaluation unit 216.
- the collision determination unit 215 determines the presence or absence of a collision in the orbit mask unit in which the orbit candidates are integrated. Therefore, the calculation amount is compared with the process of determining the collision for each orbit candidate. It becomes possible to reduce the number of orbit candidates, and it becomes possible to select orbit candidates at a higher speed.
- the orbit mask is formed in the orbit mask storage unit 213 in the form of a correspondence table in which each grid and the orbit candidate are associated with each other.
- a map consisting of information for each grid based on the correspondence table forming the trajectory mask is generated, and the trajectory candidates associated with the grid without obstacles on the occupied grid map are the trajectory candidates without collision. Can be regarded.
- the information of the orbit candidates corresponding to each grid is specified as shown in FIG. Form a map to do.
- the map of FIG. 11 is substantially the same as the correspondence table of FIG.
- the orbital candidates R12, R13, R15, and R16 other than the orbital candidates R11 and R14 are selected as the orbital candidates without collision.
- step S91 the collision determination unit 215 reads out the information of the correspondence table for specifying the trajectory mask stored in the trajectory mask storage unit 213, and displays each grid of the trajectory mask as shown in FIG. 11 and the grid thereof. Generate a map showing the correspondence with the orbit candidates to pass.
- step S92 the collision determination unit 215 sets the unprocessed grid among the grids in the trajectory mask as the processing target grid.
- step S93 the collision determination unit 215 superimposes an occupied grid map on the map based on the orbital mask, and determines whether or not there is a collision based on whether or not the processing target grid is an area where an obstacle exists. To do.
- step S93 If there is an obstacle in the processing target grid in step S93 and it is determined that there is a collision, the processing proceeds to step S94.
- step S94 the collision determination unit 215 registers the processing target grid as having a collision.
- step S93 if it is determined that there is no obstacle in the processing target grid and there is no collision, the processing proceeds to step S95.
- step S95 the collision determination unit 215 registers the processing target grid as no collision.
- step S96 the collision determination unit 215 determines whether or not there is an unprocessed grid in the map, and if there is an unprocessed grid, the process returns to step S92.
- steps S92 to S96 are repeated until there are no unprocessed grids, and the presence or absence of collision is determined for all the grids on the trajectory mask.
- step S96 when the presence or absence of collision is determined for all the grids, the process proceeds to step S97.
- step S97 the collision determination unit 215 determines whether or not there is a grid without collision.
- step S97 If it is determined in step S97 that there is a grid without collision, the process proceeds to step S98.
- step S98 the collision determination unit 215 outputs all the orbit candidates except the orbit candidates registered in association with the grid with collision to the orbit evaluation unit 216 as orbit candidates without collision.
- step S97 if it is determined that there is no collision-free grid in step S97, the process proceeds to step S99.
- step S99 the collision determination unit 215 outputs to the trajectory evaluation unit 216 that there is no trajectory candidate without collision.
- Example of execution by software By the way, the series of processes described above can be executed by hardware, but can also be executed by software.
- the programs that make up the software can execute various functions by installing a computer embedded in dedicated hardware or various programs. It is installed from a recording medium on a possible, eg, general purpose computer.
- FIG. 13 shows a configuration example of a general-purpose computer.
- This personal computer has a built-in CPU (Central Processing Unit) 1001.
- the input / output interface 1005 is connected to the CPU 1001 via the bus 1004.
- ROM (Read Only Memory) 1002 and RAM (Random Access Memory) 1003 are connected to the bus 1004.
- the input / output interface 1005 includes an input unit 1006 composed of input devices such as a keyboard and a mouse for which a user inputs operation commands, an output unit 1007 for outputting a processing operation screen and an image of processing results to a display device, and programs and various data. It is composed of a storage unit 1008 including a hard disk drive for storing, a LAN (Local Area Network) adapter, and the like, and is connected to a communication unit 1009 for executing communication processing via a network represented by the Internet. In addition, magnetic disks (including flexible disks), optical disks (including CD-ROM (Compact Disc-Read Only Memory), DVD (Digital Versatile Disc)), optical magnetic disks (including MD (Mini Disc)), or semiconductors.
- a drive 1010 for reading / writing data is connected to a removable media 1011 such as a memory.
- the CPU 1001 was read from a program stored in the ROM 1002 or a removable medium 1011 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory, installed in the storage unit 1008, and loaded from the storage unit 1008 into the RAM 1003. Execute various processes according to the program.
- the RAM 1003 also appropriately stores data and the like necessary for the CPU 1001 to execute various processes.
- the CPU 1001 loads the program stored in the storage unit 1008 into the RAM 1003 via the input / output interface 1005 and the bus 1004 and executes the above-described series. Is processed.
- the program executed by the computer can be recorded and provided on the removable media 1011 as a package media or the like, for example. Programs can also be provided via wired or wireless transmission media such as local area networks, the Internet, and digital satellite broadcasting.
- the program can be installed in the storage unit 1008 via the input / output interface 1005 by mounting the removable media 1011 in the drive 1010.
- the program can be received by the communication unit 1009 and installed in the storage unit 1008 via a wired or wireless transmission medium.
- the program can be pre-installed in the ROM 1002 or the storage unit 1008.
- the program executed by the computer may be a program that is processed in chronological order in the order described in this specification, or may be a program that is processed in parallel or at a necessary timing such as when a call is made. It may be a program in which processing is performed.
- the CPU 1001 in FIG. 13 realizes the function of the automatic operation control unit 112 in FIG. Further, the storage unit 1008 in FIG. 13 realizes the storage unit 111 in FIG.
- the system means a set of a plurality of components (devices, modules (parts), etc.), and it does not matter whether all the components are in the same housing. Therefore, a plurality of devices housed in separate housings and connected via a network, and a device in which a plurality of modules are housed in one housing are both systems. ..
- the present disclosure can have a cloud computing configuration in which one function is shared by a plurality of devices via a network and jointly processed.
- each step described in the above flowchart can be executed by one device or shared by a plurality of devices.
- one step includes a plurality of processes
- the plurality of processes included in the one step can be executed by one device or shared by a plurality of devices.
- An orbit candidate sampling unit that samples the orbit candidates of a moving body, Among the orbital candidates sampled by the orbital candidate sampling unit, a plurality of the orbital candidates are integrated in association with the grid of the occupied grid map, and the integrated plurality of the orbital candidates correspond to the grid of the occupied grid map.
- An orbital mask generator that generates the orbital mask
- An information processing device including the orbit mask generated by the orbit mask generation unit and a collision determination unit that determines a collision of the orbit candidates based on the occupied grid map.
- the collision determination unit superimposes the orbit mask generated by the orbit mask generation unit on the occupied grid map, so that the presence or absence of an obstacle region of the occupied grid map on the orbit mask.
- the information processing apparatus which determines collision based on.
- the collision determination unit sets all orbit masks generated by the orbit mask generation unit on the orbit mask to be processed, and superimposes the occupancy grid map on the occupancy on the orbit mask to be processed. Collision detection is performed based on the presence or absence of obstacle areas on the grid map.
- the processing target orbit mask is subdivided to generate a subdivided orbit mask, the subdivided orbit mask is set to the processing target orbit mask, and the occupied grid map is superimposed.
- the information processing apparatus according to ⁇ 2>, wherein the collision determination is performed based on the presence or absence of an obstacle area on the occupied grid map on the processing target trajectory mask.
- ⁇ 4> By superimposing the processing target orbit mask and the occupied grid map, collision determination is performed based on the presence or absence of an obstacle region of the occupied grid map on the processing target orbit mask.
- the collision determination unit further subdivides the processing target orbit mask to generate a new subdivided orbit mask, and processes the new subdivided orbit mask.
- Information according to ⁇ 3> in which a collision is determined based on the presence or absence of an obstacle area of the occupied grid map on the processed target orbit mask by setting the target orbit mask and superimposing the occupied grid map. Processing equipment.
- the collision determination unit determines that there is a collision
- the process target trajectory is newly subdivided until it is determined that there is no collision or until the process target trajectory mask cannot be subdivided.
- the information processing apparatus according to ⁇ 4>, wherein a mask is generated, set as the processing target trajectory mask, and the collision determination is repeated.
- the collision determination unit newly adds an orbit mask in which the orbit candidates up to a distance close to the current position are integrated among the orbit candidates integrated in the processing target orbit mask.
- the occupied grid map on the processed orbit mask is generated as a subdivided orbit mask, the new subdivided orbit mask is set on the processed orbit mask, and the occupied grid map is superimposed.
- the information processing apparatus which makes a collision determination based on the presence or absence of an obstacle area.
- the collision determination unit sets the smallest orbital mask in which all orbital candidates are integrated among the orbital masks generated by the orbital mask generation unit as the processing target orbital mask, and superimposes the occupied grid map. As a result, collision determination is performed based on the presence or absence of an obstacle area on the occupied grid map on the processing target orbit mask.
- an additional trajectory mask is generated by adding a grid in which some orbit candidates are integrated, which is adjacent to the processing target trajectory mask, to the processing target trajectory mask, and the addition is performed.
- the collision determination unit When it is determined that there is no collision determination unit, the collision determination unit generates a new additional trajectory mask by adding a grid in which some other trajectory candidates are integrated to the processing target trajectory mask, and the new By setting the additional orbit mask to the orbit mask to be processed and superimposing the occupied grid map, collision determination is performed based on the presence or absence of an obstacle area of the occupied grid map on the orbit mask to be processed ⁇ 7. > The information processing apparatus described in. ⁇ 9> When it is determined that there is no collision, the collision determination unit integrates some other orbit candidates until it is determined that there is a collision or until the new additional orbit mask cannot be generated.
- the information processing apparatus wherein a new additional trajectory mask is generated by adding the grid, the new additional trajectory mask is set as the processing target trajectory mask, and the collision determination is repeated. .. ⁇ 10>
- the trajectory mask generation unit generates a correspondence table showing the correspondence between the grid constituting the trajectory mask and the trajectory candidates passing through the grid as the trajectory mask. Based on the correspondence table, the collision determination unit superimposes a map of orbit candidates passing through the grid and an occupied grid map for each of the grids constituting the orbit mask, and the occupied grid on the map.
- the information processing apparatus according to ⁇ 2>, which determines a collision based on the presence or absence of an obstacle area on a grid map.
- the collision determination unit Based on the correspondence table, the collision determination unit superimposes a map of trajectory candidates passing through the grid for each grid constituting the trajectory mask and the occupied grid map on the map. , The collision determination is performed in which the trajectory candidates passing through the obstacle area of the occupied grid map are determined to be the trajectory candidates with collision, and the trajectory candidates other than the trajectory candidates with collision are determined to be the trajectory candidates without collision. Information processing equipment. ⁇ 12> An orbit in which an evaluation value is set for each of the orbit candidates determined to have no collision based on the collision determination result by the collision determination unit, and the orbit candidate having the highest evaluation value is output as a target orbit.
- the information processing apparatus according to any one of ⁇ 1> to ⁇ 11>, further including an evaluation unit.
- the orbital mask generation unit generates the orbital mask by associating a grid matching the resolution of the obtained occupied grid map with a plurality of orbital candidates and generating the orbital masks ⁇ 1> to ⁇ 12>.
- the information processing device according to any one.
- Orbit candidate sampling processing for sampling the orbit candidates of a moving body and Among the orbital candidates sampled by the orbital candidate sampling process, a plurality of the orbital candidates are integrated in association with the grid of the occupied grid map, and the integrated plurality of the orbital candidates correspond to the grid of the occupied grid map.
- Orbit mask generation process to generate the orbit mask An information processing method including a collision determination process for determining a collision of the orbit candidates based on the orbit mask generated by the orbit mask generation process and the occupied grid map.
- An orbit candidate sampling unit that samples the orbit candidates of a moving body, Among the orbital candidates sampled by the orbital candidate sampling unit, a plurality of the orbital candidates are integrated in association with the grid of the occupied grid map, and the integrated plurality of the orbital candidates correspond to the grid of the occupied grid map.
- An orbital mask generator that generates the orbital mask A program that causes a computer to function as a collision determination unit that determines a collision of the orbit candidates based on the orbit mask generated by the orbit mask generation unit and the occupied grid map.
- Vehicle 100 Vehicle control system 102 Data acquisition unit, 106 Output unit, 111 Storage unit, 112 Automatic operation control unit, 131 Detection unit, 132 Self-position estimation unit, 133 Situation analysis unit, 134 Planning unit, 135 Motion control unit, 141 Outside information detection unit, 151 map analysis unit, 152 traffic rule recognition unit, 153 situation recognition unit, 154 situation prediction unit, 181 track planning unit, 211 track candidate sampling unit, 212 track mask generation unit, 213 track mask storage unit, 214 Occupied grid map adjustment unit, 215 collision judgment unit, 216 trajectory evaluation unit
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Aviation & Aerospace Engineering (AREA)
- Mechanical Engineering (AREA)
- Transportation (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- Electromagnetism (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Game Theory and Decision Science (AREA)
- Medical Informatics (AREA)
- Educational Technology (AREA)
- Human Computer Interaction (AREA)
- Educational Administration (AREA)
- Traffic Control Systems (AREA)
Abstract
本開示は、自律走行の軌道計画における計算時間を短縮できるようにする情報処理装置、および情報処理方法、並びにプログラムに関する。 サンプリングベース軌道計画においてサンプリングされた軌道候補のうちの、複数の軌道候補を統合し、統合された複数の軌道候補と占有格子地図の各グリッドとを対応させた軌道マスクを生成し、生成された軌道マスクと、占有格子地図とに基づいて、軌道候補の衝突判定を行う。本開示は、移動体に適用することができる。
Description
本開示は、情報処理装置、および情報処理方法、並びにプログラムに関し、特に、自律走行の軌道計画における計算時間を短縮できるようにした情報処理装置、および情報処理方法、並びにプログラムに関する。
自律移動体は周辺の障害物情報を占有格子地図にまとめながら進むことが多い。占有格子地図は移動体を含む実世界の移動空間を格子状のセルに分割し、セル毎に障害物の有無を表現した表である。
自律移動体は目的地までの移動において、障害物に衝突せず、移動体の運動モデルに照らして実現可能な、好ましい動きをする移動経路を逐次計算しながら進む。
この移動経路というのは、物理的な空間上に描かれる「各時刻にいるべき位置、姿勢、速度の列」のことであり、特に時刻を加味した経路は軌道と称される。
考え得る軌道は無数にある中で、「障害物に衝突せずに、運動モデルを満足する」という拘束の下で問題を限定し、その中から「好ましい」という評価基準を満たす軌道を目標軌道として選択する。軌道計画とはそのような最適化問題の一つであると考えられる。
障害物に衝突しないためには前述の占有格子地図上から情報を得て計画に用いる必要がある。自律移動体自身の移動や障害物の移動に伴って、移動体と障害物との位置関係は変化し得るため、衝突回避のためには軌道計画を十分高速に行うことが求められる。
運動モデルによる拘束を十分に考慮しないと、どんなに望ましい目標軌道が生成されても、現実世界では自律移動体がその上を移動できない可能性がある。
ただし、複雑な運動モデルを想定しすぎることは、最適化問題の計算を複雑化し計算量を増大させる。
移動の好ましさは自律移動体に求められるシチュエーションやアプリケーションに依存する何らかの評価関数として表現される。
軌道計画は、障害物回避を実現する程度に高速に毎時解き続けることが要請される。
しかしながら、緻密な運動モデルによる拘束を受ける最適化問題の最適解となる目標軌道が解析的に求まることは稀であり、現実的にはもっと時間のかかる数値探索的な手法を採用せざるを得ないことが多い。
そのような手法の一つにサンプリングベース軌道計画が知られている。サンプリングベース軌道計画は、対象とする軌道計画問題の中で最適解を求めることを諦め、代わりに候補となる軌道を予め複数生成し、その候補の中で「障害物にぶつからず、一番評価値の高いもの」を近似的に最適な軌道として採用するというものである。
サンプリングベース軌道計画では、事前の軌道サンプリング時点で運動モデルを考慮した軌道候補しか考えない。また、生成するサンプリング軌道が元からそれなりに「好ましい」ように調整しておくことが、良い動きをさせるために重要である。
サンプリングベース軌道計画のアプローチをとることで、所定の時間内で最適化問題を近似的に解きながら目標軌道を選ぶことができるようになる。
しかしながら、サンプリングベース軌道計画でも、より良い軌道を選ぶためにはサンプリング数を増やさざるを得ず、性能向上に向けては計算時間低減のための工夫が求められる。
そこで、サンプリングベース軌道計画における計算時間の低減手法の一つに、サンプリングした軌道候補を逐次評価し、評価値が基準値を下回った軌道が見つかった時点でそれ以降の評価を打ち切って、その候補を目標軌道として採用する技術が提案されている(特許文献1参照)。
この技術では、全ての候補の中で最適なものが選ばれるわけではないが、ほどほどのところで妥協することで計算量を低減することが可能となっている。
しかしながら、特許文献1の技術は、汎用性が高い手法ではあるものの、基準値の選び方で最適化問題の近似がより粗くなってしまうことがあり、採用された目標軌道を移動するときの移動性能を低減させてしまう恐れがあった。
本開示は、このような状況に鑑みてなされたものであり、特に、サンプリングベース軌道計画において、最適化問題の近似を粗くさせることなく、計算時間を低減させることで、目標軌道を移動したときの移動性能の低下を抑制し、計算時間を短縮するものである。
本開示の一側面の情報処理装置およびプログラムは、移動体の軌道候補をサンプリングする軌道候補サンプリング部と、前記軌道候補サンプリング部によりサンプリングされた軌道候補のうちの、複数の前記軌道候補を、占有格子地図のグリッドと対応付けて統合し、統合した複数の前記軌道候補と占有格子地図のグリッドとを対応させた軌道マスクを生成する軌道マスク生成部と、前記軌道マスク生成部によって生成された前記軌道マスクと、前記占有格子地図とに基づいて、前記軌道候補の衝突判定を行う衝突判定部とを備える情報処理装置およびプログラムである。
本開示の一側面の情報処理方法は、移動体の軌道候補をサンプリングする軌道候補サンプリング処理と、前記軌道候補サンプリング処理によりサンプリングされた軌道候補のうちの、複数の前記軌道候補を、占有格子地図のグリッドと対応付けて統合し、統合した複数の前記軌道候補と占有格子地図のグリッドとを対応させた軌道マスクを生成する軌道マスク生成処理と、前記軌道マスク生成処理によって生成された前記軌道マスクと、前記占有格子地図とに基づいて、前記軌道候補の衝突判定を行う衝突判定処理とを含む情報処理方法である。
本開示の一側面においては、移動体の軌道候補がサンプリングされ、サンプリングされた軌道候補のうちの、複数の前記軌道候補が、占有格子地図のグリッドと対応付けて統合され、統合された複数の前記軌道候補と占有格子地図のグリッドとを対応させた軌道マスクが生成され、生成された前記軌道マスクと、前記占有格子地図とに基づいて、前記軌道候補の衝突判定が行われる。
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
以下、本技術を実施するための形態について説明する。説明は以下の順序で行う。
1.本開示の概要
2.第1の実施の形態
3.第2の実施の形態
4.第3の実施の形態
5.ソフトウェアにより実行させる例
1.本開示の概要
2.第1の実施の形態
3.第2の実施の形態
4.第3の実施の形態
5.ソフトウェアにより実行させる例
<<1.本開示の概要>>
本開示は、サンプリングベース軌道計画において、最適化問題の近似を粗くさせることなく、計算時間を低減させるものである。
本開示は、サンプリングベース軌道計画において、最適化問題の近似を粗くさせることなく、計算時間を低減させるものである。
まず、図1を参照して、本開示の概要について説明する。
例えば、図1の上段で示されるように、自律移動体である車両Cが、障害物B1,B2の付近を、図中の上方に向かって走行する場合を想定する。
このとき、車両Cは、自らで備える図示せぬステレオカメラやLiDAR(Light Detection and Ranging or Laser Imaging Detection and Ranging)等の距離センサにより図1の下段で示されるような占有格子地図(Occupancy Map)Mを取得する。
占有格子地図Mは、車両Cにより移動可能な空間を格子状のセル状のグリッドに分割し、グリッド毎に障害物の有無を表現した地図である。
図1の下段においては、車両Cを上部から見た時の周囲の空間がグリッドで表現される領域毎に物体の位置が表現されており、領域MB1,MB2が、それぞれ障害物B1,B2の存在する領域を表現している。尚、車両Cは、グリッドとは無関係な領域MCとして表現されている。
このとき、車両Cは、サンプリングベース軌道計画において、軌道候補R1乃至R5をサンプリングするものとする。
実際にサンプリングされる軌道候補は、R1乃至R5のみならず、その間などに無数に存在することもあるが、これまでの手法では、その軌道候補一つ一つについて占有格子地図M上の障害物との衝突判定がなされていた。
このようにサンプリング軌道計画では、軌道候補の数が多いと計算量が増えることになるため、計算時間が長くなり、現実には使用に耐えられない状況となることがあるので、特許文献1で示されるように、計算量を低減させる必要があった。
そこで、本開示においては、サンプリングされた複数の軌道候補のうち、近い位置の軌道候補を、占有格子地図上のグリッドを単位として統合し、占有格子地図に対応する軌道マスクを設定し、複数の軌道候補が統合された軌道マスクと、占有格子地図とを重畳して、軌道マスクと占有格子地図上の障害物との照合により衝突判定を行う。
例えば、図1の下段の場合、軌道候補R3,R4が通るグリッドに、点線で示されるような、軌道候補R3,R4を統合する軌道マスクMRが設定されるようにして、占有格子地図と重畳する。
そして、点線の軌道マスクMRの領域が、占有格子地図上の障害物と重なるか否かにより衝突を判定する。これにより、軌道マスクMRの領域に統合されている軌道候補R3,R4の障害物との衝突判定を同時に実現することができる。
すなわち、図1の場合、軌道マスクMRについて衝突判定がなされることにより、領域MB1との衝突が判定されることになるので、軌道候補R3,R4を目標軌道にできないことが一回の計算で判定される。
すなわち、複数の軌道候補をグリッド単位で統合して軌道マスクとして設定し、占有格子地図と重畳して、軌道マスク毎に障害物との衝突判定を行うことで、軌道候補一つ一つについて、障害物との衝突判定をするのと比べて、計算量を低減することが可能となる。
結果として、計算量を低減させるために衝突判定に係る判定基準等を変更させる必要がないので、高精度な衝突判定を高速に実現することができる。
<<2.第1の実施の形態>>
図2は、本技術が適用され得る移動体制御システムの一例である車両91の車両制御システム100の概略的な機能の構成例を示すブロック図である。
図2は、本技術が適用され得る移動体制御システムの一例である車両91の車両制御システム100の概略的な機能の構成例を示すブロック図である。
図1は、本技術が適用され得る移動体制御システムの一例である車両制御システム100の概略的な機能の構成例を示すブロック図である。
なお、以下、車両制御システム100が設けられている車両を他の車両と区別する場合、自車又は自車両と称する。
車両制御システム100は、入力部101、データ取得部102、通信部103、車内機器104、出力制御部105、出力部106、駆動系制御部107、駆動系システム108、ボディ系制御部109、ボディ系システム110、記憶部111、及び、自動運転制御部112を備える。入力部101、データ取得部102、通信部103、出力制御部105、駆動系制御部107、ボディ系制御部109、記憶部111、及び、自動運転制御部112は、通信ネットワーク121を介して、相互に接続されている。通信ネットワーク121は、例えば、CAN(Controller Area Network)、LIN(Local Interconnect Network)、LAN(Local Area Network)、又は、FlexRay(登録商標)等の任意の規格に準拠した車載通信ネットワークやバス等からなる。なお、車両制御システム100の各部は、通信ネットワーク121を介さずに、直接接続される場合もある。
なお、以下、車両制御システム100の各部が、通信ネットワーク121を介して通信を行う場合、通信ネットワーク121の記載を省略するものとする。例えば、入力部101と自動運転制御部112が、通信ネットワーク121を介して通信を行う場合、単に入力部101と自動運転制御部112が通信を行うと記載する。
入力部101は、搭乗者が各種のデータや指示等の入力に用いる装置を備える。例えば、入力部101は、タッチパネル、ボタン、マイクロフォン、スイッチ、及び、レバー等の操作デバイス、並びに、音声やジェスチャ等により手動操作以外の方法で入力可能な操作デバイス等を備える。また、例えば、入力部101は、赤外線若しくはその他の電波を利用したリモートコントロール装置、又は、車両制御システム100の操作に対応したモバイル機器若しくはウェアラブル機器等の外部接続機器であってもよい。入力部101は、搭乗者により入力されたデータや指示等に基づいて入力信号を生成し、車両制御システム100の各部に供給する。
データ取得部102は、車両制御システム100の処理に用いるデータを取得する各種のセンサ等を備え、取得したデータを、車両制御システム100の各部に供給する。
例えば、データ取得部102は、自車の状態等を検出するための各種のセンサを備える。具体的には、例えば、データ取得部102は、ジャイロセンサ、加速度センサ、慣性計測装置(IMU)、及び、アクセルペダルの操作量、ブレーキペダルの操作量、ステアリングホイールの操舵角、エンジン回転数、モータ回転数、若しくは、車輪の回転速度等を検出するためのセンサ等を備える。
また、例えば、データ取得部102は、自車の外部の情報を検出するための各種のセンサを備える。具体的には、例えば、データ取得部102は、ToF(Time Of Flight)カメラ、ステレオカメラ、単眼カメラ、赤外線カメラ、及び、その他のカメラ等の撮像装置を備える。また、例えば、データ取得部102は、天候又は気象等を検出するための環境センサ、及び、自車の周囲の物体を検出するための周囲情報検出センサを備える。環境センサは、例えば、雨滴センサ、霧センサ、日照センサ、雪センサ等からなる。周囲情報検出センサは、例えば、超音波センサ、レーダ、LiDAR(Light Detection and Ranging、Laser Imaging Detection and Ranging)、ソナー等からなる。
さらに、例えば、データ取得部102は、自車の現在位置を検出するための各種のセンサを備える。具体的には、例えば、データ取得部102は、GNSS(Global Navigation Satellite System)衛星からのGNSS信号を受信するGNSS受信機等を備える。
また、例えば、データ取得部102は、車内の情報を検出するための各種のセンサを備える。具体的には、例えば、データ取得部102は、運転者を撮像する撮像装置、運転者の生体情報を検出する生体センサ、及び、車室内の音声を集音するマイクロフォン等を備える。生体センサは、例えば、座面又はステアリングホイール等に設けられ、座席に座っている搭乗者又はステアリングホイールを握っている運転者の生体情報を検出する。
通信部103は、車内機器104、並びに、車外の様々な機器、サーバ、基地局等と通信を行い、車両制御システム100の各部から供給されるデータを送信したり、受信したデータを車両制御システム100の各部に供給したりする。なお、通信部103がサポートする通信プロトコルは、特に限定されるものではなく、また、通信部103が、複数の種類の通信プロトコルをサポートすることも可能である。
例えば、通信部103は、無線LAN、Bluetooth(登録商標)、NFC(Near Field Communication)、又は、WUSB(Wireless USB)等により、車内機器104と無線通信を行う。また、例えば、通信部103は、図示しない接続端子(及び、必要であればケーブル)を介して、USB(Universal Serial Bus)、HDMI(登録商標)(High-Definition Multimedia Interface)、又は、MHL(Mobile High-definition Link)等により、車内機器104と有線通信を行う。
さらに、例えば、通信部103は、基地局又はアクセスポイントを介して、外部ネットワーク(例えば、インターネット、クラウドネットワーク又は事業者固有のネットワーク)上に存在する機器(例えば、アプリケーションサーバ又は制御サーバ)との通信を行う。また、例えば、通信部103は、P2P(Peer To Peer)技術を用いて、自車の近傍に存在する端末(例えば、歩行者若しくは店舗の端末、又は、MTC(Machine Type Communication)端末)との通信を行う。さらに、例えば、通信部103は、車車間(Vehicle to Vehicle)通信、路車間(Vehicle to Infrastructure)通信、自車と家との間(Vehicle to Home)の通信、及び、歩車間(Vehicle to Pedestrian)通信等のV2X通信を行う。また、例えば、通信部103は、ビーコン受信部を備え、道路上に設置された無線局等から発信される電波あるいは電磁波を受信し、現在位置、渋滞、通行規制又は所要時間等の情報を取得する。
車内機器104は、例えば、搭乗者が有するモバイル機器若しくはウェアラブル機器、自車に搬入され若しくは取り付けられる情報機器、及び、任意の目的地までの経路探索を行うナビゲーション装置等を含む。
出力制御部105は、自車の搭乗者又は車外に対する各種の情報の出力を制御する。例えば、出力制御部105は、視覚情報(例えば、画像データ)及び聴覚情報(例えば、音声データ)のうちの少なくとも1つを含む出力信号を生成し、出力部106に供給することにより、出力部106からの視覚情報及び聴覚情報の出力を制御する。具体的には、例えば、出力制御部105は、データ取得部102の異なる撮像装置により撮像された画像データを合成して、俯瞰画像又はパノラマ画像等を生成し、生成した画像を含む出力信号を出力部106に供給する。また、例えば、出力制御部105は、衝突、接触、危険地帯への進入等の危険に対する警告音又は警告メッセージ等を含む音声データを生成し、生成した音声データを含む出力信号を出力部106に供給する。
出力部106は、自車の搭乗者又は車外に対して、視覚情報又は聴覚情報を出力することが可能な装置を備える。例えば、出力部106は、表示装置、インストルメントパネル、オーディオスピーカ、ヘッドホン、搭乗者が装着する眼鏡型ディスプレイ等のウェアラブルデバイス、プロジェクタ、ランプ等を備える。出力部106が備える表示装置は、通常のディスプレイを有する装置以外にも、例えば、ヘッドアップディスプレイ、透過型ディスプレイ、AR(Augmented Reality)表示機能を有する装置等の運転者の視野内に視覚情報を表示する装置であってもよい。
駆動系制御部107は、各種の制御信号を生成し、駆動系システム108に供給することにより、駆動系システム108の制御を行う。また、駆動系制御部107は、必要に応じて、駆動系システム108以外の各部に制御信号を供給し、駆動系システム108の制御状態の通知等を行う。
駆動系システム108は、自車の駆動系に関わる各種の装置を備える。例えば、駆動系システム108は、内燃機関又は駆動用モータ等の駆動力を発生させるための駆動力発生装置、駆動力を車輪に伝達するための駆動力伝達機構、舵角を調節するステアリング機構、制動力を発生させる制動装置、ABS(Antilock Brake System)、ESC(Electronic Stability Control)、並びに、電動パワーステアリング装置等を備える。
ボディ系制御部109は、各種の制御信号を生成し、ボディ系システム110に供給することにより、ボディ系システム110の制御を行う。また、ボディ系制御部109は、必要に応じて、ボディ系システム110以外の各部に制御信号を供給し、ボディ系システム110の制御状態の通知等を行う。
ボディ系システム110は、車体に装備されたボディ系の各種の装置を備える。例えば、ボディ系システム110は、キーレスエントリシステム、スマートキーシステム、パワーウィンドウ装置、パワーシート、ステアリングホイール、空調装置、及び、各種ランプ(例えば、ヘッドランプ、バックランプ、ブレーキランプ、ウィンカ、フォグランプ等)等を備える。
記憶部111は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disc Drive)等の磁気記憶デバイス、半導体記憶デバイス、光記憶デバイス、及び、光磁気記憶デバイス等を備える。記憶部111は、車両制御システム100の各部が用いる各種プログラムやデータ等を記憶する。例えば、記憶部111は、ダイナミックマップ等の3次元の高精度地図、高精度地図より精度が低く、広いエリアをカバーするグローバルマップ、及び、自車の周囲の情報を含むローカルマップ等の地図データを記憶する。
自動運転制御部112は、自律走行又は運転支援等の自動運転に関する制御を行う。具体的には、例えば、自動運転制御部112は、自車の衝突回避あるいは衝撃緩和、車間距離に基づく追従走行、車速維持走行、自車の衝突警告、又は、自車のレーン逸脱警告等を含むADAS(Advanced Driver Assistance System)の機能実現を目的とした協調制御を行う。また、例えば、自動運転制御部112は、運転者の操作に拠らずに自律的に走行する自動運転等を目的とした協調制御を行う。自動運転制御部112は、検出部131、自己位置推定部132、状況分析部133、計画部134、及び、動作制御部135を備える。
検出部131は、自動運転の制御に必要な各種の情報の検出を行う。検出部131は、車外情報検出部141、車内情報検出部142、及び、車両状態検出部143を備える。
車外情報検出部141は、車両制御システム100の各部からのデータ又は信号に基づいて、自車の外部の情報の検出処理を行う。例えば、車外情報検出部141は、自車の周囲の物体の検出処理、認識処理、及び、追跡処理、並びに、物体までの距離の検出処理を行う。検出対象となる物体には、例えば、車両、人、障害物、構造物、道路、信号機、交通標識、道路標示等が含まれる。また、例えば、車外情報検出部141は、自車の周囲の環境の検出処理を行う。検出対象となる周囲の環境には、例えば、天候、気温、湿度、明るさ、及び、路面の状態等が含まれる。車外情報検出部141は、検出処理の結果を示すデータを自己位置推定部132、状況分析部133のマップ解析部151、交通ルール認識部152、及び、状況認識部153、並びに、動作制御部135の緊急事態回避部171等に供給する。
車内情報検出部142は、車両制御システム100の各部からのデータ又は信号に基づいて、車内の情報の検出処理を行う。例えば、車内情報検出部142は、運転者の認証処理及び認識処理、運転者の状態の検出処理、搭乗者の検出処理、及び、車内の環境の検出処理等を行う。検出対象となる運転者の状態には、例えば、体調、覚醒度、集中度、疲労度、視線方向等が含まれる。検出対象となる車内の環境には、例えば、気温、湿度、明るさ、臭い等が含まれる。車内情報検出部142は、検出処理の結果を示すデータを状況分析部133の状況認識部153、及び、動作制御部135の緊急事態回避部171等に供給する。
車両状態検出部143は、車両制御システム100の各部からのデータ又は信号に基づいて、自車の状態の検出処理を行う。検出対象となる自車の状態には、例えば、速度、加速度、舵角、異常の有無及び内容、運転操作の状態、パワーシートの位置及び傾き、ドアロックの状態、並びに、その他の車載機器の状態等が含まれる。車両状態検出部143は、検出処理の結果を示すデータを状況分析部133の状況認識部153、及び、動作制御部135の緊急事態回避部171等に供給する。
自己位置推定部132は、車外情報検出部141、及び、状況分析部133の状況認識部153等の車両制御システム100の各部からのデータ又は信号に基づいて、自車の位置及び姿勢等の推定処理を行う。また、自己位置推定部132は、必要に応じて、自己位置の推定に用いるローカルマップ(以下、自己位置推定用マップと称する)を生成する。自己位置推定用マップは、例えば、SLAM(Simultaneous Localization and Mapping)等の技術を用いた高精度なマップとされる。自己位置推定部132は、推定処理の結果を示すデータを状況分析部133のマップ解析部151、交通ルール認識部152、及び、状況認識部153等に供給する。また、自己位置推定部132は、自己位置推定用マップを記憶部111に記憶させる。
状況分析部133は、自車及び周囲の状況の分析処理を行う。状況分析部133は、マップ解析部151、交通ルール認識部152、状況認識部153、及び、状況予測部154を備える。
マップ解析部151は、自己位置推定部132及び車外情報検出部141等の車両制御システム100の各部からのデータ又は信号を必要に応じて用いながら、記憶部111に記憶されている各種のマップの解析処理を行い、自動運転の処理に必要な情報を含むマップを構築する。マップ解析部151は、構築したマップを、交通ルール認識部152、状況認識部153、状況予測部154、並びに、計画部134のルート計画部161、行動計画部162、及び、動作計画部163等に供給する。
交通ルール認識部152は、自己位置推定部132、車外情報検出部141、及び、マップ解析部151等の車両制御システム100の各部からのデータ又は信号に基づいて、自車の周囲の交通ルールの認識処理を行う。この認識処理により、例えば、自車の周囲の信号の位置及び状態、自車の周囲の交通規制の内容、並びに、走行可能な車線等が認識される。交通ルール認識部152は、認識処理の結果を示すデータを状況予測部154等に供給する。
状況認識部153は、自己位置推定部132、車外情報検出部141、車内情報検出部142、車両状態検出部143、及び、マップ解析部151等の車両制御システム100の各部からのデータ又は信号に基づいて、自車に関する状況の認識処理を行う。例えば、状況認識部153は、自車の状況、自車の周囲の状況、及び、自車の運転者の状況等の認識処理を行う。また、状況認識部153は、必要に応じて、自車の周囲の状況の認識に用いるローカルマップ(以下、状況認識用マップと称する)を生成する。状況認識用マップは、例えば、占有格子地図(Occupancy Grid Map)とされる。
認識対象となる自車の状況には、例えば、自車の位置、姿勢、動き(例えば、速度、加速度、移動方向等)、並びに、異常の有無及び内容等が含まれる。認識対象となる自車の周囲の状況には、例えば、周囲の静止物体の種類及び位置、周囲の動物体の種類、位置及び動き(例えば、速度、加速度、移動方向等)、周囲の道路の構成及び路面の状態、並びに、周囲の天候、気温、湿度、及び、明るさ等が含まれる。認識対象となる運転者の状態には、例えば、体調、覚醒度、集中度、疲労度、視線の動き、並びに、運転操作等が含まれる。
状況認識部153は、認識処理の結果を示すデータ(必要に応じて、状況認識用マップを含む)を自己位置推定部132及び状況予測部154等に供給する。また、状況認識部153は、状況認識用マップを記憶部111に記憶させる。
状況予測部154は、マップ解析部151、交通ルール認識部152及び状況認識部153等の車両制御システム100の各部からのデータ又は信号に基づいて、自車に関する状況の予測処理を行う。例えば、状況予測部154は、自車の状況、自車の周囲の状況、及び、運転者の状況等の予測処理を行う。
予測対象となる自車の状況には、例えば、自車の挙動、異常の発生、及び、走行可能距離等が含まれる。予測対象となる自車の周囲の状況には、例えば、自車の周囲の動物体の挙動、信号の状態の変化、及び、天候等の環境の変化等が含まれる。予測対象となる運転者の状況には、例えば、運転者の挙動及び体調等が含まれる。
状況予測部154は、予測処理の結果を示すデータを、交通ルール認識部152及び状況認識部153からのデータとともに、計画部134のルート計画部161、行動計画部162、及び、動作計画部163等に供給する。
ルート計画部161は、マップ解析部151及び状況予測部154等の車両制御システム100の各部からのデータ又は信号に基づいて、目的地までのルートを計画する。例えば、ルート計画部161は、グローバルマップに基づいて、現在位置から指定された目的地までのルートを設定する。また、例えば、ルート計画部161は、渋滞、事故、通行規制、工事等の状況、及び、運転者の体調等に基づいて、適宜ルートを変更する。ルート計画部161は、計画したルートを示すデータを行動計画部162等に供給する。
行動計画部162は、マップ解析部151及び状況予測部154等の車両制御システム100の各部からのデータ又は信号に基づいて、ルート計画部161により計画されたルートを計画された時間内で安全に走行するための自車の行動を計画する。例えば、行動計画部162は、発進、停止、進行方向(例えば、前進、後退、左折、右折、方向転換等)、走行車線、走行速度、及び、追い越し等の計画を行う。行動計画部162は、計画した自車の行動を示すデータを動作計画部163等に供給する。
動作計画部163は、マップ解析部151及び状況予測部154等の車両制御システム100の各部からのデータ又は信号に基づいて、行動計画部162により計画された行動を実現するための自車の動作を計画する。例えば、動作計画部163は、加速、減速、及び、走行軌道等の計画を行う。動作計画部163は、計画した自車の動作を示すデータを、動作制御部135の加減速制御部172及び方向制御部173等に供給する。
より詳細には、動作計画部163は、軌道計画部181を備えている。軌道計画部181は、マップ解析部151及び状況予測部154等の車両制御システム100の各部からのデータ又は信号に基づいたサンプリング軌道計画により、走行軌道(目標軌道)を計画する。尚、軌道計画部181の詳細な構成については、図3を参照して、詳細を後述する。
動作制御部135は、自車の動作の制御を行う。動作制御部135は、緊急事態回避部171、加減速制御部172、及び、方向制御部173を備える。
緊急事態回避部171は、車外情報検出部141、車内情報検出部142、及び、車両状態検出部143の検出結果に基づいて、衝突、接触、危険地帯への進入、運転者の異常、車両の異常等の緊急事態の検出処理を行う。緊急事態回避部171は、緊急事態の発生を検出した場合、急停車や急旋回等の緊急事態を回避するための自車の動作を計画する。緊急事態回避部171は、計画した自車の動作を示すデータを加減速制御部172及び方向制御部173等に供給する。
加減速制御部172は、動作計画部163又は緊急事態回避部171により計画された自車の動作を実現するための加減速制御を行う。例えば、加減速制御部172は、計画された加速、減速、又は、急停車を実現するための駆動力発生装置又は制動装置の制御目標値を演算し、演算した制御目標値を示す制御指令を駆動系制御部107に供給する。
方向制御部173は、動作計画部163又は緊急事態回避部171により計画された自車の動作を実現するための方向制御を行う。例えば、方向制御部173は、動作計画部163又は緊急事態回避部171により計画された走行軌道又は急旋回を実現するためのステアリング機構の制御目標値を演算し、演算した制御目標値を示す制御指令を駆動系制御部107に供給する。
<軌道計画部の構成例>
次に、図3のブロック図を参照して、軌道計画部181の構成例について説明する。
次に、図3のブロック図を参照して、軌道計画部181の構成例について説明する。
軌道計画部181は、軌道候補サンプリング部211、軌道マスク生成部212、軌道マスク記憶部213、占有格子地図調整部214、衝突判定部215、および軌道評価部216を備えている。
軌道候補サンプリング部211は、状況分析部133のマップ解析部151及び状況予測部154等の車両制御システム100の各部より供給される車両91の姿勢や周囲の情報からなる機体情報に基づいて、車両91の運動モデルを考慮して軌道候補をサンプリングする。
そして、軌道候補サンプリング部211は、サンプリングした軌道候補の情報を軌道マスク生成部212、および衝突判定部215に出力する。
軌道候補サンプリング部211は、軌道のサンプリングにあたり、占有格子地図調整部214が調整する占有格子地図の解像度を考慮して軌道候補をサンプリングする。
軌道マスク生成部212は、軌道候補サンプリング部211より供給される軌道候補に基づいて、占有格子地図に対応するマス状のグリッド単位で、複数の軌道候補を統合する軌道マスクを生成し、軌道マスクが形成されるグリッドと、対応する軌道候補との関係を示す対応表として、軌道マスク記憶部213に記憶させる。
換言すると、軌道マスク生成部212は、占有格子地図に対応するグリッドのうち、複数の軌道候補を統合することによりグリッドの領域を軌道マスクとして形成し、軌道マスクが形成されるグリッドと、対応する軌道との関係を示す対応表を生成し、軌道マスクの情報として、軌道マスク記憶部213に記憶させる。
より詳細には、例えば、軌道候補サンプリング部211が、図4の左部で示されるように、現在の車両91の位置Pより姿勢や周囲の状況に応じて、軌道候補R11乃至R16をサンプリングし、軌道マスク生成部212、および衝突判定部215に出力するものとする。
このとき、図4の右部で示されるように、軌道候補R11乃至R16に対して、車両91の位置を基準として、占有格子地図に対応するマス状のグリッドを設定するとき、軌道マスク生成部212は、各グリッドを通過する軌道候補を統合して軌道マスクを設定する。
尚、図4における各グリッドは、水平方向の記号a乃至gと垂直方向の記号A乃至Gにより位置が表現されるものとする。例えば、車両91の位置Pは、図4の斜線が付されたマス状のグリッド(d,G)として表現される。
すなわち、図4の右部においては、軌道候補R11が通過するグリッド(d,F),(d,E),(d,D),(c,D)が対応する軌道マスクに設定される。
また、軌道候補R14が通過するグリッド(d,F),(d,E),(d,D),(c,D),(c,C),(b,C),(b,B)が対応する軌道マスクに設定される。
ここで、グリッド(d,F),(d,E),(d,D),(c,D)は、軌道候補R11,R14において共通であるので、統合して軌道マスクとして設定されることになる。
同様に、軌道候補R12が通過するグリッド(d,F),(d,E),(d,D)が対応する軌道マスクに設定される。
また、軌道候補R15が通過するグリッド(d,F),(d,E),(d,D),(d,C),(d,B)が軌道マスクに設定される。
ここで、グリッド(d,F),(d,E),(d,D)は、軌道候補R11,R12,R14,R15において共通であるので、統合して軌道マスクに設定されることになる。
同様に、軌道候補R13が通過するグリッド(d,F),(d,E),(d,D),(e,D)が対応する軌道マスクに設定される。
また、軌道候補R16が通過するグリッド(d,F),(d,E),(e,D),(e,C),(f,C),(f,B)が軌道マスクに設定される。
ここで、グリッド(d,F),(d,E),(d,D),(e,D)は、軌道候補R11,R16において共通であるので、統合して軌道マスクに設定されることになる。
さらには、グリッド(d,E),(d,D),(e,D)は、軌道候補R11乃至R16の全てにおいて共通であるので、統合して軌道マスクに設定されることになる。
軌道マスク生成部212は、図4を参照して説明したように設定した軌道マスクを、軌道マスクに設定されたグリッドと、対応する軌道候補とを対応付ける表として軌道マスク記憶部213に記憶させる。
例えば、図4で示されるように設定された軌道マスクは、図5で示されるような対応表として記憶される。
すなわち、グリッド(d,E),(d,D),(d,C)は、軌道候補R11乃至R16の全てが通ることにより軌道マスクとして設定されることになるので、軌道マスク生成部212は、グリッド(d,E),(d,D),(d,C)に対して、軌道候補R11乃至R16が統合された軌道マスクとして設定されたことを登録する。
尚、図5では、軌道マスクとして設定されたグリッド内に、そのグリッドを通る軌道候補R11乃至R16に対応する番号11乃至16が丸印内に表記されている。
また、グリッド(c,D)は、軌道候補R11,R14が通ることにより軌道マスクとして設定されることになるので、軌道マスク生成部212は、グリッド(c,D)に対して、軌道候補R11,R14が統合された軌道マスクとして設定されたことを登録する。
さらに、グリッド(e,D)は、軌道候補R13,R16が通ることにより軌道マスクとして設定されることになるので、軌道マスク生成部212は、グリッド(e,D)に対して、軌道候補R13,R16が軌道マスクとして設定されたことを登録する。
また、グリッド(c,C),(b,C),(c,B)は、軌道候補R14が通ることにより軌道マスクとして設定されることになるので、軌道マスク生成部212は、グリッド(c,C),(b,C),(c,B)が、軌道候補R14の軌道マスクとして設定されたことを登録する。
さらに、グリッド(d,C),(d,B)は、軌道候補R15が通ることにより軌道マスクとして設定されることになるので、軌道マスク生成部212は、グリッド(d,C),(d,B)が、軌道候補R15の軌道マスクとして設定されたことを登録する。
さらに、グリッド(e,C),(f,C),(f,B)は、軌道候補R16が通ることにより軌道マスクとして設定されることになるので、軌道マスク生成部212は、グリッド(e,C),(f,C),(f,B)が、軌道候補R16の軌道マスクとして設定されたことを登録する。
軌道マスク記憶部213には、図5で示されるような対応表としての情報として、軌道マスクが記憶される。
ここで、図3のブロック図の説明に戻る。
占有格子地図調整部214は、状況分析部133の状況認識部153により生成される占有格子地図を取得すると、軌道マスクのグリッドの間隔に対応するように解像度を調整し、衝突判定部215に出力する。ここでいう占有格子地図の解像度とは、実質的に、グリッドのサイズである。すなわち、占有格子地図調整部214は、占有格子地図のグリッドサイズと、軌道マスクが設定されるグリッドサイズとを対応するように調整する。
衝突判定部215は、占有格子地図調整部214より供給される軌道マスクのグリッドの間隔に対応するように解像度が調整済みの占有格子地図、軌道候補、および軌道マスクに基づいて、軌道マスクを単位として、占有格子地図上の障害物との衝突の有無を判定し、衝突がない軌道候補を軌道評価部216に出力する。
より詳細には、衝突判定部215は、占有格子地図と軌道マスクとを重畳することで、軌道マスク上における占有格子地図上の障害物の有無により、衝突判定を行う。
より具体的には、図4の軌道マスクに対応する図6の左部で示される軌道マスクM1に、占有格子地図を重畳するとき、例えば、点線で示されるグリッド(b,D),(b,E),(c,D),(c,E)からなる領域MB11と、グリッド(e,D),(e,E),(f,D),(f,E)からなる領域MB12とに障害物が存在するものとする。
このような場合、衝突判定部215は、図6の軌道マスクM1上には、領域MB11,MB12のそれぞれに障害物があり、軌道マスクM1上のグリッド(c,D),(e,D)において、衝突することになるので、衝突ありと判定する。
尚、図6の軌道マスクM1に対して、上述した領域MB11,MB12が存在しない場合については、軌道マスクM1上に障害物がないことになるので、衝突なしと判定されて、軌道マスクM1に含まれる全ての軌道候補R11乃至R16が衝突の無い軌道候補として選択されて、軌道評価部216に出力される。
また、軌道マスクM1上に障害物が存在し、衝突ありと判定された場合、衝突判定部215は、軌道マスクM1を、例えば、軌道マスクM2A,M2Bとに分割し、それぞれについて上述と同様の衝突判定を行う。
すなわち、衝突判定部215は、軌道マスクM1を軌道候補が統合された軌道マスク単位で分割する。
より詳細には、衝突判定部215は、図6で示されるように、軌道マスクM1を、軌道候補R11,R12,R14が統合された軌道マスクM2Aと、軌道候補R12,R13,R15,R16が統合された軌道マスクM2Bとに分割する。すなわち、衝突判定部215は、衝突がないとみなされるまで、順次軌道マスクを細分化する。
ここで、軌道マスクM2Aにおいて、領域MB11,MB12の障害物がいずれも存在しない場合には、衝突なしと判定されて、軌道マスクM2Aに統合された軌道候補R11,R12,R14が軌道評価部216に出力される。
また、軌道マスクM2Aにおいて、領域MB11が存在し、衝突ありと判定された場合、衝突判定部215は、軌道マスクM2Aに統合される軌道候補R11,R12,R14のうちの、現在位置に近い軌道候補R11,R12が統合された軌道マスクM3Aを抽出して、衝突判定を行う。
すなわち、衝突がないとみなされるまで、衝突判定部215は、順次軌道マスクを細分化し、単純な細分化ができなくなると、現在位置に近い範囲の軌道候補が統合された軌道マスクを抽出して、衝突判定を行う。
これは、例えば、軌道候補R11,R12,R14が統合された軌道マスクM2Aのうち、現在位置Pから近い位置の軌道候補R11,R12が統合された軌道マスクM3Aが抽出されることにより、徐々に近い範囲の軌道候補群の衝突判定がなされるようにするためである。
すなわち、衝突ありと判定された軌道マスクの細分化とは、軌道マスクを単純に細分化することであると共に、さらに、現在位置に近い範囲の軌道候補が統合された軌道マスクを抽出することでもある。
例えば、ここで、軌道マスクM3Aについて、領域MB11の障害物が存在せず、衝突なしと判定される場合については、衝突判定部215は、軌道マスクM3Aの軌道候補R11,R12,R14を軌道評価部216に出力する。
また、軌道マスクM3Aについて、領域MB11の障害物が存在し、衝突ありと判定される場合については、衝突判定部215は、軌道マスクM3Aに統合された軌道候補R11,R12,R14いずれも衝突ありとみなされることになるので、さらに、軌道マスクM3Aを細分化して、図6の軌道マスクM4Aを抽出する。
軌道マスクM4Aについては、占有格子地図上の領域MB11,MB12のいずれの障害物にも干渉しないので、衝突なしと判定されて、対応する軌道候補R12のみが軌道評価部216に出力される。
一方、軌道マスクM2Bにおいて、例えば、領域MB12が存在しない場合には、衝突なしと判定されて、衝突判定部215は、軌道マスクM2Bに統合されたR12,R13,R15,R16を軌道評価部216に出力する。
また、軌道マスクM2Bにおいて、例えば、占有格子地図上の領域MB12に障害物が存在する場合には、衝突ありと判定されて、衝突判定部215は、図6で示されるように、軌道マスクM2Bを、軌道候補R12,R15が統合された軌道マスクM3Bと、軌道候補R12,R13,R16が統合された軌道マスクM3Cとに分割する。
そして、同様に衝突判定がなされ、衝突なしと判定された場合、それぞれの軌道マスクM3BまたはM3Cのそれぞれに統合された軌道候補R12,R15またはR12,R13,R16が軌道評価部216に出力される。
また、軌道マスクM3Bについて、衝突ありと判定された場合、衝突判定部215は、軌道マスクM3Bの軌道候補R12,R15のうちの、軌道マスクが現在位置Pに近い軌道候補R12に対応する軌道マスクM4Aを抽出して、衝突判定を行う。
さらに、同様に、軌道マスクM3Cについて、衝突ありと判定された場合、衝突判定部215は、軌道マスクM3Cの軌道候補R12,R13,R16のうちの、軌道マスクが現在位置に近い軌道候補R12,R13に対応する軌道マスクM4Bを抽出して、衝突判定を行う。
ここで、衝突なしであれば、軌道候補R12,R13が軌道評価部216に出力され、衝突ありであれば、軌道マスクM3Cのうち、現在位置Pに近い軌道候補R12に対応する軌道マスクM4Aを抽出して、衝突判定を行う。
尚、軌道マスクM4Aについて、占有格子地図上の何らかの障害物との干渉があり、衝突ありと判定された場合、衝突なしの軌道候補がないことになるので、衝突なしの軌道候補がないことが軌道評価部216に通知される。
軌道評価部216は、衝突判定部215により衝突なしとみなされた軌道候補のそれぞれについて評価値を設定し、最も評価の高い軌道候補を目標軌道として選択して出力する。
軌道評価部216は、例えば、衝突なしの軌道候補のそれぞれを車両91が走行した場合の走行距離、走行速度、挙動の安定性、および燃費等の各軌道候補の評価をスコア化した評価値を計算し、計算した評価値が最も高い軌道候補を目標軌道に設定して出力する。
以上のような構成により、複数の軌道候補が設定されても、軌道候補の一つ一つについて衝突判定がされるのではなく、複数の軌道候補が統合された軌道マスク単位(軌道マスクを構成するグリッド単位)で占有格子地図との衝突判定がなされる。
結果として、衝突判定に係る計算量を低減させることが可能になると共に、衝突判定に係る処理速度を向上させることが可能となる。
<軌道計画処理>
次に、図7のフローチャートを参照して、図2の軌道計画部181による軌道計画処理について説明する。
次に、図7のフローチャートを参照して、図2の軌道計画部181による軌道計画処理について説明する。
ステップS11において、軌道候補サンプリング部211は、状況分析部133のマップ解析部151及び状況予測部154等より供給される車両91の姿勢や周囲の情報等を含む機体情報を取得する。
ステップS12において、軌道候補サンプリング部211は、取得した機体情報に基づいて、軌道候補をサンプリングして、軌道マスク生成部212に出力する。
ステップS13において、軌道マスク生成部212は、図5を参照して上述したように、サンプリングされた軌道候補に基づいて、軌道マスクを生成し、グリッドと軌道候補との対応表として軌道マスク記憶部213に記憶させる。
ステップS14において、占有格子地図調整部214は、状況分析部133の状況認識部153により生成される占有格子地図を取得し、占有格子地図の解像度を調整し、衝突判定部215に出力する。
ステップS15において、衝突判定部215は、軌道マスク記憶部213に記憶されている軌道マスクの情報、占有格子地図調整部214より供給される占有格子地図、および軌道候補サンプリング部211より供給される軌道候補の情報に基づいて、衝突判定処理を実行し、軌道マスク単位で、障害物との衝突の有無を判定する。そして、衝突判定部215は、判定結果に基づいて、衝突なしの軌道マスクに統合されている、衝突なしの軌道候補を軌道評価部216に出力する。
尚、衝突判定処理については、図8のフローチャートを参照して、詳細を後述する。
ステップS16において、軌道評価部216は、衝突判定部215より供給される、衝突なしの軌道候補について、例えば、それぞれの軌道候補を走行した場合の走行距離、走行速度、挙動の安定性、および燃費等の各軌道候補の評価をスコア化した評価値を計算する。
ステップS17において、軌道評価部216は、計算した評価値が最も高い軌道候補を目標軌道に設定して出力する。
以上の一連の処理により、軌道候補のうち、評価値の高い軌道候補が目標軌道として計画されて出力される。
尚、ステップS15において、衝突判定処理により、衝突なしの軌道候補がないことが通知される場合については、ステップS16においては、衝突なしの軌道候補が通知されないので、軌道評価部216は、評価値を設定することができない。
そこで、この場合、ステップS17において、軌道評価部218は、衝突なしの軌道候補がないが存在しないことをユーザに対して音声や画像等により通知する。
<衝突判定処理(その1)>
次に、図8のフローチャートを参照して、図3の軌道計画部181における衝突判定処理について説明する。
次に、図8のフローチャートを参照して、図3の軌道計画部181における衝突判定処理について説明する。
ステップS31において、衝突判定部215は、軌道マスク記憶部213より軌道マスクの情報を読み出して、全軌道マスクを処理対象に設定する。
ステップS32において、衝突判定部215は、処理対象に設定された軌道マスクと、占有格子地図とを重畳して、軌道マスク上に占有格子地図上の障害物があるか否かにより、衝突の有無を判定する。
ステップS32において、例えば、図6を参照して説明した軌道マスクM1において、領域MB11,MB12で示されるような障害物があり、衝突があるとみなされた場合、処理は、ステップS33に進む。
ステップS33において、衝突判定部215は、処理対象となる軌道マスクが衝突ありであることを登録する。すなわち、ここでは、図6の軌道マスクM1で示されるような、全軌道マスクが衝突ありとして登録される。
また、ステップS32において、衝突がないとみなされた場合、処理は、ステップS34に進む。
ステップS34において、衝突判定部215は、処理対象となる軌道マスクが衝突なしであることを登録する。すなわち、ここでは、図6の軌道マスクM1で示されるような、全軌道マスクが衝突なしとして登録される。
ステップS35において、衝突判定部215は、未処理の軌道マスクが存在するか否かを判定する。
例えば、処理対象の軌道マスクが軌道マスクM1であるような場合、他に未処理の軌道マスクは存在しないので、未処理の軌道マスクが存在しないものとみなされて、処理は、ステップS37に進む。
ステップS37において、衝突判定部215は、衝突ありに登録された軌道マスクがあるか否かを判定する。
ステップS37において、例えば、図6の軌道マスクM1が衝突ありとして登録された場合、衝突ありの軌道マスクが存在することになるので、処理は、ステップS38に進む。
ステップS38において、衝突判定部215は、衝突あり軌道マスクには細分化可能な軌道マスクがあるか否かを判定する。
ステップS38において、例えば、図6の処理対象の軌道マスクM1は、軌道マスクM2A,M2Bに細分化することが可能であるので、細分化可能な軌道マスクが存在するとみなされて、処理は、ステップS39に進む。
ステップS39において、衝突判定部215は、細分化可能な衝突あり軌道マスクを細分化し、未処理の軌道マスクに設定する。
すなわち、例えば、衝突判定部215が、軌道マスクM1を軌道マスクM2A,M2Bに細分化し、細分化した軌道マスクM2A,M2Bを未処理の軌道マスクに設定する。
ステップS36において、衝突判定部215は、未処理の軌道マスクのいずれかを処理対象の軌道マスクに設定し、処理は、ステップS32に戻る。
そして、ステップS32乃至S34の処理により、処理対象となった軌道マスクの衝突判定がなされると、ステップS35において、未処理の軌道マスクがある場合、処理は、ステップS36に戻り、新たな未処理の軌道マスクが処理対象の軌道マスクに設定され、以降の処理が繰り返される。
すなわち、細分化された軌道マスクの全てについて、衝突の有無が判定されるまで、ステップS32乃至S36の処理が繰り返される。
そして、全ての細分化された軌道マスクについて衝突の有無が判定されると、ステップS35において、未処理の軌道マスクがないとみなされて、処理は、ステップS37に進む。
ステップS37において、衝突ありの軌道マスクが存在し、ステップS38において、衝突ありの軌道マスクに、細分化可能な軌道マスクがある限り、ステップS32乃至S39の処理が繰り返されて、軌道マスクの細分化と、細分化された軌道マスクの衝突の有無の判定が繰り返される。
そして、ステップS37において、衝突ありの軌道マスクが存在しない場合、すなわち、例えば、処理対象の軌道マスクが軌道マスクM1である場合に衝突がない場合には、処理は、ステップS40に進む。
または、ステップS37において、衝突ありの軌道マスクがあるが、ステップS38において、細分化可能な軌道マスクがない場合、処理は、ステップS40に進む。
ステップS40において、衝突判定部215は、衝突なしの軌道マスクが存在するか否かを判定する。
ステップS40において、衝突なしの軌道マスクが存在する場合、処理は、ステップS41に進む。
ステップS41において、衝突判定部215は、衝突なしの軌道マスクに統合された軌道候補を、軌道評価部216に出力する。
また、ステップS40において、衝突なしの軌道マスクが存在しない場合、処理は、ステップS42に進む。
ステップS42において、衝突判定部215は、衝突なし軌道がないことを軌道評価部216に通知する。
以上の一連の処理により、衝突判定部215は、軌道候補が統合された軌道マスク単位で衝突の有無を判定することになるので、軌道候補毎に衝突を判定する処理と比較して、計算量を低減することが可能になると共に、より高速に軌道候補を選択することが可能となる。
<<3.第2の実施の形態>>
以上においては、軌道候補を統合した軌道マスク単位で、全軌道マスクから順番に衝突判定がなされ、衝突がある場合には、軌道マスクを徐々に細分化して、衝突の有無を判定する処理を繰り返す例について説明してきた。
以上においては、軌道候補を統合した軌道マスク単位で、全軌道マスクから順番に衝突判定がなされ、衝突がある場合には、軌道マスクを徐々に細分化して、衝突の有無を判定する処理を繰り返す例について説明してきた。
しかしながら、全軌道マスクから衝突の有無を判定し、衝突がある場合には、軌道マスクを細分化する手法は、衝突する軌道が少ないときには、計算量を大幅に低減させることができるが、衝突する軌道が多い場合については、軌道マスクを細分化して、衝突の有無を判定する処理が増えることになるので、計算量の低減が見込めない恐れがある。
そこで、最小となる軌道マスクから衝突の判定を行い、徐々に軌道マスクを広げながら衝突の判定を行い、最終的に全軌道マスクの衝突の有無を判定するようにしてもよい。
すなわち、例えば、図9の左部で示されるように、グリッド(d,F),(d,E),(d,C)からなる最小の軌道マスクM11を設定し、占有格子地図上の障害物との衝突の有無が判定されるようにする。
そして、次に、軌道マスクM11に対してグリッド(c,D),(d,D),(e,D)をそれぞれ追加して、軌道マスクM12A,M12B,M12Cを設定した上で、占有格子地図上の障害物との衝突の有無が判定されるようにする。
さらに、軌道マスクM12Aに対してグリッド(c,C),(b,C),(b,B)を追加して、軌道マスクM13Aを設定し、同様に、軌道マスクM12Bに対してグリッド(e,C),(f,C),(f,B)を追加して、軌道マスクM13Bを設定した上で、それぞれ占有格子地図上の障害物との衝突の有無が判定されるようにする。
このようにすることで、全ての軌道候補を含む最小の軌道マスクから、徐々に軌道マスクが拡大されることにより、いずれかのタイミングで衝突なしの軌道マスクがなくなったタイミングで処理を打ち切ることが可能となり、衝突が多い場合には、計算量を抑制することが可能となる。
例えば、軌道マスクM12AやM12Cの場合、占有格子地図上の領域MB11やMB12に障害物が存在するときには、軌道マスクM13AやM13Bにおいても、やはり占有格子地図上の領域MB11に障害物が存在することにより衝突ありと判定される。このため、軌道マスクM12AやM12Cにおいて衝突ありに判定された場合には、軌道マスクM13AまたはM13Bに対する衝突判定は不要となるので、計算を打ち切ることができる。
特に、軌道候補の多くで、現在位置から近い位置において衝突が見込まれるような場合、現在位置から近い範囲の軌道マスクで衝突ありが判定されると、その先の軌道マスクでは衝突判定が不要になるので、計算量を抑制することが可能となり、迅速な衝突判定処理を実現することができる。
<衝突判定処理(その2)>
次に、図10のフローチャートを参照して、最小となる軌道マスクから衝突の判定を行い、徐々に軌道マスクを広げながら衝突の判定を繰り返す衝突判定処理について説明する。
次に、図10のフローチャートを参照して、最小となる軌道マスクから衝突の判定を行い、徐々に軌道マスクを広げながら衝突の判定を繰り返す衝突判定処理について説明する。
ステップS61において、衝突判定部215は、軌道マスク記憶部213より軌道マスクを読み出して、現在位置から近い全軌道候補を統合する最小の軌道マスクを処理対象に設定する。
ステップS62において、衝突判定部215は、処理対象に設定された軌道マスクと、占有格子地図とを重畳して、軌道マスク上に占有格子地図上の障害物があるか否かにより、衝突の有無を判定する。
ステップS62において、例えば、図9を参照して説明した軌道マスクM11において、障害物があり、衝突があるとみなされた場合、処理は、ステップS63に進む。
ステップS63において、衝突判定部215は、処理対象となる軌道マスクが衝突ありであることを登録する。すなわち、ここでは、図9の軌道マスクM11で示されるような、全軌道マスクが衝突ありとして登録される。
また、ステップS62において、衝突がないとみなされた場合、処理は、ステップS64に進む。
ステップS64において、衝突判定部215は、処理対象となる軌道マスクが衝突なしであることを登録する。すなわち、ここでは、図9の軌道マスクM11で示されるような、全軌道マスクが衝突なしとして登録される。
ステップS65において、衝突判定部215は、未処理の軌道マスクが存在するか否かを判定する。
例えば、処理対象の軌道マスクが軌道マスクM11であるような場合、他に未処理の軌道マスクは存在しないので、未処理の軌道マスクが存在しないものとみなされて、処理は、ステップS67に進む。
ステップS67において、衝突判定部215は、衝突なしに登録された軌道マスクがあるか否かを判定する。
ステップS67において、例えば、図9の軌道マスクM11が衝突なしとして登録された場合、衝突なしの軌道マスクが存在することになるので、処理は、ステップS68に進む。
ステップS68において、衝突判定部215は、衝突なしの軌道マスクには追加可能な軌道マスクがあるか否かを判定する。
ステップS68において、例えば、図9の処理対象の軌道マスクM11は、新たな軌道マスクとして、グリッド(c,D),(d,C)および(b,C),(e,D)をそれぞれ追加することで、軌道マスクM12A,M12B,M12Cにすることが可能であるので、追加可能な軌道マスクが存在するとみなされて、処理は、ステップS69に進む。
ステップS69において、衝突判定部215は、衝突なしの軌道マスクに新たなマスクを追加した、軌道マスクを生成し、未処理の軌道マスクに設定する。
すなわち、例えば、衝突判定部215が、軌道マスクM11に新たな軌道マスクを追加して、軌道マスクM12A乃至M12Cを生成し、生成した軌道マスクM12A乃至M12Cを未処理の軌道マスクに設定する。
ステップS66において、衝突判定部215は、未処理の軌道マスクのいずれかを処理対象の軌道マスクに設定し、処理は、ステップS62に戻る。
そして、ステップS62乃至S64の処理により、処理対象となった軌道マスクの衝突判定がなされると、ステップS65において、未処理の軌道マスクがある場合、処理は、ステップS66に戻り、新たな未処理の軌道マスクが処理対象の軌道マスクに設定され、以降の処理が繰り返される。
すなわち、未処理の軌道マスクの全てについて、衝突の有無が判定されるまで、ステップS62乃至S66の処理が繰り返される。
そして、全軌道マスクについて衝突の有無が判定されると、ステップS65において、未処理の軌道マスクがないとみなされて、処理は、ステップS67に進む。
ステップS67において、衝突なしの軌道マスクが存在し、ステップS68において、衝突なしの軌道マスクに、追加可能な軌道マスクがある限り、ステップS62乃至S69の処理が繰り返されて、新たな軌道マスクの追加と、新たな軌道マスクが追加された軌道マスクの衝突の有無の判定が繰り返される。
そして、ステップS67において、衝突なしの軌道マスクが存在しない場合、処理は、ステップS71に進む。
ステップS71において、衝突判定部215は、衝突なしの軌道マスクに統合されている、衝突なしの軌道候補がないことを軌道評価部216に通知する。
また、ステップS67において、衝突なしの軌道マスクがあるが、ステップS68において、追加可能な軌道マスクがない場合、処理は、ステップS70に進む。
ステップS70において、衝突判定部215は、衝突なしの軌道マスクに統合された軌道候補を、軌道評価部216に出力する。
以上の一連の処理により、衝突判定部215は、軌道候補が統合された軌道マスク単位で衝突の有無を判定することになるので、軌道候補毎に衝突を判定する処理と比較して、計算量を低減することが可能になり、より高速に軌道候補を選択することが可能となる。
特に、衝突ありの軌道マスクが多い場合には、現在位置から近い軌道マスクにおいて衝突なしの軌道マスクがなくなった時点で、その先の軌道マスクの衝突の有無を判定する処理が打ち切られることになるので、計算量を低減させることが可能となる。
<<4.第3の実施の形態>>
軌道マスクは、軌道マスク記憶部213において、各グリッドと軌道候補とを対応付けた対応表の形式で形成されている。
軌道マスクは、軌道マスク記憶部213において、各グリッドと軌道候補とを対応付けた対応表の形式で形成されている。
従って、軌道マスクを形成する対応表に基づいたグリッド毎の情報からなるマップを生成して、占有格子地図上の障害物が存在しないグリッドに対応付けられた軌道候補は、衝突なしの軌道候補とみなすことができる。
すなわち、軌道マスク記憶部213に記憶されている軌道マスクの情報であるグリッドと、軌道候補との対応表に基づいて、図11で示されるように、グリッド毎に対応する軌道候補の情報を特定するマップを形成する。尚、図11のマップは、実質的に、図5の対応表と同一である。
そして、このマップに対して、占有格子地図を重畳することにより、グリッド毎の障害物の有無を確認し、障害物が存在するグリッドの軌道マスクでは、衝突が発生することになるので、対応する軌道マスクに統合された軌道候補には衝突が発生することが特定される。
例えば、図11の点線で囲まれるグリッド(c,D),(c,E),(b,D),(b,E)の領域に障害物が存在する場合、軌道マスク上のグリッド(c,D)に登録された軌道候補R11,R14は、衝突が発生されることになる。
従って、図11の場合については、軌道候補R11,R14以外の軌道候補R12,R13,R15,R16が衝突なしの軌道候補として選択されることになる。
このように障害物が存在するグリッドの軌道マスクと対応付けて登録されている軌道候補を求めるのみで、衝突ありの軌道候補を求めることが可能となり、それ以外の軌道候補を衝突なしの軌道候補に特定することが可能となる。
結果として、障害物が存在するグリッドの情報のみで、衝突なしの軌道候補を特定することができるので、計算量を抑制することが可能となる。
<衝突判定処理(その3)>
次に、図12のフローチャートを参照して、軌道マスクを形成する対応表に基づいたグリッド毎の情報からなるマップに基づいた衝突判定処理について説明する。
次に、図12のフローチャートを参照して、軌道マスクを形成する対応表に基づいたグリッド毎の情報からなるマップに基づいた衝突判定処理について説明する。
ステップS91において、衝突判定部215は、軌道マスク記憶部213に記憶されている軌道マスクを特定する対応表の情報を読み出して、図11で示されるような軌道マスクの各グリッドと、そのグリッドを通る軌道候補との対応を示すマップを生成する。
ステップS92において、衝突判定部215は、軌道マスクにおけるグリッドのうち、未処理のグリッドを処理対象グリッドに設定する。
ステップS93において、衝突判定部215は、軌道マスクに基づいてマップに、占有格子地図を重畳し、処理対象グリッドが、障害物の存在する領域であるか否かに基づいて、衝突の有無を判定する。
ステップS93において、処理対象グリッドに障害物があり、衝突ありと判定された場合、処理は、ステップS94に進む。
ステップS94において、衝突判定部215は、処理対象グリッドを衝突ありと登録する。
また、ステップS93において、処理対象グリッドに障害物がなく、衝突なしと判定された場合、処理は、ステップS95に進む。
ステップS95において、衝突判定部215は、処理対象グリッドを衝突なしと登録する。
ステップS96において、衝突判定部215は、マップ内に未処理にグリッドがあるか否かを判定し、未処理のグリッドがある場合、処理は、ステップS92に戻る。
すなわち、未処理のグリッドがなくなるまで、ステップS92乃至S96の処理が繰り返されて、軌道マスク上の全てのグリッドについて、衝突の有無が判定される。
そして、ステップS96において、全てのグリッドについて、衝突の有無が判定されると、処理は、ステップS97に進む。
ステップS97において、衝突判定部215は、衝突なしのグリッドがあるか否かを判定する。
ステップS97において、衝突なしのグリッドがあると判定された場合、処理は、ステップS98に進む。
ステップS98において、衝突判定部215は、衝突ありのグリッドに対応付けて登録されている軌道候補を除く、全ての軌道候補を衝突なしの軌道候補として軌道評価部216に出力する。
一方、ステップS97において、衝突なしのグリッドがないとみなされた場合、処理は、ステップS99に進む。
ステップS99において、衝突判定部215は、衝突なしの軌道候補が存在しないことを軌道評価部216に出力する。
結果として、障害物が存在するグリッドの情報のみで、衝突なしの軌道候補を特定することができるので、計算量を抑制することが可能となる。
<<5.ソフトウェアにより実行させる例>>
ところで、上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のコンピュータなどに、記録媒体からインストールされる。
ところで、上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のコンピュータなどに、記録媒体からインストールされる。
図13は、汎用のコンピュータの構成例を示している。このパーソナルコンピュータは、CPU(Central Processing Unit)1001を内蔵している。CPU1001にはバス1004を介して、入出力インタフェース1005が接続されている。バス1004には、ROM(Read Only Memory)1002およびRAM(Random Access Memory)1003が接続されている。
入出力インタフェース1005には、ユーザが操作コマンドを入力するキーボード、マウスなどの入力デバイスよりなる入力部1006、処理操作画面や処理結果の画像を表示デバイスに出力する出力部1007、プログラムや各種データを格納するハードディスクドライブなどよりなる記憶部1008、LAN(Local Area Network)アダプタなどよりなり、インターネットに代表されるネットワークを介した通信処理を実行する通信部1009が接続されている。また、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory)、DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini Disc)を含む)、もしくは半導体メモリなどのリムーバブルメディア1011に対してデータを読み書きするドライブ1010が接続されている。
CPU1001は、ROM1002に記憶されているプログラム、または磁気ディスク、光ディスク、光磁気ディスク、もしくは半導体メモリ等のリムーバブルメディア1011ら読み出されて記憶部1008にインストールされ、記憶部1008からRAM1003にロードされたプログラムに従って各種の処理を実行する。RAM1003にはまた、CPU1001が各種の処理を実行する上において必要なデータなども適宜記憶される。
以上のように構成されるコンピュータでは、CPU1001が、例えば、記憶部1008に記憶されているプログラムを、入出力インタフェース1005及びバス1004を介して、RAM1003にロードして実行することにより、上述した一連の処理が行われる。
コンピュータ(CPU1001)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア1011に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
コンピュータでは、プログラムは、リムーバブルメディア1011をドライブ1010に装着することにより、入出力インタフェース1005を介して、記憶部1008にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部1009で受信し、記憶部1008にインストールすることができる。その他、プログラムは、ROM1002や記憶部1008に、あらかじめインストールしておくことができる。
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
尚、図13におけるCPU1001が、図5における自動運転制御部112の機能を実現させる。また、図13における記憶部1008が、図5における記憶部111を実現する。
また、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
なお、本開示の実施の形態は、上述した実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。
例えば、本開示は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
尚、本開示は、以下のような構成も取ることができる。
<1> 移動体の軌道候補をサンプリングする軌道候補サンプリング部と、
前記軌道候補サンプリング部によりサンプリングされた軌道候補のうちの、複数の前記軌道候補を、占有格子地図のグリッドと対応付けて統合し、統合した複数の前記軌道候補と占有格子地図のグリッドとを対応させた軌道マスクを生成する軌道マスク生成部と、
前記軌道マスク生成部によって生成された前記軌道マスクと、前記占有格子地図とに基づいて、前記軌道候補の衝突判定を行う衝突判定部と
を備える情報処理装置。
<2> 前記衝突判定部は、前記軌道マスク生成部によって生成された軌道マスクと、前記占有格子地図とを重畳させることにより、前記軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行う
<1>に記載の情報処理装置。
<3> 前記衝突判定部は、前記軌道マスク生成部によって生成された全軌道マスクを処理対象軌道マスクに設定し、前記占有格子地図を重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行い、
衝突があると判定した場合、前記処理対象軌道マスクを細分化して細分化軌道マスクを生成し、前記細分化軌道マスクを、前記処理対象軌道マスクに設定し、前記占有格子地図を重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行う
<2>に記載の情報処理装置。
<4> 前記処理対象軌道マスクと、前記占有格子地図とを重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行い、
衝突があると判定した場合、前記衝突判定部は、前記処理対象軌道マスクをさらに細分化して、さらに細分化した新たな細分化軌道マスクを生成し、前記新たな細分化軌道マスクを、前記処理対象軌道マスクに設定し、前記占有格子地図を重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行う
<3>に記載の情報処理装置。
<5> 前記衝突判定部は、衝突があると判定された場合、衝突がないと判定されるまで、または、前記処理対象軌道マスクを細分化できなくなるまで、細分化により新たな前記処理対象軌道マスクを生成し、前記処理対象軌道マスクに設定して、前記衝突判定を行うことを繰り返す
<4>に記載の情報処理装置。
<6> 前記衝突判定部は、衝突があると判定された場合、前記処理対象軌道マスクに統合された軌道候補のうち、現在位置に近い距離までの軌道候補が統合された軌道マスクを、新たな細分化軌道マスクとして生成して、前記新たな細分化軌道マスクを、前記処理対象軌道マスクに設定し、前記占有格子地図を重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行う
<3>に記載の情報処理装置。
<7> 前記衝突判定部は、前記軌道マスク生成部によって生成された軌道マスクのうち、全軌道候補が統合された最小の軌道マスクを処理対象軌道マスクに設定し、前記占有格子地図を重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行い、
衝突がないと判定した場合、前記処理対象軌道マスクに対して、前記処理対象軌道マスクに隣接する、一部の軌道候補が統合されたグリッドを追加することで追加軌道マスクを生成し、前記追加軌道マスクを処理対象軌道マスクに設定して、前記占有格子地図を重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行う
<2>に記載の情報処理装置。
<8> 前記処理対象軌道マスクと、前記占有格子地図とを重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行い、衝突がないと判定した場合、前記衝突判定部は、前記処理対象軌道マスクに、さらに、他の一部の軌道候補が統合されたグリッドを追加することで新たな追加軌道マスクを生成し、前記新たな追加軌道マスクを処理対象軌道マスクに設定し、前記占有格子地図を重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行う
<7>に記載の情報処理装置。
<9> 前記衝突判定部は、衝突がないと判定された場合、衝突があると判定されるまで、または、前記新たな追加軌道マスクを生成できなくなるまで、他の一部の軌道候補が統合されたグリッドを追加することで新たな追加軌道マスクを生成し、前記新たな追加軌道マスクを処理対象軌道マスクに設定して、前記衝突判定を行うことを繰り返す
<8>に記載の情報処理装置。
<10> 前記軌道マスク生成部は、前記軌道マスクを構成する前記グリッドと、前記グリッドを通る軌道候補との対応を示す対応表を、前記軌道マスクとして生成し、
前記衝突判定部は、前記対応表に基づいて、前記軌道マスクを構成する前記グリッド毎の、前記グリッドを通る軌道候補のマップと、前記占有格子地図とを重畳し、前記マップ上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行う
<2>に記載の情報処理装置。
<11> 前記衝突判定部は、前記対応表に基づいて、前記軌道マスクを構成する前記グリッド毎の、前記グリッドを通る軌道候補のマップと、前記占有格子地図とを重畳し、前記マップ上における、前記占有格子地図の障害物の領域を通る軌道候補を、衝突あり軌道候補と判定し、前記衝突あり軌道候補以外の軌道候補を衝突なし軌道候補と判定する衝突判定を行う
<10>に記載の情報処理装置。
<12> 前記衝突判定部による衝突判定結果に基づいて、衝突なしと判定された前記軌道候補のそれぞれに対して評価値を設定し、最も評価値の高い前記軌道候補を目標軌道として出力する軌道評価部をさらに含む
<1>乃至<11>のいずれかに記載の情報処理装置。
<13> 前記軌道マスク生成部は、得られた占有格子地図の解像度に合わせたグリッドに対応付けて、複数の軌道候補を統合して、前記軌道マスクを生成する
<1>乃至<12>のいずれかに記載の情報処理装置。
<14> 移動体の軌道候補をサンプリングする軌道候補サンプリング処理と、
前記軌道候補サンプリング処理によりサンプリングされた軌道候補のうちの、複数の前記軌道候補を、占有格子地図のグリッドと対応付けて統合し、統合した複数の前記軌道候補と占有格子地図のグリッドとを対応させた軌道マスクを生成する軌道マスク生成処理と、
前記軌道マスク生成処理によって生成された前記軌道マスクと、前記占有格子地図とに基づいて、前記軌道候補の衝突判定を行う衝突判定処理と
を含む情報処理方法。
<15> 移動体の軌道候補をサンプリングする軌道候補サンプリング部と、
前記軌道候補サンプリング部によりサンプリングされた軌道候補のうちの、複数の前記軌道候補を、占有格子地図のグリッドと対応付けて統合し、統合した複数の前記軌道候補と占有格子地図のグリッドとを対応させた軌道マスクを生成する軌道マスク生成部と、
前記軌道マスク生成部によって生成された前記軌道マスクと、前記占有格子地図とに基づいて、前記軌道候補の衝突判定を行う衝突判定部と
としてコンピュータを機能させるプログラム。
前記軌道候補サンプリング部によりサンプリングされた軌道候補のうちの、複数の前記軌道候補を、占有格子地図のグリッドと対応付けて統合し、統合した複数の前記軌道候補と占有格子地図のグリッドとを対応させた軌道マスクを生成する軌道マスク生成部と、
前記軌道マスク生成部によって生成された前記軌道マスクと、前記占有格子地図とに基づいて、前記軌道候補の衝突判定を行う衝突判定部と
を備える情報処理装置。
<2> 前記衝突判定部は、前記軌道マスク生成部によって生成された軌道マスクと、前記占有格子地図とを重畳させることにより、前記軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行う
<1>に記載の情報処理装置。
<3> 前記衝突判定部は、前記軌道マスク生成部によって生成された全軌道マスクを処理対象軌道マスクに設定し、前記占有格子地図を重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行い、
衝突があると判定した場合、前記処理対象軌道マスクを細分化して細分化軌道マスクを生成し、前記細分化軌道マスクを、前記処理対象軌道マスクに設定し、前記占有格子地図を重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行う
<2>に記載の情報処理装置。
<4> 前記処理対象軌道マスクと、前記占有格子地図とを重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行い、
衝突があると判定した場合、前記衝突判定部は、前記処理対象軌道マスクをさらに細分化して、さらに細分化した新たな細分化軌道マスクを生成し、前記新たな細分化軌道マスクを、前記処理対象軌道マスクに設定し、前記占有格子地図を重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行う
<3>に記載の情報処理装置。
<5> 前記衝突判定部は、衝突があると判定された場合、衝突がないと判定されるまで、または、前記処理対象軌道マスクを細分化できなくなるまで、細分化により新たな前記処理対象軌道マスクを生成し、前記処理対象軌道マスクに設定して、前記衝突判定を行うことを繰り返す
<4>に記載の情報処理装置。
<6> 前記衝突判定部は、衝突があると判定された場合、前記処理対象軌道マスクに統合された軌道候補のうち、現在位置に近い距離までの軌道候補が統合された軌道マスクを、新たな細分化軌道マスクとして生成して、前記新たな細分化軌道マスクを、前記処理対象軌道マスクに設定し、前記占有格子地図を重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行う
<3>に記載の情報処理装置。
<7> 前記衝突判定部は、前記軌道マスク生成部によって生成された軌道マスクのうち、全軌道候補が統合された最小の軌道マスクを処理対象軌道マスクに設定し、前記占有格子地図を重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行い、
衝突がないと判定した場合、前記処理対象軌道マスクに対して、前記処理対象軌道マスクに隣接する、一部の軌道候補が統合されたグリッドを追加することで追加軌道マスクを生成し、前記追加軌道マスクを処理対象軌道マスクに設定して、前記占有格子地図を重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行う
<2>に記載の情報処理装置。
<8> 前記処理対象軌道マスクと、前記占有格子地図とを重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行い、衝突がないと判定した場合、前記衝突判定部は、前記処理対象軌道マスクに、さらに、他の一部の軌道候補が統合されたグリッドを追加することで新たな追加軌道マスクを生成し、前記新たな追加軌道マスクを処理対象軌道マスクに設定し、前記占有格子地図を重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行う
<7>に記載の情報処理装置。
<9> 前記衝突判定部は、衝突がないと判定された場合、衝突があると判定されるまで、または、前記新たな追加軌道マスクを生成できなくなるまで、他の一部の軌道候補が統合されたグリッドを追加することで新たな追加軌道マスクを生成し、前記新たな追加軌道マスクを処理対象軌道マスクに設定して、前記衝突判定を行うことを繰り返す
<8>に記載の情報処理装置。
<10> 前記軌道マスク生成部は、前記軌道マスクを構成する前記グリッドと、前記グリッドを通る軌道候補との対応を示す対応表を、前記軌道マスクとして生成し、
前記衝突判定部は、前記対応表に基づいて、前記軌道マスクを構成する前記グリッド毎の、前記グリッドを通る軌道候補のマップと、前記占有格子地図とを重畳し、前記マップ上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行う
<2>に記載の情報処理装置。
<11> 前記衝突判定部は、前記対応表に基づいて、前記軌道マスクを構成する前記グリッド毎の、前記グリッドを通る軌道候補のマップと、前記占有格子地図とを重畳し、前記マップ上における、前記占有格子地図の障害物の領域を通る軌道候補を、衝突あり軌道候補と判定し、前記衝突あり軌道候補以外の軌道候補を衝突なし軌道候補と判定する衝突判定を行う
<10>に記載の情報処理装置。
<12> 前記衝突判定部による衝突判定結果に基づいて、衝突なしと判定された前記軌道候補のそれぞれに対して評価値を設定し、最も評価値の高い前記軌道候補を目標軌道として出力する軌道評価部をさらに含む
<1>乃至<11>のいずれかに記載の情報処理装置。
<13> 前記軌道マスク生成部は、得られた占有格子地図の解像度に合わせたグリッドに対応付けて、複数の軌道候補を統合して、前記軌道マスクを生成する
<1>乃至<12>のいずれかに記載の情報処理装置。
<14> 移動体の軌道候補をサンプリングする軌道候補サンプリング処理と、
前記軌道候補サンプリング処理によりサンプリングされた軌道候補のうちの、複数の前記軌道候補を、占有格子地図のグリッドと対応付けて統合し、統合した複数の前記軌道候補と占有格子地図のグリッドとを対応させた軌道マスクを生成する軌道マスク生成処理と、
前記軌道マスク生成処理によって生成された前記軌道マスクと、前記占有格子地図とに基づいて、前記軌道候補の衝突判定を行う衝突判定処理と
を含む情報処理方法。
<15> 移動体の軌道候補をサンプリングする軌道候補サンプリング部と、
前記軌道候補サンプリング部によりサンプリングされた軌道候補のうちの、複数の前記軌道候補を、占有格子地図のグリッドと対応付けて統合し、統合した複数の前記軌道候補と占有格子地図のグリッドとを対応させた軌道マスクを生成する軌道マスク生成部と、
前記軌道マスク生成部によって生成された前記軌道マスクと、前記占有格子地図とに基づいて、前記軌道候補の衝突判定を行う衝突判定部と
としてコンピュータを機能させるプログラム。
91 車両 100 車両制御システム, 102 データ取得部, 106 出力部, 111 記憶部, 112 自動運転制御部, 131 検出部, 132 自己位置推定部, 133 状況分析部, 134 計画部, 135 動作制御部, 141 車外情報検出部, 151 マップ解析部, 152 交通ルール認識部, 153 状況認識部, 154 状況予測部, 181 軌道計画部, 211 軌道候補サンプリング部, 212 軌道マスク生成部, 213 軌道マスク記憶部, 214 占有格子地図調整部, 215 衝突判定部, 216 軌道評価部
Claims (15)
- 移動体の軌道候補をサンプリングする軌道候補サンプリング部と、
前記軌道候補サンプリング部によりサンプリングされた軌道候補のうちの、複数の前記軌道候補を、占有格子地図のグリッドと対応付けて統合し、統合した複数の前記軌道候補と占有格子地図のグリッドとを対応させた軌道マスクを生成する軌道マスク生成部と、
前記軌道マスク生成部によって生成された前記軌道マスクと、前記占有格子地図とに基づいて、前記軌道候補の衝突判定を行う衝突判定部と
を備える情報処理装置。 - 前記衝突判定部は、前記軌道マスク生成部によって生成された軌道マスクと、前記占有格子地図とを重畳させることにより、前記軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行う
請求項1に記載の情報処理装置。 - 前記衝突判定部は、前記軌道マスク生成部によって生成された全軌道マスクを処理対象軌道マスクに設定し、前記占有格子地図を重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行い、
衝突があると判定した場合、前記処理対象軌道マスクを細分化して細分化軌道マスクを生成し、前記細分化軌道マスクを、前記処理対象軌道マスクに設定し、前記占有格子地図を重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行う
請求項2に記載の情報処理装置。 - 前記処理対象軌道マスクと、前記占有格子地図とを重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行い、
衝突があると判定した場合、前記衝突判定部は、前記処理対象軌道マスクをさらに細分化して、さらに細分化した新たな細分化軌道マスクを生成し、前記新たな細分化軌道マスクを、前記処理対象軌道マスクに設定し、前記占有格子地図を重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行う
請求項3に記載の情報処理装置。 - 前記衝突判定部は、衝突があると判定された場合、衝突がないと判定されるまで、または、前記処理対象軌道マスクを細分化できなくなるまで、細分化により新たな前記処理対象軌道マスクを生成し、前記処理対象軌道マスクに設定して、前記衝突判定を行うことを繰り返す
請求項4に記載の情報処理装置。 - 前記衝突判定部は、衝突があると判定された場合、前記処理対象軌道マスクに統合された軌道候補のうち、現在位置に近い距離までの軌道候補が統合された軌道マスクを、新たな細分化軌道マスクとして生成して、前記新たな細分化軌道マスクを、前記処理対象軌道マスクに設定し、前記占有格子地図を重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行う
請求項3に記載の情報処理装置。 - 前記衝突判定部は、前記軌道マスク生成部によって生成された軌道マスクのうち、全軌道候補が統合された最小の軌道マスクを処理対象軌道マスクに設定し、前記占有格子地図を重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行い、
衝突がないと判定した場合、前記処理対象軌道マスクに対して、前記処理対象軌道マスクに隣接する、一部の軌道候補が統合されたグリッドを追加することで追加軌道マスクを生成し、前記追加軌道マスクを処理対象軌道マスクに設定して、前記占有格子地図を重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行う
請求項2に記載の情報処理装置。 - 前記処理対象軌道マスクと、前記占有格子地図とを重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行い、衝突がないと判定した場合、前記衝突判定部は、前記処理対象軌道マスクに、さらに、他の一部の軌道候補が統合されたグリッドを追加することで新たな追加軌道マスクを生成し、前記新たな追加軌道マスクを処理対象軌道マスクに設定し、前記占有格子地図を重畳させることにより、前記処理対象軌道マスク上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行う
請求項7に記載の情報処理装置。 - 前記衝突判定部は、衝突がないと判定された場合、衝突があると判定されるまで、または、前記新たな追加軌道マスクを生成できなくなるまで、他の一部の軌道候補が統合されたグリッドを追加することで新たな追加軌道マスクを生成し、前記新たな追加軌道マスクを処理対象軌道マスクに設定して、前記衝突判定を行うことを繰り返す
請求項8に記載の情報処理装置。 - 前記軌道マスク生成部は、前記軌道マスクを構成する前記グリッドと、前記グリッドを通る軌道候補との対応を示す対応表を、前記軌道マスクとして生成し、
前記衝突判定部は、前記対応表に基づいて、前記軌道マスクを構成する前記グリッド毎の、前記グリッドを通る軌道候補のマップと、前記占有格子地図とを重畳し、前記マップ上における、前記占有格子地図の障害物の領域の有無に基づいて衝突判定を行う
請求項2に記載の情報処理装置。 - 前記衝突判定部は、前記対応表に基づいて、前記軌道マスクを構成する前記グリッド毎の、前記グリッドを通る軌道候補のマップと、前記占有格子地図とを重畳し、前記マップ上における、前記占有格子地図の障害物の領域を通る軌道候補を、衝突あり軌道候補と判定し、前記衝突あり軌道候補以外の軌道候補を衝突なし軌道候補と判定する衝突判定を行う
請求項10に記載の情報処理装置。 - 前記衝突判定部による衝突判定結果に基づいて、衝突なしと判定された前記軌道候補のそれぞれに対して評価値を設定し、最も評価値の高い前記軌道候補を目標軌道として出力する軌道評価部をさらに含む
請求項1に記載の情報処理装置。 - 前記軌道マスク生成部は、得られた占有格子地図の解像度に合わせたグリッドに対応付けて、複数の軌道候補を統合して、前記軌道マスクを生成する
請求項1に記載の情報処理装置。 - 移動体の軌道候補をサンプリングする軌道候補サンプリング処理と、
前記軌道候補サンプリング処理によりサンプリングされた軌道候補のうちの、複数の前記軌道候補を、占有格子地図のグリッドと対応付けて統合し、統合した複数の前記軌道候補と占有格子地図のグリッドとを対応させた軌道マスクを生成する軌道マスク生成処理と、
前記軌道マスク生成処理によって生成された前記軌道マスクと、前記占有格子地図とに基づいて、前記軌道候補の衝突判定を行う衝突判定処理と
を含む情報処理方法。 - 移動体の軌道候補をサンプリングする軌道候補サンプリング部と、
前記軌道候補サンプリング部によりサンプリングされた軌道候補のうちの、複数の前記軌道候補を、占有格子地図のグリッドと対応付けて統合し、統合した複数の前記軌道候補と占有格子地図のグリッドとを対応させた軌道マスクを生成する軌道マスク生成部と、
前記軌道マスク生成部によって生成された前記軌道マスクと、前記占有格子地図とに基づいて、前記軌道候補の衝突判定を行う衝突判定部と
としてコンピュータを機能させるプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/635,155 US20220276655A1 (en) | 2019-08-21 | 2020-08-07 | Information processing device, information processing method, and program |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019150917 | 2019-08-21 | ||
JP2019-150917 | 2019-08-21 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021033574A1 true WO2021033574A1 (ja) | 2021-02-25 |
Family
ID=74660963
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2020/030309 WO2021033574A1 (ja) | 2019-08-21 | 2020-08-07 | 情報処理装置、および情報処理方法、並びにプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20220276655A1 (ja) |
WO (1) | WO2021033574A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7215391B2 (ja) * | 2019-10-15 | 2023-01-31 | トヨタ自動車株式会社 | 自動運転車両の車両制御システム及び車両制御装置 |
CN116168173B (zh) * | 2023-04-24 | 2023-07-18 | 之江实验室 | 车道线地图生成方法、装置、电子装置和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009205226A (ja) * | 2008-02-26 | 2009-09-10 | Toyota Motor Corp | 自律移動ロボット、自己位置推定方法、環境地図の生成方法、環境地図の生成装置、及び環境地図のデータ構造 |
JP2015081824A (ja) * | 2013-10-22 | 2015-04-27 | 株式会社国際電気通信基礎技術研究所 | 放射音強度マップ作成システム、移動体および放射音強度マップ作成方法 |
JP2018062261A (ja) * | 2016-10-13 | 2018-04-19 | 本田技研工業株式会社 | 車両制御装置 |
JP2018522345A (ja) * | 2015-04-10 | 2018-08-09 | ザ ヨーロピアン アトミック エナジー コミュニティ(ユーラトム)、リプリゼンテッド バイ ザ ヨーロピアン コミッションTHE EUROPEAN ATOMIC ENERGY COMMUNITY(EURATOM) represented by The EUROPEAN COMMISSION | リアルタイムのマッピングと位置確認のための方法及び装置 |
JP2019512824A (ja) * | 2016-03-23 | 2019-05-16 | ヌートノミー インコーポレイテッド | 車両の運転および自動運転を簡易化する方法 |
JP2019517702A (ja) * | 2016-06-10 | 2019-06-24 | デューク・ユニバーシティDuke University | 自律型車両用動作計画及び再構成可能な動作計画プロセッサ |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10837773B2 (en) * | 2016-12-30 | 2020-11-17 | DeepMap Inc. | Detection of vertical structures based on LiDAR scanner data for high-definition maps for autonomous vehicles |
-
2020
- 2020-08-07 US US17/635,155 patent/US20220276655A1/en not_active Abandoned
- 2020-08-07 WO PCT/JP2020/030309 patent/WO2021033574A1/ja active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009205226A (ja) * | 2008-02-26 | 2009-09-10 | Toyota Motor Corp | 自律移動ロボット、自己位置推定方法、環境地図の生成方法、環境地図の生成装置、及び環境地図のデータ構造 |
JP2015081824A (ja) * | 2013-10-22 | 2015-04-27 | 株式会社国際電気通信基礎技術研究所 | 放射音強度マップ作成システム、移動体および放射音強度マップ作成方法 |
JP2018522345A (ja) * | 2015-04-10 | 2018-08-09 | ザ ヨーロピアン アトミック エナジー コミュニティ(ユーラトム)、リプリゼンテッド バイ ザ ヨーロピアン コミッションTHE EUROPEAN ATOMIC ENERGY COMMUNITY(EURATOM) represented by The EUROPEAN COMMISSION | リアルタイムのマッピングと位置確認のための方法及び装置 |
JP2019512824A (ja) * | 2016-03-23 | 2019-05-16 | ヌートノミー インコーポレイテッド | 車両の運転および自動運転を簡易化する方法 |
JP2019517702A (ja) * | 2016-06-10 | 2019-06-24 | デューク・ユニバーシティDuke University | 自律型車両用動作計画及び再構成可能な動作計画プロセッサ |
JP2018062261A (ja) * | 2016-10-13 | 2018-04-19 | 本田技研工業株式会社 | 車両制御装置 |
Non-Patent Citations (5)
Title |
---|
FUJIMOTO, KEISUKE ET AL.: "Map-link Method for Efficient Path Planning of Car-like Vehicle", JOURNAL OF THE ROBOTICS SOCIETY OF JAPAN, vol. 33, no. 8, 2015, pages 68 - 79 * |
KUMPEL J; SPARBERT J; TIBKEN B; HOFER E P: "QUADTREE DECOMPOSITION OF CONFIGURATIONSPACE FOR ROBOT MOTION PLANNING", 1999 EUROPEAN CONTROL CONFERENCE (ECC, 31 August 1999 (1999-08-31), pages 277 - 282, XP032772521 * |
MISSURA MARCELL; BENNEWITZ MAREN: "Predictive Collision Avoidance for the Dynamic Window Approach", 2019 INTERNATIONAL CONFERENCE ON ROBOTICS AND AUTOMATION (ICRA, 20 May 2019 (2019-05-20), pages 8620 - 8626, XP033594366, DOI: 10.1109/ICRA.2019.8794386 * |
ROSELL JAN, VAZQUEZ CARLOS, PEREZ ALEXANDER: "C-space decomposition using deterministic sampling and distance", 2007 IEEE /RSJ INTERNATIONAL CONFERENCE ON INTELLIGENT ROBOTS AND SYSTEMS, 29 October 2007 (2007-10-29) - 2 November 2007 (2007-11-02), pages 15 - 20, XP055803245 * |
SHAHBANDI SAEED GHOLAMI; ASTRAND BJORN; PHILIPPSEN ROLAND: "Sensor Based Adaptive Metric-Topological Cell Decomposition Method for Semantic Annotation of Structured Environments", 2014 13TH INTERNATIONAL CONFERENCE ON CONTROL AUTOMATION ROBOTICS & VISION (ICARCV, 2014, pages 1771 - 1777, XP032749257, DOI: 10.1109/ICARCV.2014.7064584 * |
Also Published As
Publication number | Publication date |
---|---|
US20220276655A1 (en) | 2022-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10457294B1 (en) | Neural network based safety monitoring system for autonomous vehicles | |
JP7405072B2 (ja) | 移動制御システム、移動制御方法、及びプログラム | |
JPWO2019188389A1 (ja) | 信号処理装置、および信号処理方法、プログラム、並びに移動体 | |
WO2019130945A1 (ja) | 情報処理装置、情報処理方法、プログラム、及び移動体 | |
US20200231176A1 (en) | Control apparatus, control method, program, and moving body | |
JP7180670B2 (ja) | 制御装置、制御方法、並びにプログラム | |
US20220180561A1 (en) | Information processing device, information processing method, and information processing program | |
JP2023126642A (ja) | 情報処理装置、情報処理方法、及び、情報処理システム | |
US11590985B2 (en) | Information processing device, moving body, information processing method, and program | |
WO2021033591A1 (ja) | 情報処理装置、および情報処理方法、並びにプログラム | |
JP7487178B2 (ja) | 情報処理方法、プログラム、及び、情報処理装置 | |
WO2021193099A1 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
JP7257737B2 (ja) | 情報処理装置、自己位置推定方法、及び、プログラム | |
WO2021060018A1 (ja) | 信号処理装置、信号処理方法、プログラム、及び、移動装置 | |
WO2019078010A1 (ja) | 情報処理装置、情報処理方法、移動体、及び、車両 | |
US20240257508A1 (en) | Information processing device, information processing method, and program | |
JP2022034086A (ja) | 情報処理装置、および情報処理方法、並びにプログラム | |
WO2019150918A1 (ja) | 情報処理装置、情報処理方法、プログラム、及び移動体 | |
JPWO2020116194A1 (ja) | 情報処理装置、情報処理方法、プログラム、移動体制御装置、及び、移動体 | |
US20200230820A1 (en) | Information processing apparatus, self-localization method, program, and mobile body | |
WO2021033574A1 (ja) | 情報処理装置、および情報処理方法、並びにプログラム | |
WO2021193103A1 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
JP2022028989A (ja) | 情報処理装置、および情報処理方法、並びにプログラム | |
WO2023054090A1 (ja) | 認識処理装置、認識処理方法、および認識処理システム | |
WO2022059489A1 (ja) | 情報処理装置、情報処理方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 20855149 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20855149 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: JP |