⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ga_selec.m

📁 遗传算法的matlab程序集(内有很多问题的具体解决程序)
💻 M
字号:
% 选择I/O数据结合 
% 用选择按钮选择一列数据作为输出
%w1=main;
main=figure('Number','Off',...
        'Name','选择I/O变量',...
        'Menubar','None',...
        'Resize','off',...
        'Units','Pixels',...
        'Position',[2 2 636 455]);
% 打印标题
text=uicontrol(main,...
        'style','text',...
        'position',[100 400 50 15],...
        'string','包括',...
        'foregroundcolor',[1 1 1],...
        'backgroundcolor',[0 0 1]);
text=uicontrol(main,...
        'style','text',...
        'position',[200 400 50 15],...
        'string','输出',...
        'foregroundcolor',[1 1 1],...
        'backgroundcolor',[0 0 1]);
text=uicontrol(main,...
        'style','text',...
        'position',[300 400 50 15],...
        'string','输入',...
        'backgroundcolor',[0 0 1],...
        'foregroundcolor',[1 1 1]);
% 对数据文件中的变量数进行循环
[D L]=size(data);
p=370;
if L < 8
        st=35;
else
        st=round(340/L);
end
for i=1:L
include_var(i)=1;
output_var(i)=0;
% 变量数目
        text=uicontrol(main,...
                'style','text',...
                'position',[10 p 80 15],...
                'string',['变量 ' num2str(i)],...
                'foregroundcolor',[1 1 1],...
                'backgroundcolor',[0 0 0]);
        but(i,1)=uicontrol(main,...
                'style','radio',...
                'position',[120 p 15 15],...
                'foregroundcolor',[1 1 1],...
                'backgroundcolor',[0 0 0],...
                'callback',[
                        ['if get(but(' num2str(i) ',1),''value'') == 0;'],...
                                ['set(but(' num2str(i) ',2),''enable'',''off'');'],...
                                ['set(but(' num2str(i) ',3),''enable'',''off'');'],...
                                ['set(but(' num2str(i) ',2),''value'',0);'],...
                                ['set(but(' num2str(i) ',3),''value'',0);'],...
                                ['include_var(' num2str(i) ')=0;'],...
                        'else;',...
                                ['set(but(' num2str(i) ',2),''enable'',''on'');'],...
                                ['set(but(' num2str(i) ',3),''enable'',''on'');'],...
                                ['set(but(' num2str(i) ',3),''value'',abs(output_var(' num2str(i) ')-1));'],...
                                ['set(but(' num2str(i) ',2),''value'',output_var(' num2str(i) '));'],...
                                ['include_var(' num2str(i) ')=1;'],...
                        'end;']);

        % 输出框
        but(i,2)=uicontrol(main,...
                'style','radio',...
                'position',[220 p 15 15],...
                'foregroundcolor',[1 1 1],...
                'backgroundcolor',[0 0 0],...
                'callback',[
                        ['output_var(' num2str(i) ')=1;      '],...
                        ['set(but(' num2str(i) ',3),''value'',0);'],...
                        ['set(but(' num2str(i) ',2),''value'',1);']]);
        % 输入框
        but(i,3)=uicontrol(main,...
                'style','radio',...
                'position',[320 p 15 15],...
                'foregroundcolor',[1 1 1],...
                'backgroundcolor',[0 0 0],...
                'callback',[
                        ['output_var(' num2str(i) ') = 0;      '],...
                        ['set(but(' num2str(i) ',2),''value'',0);'],...
                        ['set(but(' num2str(i) ',3),''value'',1);']]);
        % 设置相应的按钮
        set(but(i,1),'value',include_var(i));
        if output_var(i) == 1
                set(but(i,2),'value',1);
                set(but(i,3),'value',0);
        else
                set(but(i,2),'value',0);
                set(but(i,3),'value',1);
        end

        if include_var(i) == 1
                set(but(i,2),'enable','on');
                set(but(i,3),'enable','on');
        else
                set(but(i,2),'enable','off');
                set(but(i,3),'enable','off');
                set(but(i,2),'value',0);
                set(but(i,3),'value',0);
        end
        p=p-st;
end
closebtn=uicontrol(gcf,'Style','Push',...
        'Position',[400 30 100 25],...
        'String','继续',...
        'Callback',[...
        'close(gcf);',...
        'ga_init2;',...
        'end;']);



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -