导航:首页 > 源码编译 > 蚁群算法vb

蚁群算法vb

发布时间:2022-09-25 09:55:26

‘壹’ 求“基于蚁群算法的城市配电网规划”的源代码!!!!!

‘贰’ 2019622李善友公开课

本资料由混沌北京分社学霸 冯清扬&李敏同学 整理!

持续更新中……

—— —— —— —— —— ——

第一部分:进化论

从个体差异推导出遗传变异,从生存竞争推导出自然选择,遗传变异和自然选择共同推导出达尔文的第一性原理:进化论。

达尔文的根本思想:“存在没有设计师的设计”。

变异+选择=进化

生物自发地变异,自然自发地选择,没有上帝之手设计,自然自发形成最完美的设计。

基于简单法则和反馈,计算机能够自发进化出没有人编写的复杂程序,正如大自然能自发进化出复杂世界,整个过程不需要一个指手画脚的设计师。

变异+选择+隔离=进化

进化算法特别适合用于以下三件事:

1.如何到达你想去却找不到路的领域?

2.如何到达你无法想象的领域?

3.如何开辟全新领域?

进化算法与创新思维:

1.变异:自下而上、多样探索

2.选择:一二曲线、自我破坏

3.隔离:错位竞争、边缘创新

进化算法与创新思维:

1.变异——个体差异:自下而上、多样探索

——企业需要有足够丰富的多样性,多样性是创新的来源。

除非在系统中注入多样性,否则内生增长将彻底消失。

进化算法与创新思维:

2.选择——生存竞争:一二曲线、自我破坏

有利于生存的变异会被选择下来,不利于生存的变异会被淘汰,这就是自然选择。

更为究竟的说:自然只会淘汰不利于生存的变异,有利于生存的变异被剩下来而不是被主动选择。

创新的过程往往就是新组合对旧组合通过竞争热加以消灭的过程。熊彼特把这一过程称为“创造性破坏”。

市场经济就是进化经济,它的核心精神是:想生就生,该死就死

市场的创造性破坏,对于企业增长有什么启示呢?

答:将市场的创造性破坏模式引入到企业中去!

问题1:我们都希望第一曲线基业长青,但是任何曲线豆无法避免极限点,这时候怎么办?

答:一次又一次地跨越第二条曲线。

问题2:什么时候启动第二曲线?

答:第一曲线过了破局点;第一曲线还在增长,但增长加速度开始下降;deadline:第一曲线到达财务极限点之前。

问题3:如果第二曲线已经过了破局点,而且和第一曲线之间形成了竞争,该如何选择?

答:创造性自我破坏。像市场淘汰过气企业一样,企业要破坏自己的过气业务和产品。

在企业中,第二曲线终将超越第一曲线;正如在家庭中,儿子终将代替父亲成为家里的顶梁柱。

进化算法与创新思维:

3.隔离:错位竞争、边缘创新

如果没有隔离,在原有大种群之中,变异很快就被稀释掉了。

地理隔离——生殖隔离——新物种

对于企业而言隔离的含义:

(1)内部:第一二曲线之间的隔离

对内:独立小团队

除非企业成立两个彼此独立的机构(从属于不同的价值网),来应对新的机遇,发展第二曲线。

(2)外部:与在位巨头的错位竞争

对外:错位竞争

与其更好,不如不同——减少竞争

在领先企业已经建立主导性优势的环境中,任何类似产品都会沦为鸡肋。

进化树表现为不断生出侧枝得以发展。进化树的主枝生长最终形成盲端,而生长出的侧枝得以进一步演化,侧枝又会长出新的侧枝演化出新的生物。

企业的进化树:

一条曲线上的指数式增长必将由于临近奇点而崩塌,通过创新重启增长曲线,实现曲线转换,创新与曲线转换的发生将越来越快。

第二部分:熵增理论

对今天所有人影响最大的人是牛顿(没有之一),牛顿机械论世界观:

逻辑奇点:惯性;引力

第一性原理:经典运动定律

图片: https://images.smcdn.cn/YRyRDDf4KR0f6GbY/15611741681547.jpg

牛顿机械论世界观:宇宙就是一台(封闭)机器。

封闭系统的熵随着时间的推移不断增加,且不可逆。任何封闭系统,最终的命运是死亡。

基于牛顿世界观,科学管理把组织视为机器,把人视为机器的零件。传统商业组织必然是封闭的、机械的、有边界的,因此不得不面对“组织熵增”——涣散化、官僚化、失效化、并最终走向灭亡。

图片: https://images.smcdn.cn/A63iwhRrD8s1LpFg/15611748612984.jpg

生命系统是熵增的“特例”,生命以负熵为生。

[强]生命系统是开放系统(耗散结构):具有不断从外部环境吸收能量(阳光、食物等)和对外输出熵(二氧化碳)的能力。

图片: https://images.smcdn.cn/pfeu4LhfLyIl6M96/15611752419478.jpg

相应地,去组织熵增的路径:

①机械型组织(机器) 到 生物型组织(生命)

②控制 到 走出控制(out of control)

③熵增 到 反熵增

图片: https://images.smcdn.cn/i6aAfvLp4BoJea3G/15611755214935.jpg图片: https://images.smcdn.cn/pRR85GuN4hwt4J6K/15611755214836.jpg

图片: https://images.smcdn.cn/QqknRMJQ098LKJO7/15611755214732.jpg

反熵增案例:任正非

任正非及华为价值观背后的思维——反熵增思维

1.任正非第一性原理

(1)年轻时:控制论+军事思想=狼性文化

华为取得长达十年的高速发展。

2000年,机械论世界观+狼文化开始对华为形成一定程度的反噬。

2001-2003,任正非的至暗时刻——阅读和思考,是任正非走出黑暗最重要的依仗,他加速从西方管理学、科学、哲学中汲取养分。

(2)热力学第二定律,犹如为任正非开了天眼。

