(57)【要約】      （修正有）【課題】複数のQ学習カテゴリーを使う交通信号制御を提供する。【解決手段】履歴交通データを複数の交通パターン・クラスターにクラスタリングし、複数のQ学習カテゴリーを生成する。各Q学習カテゴリーは複数の交通パターン・クラスターのうちのある交通パターン・クラスターに対応する。また、交差点における交通信号を制御する際に使う複数のQ学習カテゴリーのうちの第一のQ学習カテゴリーを、少なくとも部分的には交差点の第一の交通データに基づいて決定する。第一のQ学習カテゴリーは第一の交通パターン・クラスターに対応し、第一の交通データは第一の交通パターン・クラスターに対応する。さらに、少なくとも部分的には第一のQ学習カテゴリーに基づいて、交差点における交通信号についての第一の制御アクションを生成する。【選択図】図１５
2018147489.tif 000002
【特許請求の範囲】
【請求項１】
交差点における交通信号を制御するよう構成された交通信号制御システムであって、当該システムは：
複数の交通パターン・クラスターを記憶するよう構成されている情報データ記憶部であって、前記複数の交通パターン・クラスターの各交通パターン・クラスターはQ学習カテゴリーを割り当てられている、情報データ記憶部と；
前記情報データ記憶部に結合されたエージェントとを有しており、前記エージェントは：
交差点の第一の交通データを決定し；
前記複数の交通パターン・クラスターのうち前記第一の交通データに対応する第一の交通パターン・クラスターを判別し；
少なくとも部分的には前記第一の交通パターン・クラスターに対応する第一のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第一の制御アクションを生成し；
前記第一の交通データよりも時間的に後の、前記交差点の第二の交通データを決定し；
前記第二の交通データが前記第一の交通パターン・クラスターに対応するかどうかを判定し；
前記第二の交通データが前記第一の交通パターン・クラスターに対応するとの判定に応答して、少なくとも部分的には前記第一のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第二の制御アクションを生成し；
前記第二の交通データが前記第一の交通パターン・クラスターに対応しないとの判定に応答して、前記複数の交通パターン・クラスターのうち前記第二の交通データに対応する第二の交通パターン・クラスターを判別して、少なくとも部分的には前記第二の交通パターン・クラスターに対応する第二のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第三の制御アクションを生成するよう構成されている、
システム。
【請求項２】
前記エージェントは、前記第二の交通データが前記第一の交通パターン・クラスターに対応しないとの判定に応答して、前記第一の交通パターン・クラスターを前記第一の交通データを用いて更新するよう構成されている、請求項１記載のシステム。
【請求項３】
前記第二の交通データが前記第一の交通パターン・クラスターに対応するかどうかを判定することは、少なくとも部分的には、特定数の連続する時間スロットにおいて前記第二の交通データが生起したかどうかの判定に基づく、請求項１記載のシステム。
【請求項４】
連続する時間スロットの前記特定数が、少なくとも部分的には、前記第二の交通データに対応する前記第二の交通パターン・クラスターの発生頻度に基づく、請求項２記載のシステム。
【請求項５】
前記第二の交通データが前記第一の交通パターン・クラスターに対応するかどうかを判定することは、少なくとも部分的には、特定数の連続する時間スロットのうちのある割合において前記第二の交通データが生起したかどうかの判定に基づく、請求項１記載のシステム。
【請求項６】
前記複数の交通パターン・クラスターのうちの少なくとも一つの交通パターン・クラスターがイベントに関連付けられる、請求項１記載のシステム。
【請求項７】
交差点における交通信号を制御する方法であって、当該方法は：
履歴交通データを複数の交通パターン・クラスターにクラスタリングする段階と；
複数のQ学習カテゴリーを生成する段階であって、前記複数のQ学習カテゴリーの各Q学習カテゴリーは前記複数の交通パターン・クラスターのうちのある交通パターン・クラスターに対応する、段階と；
交差点における交通信号を制御する際に使う前記複数のQ学習カテゴリーのうちの第一のQ学習カテゴリーを、少なくとも部分的には前記交差点の第一の交通データに基づいて決定する段階であって、前記第一のQ学習カテゴリーは第一の交通パターン・クラスターに対応し、前記第一の交通データは前記第一の交通パターン・クラスターに対応する、段階と；
少なくとも部分的には前記第一のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第一の制御アクションを生成する段階とを含む、
方法。
【請求項８】
履歴交通データをクラスタリングすることが、少なくとも部分的には行列長さに基づく、請求項７記載の方法。
【請求項９】
履歴交通データをクラスタリングすることが、少なくとも部分的には交通パターン特性に基づく、請求項７記載の方法。
【請求項１０】
前記交通パターン特性が一つまたは複数の閾値を含む、請求項９記載の方法。
【請求項１１】
前記一つまたは複数の閾値が人間によって指定される、請求項１０記載の方法。
【請求項１２】
前記クラスタリングが自動的に実行される、請求項７記載の方法。
【請求項１３】
前記交差点の第二の交通データを決定する段階と；
前記交差点における交通信号を制御する際に使う前記複数のQ学習カテゴリーのうちの第二のQ学習カテゴリーに変更するべきかどうかを決定する段階であって、前記第二のQ学習カテゴリーは第二の交通パターン・クラスターに対応し、前記第二の交通データは前記第二の交通パターン・クラスターに対応する、段階と；
前記第二のQ学習カテゴリーに変更するべきとの決定に応答して、少なくとも部分的には前記第二のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第二の制御アクションを生成する段階とを含む、
請求項７記載の方法。
【請求項１４】
第二のQ学習カテゴリーに変更するべきかどうかを決定することが、特定数の連続する時間スロットにおいて前記第二の交通パターン・クラスターが生起したかどうかを判定することを含む、請求項１３記載の方法。
【請求項１５】
連続する時間スロットの前記特定数が、少なくとも部分的には、前記第二の交通データに対応する前記第二の交通パターン・クラスターの発生頻度に基づく、請求項１４記載の方法。
【請求項１６】
第二のQ学習カテゴリーに変更するべきかどうかを決定することが、特定数の連続する時間スロットのうちのある割合において前記第二の交通パターン・クラスターが生起したかどうかを判定することを含む、請求項１３記載の方法。
【請求項１７】
前記第二のQ学習カテゴリーに変更するべきとの決定に応答して、前記第一の交通パターン・クラスターを前記第一の交通データを用いて更新する段階をさらに含む、請求項１３記載の方法。
【請求項１８】
命令を記憶している非一時的なコンピュータ可読記憶媒体であって、前記命令は、プロセッサによる実行に応答して、前記プロセッサに：
複数のQ学習カテゴリーを生成する段階であって、前記複数のQ学習カテゴリーの各Q学習カテゴリーは複数の交通パターン・クラスターのうちのある交通パターン・クラスターに対応する、段階と；
交差点における交通信号を制御するために使う前記複数のQ学習カテゴリーのうちの第一のQ学習カテゴリーを、少なくとも部分的には前記交差点の第一の交通データに基づいて決定する段階であって、前記第一のQ学習カテゴリーは第一の交通パターン・クラスターに対応し、前記第一の交通データは前記第一の交通パターン・クラスターに対応する、段階と；
少なくとも部分的には前記第一のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第一の制御アクションを生成する段階とを実行させるものである、
非一時的なコンピュータ可読記憶媒体。
【請求項１９】
前記プロセッサによる実行に応答して、前記プロセッサに：
前記交差点の第二の交通データを決定する段階と；
前記交差点における交通信号を制御するために使う前記複数のQ学習カテゴリーのうちの第二のQ学習カテゴリーに変更するべきかどうかを決定する段階であって、前記第二のQ学習カテゴリーは第二の交通パターン・クラスターに対応し、前記第二の交通データは前記第二の交通パターン・クラスターに対応する、段階と；
前記第二のQ学習カテゴリーに変更するべきとの決定に応答して、少なくとも部分的には前記第二のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第二の制御アクションを生成する段階とを実行させるための命令をさらに記憶している、
請求項１８記載の非一時的なコンピュータ可読記憶媒体。
【請求項２０】
前記プロセッサによる実行に応答して、前記プロセッサに：
前記第二のQ学習カテゴリーに変更するべきとの決定に応答して、前記第一の交通パターン・クラスターを前記第一の交通データを用いて更新する段階を実行させるための命令をさらに記憶している、
請求項１９記載の非一時的なコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は2017年3月8日に出願された同時係属中の米国特許出願第15/453,854号の米国特許法第１２０条のもとでの部分係属である。
【０００２】
分野
記載される技術は概括的には交通信号の制御に関する。
【背景技術】
【０００３】
交通渋滞はますます問題になりつつある。交通渋滞は典型的には車両による道路使用の増大から帰結し、より遅い車両速度、より長い所要時間および増大した車両行列によって特徴付けられる。交通渋滞を軽減するのを助けようとして、交通信号が広く配備されている。適正な機能する交通信号は、交通がなめらかかつ安全に動くことのみならず、道路を横断するときに歩行者が保護されることをも保証する必要がある。
【０００４】
さまざまな交通信号制御技法が提案されている。これらの技法は一般に、固定時間制御、動的制御、協調制御および適応制御として範疇分けできる。固定時間制御（fixed  time  control）は、一定の時間期間後に交通信号が変えられるという、かなり単純なものである。時間期間は、一日の異なる時刻について異なる値に事前構成設定されることができる。動的制御（dynamic  control）は、交通信号タイミングを調整するためにセンサーのような検出器からの入力を使うことを組み込む。これらの検出器は、交通信号コントローラに、車両が存在するかどうかを通知できる。
【０００５】
協調制御（coordinated  control）は、典型的にはマスター・コントローラによる、複数の交通信号の協調させられる制御であり、リアルタイムで変化する交通パターンを考慮に入れる。リアルタイムの交通情報を検出するためにカメラおよびセンサーが使われ、中央コントローラはこの情報を使ってリアルタイム最適化を行なう。一つの最適化は、車両が赤信号に遭遇することなく長い距離を進むことを許容する青信号の長い連なり「グリーン・ウェーブ（green  wave）」である。
【０００６】
適応制御（adaptive  control）は、交通信号の制御に実際の交通需要を組み込む。交差点における車両の数およびどのくらい長くそれらの車両が待っているかを判定するためにセンサーおよびカメラが使われる。この交差点の交通信号コントローラはこの情報を使ってこの交差点における交通信号を制御する。その際、その判断を、他の交差点におけるコントローラと協調させる。
【０００７】
本開示において請求される主題は、何らかの欠点を解決するまたは上記のような環境でのみ動作する実施形態に限定されない。むしろ、この背景は、本開示に記載されるいくつかの実施形態が実施されうる一つの例示的な技術領域を例解するために与えられているだけである。
【先行技術文献】
【非特許文献】
【０００８】
【非特許文献１】Frey,  Brendan  J.,  and  Dueck,  Dilbert、"Clustering  by  passing  messages  between  data  points",  Science  315.5814  (16  February  2007):  972-6
【発明の概要】
【課題を解決するための手段】
【０００９】
いくつかの例によれば、少なくとも部分的には複数のQ学習カテゴリーに基づいて交差点における交通信号を制御する方法が記述される。例示的方法は、交通データを複数の交通パターン・クラスターにクラスタリングし、複数のQ学習カテゴリーを生成することを含む。ここで、前記複数のQ学習カテゴリーのうちの各Q学習カテゴリーは、複数の交通パターン・クラスターのうちのある交通パターン・クラスターに対応する。本方法は、少なくとも部分的には交差点における第一の交通データに基づいて該交差点における交通信号を制御することにおいて使うために、前記複数のQ学習カテゴリーのうちの第一のQ学習カテゴリーを決定することをも含んでいてもよく、前記第一の交通データは前記第一の交通パターン・クラスターに対応する。本方法はさらに、少なくとも部分的には前記第一のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第一の交通アクションを生成することを含んでいてもよい。
【００１０】
実施形態の目的および利点は、少なくとも、請求項において具体的に指摘される要素、特徴および組み合わせによって実現され、達成されるであろう。上記の概括的な記述および以下の記述はいずれも例として与えられており、説明するものであり、特許請求される発明を制約するものではない。
【図面の簡単な説明】
【００１１】
本開示の上記のおよび他の特徴は、付属の図面とともに参酌される以下の記述および付属の請求項からより完全に明白となるであろう。これらの図面が本開示に基づくいくつかの実施形態を描いているだけであり、よってその範囲を限定すると考えられるべきではないとの理解で、本開示はさらに具体的かつ詳細に、付属の図面を使って記述される。
【図１】交通信号によって制御される交差点の選択された構成要素を示す図である。
【図２】環境および環境中の選択された装置の概観を示す図である。
【図３】例示的なエージェントの選択された構成要素を示す図である。
【図４】例示的な輸送ネットワークのあるセグメントに対応する例示的な有向グラフを示す図である。
【図５】十字形の四叉路交差点を示す図である。
【図６】図５の十字形の四叉路交差点のための例示的なアクションを示す図である。
【図７】丁字形の三叉路交差点を示す図である。
【図８】図７の丁字形の三叉路交差点のための例示的なアクションを示す図である。
【図９】例示的なコーディネーター・システムの選択された構成要素を示す図である。
【図１０】交差点における交通信号のための制御アクションを生成するために使用されうる例示的な汎用コンピューティング・システムの選択された構成要素を示す図である。
【図１１】図３のエージェントのようなエージェントによって実行されうる、少なくとも部分的には非モーター化ユーザーの行列長さに基づいて交差点における交通信号のための制御アクションを生成するための例示的なプロセスを示す流れ図である。
【図１２】複数のQ学習カテゴリーについての例示的アーキテクチャーを示す図である。
【図１３】交差点における例示的な交通パターン・クラスターとQ学習カテゴリーの関連付けを示す図である。
【図１４】図３のエージェント１０８のようなエージェントによって実行されうる履歴交通データをクラスタリングする例示的プロセスを示す流れ図である。
【図１５】図３のエージェント１０８のようなエージェントによって実行されうる、少なくとも部分的にはQ学習カテゴリーに基づいて交差点における交通信号についての制御アクションを生成する例示的プロセスを示す流れ図である。
【図１６】例示的な偽陽性の交通パターン・クラスター変化を示す図である。
【図１７】遷移フェーズに基づく例示的な交通パターン・クラスター変化を示す時系列図である。
【図１８】図３のエージェント１０８のようなエージェントによって実行されうるQ学習の学習レートを調整する例示的プロセスを示す流れ図である。  上記の図はみな本稿に記載される少なくともいくつかの実施形態に基づいて構成される。
【発明を実施するための形態】
【００１２】
以下の詳細な説明では、その一部をなす付属の図面が参照される。図面では、文脈がそうでないことを指示するのでない限り、同様の記号は典型的には同様の構成要素を指す。詳細な説明、図面および請求項に記載される例示的実施形態は限定することは意図されていない。本稿に呈示される主題の精神や範囲から外れることなく、他の実施形態が利用されてもよく、他の変更がなされてもよい。本稿で概括的に記述され、図面において示される本開示の諸側面は、幅広い多様な異なる構成において配置、置換、組み合わせ、分離および設計されることができ、それらはみな本願で明確に考えられている。
【００１３】
本開示は概括的には特に、非モーター化交通の情報を組み込む交通信号制御に関係した方法、装置、システム、デバイスおよび／またはコンピュータ・プログラムを含む技術に向けられる。
【００１４】
交通信号の制御において非モーター化交通の情報を組み込む技術が記載される。本技術のいくつかの実施形態は、複数のQ学習カテゴリーを交通信号の制御において利用してもよい。本技術のいくつかの実施形態は、交通信号を制御するために利用されるQ学習の学習レートを調整してもよい。
【００１５】
非モーター化交通（non-motorized  traffic）とは、歩行者、自転車および乗馬者のような非モーター化ユーザーの存在または非モーター化ユーザーによる道路の使用である。非モーター化ユーザーが交差点における自分の存在を知らせるために手動で作動させる必要がある従来の交通制御システムとは異なり、そのような非モーター化ユーザーの存在が自律的に検出され、交差点における交通信号の制御において考慮される。非モーター化ユーザーの自律的な検出は、交通フローが交通信号によって制御される交差点を通るモーター化交通および非モーター化交通両方の安全かつ効率的なフローを許容する。
【００１６】
いくつかの実施形態では、カメラ、ビデオ・カメラなどといったセンサーが、自律的に画像（たとえばビデオ画像、ビデオ・フィードなど）を取得するために交差点に配備され、かかる画像から交差点におけるモーター化ユーザーおよび非モーター化ユーザーの存在が判別されうる。モーター化ユーザーの存在を含むまたは示す画像は、モーター化ユーザー存在データと称されるまたはそのように分類されることができる。非モーター化ユーザーの存在を含むまたは示す画像は、非モーター化ユーザー存在データと称されるまたはそのように分類されることができる。よって、モーター化ユーザーおよび非モーター化ユーザー両方の存在を含むまたは示す画像は、モーター化ユーザー存在データおよび非モーター化ユーザー存在データ両方として称されるまたはそのように分類されることができる。モーター化ユーザーの存在が判別されうるもとになる他のデータも、モーター化ユーザー存在データと称されるまたはそのように分類されることができる。同様に、非モーター化ユーザーの存在が判別されうるもとになる他のデータも、非モーター化ユーザー存在データと称されるまたはそのように分類されることができる。
【００１７】
自律的に取得された画像は、非モーター化ユーザーの種々の行列および非モーター化ユーザーの種々の行列の長さを、たとえば非モーター化ユーザーの位置および／または進行方向から判別するためにも使われてもよい。同様に、画像は、交差点におけるモーター化ユーザーの存在（たとえばモーター化ユーザーの行列）ならびにモーター化ユーザーの種々の行列およびモーター化ユーザーの種々の行列の長さを、たとえばモーター化ユーザーの位置および／または進行方向から判別するためにも使われてもよい。
【００１８】
交差点における交通信号は、モーター化交通のための交通信号および非モーター化交通のための交通信号を含みうる。モーター化交通のための交通信号は、交差点を通るモーター化ユーザーの流れを制御、案内または指揮する。非モーター化交通のための交通信号は、交差点を通る非モーター化ユーザーの流れを制御、案内または指揮する。交差点における交通信号は制御エージェント（「エージェント」）によって制御されてもよい。
【００１９】
エージェントは、交差点におけるモーター化された交通のための交通信号および非モーター化された交通のための交通信号両方についての制御アクションを、交差点におけるモーター化ユーザーおよび非モーター化ユーザーの存在に基づいて生成するよう構成されてもよい。たとえば、エージェントは、モーター化ユーザー存在データおよび非モーター化ユーザー存在データを処理して、交差点に存在するモーター化ユーザー行列の存在および行列長さならびに非モーター化ユーザー行列の存在および行列長さを決定してもよい。エージェントは、少なくとも部分的には非モーター化ユーザー行列および行列長さに基づいて、交通信号のための制御アクションを生成してもよい。
【００２０】
いくつかの実施形態では、エージェントは、交通信号のための制御アクションを生成するために、モデル不要の強化学習技法であるQ学習（Q-learning）を適用してもよい。Q学習は、任意の所与の（有限）マルコフ決定過程（MDP:  Markov  decision  process）について最適なアクション選択ポリシーを決定するために使用されることができる。Q学習は、所与の状態（たとえば交通信号の所与の状態）において所与のアクションを取る（たとえば所与の制御アクションを生成する）ことの期待される効用を提供するアクション‐バリュー関数（action-value  function）を学習し、その後はその最適ポリシーに従うことによって機能する。ポリシーの例は、交差点における、モーター化ユーザーおよび非モーター化ユーザーの行列両方のすべての行列の長さを最小化すること、交差点を通るモーター化交通フローを最適化すること、交差点を通る非モーター化交通フローを最適化すること、交差点を通る特定方向の交通フローを優先すること、交差点を通る公共輸送を優先すること、グローバルな交通フローを最適化すること、排気効用（emission  utility）を最適化すること、渋滞効用（congestion  utility）を最適化することなどであってもよい。
【００２１】
いくつかの実施形態では、エージェントは、交通信号のための制御アクションを生成する際に、交通信号の動作に対する一つまたは複数の条件を適用してもよい。交差点における交通信号の通常動作においては、ある種の制御アクションは、いくつかの他の制御アクションの直後にきてはならない。たとえば、歩行者が交差点を渡っているとき、歩行者に交差点を渡るよう指示する交通信号は、歩行者が交差点を渡っている間、十分な時間期間にわたってそのアクション（たとえば青信号）を維持するべきである。同様に、歩行者のフローを横切るモーター化ユーザーのフローを制御している（たとえば止めている）交通信号は、青になるべきではない。もう一つの例として、交差点を通るある方向のモーター化交通のフローの次に、その交差点を通る別の方向のモーター化交通のフローがくるべきではない。これらの条件は、地域によって異なることがありうる。たとえば、四叉路交差点についての条件は、三叉路交差点についての条件とは異なることがありうる。もう一つの例として、米国での条件は、日本での条件とは異なることがありうる。
【００２２】
いくつかの実施形態では、エージェントは、交差点における交通信号のための制御アクションを生成する際に、履歴交通データを組み込んでもよい。履歴交通データは、一日における種々の時間帯における交通統計（たとえば午前7:00から午前9:00の間の交通は午前10:00から午前11:00の間よりも多い）、異なる日における同じ時間帯における交通統計（たとえば平日または週末における午前10:00から正午12時の間の交通）などを含んでいてもよい。履歴交通データは、同じ交差点（たとえば、当該エージェントによって制御されている交差点）のデータであってもよい。履歴交通データは、別の異なる交差点のデータであってもよい。履歴データは、複数の交差点のデータであってもよい。たとえば、エージェントは、自己回帰和分移動平均（ARIMA:  autoregressive  integrated  moving  average）モデルを適用して履歴交通データに基づく推定される瞬時返報（instantaneous  reward）を計算し、計算された瞬時返報を制御アクションの生成に統合（integrate）してもよい。
【００２３】
いくつかの実施形態では、エージェントは、最適なアクション選択ポリシーを決定するためにQ学習技法における複数のQ学習カテゴリーを組み込んでもよい。Q学習は、履歴交通データ（たとえばモーター化交通情報および非モーター化交通情報）に基づいて最適なアクションを決定する。交通信号制御について、交通パターンは、一日の間の異なる時刻において、時には著しく、変動しうる。たとえば、交差点における交通パターンは、通勤時間帯と非通勤時間帯の間、日中と深夜の間などで異なることがありうる。交通パターンは、イベント（たとえば自動車事故、音楽コンサート、スポーツ・イベント、祝日など）が発生するときにも変わりうる。交通パターンにおける変化があるとき、Q学習は初期には、古い（以前の）交通パターン・データを履歴交通データとして考慮してもよい。古い交通パターンの履歴交通データは、新しい交通パターンについての最適なアクションを決定することにおいてそれほど有用ではないことがありうる。そのため、Q学習は、新しい交通パターンについての最適なアクションを決定するために、より長い時間がかかることがある。
【００２４】
いくつかの実施形態では、履歴交通データは、モーター化交通到来レート、非モーター化交通到来レート、行列長さ、事故の発生、特別なイベントの発生、平均モーター化交通待ち時間、非モーター化交通待ち時間などといった、一つまたは複数の基準に基づいて、一つまたは複数の交通パターン・クラスターに分類されてもよい。たとえば、履歴交通データは、種々の交通パターンの特性を識別するために解析されてもよい。履歴交通データは、識別された特性に基づいて交通パターン・クラスターにクラスタリングされてもよい。種々の交通パターン・クラスターのそれぞれおよび種々の交通パターン・クラスターの該それぞれに関連付けられたもしくは対応する履歴交通データは、対応するQ学習カテゴリーに割り当てられてもよい。このようにして、特定の交通パターン・クラスターについてのQ学習カテゴリーは、その特定の交通パターンに関連付けられた状態／アクション／返報履歴記録（たとえば、交通信号の観察された状態、交通信号についての生成された制御アクションおよび計算された返報を含む履歴交通データ記録）を含むそれ自身の履歴交通データと関連付けられてもよい。これにより、各Q学習カテゴリーは、それ自身の履歴交通データ（たとえば、その特定の交通パターン・クラスターに関連付けられた履歴交通データ）に基づいて最適なアクションを決定できる。
【００２５】
たとえば、交通解析の知識があるオペレーターのような人が、種々の交通パターンを定義するまたは特徴付ける属性を指定することによって、Q学習カテゴリーの数を指定してもよい。交通パターンの例は、限定なしに、超低交通量、低交通量、通常交通量、多い交通量、超多交通量、交通渋滞、事故を含んでいてもよい。たとえば、種々の交通パターンは、特定の時間スロットにおいて交差点にあるまたは交差点にはいってくるモーター化ユーザーの数（たとえば車両の数）、特定の時間スロットにおいて交差点にいるまたは交差点にはいってくる非モーター化ユーザーの数および／またはそれらの組み合わせを含むその他といった、交通レートまたは交通レートの範囲によって特徴付けられてもよい。追加的または代替的に、種々の交通パターンは、行列長さ、交差点における平均的なモーター化交通の待ち時間、交差点における非モーター化交通の待ち時間および／またはその他によって特徴付けられてもよい。次いで、履歴交通データが解析されて、諸閾値に基づいて、種々の交通パターン・クラスター（たとえば、種々のQ学習カテゴリー）を決定してもよい。指定される閾値は、種々の交通パターンの数を決定してもよく、交通パターンの数は交通パターン・クラスターおよび対応するQ学習カテゴリーの数を決定する。いくつかの実施形態では、オペレーターは、ポリシー（単数または複数）に基づいてQ学習カテゴリーの数を指定してもよい。いくつかの実施形態では、これらの閾値は、たとえば履歴交通データのヒューリスティック解析に基づいて、自動的に決定されてもよい。
【００２６】
いくつかの実施形態では、履歴交通データは、各交差点における行列長さ（たとえばモーター化ユーザー行列長さおよび／または非モーター化ユーザー行列長さ）に基づいて交通パターン・クラスターにクラスタリングされてもよい。これらの行列長さは時間とともに変動する（たとえば、各時間スロットごとに変動する）からである。同じ交通パターン・クラスター内のデータは同様の属性を示してもよい。たとえば、同じ交通パターン・クラスター内の行列の長さは同じまたは同様の長さであってもよい。クラスタリングは、行列長さにおける変化（たとえばある交通パターン・クラスターを別の交通パターン・クラスターから区別するための行列長さにおける潜在的に実質的な変化）を識別して、それらの行列長さを、行列長さに基づく種々の交通パターン・クラスター（たとえば諸クラスター・グループ）に分割してもよい。履歴交通データをクラスタリングするために、非特許文献１のようなクラスタリング技法が使われてもよい。
【００２７】
いくつかの実施形態では、各交通パターン・クラスターはイベントに関連付けられていてもよい。イベントは、交通に影響しうるいかなることの生起であってもよい。たとえば、フットボール・ゲーム、サッカー・マッチおよび／またはその他のようなスポーツ・イベントが行なわれているときの交通データは、そのスポーツ・イベントが行なわれていないときの交通データとは異なることがある。もう一つの例として、朝の交通渋滞イベントを示す平日朝の交通データは、出勤する人々に起因するものである可能性がある。さらにもう一つの例として、コンサートが行なわれているときの交通データは、そのコンサートが行なわれていないときの交通データとは異なることがある。ひとたび履歴交通データが種々の交通パターン・クラスターにクラスタリングされたら、交通パターン・クラスターは、過去のイベントの発生の間に観察された交通データに基づいて、イベントに関連付けられてもよい。たとえば、交通パターン・クラスターの履歴交通データは、イベントの間に発生した交通データに比べられてもよく、その交通パターン・クラスターは、その交通パターン・クラスターの履歴交通データとそのイベントの間に発生した交通データとの間の類似性に基づいて、そのイベントと関連付けられてもよい。各イベント（たとえば交通パターン・クラスター）は、対応するQ学習カテゴリーに割り当てられてもよい。
【００２８】
いくつかの実施形態では、エージェントは、Q学習カテゴリーを変更する前に、交通パターンおよび／またはイベントの変化における偽陽性について試験してもよい。観察される交通データ（たとえば交差点の観察される状態）は、特定の交通パターンおよび／またはイベントが発生しつつあることを誤って示すことがある。たとえば、第一の交通パターン（たとえば第一の交通パターン・クラスター）が現在発生しつつあり、エージェントは、第一の交通パターン（たとえば第一の交通パターン・クラスター）に対応する第一のQ学習カテゴリーを適用していてもよい。第一の交通パターン（たとえば第一の交通パターン・クラスター）が発生している間に、第二の交通パターン（たとえば第二の交通パターン・クラスター）への変化を不適正に示す交通データが観察され、その後すぐ、第一の交通パターン（たとえば第一の交通パターン・クラスター）に関連付けられたまたはそれと整合する交通データの観察が続くことがある。この事例では、エージェントは、不必要に、現在の第一のQ学習カテゴリーから第二の交通パターン（たとえば第二の交通パターン・クラスター）に対応する第二のQ学習カテゴリーに切り換え、すぐに第一のQ学習カテゴリーに切り換えて戻ることがある。偽陽性である観察交通データに基づくQ学習パターンに切り換えることは、不必要および／または頻繁なQ学習カテゴリー変化を引き起こすことがありうる。いくつかの実施形態では、エージェントは、Q学習カテゴリーを変更する前に、特定数の連続する時間スロットにおいて新しい交通パターン・クラスターまたは新しいイベントが発生したことを判別するよう検査してもよい。いくつかの実施形態では、エージェントは、検査して、新しい交通パターン・クラスターまたは新しいイベントが、特定数の連続する時間スロットのある割合または数において発生したことを判別してから、Q学習カテゴリーを変更してもよい。いくつかの実施形態では、連続する時間スロットの前記特定数は、その新しい交通データに対応する交通パターン・クラスターの発生の頻度に基づいて（たとえば新しい交通データに対応する交通パターン・クラスターがどのくらい頻繁に過去に発生したかに基づいて）変動したり、あるいはそれに基づいて決定されたりしてもよい。
【００２９】
いくつかの実施形態では、単一のQ学習カテゴリーの事例において、エージェントは、Q学習の学習レートを変えてもよい。学習レートは、アクション‐バリュー関数を学習することにおいて、どの程度、新しく観察された交通データが、古いほうの交通データをオーバーライドするかを決定する。学習レート0はQ学習が何も学習しないようにし（たとえば、新たに観察された交通データが考慮されない）、学習レート1はQ学習に新たに観察された交通データのみを考慮させる。交通データは種々の交通パターンにカテゴリー分けされてもよく、エージェントは、交通パターン変化の頻度（たとえば交通パターンにおける変化の頻度）に基づいて、学習レートを変えてもよい。たとえば、交通パターンが頻繁に変化する場合には、エージェントは、学習レートを増して（たとえば、学習レートを1に近づける）、Q学習が最近の交通データをより多く考慮するようにしてもよい。逆に、交通パターンが長い時間期間（たとえば多数の時間スロット）にわたって変化せずに同じままである場合には、エージェントは、学習レートを徐々に下げて、Q学習が最近の履歴交通データをより多く考慮するようにしてもよい。
【００３０】
いくつかの実施形態では、エージェントはその交通データ（たとえばその交差点の交通データ）を一つまたは複数の近傍エージェント（たとえば、近傍の交差点を制御するエージェント）に送信または提供してもよい。これは、近傍のエージェントが、近傍の交差点における交通信号のための制御アクションを生成する際に、この交差点の交通データを組み込むことを許容する。追加的または代替的に、エージェントは、その交通データを中央コントローラに送信または提供してもよい。たとえば中央コントローラによる使用および／または中央コントローラによるたとえば他のエージェントへの配布のためである。これは、ある交差点の交通データの、他の交差点における一つまたは複数のエージェントへの伝搬および使用を許容する。
【００３１】
いくつかの実施形態では、エージェントは、交差点における交通信号のための制御アクションを生成する際に、一つまたは複数の近傍交差点の交通データを組み込んでもよい。たとえば、近傍エージェント（たとえば、近傍の交差点を制御しているエージェント）は、該近傍の交差点の交通データを、当該エージェントによる使用のために送信してもよい。追加的または代替的に、コーディネーター・システムが、一つまたは複数の交差点のリアルタイム交通統計、履歴交通統計などのような交通データを、当該エージェントによる使用のために送信または提供してもよい。より大きな地理的領域の交通データを含む近隣交差点交通データの統合は、当該エージェントが、交通信号制御効率を改善するよう、制御を、種々のエージェントと調整することを許容しうる。
【００３２】
いくつかの実施形態では、コーディネーター・システムは、モーター化ユーザー・ルート情報および／または非モーター化ユーザー・ルート情報を、制御アクションの生成におけるエージェントによる使用のために送信または提供してもよい。たとえば、人々は、自分たちの移動経験を改善するために自分たちのルート情報を提供し、共有することを奨励されてもよい（たとえば、都合のいい交通信号制御による移動時間の短縮などのある種の恩恵を提供される）。コーディネーター・システムは、次いで、たとえば、これらのユーザーのモバイル・アプリケーション、携帯電話、全地球測位システム（GPS）ユニット、車両ナビゲーション・システムなどからこの情報を収集してもよい。コーディネーター・システムは、一つまたは複数の交差点の交通データを、ルート情報を共有してくれた人々の一部または全員のための改善されたルートを決定するために、一つまたは複数の交差点の交通データを使ってもよい。追加的または代替的に、コーディネーター・システムは、収集されたユーザー情報の一部または全部を、制御アクションを生成する際に使うために諸エージェントに提供してもよい。
【００３３】
いくつかの実施形態では、コーディネーター・システムは、自動運転（自律）車両から、意図される行き先に関する情報を受け取ってもよい。この情報を使って、コーディネーター・システムは、意図される行き先までの候補ルートを自動運転車両に推薦してもよい。追加的または代替的に、コーディネーター・システムは、交通フローを最適化するために、ルート情報を諸エージェントと共有してもよい。
【００３４】
図１は、本稿に記載される少なくともいくつかの実施形態に基づいて構成される、交通信号によって制御される交差点１００の選択された構成要素を示している。交差点１００は十字形の四叉路の交差点であり、交通信号１０２ａ、１０２ｂ、１０２ｃおよび１０２ｄ（本稿ではまとめて交通信号１０２と称される）、歩行者用信号１０４ａ、１０４ｂ、１０４ｃ、１０４ｄ、１０４ｅ、１０４ｆ、１０４ｇおよび１０４ｈ（本稿ではまとめて歩行者用信号１０４と称される）およびセンサー１０６ａおよび１０６ｂ（本稿ではまとめてセンサー１０６と称される）を含んでいる。交差点１００に描かれている構成要素の数は例解のためであって、当業者は、異なる数の交通信号１０２、歩行者用信号１０４およびセンサー１０６があってもよいことを理解するであろう。描かれているように、交差点１００はエージェント１０８に結合されている。エージェントの任務は、交差点１００を通る交通のフローを制御することである。
【００３５】
交通信号１０２は、交差点１００を通るモーター化交通のフローを指揮する交通信号である。たとえば、交通信号１０２ａは東‐西方向のモーター化ユーザーのフローを指揮してもよく、交通信号１０２ｂは南‐北方向のモーター化ユーザーのフローを指揮してもよく、交通信号１０２ｃは西‐東方向のモーター化ユーザーのフローを指揮してもよく、交通信号１０２ｄは北‐南方向のモーター化ユーザーのフローを指揮してもよい。歩行者用信号１０４は、交差点１００を通る非モーター化交通のフローを指揮する交通信号である。たとえば、歩行者用信号１０４ａおよび１０４ｂは交差点１００の北側における東／西方向における非モーター化ユーザーのフローを指揮してもよく、歩行者用信号１０４ｃおよび１０４ｄは交差点１００の東側における北／南方向における非モーター化ユーザーのフローを指揮してもよく、歩行者用信号１０４ｅおよび１０４ｆは交差点１００の南側における東／西方向における非モーター化ユーザーのフローを指揮してもよく、歩行者用信号１０４ｇおよび１０４ｈは交差点１００の西側における北／南方向における非モーター化ユーザーのフローを指揮してもよい。
【００３６】
センサー１０６は、交差点１００にいるまたは交差点１００に接近しつつあるモーター化ユーザーおよび非モーター化ユーザーの存在を自律的に検出するよう構成されていてもよい。いくつかの実施形態では、センサー１０６は、交差点１００の画像を収集するよう構成されているビデオ・カメラであってもよく、かかる画像から、モーター化ユーザーの存在および非モーター化ユーザーの存在が判別されてもよい。画像は、モーター化ユーザー存在データ、非モーター化ユーザー存在データまたはその両方として分類されてもよい。エージェント１０８については、図３との関連でさらに後述する。いくつかの実施形態では、センサー１０６の少なくともいくつかは、空気品質モニター、金属検出器、赤外線検出器、歩行者横断用ボタンなどであってもよい。
【００３７】
図２は、本稿に記載される少なくともいくつかの実施形態に基づいて構成される、環境２００および環境２００内の選択された装置の概観を示している。環境２００は、図３との関連でさらに後述する一つまたは複数のエージェント１０８ａ〜１０８ｎを含んでいてもよい。エージェント１０８ａ〜１０８ｎは本稿では個々にエージェント１０８と称される、あるいはまとめてエージェント１０８と称されることがある。環境２００に描かれているエージェントの数は例解のためであり、当業者は、異なる数のエージェント１０８があってもよいことを理解するであろう。エージェント１０８ａ〜１０８ｎは、ネットワーク２０４を通じた互いとのおよび一つまたは複数のリモート・コンピューティング・システム、たとえばコーディネーター・システム２０２との論理的な接続を使うネットワーク接続された環境において動作するものとして示されている。ネットワーク２０４は、ローカル・エリア・ネットワーク、広域ネットワーク、インターネットおよび／または他の有線もしくは無線ネットワークであることができる。
【００３８】
図３は、本稿に記載される少なくともいくつかの実施形態に基づいて構成される、エージェント１０８の選択された構成要素を示している。描かれているように、エージェント１０８は、センサー・モジュール３０２、制御アクション計算モジュール３０４、信号制御モジュール３０６、通信モジュール３０８および情報データ記憶部３１０を含んでいる。さまざまな実施形態において、特許請求される技術の範囲から外れることなく、追加的な構成要素（図示せず）または図示された構成要素の部分集合が用いられることができる。
【００３９】
センサー・モジュール３０２は、交差点に配備されるセンサーからセンサー・データを受信（取得）するよう、該交差点に配備されるセンサーと通信するよう構成されていてもよい。たとえば、センサーがビデオ・カメラである事例では、センサー・モジュール３０２は、画像および／またはビデオ・フィードを、結合されたセンサーから受け取ってもよい。いくつかの実施形態では、センサー・モジュール３０２は、結合されたセンサーを制御するよう構成されてもよい。たとえば、センサー・モジュール３０２は、センサーに、センサーを動作させるための命令（たとえば、電源オン、電源オフ、再起動、測位および／または動き（movement）命令など）を送ってもよい。
【００４０】
制御アクション計算モジュール３０４は、交差点に配備されている交通信号を制御するよう構成されてもよい。たとえば、制御アクション計算モジュール３０４は、交差点における交通信号の動作を指揮する制御アクションを、センサー・モジュール３０２によって得られたセンサー・データに基づいて生成してもよい。よって、制御アクション計算モジュール３０４は、交差点におけるモーター化交通および非モーター化交通の存在を考慮に入れて、交通信号（モーター化交通のための交通信号および非モーター化交通のための交通信号）のための制御アクションを生成することができる。いくつかの実施形態では、制御アクション計算モジュール３０４は、交通信号のための制御アクションを生成する際に一つまたは複数の条件を適用してもよい。追加的または代替的に、制御アクション計算モジュール３０４は、交通信号のための制御アクションを生成する際に、一つまたは複数の他のエージェント（たとえば他の交差点を制御するエージェント）からの交通データを組み込んでいてもよい。追加的または代替的に、制御アクション計算モジュール３０４は、交通信号のための制御アクションを生成する際に、当該交差点および／または一つまたは複数の他の交差点の履歴交通データを組み込んでもよい。
【００４１】
いくつかの実施形態では、制御アクション計算モジュール３０４は、交差点におけるモーター化ユーザーおよび非モーター化ユーザー両方を考慮する交通信号のための制御アクションを生成するために、Q学習を適用してもよい。先に論じたように、Q学習は、任意の所与の（有限）マルコフ決定過程（MDP）のための最適なアクション選択ポリシーを決定するために使われることができる。Q学習は、所与の状態（たとえば交通信号の所与の状態）において所与のアクションを取る（たとえば所与の制御アクションを生成する）ことの期待される効用を提供するアクション‐バリュー関数（action-value  function）を学習し、その後は最適ポリシーに従うことによって機能する。
【００４２】
運輸ネットワーク（たとえば交差点を含む道路のネットワーク）は有向グラフに抽象化されうる。図４は、例示的な運輸ネットワークのあるセグメントに対応する例示的な有向グラフを示している。各交差点は、有向グラフ中の頂点において表わされてもよく、道路は有向グラフ中のエッジに対応してもよい。フロー（たとえば有向の接続）は、車両交通のような交通を表わしうる。ここで、qijは交差点iから交差点jへの行列〔キュー（queue）〕長さである。たとえば、この有効グラフに描かれるように、q41は交差点４から交差点１への行列長さである。
【００４３】
例として、モーター化されたユーザーが車両であり、非モーター化ユーザーが歩行者であるとする。すると、交差点に配備されている交通信号のさまざまな状態は、交差点にはいってくる方向におけるさまざまな行列における車両の数および歩行者の数に基づいていてもよい。こうして、任意の交差点iについて、その交差点における交通信号の状態は、行列のすべての長さを含む集合であり、次式で表わされうる。
【数１】
2018147489.tif 000003
ここで、Sti,dは日付dおよび時刻tにおける交差点iにおける交通信号の状態であり、qtji,dは日付dおよび時刻tにおける交差点jからiへの車両についての行列長さであり、mtji,d,Lは日付dおよび時刻tにおける交差点jからiへの左側の歩行者についての行列長さであり、mtji,d,Rは日付dおよび時刻tにおける交差点jからiへの右側の歩行者についての行列長さである。qtji,d、mtji,d,L、mtji,d,Rは確率過程に従うので、Sti,dは異なるtについて多様であることがある。
【００４４】
アクションaについて、ある交差点における交通信号のための可能なアクションのアクション集合Aは、その交差点の位置に適用可能な交通規則に基づいて設計されてもよい。図５に示されるような例示的な十字形の四叉路交差点については、適用可能な交通規則による指定により、アクション集合は八つの可能なアクションを含んでいてもよい。つまり、|A|＝8である。よって、この十字形の四叉路交差点についての例示的なアクション集合（図６）によって示されるように、任意の時間スロットにおいて選択されうるアクションは{ai∈A｜i＝1,2,…,8}だけである。図６に描かれるように、Lijは、領域iから領域jへの交通のフローを制御する交通信号であり、L'ijは領域iから領域jへの交通のフローを制御する左折交通信号である。当該交差点自身は領域1として表わされていることを注意しておく。すると、可能なアクション（たとえば、これらの交通信号についての制御アクション）は次のように表わせる。
【表１】
2018147489.tif 000004
ここで、「1」は青信号を表わし、「0」は赤信号を表わす。
【００４５】
同様に、図７に示されるような例示的な丁字形の三叉路交差点については、適用可能な交通規則による指定により、アクション集合は三つの可能なアクションを含んでいてもよい。つまり、|A|＝3である。よって、この丁字形の三叉路交差点についての例示的なアクション集合（図８）によって示されるように、任意の時間スロットにおいて選択されうるアクションは{ai∈A｜i＝1,2,3}だけである。図８に描かれるように、Lijは、領域iから領域jへの交通のフローを制御する交通信号であり、L'ijは領域iから領域jへの交通のフローを制御する左折交通信号である。交差点自身は領域1として表わされていることを注意しておく。すると、可能なアクション（たとえば、これらの交通信号についての制御アクション）は次のように表わせる。
【表２】
2018147489.tif 000005
ここで、「1」は青信号を表わし、「0」は赤信号を表わす。
【００４６】
時間スロットは、運用ポリシーに基づいて設定されることができる。たとえば、交通信号を頻繁に変える必要性を回避するために、時間スロットは比較的長めの時間期間（たとえば5ないし10秒）に設定されることができる。逆に、より速いQ学習アルゴリズム収束を得るために、時間スロットは比較的短めの時間期間（たとえば1秒）に設定されることができる。こうして、時間期間Tについて、アクションについての確率は次のように表わされてもよい。
【数２】
2018147489.tif 000006
ここで、aiは集合|A|におけるアクションiであり、N(ai)はその時間期間T内のaiの生起数である。上記の十字形交差点の例については、時間期間Tについてのアクションのシーケンスが次のようなものであるとする。
【表３】
2018147489.tif 000007
すると、時間期間T内の各アクションについての導出される確率は次のようになりうる。
【表４】
2018147489.tif 000008
【００４７】
この例において、目的は、当該交差点における、モーター化および非モーター化ユーザー行列両方のすべての行列の長さを最小にすることであるとする。すると、交差点iにおける直接的なコスト（cost）／返報（reward）は次のように表わされてもよい。
【数３】
2018147489.tif 000009
ここで、Rti,dは日付dおよび時刻tにおける交差点iでの返報であり；ati,dは日付dおよび時刻tにおける交差点iでのアクションであり；atj,dは日付dおよび時刻tにおける交差点jでのアクションであり；Sti,dは日付dおよび時刻tにおける交差点iでの状態であり；Stj,dは日付dおよび時刻tにおける交差点jでの状態であり；wt1,dは交差点iでの局所的な車両行列を呈示する重みであり；wt2,dは交差点iの近傍（j∈Ni）での近傍車両行列を呈示する重みであり；wt3,dは交差点iでの全歩行者行列を呈示する重みであり；|Ni|は交差点iの近傍交差点の数であり；qtji,dは日付dおよび時刻tにおける交差点jから交差点iへの行列長さであり；mtji,d,Lは日付dおよび時刻tにおける交差点jからiへの左側における歩行者についての行列長さであり；mtji,d,Rは日付dおよび時刻tにおける交差点jからiへの右側における歩行者についての行列長さである。上述したように、Q学習は、所与の状態（たとえば交通信号の所与の状態）において所与のアクションを取る（たとえば所与の制御アクションを生成する）ことの期待される効用を提供するアクション‐バリュー関数（action-value  function）を学習し、その後は最適ポリシーに従うことによって機能する。Q値計算は次のように表わせる
【数４】
2018147489.tif 000010
ここで、(Qti,d,ati,d)は所与の状態‐アクション対(Sti,d,ati,d)についてのQ値であり；Rti,dは日付dおよび時刻tにおける、式[1]によって表わされる交差点iにおける返報であり；ati,dは日付dおよび時刻tにおける交差点iにおけるアクションであり；Sti,dは日付dおよび時刻tにおける交差点iにおける状態であり；αは学習レート（0≦α≦1）であり；γは割引因子（0≦γ≦1）である。
【００４８】
上記の式[1]において、Σj∈Ni  qtji,dは交差点jから交差点iへのはいってくる車両行列であり；
【数５】
2018147489.tif 000011
は、交差点iから交差点jへの出て行く車両交通を含む、すべての近傍交差点jにおける全車両行列であり；
【数６】
2018147489.tif 000012
は交差点iにおける全歩行者行列である。|Ni|は十字形の四叉路交差点については4であり、|Ni|は丁字形の三叉路交差点については3である。式[1]において、三つの加法項
【数７】
2018147489.tif 000013
は関連付けられたそれぞれの重みwt1,d、wt2,d、wt3,d/2をもち、ここで、重みは、その加法項に割り当てられる優先度に相関する。すなわち、優先度が高いほど重みが高くなる。日付dおよび時刻tにおける近傍交差点における重みの合計は、1になる。よって、三叉路の丁字交差点については、Wtd＝{wt1,d，wt2,d，wt3,d}であり、wt1,d＋wt2,d＋wt3,d＝1である。
【００４９】
式[1]によれば、返報Rti,dは、日付dおよび時刻tにおける交差点iにおける行列長さである。よって、目的は交差点iにおけるすべての行列の長さを最小化することであるので、Rti,dを最小にするアクションが選ばれてもよい。
【００５０】
上記で論じたように、いくつかの実施形態では、履歴交通データがアクションの決定に組み込まれてもよい。たとえば、交差点iにおける履歴交通データに基づいて推定瞬時返報を計算するために組み込まれる自己回帰和分移動平均（ARIMA）モデルは、次のように表わされてもよい。
【数８】
2018147489.tif 000014
ここで、Rti,dは日付dおよび時刻tにおける交差点iでの返報であり；nは遅延演算子であり；pは自己回帰項の数（考慮すべき履歴交通データの日付の数）であり；qは移動平均項のための日付の数であり；αnはモデルの自己回帰部分のパラメータ（たとえば重み）であり；θnはモデルの移動平均部分のパラメータ（たとえば重み）であり；εti,dは日付dの交差点iにおける誤差項（すなわち、その交差点における行列長さの分散（variance））である。ここでもまた、目的は交差点iにおけるすべての行列の長さを最小化することなので、Rti,dを最小にするアクションが選ばれてもよい。
【００５１】
いくつかの実施形態では、交差点の交通データは近傍交差点にブロードキャストされてもよい。よって、近隣の交差点からの交通データが、特定の交差点におけるアクションを決定するために組み込まれてもよい。交通データが行列長さであるとすると、交差点jにおいて、近傍交差点からの交通データは次のように表わされてもよい。
【数９】
2018147489.tif 000015
ここで、Ttjは、交差点jのすべての近傍交差点からの時刻tにおける平均車両行列長さであり；qtkj,dは日付dおよび時刻tにおける交差点kからjへの車両についての行列長さであり；|Nj|は交差点jの近傍交差点の数である。すべての近傍交差点の平均行列長さの和はΣTtjとなり、これが上記の式[1]における中央の加法項を置き換えることができる。
【００５２】
いくつかの実施形態では、アクションの決定において、一つまたは複数の条件が適用される必要があることがある。通常動作において、ある種のアクションが他のアクションの次にくることができないことがありうる。たとえば、上記の十字形の四叉路交差点では、アクションに対する条件は、日付dおよび時刻tにおけるアクションが1（ati,d、i∈1）である場合は日付dにおける時刻t＋1におけるアクションは5,6,7,8（at+1i,d、j∈{5,6,7,8}）であることはできず；日付dおよび時刻tにおけるアクションが5（ati,d、i∈5）である場合は日付dにおける時刻t＋1におけるアクションは1,2,3,4（at+1i,d、j∈{1,2,3,4}）であることはできず；日付dおよび時刻tにおけるアクションが2または3（ati,d、i∈{2,3}）である場合は日付dにおける時刻t＋1におけるアクションは5（at+1i,d、j∈{5}）であることはできず；日付dおよび時刻tにおけるアクションが5または7（ati,d、i∈{5,7}）である場合は日付dにおける時刻t＋1におけるアクションは1（at+1i,d、j∈{1}）であることはできないということを指定してもよい。上記の式[1]は、アクションに対するいかなる条件も考慮に入れてないので、条件を考慮に入れるための一つの解決策は、Q値を昇順（たとえば優先度行列（priority  queue））にソートして、条件を満たす最小のものを選択するということでありうる。もう一つの解決策は、条件のいずれかが満たされない場合には返報を非常に大きな数に設定する、たとえばRtd(ati,d，atj,d，atd)＝MAXとすることであってもよい。ここで、Rtdは日付dおよび時刻tにおける返報であり、ati,dは日付dおよび時刻tにおけるアクションであり、stdは日付dおよび時刻tにおける状態である。返報を非常に大きな数に割り当てることは、そのアクションが選択されないことにつながる。
【００５３】
もう一つの条件の例は、交差点を渡るよう歩行者を指揮する交通信号は、歩行者が交差点を渡っている間は赤になるべきではないというものであってもよい。この条件を考慮に入れるための一つの解決策は、時間スロットを、歩行者が交差点を渡るために十分な時間を与えるよう、より長い継続時間に設定することであってもよい。もう一つの解決策は、現在の時間スロット（たとえば比較的短い継続時間）を維持するが、交差点を渡る歩行者がいないときにのみアクションを変えることであってもよい。たとえば、交差点に配備されたセンサーが、交差点を歩行者が渡っているかどうかを判定するために使用されうる情報を提供することができてもよい。もう一つの解決策は、歩行者が交差点を渡っている場合に、ある特定の数の時間スロットにわたって、アクションを変えないというものであってもよい。
【００５４】
信号制御モジュール３０６は、制御アクション計算モジュール３０４によって生成された制御アクションに基づいて交通信号の動作を制御（指揮）するために、その交差点における諸交通信号と通信するよう構成されていてもよい。たとえば、信号制御モジュール３０６は、交通信号の動作を指揮する命令（たとえば、交通信号の型などに依存して電気信号または他の信号）を送信することによって、交通信号の動作を制御してもよい。通信モジュール３０８は、一つまたは複数のリモート・コンピューティング装置またはコンピューティング・システム、たとえば他のリモート・エージェント１０８、コーディネーター・システム２０２などに結合するよう構成されていてもよい。よって、通信モジュール３０８は、エージェント１０８による、一つまたは複数の外部コンポーネントとの通信を容易にしてもよい。たとえば、制御アクション計算モジュール３０４は通信モジュール３０８を利用して、たとえば近傍交差点の交通データを受信するために、近傍エージェントと通信してもよい。いくつかの実施形態では、センサー・モジュール３０２および／または信号制御モジュール３０６は通信モジュール３０８を利用して、それぞれセンサーおよび／または交通信号と通信してもよい。情報データ記憶部３１０は、データ、たとえば交通データ、センサー・データまたはエージェント１０８によって使用されうる他のデータを記憶するよう構成されていてもよい。情報データ記憶部３１０は、記憶されたデータまたはデータ構造を担持するまたは有するために好適ないかなるコンピュータ可読記憶媒体を使って実装されてもよい。
【００５５】
図９は、本稿に記載される少なくともいくつかの実施形態に基づいて構成されるコーディネーター・システム２０２の選択されたコンポーネントを示している。描かれるように、コーディネーター・システム２０２は、中央インテリジェンス・モジュール９０２、通信モジュール９０４および情報データ記憶部９０６を含む。さまざまな実施形態において、特許請求される技術の範囲から外れることなく、追加的なコンポーネント（図示せず）または示されるコンポーネントの部分集合が用いられることができる。
【００５６】
中央インテリジェンス・モジュール９０２は、エージェント１０８から交通データ（たとえば現在の交通データ、履歴交通データ、センサー・データ、動作データなど）を受領する（取得する）よう、一つまたは複数のエージェント１０８と通信するよう構成されていてもよい。中央インテリジェンス・モジュール９０２は、交通データを一つまたは複数のエージェント１０８に提供することもしてもよい。たとえば、制御アクションを生成するおよび／または他の仕方でそれぞれの交差点を制御する際に使うためである。
【００５７】
いくつかの実施形態では、中央インテリジェンス・モジュール９０２は、一つまたは複数のエージェントによる使用のためのルート情報を提供するよう構成されていてもよい。たとえば、モーター化されたユーザーおよび／または非モーター化されたユーザーが、その移動ルート情報を提供してもよい。中央インテリジェンス・モジュール９０２は、該移動ルート情報を処理して、ある地理的領域（たとえば一つまたは複数の交差点など）に関連する移動ルート情報を決定してもよい。次いで、中央インテリジェンス・モジュール９０２は、前記一つまたは複数の交差点を制御するエージェント（単数または複数）に、該関連する移動ルート情報を、該エージェント（単数または複数）による使用のために、提供することができる。たとえば交通信号のための制御アクションを生成するためである。
【００５８】
通信モジュール９０４は、一つまたは複数のリモート・コンピューティング装置またはコンピューティング・システム、たとえば一つまたは複数のエージェント、一つまたは複数の他のコーディネーター・システム、一つまたは複数の交通制御システム、リモート・データの源などに結合するよう構成されていてもよい。上記で論じた通信モジュール３０８と同様に、通信モジュール９０４は、コーディネーター・システム２０２による一つまたは複数の外部コンポーネントとの通信を容易にする。たとえば、中央インテリジェンス・モジュール９０２は、通信モジュール９０４を利用して、たとえばエージェントによって制御される交差点の交通データを受信するために、エージェントと通信してもよい。情報データ記憶部９０６は、データ、たとえば交通データ、モーター化ユーザー・データ、非モーター化ユーザー・データまたはコーディネーター・システム２０２によって使用されうる他のデータを記憶するよう構成されていてもよい。情報データ記憶部３１０と同様に、情報データ記憶部９０６は、記憶されたデータまたはデータ構造を担持するまたは有するために好適ないかなるコンピュータ可読記憶媒体を使って実装されてもよい。
【００５９】
図１０は、本稿に記載される少なくともいくつかの実施形態に基づいて構成された、交差点における交通信号のための制御アクションを生成するために使用されうる、例示的な汎用コンピューティング・システム１０００の選択されたコンポーネントを示している。コンピューティング・システム１０００は、図３のエージェント１０８および／または図９のコーディネーター・システム２０２に関連付けられたコンポーネントおよび／またはモジュールのいくつかまたは全部に関連する一つまたは複数の動作を実装または指揮するよう構成されていてもよい。コンピューティング・システム１０００は、プロセッサ１００２、メモリ１００４およびデータ記憶１００６を含んでいてもよい。プロセッサ１００２、メモリ１００４およびデータ記憶１００６は通信上結合されていてもよい。
【００６０】
一般に、プロセッサ１００２は、さまざまなコンピュータ・ハードウェア、ファームウェアまたはソフトウェア・モジュールを含むいかなる好適な特殊目的または汎用のコンピュータ、コンピュータ・エンティティまたはコンピューティングもしくは処理装置を含んでいてもよく、任意の適用可能なコンピュータ可読記憶媒体に記憶されたプログラム命令のような命令を実行するよう構成されていてもよい。たとえば、プロセッサ１００２は、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ（DSP）、特定用途向け集積回路（ASIC）、フィールドプログラマブルゲートアレイ（FPGA）またはプログラム命令を解釈および／または実行するおよび／またはデータを処理するよう構成された他の任意のデジタルまたはアナログ回路を含んでいてもよい。図１０では単一のプロセッサとして示されているが、プロセッサ１００２は、個々にまたは集団的に本開示に記述される任意の数の動作を実行するまたはその実行を指揮するよう構成された、任意の数のプロセッサおよび／またはプロセッサ・コアを含んでいてもよい。さらに、プロセッサの一つまたは複数は、異なるサーバーのような、一つまたは複数の異なる電子装置に存在していてもよい。
【００６１】
いくつかの実施形態では、プロセッサ１００２は、メモリ１００４、データ記憶１００６またはメモリ１００４およびデータ記憶１００６に記憶されているプログラム命令を解釈および／または実行するおよび／またはデータを処理するよう構成されていてもよい。いくつかの実施形態では、プロセッサ１００２は、データ記憶１００６からプログラム命令を取ってきて、該プログラム命令をメモリ１００４にロードしてもよい。プログラム命令がメモリ１００４にロードされた後、プロセッサ１００２はプログラム命令を実行してもよい。
【００６２】
たとえば、いくつかの実施形態では、エージェント１０８および／またはコーディネーター・システム２０２のコンポーネントおよび／またはモジュールの任意の一つまたは複数は、データ記憶１００６にプログラム命令として含まれていてもよい。プロセッサ１００２は、プログラム命令の一部または全部をデータ記憶１００６から取ってきて、取ってこられたプログラム命令をメモリ１００４にロードしてもよい。プログラム命令をメモリ１００４にロードした後、プロセッサ１００２は、コンピューティング・システムが該命令によって指揮されるように動作を実施するよう、プログラム命令を実行してもよい。
【００６３】
メモリ１００４およびデータ記憶１００６は、記憶されているコンピュータ実行可能命令またはデータ構造を担持するまたは有するコンピュータ可読記憶媒体を含んでいてもよい。そのようなコンピュータ可読記憶媒体は、プロセッサ１００２のような汎用または特殊目的コンピュータによってアクセスされうるいかなる利用可能な媒体を含んでいてもよい。限定ではな例として、そのようなコンピュータ可読記憶媒体は、ランダムアクセスメモリ（RAM）、読み出し専用メモリ（ROM）、電気的に消去可能なプログラム可能型読み出し専用メモリ（EEPROM）、コンパクトディスク読み出し専用メモリ（CD-ROM）または他の光ディスク記憶、磁気ディスク記憶または他の磁気記憶デバイス、フラッシュメモリデバイス（たとえば半導体メモリデバイス）または他の任意の記憶媒体を含む有体または非一時的なコンピュータ可読記憶媒体を含んでいてもよく、それらの媒体は、コンピュータ実行可能命令またはデータ構造の形の特定のプログラム・コードを担持または記憶するために使われてもよく、汎用または特殊目的コンピュータによってアクセスされてもよい。上記の組み合わせが、コンピュータ可読記憶媒体の範囲内に含まれてもよい。コンピュータ実行可能命令は、たとえば、ある種の動作または一群の動作をプロセッサ１００２に実行させるよう構成された命令およびデータを含んでいてもよい。
【００６４】
本開示の範囲から外れることなく、コンピュータ・システム１０００に修正、追加または省略がなされてもよい。たとえば、いくつかの実施形態では、コンピューティング・システム１０００は、本願で明示的に図示または記述されないことがある任意の数の他のコンポーネントを含んでいてもよい。
【００６５】
図１１は、本稿に記載される少なくともいくつかの実施形態に従って構成された、図３のエージェント１０８のようなエージェントによって実行されうる、少なくとも部分的には非モーター化ユーザー行列長さに基づいて交差点における交通信号のための制御アクションを生成するための例示的プロセスを示す流れ図１１００である。例示的なプロセスおよび方法は、ブロック１１０２、１１０４、１１０６、１１０８および／または１１１０の一つまたは複数によって示される一つまたは複数の動作、機能またはアクションを含んでいてもよく、いくつかの実施形態では、図１０のコンピューティング・システム１０００のようなコンピューティング・システムによって実行されてもよい。ブロック１１０２〜１１１０に記載される動作は、コンピューティング・システム１０００のメモリ１００４および／またはデータ記憶１００６のようなコンピュータ可読媒体に、コンピュータ実行可能命令として記憶されてもよい。
【００６６】
流れ図１１００によって描かれるように、交差点における交通信号のための制御アクションを、少なくとも部分的には非モーター化ユーザー行列長さに基づいて生成するための例示的プロセスは、ブロック１１０２（「モーター化ユーザー行列長さを判別」）で始まってもよく、ここで、交差点に配備された交通信号を制御するよう構成されたエージェントが、交差点におけるモーター化ユーザーの行列の長さを判別してもよい。任意的に、エージェントは、その交通データ（たとえばモーター化ユーザー行列の長さ）をたとえば一つまたは複数の近傍エージェントおよび／または一つまたは複数の交通コーディネーター・システムに送信してもよい。
【００６７】
ブロック１１０２の次にブロック１１０４（「非モーター化ユーザー行列長さを判別」）がきてもよく、ここで、前記交差点に配備された交通信号を制御するよう構成されたエージェントが、交差点における非モーター化ユーザーの行列の長さを判別してもよい。任意的に、エージェントは、その交通データ（たとえば非モーター化ユーザー行列の長さ）をたとえば一つまたは複数の近傍エージェントおよび／または一つまたは複数の交通コーディネーター・システムに送信してもよい。
【００６８】
ブロック１１０４の次にブロック１１０６（「制御アクションを決定」）がきてもよく、ここで、前記交差点に配備された交通信号を制御するよう構成されたエージェントが、交差点における交通信号のためのアクション（制御アクション）を、モーター化ユーザーおよび非モーター化ユーザーの行列の前記の判別された長さに基づいて、決定してもよい。いくつかの実施形態では、エージェントは、その交差点および／または一つまたは複数の他の交差点の履歴交通データを、アクションの決定に組み込んでもよい。いくつかの実施形態では、エージェントは、一つまたは複数の近傍の交差点の交通データを、アクションの決定に組み込んでもよい。
【００６９】
ブロック１１０６の次に判断ブロック１１０８（「制御アクションが条件を満たすか？」）がきてもよく、ここで、前記交差点に配備された交通信号を制御するよう構成されたエージェントが、前記アクションがある条件（たとえば、交通信号の動作に課される条件）を満たすかどうかを判定してもよい。エージェントが前記アクションが条件のいずれかを満たさないと判定する場合、判断ブロック１１０８の次にはブロック１１０６がきてもよく、ここで、エージェントは、その交差点における交通信号のための別のアクションを決定してもよい。
【００７０】
そうでなく、エージェントが前記アクションは前記条件のすべてを満たすと判定する場合には、判断ブロック１１０８の次にはブロック１１１０（「制御アクションを生成」）がきてもよく、ここで、前記交差点に配備された交通信号を制御するよう構成されたエージェントが、前記アクションに従って交差点における交通信号を制御してもよい（たとえば、信号制御モジュール３０６に、前記アクションと整合する仕方で交通信号の動作を制御させる）。
【００７１】
当業者は、本稿に開示されるこのおよび他のプロセスおよび方法について、該プロセスおよび方法において実行される機能が異なる順序で実装されてもよいことを認識するであろう。追加的または代替的に、二つ以上の動作が同時に実行されてもよい。さらに、概説されたアクションおよび動作は例として与えられているだけであって、開示される実施形態の本質を損なうことなく、アクションおよび動作のいくつかが任意的であったり、より少数のアクションおよび動作に組み合わされたり、あるいは追加的なアクションおよび動作に展開されたりしてもよい。
【００７２】
図１２は、本稿に記載される少なくともいくつかの実施形態に従って構成される、複数のQ学習カテゴリーについての例示的なアーキテクチャーを示している。本アーキテクチャーは、データ・コレクション層１２０２、クラスタリング層１２０４および交通信号制御層１２０６を含んでいてもよい。データ・コレクション層１２０２は、ネットワーク接続された環境１２０８において動作する一つまたは複数のコンピューティング・システムを含んでいてもよい。描かれているように、ネットワーク環境１２０８は、一つまたは複数のネットワーク装置１２１４ａおよび１２１４ｂを含むネットワークを通じて互いに接続され、中央データ記憶部１２１２に接続された一つまたは複数のサーバー・コンピューティング・システム１２１０ａ〜１２１０ｆを含んでいてもよい。サーバー・コンピューティング・システム１２１０ａ〜１２１０ｆは、本稿において個々にサーバー・コンピューティング・システム１２１０と称されることもあり、あるいは本稿においてまとめてサーバー・コンピューティング・システム１２１０と称されることもある。ネットワーク装置１２１４ａおよび１２１４ｂは、本稿において個々にネットワーク装置１２１４と称されることもあり、あるいは本稿においてまとめてネットワーク装置１２１４と称されることもある。中央データ記憶部１２１２は、たとえば交通データ、センサー・データおよびサーバー・コンピューティング・システム１２１０によって使用されうる他のデータのようなデータを記憶するよう構成されてもよい。中央データ記憶部１２１２は、記憶されたデータまたはデータ構造を担持するまたは有するために好適ないかなるコンピュータ可読記憶媒体を使って実装されてもよい。ネットワーク装置１２１４は、一つまたは複数のネットワークを通じて、また一つまたは複数のネットワークの間でデータおよび／または情報（たとえばデータ・パケット）の送受信を容易にする、ルーターまたは他のネットワーキング装置のようなコンピューティング・システムまたは装置であってもよい。ネットワークは、ローカル・エリア・ネットワーク、広域ネットワーク、インターネットおよび／または他の有線もしくは無線ネットワークであることができる。
【００７３】
いくつかの実施形態では、各サーバー・コンピューティング・システム１２１０は、エージェント１０８のようなエージェントを含んでいてもよく、図１の交差点１００のような交差点を通る交通のフローを制御するよう構成されてもよい。たとえば、サーバー・コンピューティング・システム１２１０は、交差点に配備されてもよく、交差点の交通データを中央データ記憶部１２１２に送ってもよい。交通データは、その交差点を通る交通の制御に関する情報、たとえば交通信号状態情報、制御アクション、その交差点に配備されたセンサーからのデータなどを含んでいてもよい。中央データ記憶部１２１２は、サーバー・コンピューティング・システム１２１０によって提供される履歴交通データを記憶してもよく、該履歴交通データの貯蔵所であってもよい。各交差点に配備されるサーバー・コンピューティング・システム１２１０は、その交差点を通る交通のフローを制御するために交通データ解析および制御決定を実行する（たとえば、その交差点にある交通信号のための制御アクションを生成する）ために、中央データ記憶部１２１２を参照するよう構成されてもよい。いくつかの実施形態では、サーバー・コンピューティング・システム１２１０は、前記交通データの一部または全部を、図３の情報データ記憶部３１０のようなローカルなデータ記憶部に記憶してもよい。
【００７４】
クラスタリング層１２０４は、各交差点における履歴交通データの諸グループまたは諸クラスターを含んでいてもよい。各交差点の履歴交通データは、一つまたは複数の交通パターン・クラスターにグループ分けまたはクラスタリングされてもよい。各交通パターン・クラスターは、それぞれの交通パターン・クラスターに関連付けられた状態／アクション／返報履歴レコードを含んでいてもよい。描かれるように、クラスタリング層１２０４は、一つまたは複数の交差点１２１６ａ〜１２１６ｃにおける複数の交通パターン・クラスターにクラスタリングされた履歴交通データを含んでいてもよい。交差点１２１６ａ〜１２１６ｃは本稿では個々に交差点１２１６と称されることがあり、あるいはまとめて交差点１２１６と称されることもある。たとえば、交差点１２１６（たとえば交差点１２１６ａ）におけるサーバー・コンピューティング・システム１２１０（たとえばサーバー・コンピューティング・システム１２１０ａ）が、交差点１２１６（たとえば交差点１２１６ａ）の履歴交通データを、一つまたは複数の交通パターン・クラスターにクラスタリングしてもよい。いくつかの実施形態では、交差点１２１６におけるサーバー・コンピューティング・システム１２１０は、交差点１２１６についての交通パターン・クラスターを生成する際に、一つまたは複数の近傍交差点の履歴交通データを考慮してもよい。いくつかの実施形態では、近傍交差点の履歴交通データは、該履歴交通データの関連度に従って重みを割り当てられてもよい。たとえば、割り当てられた重みは、近傍交差点の、交差点１２１６への近さまたは近接性に基づいていてもよい。
【００７５】
交通信号制御層１２０６は、交通信号についての制御アクションを生成するために適用（たとえば使用）されうるQ学習カテゴリーを含んでいてもよい。描かれているように、各Q学習カテゴリーは、各交差点１２１６における対応する交通パターン・クラスターに関連付けられていてもよい。よって、各Q学習カテゴリーは、当該Q学習カテゴリーに対応する交通パターン・クラスターに関連付けられた状態／アクション／返報履歴レコードを含む履歴交通データに基づいて、交差点における交通信号についての制御アクションを決定するために使われてもよい。たとえば、交差点１２１６（たとえば交差点１２１６ｂ）にあるサーバー・コンピューティング・システム１２１０（たとえばサーバー・コンピューティング・システム１２１０ｂ）は、交差点１２１６（たとえば交差点１２１６ｂ）において現在観察されている交通データに基づいてQ学習カテゴリーを選択し、選択されたQ学習カテゴリーを適用して、交差点１２１６（たとえば交差点１２１６ａ）における交通信号のための制御アクションを生成してもよい。
【００７６】
本開示の範囲から外れることなく、環境１２０８に修正、追加または省略がなされてもよい。たとえば、六つのサーバー・コンピューティング・システム１２１０、一つの中央データ記憶部１２１２および二つのネットワーク装置１２１４として図示されているが、環境１２０８はいかなる数のサーバー・コンピューティング・システム、中央データ記憶部および／またはネットワーク装置を含んでいてもよく、たとえば数百もしくは数千のサーバー・コンピューティング・システム、二つ以上の中央データ記憶部および異なる数のネットワーク装置を含んでいてもよい。もう一つの例として、環境１２０８は、コーディネーター・システム２０２のような一つまたは複数の他のコンピューティング・システムをも含んでいてもよい。もう一つの例として、三つの交差点１２１６ａ〜１２１６ｃを含み、各交差点１２１６が四つの交通パターン・クラスターを含むものとして図示されているが、クラスタリング層１２０４は異なる数の交差点を含んでいてもよく、各交差点は異なる数の交通パターン・クラスターを含んでいてもよい。さらなる例として、各交差点１２１６は同数の交通パターン・クラスターを含むものとして図示されているが、一つまたは複数の交差点１２１６が異なる数の交通パターン・クラスターを含んでいてもよい。
【００７７】
図１３は、本稿に記載される少なくともいくつかの実施形態に基づいて構成された、交差点１３００における例示的な交通パターン・クラスターとQ学習カテゴリーの関連付けを示す図である。描かれているように、交差点１３００は四つの交通パターン・クラスターTP1  １３０２ａ、TP2  １３０２ｂ、TP3  １３０２ｃおよびTP4  １３０２ｄならびに四つのQ学習カテゴリーQ1  １３０４ａ、Q2  １３０４ｂ、Q3  １３０４ｃおよびQ4  １３０４ｄを含む。Q学習カテゴリーQ1  １３０４ａは交通パターン・クラスターTP1  １３０２ａに対応し、Q学習カテゴリーQ2  １３０４ｂは交通パターン・クラスターTP2  １３０２ｂに対応し、Q学習カテゴリーQ3  １３０４ｃは交通パターン・クラスターTP3  １３０２ｃに対応し、Q学習カテゴリーQ4  １３０４ｄは交通パターン・クラスターTP4  １３０２ｄに対応する。いくつかの実施形態では、交通データ解析の知識があるオペレーターが、Q学習カテゴリーの数および各Q学習カテゴリーについての対応する閾値を、たとえば履歴交通統計および／または運用ポリシーに基づいて決定してもよい。履歴交通統計の例は、モーター化交通到来レートまたは一日のうちの何らかの時間窓についての到来するモーター化車両の数、非モーター化交通到来レートまたは一日のうちの何らかの時間窓についての到来する非モーター化ユーザーの数、一日における何らかの時間窓についての諸交差点における行列長さ、特定の道路上での事故発生の平均頻度、一日における何らかの時間窓についての平均的なモーター化交通の待ち時間、一日における何らかの時間窓についての平均的な非モーター化交通の待ち時間、近くの位置で行なわれるイベントの型などを含みうる。運用ポリシーの例は、モーター化交通についての最大青信号／赤信号時間、非モーター化交通についての最大青信号／赤信号時間、モーター化交通についての最小青信号／赤信号時間、非モーター化交通についての最小青信号／赤信号時間、異なる方向についての優先順位（たとえば、交差点が複数車線をもつ非常に広い道路と一車線だけの狭い道路を接続する場合）、モーター化および非モーター化交通についての期待される平均行列長さなどを含みうる。閾値は、各Q学習カテゴリーに対応する異なる交通パターンを定義するまたは特徴付ける属性を含んでいてもよい。
【００７８】
オペレーターは、Q学習カテゴリーの数および各Q学習カテゴリーについての対応する閾値を交差点１３００におけるサーバー・コンピューティング・システム１２１０のようなコンピューティング・システムに入力または提供してもよい。次いで、コンピューティング・システムは交差点１３００の履歴交通データを、指定された（たとえば入力された）閾値に従って、交通パターン・クラスターにクラスタリング（たとえばカテゴリー分け）して、指定された数のQ学習カテゴリーを生成してもよい。いくつかの実施形態では、多数の通常のクラスタリング技法の任意の一つまたは複数が、交差点の履歴交通データをクラスタリングするために利用されてもよい。次いで、オペレーターは、Q学習カテゴリーの数および各Q学習カテゴリーについての対応する閾値を、クラスタリングされた履歴交通データの解析に基づいて、決定してもよい。
【００７９】
たとえば、オペレーターは、交差点１３００の履歴交通統計（たとえば履歴交通データ）の解析に基づいて、通常交通、多い交通、低交通量および交通渋滞のそれぞれに一つで四つのQ学習カテゴリーが交差点１３００において適切でありうることを判別してもよい。オペレーターは、それら四つのQ学習カテゴリーについて、交通到来レート、行列長さ、交差点における平均待ち時間および／またはその他のような閾値を指定してもよい。たとえば、閾値は、四つのQ学習カテゴリーを画定（たとえば定義）する交通レート閾値１、交通レート閾値２および交通レート閾値３を含んでいてもよい。閾値１未満の交差点における観察される交通レート（たとえば観察される交通レート＜閾値１）は、低交通量に対応してもよい（たとえば低交通量を示してもよい）；閾値１から閾値２までの間の交差点における観察される交通レート（たとえば閾値１≦観察される交通レート≦閾値２）は、通常交通量に対応してもよい（たとえば通常交通量を示してもよい）；閾値２から閾値３までの間の交差点における観察される交通レート（たとえば閾値２＜観察される交通レート≦閾値３）は、多い交通量に対応してもよい（たとえば多い交通量を示してもよい）；閾値３を超える交差点における観察される交通レート（たとえば観察される交通レート＞閾値３）は、交通渋滞に対応してもよい（たとえば交通渋滞を示してもよい）。この例では、交通パターン・クラスターTP1  １３０２ａは通常交通量に対応してもよく、交通パターン・クラスターTP2  １３０２ｂは多い交通量に対応してもよく、交通パターン・クラスターTP3  １３０２ｃは低交通量に対応してもよく、交通パターン・クラスターTP4  １３０２ｄは交通渋滞に対応してもよい。よって、交通パターン・クラスターTP1  １３０２ａに対応するQ学習カテゴリーQ1  １３０４ａは、通常交通量の間に交差点１３００における交通信号のためのアクションを制御するために適用されてもよい；交通パターン・クラスターTP2  １３０２ｂに対応するQ学習カテゴリーQ2  １３０４ｂは、多い交通量の間に交差点１３００における交通信号のためのアクションを制御するために適用されてもよい；交通パターン・クラスターTP3  １３０２ｃに対応するQ学習カテゴリーQ3  １３０４ｃは、低交通量の間に交差点１３００における交通信号のためのアクションを制御するために適用されてもよい；交通パターン・クラスターTP4  １３０２ｄに対応するQ学習カテゴリーQ4  １３０４ｄは、交通渋滞の間に交差点１３００における交通信号のためのアクションを制御するために適用されてもよい。交差点１３００において描かれているQ学習カテゴリーの数およびそれらのQ学習カテゴリーを画定する閾値は例解のためであり、当業者は、異なる数のQ学習カテゴリーがあってもよいことを理解するであろう。
【００８０】
図１４は、本稿に記載される少なくともいくつかの実施形態に基づいて構成された、図３のエージェント１０８のようなエージェントによって実行されうる履歴交通データをクラスタリングする例示的プロセスを示す流れ図  １４００である。例示的なプロセスおよび方法は、ブロック１４０２、１４０４、１４０６、１４０８および／または１４１０の一つまたは複数によって示されるような一つまたは複数の動作、関数またはアクションを含んでいてもよく、いくつかの実施形態では、図１０のコンピューティング・システム１０００のようなコンピューティング・システムによって実行されてもよい。ブロック１４０２〜１４１０に記載される動作は、コンピュータ実行可能命令として、コンピューティング・システム１０００のメモリ１００４および／またはデータ記憶部１００６のようなコンピュータ可読媒体に記憶されてもよい。
【００８１】
流れ図  １４００に描かれるように、履歴交通データをクラスタリングするための例示的プロセスは、ブロック１４０２（「Q学習カテゴリーの数および対応する閾値を決定」）で始まってもよい。ここで、オペレーターが、交差点における交通信号を制御するためのQ学習カテゴリーの数および対応する閾値を決定してもよい。特定のQ学習カテゴリーについての閾値は、そのQ学習カテゴリーを特徴付けてもよい。たとえば、オペレーターは、その交差点の履歴交通統計（たとえば履歴交通データ）を解析して、履歴交通統計の解析および／またはその交差点における交通信号を制御するための運用ポリシーに基づいて、Q学習カテゴリーの数および対応する閾値を決めてもよい。いくつかの実施形態では、オペレーターは、その交差点の履歴交通データをクラスタリングするために、一つまたは複数の通常のクラスタリング技法を利用してもよく、オペレーターは、Q学習カテゴリーの数および対応する閾値を、クラスタリングされた履歴交通データの解析および／またはその交差点における交通信号を制御するための運用ポリシーに基づいて決定してもよい。
【００８２】
ブロック１４０２にはブロック１４０４（「閾値を用いてコンピューティング・システムを構成」）が続いてもよい。ここで、オペレーターは、その交差点に配備された交通信号を制御するよう構成されたエージェント（たとえば図３のエージェント１０８）のようなコンピューティング・システムを、ブロック１４０２において決定されたQ学習カテゴリーに対応する閾値を用いて構成してもよい。
【００８３】
ブロック１４０４にはブロック１４０６（「履歴交通データを取得」）が続いてもよい。ここで、その交差点における交通信号を制御するよう構成されたエージェントは、その交差点の履歴交通データを取得してもよい。いくつかの実施形態では、エージェントは、その交差点の履歴交通データの一部または全部を、中央データ記憶部１２１２のようなリモート・データ記憶部から取得してもよい。追加的または代替的に、エージェントは、その交差点の履歴交通データの一部または全部を、情報データ記憶部３１０のようなローカルなデータ記憶部から取得してもよい。
【００８４】
ブロック１４０６にはブロック１４０８（「履歴交通データを閾値に基づいて交通パターン・クラスターにクラスタリング」）が続いてもよい。ここで、エージェントは、その交差点の履歴交通データを、指定された閾値に基づいて、交通パターン・クラスターにクラスタリングしてもよい。エージェントは、一つまたは複数の通常のクラスタリング技法を使って、履歴交通データをクラスタリングしてもよい。
【００８５】
ブロック１４０８にはブロック１４１０（「交通パターン・クラスターにQ学習カテゴリーを関連付け」）が続いてもよい。ここで、エージェントは、ブロック１４０２において決定された各Q学習カテゴリーを、対応する交通パターン・クラスターと関連付けてもよい。よって、特定の交通パターン・クラスターに関連付けられたQ学習カテゴリーは、当該交差点における交通信号のための最適なアクションを、それ自身の履歴交通データ（たとえば、その特定の交通パターン・クラスターに関連付けられた履歴交通データ）に基づいて、決定することができる。いくつかの実施形態では、オペレーターは、交通パターン・クラスターの一つまたは複数にイベントを関連付けてもよい。これはたとえば、過去のイベントの発生の間に観察された交通データに基づく。たとえば、オペレーターは、ある交通パターン・クラスターの特性（たとえば履歴交通データ）を、あるイベントの間に実際に発生した記録された交通データと比較して、その交通パターン・クラスターの特性とそのイベントの間に実際に発生した記録された交通データとの間の類似性に基づいて、その交通パターン・クラスターをそのイベントに関連付けてもよい。いくつかの実施形態では、エージェントは、イベントを、交通パターン・クラスターのうち一つまたは複数に、過去の諸イベントの発生の間に観察された交通データに基づいて、関連付けてもよい。上記の例で与えられている閾値の数は例解のためであり、当業者は、異なる数の閾値があってもよいことを理解するであろう。
【００８６】
図１５は、本稿に記載される少なくともいくつかの実施形態に基づいて構成された、図３のエージェント１０８のようなエージェントによって実行されうる、少なくとも部分的にはQ学習カテゴリーに基づいて交差点における交通信号についての制御アクションを生成する例示的プロセスを示す流れ図  １５００である。例示的なプロセスおよび方法は、ブロック１５０２、１５０４、１５０６、１５０８、１５１０、１５１２および／または１５１４の一つまたは複数によって示されるような一つまたは複数の動作、関数またはアクションを含んでいてもよく、いくつかの実施形態では、図１０のコンピューティング・システム１０００のようなコンピューティング・システムによって実行されてもよい。ブロック１５０２〜１５１４に記載される動作は、コンピュータ実行可能命令として、コンピューティング・システム１０００のメモリ１００４および／またはデータ記憶部１００６のようなコンピュータ可読媒体に記憶されてもよい。
【００８７】
流れ図  １５００に描かれるように、少なくとも部分的にはQ学習カテゴリーに基づいて交差点における交通信号についての制御アクションを生成するための例示的プロセスは、ブロック１５０２（「交通データをモニタリング」）で始まってもよい。ここで、交差点に配備された交通信号を制御するよう構成されたエージェント（たとえば図３のエージェント１０８）のようなコンピューティング・システムが、交差点における交通データ（たとえばはいってくる交通レート）をモニタリングしてもよい。たとえば、モニタリングされた交通データは、特定の（たとえば現在の）時間スロットについてであってもよい。
【００８８】
ブロック１５０２にはブロック１５０４（「モニタリングされた交通データに対応する交通パターン・クラスターを決定」）が続いてもよい。ここで、エージェントは、モニタリングされた交通データに対応する交通パターン・クラスターを決定してもよい。エージェントは、モニタリングされた交通データに基づいて、その特定の時間スロットにおいてその交差点において生起している交通パターン・クラスターを決定してもよい。すなわち、エージェントは、現在モニタリングされている交通データが属する交通パターン・クラスターを識別してもよい。たとえば、その交差点の履歴交通データの複数のクラスター（たとえば複数の交通パターン・クラスター）があってもよく、エージェントは、それら複数の交通パターン・クラスターのうちの一つを、現在モニタリングされている交通データが属する交通パターン・クラスターとして識別してもよい。現在モニタリングされている交通データは、その交差点の現在状態、たとえばSti,dに対応してもよく、エージェントは、Sti,dが属する交通パターンを識別してもよい。次いで、エージェントは、識別された交通パターンが属する交通パターン・クラスターを決定してもよい。
【００８９】
ブロック１５０４には判断ブロック１５０６（「交通パターン・クラスター変化？」）が続いてもよい。ここで、エージェントは、交通パターン・クラスターの変化があるかどうかを判定してもよい。エージェントは、現在モニタリングされている交通データに対応する交通パターン・クラスターが、エージェントが当該交差点における交通信号のための制御アクションを生成するために現在使っているQ学習カテゴリーに関連付けられている交通パターン・クラスターと異なるかどうかを判定してもよい。すなわち、エージェントは、その特定の時間スロットにおける交通パターン・クラスターが、先行する時間スロットにおいて生起した交通パターン・クラスターと異なるかどうかを判定してもよい。エージェントがその交差点における交通パターン・クラスターに変化がない（たとえば、その特定の時間スロットにおいて観察される交通パターン・クラスターが直前の時間スロットにおいて観察された交通パターン・クラスターと同じである）と判定する場合には、判断ブロック１５０６にはブロック１５０２が続き、エージェントは、その交差点における交通データをモニタリングし続ける。すなわち、交通パターン・クラスターに変化がないので、エージェントは、その交差点における交通信号のための制御アクションを生成するために現在のQ学習カテゴリーを使い続けてもよい。
【００９０】
そうではなく、エージェントが交通パターン・クラスター変化があると判定する場合には、断ブロック１５０６には判断ブロック１５０８（「偽陽性の交通パターン・クラスター変化？」）が続いてもよい。ここで、エージェントは、交通パターン・クラスターの変化が偽陽性の変化であるかどうかを判定してもよい。エージェントは、交通パターンの変化が一時的である（たとえば、異なる交通パターンへの変化が少数の時間スロットについてである）ときに、不必要におよび／または頻繁に交通パターン・クラスターを変えることを回避しうる。
【００９１】
図１６は、本稿に記載される少なくともいくつかの実施形態に基づいて構成された、例示的な偽陽性交通パターン・クラスター変化を示している。図示した例では、交差点における履歴交通データが行列長さ（たとえば、モーター化ユーザー行列長さおよび非モーター化ユーザー行列長さ）に基づいてクラスタリングされていてもよい。行列長さに基づいて、交差点の履歴交通データは二つの交通パターン・クラスターTP1およびTP2にクラスタリングされてもよく、これら二つの交通パターン・クラスターはそれぞれのQ学習カテゴリーQ1およびQ2に関連付けられていてもよい。0から時刻約50（たとえば、時間スロット0ないし時間スロット50）までの期間の間、交通パターン・クラスターTP2に対応する交通データが当該交差点において観察されたことがありうる。よって、Q学習カテゴリーQ2が、当該交差点において交通信号を制御するために使用されたことがありうる。時刻約50（たとえば時間スロット50）において、当該交差点において、交通パターン・クラスターTP2から交通パターン・クラスターTP1への交通パターン・クラスターの変化があったことがありうる。すなわち、交通パターンTP1に対応する交通データが、交通パターン・クラスターTP2から交通パターン・クラスターTP1への交通パターン・クラスターの変化を引き起こすのに十分な時間（たとえば、偽陽性であると考えられないために十分な数の時間スロット）にわたって当該交差点において観察された。よって、時刻約50（たとえば時間スロット50）の少し後には当該交差点において交通信号を制御するために、Q学習カテゴリーQ1が使われたことがありうる。時刻約90（たとえば時間スロット90）において、当該交差点において、交通パターン・クラスターTP2に対応する交通データが観察されたことがありうる。交通パターン・クラスターTP2に対応する交通データが観察されたのは、非常に短期間（たとえば少数の時間スロット）であったことがありえ、時刻約93（たとえば時間スロット93）において、交通パターン・クラスターTP1に対応する交通データが再び観測されたことがありうる。時刻約90から時刻約93までのこの短期間（たとえば少数の時間スロット）にわたってQ1からQ2にQ学習カテゴリーを変更して時刻約93にはもうQ1に戻ることは、不要であることがある。さらに、Q学習カテゴリーを頻繁に変えることは、交差点における交通信号における頻繁な変化（たとえば循環的な変化）につながることがあり、交差点における危険を増すことがありうる。よって、時刻約90における、時刻約93までしか続かない交通パターン・クラスターTP1から交通パターン・クラスターTP2への変化は、偽陽性の交通パターン・クラスター変化と考えられてもよい（たとえばそのようなものとして処理されてもよい）。上記の例で与えたQ学習カテゴリーの数は例解のためであり、当業者は、異なる数のQ学習カテゴリーがあってもよいことを理解するであろう。
【００９２】
再び図１５の判断ブロック１５０８を参照するに、いくつかの実施形態では、エージェントは、交差点における交通パターン・クラスターの変化をモニタリングし、交通パターン・クラスターの変化が偽陽性でないと判別する前に、新しい（たとえば異なる）交通パターン・クラスターが、連続する時間スロットの特定数Kにわたってモニタリングされたことを判別してもよい。ここで、K≫1である。いくつかの実施形態では、エージェントは、交差点における交通パターン・クラスターの変化をモニタリングして、交通パターン・クラスターの変化が偽陽性でないと判別する前に新しい（たとえば異なる）交通パターン・クラスターが連続する時間スロットの特定数のうちの少なくともある割合または数にわたってモニタリングされたことを判別してもよい。すなわち、エージェントは、交通パターン・クラスターの変化が偽陽性でないと判別する前に、新しい交通パターン・クラスターが連続する時間スロットの過去の（たとえば先行する）特定数Nにおける少なくともある特定数Mの時間スロットにわたってモニタリングされたことを判別してもよい。ここで、N≫1および1＜M＜Nである。たとえば、閾値K、Mおよび／またはNは、交差点における交通信号を制御するための運用ポリシー（単数または複数）に基づいて指定されてもよい。追加的または代替的に、閾値K、Mおよび／またはNは、異なる交通パターン（たとえば交通パターン・クラスター）について変わってもよい。
【００９３】
いくつかの実施形態では、エージェントは、交通パターン・クラスターの変化が偽陽性の変化であるかどうかを、遷移フェーズに基づいて判定してもよい。たとえば、交通パターン・クラスターekに対応する交通データを観察したとき、その交通パターン・クラスターekに変化する前に、エージェントは、交通パターン・クラスターekに対応する交通データが観察される連続する時間スロットの数（たとえば時間の測度）を数え始めて、交通パターン・クラスターekへの変化を判別するための遷移フェーズLkを決定する。Lkが特定の閾値Rkを超えれば、エージェントは、交通パターン・クラスターの変化が偽陽性でないと判別してもよい。すなわち、エージェントは、Lk＞Rkであることを判別するときにekへの変化を行なってもよい。閾値Rkは任意に指定されうる。追加的または代替的に、閾値Rkは、交差点の履歴交通データに基づいて指定されてもよい。いくつかの実施形態では、閾値Rkはekの発生の頻度に基づいて変わってもよい。すなわち、閾値Rkはekの発生の確率に基づいていてもよい。たとえば、ekに対応する交通データが当該交差点において頻繁に観察された場合、閾値Rkは、より低くてもよい（たとえば、より小さな数に設定されてもよい）。逆に、ekに対応する交通データが当該交差点において頻繁に観察されなかった（たとえばまれにしか観察されなかった）場合、閾値Rkは、より高くてもよい（たとえば、より大きな数に設定されてもよい）。いくつかの実施形態では、Rkは最小値と最大値の間で変わってもよい。最小値および／または最大値は、ekの発生の頻度に基づいて変わってもよい。いくつかの実施形態では、エージェントは、交差点における交通パターン・クラスターの変化を判別すると、Rkを更新（たとえば再計算）してもよい。たとえば、エージェントは、交差点における現在観察されている交通パターン・クラスターを考慮に入れるようRkを更新してもよい。
【００９４】
図１７は、本稿に記載される少なくともいくつかの実施形態に基づいて構成された、遷移フェーズに基づく例示的な交通パターン・クラスター変化を示す時系列図である。図のように、交通パターン・クラスターe2に関連付けられているQ学習カテゴリーQ2が交差点における交通信号を制御するために使われている間に、当該交差点におけるエージェントが交通パターン・クラスターe1に対応する交通データを観察することがある。当該交差点において交通パターン・クラスターe1が観察されるが、エージェントは交通信号を制御するためにQ学習カテゴリーQ2を使い続けてもよい。交通パターン・クラスターおよび対応するQ学習カテゴリーを変更するのではなく、エージェントは、交通パターン・クラスターe1についての遷移フェーズL1を決定してもよい。遷移フェーズL1が対応する閾値R1を超えること（たとえばL1＞R1）を判別すると、エージェントは、e2からe1への交通パターン・クラスターの変化が偽陽性ではないと判定し、よって、交通信号を制御するためにQ学習カテゴリーQ1を使ってもよい。交差点における交通信号を制御するためにQ学習カテゴリーQ1を使っている間に、エージェントが交通パターン・クラスターe3に対応する交通データを観察することがある。当該交差点において交通パターン・クラスターe3が観察されるが、エージェントは交通信号を制御するためにQ学習カテゴリーQ1を使い続けてもよい。交通パターン・クラスターおよび対応するQ学習カテゴリーを変更するのではなく、エージェントは、交通パターン・クラスターe3についての遷移フェーズL3を決定してもよい。遷移フェーズL3を決定することを完了する（たとえば、交通パターン・クラスターe1に対応する交通データが再び観察される）と、エージェントは遷移フェーズL3は対応する閾値R3を超えない（たとえばL3＜R3）と判定してもよく、結果として、エージェントは、e1からe3への交通パターン・クラスターの変化が偽陽性であると判定してもよい。交通パターン・クラスターe1からe3への変化が偽陽性であると判定したら、エージェントは交通信号を制御するためにQ学習カテゴリーQ1を使い続けてもよい。
【００９５】
再び図１５の判断ブロック１５０８を参照するに、エージェントが交通パターン・クラスターの変化が偽陽性の変化であると判定する場合、判断ブロック１５０８にはブロック１５０２が続いてもよく、エージェントは、交差点における交通データのモニタリングを続けてもよい。すなわち、交通パターン・クラスターの変化は偽陽性なので、エージェントは、交差点における交通信号のための制御アクションを生成するために、現在のQ学習カテゴリーを使い続けてもよい。
【００９６】
そうではなく、エージェントが偽陽性の交通パターン・クラスター変化ではない（たとえば、交通パターン・クラスターにおける変化が本物である）と判定する場合、判断ブロック１５０８にはブロック１５１０（「交通パターン・クラスターに対応するQ学習カテゴリーおよび対応する履歴交通データを選択」）が続いてもよく、エージェントは、現在の交通パターン・クラスター（たとえば、当該交差点において現在モニタリングされている交通データに関連付けられた交通パターン・クラスター）に対応するQ学習カテゴリーを選択してもよい。エージェントは、現在の交通パターン・クラスターに対応する履歴交通データを、ローカルなデータ記憶部から取得してもよい。追加的または代替的に、エージェントは、履歴交通データの一部または全部をリモート・データ記憶部から取得してもよい。
【００９７】
ブロック１５１０にはブロック１５１２（「選択されたQ学習カテゴリー、対応する履歴交通データおよびモニタリングされる交通データを使って制御アクションを生成」）が続いてもよい。ここで、エージェントは、Q学習カテゴリー、取得された履歴交通データおよび当該交差点における現在モニタリングされている（たとえば現在観察されている）交通データを使って、当該交差点における交通信号のための制御アクションを生成してもよい。いくつかの実施形態では、エージェントは、交差点Sti,dの現在状態を新しい状態としてQ学習カテゴリーに入力して、該Q学習カテゴリーを使って、Sti,dに基づいて、当該交差点における交通信号のための制御アクションを決定するための直接返報（immediate  reward）を計算してもよい。
【００９８】
ブロック１５１２にはブロック１５１４（「制御アクション情報を保存」）が続いてもよく、ここで、エージェントは、前記制御アクションおよび該制御アクションに関係した情報（たとえば状態／アクション／返報情報）をデータ記憶部に保存してもよい。よって、制御アクションおよびその関係した情報は、Q学習カテゴリーに関連付けられた交通パターン・クラスターの履歴交通データの一部になりうる。いくつかの実施形態では、エージェントは、交通パターン（たとえば交通パターン・クラスター）が交差点において観察された回数（頻度）の計数の記録を維持してもよい。
【００９９】
図１８は、本稿に記載される少なくともいくつかの実施形態に基づいて構成された、図３のエージェント１０８のようなエージェントによって実行されうるQ学習の学習レートを調整する例示的プロセスを示す流れ図  １８００である。例示的なプロセスおよび方法は、ブロック１８０２、１８０４、１８０６、１８０８、１８１０、１８１２および／または１８１４の一つまたは複数によって示されるような一つまたは複数の動作、関数またはアクションを含んでいてもよく、いくつかの実施形態では、図１０のコンピューティング・システム１０００のようなコンピューティング・システムによって実行されてもよい。ブロック１８０２〜１８１４に記載される動作は、コンピュータ実行可能命令として、コンピューティング・システム１０００のメモリ１００４および／またはデータ記憶部１００６のようなコンピュータ可読媒体に記憶されてもよい。
【０１００】
流れ図  １８００に描かれるように、Q学習の学習レートを調整する例示的プロセスは、ブロック１８０２（「交通データをモニタリング」）で始まってもよい。ここで、交差点に配備された交通信号を制御するよう構成されたエージェント（たとえば図３のエージェント１０８）のようなコンピューティング・システムが、交差点における交通データをモニタリングしてもよい。たとえば、モニタリングされた交通データは、特定の（たとえば現在の）時間スロットについてであってもよい。交通データのモニタリングは、交通レート（たとえば当該交差点に到来するモーター化交通量および／または非モーター化交通量）、行列長さ（たとえば当該交差点におけるモーター化ユーザー行列長さおよび／または非モーター化ユーザー行列長さ）、事故および／またはその他のような測度についてであってもよい。測度は、当該交差点における交通信号を制御するための運用ポリシー（単数または複数）に基づいて決定されてもよい。
【０１０１】
上記で論じたように、Q学習は、所与の状態（たとえば交通信号の所与の状態）において所与のアクションを取る（たとえば所与の制御アクションを生成する）ことの期待される効用を提供するアクション‐バリュー関数（action-value  function）を学習し、その後は最適ポリシーに従うことによって機能する。たとえば、上記のQ学習の式[2]は、学習手順全体における一定のまたは変動しない学習レートαを想定してもよい。いくつかの実施形態では、Q学習の式[2]における学習レートαは交通パターン変化の状態変化に依存してもよい。Q学習の学習レートは、アクション‐バリュー関数を学習することにおいて、どの程度、新しく観察された交通データが、古いほうの交通データをオーバーライドするかを決定する。学習レート0はQ学習が何も学習しないようにし（たとえば、新たに観察された交通データが考慮されない）、学習レート1はQ学習に新たに観察された交通データのみを考慮させる。
【０１０２】
ブロック１８０２にはブロック１８０４（「モニタリングされた交通データに対応する交通パターンを決定」）が続いてもよい。ここで、エージェントは、モニタリングされた交通データに対応する交通パターンを決定してもよい。エージェントは、モニタリングされた交通データに基づいて、その特定の時間スロットにおいてその交差点において生起している交通パターンを決定してもよい。たとえば、交通パターンは、その交差点における交通レートに基づいていてもよい。追加的または代替的に、交通パターンは、その交差点における行列長さに基づいていてもよい。
【０１０３】
いくつかの実施形態では、オペレーターがさまざまな交通パターンについての閾値を指定してもよい。閾値は、交差点における交通信号を制御するための運用ポリシー（単数または複数）に基づいて指定されてもよい。たとえば、交通パターン・クラスターに関する上記の議論と同様に、閾値は、交通レートを対応する交通パターンに分画してもよい。
【０１０４】
ブロック１８０４には判断ブロック１８０６（「交通パターン変化？」）が続いてもよい。ここで、エージェントは、当該交差点における交通パターンに変化があるかどうかを判定してもよい。エージェントは、その特定の時刻における交通パターンが、先行する時間スロットにおいて生起した交通パターンと異なるかどうかを判定してもよい。エージェントが、当該交差点における交通パターンに変化がないと判定する場合、判断ブロック１８０６には判断ブロック１８０８（「交通パターン変化なし基準を満たす？」）が続いてもよい。ここで、エージェントは、当該交差点における交通パターンが十分な長さの時間にわたって変化なしであったかどうか（たとえば交通パターン変化なし基準）を判定してもよい。交通パターン変化なし基準は、当該交差点における交通信号を制御するための運用ポリシー（単数または複数）に基づいて指定されてもよく、時間の長さ（たとえば時間スロットの数）を示してもよい。いくつかの実施形態では、エージェントは、当該交差点における変化なしの交通パターンが交通パターン変化なし基準（たとえば当該交差点における交通パターンが要求される長さの時間（たとえば要求される数の時間スロット）にわたって同じまたは不変のままであるかどうか）を満たす場合、Q学習の学習レートを減少または低下させてもよい。いくつかの実施形態では、エージェントは、当該交差点における変化なしの交通パターンが交通パターン変化なし基準を満たす場合、Q学習の学習レートを徐々に減少または低下させてもよい。交通パターン変化なし基準に対する検査は、Q学習の学習レートの不必要なおよび／または頻繁な調整を避けるために適用されてもよい。たとえば、交差点における交通パターンが一時的に一定である（たとえば一時的に同じに留まる）場合、Q学習の学習レートを調整することの恩恵はないか、あっても最小限でありうる。
【０１０５】
いくつかの実施形態では、交通パターン変化なし基準は、連続する時間スロットの特定の数Kとして指定されてもよい。ここで、K≫1である。すなわち、交通パターン変化なし基準は、当該交差点における交通パターンがK個の連続する時間スロットにわたって変化なしであった場合に、満たされたと判定されるまたは考えられるのでもよい。いくつかの実施形態では、交通パターン変化なし基準は、特定数の連続する時間スロットのうちの少なくともある割合または数として指定されてもよい。すなわち、交通パターン変化なし基準は、過去の（たとえば先行する）N（N≫1）個の連続する時間スロットにおいて少なくともM個の時間スロットが同じ交通パターンをもつ場合（1＜M＜N）に満たされると判定されるまたは考えられるのでもよい。たとえば、閾値K、Mおよび／またはNは、交差点における交通信号を制御するための運用ポリシー（単数または複数）に基づいて指定されてもよい。追加的または代替的に、閾値K、Mおよび／またはNは異なる交通パターンについては変わってもよい。
【０１０６】
エージェントが交差点における交通パターンが十分な長さの時間にわたって変化なしではなかったと判定する場合、判断ブロック１８０８にはブロック１８０２が続いてもよい。ここで、エージェントは、交差点における交通データをモニタリングしてもよい。たとえば、エージェントは、次のまたは後続の時間スロットにわたって交差点における交通データをモニタリングし続けてもよい。
【０１０７】
そうではなく、交通パターン変化なし基準が満たされると判定する場合、判断ブロック１８０８にはブロック１８１０（「Q学習の学習レートを下げる」）が続いてもよい。ここで、エージェントはQ学習の学習レートを下げてもよい。当該交差点において交通パターンが変化していないので、エージェントは、Q学習が当該交差点の履歴交通データをより多く考慮するよう、Q学習の学習レートを下げてもよい。いくつかの実施形態では、エージェントは、学習レートを特定のあらかじめ定義された値（たとえば学習レート＝0.2、学習レート＝0.3、学習レート＝0.35など）まで減少させてもよい。いくつかの実施形態では、エージェントは、学習レートを、特定のあらかじめ定義された減少率だけ減少させてもよい（たとえば、学習レート＝学習レート−0.1、学習レート＝学習レート−0.15、学習レート＝学習レート−0.2、など）。ひとたびエージェントが学習レートを適切に低下させたら、交差点における交通パターンはもはや交通パターン変化なし基準を満たし続けなくてもよい。すなわち、交差点における交通パターンは、ゼロから（たとえばはじめから）交通パターン変換なし基準を満たす必要があってもよい。たとえば、交通パターン変化なし基準がK＝10個の連続する時間スロットであるとすると、ひとたび交通パターンが要求される10個の連続する時間スロットにわたって不変のままであったら、交通パターン変化なし基準が再び満たされる（たとえばもう一回満たされる）には、別の10個の連続する時間スロットにわたって交通パターンが変化なしのままである必要があってもよい。
【０１０８】
いくつかの実施形態では、エージェントは、学習レートを徐々に減少させることを、たとえば前記特定のあらかじめ定義された値を変えることによって行なってもよい。たとえば、エージェントは、交差点における交通パターンが初めて交通パターン変化なし基準を満たすときに、学習レートを第一の値に減少させてもよい。交通パターン変化なし基準が二度目に満たされる場合、エージェントは、学習レートを、第一の値より小さい第二の値に減少させてもよい。いくつかの実施形態では、エージェントは、時間とともに相続く値の間のギャップまたは差を減少させてもよい。たとえば、第一の値と第二の値の差は、第二の値と第三の値の差よりも大きくてもよい。いくつかの実施形態では、エージェントは、時間とともに相続く値の間のギャップまたは差を増大させてもよい。たとえば、第一の値と第二の値の差は、第二の値と第三の値の差よりも小さくてもよい。エージェントは、ある最小の学習レート値に到達するまで、学習レートを減少させてもよい。
【０１０９】
いくつかの実施形態では、エージェントは減少率を変えてもよい。たとえば、エージェントは、交差点における交通パターンが初めて交通パターン変化なし基準を満たすときに、学習レートを第一の減少率によって減少させてもよい。交通パターン変化なし基準が二度目に満たされる場合、エージェントは、学習レートを、第二の減少率によって減少させてもよい。いくつかの実施形態では、第二の減少率は第一の減少率より小さくてもよい。この例では、学習レート低減は時間とともに減少する。いくつかの実施形態では、第二の減少率は第一の減少率より大きくてもよい。この例では、学習レートの低減は時間とともに増大する。エージェントは、ある最小の学習レート値に到達するまで、学習レートを減少させてもよい。
【０１１０】
いくつかの実施形態では、ひとたびエージェントが学習レートを適切に減少させてからも、交差点における交通パターンは交通パターン変化なし基準を満たし続けてもよい。すなわち、交差点における交通パターンは、ゼロから（たとえばはじめから）交通パターン変換なし基準を満たす必要がなくてもよい。たとえば、交通パターン変化なし基準がK＝10個の連続する時間スロットであり、交通パターンが要求される10個の連続する時間スロットにわたって不変のままであって、交通パターン変化なし基準を満たすとする。次の連続する時間スロットについての交通パターンが変化なしのままであったら、交通パターン変化なし基準は再び満たされる（たとえばもう一回満たされる）。
【０１１１】
Q学習の学習レートを適切に減少させたら（１８１０）、エージェントは、次のまたは後続の時間スロットについて交差点における交通データをモニタリングすることを続けてもよい（ブロック１８０２）。
【０１１２】
そうではなく、エージェントが交通パターン変化があると判定する場合、判断ブロック１８０６には判断ブロック１８１２（「偽陽性の交通パターン変化？」）が続いてもよい。ここで、エージェントは交通パターンの変化が偽陽性の変化であるかどうかを判定してもよい。エージェントは、交通パターンの変化が一時的である（たとえば異なる交通パターンへの変化が少数の時間スロットにわたってである）ときにQ学習の学習レートの不必要なおよび／または頻繁な調整を回避しうる。たとえば、交差点における交通パターン変化が一時的である場合、Q学習の学習レートを調整することの恩恵はないか、あっても最小限でありうる。
【０１１３】
いくつかの実施形態では、エージェントは、交差点における交通パターンの変化をモニタリングして、交通パターンの変化が偽陽性でないと判別する前に新しい（たとえば異なる）交通パターンが連続する時間スロットの特定数Kにわたってモニタリングされたことを判別してもよい。ここで、K≫1である。いくつかの実施形態では、エージェントは、交差点における交通パターンの変化をモニタリングして、交通パターンの変化が偽陽性でないと判別する前に新しい（たとえば異なる）交通パターンが連続する時間スロットの特定数のうちの少なくともある割合または数にわたってモニタリングされたことを判別してもよい。すなわち、エージェントは、交通パターンの変化が偽陽性でないと判別する前に、新しい交通パターンが連続する時間スロットの最近の（たとえば先行する）特定数Nにおける少なくともある特定数Mの時間スロットにわたってモニタリングされたことを判別してもよい。ここで、N≫1および1＜M＜Nである。たとえば、閾値K、Mおよび／またはNは、交差点における交通信号を制御するための運用ポリシー（単数または複数）に基づいて指定されてもよい。追加的または代替的に、閾値K、Mおよび／またはNは、異なる交通パターンについて変わってもよい。
【０１１４】
エージェントが交通パターンの変化が偽陽性の変化であると判定する場合、判断ブロック１８１２にはブロック１８０２が続いてもよく、エージェントは交差点における交通データをモニタリングしてもよい。たとえば、エージェントは、次のまたは後続の時間スロットについて交差点における交通データをモニタリングすることを続けてもよい。
【０１１５】
そうではなく、エージェントが偽陽性の交通パターン変化ではない（たとえば、交通パターンにおける変化が本物である）と判定する場合、判断ブロック１８１２にはブロック１８１４（「Q学習の学習レートを上げる」）が続いてもよい。ここで、エージェントはQ学習の学習レートを増大させてもよい。当該交差点において交通パターンが頻繁に変化していることがありうるので、エージェントは、Q学習が当該交差点の最近の交通データをより多く考慮するよう、Q学習の学習レートを増大させてもよい。よって、Q学習が最近の交通データをより多く、より履歴的な交通データをより少なく考慮することが有益でありうる。いくつかの実施形態では、エージェントは、学習レートを特定のあらかじめ定義された値（たとえば学習レート＝0.9、学習レート＝0.8、学習レート＝0.85など）まで増大させてもよい。いくつかの実施形態では、エージェントは、学習レートを、特定のあらかじめ定義された増加率だけ増大させてもよい（たとえば、学習レート＝学習レート＋0.1、学習レート＝学習レート＋0.15、学習レート＝学習レート＋0.3、など）。
【０１１６】
いくつかの実施形態では、エージェントは、学習レートを増大させることを、交通パターンにおける変化の度合いまたは程度に基づいて変えてもよい。交通パターンの変化が大きいまたは著しい場合には、エージェントは学習レートを大きく増大させてもよい。逆に、交通パターンの変化が小さいまたは著しくない場合には、エージェントは学習レートを少し増大させてもよい。いくつかの実施形態では、交通パターンの変化は、交通パターンに対応する交通レートの変化に基づいて決定されてもよい。
【０１１７】
いくつかの実施形態では、オペレーターは交通パターンにおける変化の度合いまたは程度を指示する閾値を指定してもよい。それらの閾値は、交差点における交通信号を制御するための運用ポリシー（単数または複数）に基づいて指定されてもよい。たとえば、三つの閾値、閾値A、閾値Bおよび閾値Cがあってもよい。閾値Aは最高の閾値であってもよく、閾値Bは中間の閾値であってもよく、閾値Cは最低の閾値であってもよい（たとえば、閾値A＞閾値B＞閾値C）。よって、閾値Aを超える交通パターンの変化（たとえば、交通パターンの変化＞閾値A）は交通パターンにおける著しい変化と考えられてもよい。閾値Bを超えるが閾値Aは超えない交通パターンの変化（たとえば、閾値A≧交通パターンの変化＞閾値B）は交通パターンにおける通常の変化と考えられてもよく、閾値Cを超えるが閾値Bは超えない交通パターンの変化（たとえば、閾値B≧交通パターンの変化＞閾値A）は交通パターンにおける最小限の変化と考えられてもよい。この例を続けると、交通パターンの変化が著しい場合、エージェントは学習レートを大きな増大値まで（たとえば学習レート＝0.9）または大きな増加率によって（たとえば学習レート＝学習レート＋0.3）増大させてもよい。交通パターンの変化が通常である場合、エージェントは学習レートを通常の増大値まで（たとえば学習レート＝0.8）または通常の増加率によって（たとえば学習レート＝学習レート＋0.2）増大させてもよい。交通パターンの変化が最小限である場合、エージェントは学習レートを最小限の増大値まで（たとえば学習レート＝0.7）または最小限の増加率によって（たとえば学習レート＝学習レート＋0.1）増大させてもよい。エージェントは、最大学習レートに達するまで、学習レートを増大させてもよい。いくつかの実施形態では、エージェントは、前記閾値の前記一つまたは複数を、たとえば当該交差点の履歴交通データに基づいて調整してもよい。いくつかの実施形態では、エージェントは、前記増大値および／または前記増大率の一つまたは複数を調整してもよい。上記の例で与えられる閾値の数は例解のためであって、当業者は異なる数の閾値があってもよいことを理解するであろう。
【０１１８】
Q学習の学習レートを適切に増大させたら（１８１４）、エージェントは、次のまたは後続の時間スロットについて交差点における交通データをモニタリングすることを続けてもよい（ブロック１８０２）。
【０１１９】
上記で示したように、本開示に記載される実施形態は、本稿でより詳細に論じられているようなさまざまなコンピュータ・ハードウェアまたはソフトウェア・モジュールを含む特殊目的または汎用コンピュータ（たとえば図１０のプロセッサ１００２）の使用を含んでいてもよい。さらに、上記で示したように、本開示に記載される実施形態は、記憶されているコンピュータ実行可能命令またはデータ構造を担持するまたは有するためのコンピュータ可読媒体（たとえば図１０のメモリ１００４）を使って実装されてもよい。
【０１２０】
いくつかの例によれば、交差点における交通信号を制御するよう構成された交通信号制御システムが記述される。例示的システムは、情報データ記憶部および該情報データ記憶部に結合されたエージェントを含んでいてもよい。情報データ記憶部は、複数の交通パターン・クラスターを記憶するよう構成されていてもよく、前記複数の交通パターン・クラスターの各交通パターン・クラスターはQ学習カテゴリーを割り当てられていてもよい。エージェントは、交差点の第一の交通データを決定し；前記複数の交通パターン・クラスターのうち前記第一の交通データに対応する第一の交通パターン・クラスターを判別し；少なくとも部分的には前記第一の交通パターン・クラスターに対応する第一のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第一の制御アクションを生成し；前記第一の交通データよりも時間的に後の、前記交差点の第二の交通データを決定し；前記第二の交通データが前記第一の交通パターン・クラスターに対応するかどうかを判定し；前記第二の交通データが前記第一の交通パターン・クラスターに対応するとの判定に応答して、少なくとも部分的には前記第一のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第二の制御アクションを生成し；前記第二の交通データが前記第一の交通パターン・クラスターに対応しないとの判定に応答して、前記複数の交通パターン・クラスターのうち前記第二の交通データに対応する第二の交通パターン・クラスターを判別して、少なくとも部分的には前記第二の交通パターン・クラスターに対応する第二のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第三の制御アクションを生成するよう構成されていてもよい。いくつかの例では、エージェントは、前記第二の交通データが前記第一の交通パターン・クラスターに対応しないとの判定に応答して、前記第一の交通パターン・クラスターを前記第一の交通データを用いて更新するよう構成されていてもよい。
【０１２１】
いくつかの例では、前記第二の交通データが前記第一の交通パターン・クラスターに対応するかどうかを判定することは、少なくとも部分的には、特定数の連続する時間スロットにおいて前記第二の交通データが生起したかどうかの判定に基づいていてもよい。他の例では、連続する時間スロットの前記特定数が、少なくとも部分的には、前記第二の交通データに対応する前記第二の交通パターン・クラスターの発生頻度に基づいていてもよい。さらなる例では、前記第二の交通データが前記第一の交通パターン・クラスターに対応するかどうかを判定することは、少なくとも部分的には、特定数の連続する時間スロットのうちのある割合において前記第二の交通データが生起したかどうかの判定に基づいていてもよい。さらなる例では、前記複数の交通パターン・クラスターのうちの少なくとも一つの交通パターン・クラスターがイベントに関連付けられてもよい。
【０１２２】
いくつかの例によれば、交差点における交通信号を制御する方法が記述される。例示的方法は、履歴交通データを複数の交通パターン・クラスターにクラスタリングする段階と；複数のQ学習カテゴリーを生成する段階であって、前記複数のQ学習カテゴリーの各Q学習カテゴリーは前記複数の交通パターン・クラスターのうちのある交通パターン・クラスターに対応する、段階と；交差点における交通信号を制御する際に使う前記複数のQ学習カテゴリーのうちの第一のQ学習カテゴリーを、少なくとも部分的には前記交差点の第一の交通データに基づいて決定する段階であって、前記第一のQ学習カテゴリーは第一の交通パターン・クラスターに対応し、前記第一の交通データは前記第一の交通パターン・クラスターに対応する、段階と；少なくとも部分的には前記第一のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第一の制御アクションを生成する段階とを含んでいてもよい。いくつかの例では、履歴交通データをクラスタリングすることが、少なくとも部分的には行列長さに基づいていもよい。他の例では、履歴交通データをクラスタリングすることが、少なくとも部分的には交通パターン特性に基づいていてもよい。さらなる例では、前記交通パターン特性が一つまたは複数の閾値を含んでいてもよい。
【０１２３】
他の例によれば、本方法は、前記交差点の第二の交通データを決定する段階と；前記交差点における交通信号を制御する際に使う前記複数のQ学習カテゴリーのうちの第二のQ学習カテゴリーに変更するべきかどうかを決定する段階であって、前記第二のQ学習カテゴリーは第二の交通パターン・クラスターに対応し、前記第二の交通データは前記第二の交通パターン・クラスターに対応する、段階と；前記第二のQ学習カテゴリーに変更するべきとの決定に応答して、少なくとも部分的には前記第二のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第二の制御アクションを生成する段階とを含んでいてもよい。いくつかの例では、第二のQ学習カテゴリーに変更するべきかどうかを決定することが、特定数の連続する時間スロットにおいて前記第二の交通パターン・クラスターが生起したかどうかを判定することを含んでいてもよい。他の例では、連続する時間スロットの前記特定数が、少なくとも部分的には、前記第二の交通データに対応する前記第二の交通パターン・クラスターの発生頻度に基づいていてもよい。さらなる例では、第二のQ学習カテゴリーに変更するべきかどうかを決定することが、特定数の連続する時間スロットのうちのある割合において前記第二の交通パターン・クラスターが生起したかどうかを判定することを含んでいてもよい。さらなる例では、本方法はさらに、前記第二のQ学習カテゴリーに変更するべきとの決定に応答して、前記第一の交通パターン・クラスターを前記第一の交通データを用いて更新することを含んでいてもよい。
【０１２４】
いくつかの例によれば、コンピューティング・システムのプロセッサによる実行のための命令を記憶している非一時的なコンピュータ可読記憶媒体が記述される。例示的な非一時的なコンピュータ可読記憶媒体は命令を記憶しており、該命令は、プロセッサによる実行に応答して、前記プロセッサに：複数のQ学習カテゴリーを生成する段階であって、前記複数のQ学習カテゴリーの各Q学習カテゴリーは複数の交通パターン・クラスターのうちのある交通パターン・クラスターに対応する、段階と；交差点における交通信号を制御するために使う前記複数のQ学習カテゴリーのうちの第一のQ学習カテゴリーを、少なくとも部分的には前記交差点の第一の交通データに基づいて決定する段階であって、前記第一のQ学習カテゴリーは第一の交通パターン・クラスターに対応し、前記第一の交通データは前記第一の交通パターン・クラスターに対応する、段階と；少なくとも部分的には前記第一のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第一の制御アクションを生成する段階とを実行させるものである。いくつかの例では、本非一時的なコンピュータ可読記憶媒体はさらに、前記プロセッサによる実行に応答して、前記プロセッサに：前記交差点の第二の交通データを決定する段階と；前記交差点における交通信号を制御するために使う前記複数のQ学習カテゴリーのうちの第二のQ学習カテゴリーに変更するべきかどうかを決定する段階であって、前記第二のQ学習カテゴリーは第二の交通パターン・クラスターに対応し、前記第二の交通データは前記第二の交通パターン・クラスターに対応する、段階と；前記第二のQ学習カテゴリーに変更するべきとの決定に応答して、少なくとも部分的には前記第二のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第二の制御アクションを生成する段階とを実行させるための命令をさらに記憶していてもよい。他の例では、本非一時的なコンピュータ可読記憶媒体はさらに、前記プロセッサによる実行に応答して、前記プロセッサに：前記第二のQ学習カテゴリーに変更するべきとの決定に応答して、前記第一の交通パターン・クラスターを前記第一の交通データを用いて更新する段階を実行させるための命令をさらに記憶していてもよい。
【０１２５】
いくつかの例によれば、交差点における交通信号を制御するために使われるQ学習の学習レートを調整する方法が記述される。例示的方法は、交差点における交通信号についての制御アクションをQ学習に基づいて生成する段階であって、前記Q学習は、前記交差点の履歴交通データの少なくとも一部に基づいて生成される制御アクションを決定するよう構成されている、段階と；前記交差点の交通パターンの変化の頻度を決定する段階であって、交通パターンの変化は前記交差点の第一の交通パターンから前記交差点の第二の交通パターンへの変化である、段階と；前記Q学習の学習レートを、前記交差点の交通パターンの変化の決定された頻度に基づいて調整する段階とを含んでいてもよい。いくつかの例では、交通パターンの変化の頻度を決定することは、ある特定数の連続する時間スロットにおいて前記第二の交通パターンが生起したかどうかを判定することを含んでいてもよい。他の例では、交通パターンの変化の頻度を決定することは、ある特定数のうちある割合の連続する時間スロットにおいて前記第二の交通パターンが生起したかどうかを判定することを含んでいてもよい。
【０１２６】
いくつかの例では、前記Q学習の学習レートを調整することは、前記交差点の交通パターンにおける変化の増大する頻度に従って前記学習レートを増大させることを含んでいてもよい。いくつかの例では、学習レートを増大させることは、学習レートを、前記交差点の前記第一の交通パターンから前記交差点の前記第二の交通パターンへの変化の度合いに基づいて増大させることを含んでいてもよい。他の例では、学習レートを増大させることは、学習レートを、特定のあらかじめ定義された値に増大させることを含んでいてもよい。さらに他の例では、学習レートを増大させることは、学習レートを、特定のあらかじめ定義された増大率によって増大させることを含んでいてもよい。さらなる例では、前記Q学習の学習レートを調整することは、ある特定数の連続する時間スロットにわたって前記交差点の前記第一の交通パターンが生起したという判定に応答して、学習レートを減少させることを含んでいてもよい。他の例では、学習レートを減少させることは、学習レートを、特定のあらかじめ定義された値に減少させることを含んでいてもよい。さらなる例では、学習レートを減少させることは、学習レートを、特定のあらかじめ定義された減少率によって減少させることを含んでいてもよい。
【０１２７】
いくつかの例によれば、交差点における交通信号を制御するために使われるQ学習の学習レートを調整する方法よう構成された交通信号制御システムが記述される。例示的システムは、情報データ記憶部および該情報データ記憶部に結合されたエージェントを含んでいてもよい。情報データ記憶部は、履歴交通データを記憶するよう構成されていてもよい。エージェントは、Q学習を適用して、交差点における交通信号についての制御アクションを、前記交差点の履歴交通データの少なくとも一部に基づいて生成する段階と；前記交差点の交通パターンの変化があるかどうかを判定する段階であって、交通パターンの変化は前記交差点の第一の交通パターンから前記交差点の第二の交通パターンへの変化である、段階と；前記交差点の交通パターンに変化があるとの判定に応答して、Q学習の学習レートを調整する段階とを実行するよう構成されていてもよい。いくつかの例では、前記交差点の交通パターンに変化があることの判定は、ある特定数の連続する時間スロットにおいて前記第二の交通パターンが生起したかとの判定を含んでいてもよい。他の例では、前記交差点の交通パターンに変化があるとの判定は、ある特定数のうちある割合の連続する時間スロットにおいて前記第二の交通パターンが生起したとの判定を含んでいてもよい。いくつかの例では、前記Q学習の学習レートを調整することは、前記交差点の交通パターンにおける変化の度合いに基づく学習レートの増大を含んでいてもよい。他の例では、Q学習の学習レートを調整することは、学習レートの、特定のあらかじめ定義された値への増大を含んでいてもよい。さらに他の例では、学習レートを調整することは、学習レートの、特定のあらかじめ定義された増大率による増大を含んでいてもよい。
【０１２８】
いくつかの例では、エージェントは、前記交差点の交通パターンに変化がないとの判定に応答して、Q学習の学習レートを減少させるよう構成されていてもよい。他の例では、前記交差点の交通パターンに変化がないとの判定は、ある特定数の連続する時間スロットにおいて前記第一の交通パターンが生起したことの判定を含んでいてもよい。さらなる例では、前記交差点の交通パターンに変化がないとの判定は、ある特定数のうちのある割合の連続する時間スロットにおいて前記第一の交通パターンが生起したことの判定を含んでいてもよい。
【０１２９】
いくつかの例によれば、コンピューティング・システムのプロセッサによる実行のための命令を記憶している非一時的なコンピュータ可読記憶媒体が記述される。例示的な非一時的なコンピュータ可読記憶媒体は命令を記憶しており、該命令は、プロセッサによる実行に応答して、前記プロセッサに：Q学習を適用して、交差点における交通信号についての制御アクションを、前記交差点の履歴交通データの少なくとも一部に基づいて生成する段階と；前記交差点の交通パターンの変化の頻度を決定する段階であって、交通パターンの変化は前記交差点の第一の交通パターンから前記交差点の第二の交通パターンへの変化である、段階と；前記交差点の交通パターンの変化の決定された頻度に基づいて、Q学習の学習レートを調整する段階とを実行させるものである。
【０１３０】
本開示で使われるところでは、用語「モジュール」または「コンポーネント」は、該モジュールまたはコンポーネントのアクションを実行するよう構成された特定のハードウェア実装および／またはコンピューティング・システムの汎用ハードウェア（たとえばコンピュータ可読媒体、処理装置など）に記憶および／または実行さうれるソフトウェア・オブジェクトまたはソフトウェア・ルーチンを指しうる。いくつかの実施形態では、本開示に記載される種々のコンポーネント、モジュール、エンジンおよびサービスは、（たとえば別個のスレッドとして）コンピューティング・システム上で実行されるオブジェクトまたはプロセスとして実装されてもよい。本開示に記載されるシステムおよび方法のいくつかは、一般に、（汎用ハードウェアに記憶および／または実行される）ソフトウェアで実装されるものとして記述されるが、個別のハードウェア実装、ファームウェア実装またはそれらの任意の組み合わせも可能であり、考えられている。本稿において、「コンピューティング・エンティティ」は、本開示で先に述べたような任意のコンピューティング・システムまたはコンピューティング・システム上で実行される任意のモジュールもしくはモジュールの組み合わせでありうる。
【０１３１】
本開示および特に付属の請求項（たとえば付属の請求項の本文）において使われる用語は一般に「オープン」な用語として意図されている（たとえば、用語「含む」は「含むがそれに限られない」と解釈されるべきであり、用語「もつ」は「少なくとも…をもつ」と解釈されるべきであり、用語「含む」は「含むがそれに限られない」と解釈されるべきであるなど）。
【０１３２】
さらに、導入される請求項の記載の特定の数が意図される場合、そのような意図は請求項において明示的に記載される。そのような記載のない場合には、そのような意図はない。たとえば、理解の助けとして、付属の請求項は、請求項の記載を導入するために「少なくとも一つの」および「一つまたは複数の」という導入句の使用を含むことがありうる。しかしながら、たとえ同じ請求項が導入句「一つまたは複数の」または「少なくとも一つの」および「a」または「an」のような不定冠詞を含むときでも、そのような句の使用は、不定冠詞「a」または「an」による請求項の記載の導入が、そのように導入された請求項の記載を含む何らかの特定の請求項を、そのような記載を一つだけ含む実施形態に限定することを含意していると解釈されるべきではない（たとえば、「a」および／または「an」は、「少なくとも一つの」または「一つまたは複数の」を意味するものと解釈されるべきである）。同じことは、請求項の記載を導入する定冠詞の使用についても成り立つ。
【０１３３】
さらに、たとえ導入される請求項の記載の特定の数が明示的に記載されていたとしても、当業者は、そのような記載が、少なくともその記載された数を意味すると解釈されるべきであることを認識するであろう（たとえば、他の修飾語なしで単に「二つの記載」という記載は、少なくとも二つの記載または二つ以上の記載を意味する）。さらに、「Ａ、ＢおよびＣなどのうちの少なくとも一つ」または「Ａ、ＢおよびＣなどの一つまたは複数」に類似する慣用句が使われる事例においては、一般に、そのような構文はＡだけ、Ｂだけ、Ｃだけ、ＡおよびＢ両方、ＡおよびＣ両方、ＢおよびＣ両方またはＡ、ＢおよびＣ全部などを含むことが意図される。
【０１３４】
本開示に記載されるすべての例および条件付きの言辞は、本開示および発明者によって当技術分野の発展のために寄与される概念の理解において読者を助ける教育目的を意図されており、そのような特定的に挙げられる例および条件に限定することなく解釈されるものとする。本開示の実施形態について詳細に述べてきたが、本開示の精神および範囲から外れることなく、これにさまざまな変化、代替および変更をなすことができることは理解しておくべきである。
【０１３５】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
（付記１）
交差点における交通信号を制御するよう構成された交通信号制御システムであって、当該システムは：
複数の交通パターン・クラスターを記憶するよう構成されている情報データ記憶部であって、前記複数の交通パターン・クラスターの各交通パターン・クラスターはQ学習カテゴリーを割り当てられている、情報データ記憶部と；
前記情報データ記憶部に結合されたエージェントとを有しており、前記エージェントは：
交差点の第一の交通データを決定し；
前記複数の交通パターン・クラスターのうち前記第一の交通データに対応する第一の交通パターン・クラスターを判別し；
少なくとも部分的には前記第一の交通パターン・クラスターに対応する第一のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第一の制御アクションを生成し；
前記第一の交通データよりも時間的に後の、前記交差点の第二の交通データを決定し；
前記第二の交通データが前記第一の交通パターン・クラスターに対応するかどうかを判定し；
前記第二の交通データが前記第一の交通パターン・クラスターに対応するとの判定に応答して、少なくとも部分的には前記第一のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第二の制御アクションを生成し；
前記第二の交通データが前記第一の交通パターン・クラスターに対応しないとの判定に応答して、前記複数の交通パターン・クラスターのうち前記第二の交通データに対応する第二の交通パターン・クラスターを判別して、少なくとも部分的には前記第二の交通パターン・クラスターに対応する第二のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第三の制御アクションを生成するよう構成されている、
システム。
（付記２）
前記エージェントは、前記第二の交通データが前記第一の交通パターン・クラスターに対応しないとの判定に応答して、前記第一の交通パターン・クラスターを前記第一の交通データを用いて更新するよう構成されている、付記１記載のシステム。
（付記３）
前記第二の交通データが前記第一の交通パターン・クラスターに対応するかどうかを判定することは、少なくとも部分的には、特定数の連続する時間スロットにおいて前記第二の交通データが生起したかどうかの判定に基づく、付記１記載のシステム。
（付記４）
連続する時間スロットの前記特定数が、少なくとも部分的には、前記第二の交通データに対応する前記第二の交通パターン・クラスターの発生頻度に基づく、付記２記載のシステム。
（付記５）
前記第二の交通データが前記第一の交通パターン・クラスターに対応するかどうかを判定することは、少なくとも部分的には、特定数の連続する時間スロットのうちのある割合において前記第二の交通データが生起したかどうかの判定に基づく、付記１記載のシステム。
（付記６）
前記複数の交通パターン・クラスターのうちの少なくとも一つの交通パターン・クラスターがイベントに関連付けられる、付記１記載のシステム。
（付記７）
交差点における交通信号を制御する方法であって、当該方法は：
履歴交通データを複数の交通パターン・クラスターにクラスタリングする段階と；
複数のQ学習カテゴリーを生成する段階であって、前記複数のQ学習カテゴリーの各Q学習カテゴリーは前記複数の交通パターン・クラスターのうちのある交通パターン・クラスターに対応する、段階と；
交差点における交通信号を制御する際に使う前記複数のQ学習カテゴリーのうちの第一のQ学習カテゴリーを、少なくとも部分的には前記交差点の第一の交通データに基づいて決定する段階であって、前記第一のQ学習カテゴリーは第一の交通パターン・クラスターに対応し、前記第一の交通データは前記第一の交通パターン・クラスターに対応する、段階と；
少なくとも部分的には前記第一のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第一の制御アクションを生成する段階とを含む、
方法。
（付記８）
履歴交通データをクラスタリングすることが、少なくとも部分的には行列長さに基づく、付記７記載の方法。
（付記９）
履歴交通データをクラスタリングすることが、少なくとも部分的には交通パターン特性に基づく、付記７記載の方法。
（付記１０）
前記交通パターン特性が一つまたは複数の閾値を含む、付記９記載の方法。
（付記１１）
前記一つまたは複数の閾値が人間によって指定される、付記１０記載の方法。
（付記１２）
前記クラスタリングが自動的に実行される、付記７記載の方法。
（付記１３）
前記交差点の第二の交通データを決定する段階と；
前記交差点における交通信号を制御する際に使う前記複数のQ学習カテゴリーのうちの第二のQ学習カテゴリーに変更するべきかどうかを決定する段階であって、前記第二のQ学習カテゴリーは第二の交通パターン・クラスターに対応し、前記第二の交通データは前記第二の交通パターン・クラスターに対応する、段階と；
前記第二のQ学習カテゴリーに変更するべきとの決定に応答して、少なくとも部分的には前記第二のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第二の制御アクションを生成する段階とを含む、
付記７記載の方法。
（付記１４）
第二のQ学習カテゴリーに変更するべきかどうかを決定することが、特定数の連続する時間スロットにおいて前記第二の交通パターン・クラスターが生起したかどうかを判定することを含む、付記１３記載の方法。
（付記１５）
連続する時間スロットの前記特定数が、少なくとも部分的には、前記第二の交通データに対応する前記第二の交通パターン・クラスターの発生頻度に基づく、付記１４記載の方法。
（付記１６）
第二のQ学習カテゴリーに変更するべきかどうかを決定することが、特定数の連続する時間スロットのうちのある割合において前記第二の交通パターン・クラスターが生起したかどうかを判定することを含む、付記１３記載の方法。
（付記１７）
前記第二のQ学習カテゴリーに変更するべきとの決定に応答して、前記第一の交通パターン・クラスターを前記第一の交通データを用いて更新する段階をさらに含む、付記１３記載の方法。
（付記１８）
命令を記憶している非一時的なコンピュータ可読記憶媒体であって、前記命令は、プロセッサによる実行に応答して、前記プロセッサに：
複数のQ学習カテゴリーを生成する段階であって、前記複数のQ学習カテゴリーの各Q学習カテゴリーは複数の交通パターン・クラスターのうちのある交通パターン・クラスターに対応する、段階と；
交差点における交通信号を制御するために使う前記複数のQ学習カテゴリーのうちの第一のQ学習カテゴリーを、少なくとも部分的には前記交差点の第一の交通データに基づいて決定する段階であって、前記第一のQ学習カテゴリーは第一の交通パターン・クラスターに対応し、前記第一の交通データは前記第一の交通パターン・クラスターに対応する、段階と；
少なくとも部分的には前記第一のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第一の制御アクションを生成する段階とを実行させるものである、
非一時的なコンピュータ可読記憶媒体。
（付記１９）
前記プロセッサによる実行に応答して、前記プロセッサに：
前記交差点の第二の交通データを決定する段階と；
前記交差点における交通信号を制御するために使う前記複数のQ学習カテゴリーのうちの第二のQ学習カテゴリーに変更するべきかどうかを決定する段階であって、前記第二のQ学習カテゴリーは第二の交通パターン・クラスターに対応し、前記第二の交通データは前記第二の交通パターン・クラスターに対応する、段階と；
前記第二のQ学習カテゴリーに変更するべきとの決定に応答して、少なくとも部分的には前記第二のQ学習カテゴリーに基づいて、前記交差点における交通信号についての第二の制御アクションを生成する段階とを実行させるための命令をさらに記憶している、
付記１８記載の非一時的なコンピュータ可読記憶媒体。
（付記２０）
前記プロセッサによる実行に応答して、前記プロセッサに：
前記第二のQ学習カテゴリーに変更するべきとの決定に応答して、前記第一の交通パターン・クラスターを前記第一の交通データを用いて更新する段階を実行させるための命令をさらに記憶している、
付記１９記載の非一時的なコンピュータ可読記憶媒体。
【符号の説明】
【０１３６】
１０２  交通信号
１０４  歩行者用信号
１０６  センサー
１０８  エージェント
２０２  コーディネーター・システム
２０４  ネットワーク
３０２  センサー・モジュール
３０４  制御アクション計算モジュール
３０６  信号制御モジュール
３０８  通信モジュール
３１０  情報データ記憶部
９０２  中央インテリジェンス・モジュール
９０４  通信モジュール
９０６  情報データ記憶部
１０００  計算システム
１００２  プロセッサ
１００４  メモリ
１００６  データ記憶部
１１０２  モーター化ユーザー行列長さを決定
１１０４  非モーター化ユーザー行列長さを決定
１１０６  制御アクションを決定
１１０８  制御アクションがすべての条件を満たす
１１１０  前記制御アクションを生成
１２０２  データ・コレクション層
１２０４  クラスタリング層
１２０６  交通信号制御層
１４０２  Q学習カテゴリーの数および対応する閾値を決定
１４０４  前記閾値を用いてコンピューティング・システムを構成
１４０６  履歴交通データを取得
１４０８  前記閾値に基づいて履歴交通データを交通パターン・クラスターに分類
１４１０  各交通パターン・クラスターにQ学習カテゴリーを関連付け
１５０２  交通データをモニタリング
１５０４  モニタリングされた交通データに対応する交通パターン・クラスターを決定
１５０６  交通パターン・クラスターの変化？
１５０８  偽陽性の交通パターン・クラスターの変化？
１５１０  前記交通パターン・クラスターに対応するQ学習カテゴリーおよび対応する履歴交通データを選択
１５１２  選択されたQ学習カテゴリー、対応する履歴交通データおよびモニタリングされた交通データを使って制御アクションを生成
１５１４  制御アクション情報を保存
１８０２  交通データをモニタリング
１８０４  モニタリングされた交通データに対応する交通パターンを決定
１８０６  交通パターン変化？
１８０８  交通パターン変化なし基準を満たす？
１８１０  Q学習の学習レートを下げる
１８１２  偽陽性の交通パターン変化？
１８１４  Q学習の学習レートを上げる
【図１】
2018147489.tif 000016
【図２】
2018147489.tif 000017
【図３】
2018147489.tif 000018
【図４】
2018147489.tif 000019
【図５】
2018147489.tif 000020
【図６】
2018147489.tif 000021
【図７】
2018147489.tif 000022
【図８】
2018147489.tif 000023
【図９】
2018147489.tif 000024
【図１０】
2018147489.tif 000025
【図１１】
2018147489.tif 000026
【図１２】
2018147489.tif 000027
【図１３】
2018147489.tif 000028
【図１４】
2018147489.tif 000029
【図１５】
2018147489.tif 000030
【図１６】
2018147489.tif 000031
【図１７】
2018147489.tif 000032
【図１８】
2018147489.tif 000033