楼主: 美楠
5988 4

[问答] function函数应用问题 [推广有奖]

  • 1关注
  • 0粉丝

大专生

50%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
472 点
帖子
38
精华
0
在线时间
35 小时
注册时间
2015-4-29
最后登录
2015-6-26

楼主
美楠 发表于 2015-5-29 17:05:01 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
问一个比较低级的问题,我现在有一个函数,fx=(x1-5)^2 + (x2-55)^2 +(x3-555)^2 +(x4-5555)^2 +(x5-55555)^2,计算fx的最小值,其中x1,x2,x3,x4,x5为5个不同的变量。
请问这个问题的function函数怎么写啊,底下的式中我光写了f的表达式,但是怎么定义当x1~x5取不同的值时,f最小呢?
f<-function(x1,x2,x3,x4,x5){(x1-5)^2+(x2-55)^2+(x3-555)^2+(x4-5555)^2+(x5-55555)^2}
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:function 应用问题 CTI Fun TIO function

沙发
美楠 发表于 2015-5-29 17:10:51
重新写一下,就是我想用遗传算法计算这个函数的最小值,我也是在网上搜的,他第一行的代码省略掉了,我不会写,原题如下:
题目1:设fx=(x1-5)^2 + (x2-55)^2 +(x3-555)^2 +(x4-5555)^2 +(x5-55555)^2,计算fx的最小值,其中x1,x2,x3,x4,x5为5个不同的变量。

从直观上看,如果想得到fx的最小值,其实当x1=5,x2=55,x3=555,x4=5555,x5=55555时,fx=0为最小值。如果使用穷举法,通过循环的方法找到这5个变量,估计会很费时的,我就不做测试了。下面我们看一下遗传算法的运行情况。

# 定义适应度函数
> f<-function(x){} # 代码省略

# 运行遗传算法
> m <- mcga(  popsize=200,
+             chsize=5,
+             minval=0.0,
+             maxval=999999,
+             maxiter=2500,
+             crossprob=1.0,
+             mutateprob=0.01,
+             evalFunc=f)


藤椅
ZMY名扬四海 发表于 2015-9-12 01:07:04
f<-function(x){
return ((x[1]-5)^2 + (x[2]-55)^2 +(x[3]-555)^2 +(x[4]-5555)^2 +(x[5]-55555)^2)
}

板凳
ntsean 发表于 2015-9-12 10:24:05
最好把x用一个向量表示

f <-  function(x) sum((x - c(5, 55, 555, 5555, 55555))^2)

optim(rep(0, 5), f)

报纸
hellen_dn 发表于 2016-2-16 09:50:47
受教了

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-30 06:39