死亡是一个哲学命题,而活下去则是一个现实命题。

前些年我把“活下去”作为华为的最低纲领,现在我终于明白,“活下去”是企业的最高纲领。

图片: https://images.smcdn.cn/VfTysgMXzgspJVlf/15611760211487.jpg

2.反熵增实践

任正非的反熵增:

耗散结构——优势耗散,把自己的优势耗散出去,把企业的优势耗散出去

(1)财富耗散于人才

“炸开人才金字塔的塔尖”,提高人才浓度。

在华为的投入结构中,人力资本的投入处于优先的、超前的地位,是先有人力资本的投入才有财务资本的增长和高投资回报。

近三年,就有700多名世界顶级科学家加入华为。

例:5G极化码发现者:埃尔多尔.艾利坎

图片: https://images.smcdn.cn/NRqoKcn54VMmGfhX/15611765873684.jpg

(2)财富耗散于技术

例:1993年的华为与联想——现在这两家公司成为对方应该成为的样子,因为他们把钱花成了不同的样子。

1998年颁布的《华为基本法》:我们保证按照销售额的10%拨付研发经费。

华为过去十年累计研发投入近4000亿人民币。面向未来,华为将加大基础研究投入,每年150-200亿美元的研发费用中,20-30%将用于基础研究。

图片: https://images.smcdn.cn/Kcg4i6KW5GMd7jDm/15611779297539.jpg

图片: https://images.smcdn.cn/HPjBcst5Rycs3aXA/15611779297432.jpg

3.华为使命

华为近三年来的使命关键词:连接(三个阶段)

(1)管道连接

通讯连接:运营商管道业务,竞争对手是诺基亚、爱立信等

(2)云管端

CT+IT连接:云管端业务(云计算、运营商管道、手机终端),竞争对手是苹果、思科等。

(3)万物连接

万物连接:构建万物互联的智能世界。

图片: https://images.smcdn.cn/zgHJVBlbq5IcysoI/15611784019348.jpg

第三部分:分形创新

❔一个物种怎么可能变成另外一个物种?

达尔文思想一个决定性的转折:尺度变换

生存竞争的主角不是物种,而是同一物种之内的个体;遗传变异的主角甚至不是生物个体,而是基因;基因变异的场景是个体之间的繁殖。

变异+选择=进化(新物种)

达尔文:自然界无飞跃。

“创新无飞跃”

图片: https://images.smcdn.cn/3ZXFnycRZ3419mg4/15611842474263.jpg图片: https://images.smcdn.cn/ZOMD5bGjO7gj6hg3/15611842625111.jpg

第二曲线的产生方法

管理创新+市场选择

跟生物学类比:管理=遗传,创新=变异

第一曲线的某一个创新,被挑选出来,成长为第二曲线。

图片: https://images.smcdn.cn/kznwh6BDSq4AI2RB/15611843763234.jpg

分形创新的操作步骤

1.第一曲线要素拆解

2.组合创新内部MVP

3.市场选择10倍速增长

4.单一要素最大化

5.成长为第二曲线

案例2:

【好未来的分形创新】

第一曲线:理科+教研+小班+线下

十年前在线下业务如日中天时,开始探索线上业务。

第二曲线:双师模式的网校——学而思网校

图片: https://images.smcdn.cn/JPDDsy6xiVIpXeHv/15611857463227.jpg图片: https://images.smcdn.cn/t3RDEh0z71EcLays/15611857629144.jpg

生物从细胞到生态,物种丰富多样,但背后的规律却非常简洁优雅。

从生物视角看企业经济系统:

Step1:变异与多样

Step2:选择与破坏

Step3:隔离与独立

Step4:分形与新生

[强]案例3

【头条的分形创新】

头条第一曲线:今日头条[机智]

新闻资讯时外衣,推荐引擎是内核。

Step1:变异与多样:第一曲线探索分形

Step2:选择与破坏:分形要素十倍变异

内容分形;

呈现形式分形;

分发分形:社交分发

分发分形:商品分发

图片: https://images.smcdn.cn/4MVayQLFHH8hzCWQ/15611868735489.jpg图片: https://images.smcdn.cn/tAexoekGvT8UMFIH/15611868785564.jpg图片: https://images.smcdn.cn/Q2GbcD8qwT4PE6zT/15611868855614.jpg图片: https://images.smcdn.cn/U2avXiHlZCkAWhTH/15611868909440.jpg图片: https://images.smcdn.cn/jsZdor3G6CEQ38OO/15611868953850.jpg图片: https://images.smcdn.cn/LPbjHhJwWwQsVGR3/15611869005630.jpg

Step3:隔离与独立,独立环境隔离成长

每一个新产品立项,负责人就去三个部门挑人,分别负责留存、拉新和变现,临时成立一个虚拟项目组。

若虚拟项目组表现不错,再稳固为独立团队,进化为独立公司。

以最小消耗建立最优路线的自然聚焦。

图片: https://images.smcdn.cn/K5E2rZ4FqukEzXsk/15611869354774.jpgStep4:分形与新生,分形衍生第二曲线

变异+选择+隔离=新物种=第二曲线

图片: https://images.smcdn.cn/lJ6eFgZtOX0qPflH/15611869465676.jpg图片: https://images.smcdn.cn/pulZi96m0iENms85/15611869517379.jpg

【头条第二曲线:抖音】

分形的关键是:有一个可迁移的自相似的同构性。

张一鸣:我觉得我们还是很专注的,其实他们都是一类产品。

张一鸣:这个时代也许是进化论的最好证明。

在全世界范围内促进信息的创造(分形业务)和流动(主航道)。

图片: https://images.smcdn.cn/TUplo2CvvZErLqCq/15611869840235.jpg图片: https://images.smcdn.cn/nlWc22d1Vq0wUcT2/15611869898875.jpg

分形实际上是一门关于混沌的复杂性数学

