2011-06-07 45 views
0

我正在写一个用Java编写的系统工具,它基本上是在t0开始一个任务并在N秒内完成。因为我预计这个工具可以在不同的机器上运行,所以执行任务的时间会有所不同。因此,在此工具启动之前,需要进行一次性校准,以便能够准确预测任务完成的时间长度(在1至3秒内完成“精确”)。要求公式 - 如果甚至可能

基本上我有X和Y,它完成了N秒测量...

 
x      y       N Seconds 
------------------------------------------------------------ 
1.0      15       5.54 
1.5      15       3.64 
2.0      15       2.73 

1.0      35       12.7 
1.5      35       8.44 
2.0      35       6.23 

1.0      55       19.9 
1.5      55       13.8 
2.0      55       10.3 

鉴于以上的测量结果,我可以推导出一个神奇的公式,说,“如果一个任务是完成15秒,则x必须是“胡说”,y是“胡说”。

显然数学不是我的强项,是一个公式甚至可能吗?

谢谢!

+0

我无法理解你的餐桌。什么是x和y?他们是两台时机不同的机器吗?他们的参数是否会导致N秒?我相信桌子对你来说很清楚,但我不是你,也不了解它。 – btilly 2011-06-07 05:57:23

+0

@btilly你为什么在意? mening完全不相关。 – 2011-06-07 06:00:02

+2

@Op De Cirkel:意义远非无关紧要。如果我知道它们的含义,那么我可以看到数据是否符合一个合理的等式,并且理智地检查该等式是否有意义。如果没有上下文,我甚至不知道被问到什么,或者提供了什么数据。 – btilly 2011-06-07 06:43:26

回答

6

从玩问题中的数据来看,它看起来像这个函数是一个相当不错的近似值。

z = y/(x * 2.67) 

例如,对于x = 1.5,且y = 15,它给3.74,以及对于x = 1.0和y = 55,它给20.6。

你有两个自由参数,所以如果你想说,z = 15,那么你可以替换并得到y或x的估计值。不知道其中一个,你不能真正了解其他的。

15 = y/(x * 2.67) 
15/(x * 2.67) = y 
y = 5.83/x 
x = 5.83/y 
+0

谢谢@rrenaud,这真是太棒了,而且完全是**我之后......再次感谢! – rog8gm 2011-06-07 08:29:13

0

如果只需要表中的值,只需使用该表即可。如果您需要更多,你必须使用一些函数插值方法来获得公式,exapmple polynomial interpolation

0

如果一个任务是在15 秒内完成,则x必须是“胡说”和y 是“blah”

上面可能有infinte解决方案。但它将使感觉找到

  1. 基本上你想找到X之间correlation一个X,给定y和N.,Y和N.有很多算法来确定像Linear regression线性关系。

  2. 除非你运行在根本不同的机器上,比如一台机器是客户机WInXP,另一台机器是Linux机箱,我不认为你需要深入研究,因为其他小事情可能会克服时间(例如其他在系统上运行的进程)

+0

_基本上你想找到x和y之间的关系。这不是他要求的东西!仔细阅读问题。 – 2011-06-07 05:37:33

相关问题