スマートマラソン訓練システムに関する次の記述を読んで,設問に答えよ。
マラソンとは,42.195kmの距離を走る長距離走である。B社は,所属する陸上チームの選手が20kmの訓練コースで行う走行訓練を支援する,スマートマラソン訓練システム(以下,訓練システムという)を開発している。訓練システムは,選手の記録向上を目的に,訓練中の選手の走行状態を分析し,分析した結果を陸上チームの監督へ知らせ,必要に応じて監督が訓練中に各選手に指示を出すことができる。訓練システムの概要を図1に示す。
図1 訓練システムの概要
訓練システムは,次の構成要素から成る。
・選手を撮影する先頭ドローン及び後続ドローンの2台のドローン
・先導車に搭載して選手のデータを収集,分析するデータ収集装置
・データ収集装置又はサーバに接続し選手の映像,分析結果を把握するために監督が使用するタブレット
・訓練終了後,データ収集装置が収集,分析した各種のデータを訓練データとして保存するサーバ
・選手の腕に装着するスマートウォッチ(以下,ウォッチという)と,選手のトレーニングウェアに埋め込まれている走行フォームを計測するセンサー(以下,フォーム計測センサーという)
〔訓練システムの機能概要〕
訓練システムの機能概要を次に示す。
・選手支援機能
訓練中の選手の情報を当該選手のウォッチに表示する。選手の情報には,訓練コース上の位置情報(以下,選手位置情報という),訓練コースを1km単位で区切った区間ごとの選手の順位(以下,区間順位という),区間の走行時間(以下,ペースという),あらかじめ計画したペースの目標値及びペースの目標値と実際のペースとの差異(以下,ペース差異という)がある。
・走行中の選手のデータ収集・分析機能
選手の心拍数と血中酸素濃度(以下,選手状態情報という),選手位置情報,フォーム計測センサーが計測した情報(以下,フォーム計測情報という)を収集し,それらを基に区間順位,ペース差異の算出及び走行フォームの変化の分析を行う。
・監督支援機能
タブレットを使って,選手の区間順位,前後の選手との距離,ペースとペース差異区間の走行フォームの変化(以下,これらをまとめて個人分析結果という),選手状態情報,選手位置情報,ドローンからの映像を表示する。さらに,指定した選手のウォッチに音声の送信を行う。
〔訓練システムの構成要素〕
訓練システムの構成要素を表1に示す。
表1 訓練システムの構成要素
〔構成要素間のメッセージ概要〕
構成要素間で送受信する主なメッセージの概要を表2に示す。
表2 構成要素間で送受信する主なメッセージの概要
(1)訓練準備・開始
・タブレットから"訓練準備”を受信すると,ドローンに“ a ”を送信する。
・ドローンから“ b ”を受信し,ドローンが訓練開始位置に移動したことを確認すると,“ c ”をタブレットに送信する。なお,ドローンは訓練開始位置に到達すると高度を保ったまま前後左右方向の移動を止めた状態(以下,ホバリングという)となる。
・タブレットから“訓練開始”を受信すると,ウォッチに“走行指示”を,ドローンに“飛行指示”をそれぞれ送信する。
(2)訓練中,選手又は監督へ提供する情報
・“選手情報”に含まれるフォーム計測情報を基に,走行フォームの変化を選手が区間を通過するごとに分析する。また,“選手情報”に含まれる選手位置情報の変化からペースを計算し,訓練計画のペースの目標値と比較してペース差異を算出する。分析完了後,選手ごとの“個人分析”をそれぞれのウォッチに送信する。タブレットには全選手の“個人分析”を送信する。
・訓練中にドローンから“選手映像”を受信し,映像データを保存するとともに,タブレットへ“選手映像”を送信する。
・タブレットから“音声”を受信すると,“ d ”。
(3)ドローンの飛行中の位置制御
・先頭を走行する選手の“選手情報”から直近5秒間の走行速度の平均(以下,平均速度という)を算出し,平均速度を先頭ドローンの飛行速度とする。また,先頭の選手が平均速度で走行した場合に5秒後に到達すると推定される位置(以下,推定位置という)を算出し,推定位置から更に30m先を通過目標に設定して飛行速度を加えた“飛行計画”を作成し,1秒ごとに先頭ドローンに送信する。ただし,訓練開始直後の5秒間は e が f ので,訓練開始時の飛行速度の初期値を使用する。
・先頭ドローンの通過目標から飛行ルート上の間隔が300mに保たれる位置を後続ドローンの通過目標とし,飛行速度を加えた“飛行計画”を作成し,後続ドローンに送信する。
・ドローンから“ドローン情報”を受信するごとに“飛行計画”と比較し,差分がある場合は,当該ドローンの通過目標及び飛行速度を補正した“飛行計画”を送信する。
・先頭ドローンが訓練終了位置に到達すると,先頭ドローン及び後続ドローンは,その時の位置でホバリングをする。
(4)訓練終了
・“選手情報”を基に全選手がゴール地点に到達するか,訓練開始から1時間30分が経過すると“訓練終了”をウォッチ及びドローンへ送信し,その後,サーバへ訓練データを送信する。ドローンは,“訓練終了”を受信すると撮影を完了しあらかじめ指定された位置に着陸する。
〔データ収集装置の構成〕
データ収集装置の構成要素の概要を表3に示す。
表3 データ収集装置の構成要素の概要
〔データ収集装置の制御部のソフトウェア構造〕
データ収集装置の制御部ではリアルタイムOSを使用する。データ収集装置の制御部のタスク構造を図2に,データ収集装置の制御部のタスク処理概要を表4に示す。
図2 データ収集装置の制御部のタスク構造
表4 データ収集装置の制御部のタスク処理概要
設問1 訓練システムについて答えよ。
(1)1台のドローンが撮影した1Gバイト分の映像データの撮影時間は何秒になるか。答えは小数第2位を四捨五入して,小数第1位まで求めよ。ここで,1kバイト=1,000バイト,1Mバイト=1,000kバイト,1Gバイト=1,000Mバイトとする。
解答・解説
解答例
5.6
解説
ー
(2)2台のドローンから受信した選手の映像データをデータ収集装置の映像処理ユニットで保存する。映像処理ユニットは,何Gバイトのデータ容量が必要か。答えは小数第2位を切り上げて,小数第1位まで求めよ。ここで,1Mバイト=8Mビット,1Gバイト=1,000Mバイトとし,2台のドローンから受信した映像データの合計は最大3時間とする。
解答・解説
解答例
6.8
解説
ー
(3)〔データ収集装置の動作概要〕について答えよ。
(a)本文中の a 〜 c , e , f に入れる適切な字句を答えよ。
解答・解説
解答例
a:撮影準備
b:ドローン情報
c:訓練準備完了
e:平均速度
f:算出できない
解説
ー
(b)本文中の d に入れる適切な内容を35字以内で答えよ。
解答・解説
解答例
指定された選手IDをもつウォッチへ“音声”を送信する
解説
ー
(4)ドローンについて答えよ。
(a)先頭ドローンが訓練終了位置に到達した後,先頭ドローン及び後続ドローンは,“訓練終了”を受信するまでどのような動作をするか。20字以内で答えよ。
解答・解説
解答例
ホバリングで撮影を継続する。
解説
ー
(b)先頭ドローンは,訓練の途中でデータ収集装置からの“飛行計画”をある一定回数連続して受信できなくても,可能な限り飛行し続け,撮影を継続するようにしている。そのためには,どのようにして飛行すべきか。40字以内で答えよ。
解答・解説
解答例
あらかじめ保持した飛行ルートを,最後に受信した飛行速度で飛行を続ける。
解説
ー
設問2 制御部のタスク設計について答えよ。
(1)訓練タスクについて答えよ。
(a)訓練の開始を受けてから訓練の終了を通知するまでの間に選手タスクに通知するメッセージを表4中の字句で二つ答えよ。
解答・解説
解答例
・選手分析送信指示
・音声送信指示
解説
ー
(b)表4中の g に入れる適切な内容を20字以内で答えよ。
解答・解説
解答例
飛行ルート上の間隔が300m
解説
ー
(c)表4中の h に入れる適切な内容を25字以内で答えよ。
解答・解説
解答例
訓練の開始を受けてから1時間30分が経過
解説
ー
(2)選手タスクについて答えよ。
(a)表4中の下線(ア)のある条件とは何か。40字以内で答えよ。
解答・解説
解答例
選手位置情報を参照し,選手が1区間分を走り切ったと判断したとき
解説
ー
(b)“個人分析”として送信可能な個人分析結果の作成が完了するのは,どのタイミングか。20字以内で答えよ。
解答・解説
解答例
フォーム分析の結果を受けたとき
解説
ー
(3)フォーム分析ユニットの制御は,選手タスクがフォームタスクを介して行っている。その目的を20字以内で答えよ。
解答・解説
解答例
フォーム分析ユニットの資源管理
解説
ー
設問3 訓練システムの機能追加について答えよ。
選手の安全管理を目的として,体調不良の可能性がある選手(以下,注視選手という)の訓練中の映像を,後続ドローンでクローズアップ撮影し,警告及注視選手に関する情報をタブレットに表示する機能を追加することにした。ここで,クローズアップ撮影とは,注視選手のうちの1人だけを接近して拡大撮影することである。
〔データ収集装置の変更点〕
データ収集装置の変更点を次に示す。
・選手状態情報又は個人分析結果から体調不良と推測される選手を注視選手と判断する。
・注視選手が1人の場合は,その選手をクローズアップ撮影対象(以下,クローズアップ選手という)とする。複数の注視選手が存在するときは,体調不良の度合いが最も高そうな選手をクローズアップ選手とする。
・クローズアップ撮影をするとき,クローズアップ選手を対象として先頭ドローンの通過目標と同様の方法で設定した通過目標に,飛行速度を加えた“アップ飛行計画”メッセージを新たに追加し,1秒ごとに後続ドローンに送信する。
・注視選手が存在するときは,後続ドローンに“アップ飛行計画”を送信し,注視選手が存在しないときは, i 。
・注視選手及びクローズアップ選手の情報をタブレットに送信するメッセージを新たに追加する。
〔ドローンの変更点〕
ドローンの変更点を次に示す。
・走行中の選手をクローズアップ撮影する機能を追加する。
・データ収集装置から“アップ飛行計画”を受信すると,走行中の選手をクローズアップ撮影する。
〔データ収集装置の制御部のタスクの変更概要〕
データ収集装置の制御部のタスクの変更概要を表5に示す。
表5 データ収集装置の制御部のタスクの変更概要
(1) i に入れる適切な内容を15字以内で答えよ。
解答・解説
解答例
“飛行計画”を送信する
解説
ー
(2)先頭ドローンタスクが下線(イ)の処理を行う目的を30字以内で答えよ。
解答・解説
解答例
先頭ドローンと後続ドローンの衝突を回避するため
解説
ー
(3)クローズアップ撮影中,後続ドローンの通過目標が前回の設定値から大きく変化した。それは,どのような場合か。20字以内で答えよ。
解答・解説
解答例
クローズアップ選手が変わった場合
解説
ー
(4)追加機能の動作検証を実施したところ,クローズアップ撮影が始まらないという状況が発生した。この状況を回避するために変更するタスク名を表5中のタスク名で答えよ。また,タスクの変更内容を35字以内で答えよ。
解答・解説
解答例
タスク名:訓練タスク
変更内容:一度決定したクローズアップ選手は,一定時間変更しない。
解説
ー
IPA公開情報
出題趣旨
近年,様々なスポーツにおいて,競技者の状況をデータ化し,分析することで,記録更新に向けた適切な課題を定めて解決できるようになった。
本問では,スマートマラソン訓練システムを題材として,要求仕様の理解力,要求仕様に基づいてリアルタイム OS を使用して最適に設計する能力,及び要求仕様の追加に対する理解力,対応力を問う。
採点講評
問 2 では,競技者の記録更新を目的としたスマートマラソン訓練システムを題材に,要求仕様の理解,要求仕様に基づいたリアルタイム OS を使用した最適な設計,及び要求仕様の追加への理解と対応について出題した。全体として正答率は平均的であった。
設問 1(4)(b)は,正答率がやや低かった。ドローンが訓練の開始から終了までの飛行ルートを保持していることから,通信が一定回数途絶えた場合,選手の撮影を継続するにはどのような速度で撮影し続けるとよいのかを考慮して解答してほしい。
設問 2(3)は,正答率が低かった。フォーム分析ユニットは 1 選手ごとに AI 分析を行っていることから,複数の選手タスクの要求を処理するにはフォーム分析ユニットの排他制御が必要になることを理解して解答してほしい。
設問 3(4)は,正答率が低かった。注視選手とクローズアップ選手を混同したと思われる解答が一部見受けられた。組込みシステムの開発において,追加機能への理解と,機能追加に伴う不具合への対応は重要である。機能追加前の仕様と比較しつつ,十分に理解した上で解答してほしい。