返回信息流假如有9个或者更多变量,每个变量有一定的取值范围,对一每一组取值,代到某个很复杂的模拟函数中得到一个值,如何找到最优解?
有什么比较好且容易编写的优化算法么?需要自己用c++实现
谢谢~
这是一条镜像帖。来源:北邮人论坛 / cpp / #36275同步于 2010/3/4
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
多维搜索优化算法有哪些?
yangxiao
2010/3/4镜像同步10 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
你的问题描述不清 什么叫最优解
【 在 yangxiao (木水年华) 的大作中提到: 】
: 假如有9个或者更多变量,每个变量有一定的取值范围,对一每一组取值,代到某个很复杂的模拟函数中得到一个值,如何找到最优解?
: 有什么比较好且容易编写的优化算法么?需要自己用c++实现
: 谢谢~
: ...................
【 在 coolwc 的大作中提到: 】
: 如果说这个计算函数对外是个黑盒 那么最可行的办法就只有遍历了
遍历复杂度太高了。。。9个参数遍历的话不知道要算到什么时候
我把其中6个参数固定,遍历其中三个还要1个小时,还是在数据量不大的情况
只要计算函数是黑盒就只能遍历 除非你告诉我们计算函数是怎么计算的
【 在 yangxiao (木水年华) 的大作中提到: 】
: 遍历复杂度太高了。。。9个参数遍历的话不知道要算到什么时候
: 我把其中6个参数固定,遍历其中三个还要1个小时,还是在数据量不大的情况
【 在 coolwc 的大作中提到: 】
: 只要计算函数是黑盒就只能遍历 除非你告诉我们计算函数是怎么计算的
是黑盒,但是函数非常复杂,是模拟某个过程
不一定找最优值,近似最优也可以,我在想用模拟退火或者遗传算法等启发式搜索算法是否可行。。。
祝你幸福。。
unsigned int YourFunc(int params[9]){
if(params[9]==42) return MAX;
}
【 在 yangxiao (木水年华) 的大作中提到: 】
: 是黑盒,但是函数非常复杂,是模拟某个过程
: 不一定找最优值,近似最优也可以,我在想用模拟退火或者遗传算法等启发式搜索算法是否可行。。。
包子乖乖,我错了。
【 在 coolwc 的大作中提到: 】
: 祝你幸福。。
: unsigned int YourFunc(int params[9]){
: if(params[9]==42) return MAX;
: ...................