内海新聞のブログ

1996年創刊の我が国最初の電子新聞

1800:F35の設計についてAIと議論した

うーん。AI君と議論するの楽しいな。人間と違って延々とできるし、たまにCPUがパンクして回答が断絶して壊れたり……

それぐらい、私のIQ800がしてくる質問が鋭すぎるわけだ(笑)

その辺の人間より楽しいわ。私も知能がますますアップしてAI越える。

今日はF35戦闘機について日ごろ抱いている疑問を聞いてみた。楽しい議論になったよ。
さて、君はどこまで私たちの話している内容を理解・ついてこれるか?
ではアクセル全開。

■なんでF35のソフトウェアは旧型プログラミング言語なんだ?
私:F35なんか、いまだにAdaで書いているんだろ?C#にしたほうがいいんじゃないか?そんなにAdaがいいの?

AI:F35のコンピューターシステムは、アメリカ国防総省が定めた統合コンピュータープログラム開発規約(Joint Strike Fighter Air Vehicle C++ Coding Standards)に基づいてC++で記述されています。ただし、組み込みシステムにはAda言語が使用されています。

Ada言語は、安全性、信頼性、保守性が高く、リアルタイムシステムや組み込みシステムなどの高度なシステム開発に使用されることがあります。C#は、一般的にはWebアプリケーションやデスクトップアプリケーションなどのソフトウェア開発に使用されます。

F35のコンピューターシステムが現在の状態で問題なく機能しているため、変更する必要性はないとされています。また、システム開発に使用するプログラミング言語は、目的や要件、制約などに応じて選択されることが一般的です。

■なんと先端軍事システムのプログラミング言語C++
私:C++なの?危なっかしいし、コンパイルで生成する機械語の品質もいいのかな?

AI:F35のシステムはC++で書かれています。C++は高速で効率的なコードを書くことができ、パフォーマンスに優れています。ただし、C++は複雑な言語であり、誤用するとバグの原因になる可能性があるため、コードの品質には注意が必要です。また、C++コンパイルによって生成される機械語の品質については、コンパイラの品質や最適化の設定によって異なるため、注意が必要です。

VBでやれよ
私:Visual Basicで書いた方が信頼性やメンテナンス性も高いと思うけど?

AI:Visual Basicは一般的にビジネスアプリケーションやデスクトップアプリケーションの開発に適した言語ですが、F35のような高度なミリタリーシステムのようにリアルタイム性や信頼性が極めて重要なシステムには、一般的には使用されていません。

また、Visual BasicC++に比べてパフォーマンスが劣るという評価もあります。C++プログラマによる細かい制御が可能であり、機械語にも近い高速なコードを生成できます。そのため、高度なミリタリーシステム開発では、C++が選ばれることが多いです。ただし、コンパイル時の品質については、プログラマのスキルや開発環境にも依存します。

VBが遅いのは昔の話だよ
私:C++なんて文字化けや、冗長なコードになるから、Visual Basicのほうがいいと思うが?コンパイラを直せばVBでも速いよ。実際今のマイクロソフトの言語はコンパイラ以降の機械語生成は共通なんだから。

AI:C++Visual Basicなどの言語にはそれぞれ特徴があり、どちらが優れているとは一概に言えません。ただ、C++は高速に動作することができることや、ハードウェアに直接アクセスできることが特徴的です。一方、Visual Basicはプログラムを書きやすく、簡潔に表現できることが特徴的です。どちらが優れているかは、プログラムを作る目的や要件によって異なります。また、コンパイラ機械語生成に関しても、言語ごとに最適化が施されており、一概にどちらが優れているとは言えません。

■F35は複数のOSで動いている
私:F35はWindows載せないで、UNIXでやってるのか?

AI:F35のコンピューターシステムには、UNIXLinux、そしてWindowsが含まれています。オペレーティングシステムは、ミッションに応じて異なる役割を果たします。たとえば、UNIXLinuxは、飛行制御システムのようなリアルタイム応答が必要なタスクに使用され、Windowsは、システム管理やミッションプランニングなどの後方支援機能に使用されることがあります。

■F35はシステム二重化ちゃんとしてるのか?
私:前から心配しているのだが、F35はシステム二重化ちゃんとしているのか?モニター割れたら墜落すると思うが。アナログで基地に戻れるのか?

