生成AIと走り抜けたETロボコン奮闘記
「ETロボコンに、生成AIを使ってチャレンジしてみないか?」
上司であるコンサルタントからのこの一言が、僕のETロボコンチャレンジの始まりだった。普段はコンサルティング業務に追われる入社5年目の僕。与えられた時間は業務時間の10%。限られた時間で成果を出すため、生成AIを開発の強力なパートナーとして迎えることを決意した。ETロボコンの完走、そして入賞という高い目標を掲げ、AIとの二人三脚の旅が始まった。
開発の上流工程:AIとの協業で思考を加速させる
プロジェクトを成功させるには、まず上流工程での綿密な計画が不可欠だ。僕はその段階からAIを積極的に活用することにした。ETロボコンの審査基準やルールブックといった膨大なドキュメントをAIに学習させ、開発プロセス全体のフローを設計してもらおうと試みた。しかし、AIが生成したPFD(プロセスフローダイアグラム)は、どうも的を射ないものばかり。僕は自分で作成したPFDをAIに与え、この工程に沿ってサポートするよう依頼した。AIは僕が設計したプロセスを深く理解し、その後の作業をスムーズに進めてくれた。
次に、ETロボコンの審査で重要となるUMLモデルの作成だ。ここでもAIの真価が発揮された。社内には過去のプロジェクトで作成された専門的なUMLモデルのナレッジがあった。僕は、このナレッジとルールブックをAIに与え、「ライントレースとダブルループを走行するためのドメインモデルと状態遷移図を作成してほしい」と依頼した。
AIは、専門知識が詰まったナレッジを素早く解析し、驚くほど精度の高いモデルを生成してくれた。まるで、優秀なベテランエンジニアがサクッと仕事をこなしているようだ。これにより、僕は複雑な概念を理解する時間を大幅に短縮でき、より本質的な設計の検討に集中できた。AIは単なるツールではない。僕たちの知識を増幅させ、思考を加速させる強力なエンジンだと確信した瞬間だった。

開発の下流工程:AIを“相方”、僕は“ディレクター”
設計フェーズを終え、いよいよロボットの実装に取り掛かった。ここでも僕は、一切コードを書かないという姿勢を貫いた。AIが生成したUMLモデルを基に、コードの実装もAIに依頼した。基本的な制御コードやセンサーからの入力処理など、単一モジュールで完結する部分はスムーズに生成された。
しかし、ここからが本当の戦いだった。AIが生成したコードをロボットに搭載し、コースに乗せた瞬間、物理的な世界との乖離が明らかになった。モーターの個体差、センサーのわずかなズレ、バッテリーの残量...。
AIが生成する完璧なコードは、こうした現実世界の不確実性までは考慮してくれない。ロボットはまっすぐ走らず、蛇行し、時折コースから外れて暴走した。「おい、聞いてくれよ!」と叫んでも、ロボットは知らん顔だ。
それでも、僕はAIに結果をフィードバックし続けた。
「ロボットが右に蛇行するログデータだよ。これを分析して、コードを修正してくれないか?」 「このダブルループ部分で急に停止する。原因を特定して、改善策を提示してくれ」
AIは、僕が与えたログデータを分析し、問題点を特定し、新たなコードを生成してくれた。まるで、優れた映像作家と編集者の関係のようだった。AIが素材(コード)を生成し、僕はその出来栄えを見て、細かな調整を指示する“ディレクター”に変わった。この姿勢を崩さず、予選会の前日まで、ひたすらAIとの対話を繰り返した。
予選会当日・・・そして僕が得たこととは
限られた時間の中で、AIと僕は多くの課題を乗り越えてきた。プロセスに沿ってタスクをこなし、ロボットを走らせ、ログを分析し、コードと向き合い、少しずつタイムを縮めていった。
そして迎えた予選会当日。会場の熱気に包まれ、緊張が走る。
1走目。 準備時間も終わり、いよいよスタート。しかし、ロボットはなぜか動かない。スタートボタンを何度も押すうちに、ようやく動き出した。完璧なスタートとは言えなかったが、なんとかコースへ。しかし、カーブに差し掛かったところで、ラインから外れてしまい、転倒してしまった。タイムは計測不能。僕は悔しさをにじませた。AIが生成したコードは、スタート時の不確実性や複雑なカーブを攻略するにはまだ精度が足りなかった。
2走目。 僕はロボットに最後の調整を施し、心を込めてスタートボタンを押した。今度は違う。ロボットは滑らかなライントレースで加速し、見事にダブルループを攻略した!会場からも拍手が沸き起こる。しかし、まさかの事態が起きた。ロボットが突然迷走してしまったのだ。完走はできなかったが、ダブルループを成功させたことは大きな成果だった。
今回の挑戦は、AIの可能性と、それを使いこなす人間の重要性を教えてくれた。
今回の経験から分かったこと、そして未来へ・・・

今回の経験から、開発にAIを効果的に取り入れるための次の2つの条件が見えてきた。
これらの条件が満たされれば、AIは開発者の強力な味方となり、開発プロセスは劇的に進化するだろう。若手エンジニアである僕にとって、これは希望に満ちた未来だ。
僕のAI活用の挑戦は、まだ終わっていない。この経験を胸に、これからもエンジニアとして成長し、AIとともに新しい価値を創造していきたい。
開発にAIを効果的に取り入れるための2つの条件
良質なナレッジの蓄積と活用:
AIは与えられた情報以上のことはできない。だからこそ、専門的な知識やノウハウをナレッジとして整理し、AIに与えることが、高いアウトプットを得るための鍵となる。
AIの得意分野の見極め:
定型化されたタスクや初期段階の検討はAIに任せ、人間の洞察力や創造性を活かすべき部分に集中する。
こちらからお願いします





