コンテンツへスキップ
応用例

逆F型アンテナの最適化(PSO)

プロジェクトファイルのリクエスト

この例では、XFdtdのXTendライブラリのプラグインを使用して、Inverted-Fアンテナ(IFA)の粒子群最適化(PSO)を実行します。IFAは小型のため、モバイル機器によく使われるアンテナです。この例では、GSM-1900バンド(1.85~1.99GHz)で動作するようにアンテナを最適化します。

PSOは、魚の群れ、鳥の群れ、昆虫の群れなどに見られる群行動にヒントを得た、大域的最適化手法である。群れを構成する多数の粒子がN次元の解空間全体に分布する。各パーティクルが現在いる場所の適合度を評価し、その特定のパーティクルが見た最良の結果と、群全体が見た最良の結果に基づいて、新しい場所に移動する進化プロセスが続く。何世代にもわたって解空間が探索され、最適解に到達する。

この特定の最適化のためのフィットネス関数は、単に関心のある帯域にわたってアンテナの線形リターンロスを評価し、遭遇した最悪のリターンロスにフィットネスレベルを設定します。このアプローチの利点の一つは、帯域内性能の最小値が世代ごとにわかることです。ユーザーは現在の適合度をモニターし、望ましい目標レベルに達したら終了することができます。

IFAは、インピーダンス・マッチングのためにシャント・スタブを採用した屈曲モノポール・アンテナである。図1に詳細を示すように、4つの変数が構造の動作を制御する。これらのパラメータは、表1に従って変化させることができる。変数の一部は互いに依存しているため、XTendのPSOプラグインは動的制約システムを使用して、最適化全体を通してパラメータの境界を更新します。表2に動的制約の詳細を示します。

 

図1:IFAの概略図。

テーブル_1.jpg

表1

テーブル2.jpg

表2

XFdtdの FDTDをCUDAで高速化した実装であるXStreamは、PSOをタイムリーに実行する上で極めて重要です。各パーティクルは、世代が進むごとに新しいXFシミュレーションを生成します。これらのシミュレーションは、システム内の利用可能なCUDA対応GPUに分散されます。ここで使用した特定のシステムには、NVIDIA Tesla C2070が6台搭載されています。PSOは各GPUに1つのシミュレーションを割り当て、6つのシミュレーションを同時に解くことができます。GPUの有用性を最大化するため、パーティクル数はGPU数の整数倍になるように選択されています。今回の最適化では、12パーティクルと300世代を選択しました。

各世代の12回のシミュレーションは平均74秒で終了した。群れが最適解に収束していく様子は図2で見ることができる。この特定の例では、フィットネスレベルは第5世代までに約0.3に低下している。このフィットネス値は、最悪の場合の線形リターンロスを表しているため、もし私たちの真の目標が、関心のある帯域で-10dB以下のリターンロスを持たないアンテナであれば、この時点でオプティマイザを終了させることができます。

図2:最適解への群れの収束。

図3は、最終的な最適解を含むいくつかの節目で達成されたリターンロスを調べることで、最適化の進行を示している。この解のパラメータを表3に示す。

図3:いくつかのマイルストーンにおけるIFAリターンロスのスナップショット。

テーブル_3.jpg

表3

 

プロジェクトファイルのリクエスト

このアプリケーション例にご関心をお寄せいただき、ありがとうございます。倒立Fアンテナの最適化(PSO)プロジェクトファイルをダウンロードするには、以下のフォームにご記入ください。