導航:首頁 > 電器電路 > 遺傳電路

遺傳電路

發布時間:2022-02-07 09:30:02

『壹』 遺傳演算法是否可以通過硬體電路實現

雖然我不知道遺傳演算法的公式,但是我可以告訴你硬體電路可以完成非常復雜的公式運算,模擬電路中的集成運放建各種運算電路,數字電路也可以,用verilog描述自動生成復雜的電路圖。

『貳』 用雙4選1數據選擇器設計血液遺傳規律的電路

先通過卡諾圖把每個函數的輸出表達式寫出來,再根據變數的數目來進行設計就行了。根據函數表達式設計雙4選1數據選擇器不很清楚的話可以去看數電課本,裡面講的很詳細。

『叄』 電力系統調度遺傳演算法matlab程序

智能演算法及matlab實現
北航出版社
matlab從入門到精通
matlab在電氣工程中的應用
望採納

『肆』 遺傳演算法優化電力系統無功問題

GA程序流程:
0、初始化GA參數:種群數N、控制變數數M、選擇概率、交叉概率、變異概率;
1、設置控制變數初值, i=1;
2、計算第i個粒子的潮流;
3、根據潮流結果計算網損,計算第i個粒子的目標函數及適應度函數並保存,i++;
4、i是否大於M,若否,則轉步驟2,若是,則轉下一步;
5、得到最優粒子及其適應度,判斷適應度變化是否小於某閥值,若小,則轉步驟8,否則繼續下一步;
6、選擇操作;交叉操作;變異操作;
7、i=1,轉步驟2;
8、輸出最優粒子及其適應度。

『伍』 用8選1數據選擇器設計一個表示血型遺傳規律的電路

需要四片數據選擇器並聯。分別代表四種血型。
拿O型來說明,設四種血型O A B AB 分別為輸入型號a,b,c,d。abc是地址輸入端,c是高位,d送8位數據端。
那麼出現O型的情況Z=001*\d+010*\d+100*\d+011*\d+101*\d+110*\d
所以數據端的D1、2、3、4、5、6接\d,其他端接地。

同理設計出其他三個血型的選擇器,最後在輸入端並聯。

『陸』 求一個遺傳演算法進行電力系統優化調度 代碼

發一份自編的MATLAB遺傳演算法代碼,用簡單遺傳演算法(Simple Genetic Algorithm or Standard Genetic Algorithm ,SGA)求取函數最大值,初版編寫於7年前上學期間,當時是MATLAB 5.x,在演算法運行效率方面做了修改,主要是採用矩陣操作減少了循環。

遺傳演算法為群體優化演算法,也就是從多個初始解開始進行優化,每個解稱為一個染色體,各染色體之間通過競爭、合作、單獨變異,不斷進化。

優化時先要將實際問題轉換到遺傳空間,就是把實際問題的解用染色體表示,稱為編碼,反過程為解碼,因為優化後要進行評價,所以要返回問題空間,故要進行解碼。SGA採用二進制編碼,染色體就是二進制位串,每一位可稱為一個基因;解碼時應注意將染色體解碼到問題可行域內。

遺傳演算法模擬「適者生存,優勝劣汰」的進化機制,染色體適應生存環境的能力用適應度函數衡量。對於優化問題,適應度函數由目標函數變換而來。一般遺傳演算法求解最大值問題,如果是最小值問題,則通過取倒數或者加負號處理。SGA要求適應度函數>0,對於<0的問題,要通過加一個足夠大的正數來解決。這樣,適應度函數值大的染色體生存能力強。

遺傳演算法有三個進化運算元:選擇(復制)、交叉和變異。

SGA中,選擇採用輪盤賭方法,也就是將染色體分布在一個圓盤上,每個染色體占據一定的扇形區域,扇形區域的面積大小和染色體的適應度大小成正比。如果輪盤中心裝一個可以轉動的指針的話,旋轉指針,指針停下來時會指向某一個區域,則該區域對應的染色體被選中。顯然適應度高的染色體由於所佔的扇形區域大,因此被選中的幾率高,可能被選中多次,而適應度低的可能一次也選不中,從而被淘汰。演算法實現時採用隨機數方法,先將每個染色體的適應度除以所有染色體適應度的和,再累加,使他們根據適應度的大小分布於0-1之間,適應度大的占的區域大,然後隨機生成一個0-1之間的隨機數,隨機數落到哪個區域,對應的染色體就被選中。重復操作,選出群體規模規定數目的染色體。這個操作就是「優勝劣汰,適者生存」,但沒有產生新個體。

交叉模擬有性繁殖,由兩個染色體共同作用產生後代,SGA採用單點交叉。由於SGA為二進制編碼,所以染色體為二進制位串,隨機生成一個小於位串長度的隨機整數,交換兩個染色體該點後的那部分位串。參與交叉的染色體是輪盤賭選出來的個體,並且還要根據選擇概率來確定是否進行交叉(生成0-1之間隨機數,看隨機數是否小於規定的交叉概率),否則直接進入變異操作。這個操作是產生新個體的主要方法,不過基因都來自父輩個體。

變異採用位點變異,對於二進制位串,0變為1,1變為0就是變異。採用概率確定變異位,對每一位生成一個0-1之間的隨機數,看是否小於規定的變異概率,小於的變異,否則保持原狀。這個操作能夠使個體不同於父輩而具有自己獨立的特徵基因,主要用於跳出局部極值。

遺傳演算法認為生物由低級到高級進化,後代比前一代強,但實際操作中可能有退化現象,所以採用最佳個體保留法,也就是曾經出現的最好個體,一定要保證生存下來,使後代至少不差於前一代。大致有兩種類型,一種是把出現的最優個體單獨保存,最後輸出,不影響原來的進化過程;一種是將最優個體保存入子群,也進行選擇、交叉、變異,這樣能充分利用模式,但也可能導致過早收斂。

