概要

1　はじめに
航空交通管理とは，航空機の安全かつ秩序立った飛行を行うことを目的に，航空機を外部から支援する業務である[1]. 例えば，航空機同士が衝突したり接近しすぎたりしないよう，各航空機へ飛行する高度や位置を指示するものがある．近年の航空輸送の需要増加に伴い，AMAN（Arrival Manager）[ 2 ]などといった，管制官の負担軽減を目的とする支援システムの導入が進んでいる.これらのシステムは,航空機へ与える指示を計算し，管制官へ提示する.管制官は，提示された内容を参考にしながら航空機へ実際に指示を与える.これら従来の支援システムの弱点として，航空機への指示内容案を管制官へ一方的に提示するだけであることが挙げられる．管制官は，自身の経験や現在の状況に基づき，提示された指示内容案を受け入れるかを判断する。支援システムの提示した指示内容案が不適切と判断した場合，管制官は，航空機への指示内容を自ら修正する必要があり，システムとの協調性に課題が残る.本研究では，指示内容案を管制官へ提案するだけでなく，管制官が双方向でやり取りできる支援システム，“chat-AMAN”を提案する．chat-AMANは，提示した指示内容案に対し，管制官が自然言語形式のチャットを受け取り，その意図に基づいて再び提示し直すものである.チャットの内容としては，提示された指示内容案に対し，管制官の経験や現在の状況に基づいて修正依頼をするものを想定している.この仕組みにより，両者で協働しながら航空機への指示内容を決定することができる．従来の支援システムとchat-AMANの比較を図1に示す.与えられた自然言語形式の指示文をコンピューターが解釈可能な形式に変換する先行研究例は多数ある．例えば，[3]では，BERTモデルを，[4]ではG³と呼ばれる構文解析フレームワークを，[5]では強化学習を用いてそれぞれ自然言語で書かれた指示文を解釈している.これらの研究の共通点は，指示文の意図を直接行動に変換していることである.それに対し，本研究で提案するchat-AMANでは，プロンプトの意図が直接指示内容案へ変換される訳ではない.  chat-AMANの構造を図2に示す. chat-AMANは“コントローラC”と“インタプリタI”という2つの要素から構成されている. 本稿では，管制官から受け取る自然言語形式の文字列を“プロンプトp”と呼ぶ. コントローラCは，最適制御問題を用いて各航空機への高度指示を作成する.最適制御によって，様々な制約を満たしつつ，最適管制の様子の比較:従来の支援システム（左）と提案するchat-AMAN（右）な行動を決定することができる．本研究では，安全な飛行軌道を得られるような制約を組み込んでいる。また，最適制御問題はパラメータθによってパラメトライズされている.インタプリタIは，自然言語処理技術を用いてプロンプトpを分析し，意図に基づいてパラメータθを更新する.その後，修正された最適制御問題によって指示内容案が作成され，再度管制官へ提示される．本研究の貢献は二点ある．一つ目は，管制官と双方向のコミュニケーションを取りながら航空機への指示内容を決定するという新しい管制の様態を提案することである．二つ目は，管制官からの自由度の高い自然言語を許容しつつも，航空機の安全な運行を担保するようにchat-AMANを設計している点である．図2に示す通り，chat-AMANは管制官からプロンプトpを受け取る要素と指示内容案を作成する要素が独立している．この分離によって，管制官からの意図を安全性を損なうことなく反映でき，かつ，最適な指示内容案が作成できる.
2 chat-AMAN
chat-AMANを構成するインタプリタIとコントローラCについて，それぞれ2.1，2.2で紹介する.
2.1  インタプリタI
インタプリタIは，管制官から与えられたプロンプトを分析し，その意図に基づいてコントローラ中のパラメータθを更新する.プロンプトの分析は，抜き出し型質疑応答タスクと類似文書検索タスクの２つを組み合わせて行う.抜き出し型質疑応答タスクこれは，コンテキスト文に対する質問文に回答するタスクである[6]. インタプリタでは，コンテキスト文としてプロンプトを,質問文として予め用意しておいた文を当てはめることで，プロンプトから所望の情報を抜き出す.また，本研究では，言語モデルとしてHugging Faceのdistilbert-base-cased-distilled-squadを使用した[7].類似文書検索タスク文書類似タスクとは，文書同士の意味合い上の類似度を計算するタスクである[8].このタスクでは，文の埋め込み表現を計算する言語モデルが使われる．本研究では，このタスクを応用して，与えられた文に最も類似している文を検索するタスク，“類似文書検索タスク”を構築する.文の埋め込み表現を出力する言語モデルをfemb,対象とする文をp，比較対象となるn個の文をpi, i ∈ {1,...,n}として，最も類似している文i*を以下のようにして求める. i* = arg max cos(femb(p), femb(pi)) (1)ただし, cos(x,y)はベクトルx,yのコサイン類似度を表す.インタプリタでは，pにプロンプト，p；に予め用意した文（“代表文”と呼ぶこととする）を当てはめ，プロンプトを判別する.また，本研究では，fembとしてHugging Faceのdeepset/sentence_bertを利用した[9].次に、プロンプトの要件について述べる.プロンプトは“到着時間差クエリ”と“高度クエリ”の2種類に分けられる．両者は類似文書検索タスクによって判別される．各種類において，以下のような情報を抽出する.なお, “E”は抜き出し型質疑応答タスクに、“S”は類似文書検索タスクによって抽出される情報であることを表している.到着時間差クエリ航空機間の到着時間差制約(3)に言及する.  query = etagapとする. re/E対象となる航空機間.  re =隣り合う2つのうち小さい方の航空機番号とする. op/S制約を増やすか減らすか.増やす場合はop = +1，減らす場合はop = −1とする．高度クエリ航空機の高度制約(4)，(5)に言及する. query = heightとする. re/E対象となる航空機. re =航空機番号とする. bo/S言及対象となる制約の種類.下限の場合はbo = min，上限の場合はbo = maxとする. op/S制約を上げるか下げるか.上げる場合はop = +1，下げる場合はop = −1とする. ip/S 指示点の番号.  ip ∈ {1,2}とする.なお，抜き出し型質疑応答タスクにおける質問文，類似文書検索タスクにおける代表文は付録に記載してある.ここで.修正マーカー d，更新定数Δを導入する.これらの次元は，コントローラＣが持つパラメータθと同じである．修正マーカーは，パラメータのうちどの要素を増やすか，あるいは減らすかを表すべクトルであり，以下のように表される. d = [d (1) . . .d (N-1) d (1) d (1)更新定数Δは，パラメータの各要素において，増やすあるいは減らす幅を表す非負の定数である．なお，具体的な値は付録に記載してある.修正マーカー dは，プロンプトの意図に基づいて修正すべきパラメータθと同じ位置の要素が非零となる.具体的には，Algorithm1により生成する. Algorithm 1プロンプトから得られた情報を基に修正マーカー dを生成する. Require: queryプロンプトの種類1:  if query = etagap then d T = op 2: 3:  else if query=height then 4: 5: if bo = min then 6: 7: bosgn = −1 8: end if d(re) = op bosgn 9: 10:  end if 11: return d最後に，修正マーカー dと更新定数Δを使って，現状のパラメータθからつぎのようにパラメータを更新する. θ † = Proj≥0 (θ + Δ ⊙ d)
なお，Proj 20は，受け取ったベクトルの要素全てが非負の値となるように射影する関数である.これによって，コントローラの制約を厳しくする方向のみに自由度を与えることができる.この意義については2.2にて述べる.
2.2 コントローラC
コントローラは，最適制御理論に基づいて各航空機への指示内容案を決定する．このための最適制御問題は，和田ら(2023)の先行研究[10]をもとに以下のように設定した.図３指示が与えられた時の航空機の軌道例N機の航空機が空港に向けて飛行する状況を想定する．この時，航空機同士が接近しすぎないよう，各航空機に高度指示を与えるとする.これらの航空機が空港へ向かうまでの地点上に２つの点を導入し，それぞれ指示点1（Indicate Point 1，“IP1”）と指示点2 (“IP2”)と呼ぶこととする.コントローラは,各航空機iのIP1とIP2における通過高度h(i), h(i)を生成する。指示h ( i ) , h ( i )が与えられた時の航空機の軌道を図3に示す．横軸は空港までの距離，縦軸は航空機の高度を示す.  h(i),h(i) Vi ∈ {1,...,N}を決定する際，以下のような目標と制約が課される.到着時間差制約安全性の観点から，隣り合う航空機iとi + 1間の予想到着時刻の差が120 s + θ (i)以上になるようにすること。航空機iの予想到着時刻をt(i) (h(i), h(i)とすると，この制約は以下のように表される. t(i+1)(h(i+1),h(i+1)) - t(i)(h(i),h(i)) ≥ 120s+θ(i), Vi E {1, . . . , N – 1}. (3)高度制約運用上の仕様として，通過高度h(i),h(i)は次のような上下限を持つ. h (i) ∈ [20,000 ft + θ (i) − θ (i) hççì ∈ [14,000 ft + θ (i)      19,000 ft − θ (i)     ], Vi ∈ {1,...,N}.
なお，h (i)は現在時刻における航空機iの高度である。軌道目標通過高度h (i) , h (i)はそれぞれ事前に定め
られた参照高度h (i)   h (i)  となるべく近い値とすること。評価関数を以下のように定める.
以上をまとめて，各航空機への高度指示h(i),h(i),  Vi ∈ {1,...,N}は以下の最適化問題をb0sgn = +1 else if bo = max then求解することで得られる. C :  min J s.t.  (3), (4), (5) (7)ただし，制約(3)， (5)中の数値のうちθ = [θ(1) . . .θ(N-1) θ(1)      θ(N)  θ(1)     θ(N) θ(1)       θ(N)   θ(1)      θ(N)  ] T  ∈ R SN−1がパラメータであり，インタプリタが必要に応じて調整する.また，パラメータθの値は全て非負に限定されており，(7)の制約を厳しくする方向のみに自由度があるといえる.
３　数値実験
管制官とchat-AMANの双方向のコミュニケーションの様子についてシミュレーションする．管制官がchat-AMANヘプロンプトを与えるにつれ，高度指示がどのように変化していくかを確認する.ここでは，関西国際空港に到着するN = 6機の航空機を想定する．各航空機の詳細は付録の表2に示している．(3)にて使用される予測到着時刻t(i) (h(i), h(i)は[11]のシミュレータから収集したデータを元に推定し，作成した.
3.1手順
まず.コントローラCのパラメータの初期値をθ = 0に設定し，コントローラが(7)を求解して高度指示案h ( i ), h ( i ), i ∈ {1, . . , N}を生成する. 高度指示案を受けて，管制官はプロンプトによって修正依頼を行うとする．ここでは，以下に示すプロンプトが順番に与えられるとする. 1. please increase the gap between the flight 1 and 2. 2.  low the max height on flight 4 at the indicate point 1 3.  we need more eta gap between the flight 4 and 5 !各プロンプトを与えるごとに，インタプリタIがパラメータθを更新し，それに基づいてコントローラCが高度指示案を再生成する.
3.2結果
はじめに，各プロンプトに対するインタプリタの解釈結果を示す.修正マーカー d中の非零成分は，プロンプト1，2，3においてそれぞれd (1) = +1， d (1) = +1,  d (4) = +1が得られた.  3例とも，プロンプトの意図通りに解釈が行われ、適切な修正マーカー dが生成されたと言える.次に，コントローラＣが出力する高度指示h(''の変化を図4示す. 横軸はプロンプトの番号，縦軸は各航空機への指示高度を表す.プロンプト番号0では，インタプリタにまだプロンプトを与えていない段階での指示高度を表す. プロンプト番号1,  2,  3は，それぞれプロンプト1，2，3を与えた後の指示高度を表す. プロンプト2により，航空機4（紫）の指示高度h (4)が降下していることを確認できる.最後に，航空機間の到着時間差を表1に示す．プロンプト1の内容に基づいて航空機1,2間の到着時間差が，プロンプト3の内容に基づいて航空機3,4間の到着時間差がそれぞれ増加した．また，到着時間差に言及していないプロンプトが与えられた際は，到着時間差が縮まっていない．このことから，安全性を損なうことなく管制官の意図を指示内容案へ反映できていることが分かる.

4
結論
管制官との双方向のやりとりを目指した管制支援システム“chat-AMAN”を提案した．chat-AMANは，自然言語を受け付けられるようにすると同時に，安全性と運用上の制約を満たす指示内容案を提示できる構造となっている．数値実験では，管制官とのやり取りを通じて指示内容が得られる過程を示した.また，定められた制約を満たしつつ，プロンプトの意図に沿った指示内容案が得られたことを確認できた. [1] Eri Itoh. Introduction to Air Traffic Management System. Corona Publishing, 2023   (in Japanese). [2] EUROCONTROL. Arrival Manager Implementation Guidelines and Lessons Learned. 2010. Sagar Gubbi Venkatesh, Raviteja Upadrashta, and Bharadwaj Am- [3] rutur. Translating Natural Language Instructions to Computer Pro- grams for Robot Manipulation.  In 2021 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) , pp. 1919– 1926. IEEE Press, 2021. Stefanie Tellex, Thomas Kollar, Steven Dickerson, Matthew R. [4] Walter, Ashis Gopal Banerjee, Seth Teller, and Nicholas Roy. Un- derstanding Natural Language Commands for Robotic Navigation and Mobile Manipulation. In Proceedings of the Twenty-Fifth AAAI Conference on Artificial Intelligence , AAAI'11, pp. 1507–1514. AAAI Press, 2011. [5] S. R. K. Branavan, Harr Chen, Luke S. Zettlemoyer, and Regina Barzilay.  Reinforcement Learning for Mapping Instructions to Actions. In Proceedings of the Joint Conference of the 47th Annual Meeting of the ACL and the 4th International Joint Conference on Natural Language Processing of the AFNLP: Volume 1 - Volume 1 , ACL '09, pp. 82–90, USA, 2009. Association for Computational Linguistics. [6] Luqi Wang, Kaiwen Zheng, Liyin Qian, and Sheng Li. A Survey of Extractive Question Answering. In 2022 International Conference on High Performance Big Data and Intelligent Systems (HDIS) , pp. 147–153, 2022. Victor Sanh, Lysandre Debut, Julien Chaumond, and Thomas Wolf. [7] Distilbert, a distilled version of bert: smaller, faster, cheaper and lighter.  In NeurIPS EMC 2 Workshop , 2019. Daniel Cer, Mona Diab, Eneko Agirre, Inigo Lopez-Gazpio, and [8] Lucia Specia. SemEval-2017 Task 1: Semantic Textual Similarity Multilingual and Crosslingual Focused Evaluation. In Proceed- ings of the 11th International Workshop on Semantic Evaluation (SemEval-2017). Association for Computational Linguistics, 2017. [9] deepset. Hugging face: deepset/sentence_bert, 5 2021. Shinji Wada, Minami Ishii, Masaki Inoue, and Daichi Toratani. [10] Semi-Continuous Descent Operation:  A Fuel-Efficient Interval Management Algorithm. Journal of Aircraft , 2023. [11]   Daichi Toratani, Navinda Kithmal Wickramasinghe, and Hiroko Hirabayashi.  SIMULATION TECHNIQUES FOR ARRIVAL PROCEDURE DESIGN IN CONTINUOUS DESCENT OPER- ATION. In 2018 Winter Simulation Conference (WSC) , pp. 2249– 2260, 2018. 3節で設定した更新定数について述べる．更新定数Δ ∈ R 5 N −1 を≥0 Δ = [Δ r ) . . . Δ ( N -1) △ l ,min · · △ l ,min △ l ,mi (N) 2,max] T ∈ R5N-1 △ 2,min · · · △ 2,min △ 2,max (8)のように表すとすると、 Δ ( ′ ) = 5 s Vi ∈ {1, . . . , N − 1} = 1000 ft = Δ (i) (9) (10) Vi ∈ {1, . . . , N}.と設定した.抜き出し型質疑応答タスクにおける質問文，類似文書検索タスクにおける代表文は以下の通りである,プロンプトの種類代表文到着時間差クエリ “To increase or decrease the eta gap between two flights."高度クエリ “To lower or raise the min or max height of indicate point 1 or indicate point 2 on a flight."到着時間差クエリ/re質問文 “Which flight number is the interval between where the gap should be up- dated?"到着時間差クエリ/op代表文増やす“We should increase the gap between the flights. We need more gap."減らす “We should decrease the gap between the flights. We need less gap."高度クエリ/re質問文 “Which flight do we refer to?”高度クエリ/bo代表文下限 “We refer to the min height.”上限 “We refer to the max height.”高度クエリ/op代表文上げる “We should raise the height.”下げる “We should lower the height.”高度クエリ/ip代表文IP1  “We should lower or raise the height at indicate point 1." IP2  “We should lower or raise the height at indicate point 2."