2020年9月6日

シミュレータ技術の世界とその基礎-第4章-

[前回のブログ]
[重要なお知らせ(Important notification)]


はじめに。


ブログテーマ『シミュレータ技術の世界とその基礎』もいよいよ最終回です。これまで3回に渡り、シミュレータやシミュレーションに関わる技術や考え方について解説しましたが、今回はいよいよ核心的なトピックである『Simレーサーとリアルレーサー』の違いについて解説したいと思います。

iRacing
(引用元:iRacing公式サイト)
そして、多くの人が疑問に思っているであろう『Simレーサーがリアルレーサーに転向して成功することは可能なのか?』という疑問にも、僕のこれまでのエンジニアとしての経験、そしてF1の世界で培った経験も踏まえてお答えします。本テーマの最終回、ぜひ楽しみながら読んでもらえると嬉しいです。

今回は結論から言おう。


最終的な結論が気になって仕方ない人が多い(?)と思うので、まずは結論から書くことにします。僕が辿り着いた結論は以下の通りです。

『Simレーサーがリアルレーサーに転向することは可能だが、プロフェッショナルなレーシングドライバーとして成功する可能性は低いかもしれない』

この結論に関しては賛否両論あるのは間違いないと思います。シミュレータの愛好家の方からすると、この結論を残念に思う方もいらっしゃるかと思いますが、なぜこのような結論に至ったのか?そのロジックをドライバーの運転行動様式と心理、これら2つの視点を交えながら解説します。


ドライバーの運転行動様式


以前のブログではドライバーがどのような行動サイクルに基づいて運転しているのかを解説しました。ここでは復習を兼ねて簡単にその内容を振り返ってみましょう。まずは次の図を見てください。


ドライバーは自身が置かれている状況を『認知』し、様々なことを『判断』します。例えば、視覚情報として赤信号を『認知』すれば、減速・停止するという『判断』を下します。そして、その『判断』に基づきブレーキを『操作』します。 その後、ブレーキ操作入力を受けた車両は減速をし始めるのですが、その『車両挙動』の変化を受けてドライバーは再び『認知』、『判断』、『操作』を繰り返します。これがドライバーの運転行動様式です。

シミュレータでも、次の図に示すように基本的にはリアルと同じ運転行動様式となります。リアルと大きく異なる点は、ドライバーへの車両挙動のフィードバック情報量が大きく制限されてしまうことでしょう。また、ゲーミングシミュレータではドライバーにフィードバックされる情報が現実の車両挙動から乖離していることも課題です。


ここで注意すべき点は、上で述べたシミュレータの抱える課題がSimレーサーとリアルレーサーの優劣を決めるものではないということです。リアルレーサーは実車から膨大な車両挙動の情報を処理して速さを実現する能力がある一方、Simレーサーは非常に限られた車両挙動フィードバックの中で驚異的な速さを絞り出す能力に長けるからです。

つまり、運転行動様式という観点で言えば、どちらもそれぞれの環境で卓越したスキルを持っていると言えるのです。

ドライバーの心理状況の違い


リアルレーサーとSimレーサーで心理状況はどのように異なるのでしょうか?僕の考えとしては、この心理状況の違いを克服することがSimレーサーがリアルレーサーに転向するに当たって最も大きな課題であると考えています。

ここでは例として、富士スピードウェイのストレートを時速250km/hで走行することを想定してみましょう。リアル、シミュレータ、どちらも時速250km/hを出すことは難しいことではないでしょう。しかし、リアルな走行では人間の心理には『生命の危険』が確実に生じます。

© DUTCH PHOTO AGENCY/RED BULL CONTENT POOL
実際にレースとなると、その心理状況の差は顕著になるはずです。リアルでは時としてバトルでの接触や車両トラブルによる事故は自分だけでなく、相手の生命に危険が及ぶこともあります。このため、リアルでのドライバー運転行動の『判断』には、当然ながら慎重さが求められることは言うまでもありません。

加えて、肉体的にも極限まで追い込まれた状況で常に適切な『判断』と『操作』を実行しレースで強さを発揮する能力は、やはりリアルでしか得られないものでしょう。


まとめ。


