(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-06-22
(45)【発行日】2023-06-30
(54)【発明の名称】自律走行システムのテスト方法、装置、電子機器、プログラム及びコンピュータ読み取り可能な記録媒体
(51)【国際特許分類】
B60W 50/04 20060101AFI20230623BHJP
B60W 60/00 20200101ALI20230623BHJP
G06F 11/36 20060101ALI20230623BHJP
【FI】
B60W50/04
B60W60/00
G06F11/36 184
(21)【出願番号】P 2021000182
(22)【出願日】2021-01-04
【審査請求日】2021-01-04
(31)【優先権主張番号】202010002080.X
(32)【優先日】2020-01-02
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】321009845
【氏名又は名称】アポロ インテリジェント ドライビング テクノロジー(ペキン)カンパニー リミテッド
(74)【代理人】
【識別番号】100079108
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【氏名又は名称】内藤 和彦
(74)【代理人】
【識別番号】100108213
【氏名又は名称】阿部 豊隆
(72)【発明者】
【氏名】リー,チンユ
【審査官】竹村 秀康
(56)【参考文献】
【文献】特開2019-202778(JP,A)
【文献】特開2019-185783(JP,A)
【文献】特開2019-043157(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 11/36
B60W 10/00-10/30
B60W 30/00-60/00
G08G 1/00-99/00
(57)【特許請求の範囲】
【請求項1】
コンピュータにより実行される自律走行システムのテスト方法であって、
テスト待ちシナリオのシナリオ説明情報を取得するステップと、
前記シナリオ説明情報について分析し、前記テスト待ちシナリオに対応するシナリオリスク、シナリオ確率及びシナリオ複雑度を決定するステップと、
前記シナリオリスク、前記シナリオ確率及び前記シナリオ複雑度に基づいて、前記テスト待ちシナリオのシナリオ重みを取得するステップと、
自律走行システムによるテスト待ちシナリオのテストに使用される、前記シナリオ重みに対応するテストサイクルを決定するステップと、を含む自律走行システムのテスト方法。
【請求項2】
前記シナリオ複雑度は、テスト待ちシナリオに対応する環境複雑度と任務複雑度とを含む請求項1に記載の自律走行システムのテスト方法。
【請求項3】
前記シナリオリスク、前記シナリオ確率及び前記シナリオ複雑度に基づいて、前記テスト待ちシナリオのシナリオ重みを取得するステップは、
シナリオリスクに基づいてリスクレベルを決定し、シナリオ確率に基づいて確率レベルを決定し、シナリオ複雑度に基づいて複雑度レベルを決定するステップと、
前記リスクレベル、前記確率レベル及び前記複雑度レベルに対応する重み値を加算して、加算結果に基づいて前記テスト待ちシナリオのシナリオ重みを取得するステップと、を含む請求項1に記載の自律走行システムのテスト方法。
【請求項4】
前記シナリオ複雑度に基づいて複雑度レベルを決定するステップは、
基準シナリオに対応する基準複雑度を取得するステップと、
シナリオ複雑度と基準複雑度を比較して変化属性を決定し、各変化属性に対応するレベルアップ値を取得するステップと、
取得したレベルアップ値と初期レベルとの間の加算結果に基づいて、複雑度レベルを決定するステップと、を含む請求項3に記載の自律走行システムのテスト方法。
【請求項5】
自律走行システムによる各テスト待ちシナリオのテストを行うときに現れた問題を取得するステップと、
各テスト待ちシナリオに対応するシナリオ重みに基づいて、自律走行システムに現れた問題の重要性を決定するステップと、をさらに含む請求項1に記載の自律走行システムのテスト方法。
【請求項6】
自律走行システムが各テスト待ちシナリオをテストして得られた走行評点を取得するステップと、
各テスト待ちシナリオに対応するシナリオ重みに基づいて、各走行評点について加重平均して、計算結果を自律走行システムの最終評点とするステップと、をさらに含む請求項1に記載の自律走行システムのテスト方法。
【請求項7】
テスト待ちシナリオのシナリオ説明情報を取得する取得ユニットと、
前記シナリオ説明情報について分析し、前記テスト待ちシナリオに対応するシナリオリスク、シナリオ確率及びシナリオ複雑度を決定する決定ユニットと、
前記シナリオリスク、前記シナリオ確率及び前記シナリオ複雑度に基づいて、前記テスト待ちシナリオのシナリオ重みを取得するプロセッシング・ユニットと、
自律走行システムによるテスト待ちシナリオのテストに使用される、前記シナリオ重みに対応するテストサイクルを決定するテストユニットと、を備える自律走行システムのテスト装置。
【請求項8】
前記決定ユニットにより決定されたシナリオ複雑度は、テスト待ちシナリオに対応する環境複雑度と任務複雑度とを含む請求項7に記載の自律走行システムのテスト装置。
【請求項9】
前記プロセッシング・ユニットにおいて、前記シナリオリスク、前記シナリオ確率及び前記シナリオ複雑度に基づいて、前記テスト待ちシナリオのシナリオ重みを取得するとき、
シナリオリスクに基づいてリスクレベルを決定し、シナリオ確率に基づいて確率レベルを決定し、シナリオ複雑度に基づいて複雑度レベルを決定し、
前記リスクレベル、前記確率レベル及び前記複雑度レベルに対応する重み値を加算して、加算結果に基づいて前記テスト待ちシナリオのシナリオ重みを取得する請求項7に記載の自律走行システムのテスト装置。
【請求項10】
前記プロセッシング・ユニットにおいて、前記シナリオ複雑度に基づいて複雑度レベルを決定するとき、
基準シナリオに対応する基準複雑度を取得し、
シナリオ複雑度と基準複雑度を比較して、変化属性を決定し、各変化属性に対応するレベルアップ値を取得し、
取得したレベルアップ値と初期レベルとの間の加算結果に基づいて、複雑度レベルを決定する請求項9に記載の自律走行システムのテスト装置。
【請求項11】
前記テストユニットにおいて、
自律走行システムによる各テスト待ちシナリオのテストを行うとき現れた問題を取得し、
各テスト待ちシナリオに対応するシナリオ重みに基づいて、自律走行システムに現れた問題の重要性を決定する請求項7に記載の自律走行システムのテスト装置。
【請求項12】
前記テストユニットにおいて、
自律走行システムが各テスト待ちシナリオをテストして得られた走行評点を取得し、
各テスト待ちシナリオに対応するシナリオ重みに基づいて、各走行評点について加重平均して、計算結果を自律走行システムの最終評点とする請求項7に記載の自律走行システムのテスト装置。
【請求項13】
少なくとも一つのプロセッサと、
前記少なくとも一つのプロセッサに通信接続されているメモリとを備え、
前記メモリには、前記少なくとも一つのプロセッサによって実行可能なコマンドが格納されており、前記少なくとも一つのプロセッサによって、請求項1乃至請求項6のいずれか一項に記載の自律走行システムのテスト方法が実行されるように、前記コマンドが前記少なくとも一つのプロセッサによって実行される電子機器。
【請求項14】
コンピュータに請求項1乃至請求項6のいずれか一項に記載の自律走行システムのテスト方法を実行させるためのコンピュータコマンドが格納されている不揮発性のコンピュータ読み取り可能な記録媒体。
【請求項15】
コンピュータに請求項1乃至請求項6のいずれか一項に記載の自律走行システムのテスト方法を実行させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、テスト技術に関するものであり、特に自律走行の技術分野における自律走行システムのテスト方法、装置、電子機器、プログラム及びコンピュータ読み取り可能な記録媒体に関するものである。
【背景技術】
【0002】
車両性能テストは、車両の安全性を改善するための重要な手段である。特に自律走行車にとって、複数のテストシナリオを設定してテストすることは、自律走行車の安全性を確保するための不可欠な手段である。
【発明の概要】
【発明が解決しようとする課題】
【0003】
しかし、自律走行テストのためのシナリオは、何千何万もの種類があり、それぞれのテストシナリオの重要性が区別できないので、毎回何千何万もの種類のシナリオをテストしなければならない。これにより、一方では、テストによるストレスを大幅に受けることになり、他方では、テストの効率が落ちる。
【課題を解決するための手段】
【0004】
技術的課題を解決するために、本発明で採用された技術案は、自律走行システムのテスト方法、装置、電子機器及びコンピュータ読み取り可能な記録媒体を提供する。前記方法は、テスト待ちシナリオのシナリオ説明情報を取得するステップと、前記シナリオの説明情報について分析し、前記テスト待ちシナリオに対応するシナリオリスク、シナリオ確率及びシナリオ複雑度を決定するステップと、前記シナリオリスク、シナリオ確率及びシナリオ複雑度に基づいて、前記テスト待ちシナリオのシナリオ重みを取得するステップと、自律走行システムによるテスト待ちシナリオのテストに使用される、前記シナリオ重みに対応するテストサイクルを決定するステップと、を含む。これにより、自律走行システムのテストによるストレスを下げ、自律走行システムのテスト効率を高める。
【0005】
本発明の一つの好ましい実施例によれば、前記シナリオ複雑度は、テスト待ちシナリオに対応する環境複雑度と任務複雑度を含む。当該ステップは、より多くの要素を結合してシナリオの複雑度を定義することができ、より実用的である。
【0006】
本発明の一つの好ましい実施例によれば、前記シナリオリスク、シナリオ確率及びシナリオ複雑度に基づいて、前記テスト待ちシナリオのシナリオ重みを取得するステップは、シナリオリスクに基づいてリスクレベルを決定し、シナリオ確率に基づいて確率レベルを決定し、シナリオ複雑度に基づいて複雑度レベルを決定するステップと、前記リスクレベル、確率レベル及び複雑度レベルに対応する重み値を加算して、加算結果に基づいて前記テスト待ちシナリオのシナリオ重みを取得するステップを含む。当該ステップは、取得されるシナリオ重みの精度を高めることができる。
【0007】
本発明の一つの好ましい実施例によれば、前記シナリオ複雑度に基づいて複雑度レベルを決定するステップは、基準シナリオに対応する基準複雑度を取得するステップと、シナリオ複雑度と基準複雑度を比較して、変化属性を決定し、各変化属性に対応するレベルアップ値を取得するステップと、取得したレベルアップ値と初期レベルとの間の加算結果に基づいて、複雑度レベルを決定するステップを含む。当該ステップは、シナリオの複雑度に含まれる各属性を十分に考慮することにより、決定される複雑度レベルの精度を高めることができる。
【0008】
本発明の一つの好ましい実施例によれば、前記方法は、自律走行システムによる各テスト待ちシナリオのテストを行うとき現れた問題を取得するステップと、各テスト待ちシナリオに対応するシナリオ重みに基づいて、自律走行システムに現れた問題の重要性を決定するステップをさらに含む。当該ステップは、テスト待ちシナリオに対応するシナリオ重みに基づいて、問題の重要性をより正確に定義することができる。
【0009】
本発明の一つの好ましい実施例によれば、前記方法は、自律走行システムが各テスト待ちシナリオをテストして得られた走行評点を取得するステップと、各テスト待ちシナリオに対応するシナリオ重みに基づいて、各走行評点について加重平均して、計算結果を自律走行システムの最終評点とするステップをさらに含む。当該ステップは、テスト待ちシナリオに対応するシナリオ重みに基づいて、自律走行システムの走行能力をより正確に評価することができる。
【0010】
技術的課題を解決するために、本発明で採用された技術案は、自律走行システムのテスト装置を提供する。前記装置は、テスト待ちシナリオのシナリオ説明情報を取得する取得ユニットと、前記シナリオの説明情報について分析し、前記テスト待ちシナリオに対応するシナリオリスク、シナリオ確率及びシナリオ複雑度を決定する決定ユニットと、前記シナリオリスク、シナリオ確率及びシナリオ複雑度に基づいて、前記テスト待ちシナリオのシナリオ重みを取得するプロセッシング・ユニットと、自律走行システムによるテスト待ちシナリオのテストに使用される、前記シナリオ重みに対応するテストサイクルを決定するテストユニットと、を備える。
【0011】
本発明の一つの好ましい実施例によれば、前記決定ユニットにより決定されたシナリオ複雑度は、テスト待ちシナリオに対応する環境複雑度と任務複雑度を含む。
【0012】
本発明の一つの好ましい実施例によれば、前記プロセッシング・ユニットにおいて、前記シナリオリスク、シナリオ確率及びシナリオ複雑度に基づいて、前記テスト待ちシナリオのシナリオ重みを取得するとき、シナリオリスクに基づいてリスクレベルを決定し、シナリオ確率に基づいて確率レベルを決定し、シナリオ複雑度に基づいて複雑度レベルを決定し、前記リスクレベル、確率レベル及び複雑度レベルに対応する重み値を加算して、加算結果に基づいて前記テスト待ちシナリオのシナリオ重みを取得する。
【0013】
本発明の一つの好ましい実施例によれば、前記プロセッシング・ユニットにおいて、前記シナリオ複雑度に基づいて複雑度レベルを決定するとき、基準シナリオに対応する基準複雑度を取得し、シナリオ複雑度と基準複雑度を比較して、変化属性を決定し、各変化属性に対応するレベルアップ値を取得し、取得したレベルアップ値と初期レベルとの間の加算結果に基づいて、複雑度レベルを決定する。
【0014】
本発明の一つの好ましい実施例によれば、前記テストユニットにおいて、自律走行システムによる各テスト待ちシナリオのテストを行うとき現れた問題を取得し、各テスト待ちシナリオに対応するシナリオ重みに基づいて、自律走行システムに現れた問題の重要性を決定する。
【0015】
本発明の一つの好ましい実施例によれば、前記テストユニットにおいて、自律走行システムが各テスト待ちシナリオをテストして得られた走行評点を取得し、各テスト待ちシナリオに対応するシナリオ重みに基づいて、各走行評点について加重平均して、計算結果を自律走行システムの最終評点とする。
【0016】
上述の発明の一つの実施例は、自律走行システムのテストによるストレスを下げ、自律走行システムのテスト効率を向上させる利点または有益な効果がある。テスト待ちシナリオのシナリオリスク、シナリオ確率及びシナリオ複雑度を分析することを通してシナリオ重みを取得して、シナリオ重みに基づいて、テスト待ちシナリオに対応するテストサイクルを決定することにより、従来技術においてのそれぞれのテスト待ちシナリオの重要性が区別できないので、何千何万ものシナリオをテストしなければならない技術的課題を解決し、自律走行システムのテストによるストレスを下げ、自律走行システムのテスト効率を高める技術の効果を持つ。
【0017】
上述の選択可能な方法の他の効果は、以下、具体的な実施例を参照して説明する。
【図面の簡単な説明】
【0018】
図面は、本技術案をよりよく理解するために使用され、本発明は、これによって限定されない。
【
図1】本発明の実施例1に係る自律走行システムのテスト方法のフローチャートである。
【
図2】本発明の実施例2に係る自律走行システムのテスト装置の構成図である。
【
図3】本発明の一実施例の自律走行システムをテストする方法を実現する電子機器のブロック図である。
【発明を実施するための形態】
【0019】
以下、図面を参照しつつ、本発明の例示的な実施例について説明する。理解を助けるために、本発明に係る実施例の様々な詳細を説明するが、これらは単に例示的なものである。したがって、当業者は、本発明の範囲と思想を逸脱することなく、ここで説明された実施例に対して様々な変更や修正を行うことができることを理解すべきである。同様に、以下の説明では、明確性と簡潔性のため、公知の機能や構造の説明を省略する。
【0020】
図1は、本発明の実施例1に係る自律走行システムのテスト方法のフローチャートであり、
図1に示すように、前記方法は下記のステップを含む。
【0021】
ステップS101で、テスト待ちシナリオのシナリオ説明情報を取得する。
【0022】
当該ステップでは、テスト待ちシナリオのシナリオ説明情報を取得する。ここで、当該ステップにおいてのテスト待ちシナリオは、自律走行システムの走行性能をテストするための走行場所や走行状況の組合せである。取得されるシナリオの説明情報は、テスト待ちシナリオに対応する道路、交通機関、気象条件、交通参加者などの外部条件と自律走行システムの走行任務と状態を説明する情報である。
【0023】
例えば、当該ステップにおいて取得したテスト待ちシナリオのシナリオ説明情報は、「昼の雪道で横断歩道を横切る」を含んでもよく、または「晴れの日、交差点で信号待ち」を含んでもよく、または「夜、バリアフリー道路区間で運転"を含んでもよい。
【0024】
本発明における自律走行システムは、自律走行を実現できるシステムであってもよく、実際の自律走行車であってもよく、バーチャル自律走行のソフトウェアであってもよいことを理解することができる。
【0025】
ステップS102で、前記シナリオの説明情報について分析し、前記テスト待ちシナリオに対応するシナリオリスク、シナリオ確率及びシナリオ複雑度を決定する。
【0026】
当該ステップでは、ステップS101において取得したシナリオの説明情報について分析し、テスト待ちシナリオに対応するシナリオリスク、シナリオ確率及びシナリオ複雑度を決定する。
【0027】
具体的には、当該ステップにおいて決定されるテスト待ちシナリオに対応するシナリオリスクは、テスト待ちシナリオにおいて自律走行システムに衝突リスクが存在していない、存在可能な衝突リスクが車両の衝突リスクや歩行者の衝突リスクであることを表す。ここで、車両の衝突リスクは、車両同士の間の衝突、車両と交通施設との間の衝突を含み、歩行者の衝突リスクは、車両と歩行者との間の衝突、車両とサイクリスト(自転車や電動自転車)との間の衝突、車とバイクの間の衝突を含む。
【0028】
当該ステップにおいて決定されるテスト待ちシナリオに対応するシナリオ確率は、実際の走行でテスト待ちシナリオが発生される頻度を表し、低確率(年に数回以下発生)、中確率(平均して月に一回以上発生)と高確率(平均して走行するたびに発生)を含む。
【0029】
当該ステップにおいて決定されるテスト待ちシナリオに対応するシナリオ複雑度は、テスト待ちシナリオに対応する環境複雑度と任務複雑度を含む。ここで、環境複雑度は、テスト待ちシナリオに対応する環境属性を表し、テスト待ちシナリオの道路種類(例えば、直線道路、交差点、スロープ、トンネル、山道など)、障害物の数量(例えば、障害物の数量が3個を超えまたは障害物の数量が3個以下)、気象条件(例えば、晴れ、雨、雪、霧)、照明条件(例えば、昼、夜、夜間照明)、路面条件(例えば、良い、濡れ、積雪、凍結)、湿度条件(例えば、高い、通常、低い)、温度条件(例えば、高い、通常、低い)及び気圧条件(例えば、高い、通常、低い)を含む。任務複雑度は、テスト待ちシナリオにおいて自律走行システムが実行する任務の任務種類を表し、任務種類は、例えば、「縦方向の制御」及び「縦方向の制御と横方向の制御」を含む。
【0030】
例えば、取得したシナリオの説明情報が「晴れの日、交差点で交通信号待ち」である場合には、当該ステップにおいて決定された当該テスト待ちシナリオに対応するシナリオリスクは「歩行者の衝突リスク」であり、シナリオ確率は「高確率」であり、シナリオ複雑度は「交差点、障害物の数量が3個を超え、晴れ、昼、縦方向の制御」である。
【0031】
また、当該ステップにおいてシナリオの説明情報について分析する際、既存の自然言語の理解を通じてシナリオの説明情報に含まれているシナリオリスク、シナリオ確率及びシナリオ複雑度を取得してもよく、事前にトレーニングして得られた機械学習モデルを使用して取得してもよい。すなわち、シナリオの説明情報を機械学習モデルに入力して、機械学習モデルの出力結果に基づいて、テスト待ちシナリオに対応するシナリオリスク、シナリオ確率及びシナリオ複雑度を取得する。
【0032】
ステップS103で、前記シナリオリスク、シナリオ確率及びシナリオ複雑度に基づいて、前記テスト待ちシナリオのシナリオ重みを取得する。
【0033】
当該ステップでは、ステップS102において取得されたシナリオリスク、シナリオ確率及びシナリオ複雑度に基づいて、テスト待ちシナリオのシナリオ重みを取得する。
【0034】
具体的には、当該ステップにおいてシナリオリスク、シナリオ確率及びシナリオ複雑度に基づいて、テスト待ちシナリオのシナリオ重みを取得するとき、シナリオリスクに基づいてリスクレベルを決定し、シナリオ確率に基づいて確率レベルを決定し、シナリオ複雑度に基づいて複雑度レベルを決定して、決定されたリスクレベル、確率レベル及び複雑度レベルに対応する重み値の加算結果に基づいて、テスト待ちシナリオのシナリオ重みを取得することができる。
【0035】
ここで、当該ステップにおいて3つのレベルに対応する重み値の加算結果を直接にテスト待ちシナリオのシナリオ重みとしてもよく、3つのレベルに対応する重み値の加算結果を得た後、加算結果が属する範囲に対応する数値をテスト待ちシナリオのシナリオ重みとしてもよい。
【0036】
例えば、あるテスト待ちシナリオリスクレベルに対応する重み値が「2」であり、確率レベルに対応する重み値が「3」であり、複雑度レベルに対応する重み値が「2」である場合には、当該ステップでは、各重み値の加算結果「7」を直接に当該テスト待ちシナリオのシナリオ重みとすることができる。各レベルの重み値の加算結果「3-4」が「1」に対応し、加算結果「5-6」が「2」に対応し、加算結果「7-8」が「3」に対応し、加算結果「9」が「4」に対応している場合、当該ステップでは「3」を当該テストシナリオのシナリオ重みに決定することができる。
【0037】
当該ステップにおいてシナリオリスクに基づいてリスクレベルを決定する際、事前に設定されたリスクとレベルとの間の対応関係に基づいて、決定されたシナリオリスクに対応するレベルをリスクレベルにすることができる。ここで、事前に設定されたリスクとレベルとの間の対応関係において、「無衝突リスク」はレベル「R1」に対応し、「車両の衝突リスク」はレベル「R2」に対応し、「歩行者の衝突リスク」はレベル「R3」に対応される。
【0038】
当該ステップにおいてシナリオ確率に基づいて確率レベルを決定する際、事前に設定された確率とレベルとの間の対応関係に基づいて、決定されたシナリオ確率に対応するレベルを確率レベルにすることができる。ここで、事前に設定された確率とレベルとの間の対応関係において、「低確率」はレベル「P1」に対応し、「中確率」はレベル「P2」に対応し、「高確率」はレベル「P3」に対応される。
【0039】
シナリオ複雑に含まれている属性が比較的に多いので、取得される複雑度レベルの精度を高めるために、当該ステップにおいてシナリオ複雑度に基づいて複雑度レベルを決定する際、基準シナリオに対応する基準複雑度を取得し、シナリオ複雑度と基準複雑度を比較して、変化属性を決定し、各変化属性に対応するレベルアップ値を取得して、取得されたレベルアップ値と初期レベルとの間の加算結果に基づいて、複雑度レベルを決定する。ここで、基準複雑度は、基準環境属性と基準任務属性を含み、基準環境属性は、「直線道路、障害物の数量が3個以下、晴れ、昼、路面良い」であり、基準任務属性は「縦方向の制御」であり、初期レベルは基準シナリオに対応され、初期レベルは0である。
【0040】
当該ステップにおいて変化属性に対応するレベルアップ値は、事前に設定されたものであることを理解することができる。ここで「道路種類」である属性の変化際のレベルアップ値が「1」であり、「障害物の数量」である属性の変化際のレベルアップ値が「1」であり、「気象条件」である属性の変化際のレベルアップ値が「2」であり、「照明条件」である属性の変化際のレベルアップ値が「2」であり、「路面条件」である属性の変化際のレベルアップ値が「2」であり、任務の属性の変化際のレベルアップ値が「1」である。
【0041】
当該ステップにおいてレベルアップ値と初期レベルとの間の加算結果に基づいて、複雑度レベルを決定する場合、加算結果に対応するレベルを複雑度レベルにすることができる。例えば、加算結果「0-1」をレベル「C1」に対応させ、加算結果」「2-3」をレベル「C2」に対応させ、加算結果「4-5」をレベル「C3」に対応させることができることを理解することができる。
【0042】
例えば、シナリオ複雑度が基準複雑度に比べて、変化のある属性が「障害物の数量」、「気象条件」及び「路面条件」である場合には、当該ステップにおいて取得したレベルアップ値と初期レベルとの間の加算結果は「5」であり、したがって、当該シナリオ複雑度に対応する複雑度レベルが「C3」である。
【0043】
当該ステップにおいて、各レベルに対応する重み値を取得する際、事前に設定されたレベルと重み値との間の対応関係に基づいて、リスクレベル、確率レベル及び複雑度レベルに対応する重み値をそれぞれ取得する。
【0044】
ここで、当該ステップにおいて事前に設定されたレベルと重み値との間の対応関係は、下記の通りである。リスクレベル「R1」に対応する重み値は「1」であり、リスクレベル「R2」に対応する重み値は「2」であり、リスクレベル「R3」に対応する重み値は「3」である。確率レベル「P1」に対応する重み値は「1」であり、確率レベル「P2」に対応する重み値は「2」であり、確率レベル「P3」に対応する重み値は「3」である。複雑度レベル「C1」に対応する重み値は「1」であり、複雑度レベル「C2」に対応する重み値は「2」であり、複雑度レベル「C3」に対応する重み値は「3」である。
【0045】
例えば、テスト待ちシナリオに対応するリスクレベルが「R1」であり、確率レベルが「P2」であり、複雑度レベルが「C3」であると決定された場合、当該テスト待ちシナリオのシナリオ重みは「6」になることができる。
【0046】
ステップS104で、前記シナリオ重みに対応するテストサイクルを決定し、前記テストサイクルは、前記自律走行システムによるテスト待ちシナリオのテストに使用される。
【0047】
当該ステップでは、ステップS103において取得されたシナリオ重みに対応するテストサイクルを決定し、決定されたテストサイクルは、自律走行システムによるテスト待ちシナリオのテストに使用される。ここで、シナリオ重みが大きいほど、対応するテストサイクルがより長く、例えば、自律走行システムの各バージョンについて、全部当該テスト待ちシナリオによるテストを行う。シナリオ重みが小さいほど対応するテストサイクルがより短く、例えば、自律走行システムの配布版のみについて、当該テスト待ちシナリオによるテストを行う。
【0048】
本発明に係るテスト待ちシナリオのテストサイクルを決定する方法は、自律走行システムの一つの機能であってもよく、すなわち、自律走行システムによりテスト待ちシナリオのテストサイクルを決定した後、当該テスト待ちシナリオに対するテストを行う。本発明に係るテスト待ちシナリオのテストサイクルを決定する方法は、独立の機能によって実現されてもよく、すなわち、テスト待ちシナリオのテストサイクルを決定した後、当該テストサイクルを自律走行システムに送信して、当該テストサイクルに基づいて、自律走行システムによるテスト待ちシナリオに対するテストを行うことができることを理解することができる。
【0049】
また、決定されたテストサイクルに基づいて、自律走行システムによるテスト待ちシナリオに対するテストを行った後、当該ステップは、自律走行システムによる各テスト待ちシナリオのテストを行うとき現れた問題を取得して、各テスト待ちシナリオに対応するシナリオ重みに基づいて、現れた問題の重要性を決定することをさらに含むことができる。ここで、テスト待ちシナリオに対応するシナリオ重みが大きいほど、当該シナリオにおいてテストするとき現れた問題の重要性がより高い。したがって、当該ステップは、テスト待ちシナリオのシナリオ重みに基づいて、開発者に、より明確な問題解決の優先順位を提供することができ、開発効率を向上させることができる。
【0050】
また、自律走行システムによるテスト待ちシナリオに対するテストが完了すると、各テストシナリオにおいての自律走行システムの走行評点が提供され、テスト待ちシナリオの間は難易度に差があるので、各走行評点の平均値を直接に自律走行システムの評価とする場合、不合理でかつ不正確である。
【0051】
したがって、自律走行システムの走行能力について、より合理的かつ正確に評価するために、決定されたテストサイクルに基づいて、自律走行システムによるテスト待ちシナリオに対するテストを行った後、当該ステップは、自律走行システムが各テスト待ちシナリオをテストして得られた走行評点を取得し、各テスト待ちシナリオに対応するシナリオ重みに基づいて、各走行評点について加重平均して、計算結果を自律走行システムの最終評点とすることをさらに含むことができる。したがって、当該ステップは、シナリオ重みを使用して、重要なシナリオの走行評点の影響を拡大させ、重要ではないシナリオの走行評点の影響を減少させ、より正確に自律走行システムの走行能力を評価することができる。
【0052】
例えば、テスト待ちシナリオ1について自律走行システムがテストして得られた走行評点が90であり、テスト待ちシナリオ2についてテストして得られた走行評点が80であり、テスト待ちシナリオ1のシナリオ重みが1であり、テスト待ちシナリオ2のシナリオ重みが4である場合、当該ステップにおいて得られた自律走行システムの最終評点は(90×1 + 80×4)/(4 + 1)= 82である。
【0053】
したがって、本発明は、テスト待ちシナリオのシナリオ重みを取得することを通じ、それぞれのテスト待ちシナリオの重要性を区別することができ、重要なテスト待ちシナリオのテスト次数を増加させ、重要ではないテスト待ちシナリオのテスト次数を減少させ、自律走行システムをテストするテスト効率を高め、シナリオ重みとテスト結果に基づいて、自律走行システムをテストするテスト品質をより向上させることができる。
【0054】
図2は、本発明の一の実施例によって提供される自律走行システムをテストするための装置の構成図であり、
図2に示すように、前記装置は、取得ユニット201、決定ユニット202、プロセッシング・ユニット203とテストユニット204を備える。
【0055】
取得ユニット201は、テスト待ちシナリオのシナリオ説明情報を取得する。
【0056】
取得ユニット201は、テスト待ちシナリオのシナリオ説明情報を取得する。ここで、取得ユニット201の中のテスト待ちシナリオは、自律走行システムの走行性能をテストするための走行場所や走行状況の組合せである。取得ユニット201により取得されるシナリオの説明情報は、テスト待ちシナリオに対応する道路、交通機関、気象条件、交通参加者などの外部条件と自律走行システムの走行任務と状態を説明する情報である。
【0057】
本発明における自律走行システムは、自律走行を実現できるシステムであってもよく、実際の自律走行車であってもよく、バーチャル自律走行のソフトウェアであってもよいことを理解することができる。
【0058】
決定ユニット202は、前記シナリオの説明情報について分析し、前記テスト待ちシナリオに対応するシナリオリスク、シナリオ確率及びシナリオ複雑度を決定する。
【0059】
決定ユニット202は、取得ユニット201により取得したシナリオの説明情報について分析し、テスト待ちシナリオに対応するシナリオリスク、シナリオ確率及びシナリオ複雑度を決定する。
【0060】
具体的には、決定ユニット202により決定されるテスト待ちシナリオに対応するシナリオリスクは、テスト待ちシナリオにおいて自律走行システムに衝突リスクが存在していない、存在可能な衝突リスクが車両の衝突リスクや歩行者の衝突リスクであることを表す。ここで、車両の衝突リスクは、車両同士の間の衝突、車両と交通施設との間の衝突を含み、歩行者の衝突リスクは、車両と歩行者との間の衝突、車両とサイクリスト(自転車や電動自転車)との間の衝突、車とバイクの間の衝突を含む。
【0061】
決定ユニット202により決定されるテスト待ちシナリオに対応するシナリオ確率は、実際の走行でテスト待ちシナリオが発生される頻度を表し、低確率(年に数回以下発生)、中確率(平均して月に一回以上発生)と高確率(平均して走行するたびに発生)を含む。
【0062】
決定ユニット202により決定されるテスト待ちシナリオに対応するシナリオ複雑度は、テスト待ちシナリオに対応する環境複雑度と任務複雑度を含む。ここで、環境複雑度は、テスト待ちシナリオに対応する環境属性を表し、テスト待ちシナリオの道路種類(例えば、直線道路、交差点、スロープ、トンネル、山道など)、障害物の数量(例えば、障害物の数量が3個を超えまたは障害物の数量が3個以下)、気象条件(例えば、晴れ、雨、雪、霧)、照明条件(例えば、昼、夜、夜間照明)、路面条件(例えば、良い、濡れ、積雪、凍結)、湿度条件(例えば、高い、通常、低い)、温度条件(例えば、高い、通常、低い)及び気圧条件(例えば、高い、通常、低い)を含む。任務複雑度は、テスト待ちシナリオにおいて自律走行システムが実行する任務の任務種類を表し、任務種類は、例えば、「縦方向の制御」及び「縦方向の制御と横方向の制御」を含む。
【0063】
また、決定ユニット202はシナリオの説明情報について分析する際、既存の自然言語の理解を通じてシナリオの説明情報に含まれているシナリオリスク、シナリオ確率及びシナリオ複雑度を取得してもよく、決定ユニット202は事前にトレーニングして得られた機械学習モデルを使用して取得してもよい。すなわち、シナリオの説明情報を機械学習モデルに入力して、機械学習モデルの出力結果に基づいて、テスト待ちシナリオに対応するシナリオリスク、シナリオ確率及びシナリオ複雑度を取得する。
【0064】
プロセッシング・ユニット203は、前記シナリオリスク、シナリオ確率及びシナリオ複雑度に基づいて、前記テスト待ちシナリオのシナリオ重みを取得する。
【0065】
プロセッシング・ユニット203は、取得ユニット202により取得されたシナリオリスク、シナリオ確率及びシナリオ複雑度に基づいて、テスト待ちシナリオのシナリオ重みを取得する。
【0066】
具体的には、プロセッシング・ユニット203は、シナリオリスク、シナリオ確率及びシナリオ複雑度に基づいて、テスト待ちシナリオのシナリオ重みを取得するとき、シナリオリスクに基づいてリスクレベルを決定し、シナリオ確率に基づいて確率レベルを決定し、シナリオ複雑度に基づいて複雑度レベルを決定して、決定されたリスクレベル、確率レベル及び複雑度レベルに対応する重み値の加算結果に基づいて、テスト待ちシナリオのシナリオ重みを取得することができる。
【0067】
ここで、プロセッシング・ユニット203は、3つのレベルに対応する重み値の加算結果を直接にテスト待ちシナリオのシナリオ重みとしてもよく、3つのレベルに対応する重み値の加算結果を得た後、加算結果が属する範囲に対応する数値をテスト待ちシナリオのシナリオ重みとしてもよい。
【0068】
プロセッシング・ユニット203は、シナリオリスクに基づいてリスクレベルを決定する際、事前に設定されたリスクとレベルとの間の対応関係に基づいて、決定されたシナリオリスクに対応するレベルをリスクレベルにすることができる。ここで、事前に設定されたリスクとレベルとの間の対応関係において、「無衝突リスク」はレベル「R1」に対応し、「車両の衝突リスク」はレベル「R2」に対応し、「歩行者の衝突リスク」はレベル「R3」に対応される。
【0069】
プロセッシング・ユニット203は、シナリオ確率に基づいて確率レベルを決定する際、事前に設定された確率とレベルとの間の対応関係に基づいて、決定されたシナリオ確率に対応するレベルを確率レベルにすることができる。ここで、事前に設定された確率とレベルとの間の対応関係において、「低確率」はレベル「P1」に対応し、「中確率」はレベル「P2」に対応し、「高確率」はレベル「P3」に対応される。
【0070】
シナリオ複雑に含まれている属性が比較的多いので、取得される複雑度レベルの精度を高めるために、プロセッシング・ユニット203は、シナリオ複雑度に基づいて複雑度レベルを決定する際、基準シナリオに対応する基準複雑度を取得し、シナリオ複雑度と基準複雑度を比較して、変化属性を決定し、各変化属性に対応するレベルアップ値を取得して、取得されたレベルアップ値と初期レベルとの間の加算結果に基づいて、複雑度レベルを決定する。ここで、基準複雑度は、基準環境属性と基準任務属性を含み、基準環境属性は、「直線道路、障害物の数量が3個以下、晴れ、昼、路面良い」であり、基準任務属性は「縦方向の制御」であり、初期レベルは基準シナリオに対応され、初期レベルは0である。
【0071】
プロセッシング・ユニット203の中の変化属性に対応するレベルアップ値は、事前に設定されたものであることを理解することができる。ここで「道路種類」である属性の変化際のレベルアップ値が「1」であり、「障害物の数量」である属性の変化際のレベルアップ値が「1」であり、「気象条件」である属性の変化際のレベルアップ値が「2」であり、「照明条件」である属性の変化際のレベルアップ値が「2」であり、「路面条件」である属性の変化際のレベルアップ値が「2」であり、任務の属性の変化際のレベルアップ値が「1」である。
【0072】
プロセッシング・ユニット203は、レベルアップ値と初期レベルとの間の加算結果に基づいて、複雑度レベルを決定する場合、加算結果に対応するレベルを複雑度レベルにすることができることを理解することができる。
【0073】
プロセッシング・ユニット203は、各レベルに対応する重み値を取得する際、事前に設定されたレベルと重み値との間の対応関係に基づいて、リスクレベル、確率レベル及び複雑度レベルに対応する重み値をそれぞれ取得する。
【0074】
ここで、プロセッシング・ユニット203の中の事前に設定されたレベルと重み値との間の対応関係は、下記の通りである。リスクレベル「R1」に対応する重み値は「1」であり、リスクレベル「R2」に対応する重み値は「2」であり、リスクレベル「R3」に対応する重み値は「3」である。確率レベル「P1」に対応する重み値は「1」であり、確率レベル「P2」に対応する重み値は「2」であり、確率レベル「P3」に対応する重み値は「3」である。複雑度レベル「C1」に対応する重み値は「1」であり、複雑度レベル「C2」に対応する重み値は「2」であり、複雑度レベル「C3」に対応する重み値は「3」である。
【0075】
テストユニット204は、前記シナリオ重みに対応するテストサイクルを決定し、前記テストサイクルは、前記自律走行システムによるテスト待ちシナリオのテストに使用される。
【0076】
テストユニット204は、プロセッシング・ユニット203に取得されたシナリオ重みに対応するテストサイクルを決定し、決定されたテストサイクルは、自律走行システムによるテスト待ちシナリオのテストに使用される。ここで、シナリオ重みが大きいほど、対応するテストサイクルがより長く、シナリオ重みが小さいほど対応するテストサイクルがより短い。
【0077】
また、自律走行システムで決定されたテストサイクルに応じて、テスト待ちシナリオテストを行った後、テストユニット204は、自律走行システムによる各テスト待ちシナリオのテストを行うとき現れた問題を取得して、各テスト待ちシナリオに対応するシナリオ重みに基づいて、現れた問題の重要性を決定する。ここで、テスト待ちシナリオに対応するシナリオ重みが大きいほど、当該シナリオにおいてテストするとき現れた問題の重要性がより高い。したがって、テストユニット204は、テスト待ちシナリオのシナリオ重みに基づいて、開発者に、より明確な問題解決の優先順位を提供することができ、開発効率を向上させることができる。
【0078】
また、自律走行システムによるテスト待ちシナリオに対するテストが完了すると、各テストシナリオにおいての自律走行システムの走行評点が提供され、テスト待ちシナリオの間は難易度に差があるので、各走行評点の平均値を直接に自律走行システムの評価とする場合、不合理でかつ不正確である。
【0079】
したがって、自律走行システムの走行能力について、より合理的かつ正確に評価するために、決定されたテストサイクルに基づいて、自律走行システムによるテスト待ちシナリオに対するテストを行った後、テストユニット204は、自律走行システムが各テスト待ちシナリオをテストして得られた走行評点を取得し、各テスト待ちシナリオに対応するシナリオ重みに基づいて各走行評点について加重平均して、計算結果を自律走行システムの最終評点とすることができる。したがって、テストユニット204は、シナリオ重みを使用して、重要なシナリオの走行評点の影響を拡大させ、重要ではないシナリオの走行評点の影響を減少させ、より正確に自律走行システムの走行能力を評価することができる。
【0080】
図3に示すように、図面は、本発明の実施例に係る自律走行システムをテストする方法の電子機器のブロック図である。電子機器は、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、メインフレームコンピュータ及びその他の適切なコンピュータなど、様々な形態のデジタルコンピュータを意味する。電子機器は、パーソナルデジタルアシスタント、携帯電話、スマートフォン、ウェアラブルデバイス及びその他の類似なコンピュータデバイスなどの様々な形態のモバイルデバイスを意味することもできる。ここで示されている部材、これらの接続、関係及び機能は、単に例示的なものにすぎず、本明細書の説明及び/または要求する本発明の実現を制限するものではない。
【0081】
図3に示すように、当該電子機器は、1つまたは複数のプロセッサ301、メモリ302及び各部材を接続するインタフェースを備え、インターフェースは、高速インタフェースと低速インタフェースを含む。各部材は、異なるバスを介して相互に接続され、共通のマザーボードに配置されるか、必要に応じて他の方法で配置することができる。プロセッサは、電子機器で実行されるコマンドを処理することができ、外部の入力/出力装置(例えば、インターフェイスに接続されたディスプレイ装置)にGUIのグラフィック情報を表示するためのメモリに格納されたコマンドを含む。他の実施例では、必要に応じて、複数のプロセッサ及び/または複数のバスと、複数のメモリを使用してもよい。同様に、複数の電子機器を接続することができ、各電子機器は一部の必要な動作を提供する(例えば、サーバーアレイ、1つのブレードサーバのグループまたはマルチプロセッサシステム)。
図3では、プロセッサ301が一つであることを例にする。
【0082】
メモリ302は、本実施例で提供される不揮発性のコンピュータ読み取り可能な記録媒体である。ここで、少なくとも一つのプロセッサにより、本発明で提供される自律走行システムをテストするテスト方法を実行するように、メモリは、少なくとも一つのプロセッサによって実行可能なコマンドを格納する。本発明の不揮発性のコンピュータ読み取り可能な記録媒体は、コンピュータにより本発明が提供する自律走行システムをテストする方法を実行するためのコンピュータコマンドを格納する。
【0083】
メモリ302は、不揮発性のコンピュータ読み取り可能な記録媒体として、不揮発性のソフトウェアプログラム、不揮発性のコンピュータが実行可能なプログラムとモジュールは、例えば、本発明の実施例の自律走行システムをテストする方法に対応するプログラムコマンド/モジュール(例えば、
図2に示される取得ユニット201、決定ユニット202、プロセッシング・ユニット203及びテストユニット204)を格納することができる。プロセッサ301は、メモリ302に格納された不揮発性のソフトウェアプログラム、コマンド及びモジュールを実行することで、サーバーの各種機能アプリケーション(function application)とデータ処理を実行する。すなわち、前記方法の実施例の中の自律走行システムをテストする方法を実現する。
【0084】
メモリ302は、プログラムの格納領域とデータの格納領域を含むことができ、ここで、プログラムの格納領域は、オペレーティングシステム、少なくとも一つの機能に必要なアプリケーションを格納することができる。データの格納領域は、自律走行システムをテストする電子機器の使用によって生成されたデータなどを格納することができる。また、メモリ302は、高速ランダムアクセスメモリを備えてもよく、不揮発性メモリをさらに備えてもよく、例えば、少なくとも一つのディスクメモリ素子、フラッシュメモリ素子またはその他の非揮発性の固体メモリ素子をさらに備えてもより。一部の実施形態では、メモリ302は、プロセッサ301に対して遠隔的に配置されたメモリを選択的に備えてもよく、これらの遠隔メモリは、ネットワークを介して自律走行システムをテストする企業のイントラネットの電子機器に接続することができる。上述のネットワークの例は、インターネット、、LAN、移動通信網及びこれらの組み合わせを含むものの、これらに限定されない。
【0085】
自律走行システムをテストする電子機器は、入力装置303と出力装置304をさらに備えてもよい。プロセッサ301、メモリ302、入力装置303及び出力装置304は、バスまたは他の手段により接続することができ、
図3では、バスを介して接続されていることを例にした。
【0086】
入力装置303は、数値や文字情報が入力されることができ、自律走行システムをテストする電子機器のユーザー設定及び機能の制御に関連するキー信号の入力を生成する。例えば、タッチスクリーン、キーパッド、マウス、トラックパッド、タッチパッド、ポインティングスティック、複数のマウスボタン、トラックボール、ジョイスティックなどの入力装置であってもよい。出力装置304は、ディスプレイ装置、補助照明装置(例えばおりLED)、触覚フィードバック装置(例えば、振動モータ)などを含むことができる。当該ディスプレイ装置は、液晶ディスプレイ(LCD)、発光ダイオード(LED)ディスプレイ及びプラズマディスプレイを含むことができるものの、これに限定されない。一部の実施形態では、ディスプレイ装置はタッチスクリーンであってもよい。
【0087】
ここで説明されたシステム及び技術の各実施形態は、デジタル電子回路システム、集積回路システム、専用ASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア及び/またはこれらの組み合わせで実現されることができる。これらの各実施形態は、下記のような内容を含むことができる。すなわち、複数のコンピュータプログラムにより実装され、複数のコンピュータプログラムは、少なくとも一つのプログラム可能なプロセッサ(Programmable processor)を含むプログラム可能なシステムにより実行及び/または解釈することができる。当該プログラム可能なプロセッサは、ストレージシステム、少なくとも1つの入力装置と少なくとも一つの出力装置からデータ及びコマンドを受信し、データやコマンドをストレージシステム、当該少なくとも1つの入力装置と、当該少なくとも一つの出力装置に転送することができる専用または汎用のプログラム可能なプロセッサであってもよい。
【0088】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーションまたはコードとも呼ばれる)には、プログラム可能なプロセッサのマシンコマンド(machine instruction)が含まれ、高度なプロセス(advaced process)及び/またはオブジェクト指向プログラミング言語及び/またはアセンブリ/機械言語を使用して、これらのコンピュータプログラムを実装することができる。本明細書で使用される「機械可読媒体」及び「コンピュータ可読媒体」という用語は、マシンコマンド及び/またはデータをプログラム可能なプロセッサに提供するために使用される任意のコンピュータプログラム製品、デバイス及び/または装置(磁気ディスク、光ディスク、メモリ、プログラム可能な論理素子(PLD))を意味する。例えば、マシンコマンドを機械可読信号として受信する機械可読媒体を含む。用語「機械読取可能信号」は、機械コマンド及び/またはデータをプログラム可能なプロセッサに提供するために使用される任意の信号を意味する。
【0089】
ユーザーとの相互作用を提供するために、コンピュータで、ここで説明されたシステム及び技術を実施することができる。当該コンピュータは、ユーザーに情報を表示するディスプレイ装置(例えば、CRT(陰極線管)またはLCD(液晶ディスプレイ)モニタ))及びユーザーコンピュータへの入力に使用されるキーボードとポインティングデバイス(例えば、マウスまたはトラックボール)を備える。他のタイプの装置を使用して、ユーザーとの相互作用を提供してもよい。例えば、ユーザーに提供されるフィードバックは、任意の形態のセンサーフィードバック(例えば、視覚的なフィードバック、聴覚的フィードバックまたは触覚的フィードバック)であってもよく、任意の形態(音響入力、音声入力または触覚入力)を使用してユーザーからの入力を受けることができる。
【0090】
ここで説明されたシステム及び技術は、バックグラウンド部材を具備するコンピューティングシステム(例えば、データサーバ)またはミドルウェア部材を具備するコンピューティングシステム(例えば、アプリケーションサーバ)またはフロントエンド部材を具備するコンピューティングシステム(例えば、グラフィカルユーザーインターフェイスまたはWebブラウザを有するユーザーコンピュータであり、ユーザーは、ユーザーインターフェイスまたはWebブラウザを介して、ここで説明されたシステム及び技術の実施形態と相互作用することができる)またはこれらのバックグラウンド部材、ミドルウェア部材またはフロントエンド部材の任意の組み合わせで構成されたコンピューティングシステムで実施することができる。システムの部材の間は、任意の形態または媒体のデジタルデータ通信(例えば、通信ネットワーク)を介して互いに接続することができる。通信ネットワークの例としては、LAN(Local Area Network)、WAN、(Wide Area Network)、インターネットがある。
【0091】
コンピュータシステムは、クライアントとサーバーとを有することができる。クライアントとサーバは、一般的に、互いに離れており、一般的に通信ネットワークを介して相互作用する。クライアントとサーバーとの関係は、対応するコンピュータで互いにクライアント - サーバ関係があるコンピュータプログラムを実行することによって生成される。
【0092】
本発明の実施例の技術案によると、従来技術においてのそれぞれのテスト待ちシナリオの重要性が区別できないので、何千何万ものシナリオをテストしなければならない技術的課題を解決し、自律走行システムのテストによるストレスを下げ、自律走行システムのテスト効率を高める技術の効果を持つ。
【0093】
上述の各形態のプロセスを使用して、ステップについて再整列、追加または削除することができていることを理解しなければならない。例えば、本発明で説明された技術案の望ましい結果を達成することができる限り、本発明で説明された各ステップは、並列に実行されてもよく、順序に実行されてもよく、他の順序に実行されてもよく、本明細書は、これについて限定しない。
【0094】
上述の具体的な実施形態は、本発明の保護範囲の限定を成すない。当業者は、設計要件及びその他の要因に応じて様々な修正、組み合わせ、サブの組み合わせ及び置換を行うことができていることを理解しなければならない。本発明の主旨と原則内で行われたすべての修正、均等置換及び改善は、全部本発明の保護範囲に含まれる。