Acsocad

Идентификация


Инструмент, позволяющий выполнить универсальную идентификацию, расположен в программном продукте SimACS на вкладке SIM («Перейти к идентификации»).
 
Для проведения идентификации необходимо выполнить следующие требования:
 
1. Получить графики входных и выходных воздействий, сведенные в отдельные *.d файлы в формате «время координата». Характеристики этих воздействий возможно получить в любых продуктах моделирования, в т.ч. SimACS, а также использовать зарегистрированные оцифрованные сигналы реальных объектов при помощи специализированного оборудования.
 
2. В SimACS необходимо собрать модель исследуемого объекта или системы. На вход модели подать известный входной сигнал из файла, а к выходам объекта подсоединить компаратор.
 
3. В модели SimACS следует указать неизвестные параметры в виде символьных переменных, которые возможно запрограммировать так, чтобы выходное значение R равнялось соответствующему определяемому параметру P[i], где i – номер параметра (от 0 до 16).
 
4. На вкладке SIM продукта SimACS нажать на кнопку «Перейти к идентификации».

5. Настроить нужные платформы CPU и GPU по технологии OpenCL.

6. Указать число идентифицируемых параметров и задать для каждого минимальное и максимальное значение диапазона поиска, а также его начальное значение. Запустить идентификацию и получить оценку всех параметров.

7. Для одного и двух параметров имеется возможность посмотреть карту идентификации, которая представляет из себя последовательность поиска глобального минимума.

Создание собственного алгоритма идентификации

Для создания алгоритма идентификации необходимо создать файл id.c и поместить его в каталог с моделью. Файл пишется на языке Си и содержит следующий код:

void VSENV_ID_Alg(void* I, void* P){
// добавление метода 
VSENV_ID_Add(I, P, 
МЕТОД1, "ПАРАМЕТРЫ1");
// ... добавление ещё метода
VSENV_ID_Add(I, P, МЕТОД2, "ПАРАМЕТРЫ2");
// ...
}

где МЕТОД - функция, занимающаяся поиском минимума, а ПАРАМЕТРЫ - её параметры, перечисляемые через пробел в одной строке, например, "5 1.5 10".

Встроенные методы


МетодКоличество неизвестныхОписаниеПараметр
C1
Параметр
C2
Параметр
C3
VSENV_ID_ALG_Default
a
ЛюбоеНачальная точка   
VSENV_ID_ALG_Started
s
ЛюбоеНачальная точка
+середина
+случайно
количество случайных точек  
VSENV_ID_ALG_Grid
g
ЛюбоеСеточное заполнениеесли не 0, то умещает C1 точек в диапазонесли C1=0, то C2 - шаг в диапазоне
(максимальное значение 1.0)
 
VSENV_ID_ALG_Gaussian
n
ЛюбоеЗаполнение распределением ГауссаКоличество точекОтклонение 
(задавать пропорционально диапазону поиска)
 
VSENV_ID_ALG_Ellipse
c
2Заполнение эллипсамиШаг увеличения радиуса в %Шаг углового расчета
(от 0.0001 до 0.1)
 
VSENV_ID_ALG_Ellipse
c
3Заполнение эллипсамиШаг увеличения радиуса в %Шаг углового расчета
(от 0.0001 до 0.1)
Шаг увеличения второго радиуса в %
VSENV_ID_ALG_Spiral
p
2Заполнение спиральюШаг увеличения радиусаШаг углового расчета
(
от 0.0001f до 0.1f)
 
VSENV_ID_ALG_Spiral
p
3Заполнение спиральюШаг увеличения радиуса в %Шаг витков (до 1.0)Количество точек на виток
VSENV_ID_ALG_Distance
d
1, 2, 3Геометрический метод0 - не выбирать оптимальное на каждом шаге
1 - выбирать оптимальное на каждом шаге
  
VSENV_ID_ALG_Explorer
e
ЛюбоеПроводникиКоличество проводниковКоличество попыток 

Использование методов в строке идентификации
Записывается короткое название метода и через пробел его параметры. Методы отделяются друг от друга символом ;
Например, Стандартный метод для 1-2 параметров: g 0 0.1; e 3 10
Например, Стандартный метод для 3- параметров: s 300; d 1; e 3 10

П​ример


 
 
Рейтинг@Mail.ru
Все материалы сайта принадлежат лично Василию Щербакову.
Допускается использование материалов в некоммерческих или учебных целях с указанием ссылки на этот сайт.