Simレーサーがリアルに転向した場合、恐らく『速さ』という点ではリアルレーサーに匹敵ないし凌駕することは十分に考えられます。しかし、リアルでは、シミュレータとは絶対的に異なる心理状況にドライバーが置かれることから、Simレーサーはリアルなレースでの『強さ』という点では苦戦する可能性が高いと言えます。

これが、このブログの冒頭で述べた結論、『Simレーサーがリアルレーサーに転向することは可能だが、プロフェッショナルなレーシングドライバーとして成功する可能性は低いかもしれない』に至った理由です。

Lando Norris (引用元:F1公式サイト)
もちろん、ゲーミングシミュレータは今後もどんどん進化していくと予想されるので、『速さ』を追求するという点では非常に効果的なトレーニングツールとして活躍してくれるでしょう。もし、プロのレーシングドライバーを目指すなら当然シミュレータを活用しない手はありません。

リアルなレースを通じて『強さ』を、シミュレータでのトレーニングで『速さ』を、これら2つをバランス良く獲得した新世代のドライバーがF1の世界でもすでに活躍していることから、今後この傾向はどんどん高まってくることでしょう。もしかしたら、シミュレータでの『速さ』の追求はプロドライバーになるための必須条件になっている、すでにそう言っても過言ではないのかも知れません。

[おわり]

2020年8月22日

シミュレータ技術の世界とその基礎-第3章-

[前回のブログ]
[重要なお知らせ(Important notification)]


はじめに。


前回のブログでは、どんな現象をどこまで再現したいのか?目的に応じてモデリングレベルを決めることが重要ということを解説しました。シミュレーションはクリック一つで結果を出してくれるとても便利なツールですが、モデリング手法が変われば結果も変わります。計算結果については非常に慎重な検証が必要なのです。

ADAMS Car
(引用元:MSC Software公式サイト)
さて、取り扱いに慎重さが求められるシミュレーション技術ですが、今回のブログでは、車両運動や車両システムのモデリングに用いられる代表的なソフトウェアを紹介したいと思います。果たしてどのような世界観なのか?ちょっと専門用語が多くなりますが、その雰囲気を感じてもらえれば幸いです。

車両モデルソフトウェア


ここでは主に、車両を統合的にモデル化する際に使うソフトウェアを紹介します。まず最初は、僕が国内自動車メーカーでエンジニアをしていた頃にお世話になったソフトウェアです。その特徴を紹介しましょう。

1D系車両運動解析ソフトウェア


日本国内はもちろん、世界中の自動車メーカーで幅広く使われているのがCarSIMやCarMakerを代表とする1D系車両運動解析ソフトウェアです。このタイプのソフトウェアの特徴は、サスペンション、トランスミッション、エンジンなどの車両コンポーネントを簡素な運動方程式や、特性マップを用いて構成していること(1Dモデリング)です。このため演算速度が速く、拡張性の高さがメリットです。

CarSIM
(引用元:バーチャルメカニクス公式サイト)
各コンポーネントのモデル詳細度が低いため、動的特性の再現には制約がありますが、精密な動的車両挙動の再現が求められない場合(自動運転制御ロジックの性能評価など)に幅広く活用できます。ちなみにiRacingやrFactorなどはこの1D系車両運動ソフトウェアに分類されますが、CarSIMやCarMakerは、詳細度および拡張性という点でゲーミングシミュレーションソフトを大きく上回る機能性を有しています。

3D系車両運動解析ソフトウェア


前述した1D系車両運動解析ソフトウェアが再現できない部分を再現可能とするのが、3D系車両運動解析ソフトウェアです。代表的なソフトウェアとして、ADAMSやSIMPACKなどがあります。これらのソフトウェアは、別名としてMulti Body Dynamicsとも呼ばれ、3次元形状と3次元空間の動きを再現できることが特徴です。また、各座標点に弾性力、減衰力などの特性を織り込むことも可能で、様々な動的特性を再現できます。

ADAMS Car
(引用元:MSC Software公式サイト)
デメリットとしては、モデルの非線形が高く、演算時間が長くなってしまうことです。また、陰解法を主体としたソルバーを使うことが一般的で、場合によっては演算が収束せず停止してしまうことも。このため、モデリングには非線形性を低減するちょっと高度なスキルが求められます。