李善友:分形是我个人的第一性原理

视频:分形学(强烈推荐,同学们可以搜索看一下)

[嘿哈]

【分形算法】

分形创新可以极大地缓解创业中的竞争和增长压力。打破“增长魔咒”,打破”组织熵增“。

分形算法逆熵的核心机制是:增加了维度。

常规战略:平面思维,静态思维(地盘之争,你有我无)

分形创新:从二维穿透,增加了维度(同一尺度没有空间,但从细分切口突破进去,无限空间!)

击穿阈值点,一花一世界。

案例1:美团酒旅——本地住宿

✌案例2:拼多多——货找人

图片: https://images.smcdn.cn/pL8a6uzjP68FRO2U/15611874773321.jpg

分形算法,是一种创新哲学,也是一种过程哲学。

常规思维:未来是“一”。结果是目的,过程服务于结果。

过程哲学:当下是“一”。过程本身就是目的,结果反而不再重要。——活在当下

【分形算法】

1.互指迭代。2.过程哲学。

案例:

乔布斯——”乔布斯深受禅的影响”。

让生命服务于使命——一方面,他追寻个人精神世界的领悟;另一方面,他想要打造足以改变世界的产品。禅使他得以将这两个目标融为一体:作出伟大的产品成为乔布斯独特的禅修方式。

图片: https://images.smcdn.cn/bezh8DLUOvokdddT/15611890612485.jpg

第四部分:涌现创新

《复杂》一书中指出“随着成员数目的增加,成员之间的相互作用呈指数增长,当连接度超过某一临界值时引发涌现。”

✨涌现是一种特殊的分形。涌现,整体大于部分之和。

单个神经元的行为特别简单,但无数神经元组合在一起,就涌现出思维和意识。

《失控》中指出“成千上万条沙丁鱼如一头巨兽游动,破浪前行,它们如同一个整体,这种一致性从何而来?”

答案是涌现的层次性:大量个体合成了一个更高层次的新秩序。

重新定义什么叫“涌现”:涌现就是出现新的超生命体。涌现就是生命。——“涌现论世界观”,这是一种彻底告别物理学机械论的新世界观。

自组织:大量个体基于简单规则的相互作用,无需中央调控,就能涌现出整体上的新秩序。

自组织的关键特征:同步性

鱼群同步的简单规则:

规则1:跟上前面的鱼

规则2:与身边的鱼保持同步

规则3:与后面的鱼保持距离

Boids鱼群模拟软件“博德三原则”

视频名称→【Boids仿真鱼群】

机械系统总是无法抵抗衰败,生命系统总是可以不断进化。

❔冯诺伊曼的革命性问题:生命有自组织,机器能否自复制?——寻找抵抗熵增定律的另类途径

1957 年冯诺伊曼从数学上证明了:自复制机器原则上是可能的。

复杂性系统的理想模型:“元胞自动机”

✌视频→【生命游戏】

三、信息流

同构性问题:进化是随机的吗?

答:第一步,产生可遗传的变异,这一步具有偶然性。

第二步,对各种变异的自然选择。——正反馈

正反馈是如何产生的?

答案:蚁群算法——蚂蚁自组织的两种规则①集中行动②随机探索

1.进化学:变异+选择=进化

2.遗传学:基因型决定表现型

生命遗传的“中心法则”:

遗传型:自指性(DNA是复制蛋白质的遗传密码,DNA也包含能够复制自己的遗传密码)——第一性原理是自指性法则

遗传型到表现型:单向性

破界创新:用第一性原理的推理方式去发现更大尺度的第一性原理(自指性)

为什么蚂蚁“众愚成智”,而人类“众智成愚”(乌合之众)?

涌现的关键含义是:涌现就是生命!

涌现世界观:把你做的事情当作一条命!一条真正的生命!

人类比动物多了小我,我们的世界产生了二元对立,我们认为我们做的事情是为“我”服务的。

使命涌现,人生随之改变。

上半场:成功

下半场:意义+成功——这样做不但人生有了幸福感,事业反而更成功。

案例1:“产品之神”乔布斯:苹果的产品要有灵魂。

案例2:“寿司之神”小野二郎:(1)你必须爱自己的工作。(2)做寿司是奏交响乐。(3)职人精神,一生悬命。

✨“天命所归的事儿”

1.喜欢的(心流)

2.擅长的(天赋)

3.有意义(至善)

一个组织里,如果能够鼓励每个成员去寻找自己的使命,个体使命与组织使命的同频共振,就是涌现。

在一个涌现的组织里,创新将是自然而然的结果,自组织,自复制,自生长。

图片: https://images.smcdn.cn/d3uRN8S3IGCM3T/15611980997630.jpg

图片: https://uploader.shimo.im/f/NWuz4SlTUkw7xRAI.jpg

‘叁’ 用VB或者MATLAB在一个矩形内生成一个固定点和几个随机点,再求出从固定点经过所有随机点回来后的最短路径

这个并非一般的最短路径问题,而是旅行商问题(Traveling Saleman Problem,TSP)。旅行商问题属于NP完全问题,如果问题规模比较大,至今没有太有效的算法。

这里提供一个蚁群算法的程序,参考:

http://..com/question/175608123.html

根据你的问题做了少量改动,具体代码如下:

functionTSP
%TSP旅行商问题
%设置初始参数如下:
m=10;Alpha=1;Beta=5;Rho=0.1;NC_max=200;Q=100;
%生成随机点,第一个点视为固定点
C=[0.50.5];
C(2:10,:)=rand(9,2);
%调用蚁群算法求解
[R_best,L_best,L_ave,Shortest_Route,Shortest_Length]=ACATSP(C,NC_max,m,Alpha,Beta,Rho,Q);


