Como determinar uma fórmula para o tempo de execução dadas dados quantitativos, Excel, linhas de tendência, Simulação de Monte Carlo

StackOverflow https://stackoverflow.com/questions/1115777

Pergunta

Posso obter sua ajuda em alguns Matemática e possivelmente Excel?

Eu aferido meu aplicativo aumentando o número de iterações e número de devedores gravação o tempo em segundos, com o seguinte resultado:

        200 400 600 800 1000    1200    1400    1600    1800    2000
20000   15.627681   30.0968663  44.7592684  60.9037558  75.8267358  90.3718977  105.8749983 121.0030672 135.9191249 150.3331682
40000   31.7202111  62.3603882  97.2085204  128.8111731 156.2443206 186.6374271 218.324317  249.2699288 279.6008184 310.9970803
60000   47.0708635  92.4599437  138.874287  186.0576007 231.2181381 280.541207  322.9836878 371.3076757 413.4058622 459.6208335
80000   60.7346238  120.3216303 180.471169  241.668982  300.4283548 376.9639188 417.5231669 482.6288981 554.9740194 598.0394434
100000  76.7535915  150.7479245 227.5125656 304.3908046 382.5900043 451.6034296 526.0730786 609.0358776 679.0268121 779.6887277
120000  90.4174626  179.5511355 269.4099593 360.2934453 448.4387573 537.1406039 626.7325734 727.6132992 807.4767327 898.307638

Como posso agora chegar a uma função para T (tempo necessário em segundos) como uma expressão do número de devedores O e número de iterações I

Graças

Foi útil?

Solução 2

raios de um dos quantos aqui a função é a da partir de T = KNO, onde t é tempo, K uma constante, iterações N, emissores O.

Mudar ordem para K = T / (NO), ligue-a meus dados de exemplo, tomar a média de todos os pontos de amostragem, use o dev Std para o erro

Eu fiz isso para os meus dados e obter:

T = 3.81524E-06 * N * S (com erro de 1,9%), esta é uma boa aproximação consideravelmente.

Outras dicas

Eu não tenho certeza dos dados envolvidos, devido à construção de pergunta / apresentação.

Assumindo que você está procurando y = f(x). Se você carregar os dados no Excel, você pode usar o SLOPE métodos e INTERCEPT sobre os intervalos de dados para derivar uma expressão da forma

y = mx+c

e, portanto, uma função linear.

Se você quer uma quadrática ou cúbica, você pode usar LINEST com uma coluna de dados em tempo quadrado / cubo etc, para dar-lhe parâmetros quadrática / cúbica, e, portanto, derivar uma função de ordem superior apropriado.

Criar um gráfico no Excel, adicionar uma linha de tendência, e optar por ter a equação exibida no gráfico.

Para esclarecer: Você tem dados tabulares abaixo do qual você quer caber para alguma função f (O, I) = t

?
        200          400         600         800         1000        1200        1400        1600        1800        2000
20000   15.627681   30.0968663  44.7592684  60.9037558  75.8267358  90.3718977  105.8749983 121.0030672 135.9191249 150.3331682
40000   31.7202111  62.3603882  97.2085204  128.8111731 156.2443206 186.6374271 218.324317  249.2699288 279.6008184 310.9970803
60000   47.0708635  92.4599437  138.874287  186.0576007 231.2181381 280.541207  322.9836878 371.3076757 413.4058622 459.6208335
80000   60.7346238  120.3216303 180.471169  241.668982  300.4283548 376.9639188 417.5231669 482.6288981 554.9740194 598.0394434
100000  76.7535915  150.7479245 227.5125656 304.3908046 382.5900043 451.6034296 526.0730786 609.0358776 679.0268121 779.6887277
120000  90.4174626  179.5511355 269.4099593 360.2934453 448.4387573 537.1406039 626.7325734 727.6132992 807.4767327 898.307638

A ásperas olhares acho que como ambas O & I são lineares. Então f é na forma t = aO + bi + c. Ligue alguns (O, I, t) e ver o que a, b, c deveria ser.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top