matlab連續(xù)Hopfield神經(jīng)網(wǎng)絡(luò)的優(yōu)化方法是什么

本文小編為大家詳細(xì)介紹“matlab連續(xù)Hopfield神經(jīng)網(wǎng)絡(luò)的優(yōu)化方法是什么”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“matlab連續(xù)Hopfield神經(jīng)網(wǎng)絡(luò)的優(yōu)化方法是什么”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來(lái)學(xué)習(xí)新知識(shí)吧。

成都創(chuàng)新互聯(lián)公司專注于企業(yè)網(wǎng)絡(luò)營(yíng)銷推廣、網(wǎng)站重做改版、淮安區(qū)網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5網(wǎng)站設(shè)計(jì)、商城網(wǎng)站制作、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為淮安區(qū)等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。

組合優(yōu)化問(wèn)題的目標(biāo)是從組合問(wèn)題的可行解集中求出最優(yōu)解,組合優(yōu)化往往涉及排序,分類篩選等問(wèn)題,是運(yùn)籌學(xué)的一個(gè)重要分支,典型的組合優(yōu)化問(wèn)題,有旅行商問(wèn)題,加工調(diào)度問(wèn)題,背包問(wèn)題裝箱問(wèn)題,圖著色問(wèn)題,聚類問(wèn)題等,這些問(wèn)題描述非常簡(jiǎn)單,并且有很強(qiáng)的工程代表性,但最優(yōu)化求解很困難,其主要原因是求解這些問(wèn)題的算法運(yùn)行時(shí)需要極長(zhǎng)的運(yùn)行時(shí)間與極大的存儲(chǔ)空間,以致根本不可能在現(xiàn)有的計(jì)算機(jī)上實(shí)現(xiàn),就會(huì)產(chǎn)生所謂的“組合爆炸”問(wèn)題。

利用神經(jīng)網(wǎng)絡(luò)解決組合優(yōu)化問(wèn)題,是神經(jīng)網(wǎng)絡(luò)應(yīng)用的一個(gè)重要方面,將Hopfield網(wǎng)絡(luò)應(yīng)用于求解組合優(yōu)化問(wèn)題,將目標(biāo)函數(shù)轉(zhuǎn)化為網(wǎng)絡(luò)的能量函數(shù),把問(wèn)題的變量對(duì)應(yīng)到網(wǎng)絡(luò)的神經(jīng)元的狀態(tài),這樣當(dāng)網(wǎng)絡(luò)的能量函數(shù)收斂于極小值時(shí),問(wèn)題的最優(yōu)解也隨之求出,由于神經(jīng)網(wǎng)絡(luò)是并行計(jì)算的,其計(jì)算量不會(huì)隨著維數(shù)的增加而發(fā)生指數(shù)型“爆炸”,因而對(duì)于優(yōu)化問(wèn)題的告訴就算特別有效。

matlab連續(xù)Hopfield神經(jīng)網(wǎng)絡(luò)的優(yōu)化方法是什么  

%% 清空環(huán)境變量、定義全局變量

clear 

clc

global A D

matlab連續(xù)Hopfield神經(jīng)網(wǎng)絡(luò)的優(yōu)化方法是什么  

%% 導(dǎo)入城市位置

load city_location

%% 計(jì)算相互城市間距離

