z****h 发帖数: 203 | 1 ff<-function(a1,a2,a3)
{
****}
已经知道0=1,a2>=1,a3>=1并且a1,a2,a3取{1,2,3,4...}整数。
现在要知道a1,a2,a3取什么值的时候,ff function取值最大。
麻烦各位熟悉R的帮组,谢谢啊。 | q*****q 发帖数: 158 | 2 如果没有整数限制的话,直接optim()就可以搞定。如果有整数限制,就是integer
optimization problem了,不知道R里面有没有相应的函数。
数。
【在 z****h 的大作中提到】 : ff<-function(a1,a2,a3) : { : ****} : 已经知道0=1,a2>=1,a3>=1并且a1,a2,a3取{1,2,3,4...}整数。 : 现在要知道a1,a2,a3取什么值的时候,ff function取值最大。 : 麻烦各位熟悉R的帮组,谢谢啊。
| l*******d 发帖数: 101 | | D*******a 发帖数: 207 | | z****h 发帖数: 203 | 5 谢谢你的回复哦。
那请问如果不限制整数,
optim(c(starting value),ff,还需要加什么限制使得在0到60内啊,还使得三个之和不
超过60)
谢谢。
【在 q*****q 的大作中提到】 : 如果没有整数限制的话,直接optim()就可以搞定。如果有整数限制,就是integer : optimization problem了,不知道R里面有没有相应的函数。 : : 数。
| a*********r 发帖数: 108 | 6 最笨的办法,三个循环,穷举,肯定耗时远远小于一天而且不用动脑子
数。
【在 z****h 的大作中提到】 : 谢谢你的回复哦。 : 那请问如果不限制整数, : optim(c(starting value),ff,还需要加什么限制使得在0到60内啊,还使得三个之和不 : 超过60) : 谢谢。
| q*****q 发帖数: 158 | 7 把条件写成标准形式(忘记了是不是R里只要求AX〉B的形式就可以了,你自己查查),一切线性限制都可以写成标准形式的,然后送进optim就行了。
其实大家说的穷举法挺好的,反正没多少值。
【在 z****h 的大作中提到】 : 谢谢你的回复哦。 : 那请问如果不限制整数, : optim(c(starting value),ff,还需要加什么限制使得在0到60内啊,还使得三个之和不 : 超过60) : 谢谢。
|
|