最適化されたルックアップ テーブルの MATLAB 関数としての生成
この例では、ルックアップ テーブル オプティマイザーを使用して、y = 1/(1+exp^(-x))
を MATLAB® 関数のルックアップ テーブルとして近似する方法を示します。
ルックアップ テーブル オプティマイザーを開くには、Simulink® の [アプリ] タブにある [コード生成] ギャラリーで [ルックアップ テーブル オプティマイザー] をクリックします。
アプリの [目的] ペインで、ソースとして [MATLAB 関数ハンドル] を選択します。[次へ] をクリックします。
[設定] ペインで、関数ハンドル
@(x)(1/(1+exp(-x)))
を指定します。下のテーブルに属性が取り込まれます。フィールドを手動で編集して、取り込まれた以外の範囲やデータ型を指定できます。この例では、[最小値] を
0
、[最大値] を0.25
に設定します。[次へ] をクリックします。
[作成] ペインで、設計で許容可能な [出力の許容誤差] を設定します。
最適化されたルックアップ テーブルの追加のプロパティを指定するには、[LUT 仕様] をクリックします。[解のタイプ] を [MATLAB] に変更します。
制約と追加のオプションが決まったら、[最適化] をクリックします。最適化が完了すると、最適化されたルックアップ テーブルのメモリがルックアップ テーブル オプティマイザーでレポートされます。制約を編集し、最適化をもう一度実行すると、さらにメモリを削減できます。
[次へ] をクリックすると、[結果] ペインが表示されます。
[比較プロットを表示] をクリックすると、元の関数の出力と新たに最適化されたルックアップ テーブルの出力を比較したプロットが表示されます。
[最適化された LUT の表示] をクリックすると、MATLAB コマンド ウィンドウで起動されたルックアップ テーブル関数が表示されます。