function[R_best,L_best,L_ave,Shortest_Route,Shortest_Length]=ACATSP(C,NC_max,m,Alpha,Beta,Rho,Q)
%%=========================================================================
%%ACATSP.m
%%
%%ChengAihua,,ZhengZhou,China
%%Email:[email protected]
%%Allrightsreserved
%%-------------------------------------------------------------------------
%%主要符号说明
%%Cn个城市的坐标,n×2的矩阵
%%NC_max最大迭代次数
%%m蚂蚁个数
%%Alpha表征信息素重要程度的参数
%%Beta表征启发式因子重要程度的参数
%%Rho信息素蒸发系数
%%Q信息素增加强度系数
%%R_best各代最佳路线
%%L_best各代最佳路线的长度
%%=========================================================================
%%第一步:变量初始化
n=size(C,1);%n表示问题的规模(城市个数)
D=zeros(n,n);%D表示完全图的赋权邻接矩阵
fori=1:n
forj=1:n
ifi~=j
D(i,j)=((C(i,1)-C(j,1))^2+(C(i,2)-C(j,2))^2)^0.5;
else
D(i,j)=eps;
end
D(j,i)=D(i,j);
end
end
Eta=1./D;%Eta为启发因子,这里设为距离的倒数
Tau=ones(n,n);%Tau为信息素矩阵
Tabu=zeros(m,n);%存储并记录路径的生成
NC=1;%迭代计数器
R_best=zeros(NC_max,n);%各代最佳路线
L_best=inf.*ones(NC_max,1);%各代最佳路线的长度
L_ave=zeros(NC_max,1);%各代路线的平均长度
whileNC<=NC_max%停止条件之一:达到最大迭代次数
%%第二步:将m只蚂蚁放到n个城市上
Randpos=[];
fori=1:(ceil(m/n))
Randpos=[Randpos,randperm(n)];
end
Tabu(:,1)=(Randpos(1,1:m))';

%%第三步:m只蚂蚁按概率函数选择下一座城市,完成各自的周游
forj=2:n
fori=1:m
visited=Tabu(i,1:(j-1));%已访问的城市
J=zeros(1,(n-j+1));%待访问的城市
P=J;%待访问城市的选择概率分布
Jc=1;
fork=1:n
iflength(find(visited==k))==0
J(Jc)=k;
Jc=Jc+1;
end
end
%下面计算待选城市的概率分布
fork=1:length(J)
P(k)=(Tau(visited(end),J(k))^Alpha)*(Eta(visited(end),J(k))^Beta);
end
P=P/(sum(P));
%按概率原则选取下一个城市
Pcum=cumsum(P);
Select=find(Pcum>=rand);
to_visit=J(Select(1));
Tabu(i,j)=to_visit;
end
end
ifNC>=2
Tabu(1,:)=R_best(NC-1,:);
end

%%第四步:记录本次迭代最佳路线
L=zeros(m,1);
fori=1:m
R=Tabu(i,:);
forj=1:(n-1)
L(i)=L(i)+D(R(j),R(j+1));
end
L(i)=L(i)+D(R(1),R(n));
end
L_best(NC)=min(L);
pos=find(L==L_best(NC));
R_best(NC,:)=Tabu(pos(1),:);
L_ave(NC)=mean(L);
NC=NC+1

%%第五步:更新信息素
Delta_Tau=zeros(n,n);
fori=1:m
forj=1:(n-1)
Delta_Tau(Tabu(i,j),Tabu(i,j+1))=Delta_Tau(Tabu(i,j),Tabu(i,j+1))+Q/L(i);
end
Delta_Tau(Tabu(i,n),Tabu(i,1))=Delta_Tau(Tabu(i,n),Tabu(i,1))+Q/L(i);
end
Tau=(1-Rho).*Tau+Delta_Tau;

%%第六步:禁忌表清零
Tabu=zeros(m,n);
end
%%第七步:输出结果
Pos=find(L_best==min(L_best));
Shortest_Route=R_best(Pos(1),:)
Shortest_Length=L_best(Pos(1))

%绘图显示结果
clf
subplot(1,2,1)
DrawRoute(C,Shortest_Route)
subplot(1,2,2)
plot(L_best)
holdon
plot(L_ave)

functionDrawRoute(C,R)
%%=========================================================================
%%DrawRoute.m
%%画路线图的子函数
%%-------------------------------------------------------------------------
%%CCoordinate节点坐标,由一个N×2的矩阵存储
%%RRoute路线
%%=========================================================================
%原来的绘图语句太繁琐,改用这一句就可以了
plot(C([RR(1)],1),C([RR(1)],2),'o-')
%标明固定点
holdon
plot(C(1,1),C(1,2),'ro')

由于点是随机生成的,每次运行的结果都不同,下面是某次运行的结果(红点为固定点)。

‘肆’ 软件设计毕业设计论文题目

软件设计毕业设计论文题目

软件设计毕业设计论文题目如何拟定,大家有参考的范文吗?以下是我为大家整理的关于软件设计毕业设计论文题目,希望大家喜欢!

1) 组合型板翅式换热器热力设计软件的开发

2) 导波结构健康监测系统软件数据管理模块设计

3) 基于SAP2000分析平台的变电站构架设计软件

4) 通用型激光加工工艺控制软件的领域模型设计

5) 基于蚁群算法的自动化立体车库监控软件的优化设计

6) 发电厂自动抄表软件人机交互界面设计

7) 不同种植设计软件对种植体位置偏差的影响

8) 玉米自动考种流水线控制系统设计--基于MCGS嵌入式组态软件

9) 嵌入式实时软件在计算机软件设计中的运用研究

10) 嵌入式实时软件在计算机软件设计中的运用

11) 测控数据实时监测软件设计方法研究

12) 体验模型指导下的云办公软件社会化分享设计

13) 计算机软件开发设计的难点分析

14) 无人机地面在线检测软件的设计

15) 配网数字化规划设计档案一体化软件设计研究

16) 嵌入式系统设计实验的Qt MIPS仿真软件开发

17) Solidworks参数化设计软件在我国家具研发中的应用

