Модуль для Анализа Чувствительности и Зависимостей (Generic Tool for Sensitivity and Dependency Analysis, GT SDA)

Модуль позволяет исследовать зависимости в данных. В конечном итоге он позволяет ответить на следующие вопросы:

  • Какие входные параметры не влияют на выходы и, таким образом, могут не использоваться в работе с данными?
  • Какие параметры требуется исключить из рассмотрения в первую очередь, если есть необходимость уменьшить количество параметров в рассматриваемой задаче?
  • Какие признаки необходимо использовать для построения суррогатной модели с помощью GT Approx?

Модуль состоит из трех основных частей:

Модуль Анализа Чувствительности и Зависимостей

Checker

Метод позволяет быстро проверить наличие зависимости между данными входами и выходами и измерять силу их статистической зависимости.

  • Реализованы классические коэффициенты корреляции: корреляция Пирсона, корреляция Спирмана и частичная корреляция Пирсона.
  • Метод проверяет статистическую значимость полученных корреляций и отвечает на вопрос: действительно ли наблюдаемые корреляции являются существенными или они являются результатом случайности.

Ranker

Метод ранжирует параметры в порядке того, насколько сильно они влияют на заданную выходную функцию. Для каждого параметра подсчитывается числовая величина (индекс), отражающая ее значимость.

  • Результат позволяет пользователю определить наиболее важные параметры и не рассматривать те параметры, которые не важны.
  • Реализовано несколько различных современных методов ранжирования:
    • Индексы Соболя
    • Метод Морриса

Метод также определяет, можно ли доверять оцененным индексам.

  • Метод может работать с предоставленной пользователем выборкой или сам генерирует выборку специальным образом, если пользовать предоставляет способ подсчета значений выходной функции.

Selector

Метод осуществляет поиск подмножества входных признаков, которое обеспечивает наилучшее качество аппроксимации с помощью GT Approx.

  • Результат позволяет пользователю понять, какие входные признаки позволят построить наилучшую суррогатную модель.
  • Могут быть использованы различные стратегии поиска подмножества признаков.
  • Экспертные оценки относительной значимости признаков (или результаты GT SDA Ranker) могут использоваться методом для улучшения качества поиска.

Информация, полученная с помощью модуля SDA может быть полезна в следующих задачах:

  • В построении суррогатных (аппроксимационных) моделей удаление наименее важных признаков может быть полезно, т.к. меньшее количество признаков подразумевает более плотную выборку, а более плотная выборка в большинстве случаев позволяет добиться более высокого качества аппроксимации. Также, многие методы построения СМ обычно работают лучше в пространствах меньшей размерности, так как требуют меньше времени работы/памяти.
  • В Планировании Эксперимента знание признаков, наибольшим образом влияющих на зависимость, позволяет генерировать выборку таким образом, чтобы наиболее важные признаки имели наибольшую изменчивость. Также, если данные получены в результате физических измерений, то знание относительной важности признаков позволяет определить, какие из них нужно измерять с наибольшей точностью.
  • В Оптимизации, когда количество допустимых вызовов целевой функции (бюджет) является ограниченным, знание менее важных признаков позволяет не изменять их в процессе оптимизации. Уменьшение количество переменных за счет не рассматривания признаков, которые мало влияют на зависимость, позволяет сделать больше итераций оптимизации при сохранении бюджета и может привести к получению лучшего решения.

Пример применения к задаче о вращающемся диске

Приведем пример того, как модуль SDA может помочь в решении задачи оптимизации. Рассмотрим задачу проектирования геометрии вращающегося диска, который изображен на картинке.

Пример применения к задаче о вращающемся диске

Задача в том, чтобы создать диск минимальной массы, который, тем не менее, удовлетворяет заданным механическим и прочностным ограничениям. В данной задаче мы уже располагаем параметризованной геометрией, и диск может быть представлен как вектор из 9 чисел (3 толщины и 6 радиусов). Зададим для всех параметров исходные значения, а некоторые для простоты зафиксируем:

Пример применения к задаче о вращающемся диске

Задача оптимизации состоит в том, чтобы минимизировать массу диска - minM , удовлетворив ограничениям:

  • на максимальное напряжение
  • и радиальное смещение на внешнем радиусе.

После постановки оптимизационной задачи можно сразу приступить к решению  с помощью GT Opt. Однако, перед этим проведем быстрый анализ с помощью GT SDA. 

1. Сгенерируем небольшую выборку из 50 случайных геометрий. Размер выборки, требуемой GT SDA для оценки индексов Соболя, зависит от решаемой задачи.  Однако, GT SDA сам проверяет, достаточно ли предоставленной выборки. При этом:

  • выдается предупреждение, если результаты могут быть ненадежны,
  • выдается ошибка, если модуль уверен, что результаты на данной выборке бессмысленны.

2. Вычислим на полученной выборке индексы Соболя с помощью GT SDA Ranker. Индексы Соболя вычисляются для каждого признака и говорят о том, какую долю разброса выхода объясняет рассматриваемый признак (их значения изменяются от 0 до 1).

Результаты вычисления индексов Соболя с помощью GTSDARanker

Пример применения к задаче о вращающемся диске

Можно видеть, что в рассматриваемой задаче целевая функция и ограничения зависят только от трех параметров из шести.

3. Теперь сравним результаты оптимизации исходной задачи с "уменьшенной", где изменяются только признаки r1, t1, t3:

Задача

Найденное решение, кг

Число вызовов функции

Исходная (6 признаков)

13.91

4624

"Уменьшенная” (3 признака)

14.30

663 + 50 (to run SDA)

В результате удалось уменьшить число необходимых вызовов функции при оптимизации в 6,5 раза, ценой 2% уменьшения качества найденного оптимума (если качество найденного оптимума является неудовлетворительным, можно продолжить оптимизацию полной модели, но уже из точки оптимума "уменьшенной").