基于混合整数遗传算法的最优成分选择(Matlab代码实现)
创始人
2024-01-25 04:33:28
0

 👨‍🎓个人主页:研学社的博客 

💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码实现

💥1 概述

在本文中,讲解了如何使用遗传算法来查找电路中符合我们设计标准的电阻和热敏电阻的值。该示例使用优化技术来最小化所需响应曲线与电路仿真生成的曲线之间的差异。由于电阻器和热敏电阻仅提供标准尺寸,因此由于此设计变量仅限于这些标准尺寸,因此这成为一个相互约束的问题。

📚2 运行结果

 

 部分代码:

optchanged = false;

switch flag
    case 'init'
        figure('Position',[40 535 800 520],'Tag','tempCurve');
        set(gca,'Tag','ax1');
        set(gca,'YLim',[0.1 0.2]);
        grid on;
        hold on;
        plot(Tdata,VData,'-*b');
        xlabel('Temperature (^oC)');
        ylabel('Voltage (V)');
        title('Thermistor Network Temperature Curve','FontSize',12);
        [~,loc] = min(state.Score); % Find location of best
        bestV = voltageCurve(Tdata,state.Population(loc,:),Res,ThVal,ThBeta);
        plotBest = plot(Tdata,bestV,'-or');
        set(plotBest,'Tag','bestVLine'); % Update voltage curve
        legend('Ideal Curve','GA Solution','Location','southeast');
        drawnow;
    case 'iter'
        fig = findobj(0,'Tag','tempCurve');
        figure(fig(end));
        [~,loc] = min(state.Score); % Find location of best
        bestV = voltageCurve(Tdata,state.Population(loc,:),Res,ThVal,ThBeta);
        ax1 = findobj(get(gcf,'Children'),'Tag','ax1');
        plotBest = findobj(get(ax1,'Children'),'Tag','bestVLine');
        set(plotBest, 'Ydata', bestV); % Update voltage curve
        drawnow;
    case 'done'
        fig = findobj(0,'Tag','tempCurve');
        figure(fig(end));
        [~,loc] = min(state.Score);
        xOpt = state.Population(loc,:);
        s{1} = sprintf('Optimal solution found by Mixed Integer GA solver: \n');
        s{2} = sprintf('R1 = %6.0f ohms \n', Res(xOpt(1)));
        s{3} = sprintf('R2 = %6.0f ohms \n', Res(xOpt(2)));
        s{4} = sprintf('R3 = %6.0f ohms \n', Res(xOpt(3)));
        s{5} = sprintf('R4 = %6.0f ohms \n', Res(xOpt(4)));
        s{6} = sprintf('TH1 = %6.0f ohms, %6.0f beta \n', ...
        ThVal(xOpt(5)), ThBeta(xOpt(5)));
        s{7} = sprintf('TH2 = %6.0f ohms, %6.0f beta \n', ...
        ThVal(xOpt(6)), ThBeta(xOpt(6)));
        % Display the text in "s" in an annotation object on the
        % temperature curve figure.  The four-element vector is used to 
        % specify the location.
        annotation(gcf, 'textbox', [0.15 0.45 0.22 0.45], 'String', s,...
            'BackGroundColor','w','FontSize',8);
        hold off;
end
 

🎉3 参考文献

部分理论来源于网络,如有侵权请联系删除。

[1]雷阳.基于混合整数遗传算法的输油管道泄漏定位研究[J].电子技术与软件工程,2015(09):184-185.

[2]Seth DeLand (2022). Optimal Component Selection Using the Mixed-Integer Genetic Algorithm.

🌈4 Matlab代码实现

相关内容

热门资讯

大范围高温来袭,天气预报会“刻...   新华社北京7月13日电题:新闻分析:大范围高温来袭,天气预报会“刻意”压低数值吗?  据中央气象...
淘宝补单货比三家的原因(货比三...   相信大家都有听说货比三家这个说法吧。意思呢就是同样的货要进行三家对比,是指在采购货交易过程中进行...
不要押金手工活 靠谱推荐 不要... 现在赚钱的渠道十分多,很多因为一些原因不能在外务工的朋友很想做一些手工活。但是手工活一般都是需要押金...
美团商家回复好评用语,奶茶店顾...   美团平台中如何吸引客户购买,其中来自其他客户的评论就是非常关键的。同时商家回复客户的评论也是非常...
抖音1w播放量大概多少钱?收益... 做自媒体账号的朋友都希望自己的视频播放量可以很高,但是视频播放量很高并不代表就可以直接产生很多收益,...
工资5000五险一金扣多少?五...   现在想必大家都有缴纳五险一金吧,五险一金在生活中给大家带来的作用有很多,这也是国家给每个职工的权...
阿里系APP大全,十大阿里巴巴...   我们大家都知道淘宝、支付宝、饿了么等软件,那么你们知道他们其实是一家人吗?是的,他们都隶属于...
卖茶叶广告怎么发朋友圈?什么文...   很多实体店老板也开始走线上售卖茶叶的途径,将茶叶更好的推广出去。那么在微商朋友圈推广茶叶该运用什...
淘宝刻公章会被发现吗?是不是犯...   现在我们很多大学生到了实习的时候,但是很多大学生没有根据自己专业去选择岗位,我们大学生就会想着去...
we2000开通了怎么获取额度...   现在的借款平台越来越多了,大家应该听说过we2000银行吧,这是我们微信公众号里面的一个借钱的公...