Сгенерируйте оптимизированную интерполяционную таблицу как функцию MATLAB

В этом примере показано, как аппроксимировать y = 1/(1+exp^(-x)) как MATLAB® функциональная интерполяционная таблица с помощью Lookup Table Optimizer.

  1. Открыть Lookup Table Optimizer, на Simulink® Вкладка Apps, в галерее Code Generation, нажимает Lookup Table Optimizer.

  2. В панели Objective приложения выберите источник как MATLAB Function Handle. Нажмите Next.

  3. В панели Setup предоставьте указателю на функцию @(x)(1/(1+exp(-x))).

    Атрибуты заполняют в приведенной ниже таблице. Можно вручную отредактировать поля, чтобы указать диапазоны и типы данных кроме заполненных. В данном примере установите Minimum на 0 и Maximum к 0.25.

    Нажмите Next.

  4. В панели Create задайте Output Error Tolerance, который приемлем для вашего проекта.

    Чтобы задать дополнительные свойства для оптимизированной интерполяционной таблицы, нажмите LUT Specification. Измените Solution Type в MATLAB.

    После того, как вы будете удовлетворены ограничениями и дополнительными опциями, нажмите Optimize. Когда оптимизация завершена, Lookup Table Optimizer сообщает о памяти об оптимизированной интерполяционной таблице. Можно отредактировать ограничения и запустить оптимизацию снова, чтобы достигнуть дальнейшего сокращения памяти.

    Table showing memory and data types of optimized lookup table.

    Нажмите Next, чтобы просмотреть панель Results.

  5. Нажмите Show Comparison Plot, чтобы просмотреть график исходного функционального выхода по сравнению с выходом новой оптимизированной интерполяционной таблицы.

    Plot of original function output vs output of optimized lookup table.

  6. Нажмите Show Optimized LUT, чтобы просмотреть функцию интерполяционной таблицы, запущенную в командном окне MATLAB.

Смотрите также

Похожие темы