18) 会议电视系统平板会控软件设计与实现

19) 锅炉设计中引入三维设计软件的思考

20) 平面设计软件与DICOM图像数据处理技术

21) FLASH动画设计软件在多媒体技术中的应用

22) 无人机飞控计算机自动测试软件设计与开发

23) 基于虚拟现实技术的软件界面设计与研究

24) 面向掩星观测的软件接收机设计

25) 基于软件通信体系结构的波形FPGA软件设计方法

26) 基于MATLAB的`同步发电机原动机及其调速系统参数辨识与校核可视化软件设计

27) 基于USB的软件综合安全模块设计及应用

28) 面向大数据处理的内容服务器软件设计与实现

29) 基于Android终端的企业即时通信软件的设计与实现

30) 临时限速服务器软件设计优化研究

31) 锥形束CT与simplant软件辅助设计模拟种植下颌牙列缺损的临床研究

32) 面向复用的软件设计方法研究

33) 电网规划数据处理辅助软件的流程设计

34) GPS农田平地机土方量及设计高程计算软件开发

35) 基于STC89C52的智能台灯软件设计

36) 浅析计算机平面设计中设计软件的相互结合与应用

37) 商业固体激光器设计软件应用研究

38) 体育运动会比赛软件系统的设计与研究

39) 综合化航空电子系统网络传输延迟测试软件设计

40) 基于XML的监控软件快速设计技术

41) 基于三维动画软件的服装设计分析与研究

42) 基于Matlab的水与蒸汽热力学性质查询软件设计

43) 机顶盒软件模块设计及实现

44) 剪纸拼接与PS软件设计截骨矫正强直性脊柱炎后凸畸形的对比

45) 基于联合辅助设计软件的试验仪控数字化平台开发

46) ZBrush数字雕刻软件在电脑首饰设计中的应用

47) 对以用户体验为导向的智能手机应用软件界面设计的几点探讨

48) 点云数据生成软件的设计及其在月饼模具逆向设计与制造中的应用

49) 一种新型的有源交错并联Boost软件开关电路设计

50) 基于第一创造法的可拓创新软件设计

51) 基于DCS的工程项目设计软件介绍

52) 一种复杂模式网传数据软件模拟器的设计

53) VB环境下交互式GMT地学绘图软件的设计及实现

54) 基于等效的单体包装机软件模块化设计研究

55) 基于Visual Basic的工程数量计算软件设计与开发

56) 基于数据库的油气管道线路施工图设计软件二次开发

57) 基于EDA软件的滤波器设计

58) 基于Android的可配置工业远程监控软件设计与实现

59) 基于图像方式的受电弓滑板磨耗检测系统软件设计

60) 基于移动互联网的个人健康管理软件设计与实现

61) 老年人的握力测量软件沉浸式界面设计

62) 基于XMPP协议的Android即时通信软件的设计与实现

63) CFD软件自动化验证确认云平台设计与实现

64) 基于模糊聚类的色选机上位软件系统研究与设计

65) 双排桩支护结构理正软件设计计算与有限元(MIDAS/GTS)模拟分析

66) 移动端智能手机软件产品的UI设计研究

67) 基于ZYNQ的软件无线电平台设计与实现

68) 基于面向对象的纸机传动系统软件设计的研究

69) 软件企业设计人员胜任力模型研究

70) 算法可视化软件设计中关键问题的研究

71) 基于参与式设计方法的移动端烹饪软件界面设计研究

72) 支持语音识别功能的Andriod记事本软件设计与实现

73) 中小企业财务软件设计与应用

74) 基于Android的便携式心电监护系统软件的设计

75) 通用测试系统软件架构及关键技术的设计与实现

76) 基于双DSP的制导飞行器控制系统的软件设计

77) 达芬奇技术下的视频处理及传输系统的软件设计与实现

78) 基于SolidWorks的管壳式换热器辅助设计软件研究

79) 医学影像处理与分析软件平台设计与实现

80) 软件园研发建筑空间形态设计研究

81) 基于数据库的滑动轴承设计计算软件开发

82) 基于AutoCAD的滴灌工程设计软件研究与实现

83) 基于Gaudi的CSR外靶实验数据处理软件框架设计

84) 轮式起重机回转系统设计计算软件开发

85) 轮式起重机转向系统设计计算软件开发

86) CS公司软件开发人员薪酬体系优化设计研究

87) 基于可拓创新方法的产品创新软件设计与实现

88) 数字示波器自动校准软件设计

89) 基于Linux的多功能监护仪软件设计

90) CFETR设计软件集成平台研发

;

‘伍’ 张苗的学术简介

获奖情况(1)远程科技咨询与成果交易的支撑技术与系统,第4完成人,河南省科技进步二等奖;(2)基于蚁群算法的文本分类技术研究,第8完成人,河南省科技进步二等奖;(3)基于现场总线结构的储备库粮情检测系统,第7完成人,河南省科技进步三等奖。研究项目(1)远程科技咨询与成果交易的支撑技术与系统,第4完成人,2006年6月省级鉴定(2)基于生态环境控制的新一代安全储粮智能监控系统,第3完成人,2011年8月省级鉴定。(3)中小型制造企业ERP系统研究与实现,第4完成人,2011年8月省级鉴定。(4)基于SMS技术的粮食流通管理信息系统,第3完成人,2011年9月省级鉴定。主要论着主编教材:局域网组建、管理与维护,2009.5,国防科技大学出版社主要教科研论文:基于异构感知静态调度与动态线程迁移的异构多核调度机制,2011.7,计算机应用,CN51-1307/TP(中文核心),第一作者基于启发式信息的支持向量机规则抽取,2008.3,计算机应用,CN51-1307/TP(中文核心),第二作者树形网络自适应调度模型研究,2008.4,微电子学与计算机,CN61-1123/TN(中文核心),第二作者基于蚁群优化算法的网格任务映射策略,2008.6,计算机应用,CN51-1307/TP(中文核心),第二作者树形网格环境下的自适应任务调度算法研究,2008.9,计算机工程,CN31-3428/TP(中文核心),第二作者浅谈河南高校计算机文化基础教学改革,2008.1,科技创新导报,CN11-5640/N,第一作者多类支持向量机文本分类算法,2008.3,计算机技术与发展,CN-1450/TP,第一作者多类支持向量机在文本分类中的应用,2008.5,计算机与现代化,CN-1137/TP,第一作者主讲课程《程序设计基础》,《程序设计实践》,《VB程序设计》,《计算机导论》,《Matlab及应用》,《C语言程序设计》。

‘陆’ 计算机研究生方向,具体解释一下计算机应用技术中的方向是什么

计算机应用专业的特色是“厚基础,重方向”。本专业学生可以学到很扎实的计算机应用基础知识,就业面广;同时,在此基础上又强化专业方向,学生们有重点地掌握一个专门化的技能,以便从事专业性较强的计算机岗位工作。

本方向着重研究神经网络、模糊逻辑、模糊神经网络、模拟退火技术、蚁群算法等在视频图像处理与编码中的应用,旨在发展快速高效和具有在低码率信道下实现视频图像实时编码潜能的压缩算法。

在国内率先开展了模糊矢量量化技术的研究,提出了模糊学习vq算法、模糊k-邻域vq算法、随机竞争学习vq算法,使得vq编码性能大大提高,解决了对初始码书的依赖性问题和码书设计时间过长的问题。

在数字水印技术方面,较为系统地引入了混沌理论,同时在国内较早地开始第二代数字水印算法的研究。

本方向还将医学成像技术、人工生命、非线性非确定系统辩识相结合,在国内较早地提出了基于spect、fmri、eeg、meg等信息融合高维时空非线性模型的建立和辨识,能够为医学功能实时成像提供定量的理论依据、有效的分析方法和实用的计算手段。

本方向的研究工作,一方面以多媒体图像信息处理的新理论、新方法和新技术为突破口,力图实现理论和技术上的源头创新;同时将“产、学、研”紧密结合,力求形成我国自主的知识产权,提高核心国际竞争力。

培养目标:

计算机应用技术专业培养具备管理学理论基础、计算机科学技术知识及应用能力,掌握信息管理、信息系统分析与设计方法等方面的知识与能力。

能在各类企、事业单位、金融机构及政府部门从事信息采集、组织、分析、传播和服务等信息管理工作或与信息管理工作相关的信息系统规划、分析、设计、实施、运行管理和评价等方面的应用型人才。

计算机软硬件技术基础、数据库系统SQL、数据结构与C程序设计、单片机原理与技术、计算机网络原理、工程经济、高级语言汇编、VB. net程序设计、多媒体软件应用、计算机网络与网站建设。

Delphi程序设计、Java语言程序设计、图形图像应用处理(PhotoShop)、Flash动画制作、微型计算机安装调试维修、办公室软件应用操作、计算机辅助设计、岗前培训“一技之长”。

本专业主要开设微机原理与接口技术、C语言、数据结构、操作系统、平面设计、SQL SERVER数据库应用、3DS软件应用、网页制作、Visual FoxPro应用基础等课程。

(6)蚁群算法vb扩展阅读:

主要课程:

一、公共课

1、大学语文

2、应用文写作

3、思想道德修养与法律基础

4、形势政策

5、大学英语

6、高等数学

7、体育

二、基础课

1、计算机应用基础

2.微机原理与接口技术

3、C语言程序设计

4、数据结构

5、专业英语

三、专业课

1、平面设计

2、SQL SERVER数据库应用

3、3DS软件应用

4、网页制作

5、计算机网络

6、Visual FoxPro应用基础

7、计算机组装与维护

四、选修课

1、音乐与绘画

2.大学生就业与创业指导

‘柒’ 求蚁群算法matlab或者,c,或者vb源码,用在多机器人协作,寻迹,最有路径的,,程序!!谢谢,回答好的,

clear,close all;
loc = [0.3663, 0.9076; 0.7459, 0.8713; 0.4521, 0.8465;
0.7624, 0.7459; 0.7096, 0.7228; 0.0710, 0.7426;
0.4224, 0.7129; 0.5908, 0.6931; 0.3201, 0.6403;
0.5974, 0.6436; 0.3630, 0.5908; 0.6700, 0.5908;
0.6172, 0.5495; 0.6667, 0.5446; 0.1980, 0.4686;
0.3498, 0.4488; 0.2673, 0.4274; 0.9439, 0.4208;
0.8218, 0.3795; 0.3729, 0.2690; 0.6073, 0.2640;
0.4158, 0.2475; 0.5990, 0.2261; 0.3927, 0.1947;
0.5347, 0.1898; 0.3960, 0.1320; 0.6287, 0.0842;
0.5000, 0.0396; 0.9802, 0.0182; 0.6832, 0.8515];

% loc=rand(50,2);
NumCity=length(loc);
for i = 1:NumCity,
for j = 1:NumCity,
distance(i, j) = norm(loc(i, :) - loc(j, :));
end
end
distance=distance+eye(NumCity).*eps;
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
%^^^^^^^^^^^^^^^^^^ Initialize AC Parameters ^^^^^^^^^^^^^
% P: ant α β ρ η Q
% V: 31 1 5 0.1 1./distance 100
ant=31; a=1; b=5; p=0.1; E=1./distance; Q=100;
%^^^^^^^^^^^^
t=ones(NumCity); Nm=200;
Tabu=zeros(ant,NumCity); R_best=zeros(Nm,NumCity);
L_ave=zeros(Nm,1); L_best=inf.*ones(Nm,1);
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tic
for Nc=1:Nm
Tabu=[];
%^^^^^^^^^^^^^^^^^^ Put Ants into Cities ^^^^^^^^^^^^^
Randpos=[];
for i=1:(ceil(ant/NumCity)),Randpos=[Randpos,randperm(NumCity)];end
Tabu(:,1)=(Randpos(1,1:ant))';
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
%^^^^^^^^^^^^ Ants According To Probability Choose Next City ^^^^^^^^^^^^^
for j=2:NumCity,
for i=1:ant,
VisitedCity=Tabu(i,1:(j-1));
UnVisited=zeros(1,(NumCity-j+1));
P=UnVisited;
Jc=1;
for k=1:NumCity
if length(find(VisitedCity==k))==0
UnVisited(Jc)=k;
Jc=Jc+1;
end
end
%^^^^^^^^^^^^
for k=1:length(UnVisited)
P(k)=(t(VisitedCity(end),UnVisited(k)).^a)...
*(E(VisitedCity(end),UnVisited(k)).^b);
end
P=P./sum(P);
%^^^^^^^^^^^^
Pcum=cumsum(P);
Select=find(Pcum>=rand);
% Select=find(P==max(P));
ToVisit=UnVisited(Select(1));
Tabu(i,j)=ToVisit;
end
end
if Nc>=2,Tabu(1,:)=R_best(Nc-1,:);end
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
%^^^^^^^^^^^^ Record the Best Path ^^^^^^^^^^^^^
L=zeros(ant,1);
dt=zeros(NumCity);
for i=1:ant
R=Tabu(i,:);
for j=1:(NumCity-1), L(i)=L(i)+distance(R(j),R(j+1));end
L(i)=L(i)+distance(R(1),R(NumCity));
for j=1:(NumCity-1)
dt(Tabu(i,j),Tabu(i,j+1))=dt(Tabu(i,j),Tabu(i,j+1))+Q./(L(i));
end
dt(Tabu(i,NumCity),Tabu(i,1))=dt(Tabu(i,NumCity),Tabu(i,1))+Q./L(i);
end
L_best(Nc)=min(L);
pos=find(L==L_best(Nc));
R_best(Nc,:)=Tabu(pos(1),:);
L_ave(Nc)=mean(L);
t=(1-p).*t+dt;
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
%^^^^^^^^^^^^ Updata the t ^^^^^^^^^^^^^
% dt=zeros(NumCity);
% for i=1:ant
% for j=1:NumCity-1
% dt(Tabu(i,j),Tabu(i,j+1))=dt(Tabu(i,j),Tabu(i,j+1))+Q./(L(i));
% end
% dt(Tabu(i,NumCity),Tabu(i,1))=dt(Tabu(i,NumCity),Tabu(i,1))+Q./L(i);
% end
% t=(1-p).*t+dt;
% Tabu=zeros(ant,NumCity);
end
toc
Pos=find(L_best==min(L_best));
Shortest_Route=R_best(Pos(1),:);
Shortest_Length=L_best(Pos(1));
subplot(1,2,1)
DrawRoute(loc,Shortest_Route)
subplot(1,2,2)
plot(L_best)
hold on
plot(L_ave)

‘捌’ 怎样解决VB中这样的最短路径问题

这种问题一般都要使用智能算法,如遗传算法,蚁群算法等,才能找到最优解。

‘玖’ VB或C++的蚁群算法源码

//建议使用vc2005以上的编译器,加油!!~!

#include <stdio.h>
#include <cmath>
#include <iostream>
#include <fstream>
#include <time.h>
using namespace std;

const int iAntCount=34;//蚂蚁数量
const int iCityCount=51;//城市数量
const int iItCount=2000;//最大跌代次数
const double Q=100;
const double alpha=1;
const double beta=5;
const double rou=0.5;

int besttour[iCityCount];//最有路径列表

double rnd(int low,double uper)//获得随机数
{
double p=(rand()/(double)RAND_MAX)*((uper)-(low))+(low);
return (p);
};
int rnd(int uper)
{
return (rand()%uper);
};
class GInfo//tsp地图信息,包含了信息素,城市距离,和信息素变化矩阵
{
public:
double m_dDeltTrial[iCityCount][iCityCount];
double m_dTrial[iCityCount][iCityCount];
double distance[iCityCount][iCityCount];

};
GInfo Map;
class ant
{
private:
int ChooseNextCity();//选择城市
double prob[iCityCount];
int m_iCityCount;
int AllowedCity[iCityCount];//没有走过的城市
public:
void addcity(int city);
int tabu[iCityCount];
void Clear();
void UpdateResult();
double m_dLength;
double m_dShortest;
void move();
ant();
void move2last();

};
void ant::move2last()
{
int i;
for(i=0;i<iCityCount;i++)

if (AllowedCity[i]==1)
{
addcity(i);
break;
}
}

void ant::Clear()
{
m_dLength=0;
int i;
for(i=0; i<iCityCount;i++)
{
prob[i]=0;
AllowedCity[i]=1;
i=tabu[iCityCount-1];
m_iCityCount=0;
addcity(i);
}
}
ant::ant()
{
m_dLength=m_dShortest=0;
m_iCityCount=0;
int i;
for(i=0;i<iCityCount;i++) {

AllowedCity[i]=1;
prob[i]=0;
}
}
void ant::addcity(int city)
{
//add city to tabu;
tabu[m_iCityCount]=city;
m_iCityCount++;
AllowedCity[city]=0;
}
int ant::ChooseNextCity()
{
//Update the probability of path selection
//select a path from tabu[m_iCityCount-1] to next
int i;
int j=10000;
double temp=0;
int curCity=tabu[m_iCityCount-1];
for (i=0;i<iCityCount;i++) {

if((AllowedCity[i]==1))
{
temp+=pow((1.0/Map.distance[curCity][i]),beta)*pow((Map.m_dTrial[curCity][i]),alpha);
}
}
double sel=0;
for (i=0;i<iCityCount;i++) {

if((AllowedCity[i]==1))
{
prob[i]=pow((1.0/Map.distance[curCity][i]),(int)beta)*pow((Map.m_dTrial[curCity][i]),(int)alpha)/temp;
sel+=prob[i];
}
else
prob[i]=0;
}
double mRate=rnd(0,sel);
double mSelect=0;
for ( i=0;i<iCityCount;i++) {

if((AllowedCity[i]==1))
mSelect+=prob[i] ;
if (mSelect>=mRate) {j=i;break;}
}
if (j==10000)
{
temp=-1;
for (i=0;i<iCityCount;i++) {

if((AllowedCity[i]==1))
if (temp) {
temp=pow((1.0/Map.distance[curCity][i]),beta)*pow((double)(Map.m_dTrial[curCity][i]),alpha);
j=i;
}
}
}
return j;
}
void ant::UpdateResult()
{
// Update the length of tour
int i;
for(i=0;i<iCityCount-1;i++)

m_dLength+=Map.distance[tabu[i]][tabu[i+1]];
m_dLength+=Map.distance[tabu[iCityCount-1]][tabu[0]];
}
void ant::move()
{
//the ant move to next town and add town ID to tabu.
int j;
j=ChooseNextCity();
addcity(j);
}
class project
{
public:
void UpdateTrial();
double m_dLength;
void initmap();
ant ants[iAntCount];
void GetAnt();
void StartSearch();
project();
};
void project::UpdateTrial()
{
//calculate the changes of trial information
int i;
int j;
for(i=0;i<iAntCount;i++) {
for (j=0;j<iCityCount-1;j++)
{
Map.m_dDeltTrial[ants[i].tabu[j]][ants[i].tabu[j+1]]+=Q/ants[i].m_dLength ;
Map.m_dDeltTrial[ants[i].tabu[j+1]][ants[i].tabu[j]]+=Q/ants[i].m_dLength;
}
Map.m_dDeltTrial[ants[i].tabu[iCityCount-1]][ants[i].tabu[0]]+=Q/ants[i].m_dLength;
Map.m_dDeltTrial[ants[i].tabu[0]][ants[i].tabu[iCityCount-1]]+=Q/ants[i].m_dLength;
}
for (i=0;i<iCityCount;i++) {
for (j=0;j<iCityCount;j++)
{
Map.m_dTrial[i][j]=(rou*Map.m_dTrial[i][j]+Map.m_dDeltTrial[i][j] );
Map.m_dDeltTrial[i][j]=0;
}
}
}
void project::initmap()
{
int i;
int j;
for(i=0;i<iCityCount;i++)
for (j=0;j<iCityCount;j++)
{

Map.m_dTrial[i][j]=1;
Map.m_dDeltTrial[i][j]=0;
}
}
project::project()
{
//initial map,read map infomation from file . et.
initmap();
m_dLength=10e9;

ifstream in("eil51.tsp");

struct city
{
int num;
int x;
int y;
}cc[iCityCount];

for (int i=0;i<iCityCount;i++)
{
in>>cc[i].num>>cc[i].x>>cc[i].y;
besttour[i]=0;
}
int j;
for(int i=0;i<iCityCount;i++)
for (j=0;j<iCityCount;j++)
{
{
Map.distance[i][j]=sqrt(pow((double)(cc[i].x-cc[j].x),2)+pow((double)(cc[i].y-cc[j].y),2));
}
}
}
void project::GetAnt()
{
//randomly put ant into map
int i=0;
int city;
srand( (unsigned)time( NULL ) +rand());
for (i=0;i<iAntCount;i++)
{
city=rnd(iCityCount);
ants[i].addcity(city);
}
}
void project::StartSearch()
{
//begin to find best solution
int max=0;//every ant tours times
int i;
int j;
double temp;
int temptour[iCityCount];
while (max<iItCount)
{
for(j=0;j<iAntCount;j++)
{
for (i=0;i<iCityCount-1;i++)
ants[j].move();
}
for(j=0;j<iAntCount;j++)
{ ants[j].move2last();
ants[j].UpdateResult ();
}
//find out the best solution of the step and put it into temp
int t;
temp=ants[0].m_dLength;
for (t=0;t<iCityCount;t++)
temptour[t]=ants[0].tabu[t];
for(j=0;j<iAntCount;j++)
{
if (temp>ants[j].m_dLength) {
temp=ants[j].m_dLength;
for ( t=0;t<iCityCount;t++)
temptour[t]=ants[j].tabu[t];
}
}
if(temp<m_dLength){
m_dLength=temp;
for ( t=0;t<iCityCount;t++)
besttour[t]=temptour[t];
}
printf("%d : %f\n",max,m_dLength);
UpdateTrial();
for(j=0;j<iAntCount;j++)
ants[j].Clear();
max++;
}
printf("The shortest toure is : %f\n",m_dLength);
for ( int t=0;t<iCityCount;t++)
printf(" %d ",besttour[t]);
}
int main()
{
project TSP;
TSP.GetAnt();
TSP.StartSearch();
return 0;
}

阅读全文

与蚁群算法vb相关的资料

热点内容
度晓晓app为什么关闲 浏览:226
net文件是伪编译码吗 浏览:147
伴随矩阵的matlab编程 浏览:61
单片机和h桥是什么意思 浏览:312
51单片机光控设计论文 浏览:650
涡旋式压缩机无油 浏览:729
企业网搭建及应用pdf 浏览:744
symanteclinux 浏览:878
程序员朋友化妆改造 浏览:493
应用被加密但不知道密码 浏览:586
百度云黑马android 浏览:773
java格式化long 浏览:893
汽车如何加密文档 浏览:625
公司理财第9版pdf 浏览:524
微信个人表情在文件夹 浏览:833
加密狗密码监控 浏览:437
重载发生在编译时 浏览:417
怎么用app买东西 浏览:532
ug后处理多坐标宏命令 浏览:34
性教育pdf 浏览:863