|

楼主 |
发表于 2012-10-10 09:57
|
显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
灰袍法师 发表于 2012-10-10 04:01 
求最大值用规划求解即可
没必要随机搞几亿次
我猜测你是要求 f(x,y,z) = 1/x + 1/y + 1/z x=[1,1000], ...
谢谢回复,这只是举个例子,事实上f(x,y,z) 函数很复杂,需要用到工作表中的很多数据。变量也不是想,yxz三个,而是10几个。需要一一枚举。以前用表格计算,完全不行,计算一组需要2-3秒,计算深度很浅,步长用10。最近学了vba,每组大约0.13秒,效率提高了20倍,因此希望增加计算深度,将步长改为1,发现耗时巨大,无法运行下去了。
上例中,如果步长为10,计算时间也只有几个小时。看到CPU的使用并不是很多,完全可以接纳更多运算,因此希望找到让cpu满负荷工作,同时计算很多组参数的方法。
我想,搜索引擎能在很短时间内搜索大量范围并给出结果,是因为把任务分配给了很多其它的计算工具,那么,个人电脑是否也有类似分解cpu的功能呢? |
|