Professional Documents
Culture Documents
Second Order Design of Geodetic Networks by The Simulated Annealing Method
Second Order Design of Geodetic Networks by The Simulated Annealing Method
Abstract: The problem of determining the required precision in observations in order to obtain a desired precision in final parameters,
classically known as the second order design problem, is revisited in this paper and proposed to be solved by the simulated annealing method.
An example and a flexible implementation in MATLAB are given. DOI: 10.1061/(ASCE)SU.1943-5428.0000053. © 2011 American Society
of Civil Engineers.
CE Database subject headings: Geodetic surveys; Design; Optimization; Networks.
Author keywords: Geodetic surveys; Design; Optimization.
3. Amplitude reduction in the thermal agitation following some between matrices (Aja-Fernández et al. 2009)—so that the global
cooling scheme. With the decrease of temperature—the course optimization problem is then stated as the problem of finding
of iterations in our analogy—displacements (2) suffer a gra- weights included in P, Eq. (7), for which the following global mini-
dual decrease in amplitude σ (geometrical decay is one of mum is attained:
the most common choices) sffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
XX
σ ¼ β j σ0 ð4Þ min kQx QxE kF ¼ min ðQxij QxEij Þ2 ð8Þ
i j
with cooling factor β (the closer to unity the slower the cool-
ing) and iteration j. Some constraints can be put on the weights to be obtained, in-
4. Accept/reject new solution. The solution taken as the basis for cluding at least the need for all of them to be positive. The solution
the next iteration is to Eq. (8) always exists, but obviously the attained degree of
approximation to the desired matrix will depend on the particular
x þ Δx if f ðx þ ΔxÞ < f ðxÞ problem.
x þ Δx otherwise with probability p ð5Þ In the appendix, a MATLAB implementation of the algorithm
x otherwise for the following example is provided along with the corresponding
data matrices. The code is easily adaptable to the reader’s particular
Eq. (5) emulates acceptance criteria observed in nature. The SOD applications.
acceptance of states of lower energy (lower f ) is undoubtedly
reasonable; however, it has also been observed that in some
rare cases (i.e., with low probability p) the material occupies Application
temporarily a state of somewhat higher energy in the search for
still lower energy levels. This observed feature seems to be The preliminary design of a planimetric network for deformation
important to prevent the algorithm from falling into local monitoring is displayed in Fig. 1. Distance and angle observations
optima. are to be done among the designed eight points: three in a stable
5. Go to step 2 and consider again thermal agitation, cooling, and area (with their coordinates held fixed) and five test points in the
acceptance criteria. Stop the algorithm when the finishing possibly affected area. The coordinate system has been selected so
criterion is verified: e.g., when the displacement amplitude
is below a desired value.
If the defined cooling process is slow enough, then the algorithm
output is the global minimum of function f within the search
domain D, i.e., the solution to the posed Eq. (1). A necessary
(though not sufficient) condition for global optimum is that succes-
sive executions of the algorithm provide the same result. For more
detailed information on the simulated annealing method, refer to
more specific sources in the literature, e.g., van Laaarhoven (1987)
and Pardalos and Romeijn (2002).
Proposed Algorithm
problem. Therefore, the only remaining question is the needed pre- Angle 9 0.0050 0.0050 Distance 9 20,000 75,014
cision in observables (or equivalently, their weights) so as to attain
Angle 10 0.0050 0.0050 Distance 10 20,000 44,926
some desired degree of precision in the final parameters, which
Angle 11 0.0050 0.0050 Distance 11 20,000 72,095
constitutes the SOD.
As the deformation direction is parallel to the y-axis, let us as- Angle 12 0.0050 0.0050 Distance 12 20,000 66,137
sume a desired final precision of 0.003 m in y-coordinates (preci- Angle 13 0.0050 0.0050 Distance 13 20,000 62,353
sion requirements for x-coordinates are not important in this Angle 14 0.0050 0.0050 Distance 14 20,000 66,453
application). Because of the geometry of the problem, it may seem Angle 15 0.0050 0.0050 Distance 15 20,000 88,064
reasonable to try to attain the desired degree of precision by modi-
fying only distance weights, since angles have less controllability
than distances in the y-direction. The available MATLAB imple- Table 1 displays y-coordinate uncertainties for both the initial
mentation permits one to select both the particular weights to be design and the solution after the SOD as compared to the desired
modified and the particular elements of the covariance matrix that values. Corresponding weights are shown in Table 2.
are desired to be obtained. In this example the objective is to attain Surprisingly at first sight, it can be observed that by repeated
σ2y1 ≈ σ2y2 ≈ σ2y3 ≈ σ2y4 ≈ σ2y5 ≈ ð0:003Þ2 m2 by computing the execution of the SOD MATLAB code one obtains different sets
necessary weights of the 15 distance observations. The correspond-
of weights that differ substantially among them (and from those
ing objective function [Eq. (8)] reads now
displayed in Table 2). They all provide, however, very similar
rffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
X
min ðσ2yi 0:0032 Þ2 ð9Þ
i
The starting point for the global optimization process is the ini-
tial coarse weight design (which is not critical), i.e., 0.005 as the
weight for all angles and 20,000 as the weight for all distances. The
algorithm starts with an initial amplitude that is two times the initial
weight (σ0 ¼ 2 × 20;000 ¼ 40;000 for distances) so that it can
comfortably explore a wide range of weights. No limitations are
set for the weight search other than the requirement for weights
to be positive. The β cooling factor in Eq. (4) is taken as
0.9999, which provides a sufficient slow cooling process, and
the low probability p in Eq. (5) is taken as 0.001. The algorithm
stops when the displacement amplitude σ computed in Eq. (4) is
below 0.2 times the initial weight, which for the present cases im-
plies some 23,000 iterations. The optimum obtained has an objec-
tive function value [Eq. (9)] of 2:6493 × 106 , a number that serves
for quantifying the attained degree of approximation to the desired
solution and comparing different solutions obtained in different
trials, always bearing in mind that for the present problem (i.e., Fig. 2. Symbolic representation of Pareto frontier for an assumed
at the network design stage) uncertainties of some 2.8 mm are two-variable function
formally equivalent to an uncertainty of 3.0 mm so that the search
for a higher degree of approximation is virtually of no use.
Table 3. Results for Variables to Optimize with 60,000 as the Weight for
Table 1. Results for Variables to Optimize All Distances
Variable to Initial value Value after SOD Objective value Variable to Initial value Value after SOD Objective value
optimize (m) (m) (m) optimize (m) (m) (m)
σy1 0.0048 0.0027 0.0030 σy1 0.0048 0.0029 0.0030
σy2 0.0047 0.0029 0.0030 σy2 0.0047 0.0029 0.0030
σy3 0.0048 0.0029 0.0030 σy3 0.0048 0.0030 0.0030
σy4 0.0048 0.0028 0.0030 σy4 0.0048 0.0029 0.0030
σy5 0.0048 0.0028 0.0030 σy5 0.0048 0.0031 0.0030
tional external criteria are then needed for the user to characterize
their desired final solution. Appendix. MATLAB Source Code
In this case, let us resign ourselves to computing only a single,
unique weight for all distances (note that the code could easily be A MATLAB source code implementing the proposed algorithm for
adapted to compute this simplified problem). The results in Table 2, the SOD problem is provided. It starts with a call to A.txt and p.txt
as well as repeated executions, seem to suggest a possible mean files, containing, respectively, the design matrix and an initial
value of 60,000. With this value for all distance weights one obtains coarse estimation of observation weights, which are listed in Table 4
the results for the variables to optimize displayed in Table 3. They (files A.txt and p.txt may not contain headings but only numeric
agree comparably well in terms of the objective values with those data separated by blanks).
obtained before (e.g., Table 1). The MATLAB code is listed below.
% ’SOD.m’ file
% SECOND ORDER DESIGN PROBLEM implementation
% Author: Sergio Baselga, Universidad Politécnica de Valencia, Spain
% December, 2010
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clc
disp(’Computation started…’);
[m,n]=size(A);
if ischar(WeightsToOptimize), % reason: WeightsToOptimize ==’all’
WeightsToOptimize=[];
for j=1:m, WeightsToOptimize(j)=j;end;
end;
[mWTO,nWTO]=size(WeightsToOptimize);
for i=1:m,
P(i,i)=p(i,1); % m x m weight matrix
end;
P0=P; % we store the initial weight matrix as P0
Qx=inv(A’*P*A);
sigma=initialsigma;
Downloaded from ascelibrary.org by UNIVERSITY OF PITTSBURGH on 03/16/15. Copyright ASCE. For personal use only; all rights reserved.
iter=0;
while sigma>finalsigma,
P2=previousP;
iter=iter+1; % No. of iterations counter
%% Generation of every new random weight increment
for i=1:m
for jj=1:nWTO,
if WeightsToOptimize(jj)==i,
rightvalue = 0;
while rightvalue == 0
NewP = normrnd(P(i,i),sigma*P0(i,i)); %% Generates a random number from the normal
distrib.: N(mu,sigma)
if NewP>=0,
rightvalue=1;
P2(i,i)=NewP;
end;
end;
end;
end;
end;
sigma=sigma*coolingfactor;
if rem(iter,1000)==0,
fprintf(’%6.0f iterations, sigma=%6.4f (to reach finalsigma=%6.4f)\n’,
iter,sigma,finalsigma);
end;
fprintf(’\nIterations completed! The final value for the objective function is%6.4e\n’,
sqrt(fbest));
for i=1:NoValues,
message=[’The final value for the Qx element ’,num2str(GoalElement_Values(i,1)),’,
’,num2str(GoalElement_Values(i,2)),’ is
’,num2str(bestQx(GoalElement_Values(i,1),GoalElement_Values(i,2))),’ (initially
’,num2str(Qx0(GoalElement_Values(i,1),GoalElement_Values(i,2))),’) as compared to
the expected value ’,num2str(GoalElement_Values(i,3))];
disp(message);
Downloaded from ascelibrary.org by UNIVERSITY OF PITTSBURGH on 03/16/15. Copyright ASCE. For personal use only; all rights reserved.
end;
initialweights=diag(P0);
newweights=diag(bestP);
fprintf(1,’Obs# Initial Weight Final Weight\n’);
for i=1:m
fprintf(’%4.0f%14.4f%14.4f\n’,i,initialweights(i,1),newweights(i,1));
end;
Acknowledgments Dare, P., and Saleh, H. (2000). “GPS network design: Logistics
solution using optimal and near-optimal methods.” J. Geodes., 74(6),
The writer is grateful to the editor and three anonymous reviewers 467–478.
for their valuable suggestions, corrections, and constructive com- Eshagh, M., and Kiamehr, R. (2007). “A strategy for optimum designing of
ments that helped improve the original manuscript. the geodetic networks from the cost, reliability and precision views.”
Acta Geod. Geophys. Montan. Hung., 42(3), 297–308.
Grafarend, E. W. (1975). “Second order design of geodetic nets.”
Z. Vermessungswes., 100(4), 158–168.
References Grafarend, E. W., and Sanso, F., eds. (1985). Optimization and Design of
Aja-Fernández, S., de Luis García, R., Tao, D., and Li, X. (2009). Tensors Geodetic Networks, Springer-Verlag, Berlin, Heidelberg, New York,
in Image Processing and Computer Vision, Springer, Dordrecht, Tokyo.
Heidelberg, London, New York. Johnson, H. O., and Wyatt, F. K. (1994). “Geodetic network design for
Amiri-Simkooei, A. R. (2004). “A new method for second order design of fault-mechanics studies.” Manuscr. Geod., 19(5), 309–323.
geodetic networks: Aiming at high reliability.” Surv. Rev., 37(293), Kai, T., Qi, W., and Chongyang, S. (2004). “Using geodetic data to inverse
552–560. co-seismic dislocation of 2001 Kunlun earthquake.” J. Geod. Geodyn.,
Amiri-Simkooei, A. R., and Sharifi, M. A. (2004). “Approach for equiv- 24(3), 47–50.
alent accuracy design of different types of observations.” J. Surv. Eng., Kuang, S. L. (1991). “Optimization and design of deformation monitoring
130(1), 1–5. scheme.” Ph.D. dissertation.” Tech. Rep. No. 157, Dept. of Surveying
Baarda, W. (1981). S-Transformations and Criterion Matrices. Neth. Geod. Engineering, University of New Brunswick, Fredericton, Canada.
Comm., Pub. on Geodesy, New Series, 2nd Ed., Vol. 5, Delft, The Kuang, S. L. (1993). “Second-order design: Shooting for maximum
Netherlands. reliability.” J. Surv. Eng., 119(3), 102–110.
Bagherbandi, M., Eshagh, M., and Sjöberg, L. E. (2009). “Multi-objective Kuang, S. L. (1996). Geodetic network analysis and optimal design:
versus single-objective models in geodetic network optimization.” Concepts and applications, Ann Arbor Press, Chelsea, MI.
Nordic J. Surv. Real Estate Res., 6(1), 7–20. Metropolis, N., Rosenbluth, M., Rosenbluth, A., Teller, A., and Teller, E.
Baselga, S. (2007). “Global optimization solution of robust estimation.” (1953). “Equation of state calculations by fast computing machines.”
J. Surv. Eng., 133(3), 123–128. J. Chem. Phys., 21(6), 1087–1092.
Baselga, S., and García-Asenjo, L. (2008). “GNSS differential positioning Müller, H. (1985). “Second-order design of combined linear-angular
by robust estimation.” J. Surv. Eng., 134(1), 21–25. geodetic networks.” Bull. Gqéod., 59(4), 316–331.
Berné, J. L., and Baselga, S. (2004). “First-order design of geodetic
Pardalos, P. M., and Romeijn, H. E., eds. (2002). Handbook of
networks using the simulated annealing method.” J. Geodes., 78(1–2),
Global Optimization, Vols. 1&2, Kluwer Academic, Dordrecht, The
47–54.
Netherlands.
Cervelli, P., Murray, M. H., and Segall, P. (2001). “Estimating source
Saleh, H. A., and Dare, P. (2001). “Effective heuristics for the GPS survey
parameters from deformation data, with an application to the March
1997 earthquake swarm off the Izu Peninsula, Japan.” J. Geophys. network of Malta: Simulated annealing and tabu search techniques.”
Res., 106(B6), 11217–11237. J. Heuristics, 7(6), 533–549.
Chelouah, R., and Saleh, H. (2003). “Genetic algorithms for designing the Schmitt, G. (1985). “Second order design.” Optimization and Design
global positioning system (GPS) networks.” Proc., 7th World Multi- of Geodetic Networks, E. W. Grafarend, and F. Sanso, eds., Springer-
conference on Systemics, Cybernetics and Informatics, Orlando, Inter- Verlag, Berlin, Heidelberg, New York, Tokyo.
national Institute of Informatics and Systemics, Caracas, Venezuela. Sen, M. K., and Stoffa, P. L. (1991). “Nonlinear one-dimensional seismic
Coulot, D., Pollet, A., Collilieux, X., and Berio, P. (2010). “Global opti- waveform inversion using simulated annealing.” Geophysics, 56(10),
mization of core station networks for space geodesy: Application to the 1624–1638.
referencing of the SLR EOP with respect to ITRF.” J. Geodes., 84(1), van Laarhoven, P. J. M., and Aarts, E. H. L. (1987). Simulated annealing:
31–50. Theory and applications, Reidel, Dordrecht, The Netherlands.