JP7257433B2 - ビークルの経路生成方法、ビークルの経路生成装置、ビークル及びプログラム - Google Patents

ビークルの経路生成方法、ビークルの経路生成装置、ビークル及びプログラム Download PDF

Info

Publication number
JP7257433B2
JP7257433B2 JP2021034388A JP2021034388A JP7257433B2 JP 7257433 B2 JP7257433 B2 JP 7257433B2 JP 2021034388 A JP2021034388 A JP 2021034388A JP 2021034388 A JP2021034388 A JP 2021034388A JP 7257433 B2 JP7257433 B2 JP 7257433B2
Authority
JP
Japan
Prior art keywords
vehicle
obstacle
constraint
look
ahead
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021034388A
Other languages
English (en)
Other versions
JP2022134905A (ja
Inventor
一茂 高木
泰郎 藤島
亮次 荒木
健司 ▲高▼尾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Heavy Industries Ltd
Original Assignee
Mitsubishi Heavy Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Heavy Industries Ltd filed Critical Mitsubishi Heavy Industries Ltd
Priority to JP2021034388A priority Critical patent/JP7257433B2/ja
Priority to DE102022201594.0A priority patent/DE102022201594A1/de
Priority to US17/679,378 priority patent/US20220281444A1/en
Publication of JP2022134905A publication Critical patent/JP2022134905A/ja
Application granted granted Critical
Publication of JP7257433B2 publication Critical patent/JP7257433B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes 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/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • B60W30/09Taking automatic action to avoid collision, e.g. braking and steering
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes 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/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • B60W30/095Predicting travel path or likelihood of collision
    • B60W30/0956Predicting travel path or likelihood of collision the prediction being responsive to traffic or environmental parameters
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0011Planning or execution of driving tasks involving control alternatives for a single driving scenario, e.g. planning several paths to avoid obstacles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2520/00Input parameters relating to overall vehicle dynamics
    • B60W2520/06Direction of travel
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2520/00Input parameters relating to overall vehicle dynamics
    • B60W2520/10Longitudinal speed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2530/00Input parameters relating to vehicle conditions or values, not covered by groups B60W2510/00 or B60W2520/00
    • B60W2530/201Dimensions of vehicle
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2554/00Input parameters relating to objects
    • B60W2554/80Spatial relation or speed relative to objects
    • B60W2554/801Lateral distance
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2554/00Input parameters relating to objects
    • B60W2554/80Spatial relation or speed relative to objects
    • B60W2554/802Longitudinal distance
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Feedback Control In General (AREA)
  • Traffic Control Systems (AREA)

Description

本発明は、ビークルの経路生成方法、ビークルの経路生成装置、ビークル及びプログラムに関する。
ビークルを目的位置まで移動させるためには、ビークルの移動経路が設定される。このようなビークルは、障害物を回避しつつ目的位置まで到達することが求められる。例えば特許文献1には、移動する障害物を回避するように、経路を生成する旨が記載されている。
特開2020-004095号公報
しかし、障害物を回避しつつ目的位置まで到達するための経路設定には、改善の余地があり、障害物を回避可能な経路を適切に設定することが求められている。
本開示は、上述した課題を解決するものであり、障害物を回避可能な経路を適切に設定可能な、ビークルの経路生成方法、ビークルの経路生成装置、ビークル及びプログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するために、本開示に係るビークルの経路生成方法は、ビークルの位置の情報を取得するステップと、前記ビークルの目的位置の情報を取得するステップと、障害物の位置の情報を取得するステップと、前記ビークルの位置、前記ビークルの大きさ、及び前記障害物の位置に基づき、先読みステップ毎の前記ビークルが前記障害物に干渉しない旨の制約条件を設定するステップと、前記先読みステップ毎の前記ビークルの位置と前記目的位置との偏差が小さくなるほど評価が高くなる評価関数と、前記制約条件とに基づき最適化計算を行い、前記ビークルの移動経路を算出するステップと、を含む。
上述した課題を解決し、目的を達成するために、本開示に係るビークルの経路生成装置は、ビークルの位置の情報を取得する自己位置情報取得部と、前記ビークルの目的位置の情報を取得する目的位置情報取得部と、障害物の位置の情報を取得する障害物情報取得部と、計算実行部と、を含み、前記計算実行部は、前記ビークルの位置、前記ビークルの大きさ、及び前記障害物の位置に基づき、先読みステップ毎の前記ビークルが前記障害物に干渉しない旨の制約条件を設定し、前記先読みステップ毎の前記ビークルの位置と前記目的位置との偏差が小さくなるほど評価が高くなる評価関数と、前記制約条件とに基づき最適化計算を行い、前記ビークルの移動経路を算出する。
上述した課題を解決し、目的を達成するために、本開示に係るビークルは、前記ビークルの経路生成装置を含む。
上述した課題を解決し、目的を達成するために、本開示に係るプログラムは、ビークルの位置の情報を取得するステップと、前記ビークルの目的位置の情報を取得するステップと、障害物の位置の情報を取得するステップと、前記ビークルの位置、前記ビークルの大きさ、及び前記障害物の位置に基づき、先読みステップ毎の前記ビークルが前記障害物に干渉しない旨の制約条件を設定するステップと、前記先読みステップ毎の前記ビークルの位置と前記目的位置との偏差が小さくなるほど評価が高くなる評価関数と、前記制約条件とに基づき最適化計算を行い、前記ビークルの移動経路を算出するステップと、を、コンピュータに実行させる。
本開示によれば、障害物を回避可能な経路を適切に設定できる。
図1は、第1実施形態に係るビークル制御システムの模式図である。 図2は、管理システムの模式的なブロック図である。 図3は、第1実施形態に係るビークルの模式的なブロック図である。 図4は、第1実施形態に係る制御部の模式的なブロック図である。 図5は、制約条件を説明するための模式図である。 図6は、本実施形態に係る制御装置の処理フローを説明するフローチャートである。 図7は、制約条件の他の例を説明するための模式図である。
以下に添付図面を参照して、本発明の好適な実施形態を詳細に説明する。なお、この実施形態により本発明が限定されるものではなく、また、実施形態が複数ある場合には、各実施形態を組み合わせて構成するものも含むものである。
(第1実施形態)
(制御システム)
図1は、第1実施形態に係るビークル制御システムの模式図である。図1に示すように、第1実施形態に係る制御システム1は、ビークル10と管理システム12とを含む。ビークル10は、自動で移動可能な移動体であるが、それに限られず、運転者が操作する有人の移動体であってもよい。ビークル10は、地面を走行する移動体としてもよいし、空中を飛行する移動体としてもよいし、水中を移動する移動体としてもよい。したがって、ビークル10は、3次元で移動できる移動体も含むが、以下では説明のため、2次元平面を移動する場合として説明する。2次元平面を移動するビークル10としては、例えば、AGF(Automated Guided Forklift)やAGV(Automated Guided Vehicle)などが挙げられるが、ビークル10の種類は任意であってよい。以下、ビークル10が移動可能な領域、すなわちビークル10が移動を予定している領域を、領域ARとする。領域ARは、本実施形態では2次元平面であり、水平方向に沿った一方向を、X方向とし、水平方向に沿った方向であってX方向と直交する方向を、Y方向とする。なお、領域ARは、3次元空間であってもよい。
本実施形態においては、ビークル10は、移動経路Rに沿って移動する。移動経路Rは、領域ARに存在する障害物Oを回避しつつ目的位置Pに向かうように、設定される。障害物Oは、ビークル10が回避する対象となる対象物である。障害物Oは、本実施形態では、位置が変化する可能性がある任意の対象物や、あるタイミングでは存在するが別のタイミングでは存在しなくなる可能性がある任意の対象物であってよい。言い換えれば、本実施形態の障害物Oは、永続的に位置が固定されて位置が既知の構造物ではないといえる。なお、障害物Oは、無生物であることに限られず、例えば人などの生物であってもよい。移動経路Rの設定方法については後述する。
(管理システム)
管理システム12は、ビークル10を管理するシステムであり、本実施形態では、ビークル10の目的位置Pを設定する。管理システム12は、本実施形態ではWMS(Warehouse Management System)であるが、WMSに限られず任意のシステムであってよく、例えばいわゆる地上システムであってもよい。
図2は、管理システムの模式的なブロック図である。管理システム12は、コンピュータであり、図2に示すように、通信部20と、記憶部22と、制御部24とを含む。通信部20は、ビークル10などの外部の装置と通信を行う通信モジュールであり、例えばアンテナなどである。管理システム12は、無線通信で通信を行うが、通信方式は任意であってよい。記憶部22は、制御部24の演算内容やプログラムなどの各種情報を記憶するメモリであり、例えば、RAM(Random Access Memory)と、ROM(Read Only Memory)のような主記憶装置と、HDD(Hard Disk Drive)などの外部記憶装置とのうち、少なくとも1つ含む。記憶部22が記憶する制御部24用のプログラムは、管理システム12が読み取り可能な記録媒体に記憶されていてもよい。
制御部24は、演算装置であり、例えばCPU(Central Processing Unit)などの演算回路を含む。制御部24は、目的位置情報取得部26を含む。制御部24は、記憶部22からプログラム(ソフトウェア)を読み出して実行することで、目的位置情報取得部26を実現して、その処理を実行する。なお、制御部24は、1つのCPUによってこの処理を実行してもよいし、複数のCPUを備えて、それらの複数のCPUで、処理を実行してもよい。また、目的位置情報取得部26を、ハードウェア回路で実現してもよい。
目的位置情報取得部26は、ビークル10の目的位置Pの位置情報を取得する。目的位置情報取得部26は、例えばビークル10が実行する作業内容を設定し、作業内容に応じて目的位置Pを設定する。ただし、目的位置情報取得部26による目的位置Pの位置情報の取得方法は任意であり、例えばユーザにより指定されてもよい。目的位置情報取得部26は、ビークル10の目的位置Pの位置情報を、通信部20を介して、そのビークル10に送信する。
なお、管理システム12は必須の構成でなく、例えば、ビークル10が目的位置Pを設定してもよい。
(ビークル)
図3は、第1実施形態に係るビークルの模式的なブロック図である。図3に示すように、ビークル10は、制御装置30と、通信部32と、自己位置検出部34と、障害物検出部36と、動力部38とを有する。
(通信部)
通信部32は、外部の装置と通信を行う通信モジュールであり、例えばアンテナなどである。ビークル10は、無線通信で通信を行うが、通信方式は任意であってよい。本実施形態では、ビークル10は、通信部32を介して管理システム12と通信して、情報の送受信を行う。
(自己位置検出部)
自己位置検出部34は、ビークル10の位置及び姿勢、すなわち自己位置及び自己姿勢を検出する装置である。ビークル10の位置とは、本実施形態においては、領域AR内においてビークル10が位置している座標を指す。ビークル10の姿勢とは、ビークル10が向いている方向を指し、本実施形態では、方向X及び方向Yに直交する方向から見た場合のビークル10の向き(回転角度)を指す。以降においても、特に断りがない限り、「位置」及び「姿勢」は、同様の意味を指す。自己位置検出部34は、任意の方法で位置及び姿勢を検出してよいが、例えば、自己位置検出部34の具体的構成例として、グローバル・ポジショニング・システム(GPS:Global Positioning System)等の測位システムを利用して位置を検出するための測位装置が挙げられる。また例えば、自己位置検出部34は、所定の起点に対する位置を検出する慣性航法装置であってもよい。また例えば、自己位置検出部34は、レーザ光により位置及び姿勢を検出するものであってもよい。この場合例えば、領域ARに反射体が設けられており、自己位置検出部34が反射体に向けてレーザ光を照射し、反射体から反射したレーザ光を検出することで、位置及び姿勢が検出できる。
(障害物検出部)
障害物検出部36は、障害物Oの位置及び姿勢を検出するセンサである。障害物検出部36は、障害物Oの位置及び姿勢を検出可能であれば任意のセンサであってよく、例えば、2D-LiDAR(Light Detection And Ranging)、3D-LiDAR、カメラなどであってよい。
(動力部)
動力部38は、ビークル10を移動させる動力として機能する。動力部38の具体的構成は、ビークル10の運用形態に応じる。一例として、ビークル10が地上を走行するビークルである場合、動力部38は、複数の車輪と、当該複数の車輪の一部又は全部を駆動する原動機を含む。ここに例示した動力部38の具体的構成はあくまで一例であってこれに限られるものでない。動力部38は、ビークル10を移動可能にする動力として機能すればよい。
(制御装置)
制御装置30は、ビークル10の動作を制御する装置である。制御装置30は、コンピュータであり、制御部40と記憶部42とを備える。記憶部42は、制御部40の演算内容やプログラムなどの各種情報を記憶するメモリであり、例えば、RAMと、ROMのような主記憶装置と、HDDなどの外部記憶装置とのうち、少なくとも1つ含む。記憶部42が記憶する制御部40用のプログラムは、制御装置30が読み取り可能な記録媒体に記憶されていてもよい。
図4は、第1実施形態に係る制御部の模式的なブロック図である。制御部40は、演算装置であり、例えばCPUなどの演算回路を含む。図4に示すように、制御部40は、目的位置情報取得部50と、自己位置情報取得部52と、障害物情報取得部54と、計算実行部56と、駆動制御部58とを含む。制御部40は、記憶部42からプログラム(ソフトウェア)を読み出して実行することで、目的位置情報取得部50と自己位置情報取得部52と障害物情報取得部54と計算実行部56と駆動制御部58とを実現して、それらの処理を実行する。なお、制御部40は、1つのCPUによってこれらの処理を実行してもよいし、複数のCPUを備えて、それらの複数のCPUで、これらの処理を実行してもよい。また、目的位置情報取得部50と自己位置情報取得部52と障害物情報取得部54と計算実行部56と駆動制御部58との少なくとも一部を、ハードウェア回路で実現してもよい。
(目的位置情報取得部)
目的位置情報取得部50は、ビークル10の目標とする移動先である目的位置Pの位置情報を取得する。目的位置情報取得部50は、通信部32を介して、管理システム12から、目的位置Pの位置情報を取得する。ただし、目的位置情報取得部50は、管理システム12から目的位置Pの位置情報を取得することに限られず、自身で目的位置Pを設定してもよい。
(自己位置情報取得部)
自己位置情報取得部52は、ビークル10自身の位置及び姿勢の情報を取得する。自己位置情報取得部52は、自己位置検出部34を制御して、ビークル10自身の位置情報(座標情報)及び姿勢情報(向きを示す情報)を取得する。以下、位置情報及び姿勢情報を合わせて、適宜、位置姿勢情報と記載する。自己位置情報取得部52は、所定時間毎に、逐次、ビークル10の位置姿勢情報を取得する。ただし、自己位置情報取得部52は、自身でビークル10の位置及び姿勢を検出することに限られず、例えば、管理システム12などの外部の装置がビークル10の位置及び姿勢を検出し、自己位置情報取得部52が、その検出結果をビークル10の位置姿勢情報として取得してもよい。
(障害物情報取得部)
障害物情報取得部54は、障害物Oの位置の情報を取得する。障害物情報取得部54は、障害物検出部36を制御して、障害物Oの位置情報を取得する。障害物情報取得部54は、所定時間毎に、逐次、障害物Oの位置情報を取得する。ただし、障害物情報取得部54は、自身で障害物Oの位置を検出することに限られず、例えば、管理システム12などの外部の装置が障害物Oの位置を検出し、障害物情報取得部54が、その検出結果を障害物Oの位置姿勢情報として取得してもよい。なお、障害物情報取得部54は、障害物Oの位置に加えて、障害物Oの姿勢も取得してよい。
(計算実行部)
計算実行部56は、最適化計算を実行して、最適化されたビークル10の移動経路Rを実現できるビークル10の駆動条件を算出する。駆動条件とは、ビークル10の動力部38を動作させるための入力値を指す。本実施形態では、計算実行部56は、最適化計算の実行のために、先読みステップ毎のビークル10の位置が障害物Oに干渉しない旨の制約条件を設定する。先読みステップとは、現在(障害物Oの位置やビークル10の位置及び姿勢が直近で検出されたタイミング)以降の、離散化した各時刻を意味する。そして、計算実行部56は、先読みステップ毎のビークル10の位置と目的位置Pとの偏差が小さくなるほど評価が高くなる評価関数と、制約条件とに基づき、最適化計算を行い、最適化計算で最適化されたビークル10の移動経路Rを実現できるビークルの駆動条件を、算出する。以下、計算実行部56による最適化計算を具体的に説明する。なお、以降では、X方向及びY方向の二次元座標平面上でのビークル10の運動を例として説明するが、三次元座標上での運動モデルに対しても適用可能である。
(先読みステップ毎のビークルの位置)
ここで、計算実行部56によって算出される最適化された移動経路Rは、先読みステップ毎の(現在以降の離散時刻毎の)ビークル10の位置及び姿勢の集合といえ、未来の経路であるといえる。ビークル10のX方向及びY方向での位置(座標)を[x,y]、ビークル10の姿勢をθ、先読みステップ(離散時刻)をkとすると、先読みステップkでのビークル10の位置及び姿勢は、すなわち先読みステップkでの移動経路Rは、次の式(1)で表される。なお、Tは転置を示す。なお、上述のように、本実施形態の説明は、二次元平面座標上での運動を例としたものであり、例えば三次元座標上での運動モデルとする場合には、以降の式などは三次元座標に合わせたものとなる。
Figure 0007257433000001
この場合、ビークル10の運動モデルは、次の式(2)のように表される。
Figure 0007257433000002
式(2)のΔtは、(k)から(k+1)への遷移に係る時間幅である。Δtは、移動経路Rの更新周期(移動経路Rを更新してから次に移動経路Rを更新するまでの時間幅)と同じであってもよいが、例えば、更新周期よりも短くてもよいし、更新周期よりも長くてもよい。Δtを更新周期より短くすることで、詳細な移動経路Rを生成でき、Δtを更新周期より長くすることで、計算負荷を低減できる。また、u(k)は、システムの入力であり、ビークル10の駆動条件を指す。本実施形態の例では、u(k)は、ビークル10の速度v(k)、ビークル10の操舵角Φ(k)を用いて、次の式(3)のように表される。
Figure 0007257433000003
二次元平面座標上での運動を想定した場合、システムの状態方程式であるfは、一例として、次の式(4)のように表される。なお、Lは、ホイールベースを指し、例えば前輪と後輪との間の距離である。
Figure 0007257433000004
(制約条件)
計算実行部56は、最適化計算に用いる制約条件を設定する。計算実行部56は、ビークル10の位置、ビークル10の大きさ、及び障害物Oの位置に基づき、先読みステップ毎のビークル10が障害物Oに干渉しない旨を、制約条件として設定する。すなわち、本実施形態での制約条件は、それぞれの先読みステップにおいて、その大きさのビークル10が障害物Oに干渉しない、というものである。なお、ビークル10の大きさとは、本実施形態の例では、ビークル10の幅及び長さ(X方向及びY方向における長さ)である。ビークル10の大きさは、例えば設計情報として記憶部42などに予め記憶されており、計算実行部56は、記憶部42からビークル10の大きさの情報を読み出す。ただし、計算実行部56は、ビークル10の大きさの情報を任意の方法で取得してよい。
図5は、制約条件を説明するための模式図である。制約条件の設定方法についてより具体的に説明する。図5に示すように、計算実行部56は、ビークル10の大きさに基づき、先読みステップでのビークル10の位置を含む領域であるビークル領域ARを設定する。計算実行部56は、先読みステップでのビークル10の位置を、ビークル10の大きさに対応する面積分広げた領域を、ビークル領域ARとして設定する。そして、計算実行部56は、障害物Oの位置が、先読みステップ毎のビークル領域ARの範囲外となることを、制約条件として設定する。すなわち、計算実行部56は、先読みステップ毎にビークル領域ARを設定し、各先読みステップにおいて障害物Oの位置がビークル領域ARの範囲外となることを、制約条件として設定する。なお、図5の例では、先読みステップでのビークル10の位置[x(k),y(k)]を中心とし、ビークル10のX方向の長さDxを長径としY方向の長さDyを短径とする楕円形の領域を、ビークル領域ARとして設定している。ただし、ビークル領域ARの設定方法はこれに限られず任意であり、例えばビークル領域ARを楕円形にしなくてもよい。
本実施形態では、計算実行部56は、制約条件を設定する際に、先読みステップ毎のビークル10の位置及び姿勢を、仮に設定する。そして、計算実行部56は、ビークル10の座標系における障害物Oの位置(座標)を、先読みステップ毎に算出する。すなわち、計算実行部56は、障害物情報取得部54によって取得された、方向X及び方向Yの座標系における障害物Oの位置(座標)を、先読みステップでのビークル10の位置を座標中心とした位置(座標)に変換する。例えば、計算実行部56は、次の式(5)を用いて、ビークル10の座標系における障害物Oの位置を算出する。
Figure 0007257433000005
なお、[x’ob,y’ob]が、障害物情報取得部54によって取得された方向X及び方向Yの座標系における障害物Oの位置であり、[xob(k),yob(k)]が、先読みステップkにおける、ビークル10の座標系における障害物Oの位置である。
そして、計算実行部56は、制約条件として、次の式(6)を設定する。式(6)は、各先読みステップにおいて、障害物Oの位置が、楕円形のビークル領域ARの範囲外となることを示した式である。ただし、式(6)は、ビークル領域ARを楕円形とした場合の制約条件の式の一例であり、実際の制約条件の式は、ビーク領域ARの形状や大きさに応じて設定される。
Figure 0007257433000006
なお、このように各先読みステップで制約条件を解くことができるのは、運動モデルをもとに、先読みステップでのビークル10の位置及び姿勢を予測計算して仮に設定しているためである。
(最適化計算)
計算実行部56は、上記のように設定した制約条件と、先読みステップ毎のビークル10の位置と目的位置Pとの偏差が小さくなるほど評価が高くなる評価関数とに基づき、最適化計算を実行する。すなわち、計算実行部56は、モデル予測制御の考え方を用い、制約条件を満たす移動経路を予測(先読)し、各先読みステップでのビークル10と目的位置Pの関係において、距離が短いほど、評価が高くなる評価関数を用いて、ビークル10の各予測ステップの位置に関するビークル10と目的位置の偏差を評価して、移動経路Rを特定する。これにより、計算実行部56は、最適な移動経路Rを、すなわち先読みステップ毎の最適なビークル10の位置及び姿勢を、特定できる。言い換えれば、計算実行部56は、先読みステップ毎のビークル10の位置が障害物Oに干渉しない旨の制約条件を満たし、かつ、先読みステップ毎のビークル10の位置と目的位置Pとの偏差が最小となるような、先読みステップ毎の最適なビークル10の位置及び姿勢(すなわち最適な移動経路R)を、特定する。
本実施形態では、移動経路Rを最適化する問題V(u,p,k)が、次の式(7)で表されると想定する。
Figure 0007257433000007
ここで、J(u,p,k)は、最適化の目的を表す評価関数であり、経路計画であれば目的位置への接近や到達が含まれるような関数に設定される。本実施形態の例では、計算実行部56は、評価関数J(u,p,k)を、次の式(8)のように設定する。
Figure 0007257433000008
ここで、p=[x(k),y(k),θ(k)]は、すなわち式(8)でのx、y、θrは、目的となる位置及び姿勢である。また、A、A、Aは、重み係数であり任意に設定されてよい。この評価関数の元では、ビークル10の各先読みステップkにおける位置及び姿勢(p(k))と目的の位置及び姿勢(p)との偏差が小さくなるように最適化される。すなわち、ビークル10が目的の位置及び姿勢に最短距離で近づくような最適化結果となる。
以上のような最適化計算を実行することで、計算実行部56は、最適化計算のアウトプット(最適解)として、先読みステップ毎の駆動条件(システムの入力)であるu(k)の値を得る。計算実行部56が得る先読みステップ毎の駆動条件は、最適化された移動経路Rを実現するための駆動条件であるといえる。計算実行部56は、最適化計算で得られた先読みステップ毎の駆動条件に基づき、最適化された移動経路Rを算出してよい。例えば、計算実行部56は、最適化計算で得られたu(k)を式(2)に代入して、最適化された移動経路Rを算出してもよい。
なお、最適化問題を解く手法としては、例として逐次二次計画法のような非線形最適化手法を用いてよい。ここで用いる最適化手法は、制約条件を課した最適化問題を解くことが可能である必要がある。なお、例えば式(2)や制約条件が非線形関数になる場合には、非線形最適化を用いることが好ましく、線形最適化手法は適さない可能性がある。
(駆動制御部)
駆動制御部58は、計算実行部56が取得した駆動条件に基づき、ビークル10を制御する。駆動制御部58は、計算実行部56が取得した駆動条件で、動力部38を駆動する。これにより、駆動制御部58は、ビークル10を、最適化された移動経路Rに沿って移動させる。
なお、以上の説明では、計算実行部56は、最適化計算を行うことで、最適化された移動経路Rを実現するための、先読みステップ毎の駆動条件をアウトプットとして算出していたが、それに限られない。例えば、計算実行部56は、最適化計算を行うことで、最適化された移動経路Rを算出してもよい。この場合、計算実行部56は、最適化された移動経路Rに基づき、先読みステップ毎の駆動条件を算出してよい。また、制御装置30の計算実行部56が移動経路Rを算出し、別の装置やプログラムが、制御装置30から移動経路Rの情報を取得して、駆動条件を算出してもよい。すなわち、制御装置30は、移動経路Rを設定する経路生成装置であると言い換えることもできる。
(処理フロー)
次に、本実施形態の処理フローを説明する。図6は、本実施形態に係る制御装置の処理フローを説明するフローチャートである。移動経路Rを設定する場合、制御装置30は、目的位置情報取得部50により、目的位置Pの位置情報を取得する。また、制御装置30は、自己位置情報取得部52及び障害物情報取得部54により、ビークル10の位置姿勢情報と、障害物Oの位置情報とを取得する(ステップS10)。そして、制御装置30は、計算実行部56により、ビークル10の位置姿勢情報及び目的位置Pの位置情報に基づき、先読みステップ毎の、ビークル10の位置及び姿勢を仮に設定する(ステップS12)。そして、計算実行部56は、先読みステップ毎のビークル10の位置及び姿勢と、ビークル10の大きさと、障害物Oの位置情報とに基づき、障害物Oとビークル10とが干渉しない旨の制約条件を設定し(ステップS16)、設定した制約条件と、評価関数とに基づき、最適化計算を実行する(ステップS18)。最適解が得られなかった場合には(ステップS20;No)、ステップS12に戻り、ビークル10の位置及び姿勢を設定し直し、最適解が得られるまで計算を繰り返す。最適化計算の結果、最適解が得られた場合には(ステップS20;Yes)、計算実行部56は、最適解として、最適な移動経路Rを実現できる駆動条件を取得する。駆動制御部58は、取得された駆動条件に基づき、ビークル10を制御して(ステップS24)、移動経路Rに沿ってビークル10を移動させる。そして、移動経路Rを更新する場合には(ステップS26;Yes)、すなわち例えば更新周期に達したら、ステップS10に戻り、ビークル10及び障害物Oの最新位置を取得して、それに基づき以降の処理を繰り返して移動経路Rを更新する。移動経路Rを更新しない場合であって(ステップS26;No)、処理を終了しない場合には(ステップS28;No)、ステップS24に戻り、今の移動経路Rでの移動を継続させる。処理を終了する場合には(ステップS28;Yes)、本処理を終了する。
(効果)
このように、本実施形態においては、最適化計算を用いて移動経路Rを設定するため、障害物Oを回避するための制約条件を、式などを用いて適切に設定することが可能となり、目的位置に向かいつつ障害物Oを回避する移動経路Rを、適切に設定できる。また、本実施形態においては、ビークル10の大きさも考慮して、制約条件を設定しており、例えば障害物Oがビークル領域ARの範囲外となることを、制約条件としている。これにより、障害物Oを回避可能な経路を適切に設定することができる。さらに言えば、ビークル10の予測した位置にビークル10の大きさも反映できるため、障害物Oと重なることを禁止する占有領域(ここではビークル領域AR)を過大に設定する必要がなく、迂回経路を小さくすることもできる。また、目的との偏差を小さくする評価関数を用いることで、障害物Oを回避しつつ、最短の経路を生成することができる。なお、最適化計算に制約条件を課す方法は、上記の説明での方法に限られず、例えば、目的関数V(u,p,k)や評価関数J(u,p,k)に制約条件を組み込んでよい。また、以上の説明では、障害物Oが単数の場合を例にしたが、障害物Oを複数としてもよい。
また、本実施形態においては、最適化計算を用いて移動経路Rを設定するため、実際のビークル10のキネマティクスを考慮することで、実現可能な移動経路Rを生成できる。例えば、非ホロノミック系で真横に移動できない運動拘束をもつ車両の場合、その運動拘束を考慮した移動経路Rを生成できる。このような運動拘束についての条件は、例えば式(2)に反映できる。
なお、本実施形態においては、ビークル10が制御装置30を有し、ビークル10が有する制御装置30が、最適化計算などの移動経路Rの設定処理を行っていた。ただし、最適化計算などの移動経路Rの設定処理は、ビークル10が行うことに限られず、管理システム12などの外部の装置が行ってもよい。この場合、ビークル10は、最適化計算で得られた駆動条件や移動経路Rを外部の装置から取得して、取得した駆動条件や移動経路Rを用いて、ビークル10(動力部38)を制御してもよい。言い換えれば、制御装置30は、ビークル10が有していてもよいし、ビークル10以外の装置が有していてもよい。さらに言えば、目的位置情報取得部50と自己位置情報取得部52と障害物情報取得部54と計算実行部56との機能は、ビークル10が有していてもよいし、他の装置が有していてもよい。
(制約条件の他の例)
以下、最適化計算に用いる制約条件の他の例について説明する。以降の例でも、駆動条件をアウトプットとして、移動経路Rを算出してもよいし、最適化された移動経路Rを実現可能な駆動条件を算出してもよい。
(障害物の移動量の考慮)
例えば、計算実行部56は、障害物Oの移動量Δdにも基づき、先読みステップ毎のビークル10の位置が障害物Oに干渉しない旨の制約条件を設定してよい。ここでの移動量Δdは、障害物Pが移動すると予測される距離を指す。この場合、計算実行部56は、現在(障害物Oの位置を取得したタイミング)から先読みステップのタイミングまでの間に障害物Oが移動する移動量Δdの情報を取得し、その移動量Δdだけ障害物Oが移動した場合にも、ビークル10の位置が障害物Oに干渉しないことを、制約条件として設定する。例えば、計算実行部56は、次の式(9)を用いて、移動量Δdを算出してよい。
Figure 0007257433000009
ここで、vobは、障害物Oの速度である。vobは、任意の方法で取得されてよい。例えば、vobは、予め設定されていてもよいし、計算実行部56によって検出されてもよい。計算実行部56は、vobを検出する場合は、速度計で検出した値を取得してもよいし、例えば自己位置情報取得部52が取得したタイミング毎のビークル10の位置に基づき算出してもよい。
図7は、制約条件の他の例を説明するための模式図である。本例においては、計算実行部56は、先読みステップでのビークル10の位置を、ビークル10の大きさと移動量Δdとに対応する面積分広げた領域を、ビークル領域ARとして設定する。そして、計算実行部56は、障害物Oの位置が、先読みステップ毎のビークル領域ARの範囲外となることを、制約条件として設定する。これにより、障害物Oが移動したとしても、ビークル10に干渉することを抑制できる。
(障害物の大きさの考慮)
例えば、計算実行部56は、障害物Oの大きさにも基づき、先読みステップ毎のビークル10の位置が障害物Oに干渉しない旨の制約条件を設定してよい。この場合、計算実行部56は、障害物Oの大きさの情報を取得し、その大きさの障害物Oに対してビークル10が干渉しないことを、制約条件として設定する。なお、障害物Oの大きさとは、本実施形態の例では、障害物Oの幅及び長さ(X方向及びY方向における長さ)である。障害物Oは、障害物Oの大きさを任意の方法で取得してよく、例えば障害物検出部36の検出結果から障害物Oの大きさを算出してもよいし、予め設定された障害物Oの大きさの情報を取得してもよい。
本例においては、計算実行部56は、先読みステップでのビークル10の位置を、ビークル10の大きさと障害物Oの大きさとに対応する面積分広げた領域を、ビークル領域ARとして設定する。そして、計算実行部56は、障害物Oの位置が、先読みステップ毎のビークル領域ARの範囲外となることを、制約条件として設定する。これにより、障害物Oがビークル10に干渉することを、より好適に抑制できる。なお、計算実行部56は、障害物Oの移動量Δdと、障害物Oの大きさとの両方を制約条件に組み込んでよい。この場合例えば、計算実行部56は、先読みステップでのビークル10の位置を、ビークル10の大きさと障害物Oの大きさと障害物Oの移動量Δdとに対応する面積分広げた領域を、ビークル領域ARとして設定する。
(駆動条件の考慮)
例えば、計算実行部56は、駆動条件が所定範囲となることも、制約条件として設定してよい。すなわち、計算実行部56は、移動速度や操舵角度などの、ビークル10の性能や運用条件によって決まるシステムの入力の上下限値を設定する。これにより、ビークル10が実現可能な移動経路Rを、適切に生成できる。例えば、計算実行部56は、駆動条件を所定範囲とする制約条件を、次の式(10)のように設定してよい。
Figure 0007257433000010
なお、uminは駆動条件の下限値であり、umaxは駆動条件の上限値であり、ビークル10の性能や運用条件などに基づき、それぞれ任意に設定されてよい。
また、計算実行部56は、駆動条件の単位時間当たりの変化量が所定範囲になることも、制約条件として設定してよい。すなわち、計算実行部56は、移動加速度や操舵角加速度などの、ビークル10の性能や運用条件によって決まるシステムの入力の時間変化レートの上下限値を設定して、実現可能な移動経路Rを生成する。例えば、計算実行部56は、駆動条件を所定範囲とする制約条件を、次の式(11)のように設定してよい。
Figure 0007257433000011
なお、aminは駆動条件の単位時間当たりの変化量の下限値であり、amaxは駆動条件の単位時間当たりの変化量の上限値であり、ビークル10の性能や運用条件などに基づき、それぞれ任意に設定されてよい。また、例えば式(11)の{u(k+1)-u(k)/Δt}の項を、二乗した値としたり、絶対値としたりしてもよい。
(ビークルの位置の考慮)
例えば、計算実行部56は、先読みステップでのビークル10の位置及び姿勢が所定範囲となることも、制約条件として設定してよい。すなわち、計算実行部56は、構造物など予め位置が既知の構造物がある領域など、ビークル10が進入できない領域を予め把握しておき、ビークル10が進入できる範囲内に、ビークル10が位置するように、制約条件を設定する。これにより、ビークル10が実現可能な移動経路Rを、適切に生成できる。例えば、計算実行部56は、ビークル10の位置及び姿勢を所定範囲とする制約条件を、次の式(12)のように設定してよい。
Figure 0007257433000012
なお、pminはビークル10の位置及び姿勢の下限値であり、pmaxはビークル10の位置及び姿勢の上限値であり、構造物の位置などに基づき、それぞれ任意に設定されてよい。なお、ここではビークル10の位置及び姿勢が所定範囲となることを、制約条件として設定していたが、ビークル10の位置及び姿勢の両方に制約条件をかけることに限られず、ビークル10の位置と姿勢との少なくとも一方が所定範囲となることを、制約条件としてよい。
(第2実施形態)
次に、第2実施形態について説明する。第1実施形態においては、駆動条件をビークル10の速度及び操舵角としていたが、第2実施形態においては、駆動条件をビークル10の速度及び旋回曲率とする点で、第1実施形態とは異なる。第2実施形態において、第1実施形態と構成が共通する箇所は、説明を省略する。第2実施形態でも、駆動条件をアウトプットとして、移動経路Rを算出してもよいし、最適化された移動経路Rを実現可能な駆動条件を算出してもよい。
第2実施形態においては、計算実行部56は、駆動条件であるシステムの入力を、ビークル10の速度とビークル10の旋回曲率とする。旋回曲率とは、現在の操舵角でビークル10が移動したと仮定した場合の、ビークル10が描く円の半径(曲率半径)の逆数を指す。例えば、先読みステップkにおける旋回曲率c(k)は、次の式(13)のように定義される。
Figure 0007257433000013
第1実施形態では、ビークルの速度と操舵角とを駆動条件としたため、ビークル10の運動モデルは、式(2)のように表されていたが、第2実施形態のように駆動条件をビークル10の速度と旋回曲率とした場合、ビークル10の運動モデルは、例えば次の式(14)のように表される。
Figure 0007257433000014
第2実施形態においても、計算実行部56は、駆動条件をビークル10の速度と旋回曲率に変更した点以外は、第1実施形態と同様の方法で最適化計算を実施し、駆動条件の最適解を得る。ただし、第2実施形態における駆動条件の最適解は、ビークル10の速度と旋回曲率として、取得される。計算実行部56は、最適解として得られた旋回曲率を、例えば式(13)に代入して、操舵角を算出して、その操舵角を駆動条件として、ビークル10を制御してもよい。
なお、第2実施形態のように旋回曲率を駆動条件とした場合でも、駆動条件に制約条件を設けることが可能である。この場合例えば、旋回曲率そのものに制限値を設定してもよいし、次の式(15)のように旋回曲率を操舵角に変換して制限値を設定してもよい。なお、cmaxは、旋回曲率の制限値であり、Φmaxは、操舵角の制限値である。
Figure 0007257433000015
第2実施形態のように、旋回曲率を駆動条件とすることで、最適化計算において三角関数のtanΦを排除できるため、計算負荷を低減することが可能となる。
(本開示の効果)
以上説明したように、本開示に係るビークル10の経路生成方法は、ビークル10の位置の情報を取得するステップと、ビークル10の目的位置Pの情報を取得するステップと、障害物Oの位置の情報を取得するステップと、ビークル10の位置、ビークル10の大きさ、及び障害物Oの位置に基づき、先読みステップ毎のビークル10が障害物Oに干渉しない旨の制約条件を設定するステップと、先読みステップ毎のビークル10の位置と目的位置Pとの偏差が小さくなるほど評価が高くなる評価関数と、制約条件とに基づき最適化計算を行い、ビークル10の移動経路Rを算出するステップと、を含む。本方法によると、ビークル10の大きさも考慮して制約条件を設定し、最適化計算を用いて移動経路Rを設定することで、障害物Oを回避可能な経路を適切に設定できる。さらに言えば、ビークル10の予測した位置にビークル10の大きさも反映できるため、障害物Oと重なることを禁止する占有領域(ここではビークル領域AR)を過大に設定する必要がなく、迂回経路を小さくすることもできる。
制約条件を設定するステップにおいては、ビークル10の大きさに基づき、先読みステップでのビークル10の位置を含む領域であるビークル領域ARを設定し、障害物Oの位置が、先読みステップ毎のビークル領域ARの範囲外となることを、制約条件として設定する。本方法によると、このようにビークル領域ARを制約条件に用いることで、障害物Oを回避可能な経路を適切に設定できる。
制約条件を設定するステップにおいては、障害物Oの移動量にも基づき、前記ビークル領域を設定する。このように障害物Oの移動量もビークル領域ARに含めることで、障害物Oを回避可能な経路を適切に設定できる。
制約条件を設定するステップにおいては、障害物の大きさにも基づき、前記ビークル領域を設定する。このように障害物Oの大きさもビークル領域ARに含めることで、障害物Oを回避可能な経路を適切に設定できる。
制約条件を設定するステップにおいては、ビークル10の駆動条件が所定範囲となることも、制約条件として設定する。このように駆動条件にも制約条件を課すことで、ビークル10が実現可能な移動経路Rを、適切に生成できる。
制約条件を設定するステップにおいては、先読みステップでのビークル10の位置が所定範囲となることも、制約条件として設定する。このようにビークル10の位置にも制約条件を課すことで、ビークル10が実現可能な移動経路Rを、適切に生成できる。
本経路生成方法は、ビークル10の移動経路Rに基づきビークル10の駆動条件を算出するステップをさらに含む。これにより、最適化された移動経路Rを実現可能なビークル10の駆動条件が算出されて、ビークル10を適切に制御できる。
本経路生成方法は、ビークル10の駆動条件を、ビークル10の速度及び操舵角としてよい。ビークル10の速度及び操舵角を駆動条件として最適化計算を行うことで、アウトプットとしても速度及び操舵角を得ることができ、ビークル10を適切に制御できる。
本経路生成方法は、ビークル10の駆動条件を、ビークル10の速度及び旋回曲率としてよい。ビークル10の旋回曲率を駆動条件として最適化計算を行うことで、最適化計算の計算負荷を低減して、処理時間を短縮できる。
本経路生成方法は、設定されたビークル10の駆動条件に基づきビークル10を制御するステップを含む。本経路生成方法によると、ビークル10に適切に障害物Oを回避させることができる。
本開示の制御装置30(経路生成装置)は、ビークル10の位置の情報を取得する自己位置情報取得部52と、ビークル10の目的位置Pの情報を取得する目的位置情報取得部50と、障害物Oの位置の情報を取得する障害物情報取得部54と、計算実行部56とを含む。計算実行部56は、ビークル10の位置、ビークル10の大きさ、及び障害物Oの位置に基づき、先読みステップ毎のビークル10が障害物Oに干渉しない旨の制約条件を設定する。そして、計算実行部56は、先読みステップ毎のビークル10の位置と目的位置Pとの偏差が小さくなるほど評価が高くなる評価関数と、制約条件とに基づき最適化計算を行い、ビークル10の移動経路Rを算出する。この制御装置30によると、障害物Oを回避可能な経路を適切に設定できる。
本開示のビークル10は、制御装置30を含む。このビークル10は、障害物Oを回避できる。
本開示のプログラムは、ビークル10の位置の情報を取得するステップと、ビークル10の目的位置Pの情報を取得するステップと、障害物Oの位置の情報を取得するステップと、ビークル10の位置、ビークル10の大きさ、及び障害物Oの位置に基づき、先読みステップ毎のビークル10が障害物Oに干渉しない旨の制約条件を設定するステップと、先読みステップ毎のビークル10の位置と目的位置Pとの偏差が小さくなるほど評価が高くなる評価関数と、制約条件とに基づき最適化計算を行い、ビークル10の移動経路Rを算出するステップと、をコンピュータに実行させる。本プログラムによると、障害物Oを回避可能な経路を適切に設定できる。
以上、本発明の実施形態を説明したが、この実施形態の内容により実施形態が限定されるものではない。また、前述した構成要素には、当業者が容易に想定できるもの、実質的に同一のもの、いわゆる均等の範囲のものが含まれる。さらに、前述した構成要素は適宜組み合わせることが可能である。さらに、前述した実施形態の要旨を逸脱しない範囲で構成要素の種々の省略、置換又は変更を行うことができる。
10 ビークル
30 制御装置(経路生成装置)
50 目的位置情報取得部
52 自己位置情報取得部
54 障害物情報取得部
56 計算実行部
58 駆動制御部
O 障害物
P 目的位置

Claims (13)

  1. ビークルの位置の情報を取得するステップと、
    前記ビークルの目的位置の情報を取得するステップと、
    障害物の位置の情報を取得するステップと、
    前記ビークルの位置、前記ビークルの大きさ、及び前記障害物の位置に基づき、先読みステップ毎の前記ビークルが前記障害物に干渉しない旨の制約条件を設定するステップと、
    前記先読みステップ毎の前記ビークルの位置と前記目的位置との偏差が小さくなるほど評価が高くなる評価関数と、前記制約条件とに基づき、前記ビークルが前記制約条件を満たしつつ前記目的位置に最短距離で近づくような最適化計算を行い、前記ビークルの移動経路を算出するステップと、
    を含み、
    前記制約条件を設定するステップでは、前記障害物の位置を、前記先読みステップ毎の前記ビークルの座標系における位置に変換して、先読みステップ毎の前記ビークルが前記障害物に干渉しない旨の制約条件を設定する、
    ビークルの経路生成方法。
  2. 前記制約条件を設定するステップにおいては、前記ビークルの大きさに基づき、前記先読みステップでの前記ビークルの位置を含む領域であるビークル領域を設定し、前記障害物の位置が、前記先読みステップ毎の前記ビークル領域の範囲外となることを、前記制約条件として設定する、請求項1に記載のビークルの経路生成方法。
  3. 前記制約条件を設定するステップにおいては、前記障害物の移動量にも基づき、前記ビークル領域を設定する、請求項2に記載のビークルの経路生成方法。
  4. 前記制約条件を設定するステップにおいては、前記障害物の大きさにも基づき、前記ビークル領域を設定する、請求項2又は請求項3に記載のビークルの経路生成方法。
  5. 前記制約条件を設定するステップにおいては、前記ビークルの駆動条件が所定範囲となることも、前記制約条件として設定する、請求項1から請求項4のいずれか1項に記載のビークルの経路生成方法。
  6. 前記制約条件を設定するステップにおいては、前記先読みステップでの前記ビークルの位置が所定範囲となることも、前記制約条件として設定する、請求項1から請求項5のいずれか1項に記載のビークルの経路生成方法。
  7. 前記ビークルの移動経路に基づき、前記ビークルの駆動条件を算出するステップを更に含む、請求項1から請求項6のいずれか1項に記載のビークルの経路生成方法。
  8. 前記ビークルの駆動条件を、前記ビークルの速度及び操舵角とする、請求項7に記載のビークルの経路生成方法。
  9. 前記ビークルの駆動条件を、前記ビークルの速度及び旋回曲率とする、請求項7に記載のビークルの経路生成方法。
  10. 設定された前記ビークルの駆動条件に基づき前記ビークルを制御するステップを含む、請求項7から請求項9のいずれか1項に記載のビークルの経路生成方法。
  11. ビークルの位置の情報を取得する自己位置情報取得部と、
    前記ビークルの目的位置の情報を取得する目的位置情報取得部と、
    障害物の位置の情報を取得する障害物情報取得部と、
    計算実行部と、
    を含み、
    前記計算実行部は、
    前記ビークルの位置、前記ビークルの大きさ、及び前記障害物の位置に基づき、先読みステップ毎の前記ビークルが前記障害物に干渉しない旨の制約条件を設定し、
    前記先読みステップ毎の前記ビークルの位置と前記目的位置との偏差が小さくなるほど評価が高くなる評価関数と、前記制約条件とに基づき、前記ビークルが前記制約条件を満たしつつ前記目的位置に最短距離で近づくような最適化計算を行い、前記ビークルの移動経路を算出し、
    前記制約条件を設定する際には、前記障害物の位置を、前記先読みステップ毎の前記ビークルの座標系における位置に変換して、先読みステップ毎の前記ビークルが前記障害物に干渉しない旨の制約条件を設定する、
    ビークルの経路生成装置。
  12. 請求項11に記載のビークルの経路生成装置を含む、ビークル。
  13. ビークルの位置の情報を取得するステップと、
    前記ビークルの目的位置の情報を取得するステップと、
    障害物の位置の情報を取得するステップと、
    前記ビークルの位置、前記ビークルの大きさ、及び前記障害物の位置に基づき、先読みステップ毎の前記ビークルが前記障害物に干渉しない旨の制約条件を設定するステップと、
    前記先読みステップ毎の前記ビークルの位置と前記目的位置との偏差が小さくなるほど評価が高くなる評価関数と、前記制約条件とに基づき、前記ビークルが前記制約条件を満たしつつ前記目的位置に最短距離で近づくような最適化計算を行い、前記ビークルの移動経路を算出するステップと、
    を、コンピュータに実行させ
    前記制約条件を設定するステップでは、前記障害物の位置を、前記先読みステップ毎の前記ビークルの座標系における位置に変換して、先読みステップ毎の前記ビークルが前記障害物に干渉しない旨の制約条件を設定する、
    プログラム。
JP2021034388A 2021-03-04 2021-03-04 ビークルの経路生成方法、ビークルの経路生成装置、ビークル及びプログラム Active JP7257433B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2021034388A JP7257433B2 (ja) 2021-03-04 2021-03-04 ビークルの経路生成方法、ビークルの経路生成装置、ビークル及びプログラム
DE102022201594.0A DE102022201594A1 (de) 2021-03-04 2022-02-16 Fahrzeugpfadgenerierungsverfahren, Fahrzeugpfadgenerierungsvorrichtung, Fahrzeug und Programm
US17/679,378 US20220281444A1 (en) 2021-03-04 2022-02-24 Vehicle path generation method, vehicle path generation device, vehicle, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021034388A JP7257433B2 (ja) 2021-03-04 2021-03-04 ビークルの経路生成方法、ビークルの経路生成装置、ビークル及びプログラム

Publications (2)

Publication Number Publication Date
JP2022134905A JP2022134905A (ja) 2022-09-15
JP7257433B2 true JP7257433B2 (ja) 2023-04-13

Family

ID=82898423

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021034388A Active JP7257433B2 (ja) 2021-03-04 2021-03-04 ビークルの経路生成方法、ビークルの経路生成装置、ビークル及びプログラム

Country Status (3)

Country Link
US (1) US20220281444A1 (ja)
JP (1) JP7257433B2 (ja)
DE (1) DE102022201594A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230192075A1 (en) * 2021-12-22 2023-06-22 Joseph Burtch Automated driving obstacle avoidance along a path

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017228155A (ja) 2016-06-23 2017-12-28 株式会社クボタ 走行支援システム及び作業車
JP2020060924A (ja) 2018-10-09 2020-04-16 三菱重工業株式会社 複数のビークルの移動制御方法、移動制御装置、移動制御システム、プログラム及び記録媒体

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5112666B2 (ja) * 2006-09-11 2013-01-09 株式会社日立製作所 移動装置
JP4576445B2 (ja) * 2007-04-12 2010-11-10 パナソニック株式会社 自律移動型装置および自律移動型装置用プログラム
JP5332034B2 (ja) * 2008-09-22 2013-11-06 株式会社小松製作所 無人車両の走行経路生成方法
KR101441187B1 (ko) * 2012-07-19 2014-09-18 고려대학교 산학협력단 자율 보행 로봇 경로 계획 방법
JP2020004095A (ja) 2018-06-28 2020-01-09 株式会社Soken 自律移動体制御装置及び自律移動体
JP7192738B2 (ja) * 2019-10-10 2022-12-20 株式会社デンソー 軌道生成装置、軌道生成方法及び軌道生成プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017228155A (ja) 2016-06-23 2017-12-28 株式会社クボタ 走行支援システム及び作業車
JP2020060924A (ja) 2018-10-09 2020-04-16 三菱重工業株式会社 複数のビークルの移動制御方法、移動制御装置、移動制御システム、プログラム及び記録媒体

Also Published As

Publication number Publication date
US20220281444A1 (en) 2022-09-08
DE102022201594A1 (de) 2022-09-08
JP2022134905A (ja) 2022-09-15

Similar Documents

Publication Publication Date Title
US11091158B2 (en) System and method for controlling motion of vehicle with variable speed
US10994729B2 (en) System and method for controlling lateral motion of vehicle
JP6494872B2 (ja) 車両の運動を制御する方法、及び車両の制御システム
US9995589B2 (en) Path plan generating apparatus for mobile body
US10012984B2 (en) System and method for controlling autonomous vehicles
JP6610915B2 (ja) 車両を制御するコントローラー及び方法並びに非一時的コンピューター可読メモリ
JP5402057B2 (ja) 移動ロボット制御システム、経路探索方法、経路探索プログラム
US8515612B2 (en) Route planning method, route planning device and autonomous mobile device
JP5112666B2 (ja) 移動装置
JP2019128962A (ja) 自動運転車のための経路及び速度の最適化フォールバックメカニズム[path and speed optimization fallback mechanism for autonomous vehicles]
JP5071817B2 (ja) 車両制御装置、車両、及び車両制御プログラム
JP2019202765A (ja) 自動運転車両のためのpid埋め込みlqr
US20090093907A1 (en) Robot System
JP2021077090A (ja) 複数のビークルの移動制御方法、移動制御装置、移動制御システム、プログラム及び記録媒体
JP2019152575A (ja) 物体追跡装置、物体追跡方法及び物体追跡用コンピュータプログラム
US20200233431A1 (en) Mobile body, location estimation device, and computer program
JP7257433B2 (ja) ビークルの経路生成方法、ビークルの経路生成装置、ビークル及びプログラム
CN115309163A (zh) 基于改进方向评价函数dwa算法的局部路径规划方法
US20220105632A1 (en) Control device, control method, and recording medium
WO2018179960A1 (ja) 移動体および自己位置推定装置
CN113844460A (zh) 车辆控制方法、装置及车辆
CN112947487B (zh) 一种自动引导车辆及其曲线路径跟踪方法、控制装置
JP7256812B2 (ja) 自動運転車両の動的コスト関数の実現方法
CN117916682A (zh) 使用时空凸形走廊的运动规划
Lin et al. Indoor robot navigation based on DWA*: Velocity space approach with region analysis

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220803

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20220803

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221101

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20221221

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230221

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230307

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230403

R150 Certificate of patent or registration of utility model

Ref document number: 7257433

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150