Сеть Хопфилда
> | restart; |
> | with(LinearAlgebra): |
> | X[1]:=<-1, 1, 1, 1, 1, 1, 1, 1>:#Образцы 1-4 |
> | X[2]:=< 1,-1, 1, 1, 1,-1, 1,-1>: |
> | X[3]:=<-1, 1,-1,-1, 1,-1, -1,1>: |
> | X[4]:=< 1, 1,-1, 1,-1,-1, 1,-1>: |
> | W:=add(X[i].Transpose(X[i]),i=1..4); |
> | for i to 4 do W[i,i]:=0; od: # Для устойчивости |
> | Y:=< 1, 1, 1, -1, 1,1, 1,-1>:# Тестируемый образец |
> | X0[1]:=Y: |
> | n:=4: #Число итераций |
> | for k to n do # Основной цикл Синхронной работы |
> | X0[k+1]:=map(sign,W.X0[k]): |
> | od: |
> | for k to n+1 do # Выводим на экран все этапы |
> | x[k]=Transpose(X0[k]); |
> | od; |
> |