複合物理解析ソフトウェア


クルマをモデリングする…この言葉の意味することが、果てしなく膨大な仕事であることを実感できる人はシミュレーション技術に精通しているヒトでしょう。なぜなら、クルマには様々な物理特性を持つシステムがあるからです。

AMESim (引用元:LMS Imagine Lab.公式YouTube*)
燃料噴射システムを例として挙げると、このシステムには以下の工学領域が含まれます。

  • 流体力学(燃料の流れ)
  • 機械工学(ポンプの機械的特性)
  • 電磁気学(ポンプモーターやインジェクタソレノイドの特性)
  • 制御工学(燃料ポンプのモータの制御ロジック)
  • 熱力学(各コンポーネントによる発熱とその伝熱)

簡単に言うと、世の中に存在する全てのシステムは、様々な物理現象と関連しており、それぞれが相互に影響しあっています。このような複雑な現象を解析するために用いられるのが、複合物理解析(Multi Physical Analysis)ソフトウェアです。代表的なソフトウェアとして、AMESimやDymolaなどがあり、上に紹介した車両運動ソフトウェアとの連携も可能です。

この種類のソフトウェアには様々な物理モデルライブラリと使いやすいユーザーインターフェースが備わっている一方、モデルの妥当性検証には高度な技術と知見が求められます。手前味噌ですが(汗)、現在の僕はその技術と経験を有していることが大きな強みの一つだと考えています。

*現在の社名はSIEMENS Industry Software S.A.S.

まとめ


今回のブログでは、クルマのモデル化に必要なシミュレーションソフトウェアを紹介しました。それぞれにメリット・デメリットがあり、前回のブログでも解説したように、目的に応じて適切な車両運動解析ソフトウェアを選定する必要があります。また、複合物理解析ソフトウェアは、複雑な現象の解析に対応可能で、車両モデルの詳細度を高めることにも活用できます。

何度も書きますが、シミュレーション技術は『クリックすれば正解が得られる万能な魔法』では決してありません。正解を得るため、使い手であるエンジニアが適切な手法でモデリングし、適切な手法で妥当性を検証しなくてはならない技術なのです。ぜひ、このことだけは知っておいてもらいたいと思います。

今回はちょっと専門用語の多いブログとなってしまいましたが、シミュレーション技術が必ずしも万能ではなく、使い手次第ということを少しでも実感してもらえたならば嬉しい限りです。次回のブログではいよいよ今回のテーマの核心ともいえるトピック、『Simレーサーとリアルレーサーの違い』について書きます。次回もどうぞお楽しみに!

[つづきはコチラ]

2020年6月27日

シミュレータ技術の世界とその基礎-第2章-

[前回のブログ]
[重要なお知らせ(Important notification)]


はじめに。


前回のブログでは、シミュレータなどの数値計算技術が離散化によって成り立っており、パラパラ漫画のような世界であることを解説しました。今回のブログでは、そもそもどのようにしてクルマがコンピュータ上でモデル開発されるのか?その考え方と手法を紹介します。

Multi Body Dynamicsモデル
(引用元:Dassault公式サイト)
なお、今回はTwitterのアンケートで要望の多かった『サスペンション』を例に挙げて解説を進めたいと思います。サスペンションはタイヤと共に車体を支える装置として知られていますが、このブログを通じそのモデリング手法の奥深さ(厄介さ?)を感じてもらえれば幸いです。

最初にやるべき大事なこと。


『サスペンションってどうモデル開発するんだろ?早く知りたい~!』と思っているそこのアナタ。焦ってはいけません。モデル開発を考える前に一番重要なことを考えなくてはなりません。それは…

『モデル開発の目的を明確にすること』

例えば『タイヤ摩耗を最小化できるレース車両のサスペンションを設計する』、『シミュレータゲームで多くのユーザーが運転しやすいサスペンション特性を明確にする』、『異なる車種の車両モデル間で共有することが可能なサスペンションモデルを設計する』などです。

