Post Reply 
Simulating and Fitting Data for Chemical Reactions
11-28-2019, 12:14 AM
Post: #2
RE: Simulating and Fitting Data for Chemical Reactions
Nice article. For the optimization step, I've done better that evolutionary by using a quasi-random search for the basic steps then a short grid search to finish. To be fair, I generate several (100 or so) candidate solutions using quasi-random search then keep the best few (sort of like an evolutionary method without crossover). At the next steps, I either use a random search from each point or a grid search or something problem-dependent. The I throw in a few new quasi-random point and continue.

The method works because the quasi-random points are much better distributed than random (I'll give some quick formulas below). The grid search works because at least 1 of the grid lines is less than a right angle from the gradient. Any local search is good. Sometimes one can use direct methods like Nelder-Mead or some type of interpolation. By adding new points, one hopes to be lucky and guarantees convergence.

The easiest multi-dimensional quasi-random sequence is the Richtmeyer sequence. One uses the fractional part of multiples of the square roots of primes. Sqrt(2), Sqrt(3), etc. It's quick to do these by just setting x(i)=0 updating by x(i)=Frac(x(i)+Sqrt(P(i))). Naturally one just stores the fractional parts of the irrationals and updates. (List mode)
The sequence is also called the Kronecker or Weyl sequence at times.

A slightly better (by my computations) is my modification of the Halton sequence. It's tricky to describe. I'll post it later if there's interest. It takes a lot of time on the HP50g so I use the Richtmeyer stuff instead. (On my Fortran codes on the PC, either method is fast enough.)

Unlike using pseudo- random generator (or even real random generators should such exist), quasi random generator need a bit of care. Each independent coordinate gets its own prime (or its own Halton sequence). For example with 25 parameters to be determined, one first uses the fractional parts of (2,3,...97) and call that the first measurement X_1 (I need a name). Then X_2 is X_1 + the square roots reduced mod 1. X3 is X_2+square roots reduced mod 1, until enough samples are obtained. The distribution of these quasi-random sequences is much closer to uniform than the expected value of random sequences would be.
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
RE: Simulating and Fitting Data for Chemical Reactions - ttw - 11-28-2019 12:14 AM



User(s) browsing this thread: 1 Guest(s)