distance=dist(citys,citys');

%% 初始化網(wǎng)絡(luò)

N=size(citys,1);

A=200;

D=100;

U0=0.1;

step=0.0001;

delta=2*rand(N,N)-1;

U=U0*log(N-1)+delta;

V=(1+tansig(U/U0))/2;

iter_num=10000;

E=zeros(1,iter_num);

%% 尋優(yōu)迭代

for k=1:iter_num  

    % 動(dòng)態(tài)方程計(jì)算

    dU=diff_u(V,distance);

    % 輸入神經(jīng)元狀態(tài)更新

    U=U+dU*step;

    % 輸出神經(jīng)元狀態(tài)更新

    V=(1+tansig(U/U0))/2;

    % 能量函數(shù)計(jì)算

    e=energy(V,distance);

    E(k)=e;  

end

 %% 判斷路徑有效性

[rows,cols]=size(V);

V1=zeros(rows,cols);

[V_max,V_ind]=max(V);

for j=1:cols

    V1(V_ind(j),j)=1;

end

C=sum(V1,1);

R=sum(V1,2);

flag=isequal(C,ones(1,N)) & isequal(R',ones(1,N));

%% 結(jié)果顯示

if flag==1

   % 計(jì)算初始路徑長(zhǎng)度

   sort_rand=randperm(N);

   citys_rand=citys(sort_rand,:);

   Length_init=dist(citys_rand(1,:),citys_rand(end,:)');

   for i=2:size(citys_rand,1)

       Length_init=Length_init+dist(citys_rand(i-1,:),citys_rand(i,:)');

   end

   % 繪制初始路徑

matlab連續(xù)Hopfield神經(jīng)網(wǎng)絡(luò)的優(yōu)化方法是什么  

   figure(1)

   plot([citys_rand(:,1);citys_rand(1,1)],[citys_rand(:,2);citys_rand(1,2)],'o-')

   for i=1:length(citys)

       text(citys(i,1),citys(i,2),['   ' num2str(i)])

   end

   text(citys_rand(1,1),citys_rand(1,2),['       起點(diǎn)' ])

   text(citys_rand(end,1),citys_rand(end,2),['       終點(diǎn)' ])

   title(['優(yōu)化前路徑(長(zhǎng)度:' num2str(Length_init) ')'])

   axis([0 1 0 1])

   grid on

   xlabel('城市位置橫坐標(biāo)')

   ylabel('城市位置縱坐標(biāo)')

   % 計(jì)算最優(yōu)路徑長(zhǎng)度

   [V1_max,V1_ind]=max(V1);

   citys_end=citys(V1_ind,:);

   Length_end=dist(citys_end(1,:),citys_end(end,:)');

   for i=2:size(citys_end,1)

       Length_end=Length_end+dist(citys_end(i-1,:),citys_end(i,:)');

   end

   disp('最優(yōu)路徑矩陣');V1

   % 繪制最優(yōu)路徑

matlab連續(xù)Hopfield神經(jīng)網(wǎng)絡(luò)的優(yōu)化方法是什么  

   figure(2)

   plot([citys_end(:,1);citys_end(1,1)],...

       [citys_end(:,2);citys_end(1,2)],'o-')

   for i=1:length(citys)

       text(citys(i,1),citys(i,2),['  ' num2str(i)])

   end

   text(citys_end(1,1),citys_end(1,2),['       起點(diǎn)' ])

   text(citys_end(end,1),citys_end(end,2),['       終點(diǎn)' ])

   title(['優(yōu)化后路徑(長(zhǎng)度:' num2str(Length_end) ')'])

   axis([0 1 0 1])

   grid on

   xlabel('城市位置橫坐標(biāo)')

   ylabel('城市位置縱坐標(biāo)')

   % 繪制能量函數(shù)變化曲線

   figure(3)

matlab連續(xù)Hopfield神經(jīng)網(wǎng)絡(luò)的優(yōu)化方法是什么  

   plot(1:iter_num,E);

   ylim([0 2000])

   title(['能量函數(shù)變化曲線(最優(yōu)能量:' num2str(E(end)) ')']);

   xlabel('迭代次數(shù)');

   ylabel('能量函數(shù)');

else

   disp('尋優(yōu)路徑無(wú)效');

end

讀到這里,這篇“matlab連續(xù)Hopfield神經(jīng)網(wǎng)絡(luò)的優(yōu)化方法是什么”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過(guò)才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

網(wǎng)頁(yè)題目:matlab連續(xù)Hopfield神經(jīng)網(wǎng)絡(luò)的優(yōu)化方法是什么
URL標(biāo)題:http://muchs.cn/article46/ihdchg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、云服務(wù)器微信小程序、全網(wǎng)營(yíng)銷推廣網(wǎng)站導(dǎo)航、用戶體驗(yàn)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名