Kevin Decherf from Nantes, France / CC BY-SA
どんな事でも同じことが言えると思いますが、目的を持たずに走り出しても、どこまで行き着けば良いのか分かりませんし、その目的の達成までに何が必要なのかも分からなくなってしまいます。モデル開発も同じで、まずは『再現したい特性や現象』を明確に定義する必要があります。


どこまで再現するか?するべきか?


目的を明確にした後にやること、それがモデリングレベルの決定です。このモデリングレベルの解説にあたり、サスペンションのモデル開発における要素を段階的にリストアップしてみることにします。

サスペンション幾何学モデル
(引用元:OptimumG社公式サイト)

Modelling Level-1

  • サスペンションの幾何学的軌跡
  • ダンパーの減衰特性
  • スプリングの弾性要素

ちょっと専門的な表現が出てきましたが、上の3つはサスペンション設計の基本ともいえる要素で、過去ブログで紹介した1自由度のバネマスモデルを拡張することで再現できます。ここではこの三つの要素をモデリングレベル1とし、次のモデリングレベルに踏み込んでみましょう。

Modelling Level-2

  • サスペンションの静的保持剛性
  • サスペンションの動的保持剛性
  • ダンパー内流体の動粘性係数
  • スプリングの弾性要素の非線形特性

このレベルでは実際のサスペンションの特性をさらに詳細に再現できるようになります。その特徴は、動的特性(微分項に依存して特性が変化)と、非線形特性が再現されることです。これらの要素の再現をモデリングレベル2とします。筆者は、市販のシミュレーションソフト(iRacingやrFactor)はレベル1を少し超えたあたりに到達しており、現在はレベル2に到達することを狙っているのでは?と推測しています。

このレベルともなれば、一般の人から見れば十分に高い再現度に見えるかも知れません。しかし…これでもまだ実物との乖離は大きいのです(汗)。そこで、今回はもう一つ上のレベルにまで踏み込んでみましょう。

Modelling Level-3

  • サスペンション部品のたわみ・座屈などの弾性変形
  • 温度変化に起因する弾性および減衰特性の変化
  • サスペンション部品間の摩擦によるヒステリシス特性
  • ダンパー内部品の弾性・摩擦によるヒステリシス特性

このレベルに到達すると、場合によっては単一の解析ソフトウェアでのモデル開発は困難になります。例えば、上記の『サスペンション部品のたわみ・座屈』をシミュレーション上で詳細に再現したい場合、線形有限要素法(FEM)との連成解析が必要になります。

一通りのモデリングレベルを紹介したので、その特徴などを表にまとめてみましょう。この表の内容を見れば、難しい技術用語は理解できずとも、モデリングレベルの概念を理解しやすくなると思います。


さて、ここで改めてモデル開発の『目的』を振り返ってみましょう。市販のシミュレータゲームで言えば、その目的はドライビングを楽しむことなので、あえて大まかに言ってしまえばモデリングレベル1でも十分かも知れません。

一方、自動車メーカーでは、サスペンション設計や運動性能開発にも対応可能な高いモデリングレベルが求められます。その場合、ハードウェアとソフトウェアに必要なコストはまさにケタ違い……一般向けのシミュレータソフトウェアと比べて4ケタくらい違っても驚かないくらいです。

日産自動車NTCにあるドライビングシミュレータ
(引用元:日産自動車公式YouTubeチャンネル)
このように目的に応じつつ、時には確保した予算に応じて決めるモノ、それがモデリングレベルなのです。

まとめ


今回のブログでは、サスペンションを例としたモデリングレベルの解説を通じ、モデル開発の考え方とその手法を紹介しました。ここで要約すると、モデル開発とは複雑な物理現象をいくつかの側面から切り出すことです。

このため、モデルそのものは完全ではありませんし、現実とは違う部分が必ずあります。しかし、そのこと自体は大きな問題ではありません。モデリングレベルを適切に決定し、目的を満足しさえすればそれで充分なのです。

以上がモデル開発の考え方と手法です。概念的な説明が多く、エンジニアではない読者の方にとっては少々難解だったかと思いますが、いかがだったでしょうか?次回のブログでは、エンジニアではない人にとってはまず触れることのない、シミュレーションソフトウェアの世界を紹介します。

次回更新もどうぞお楽しみに!

[つづきはコチラ]