由於是基本遺傳演算法,所以優化能力一般,解決簡單問題尚可,高維、復雜問題就需要進行改進了。

下面為代碼。函數最大值為3905.9262,此時兩個參數均為-2.0480,有時會出現局部極值,此時一個參數為-2.0480,一個為2.0480。演算法中變異概率pm=0.05,交叉概率pc=0.8。如果不採用最優模式保留,結果會更豐富些,也就是演算法最後不一定收斂於極值點,當然局部收斂現象也會有所減少,但最終尋得的解不一定是本次執行中曾找到過的最好解。

(註:一位網名為mosquitee的朋友提醒我:原代碼的變異點位置有問題。檢驗後發現是將最初的循環實現方法改為矩陣實現方法時為了最優去掉mm的第N行所致,導致變異點位置發生了變化,現做了修改,修改部分加了顏色標記,非常感謝mosquitee,2010-4-22)

% Optimizing a function using Simple Genetic Algorithm with elitist preserved
%Max f(x1,x2)=100*(x1*x1-x2).^2+(1-x1).^2; -2.0480<=x1,x2<=2.0480
% Author: Wang Yonglin ([email protected])
clc;clear all;
format long;%設定數據顯示格式
%初始化參數
T=100;%模擬代數
N=80;% 群體規模
pm=0.05;pc=0.8;%交叉變異概率
umax=2.048;umin=-2.048;%參數取值范圍
L=10;%單個參數字串長度,總編碼長度2L
bval=round(rand(N,2*L));%初始種群
bestv=-inf;%最優適應度初值
%迭代開始
for ii=1:T
%解碼,計算適應度
for i=1:N
y1=0;y2=0;
for j=1:1:L
y1=y1+bval(i,L-j+1)*2^(j-1);
end
x1=(umax-umin)*y1/(2^L-1)+umin;
for j=1:1:L
y2=y2+bval(i,2*L-j+1)*2^(j-1);
end
x2=(umax-umin)*y2/(2^L-1)+umin;
obj(i)=100*(x1*x1-x2).^2+(1-x1).^2; %目標函數
xx(i,:)=[x1,x2];
end
func=obj;%目標函數轉換為適應度函數
p=func./sum(func);
q=cumsum(p);%累加
[fmax,indmax]=max(func);%求當代最佳個體
if fmax>=bestv
bestv=fmax;%到目前為止最優適應度值
bvalxx=bval(indmax,:);%到目前為止最佳位串
optxx=xx(indmax,:);%到目前為止最優參數
end
Bfit1(ii)=bestv; % 存儲每代的最優適應度
%%%%遺傳操作開始
%輪盤賭選擇
for i=1:(N-1)
r=rand;
tmp=find(r<=q);
newbval(i,:)=bval(tmp(1),:);
end
newbval(N,:)=bvalxx;%最優保留
bval=newbval;
%單點交叉
for i=1:2:(N-1)
cc=rand;
if cc<pc
point=ceil(rand*(2*L-1));%取得一個1到2L-1的整數
ch=bval(i,:);
bval(i,point+1:2*L)=bval(i+1,point+1:2*L);
bval(i+1,point+1:2*L)=ch(1,point+1:2*L);
end
end
bval(N,:)=bvalxx;%最優保留
%位點變異
mm=rand(N,2*L)<pm;%N行
mm(N,:)=zeros(1,2*L);%最後一行不變異,強制賦0
bval(mm)=1-bval(mm);
end

%輸出
plot(Bfit1);% 繪制最優適應度進化曲線
bestv %輸出最優適應度值
optxx %輸出最優參數

『柒』 遺傳演算法實踐當中真的能用嗎

找注冊信息不適合用遺傳演算法,我覺得憑日常經驗寫一個函數判斷信息的相似程度就可以了。判斷相似可以用神經網路演算法,但不能用遺傳

現實中01背包問題和旅行商問題最好的演算法就是遺傳演算法,一些集成電路內部的布線就是用遺傳演算法設計的

『捌』 電力系統中關於遺傳演算法的應用

可以直接將X設為一個母體,每個母體由X1,X2,X3,X4組成。每一組解為一個母體。

種群大小就是你取的母體(X)的個數。

約束條件在函數中可以用if等語句實現。

我也只是用遺傳演算法做了一下畢業設計,沒有深究,夠用就行了

歡迎LL單Q我討論.....

閱讀全文

與遺傳電路相關的資料

熱點內容
摩托車鋁合金cnc件怎麼翻新 瀏覽:1000
貼完磁磚裝什麼家電6 瀏覽:866
緬甸花梨傢具是哪個國家的 瀏覽:872
浙江pvc手套廠家電話號碼是多少 瀏覽:100
華碩筆記本北京維修點 瀏覽:799
涪陵空調維修電話附近 瀏覽:247
宜昌工貿家電在哪裡 瀏覽:527
閃修俠龍崗維修點 瀏覽:845
翻新機怎麼變成真機 瀏覽:111
海清家居服 瀏覽:222
防水灑到啞光磚上怎麼辦 瀏覽:869
鐵路護欄翻新用什麼漆價格是多少 瀏覽:495
湘潭華為維修點查詢 瀏覽:623
史密斯熱水器售後維修這行 瀏覽:921
重慶九陽電器售後維修 瀏覽:91
廣州頂級傢具 瀏覽:807
偉威家電維修部怎麼樣 瀏覽:100
本地傢具回收哪裡好 瀏覽:511
電路板補點 瀏覽:973
西藏口碑好的傢具包括哪些 瀏覽:743