This is a continuation of application Ser. No. 08/205,912 filed on Mar. 3, 1994, now abandoned. 
    
    
     FIELD OF THE INVENTION 
     This invention relates to an improved method of estimating seismic velocities for use in processing and interpreting seismic data indicating valuable characteristics of subsurface earth formations, and particularly, to a method in which prestack traveltimes are determined by a simulated annealing technique and used to recover a geologically constrained, continuous (or smooth) subsurface velocity model. 
     BACKGROUND OF THE INVENTION 
     Conventional seismic data acquisition techniques involve the use of an appropriate signal source to generate seismic energy and a set of corresponding receivers, such as geophones, spaced along or near the surface, to detect any reflected seismic signals due to seismic energy striking subsurface geological boundaries. The seismic signals are generated sequentially at each of a number of points along a seismic prospecting path while reflections are recorded at all of the points following generation of each signal. The recorded signals are then organized into gathers of traces each corresponding to a common depth point or common midpoint along the prospect path. The basic purpose of this exploration technique is to allow the signals within each gather to be combined to improve the signal to noise ratio. Due to the different path lengths involved in each source and receiver pair, corrections must be made to the individual traces within the gather to place them in alignment before stacking. These corrections are performed by a processing technique referred to as hyperbolic normal moveout (NMO), the accuracy of which depends primarily on estimated velocities of the signals passing through the earth formations. 
     Accurate determination of the velocity distribution of the subsurface is necessary for obtaining accurate images of subsurface formations because errors in velocity estimation result in errors in the alignment of these signals and thereby reduce the signal-to-noise ratio of the resulting stacked signal. Traditional seismic processing techniques, such as ray map migration, and new developments, such as amplitude versus offset (AVO) and multiparameter inversion techniques, are critically dependent upon the low-frequency velocity field. Prestack reflection traveltimes of seismic signals are required input for any algorithm attempting to map accurately the velocity distribution of the subsurface. The nonhyperbolic nature of prestack traveltime curves even in the presence of flat bedding-plane geometry has long been recognized, and further, large model-dependent oscillations can be observed, especially at large offset-to-depth ratios. Compounding the problem, lateral velocity variations and data acquisition complications, such as streamer feathering, can introduce traveltime perturbations of arbitrary, non-hyperbolic shape. Although these problems are well known, for reasons of efficiency and signal-to-noise ratio considerations, stacking velocity analyses typically are still carried out as a two-parameter hyperbolic search. 
     A recently developed strategy for determining velocity variations in a stratified earth, commonly referred to as tomography, has been used to produce enhanced subsurface images. Traveltime tomography techniques involve three steps: identifying a number of key horizons in a stacked section; determining the corresponding prestacked traveltimes; and solving for a velocity-depth model that reproduces the observed traveltimes. 
     However, tomography is not routinely practiced because of its requirement for accurate prestack reflection traveltime selection. Three different schemes are usually employed for selecting, or &#34;picking,&#34; traveltimes, each of which has certain disadvantages. One approach is to digitize prestacked traveltime data on an interactive work station. However, this is a very tedious process requiring the display and selection of thousands of seismic events. A second approach is to use stacking velocities and zero-offset times to construct a subsurface macro model. However, this technique is based essentially on a hyperbolic approximation to arrival times, and is therefore inaccurate. A third approach is to overcome the need for accurate traveltime picking by employing a coherency inversion method which does not depend on prestack time picking and is not based on curve fitting or hyperbolic approximations. The method is formulated as one of global optimization of some energy function. An optimization algorithm produces a velocity model which maximizes some measure of coherency. This measure is calculated on unstacked trace gathers in a time window along the traveltime curves which are determined by tracing rays through the model. Knowledge of zero-offset traveltimes for principal reflectors (for example, from post-stack picking) is used alternatively to update velocities using the coherency measure and the interface position using zero offset time information until an optimal solution is obtained. Since velocity updating using the coherency measure is a highly nonlinear process, it is performed using a type of Monte Carlo technique referred to as the generalized simulated annealing method for updating the velocity field. Coherency optimization by simulated annealing is described in detail in E. Landa et al., &#34;Reference Velocity Model Estimation from Prestack Waveforms: Coherency Optimization by Simulated Annealing,&#34; 54 Geophysics 984-990 (1989). However, a major disadvantage of the foregoing coherency optimization method is that it requires large computational resources to perform computations for a large number of model parameters, with the ever present risk of inaccuracy due to cycle skipping and convergence to local minima. 
     What is needed is a tomographic technique for analyzing seismic data in which prestack traveltimes are determined by a method other than manual picking, since prestack traveltimes are a required input for any algorithm attempting to map accurately the velocity distribution of a subsurface. Such a technique would enable reference velocity model estimation based upon a traveltime-based solution as a preferred alternative to coherency optimization for the reasons described above. 
     SUMMARY OF THE INVENTION 
     The foregoing problems are solved and a technical advance is achieved by a method of the present invention for optimization of a seismic velocity model. According to the method of the present invention, each unknown prestack traveltime curve may be expressed as the sum of a best fit hyperbola and a non-hyperbolic perturbation term. In a departure from the art, after the best fit hyperbola has been determined and used to correct the traces for normal moveout (NMO), the non-hyperbolic perturbation term is solved for using a simulated annealing technique. In a further departure from the art, the problem of topologically representing a subsurface having complicated horizon geometries is bypassed by assuming a smooth and continuous, rather than a layered and discontinuous, velocity model. This assumption facilitates raytracing and in most cases, results in a model that more accurately represents the velocity function. Error minimization during model updates is achieved by solving a linear system of equations subject to a set of constraint equations. 
     In a preferred implementation, seismic events are selected and normal incidence traveltimes T 0L  (x) and stacking velocities V stL  (x) are determined from acquired seismic data for the selected seismic events. For each selected event, correction for NMO is performed using a best-fit hyperbola. The residual NMO is determined using a simulated annealing technique, which is an optimization method in which a multi-parameter model space is sampled randomly at different points. Simulated annealing is performed independently on every seismic event and every CDP gather. 
     The true prestack traveltimes T L  (x, h) for each event are defined as the sum of the best-fit hyperbola and a perturbation term determined by simulated annealing. An initial velocity model is constructed on the assumption that the subsurface horizon being modeled is smooth and continuous. Ray map migration is performed to convert the T 0L  (x) normal incidence traveltime to depth. Subsequently, ray tracing is used to calculate model traveltimes Tcal(x, h). The model traveltimes are compared with the true prestack traveltimes and if the two are sufficiently close, the method is complete, because the model is sufficiently accurate. Otherwise, the velocity model is updated according to a set of linear equations subject to a set of constraints so that the smooth velocity model mimics the observed layers on the seismic section. As a result, the method of the present invention takes into account the idea that prestack traveltime determination is a local, ensemble-based energy optimization problem that can be efficiently solved using a modified simulated annealing technique. 
     A technical advantage achieved with the present invention is that it can be automated, resulting in highly accurate model with a limited amount of manual effort. 
     Another technical advantage achieved with the present invention is that, because the velocity is not solved for one layer at a time (layer stripping), but globally, deeper data is allowed to constrain the solution at shallower parts of the model, so that propagation and magnification of error commonly associated with layer stripping is bypassed. 
     A further technical advantage achieved with the invention is that it is capable of constraining the solution in areas of the model where ray coverage is poor by using information based on the geometry of the reflectors themselves recovered from the seismic section. 
     A further technical advantage achieved with the invention is that it significantly decreases the amount of time necessary to develop an accurate model. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a cross-sectional view of a multiple layer earth model illustrating collection of seismic data by conventional common depth point (CDP) or common midpoint (CMP) prospecting. 
     FIG. 2 is a schematic view of an x-t shot record produced by generating seismic energy into the into the earth model of FIG. 1 for a particular layer. 
     FIG. 3a illustrates a synthetic common depth point (CDP) record of a single seismic event. 
     FIG. 3b illustrates the seismic event of FIG. 3a after correction for normal moveout (NMO) using prior art techniques. 
     FIG. 3c illustrates the seismic event of FIG. 3a after correction for residual NMO using a simulated annealing technique of the present invention. 
     FIG. 4 is a flow chart illustrating a method of the present invention for optimizing a reference seismic velocity model used to determine velocity variations in a stratified subterranean structure. 
     FIG. 5 illustrates a sample stacked section from a marine data set in which nine seismic events of variable signal-to-noise ratio are identified. 
     FIG. 6 illustrates the nine prestack seismic events of FIG. 5 from a single CDP gather after correction for NMO, with each event occupying a 100 millisecond window. 
     FIG. 7 illustrates the seismic events shown in FIG. 6 after normalized cross correlations with the stacked trace of the particular CDP gather. 
     FIG. 8 illustrates the seismic events shown in FIG. 6 after correction for NMO using prestack traveltimes determined using the simulated annealing technique of the present invention. 
     FIG. 9 illustrates a hyperbolic event used for testing three different objective functions. 
     FIGS. 10a-10c illustrate semblance, power stack and weighted power stack, respectively, as a function of T 0  and V, which parameters specify the hyperbolic event of FIG. 9. 
     FIG. 11 illustrates two cost functions with different topographies in which location of the minimum is achieved using the simulated annealing technique of the present invention. 
     FIG. 12 is a flowchart of a simulated annealing process of the present invention. 
     FIGS. 13a and 13b illustrate time-shifting of a non-hyperbolic seismic event based on a best fit hyperbolic moveout. FIG. 13b also shows the window over which the search for the nonhyperbolic component of the event is carried out. 
     FIG. 14 illustrates a unit vector field sT which is parallel to subsurface layers. 
     FIG. 15 illustrates two domains Ω 1  and Ω 2  of the subsurface layers shown in FIG. 14. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     FIG. 1 is a cross-sectional view of a multiple layer earth model 10 illustrating the collection of seismic data by conventional common depth point (CDP) or common midpoint (CMP) prospecting. During data gathering, sources S1, S2, . . . Sn are activated, typically in sequence, to generate descending acoustic waves which partially reflect off the interface (I) between each of the earth layers L1, L2, . . . Ln. The sources S1-Sn produce ascending reflection signals which are received by corresponding receivers R1, R2, . . . Rn, and recorded. 
     FIG. 2 illustrates schematically the x-t seismic record produced by generating seismic energy into the earth model 10 for the layer L1. When a number of traces 12 are ordered for a common depth point (CDP) 14 (FIG. 1) according to the displacement (offset (h)) of the corresponding receiver to source, and are gathered, i.e., displayed next to each other, a characteristic dipping shape in the wavelets in the traces is observed. This is an artifact which occurs because the CDP traces 12 recorded at longer source-to-receiver offsets correspond to longer traveltimes for the seismic energy. Such a systematic shift to longer reflection times (t) due to increasing source-receiver offset is referred to as normal moveout or &#34;NMO&#34;. It is well known that NMO causes errors in determining both compressional and shear wave velocities which, if left uncorrected, will cause stacked amplitudes of seismic events to be misaligned, thereby masking the true characteristics of the reflecting interfaces (I). 
     Using conventional velocity stacking analysis, a hyperbola 16 may be fitted to the wavelets, or signals, illustrated in FIG. 2, for the seismic event at the CDP 14. It is understood that the hyperbola 16 is an approximation only, the true seismic event being nonhyperbolic. 
     Correction for NMO is performed utilizing conventional processing techniques whereby the traces 12 are compressed in time to compensate for the varying distance traveled by the energy from source to receiver. Ideally, an NMO correction method will flatten the seismic event for each layer represented by the hyperbola 16, along the time (t) axis to a value representing the zero-offset traveltime (T0). 
     As illustrated in FIGS. 3a-3b, NMO correction methods in practice tend to leave some residual moveout in the data, due to the non-hyperbolic nature of the seismic event. FIG. 3a shows a synthetic CDP record of a single seismic event. The seismic event is specified by a 25 Hertz Ricker wavelet and a nonhyperbolic traveltime (t) curve 300. The curve 300 represents the sum of a true hyperbola and a low wave number, low amplitude perturbation term. FIG. 3b shows a curve 302 representing correction of the seismic event for NMO using conventional techniques, leaving some residual moveout in the data. Specifically, a large residual moveout with a root mean square (rms) value of about 14 ms is still present, because of the nonhyperbolic nature of the seismic event. Uncorrected, this residual moveout will deteriorate the stacked trace when the traces are subsequently stacked to increase the signal-to-noise ratio. Furthermore, the non-hyperbolic component of the signal carries valuable seismic velocity information that unless promptly recovered will remain unutilized. 
     FIG. 3c illustrates a curve 304 in which the residual NMO for the seismic event has been corrected, utilizing a simulated annealing technique of the present invention, discussed in detail below. The result is a curve 304 which is substantially flat along the true zero offset traveltime (T 0 ) for the seismic event. As will be described, the invention accurately determines prestack traveltimes of selected seismic events by recognizing that the true prestack traveltime for each event is the sum of the best fit hyperbola solved by a velocity stacking analysis, and a perturbation term solved by a simulated annealing technique. The determination of prestack traveltimes in this fashion is easily automated. Specifically, the invention comprises an iterative method for optimizing a reference seismic velocity model in which prestack traveltimes of seismic events are determined using simulated annealing, described in detail below. 
     FIG. 4 is a flow chart illustrating a method of the present invention for optimizing a reference seismic velocity model that best describes the velocity variations in the subsurface. 
     The method of the present invention commences at step 400 with the acquisition of seismic data through the utilization of well known seismic exploration techniques for generating compressional energy into a subsurface formation and recording reflected waves from subsurface reflecting interfaces. The data is conventionally recorded as seismograms depicting seismic traces, representing the amplitude of seismic reflections as a function of time (t) and distance (x) along a path of exploration in the x direction of the earth&#39;s surface. The traces are typically gathered into an x-t array, referred to as a shot record, and subsequently, the data are regathered in common midpoint gathers and stacked. The normal incidence traveltimes T OL  (x) are picked from the stacked section and the associated stacking velocities V stL  (x) are determined as a function of CDP surface location (x) for a number of layers L. T 0L  (x) can be easily obtained by digitizing seismic events (also referred to as &#34;horizons&#34;) of interest on a stacked section. V stL  (x) is determined using a conventional velocity analysis in a window centered around T 0L  (x). 
     The purpose of the velocity analysis of step 400 is to refine the sampling of the stacking velocity field both in space and in time in order to maximize the signal-to-noise ratio of the samples. As with any velocity analysis technique, it involves an interpretive step of choosing among several coherence peaks. Preferably, the selected seismic events on the stacked section will be those with the best signal-to-noise ratio, which makes picking the best stacking velocity an easy task. 
     FIG. 5 illustrates an example stacked section 500 from a marine data set in which nine seismic events 502-518 of variable signal-to-noise ratio have been identified. The events 502-518 were digitized and the stacking velocities (V stL  (x)) were determined using standard seismic processing software. 
     FIG. 6 illustrates a section 600 representing NMO corrected seismic events for a single CDP gather from the section 500 of FIG. 5. Shown are 100 ms windows 602-618 centered around the best fit hyperbolas for all nine events 502-518 (FIG. 5). To improve the visual perception, the windows 602-618 are stacked on top of each other proceeding from the shallowest event in the window 602 to the deepest event in the window 618. If the events 502-518 were truly hyperbolic, and the hyperbolas were accurately recovered by conventional velocity analysis, then each event would appear as a flat line at the center of the corresponding window 602-618. The section 600 shows some residual moveout, most prominent in windows 606 and 608. Several reasons account for the residual moveout, which include the nonhyperbolic nature of the prestack traveltimes at large offset-to-depth ratios, and the unequal amplitude level of the events across offset. For events with decreasing amplitude with offset, the near traces enter the semblance calculation (discussed in detail below) with a higher weight than the far traces, and as a result most attention is given to aligning the near offsets rather than the far offsets. The event in window 606, for example, was found in some CDPs to exceed 30 ms of the residual moveout at the farthest offset. 
     FIG. 7 illustrates a section 700 having normalized crosscorrelations between the prestack trace windows 602-618 of FIG. 6 and the corresponding window of the stacked trace at the same CDP location. This is performed to equalize the amplitude level of each event across all offsets, and to obtain a pseudo-zero phase wavelet. Zero-phase wavelets help the convergence of the simulated annealing algorithm because they enhance the relief of the topography of the objective function (FIG. 10a, 10b, 10c). The events illustrated in FIG. 7 constitute the input for the residual NMO calculation using simulated annealing, discussed in detail below. 
     FIG. 8 illustrates a section 800 in which the crosscorrelation procedure discussed above is repeated, using the prestack traveltimes determined from the simulated annealing process, rather than from the hyperbolic traveltime curves. The simulated annealing process is discussed in detail below. In FIG. 8, the extent to which the true traveltimes are accurately determined is reflected upon the alignment of the crosscorrelation peak of each event at the center of the corresponding window 802-818. Simulated annealing recovers the underlying smooth traveltime structure well for all of the events, despite the missing traces and the strong interference in some of the events, as in windows 808, 812 and 816. 
     Referring again to FIG. 4, once the seismic data input parameters T 0L  (s) and V stL  (x) have been determined in step 400, the velocity model optimization method of the invention proceeds to step 402. In step 402, a residual NM0 calculation is performed. Specifically, the true prestack traveltime curve (T L  (x, h)) for seismic event L at a fixed CDP location x as a function of offset distance h is determined by summing the best fit hyperbola from the conventional velocity analysis with a perturbation term, i.e.,: ##EQU1## where ΔT L  (x, h) is the perturbation term. The hyperbolic term in the above equation is known based on the input parameters of 2-way normal incidence traveltime T 0L  (x) and stacking velocity V stL  (x). The perturbation term, i.e., ΔT L  (x, h), constitutes the nonhyperbolic component to be recovered from the data using the simulated annealing method of the present invention. 
     The curve ΔT L  (x, h) as a function of offset h can take any arbitrary shape, depending on the velocity distribution of the overlying sediments. To accommodate this condition by expanding ΔT L  (x, h) in the interval (h min ,h max ), where h min  is defined as the minimum offset distance between the seismic source and any of the geophones and h max  is defined as the maximum such distance, in terms of cubic B-spline basis functions F i  (h): ##EQU2## where M+3 corresponds to the total number of basis functions used and c iL  (x) are the spline coefficients. Recovery of the nonhyperbolic component in the data ΔT L  (x, h) involves estimating the values of the spline coefficients C iL  (x), for i=1 to M+3. The number of spline coefficients may be adjusted as a function of the CDP location x and vertical traveltime T 0  to reflect changes in the signal-to-noise ratio of the data. 
     In order to automate the procedure of determining ΔTL(x, h), an energy function that can be measured along any proposed curve ΔT L  (x, h) must be defined so that a computer can perturb the curve ΔT L  (x, h) until the energy function is optimized (i.e., maximized or minimized). A proper choice for such energy function is critical for the success of the method. Accordingly, rather than using energy functions of semblance and power stack, which functions are commonly used in geophysics, a time-weighted power stack of the stacked trace with the prestacked trace is used. The normalized crosscorrelation approximately changes the waveform of the prestack seismic event the traveltime of which is being measured to zero phase and to unit amplitude at all offsets (FIG. 7). The time-weighted power stack of a zero phase normalized wavelet is an energy function the relief of which is accentuated and therefore its maximum or minimum is better defined and easier to detect. FIGS. 10a-10c are contour plots of semblance, power stack and weighted power stack, respectively, as a function of T 0  and V, which are the two parameters that define the hyperbolic event illustrated in FIG. 9. 
     To maximize the time-weighted power stack of the data (FIG. 10c) along an arbitrary curve defined by M+3 spline coefficients would require a search for the maximum in (M+3)-dimensional space. Therefore, rather than carrying out a direct search for the maximum by evaluating the weighted power stack on a grid of points in this multidimensional space, an optimization method herein referred to as &#34;simulated annealing&#34; is used. Simulated annealing allows for a computationally efficient search, while at the same time achieving convergence of the solution to the desired global maximum rather than to a less desirable local maximum. 
     Simulated annealing is an optimization method in which the multiparameter model space is sampled randomly. Unlike iterative approaches, simulated annealing accepts points in model space that degrade, rather than improve, the solution. Assuming that the function to be optimized has a minimum, transitions from point i to point j such that ΔE ij  =E(j)-E(i)&lt;0 are accepted with probability one. Transitions with ΔE ij  &gt;0 are accepted only if G(ΔE ij )&lt;P r , where G(ΔE ij ) is some specified function of ΔE ij  and P r  is a random number drawn from a uniform distribution in the interval [0,1]. 
     The original G(ΔE ij ) proposed by Metropolis et al. in their article &#34;Equation of State Calculations by Fast Computing Machines,&#34; 21 J. Chemistry &amp; Physics 1087-92 (1953), is of the form G(ΔE ij )+exp(-ΔE ij  /p k ), where p k  is a constant that is gradually reduced during the search for the global optimum. Analogous to the crystallization of a heated metal (a process commonly referred to as &#34;annealing&#34;), p k  is often called the &#34;temperature parameter&#34; and the way it is changed is referred to as the &#34;cooling schedule&#34;. 
     A more general function G(ΔE ij ) was introduced by Bohachevsky et al. in &#34;Generalized Simulated Annealing for Function Optimization,&#34; 28 Technometrics 209-17 (1986). Transitions that deteriorate the solution, i.e., ΔE ij  &gt;0, are accepted with the probability ##EQU3## where E opt  is an estimate of the global minimum of the objective function. The algorithm is run at a constant p and the extra denominator term p(E(i)-E opt ) ensures that the probability of accepting deteriorations tends to zero as the algorithm approaches the global minimum. 
     Unfortunately, the acceptance criterion of Bohachevsky et al. does not guarantee convergence. Its form is such that once a deterioration ΔE has been accepted, another deterioration of equal amount can be accepted with a higher probability than the previous one. In other words, the solution tends to accelerate away from the global minimum, an undesirable result. In addition, the approach depends on an accurate estimate E opt  of the global minimum, which is not always available. 
     Successful implementation of simulated annealing is problem specific and requires experimentation and experience. Because the objective function for the problem at hand has local optima that are on the same order of magnitude as the global optimum (primarily as the result of interference of other forms of coherent seismic energy, such as multiply reflected energy, shear waves, ground roll, etc.), none of the above definitions for G(ΔEij)) yields satisfactory results. 
     Therefore, in a preferred embodiment, an acceptance criterion similar to that discussed above is used which does not depend on the current solution E(i) and which avoids a predetermination of E opt . Transitions from point i to point j in model space that deteriorate the solution are accepted with a probability ##EQU4## where p k  =f(E max  -E min ) and E min  and E max  are the minimum and maximum values, respectively, of the energy function encountered so far since the beginning of the cooling process. The difference E max  -E min  is the maximum relief of the objective function measured from the deepest known valley to the highest known peak. Thus, the value E max  -E min , rather than the value E opt , is used to run the algorithm with varying temperature that reflects changes in E max  -E min  during cooling. The function used for p k , then, is of the form P k  =α k  (E max  -E min ) wherein α is a constant less than one. 
     Unlike other cooling schedules, in the proposed algorithm, the temperature does not decrease monotonically. Instead, any time a new value of E min  or E max  is found, the temperature is temporarily increased. This increase can be regarded as a scale adjustment, because for a fixed k, the ease with which the solution exits the valley of E min  remains relatively constant, independent of the particular depth of the point E min . An additional advantage of the new criterion is that no evaluation of the multiparameter cost function E at different points prior to the beginning of the cooling schedule is necessary for the average properties to be measured and an initial value of the temperature to be determined. 
     As an example, consider the one-dimensional case presented in FIG. 11. Curve A has an overall concave up shape with a well defined global minimum G A  and a minor secondary local minimum L A . Curve B has a sinusoidal overall shape with a global minimum G B  and a distant major local minimum L B . Other local minima of secondary importance are also present in both curves. Curves A and B are defined analytically as the sum of a few sinusoids of different amplitude and phase. To illustrate the importance of the topography of the cost function on the performance of the simulated annealing algorithm, the same experiment of locating the global minimum was repeated one thousand (1000) times for each curve with different starting points x o  but identical cooling schedules. The starting points for each curve are uniformly distributed in the x direction in the domain of definition of the two curves. Also, it would take an average of twenty (20) steps to cover the full length in x, assuming movement only in one direction. As shown in FIG. 11, the solution based on the Metropolis et al. criterion converged to point G A  991 times out of 1000 runs, but to G B  only 583 times, the remainder being trapped in L B . By comparison, repeating the same experiment using the acceptance criterion and simulated annealing technique of the present invention, the solution converged to G A  1000 times and to G B  996 times out of 1000 runs. 
     In FIG. 12, execution of the simulated annealing algorithm begins in step 1200, in which the initial temperature and the number of cooling steps are set to predetermined values The number of cooling steps is set to about 500 and has been proved adequate by experimentation. The initial temperature value is any arbitrary positive constant. It is set to a fraction of the cost function E the first time E is calculated. In step 1201, the variable k is set equal to 1. In step 1202, the variable i is set equal to 1. In step 1204, a new value for the coefficient c i , is obtained by c&#39; i  =c i  +δc i . In step 1206, a new energy coefficient E(c&#39; i ) is calculated as a weighted power stack along a traveltime curve that accounts for the new value of coefficient c i . In step 1208, a determination is made whether E(c&#39; i ) is greater than E(c i ). If not, execution proceeds to step 1210, in which a determination is made whether the acceptance criterion is satisfied. If not, execution proceeds to step 1212, and c i  remains unchanged. 
     If in step 1208, E(c&#39; i ) is greater than E(c i ) or if in step 1210, the acceptance criterion is satisfied, execution proceeds to step 1214. In step 1214, c i  is set equal to c&#39; i . In step 1216, the variable i is incremented by 1. In step 1218, a determination is made whether i is greater than the variable M+3. If not, execution returns to step 1204. Otherwise, execution proceeds to step 1220. In step 1220, the variable k is incremented by 1. In step 1222, a determination is made whether the variable k is greater than the number of cooling steps (step 1200). If so, execution of the algorithm is complete in step 1224. Otherwise, execution proceeds to step 1224, in which the temperature is reset to a fraction of what it is, and then returns to step 1202. 
     As illustrated in FIGS. 13a and 13b, to improve performance, the solution is bounded by a window ±W(h) centered around the best fit hyperbola from the velocity analysis step. A hyperbolic window is usually used; however, other window shapes could also be used. The moveout at the far offset can be easily specified after visually inspecting NMO-corrected records. Because of the use of a nonflat window, the domain of definition [-Δc i , +Δc i  ] is different for each spline coefficient c i  and v i  such that: ##EQU5## where T 0  (h) are the spline basis functions. 
     To speed convergence, the trial step size δc i , used for changing the spline coefficient c i  to a new value, initially averaging Δc i  /2, is decreased as temperature is lowered. This biased generation of transitions is based on the fact that as the algorithm converges, large length transitions are more likely to be rejected, thus increasing the computational cost. In the preferred implementation, the step size δc i  at each temperature step k is adjusted so that its average value becomes: ##EQU6## where β is a constant less than one. 
     Using the method of simulated annealing, convergence to an event other than the desired one, such as a multiple or an adjacent primary, is always a small but real possibility. Unlike conventional methods, whereby the tracked traveltime trajectory of an event in one ensemble is used as a guideline for the traveltime trajectory search in the adjacent ensemble, simulated annealing treats the event at each ensemble independently. As a result, mispicked events are not spatially correlated and can be easily eliminated in a single step. 
     Recall that the traveltime T L  (x, h) of an event L at CDP x and offset h is given by: ##EQU7## where T 0L  and V stL  are input parameters and ΔT L  (x, h) is the traveltime perturbation determined by simulated annealing. Each value of T L  (x, h) corresponds to a point and the totality of points for a single seismic horizon (L=cnst) can be fit by a two-dimensional surface S L  (X, h) which should meet similar smoothness criteria as the individual curves T L  (x=cnst, h). Mispicked events will lie outside the smooth surface S L  (x, h) and can be identified as follows. 
     The root mean square misfit error between the measured T L  (x, h) and the smooth two-dimensional surface S L  (x, h) at fixed CDP location x may be defined as: ##EQU8## and the root mean square error between those two functions at all offsets and all CDPs is: ##EQU9## where Nh is the number of offsets and Nx is the total number of CDPs. Mispicked events x me  are defined as those with a high misfit error: 
     
         Err.sub.L (x.sub.me)≧γErr.sub.L , 
    
     where γ is a real number. Ignoring points T L  (x me , h) a new surface S&#39; L  (x, h) is refit and S&#39; L  (X me , h) is substituted for T L  (x me ,h). In practice, this process is repeated, with one point being rejected at a time. This procedure is repeated independently for every interface L. Typically, the number of mispicked events does not exceed three percent, but the dropped events T L  (x me ,h) have a dramatic effect on the standard deviation of the surface misfit Err L  . 
     Referring again to FIG. 4, after T L  (x, h) have been determined for each event by simulated annealing, the method proceeds to step 404, in which an initial seismic velocity model V(x,z) is constructed. 
     In step 406, model traveltimes T cal  (x, h) are determined by map migrating the picked events on the seismic section from time to depth and then ray tracing the model in a conventional fashion. 
     The calculated traveltimes T cal  (x, h) from step 406 are compared with the observed traveltimes T 0L  (x, h) from step 402. In step 408, a determination is made whether a error norm is satisfied, i.e., whether |T 0L  -T cal  | is less than a given number. If so, then the model provides an accurate representation of the subsurface and execution ends in step 410. Otherwise, execution proceeds to step 412, in which the velocity model is updated. It should be understood that ray tracing is possible because in its propagation, a ray follows certain physical laws that determine its change in direction. In turn, these physical laws are dependent upon the distribution of the velocity in a subsurface. This means that at any given point, it must be known where the ray is in the model, what the next interface in its path is, and what the velocity of the layer on the other side of the interface is. The above requirements introduce a need for a topological, i.e., relative position, representation of layers in the model. 
     In routine geophysical practice, the seismic velocity model is represented by layers of constant vertical and constant or smoothly varying lateral velocity. The layer boundaries are usually chosen to correspond to the top of major geologic rock formations as interpreted from well logs or to major events identified on the seismic section. In most cases, these layers are present only over part of the section. They typically truncate against faults, or are intruded by salt, or they have been partially eroded away from previous exposure at the earth&#39;s surface (unconformities), or they thin out laterally (pinch out), or any combination of the above. The degree of complexity of a subsurface model is practically unlimited. 
     Given that the potential structural complexity of the subsurface is virtually unlimited, such representation is not always easy. Furthermore, tracing rays in a complicated model can become computationally prohibitively expensive. Therefore, according to the method of the present invention, a smooth, rather than a discontinuous, velocity model is constructed in step 404 and the sense of layering is preserved via geometric constraints used when solving for the velocity updates (step 412), as described below. This velocity field may be described in terms of two-dimensional spline coefficients: ##EQU10## where c ij  are the spline coefficients and A i  and B j  are basis functions in the x and y directions, respectively. 
     In estimating the velocity model, an iterative scheme is used, whereby starting with an initial guess velocity model (step 402), the model is incrementally changed so that with each iteration, the predicted traveltimes better match the observed traveltimes (step 408). Mathematically this is achieved by solving a system of linear equations comprising two subsystems, one that seeks to minimize the residual error and another that implements the constraints, i.e., 
     
         Gδc=T.sub.obs -T.sub.cal                             (2) 
    
     
         Fδc=0                                                (3) 
    
     where δc=δc ij  is the amount of change in the two-dimensional matrix of spline coefficients that describes the velocity model, T 0L  -T cal  is the difference between the real and the calculated traveltimes at the current iteration that is sought to be minimized in a least squares sense, and G is the Frechet derivative matrix ##EQU11## that expresses the change in the observed traveltimes corresponding to a change in the model parameters. The elements of the matrix G are calculated simultaneously with T cal  during raytracing. 
     Referring to FIG. 14 the calculation of the elements of matrix F will be explained. After map migration of the seismic horizons from time to depth is completed, a unit vector field s T  is defined that parallels the layers and constitutes a continuous representation of the layering at the current iteration. At layer boundaries, the direction of s T  is defined as the tangent to the boundaries. Between layer boundaries, the x and y components of s T  are obtained by linear interpolation in the depth direction. s N  is defined as a unit vector normal to s T . 
     As shown in FIG. 15, the subsurface model is further subdivided into two domains, Ω 1 , which is comprised of small bands bracketing the layer boundaries and the discontinuities in depth, and Ω 2 , which is comprised of the rest of the model. The velocity is required to be updated in such a way that the velocity field remains fairly constant in the direction perpendicular to the layering in Ω 2 , whereas it undergoes maximum changes in Ω 1 . In essence, the two-dimensional velocity update field is required to resemble a surface that has different flexural rigidity between interfaces than in the vicinity of the interfaces. In mathematical terms, the gradient of the velocity updates is required to be parallel to the layering in Ω 2  and perpendicular to the layering in Ω 1 , which is achieved by minimizing: ##EQU12## 
     Minimization of F 1  provides the necessary geologic constraints that maintain the sense of layering while using a smooth rather than a layered model. The coefficients ω 1  and ω 2  are weights expressing the relative importance of the two terms in the sum. 
     It is well known in the geophysical literature that certain sinusoidal components of the velocity field cannot be resolved from the data. For example, a sinusoidal perturbation could be added laterally to the velocity of a layer without noticeable effect on the observed traveltimes. Since the data are not sensitive to such perturbations, the solution will be unstable unless properly damped. Suppression of these components of the velocity field is achieved by requiring that the curvature of the wave field parallel to the layering is minimized, i.e., ##EQU13## 
     Substitution of equation (1) into equations (4) and (5) results in the subsystem of linear equations described by equation (3). The combined solution of equations (2) and (3) is given by: 
     
         δc=[G.sup.T G+εF.sup.T F].sup.-1 G.sup.T (T.sub.obs -T.sub.cal),                                              (6) 
    
     which yields the updates to the spline coefficients that describe the velocity function. In equation (6), the superscript T denotes matrix transpose and the weight ε expresses the relative importance of the data versus the constraints. 
     Once the velocity model has been updated in the manner described, execution returns to step 406, in which map migration and ray tracing is repeated for the updated model. This process is repeated until a determination is made in step 408 that the error norm has been satisfied, indicating that a satisfactory model has been achieved and execution ceases. 
     It is understood that the present invention can take many forms and embodiments. The embodiments shown herein are intended to illustrate, rather than to limit the invention, it being appreciated that variations may be made without departing from the spirit or the scope of the invention. For example, a different objective function other than weighted power stack could be used in conjunction with simulated annealing, or other geologic constraints other than those mentioned above could be introduced to constrain and stabilize the solution. 
     Although illustrative embodiments of the invention have been shown and described, a wide range of modification, change and substitution is intended in the foregoing disclosure and in some instances, some features of the present invention may be employed without a corresponding use of the other features. Accordingly, it is appropriate that the appended claims be construed broadly and in a manner consistent with the scope of the invention.
A method of determining a reference seismic velocity model that includes lateral and vertical variations in a stratified subterranean medium is disclosed. The invention recognizes that each unknown prestack traveltime curve may be expressed as the sum of a best fit hyperbola and a non-hyperbolic perturbation term. After the best fit hyperbola has been determined and used to correct the traces for normal moveout (NMO), the non-hyperbolic perturbation term is solved for using a simulated annealing technique. In addition, the problem of topologically representing a subsurface having complicated horizon geometries is bypassed by assuming a smooth and continuous, rather than a layered and discontinuous, velocity model. This assumption facilitates raytracing and in most cases, results in a model that more accurately represents the velocity function. Error minimization during model updates is achieved by solving a linear system of equations subject to a set of constraint equations.