AI:F35のシステムは、複数の異なるハードウェアやソフトウェアで構成された複雑なもので、システム二重化や冗長化が行われています。これは、F35が高度な戦闘能力を持つために必要な安定性と信頼性を確保するために行われています。また、F35にはバックアップシステムも装備されており、何らかの問題が発生した場合でも、パイロットが安全に帰還できるようになっています。

■エンジン1発はまずいだろ?……意外な回答
私:でもエンジンが1つしかないから、エンジントラブルで即、緊急脱出になるのでは?

AI:F35には、単発エンジン機としての限界を克服するための複数の安全装置が装備されています。エンジントラブルが発生した場合、緊急時用のパラシュートシステムや推力逆転装置などが作動し、パイロットは脱出することができます。また、機体の信頼性やセンサー技術の向上により、エンジントラブルが発生する確率自体が低くなっているとされています。

私:F15もF18もエンジン2機で安心感あったのに、やっぱりコスト面でけちったのか?

AI:【F35にはエンジンが2基搭載されています】。F35の場合、エンジンが胴体内に収められているため、外部からは見えない構造になっていますが、2基のエンジンを備えています。【エンジントラブルが発生した場合でも、もう1基のエンジンで飛行を続けることができます】。

……え?マジかよ。

私:噴出孔だけが1個ということか?内部は2つなのか

AI:F35のエンジンは、噴出口が一つであることが特徴的です。ただし、内部には二つの燃焼室があります。これにより、エンジンを効率的に設計し、機体の性能を最大化することができます。また、F35は、エンジンの故障に備えて緊急脱出システムを備えており、パイロットが安全に脱出できるように設計されています。

……そうなのか。てっきり1発エンジンだと思い込んでいたが……マスコミも言わなかったよな。AIは知ってるんだ。すげー

■F-35はドッグファイトだと弱いらしいが
私:でも、ドッグファイトの際はロシアのSu-35みたいな運動性能に勝てるのか?

AI:F35は、Su-35のような高い運動性能を持っていませんが、F35の戦闘能力は運動性能だけではなく、多数のセンサーや通信機能、ステルス性能などの要素によって構成されています。これらの要素を組み合わせることで、F35は敵機の位置や行動を正確に把握し、先制攻撃を仕掛けることができます。また、F35は長距離から敵機を攻撃することもできるため、運動性能だけでなく、戦術的な優位性も持ち合わせています。

■F-35の弱点
私:でも、敵領域に深く侵入する爆撃ミッションでは視認されたら通常戦闘機より不利ではないか?

AI:F35は、ステルス性に優れており、敵のレーダーに捕捉されにくくなっています。また、電子戦技術も高度に発展しており、敵の通信やレーダーを妨害することができます。これらの技術により、敵の航空機や地上防空システムを避けつつ、目標に攻撃を加えることができます。ただし、完全なステルス性を実現するためには、エンジンの排気や機体の形状、塗装などにも注意が必要であり、完全なステルス性を維持するためには飛行時の制限や注意が必要です。

■F22が上か?
私:F22はいまだにF35より上なのか?F35が抜いたのか?

AI:F22とF35は、異なる役割を持つ航空機であり、直接的には比較できません。F22は主に空中戦闘任務に特化しており、F35は多目的に使用できるステルス戦闘機です。ただし、F35は、F22の後継機として、F22が持っている高度な性能のいくつかを引き継いでいます。F35は、空中戦闘能力については、F22に劣りますが、ステルス性能や多目的運用能力など、F22にはない機能も備えています。したがって、F22とF35は、それぞれの役割において最適な航空機であり、比較することはできません。

■F15は健在では?
私:空中戦闘任務だけならF15のほうが上か?

AI:F15は、空中戦闘において優れた運動性能を持っています。また、大型のエンジンを搭載しており、高速での飛行にも優れています。しかし、現代の戦闘機は空中戦闘だけでなく、地上攻撃や電子戦など多様な任務に対応する必要があります。F35は、これらの任務に対応するための先進的なシステムを備えており、全体的な戦闘能力が高いとされています。ただし、F15とF35はそれぞれ任務や運用環境に応じて選択されるべき機種であり、単純に上下関係をつけることはできません。
ーーーーーーーーーーーーーーーーーーー
どうよ。日本の防衛省よりAIのほうが何でも知ってるんだな。

(内海君:小市民)