Changes

Jump to navigation Jump to search
1,180 bytes added ,  18:30, 2 June 2008
no edit summary
Line 30: Line 30:  
The ParSA library documentation gives the following equation which can be used to estimate performance of an MIR run
 
The ParSA library documentation gives the following equation which can be used to estimate performance of an MIR run
   −
<math> P(\chi_n \notin Cost_{min}) \sim \left(\frac{K}{n}\right)^{\alpha} </math>
+
{|align=center
 +
|<math> P(\chi_n \notin Cost_{min}) \sim \left(\frac{K}{n}\right)^{\alpha} </math>
 +
|(1)
 +
|}
    
where ''P'' is the probability of non-convergence, <math>\chi_n</math> is a solution of a run of length ''n'', <math>Cost_{min}</math> is the minimum acceptable solution, and ''K'' and <math>\alpha</math> are problem specific parameters.  ''K'' and <math>\alpha</math> can be determined by plotting the Bayesian estimator for ''P'' versus ''n'' on a log scale and determining the slope and y-intercept.  The expression for the Bayesian estimator <math> \hat{p} </math> is given by
 
where ''P'' is the probability of non-convergence, <math>\chi_n</math> is a solution of a run of length ''n'', <math>Cost_{min}</math> is the minimum acceptable solution, and ''K'' and <math>\alpha</math> are problem specific parameters.  ''K'' and <math>\alpha</math> can be determined by plotting the Bayesian estimator for ''P'' versus ''n'' on a log scale and determining the slope and y-intercept.  The expression for the Bayesian estimator <math> \hat{p} </math> is given by
 +
 
{|align=center
 
{|align=center
 
|<math> \hat{p} = \frac{n_f + 1}{N + 2} </math>
 
|<math> \hat{p} = \frac{n_f + 1}{N + 2} </math>
 +
|(2)
 
|}
 
|}
 +
 
where <math>n_f</math> is the number of runs whos cost function value is greater than <math>Cost_{min}</math> and ''N'' is the total number of runs.
 
where <math>n_f</math> is the number of runs whos cost function value is greater than <math>Cost_{min}</math> and ''N'' is the total number of runs.
   Line 52: Line 58:     
=== Sequential Performance ===
 
=== Sequential Performance ===
 +
 +
Using the ''K'' and <math>\alpha</math> parameters determined for the ''alpha'' = 0.5 run, the number of steps that would be needed to achieve <math>50\%</math> probability of convergence for a sequential run can be determined to be on the order of <math>10^{19}</math>.  It would take a single processor 500 million years to take this number of steps!
 +
 +
=== Optimizing Run Length ===
 +
 +
The optimal run length can be determined now that the ''K'' and <math>\alpha</math> parameters are known.  Given that the the total number of steps ''T'' is given by the following expression
 +
 +
{|align=center
 +
|<math> T=Rn </math>
 +
|(3)
 +
|}
 +
 +
where ''R'' is the number of runs and ''n'' is the run length.  The probability of obtaining one successful run out of ''R'' runs is given by
 +
 +
{|align=center
 +
|<math> P_s = 1 - \left(\frac{K}{n}\right)^{R\alpha} </math>
 +
|(4)
 +
|}
 +
 +
Using the method of Lagrange multipliers, the optimal step number can be found to be
 +
 +
{|align=center
 +
|<math> n = K e </math>
 +
|(5)
 +
|}
 +
 +
and given the ''K'' parameter determined from the ''alpha'' = 0.5 run, the optimal step number can be determined to be <math> (1.44 \pm 0.65) \times 10^5 </math>.
1,359

edits

Navigation menu