exponenta event banner

setsiminit

Задать нейросети Simulink блок начальных условий

Синтаксис

setsiminit(sysName,netName,net,xi,ai,Q)

Описание

setsiminit(sysName,netName,net,xi,ai,Q) принимает эти аргументы,

sysName

Название системы Simulink ®, содержащей блок нейронной сети

netName

Название блока нейронной сети Simulink

net

Исходная нейронная сеть

xi

Начальные состояния задержки ввода

ai

Состояния задержки начального уровня

Q

Номер образца (по умолчанию - 1)

и устанавливает нейронную сеть Simulink, блокирующую исходные условия, как указано.

Примеры

Здесь проектируется сеть NARX. Сеть NARX имеет стандартный вход и выход обратной связи с разомкнутым контуром к соответствующему входу обратной связи.

[x,t] = simplenarx_dataset;
     net = narxnet(1:2,1:2,20);
     view(net)
     [xs,xi,ai,ts] = preparets(net,x,{},t);
     net = train(net,xs,ts,xi,ai);
     y = net(xs,xi,ai);

Теперь сеть преобразуется в замкнутый цикл, и данные переформатируются для моделирования реакции замкнутого цикла сети.

net = closeloop(net);
view(net)
[xs,xi,ai,ts] = preparets(net,x,{},t);
y = net(xs,xi,ai);

Здесь сеть преобразуется в систему Simulink с портами ввода и вывода рабочей области. Его состояния задержки инициализируются, входы X1 определено в рабочей области и готово к моделированию в Simulink.

[sysName,netName] = gensim(net,'InputMode','Workspace',...
	'OutputMode','WorkSpace','SolverMode','Discrete');
setsiminit(sysName,netName,net,xi,ai,1);
x1 = nndata2sim(x,1,1);

Наконец, начальные задержки на входе и на уровне получаются из модели Simulink. (Они будут идентичны значениям, установленным с помощью setsiminit.)

[xi,ai] = getsiminit(sysName,netName,net);

См. также

| | |

Представлен в R2010b