PUSH PULL MIGRATION LAWS x
Guido Dorigo* and Waldo Tobler †
Abstract: The mathematics of a push-pull model are shown to incorporate many of Ravenstein’s
laws of migration, to be equivalent to a quadratic transportation problem, and to be related
to the mathematics of classical continuous flow models. These results yield an improved
class of linear spatial interaction models. Empirical results are presented for one country.
Key Words: geographical movement, Helmholz equation, migration theory, quadratic pro-
gramming, spatial interaction.
It is now approximately one hundred years since the geographer Ernst Ravenstein reported his
“Laws of Migration” to the statisticians of London (Ravenstein 1876, 1885, 1889). We
commemorate this by outlining an elementary mathematical model of migration that incorporates
several of his “laws” as direct and simple consequences. Having studied the literature1, grown
large since Ravenstein’s time, we believe that we can formulate the migration process as the re-
sultant of a “push” factor and a “pull” factor, but must discount this combination by a distance
deterrence between the places. The push factors are those life situations that give one reason to
be dissatisfied with one’s present locale; the pull factors are those attributes of distant places that
make them appear appealing. We will specify this old idea as a very elementary equation system,
and will make estimates using empirical data, but not in a regression format; rather, we will
study the model from a structural point of view. By including distance discounting we place the
model in the venerable class of “gravity” models, and show that it has properties similar to other
models in this class2. But we also show that it is simultaneously an optimizing model, with
shadow prices and with a well-known and simple objective function, and thus belongs to the
class of mathematical programming problems. We then present several computational
algorithms, which give additional insight into the nature of the model. We will interpret the
model in a discrete (network) form, and in a spatially continuous version, the latter as a system
of linear partial differential equations. Our empirical example will use Census Bureau migration
data for the United States.
Ravenstein based his “laws” on insightful, careful scrutiny of census tables. He did not
formulate his ideas in algebraic form, which is what we now attempt to do. Our mathematical
statement is extremely simple, consisting of one elementary equation for each directed exchange
of migrants occurring during a specified interval of time between pairs of places. Yet this simple
system has a deep structure with interesting properties. This is not unusual in scientific
mathematics (May 1976). Specifically, we model migration as
ij = (Ri + Ej) / dij , i ≠ j (1)
where Mij is the magnitude (as a count of people) of the movement from place i to place j (of r
places) in some specified time interval, and dij is the distance between these places, measured in
appropriate units (kilometers, road lengths, dollar costs, travel time, social distance, employment
opportunities, etc.). We have labeled our primary variables R and E, using R for “rejecting,”
“repelling,” “repulsing” and E for “enticing.” Ri is the “push” away from place i, and Ej is the
“pull” toward place j. We combine these variables to say that migration is the resultant sum of
the two, discounted for distance effects. This distance effect can be interpreted as an attenuation
of information owing to the two-dimensional geometric nature of the surface of the earth, or as
intervening obstacles to be overcome. Dimensional considerations lead to the conclusion that the
pushes and pulls are in person-kilometers. Thus a push of two hundred will propel two hundred
people one kilometer or one person two hundred kilometers, etc. In our model there are r2 si-
multaneous equations, one for each movement between the pairs of places. When the movements
are between areal units, a distance often is not defined for the self-migrations Mii. Then the
system consists of only r(r-1) equations and the notational convention used here corresponds to
this situation. Self-moves, however, can be incorporated by establishing a rule assigning nonzero
distances for the intraregional moves.
Aggregating the basic Equations (1) over the r places yields
We call these the “outsums” (Oi ) and the “insums” (Ij ).The equations exhibit a certain sym-
metry, so that we can assert that
“the process of dispersion is the inverse of that of absorption, and exhibits similar features”
(Ravenstein 1885, 199).
The important immediate consequence of the aggregation is that it shows that it is pos-
sible to solve for the numerical value of all of the push factors (R) and all of the pull factors (E)
if one knows only the outsums and insums for all of the places (See below for details). These
marginal sums will of course be known if the full migration table is known. In other words, the
equations allow the numerical calculation of the push and pull factors without our knowing in
advance what is decisive for migration. We postulate that the estimated push and pull factors are
combinations (not necessarily linear) of local traits or characteristics of the inhabitants, but we
do not at present need to speculate as to the nature of these attributes of the places or people, and
we do not deny that this is still an oversimplified view of reality. A “true” push factor might be a
high unemployment rate, but this push must be reduced by the heavy inertial cost of leaving
friends and a familiar environment. If we measure the combination of these two tendencies we
may find that the total push at a place is negative. This is not the same as a positive pull toward
that place, but algebraically it does reduce the importance of a pull from some other place. We
will similarly find that an “attractive” place may have a large push value. These results have
been anticipated in a theoretical paper by Lee (1966).
Our model, if valid, has consequences for regression studies. Consider the well known
Lowry (1966) model (Rogers 1968):
Mij =k (Ui Wi / Uj Wj) Li Lj /dij
where the U’s refer to unemployment rates, W’s are wage rates, and the L’s are the number of
people in the respective labor markets. By substitution in (1), and canceling the distance term, we
Ri – Ej = k (Ui Wj / Uj Wi ) Li Lj ,
which would normally be estimated (with exponents or elasticities) using the logarithmic form.
But the push-pull factors cannot be unscrambled in this way, and the two models are clearly
inconsistent; we will never get good estimates of the push-pull factors from the Lowry model.
But we can run a regression on either R or E, or both, after they have been computed by the
methods outlined below. In this way a correspondence can be established between our model and
the popular regression models of, for example, Clark and Ballard (1980) or Greenwood (1981).
Once one has calculated the E’s and R’s it is possible to estimate the gross migration
table. That is, one can compute a full movement table from just the marginals and the distances.
In this respect the push-pull model is similar to the origin-destination-constrained entropy model
(Wilson 1967), which is its chief competitor.3 Being able to compute the table from its marginals
is important because this allows a test of the model. We see that the model predictions can be
compared to observed values without any additional calibration of parameters. Empirical results
will be given later. We first deduce more implications of the equation system.
For a place k with a given pull Ek and a hinterland containing places i and j of equal push
Ri and Rj, and with dik < djk , it is immediately apparent that Mik > Mjk. This shows that in these
circumstances migration diminishes in strength with distance, or,
“Migrants enumerated in a ... center of absorption will ... grow less with the distance propor-
tionately" (Ravenstein 1885, 199).
If we let Ak = Ek – Rk then it is easily shown that the net migration flows are Mij - Mji = (Aj -
AI) / dij. In words, the attractivity of a place is the difference between the pull factor and the push
factor at that place. And the net movement between two places is equal to the difference of their
attractivities, discounted by distance, as a gradient. This is the same net migration model used
with some success by Somermeyer (1971) and recently studied in depth by Tobler (1981). It is
seen to be a derivative of the push-pull model.
If we call Tk = Ek + Rk, then the total, two-way, movement between two places is Mij + Mji =
(Ti + Tj) / dij. This ‘T-factor” measures the total exchange, or turnover, at a place; both the in and
out movements are involved. The empirical observations,
“…each main current of migration produces a compensating counter current” (Ravenstein
“inspection of data indicates … outward flows being almost in balance in most cases” (Gleave
and Cordey-Hayes 1977, 17),
are both described by this turnover factor. High values of T imply an active migration market,
with lots of movement in both directions. Low values of T imply a quiescent place, and
intermediate values may mean high in-migration with low out-migration, or the reverse. Some
numerical estimates are given later, as well as a direct computational method by which to
estimate the T values. It would appear that this combination, the sum of the push and pull factors
at a single place, should be an interesting candidate for correlation and regression studies. But it
is not identical with the gross migration sum Mij + Mji or with the total Ik + Ok.
The Equations (2) can be rewritten as
This form of the equations shows that the push factor at a place depends on the pull factor of all
of the other places and the number of people leaving the place; similarly, the pull factor at a
place depends on the push factor at all of the other places and the number of people entering the
place. The dependence in both cases is that of a distance decay in a normalized linear
combination, i.e., it is a spatially discounted weighted average. Every place is related to every
other place, but near places are more related, and the push and pull factors are structurally
intertwined. A substantive implication is that if one makes a place less appealing, thus increasing
its “rejectance” or pushing factor, then this will change the enticing pull at all of the other places.
The change in the E’s will then propagate to the alternative places, changing their R values, etc.
Similar ramifications occur if one makes a single place more appealing.
Further, and perhaps less obvious, raising the number of out-migrants (in-migrants) at a place,
for whatever reason or by whatever means, but without changing any other attributes of the
place, increases the push (pull) factors and these changes also propagate through the system.
Notice that these effects are geographically uneven, being more pronounced for outlying places,
and include geographical competition and shadowing. This suggests the following type of
problem (MacKinnon 1975): where should one make a unit change for it to have the greatest
(least) impact on the migration pattern? To the extent that the model describes important prop-
erties of actual behavior, this calculation of impacts of observed or proposed changes at places
on the total migration system can be an extremely useful tool. And, because of the
interrelatedness of push, migration, and pull in the model, there is some prospect that it can be
used for short-range prediction. This is seen by the fact that a change at one place is dampened
spatially relatively quickly (in a short distance; there is no time in the model) and the effect
remains local. The numerical values of most of the R and E factors can therefore be expected to
change only rather slowly with time at most locations. This sketch of model dynamics resembles
relations outlined by Hollingsworth (1970) for migration in Scotland.
It has often been observed that substantial differences in migration rates occur for different
age, occupational, social, and educational classes; Ravenstein was able to distinguish between
male and female migrants. In order to investigate the behavior of different groups let Ma and Mb
be the migration tables for groups a and b. Then the combined table is Ma+b = Ma + Mb and the
components are Ma+bij = (Ra+bi + Ea+bj) / dij, on the assumption that the distances are perceived
similarly for each group. We notice that “exponent additivity” holds for M, R, E, I, O, T and A,
and that the model has this property for any number G of groups,
The push and pull terms are different for each place and each group, as is clear from the notation
used, but we can add these terms to get the same results as would be obtained from an analysis of
the sum of the groups.
Now let each group consist of a single individual. It may be helpful here to imagine the
complete migration table as the sum of a large number of individual migration tables, each
containing only a single entry, with value one, the rest of the entries in that table being zero. Our
empirical example (Table 5) is thus thought of as the sum of some 12 million tables, each of
which describes the movement of one individual. The first Oi of these tables describe the out-
migrations from region one, and so on. For the kth individual we must have 1 = (Rki + Ekj) / dij or
Rki + Ekj = dij which seems to say that the dissatisfaction at the origin and the expected
satisfaction at a destination for each individual must, at the margin, balance the cost of moving
before the move will occur. Here we have shown that if the push factor is zero then the pull
toward j for the moving individual is proportional to distance. Conversely, if there is no pull then
the push is equal to the cost or distance of moving. In this system each individual is allowed
different satisfactions. Summing over all the individuals who are moving from i to j, we have
which shows that a consistent grouping from individuals to aggregates is possible for this model.
The possibility of such aggregation is generally regarded as being a desirable quality in a
migration model (Speare, Goldstein, and Frey 1974, 163 - 205), and the push-pull model has this
Another interesting computational possibility is to estimate the R and E values for a
single row (or column) from the full migration table. Set all entries to zero except the row
(column) of interest. The computational result is analogous to the estimation of a mean migration
field (Hägerstrand 1957; Tobler 1979). Or divide the row entries by the outsum for that row,
setting all other entries equal to zero (i.e., Mij = Oi (Ri + Ej) / dij ). The migration spread function
that is estimated for the row then bears a resemblance to the impulse response for a unit migrant
(Tobler 1969, 1970).
Variations on the Theme
The extreme simplicity of the model gives it a desirable tinkerability and robustness. For
example, most of the following variations pose no particular problem of calculation or
interpretation. Several of these are of substantive importance.
As noted by Ravenstein (1885. 198),
“In forming an estimate of [the] displacement [of people] we must take into account the
number of natives of each county which furnishes the migrants, as also the population of the …
districts which absorb them”.
Thus some prefer to work with rates and should use Mij = Pi Pj (Ri + Ej) / dij, where the P’s refer
to populations. Adding two such equations, we get Mij + Mji = Pi Pj (Ti + Tj) / dij, which is our
version of Zipf’s (1946) formulation. Subtraction yields Mij - Mji, = Pi Pj (Aj - Ai) / dij, an
attractivity gradient model for net movement rates. The equations for R and E in the above case
are slightly different from those given in (3), but are easily derived by analogous deductions.
Those who prefer different distance-decay functions may use Mij = (Ri + Ej) e-βdij, Mij = (Ri +
Ej) d-αij; or Mij = Bij (Ri + Ej), where Bij is the length of the boundary connecting places i and j.
This latter satisfies the intuitive notion that
“Counties having an extended boundary in proportion to their area, naturally offer greater
facilities for an inflow ... than others with a restricted boundary" (Ravenstein 1885, 175).
The crossing density, in persons per linear kilometer, is Mij / Bij = Ri + Ej. This version of the
model allows for easy combination of adjacent regions. Let areas j and k be contiguous to area i.
Then, adding border lengths, we have Bij+k = Bij + Bik . The migration magnitudes are Mij = Bij
(Ri + Ej) and Mik = Bik (Ri + Ek), and, for the combined region, Mij+k = Bij+k (Ri + Ej+k), which
must equal the sum of the first two. A little algebra now demonstrates that the pull factor of the
combined region is the weighted average of the pull factors of the regions that are combined,
Ej+k = (Bij Ej + Bik Ek) / Bij+k
and thus that Mij+k = Bij+kRi + BijEj + BikEk, and this extends to combinations of more than two
regions. Aggregation of regions is thus easily and consistently achieved, and the model does not
require re-estimation. This suggests that the analysis always be performed on the finest level of
geographic detail available.
An Equivalent Model
The model given by (1) is the solution to the variational problem
The equivalence of these two models, (1) and (4), is easily established by writing out the
equations in full (see below). We find that the place-specific push-pull factors in (1) are directly
proportional to the Lagrangians of the constrained optimization problem (4). The quadratic
functional in (4) is the same as the classical definition of the “work” in a resistive electrical
network, and it minimizes this quantity while satisfying the constraints. Zipf’s (1949) postulate
regarding movements is thus equivalent to the postulates of the push-pull model of migration. In
a transportation context it can be shown to be equivalent to minimizing transport costs,
proportional to distance, when congestion causes the costs on each link to increase in direct
proportion to the flow magnitude on that link. T. Smith (in correspondence) has pointed out that
this model also has a simple interpretation as a network equilibrium flow pattern, in the sense of
An obvious difficulty of the model (1), or of its equivalent (4), is that it is possible to
obtain negative values for the number of people migrating. The condition Mij ≥ 0 must be added.
This can be done in a number of ways, as discussed below, but slightly complicates the
mathematics. Empirically we have discovered that this constraint is not active when the
population-weighted form is used.
Equations (2) can be written in matrix form as
where Q is an r-by-r diagonal matrix with
H is also r-by-r with hij = 1 / dij, i ≠ j, and with a null diagonal. To solve (4) we multiply the
constraints by Lagranians α and β and add them to the objective function, then set the derivatives
equal to zero, in the usual fashion.
Thus the minimum of (4) occurs where the partial derivatives of the constrained objective
function are equal to zero. The first r2 of these derivatives are ∂ε/∂Mij = 2Mij dij - αi - βj. When
these values are zero we have Mij = ½ (αi + βj) / dij which completes the necessary part of the
proof showing the proportional equivalence of (1) and (4). The particular values of αi and βj are
then determined by the partials ∂ε/∂α and ∂ε/∂β. This system of 2r equations is of rank 2r-1,
and the R’s and E’s (or α’s and β’s) are determined only up to an additive constant C. Thus the
model can always be written as
Mij =[(Ri + C) + (Ej – C)] / dij.
It is convenient to fix any one R or E and then to solve the reduced set of 2r-1 equations by
The inversion should be calculated using a program for sparse matrices (Jacoby and Kowalik
1980). An alternative approach is to solve Equations (3) directly by a coupled iterative relaxation
technique (Southwell 1956), or to compute a generalized inverse (Bjerhammer 1972). Observe
that the inverse matrix depends only on the geometry of the region; it completely characterizes
the area for this purpose and normally would not differ drastically for sufficiently close time
periods. But this matrix also specifies the interrelationships of all places to each other; any single
change effects everything else in the equations.
One way of approximating the non-negativity condition is to set all negative computed
Mij values to zero and then to use biproportional adjustment (Leontief 1941; Bacharach 1970;
Fienberg 1970) to satisfy the constraints on the marginals. The result is a model of the form
Mij = ai bj (Ri + Ej) / dij,
which, of course, differs from what had been intended. In practice the negative computed
migrations are small, and zeros are forced only for widely separated places, i.e., where small Mij
are expected anyway and the ai bj do not have a large impact on the numerical estimates. The ai
and bj are close to one. The big advantage of this approach is its simplicity, and only a small
amount of computational space is needed. As already noted, the non-negativity constraint is
generally not required when the population-weighted version of the model is used.
The system (4) with the additional requirement Mij ≥ 0 can be solved directly as a quadratic
programming problem with linear constraints (Fletcher 1971). We have used the computer
program given in Fletcher (1970). Kunzi, Tzschach, and Zehnder (1971) also give such a
program. The main disadvantage of this approach is the size of the computer memory needed
(about r4), but an exact solution is obtained. Because migration tables on the order of 3,000 by
3,000 are now becoming available, the program cited would need to be run on a computer with
nearly 1014 memory locations, and this is impractical. The sparse structure of the problem
suggests several possible improvements, in addition to the alternatives already cited.
The Equations (3) can be uncoupled as follows. Let T = E + R and A = E - R, and thus,
when dij = dji
where Fk = Ik + Ok, and ∆k = Ik - Ok. Then T and A are seen to be independent of each other, and
each equation can be separately solved by iteration, with ± switches in a single computer
program. Notice the dependence of the turnover T on the sum of the insums and outsums (F) at a
place, and the dependence of the attractivity A on the difference of these values (∆). It is direct
that E = (T + A) / 2 and R = (T - A) / 2. One value is still arbitrary, and care must be taken that
the values satisfy the insum, outsum, and nonnegativity constraints.
The variational form of the model (4) with the non-negativity constraint Mij ≥ 0 suggests
a simpler solution. We can consider this a “quadratic transportation problem,” a generalization of
the well known linear case (Koopmans 1949). The usual tableau is established, but now the
source places are also the destination places, and the tableau is square. The only restriction is that
a place cannot send migrants to itself. Then each place seems to desire people of one kind, and
exports another type, a reasonable enough interpretation. If we can find a simple efficient
algorithm for this quadratic transportation problem, we will not need to use the space consuming
general quadratic programming procedures. An initial feasible solution is easily obtained, and
this is then improved by appropriate changes in the tableau. The constraints are thus always
satisfied. By restricting the changes to integers, and being careful never to subtract more from a
cell than is already there, we move toward a non-negative integral solution. But the true solution
is in general not integer valued (in contrast to the linear transportation problem), so that we must
allow fractional movements in order to achieve the optimum. Philosophically this is slightly
disappointing. Once we have found the optimum, the push, pull factors (Lagrangians) emerge as
shadow prices, that is, as supply and demand prices, like those in the spatial price equilibrium
model of Samuelson (1952), a difference being that in his model linear transportation costs are
minimized. In our spatial equilibrium a quadratic functional is minimized and “location costs”
are assigned to people. The push-pull factors can now be called “prices”; economists often assign
prices to persons, which are then called “labor.” We further observe that the quadratic optimum
contains more than the small number of values that would be obtained from the equivalent (two-
way) linear transportation problem. In fact, the extreme sparcity of entries in the solution to the
conventional linear transportation problem suggests that attempts to model actual, as opposed to
normative, behavior with that model are unrealistic, as has been noted several times (Polenska
1966; Morrill 1967; Mera 1971; Nijkamp 1975). Recently proposals have been made to
overcome this shortcoming, e.g., Hodgson (1978) and Brocker (1980), to which we add our
present suggestion. The advantage of the quadratic functional is that it forces a larger number of
smaller flows, and this is a better descriptor of real tables than is provided by the linear
functional. We are optimistic that the method of Beale (1959) can be improved to obtain a
workable primal solution to this nonlinear transportation problem.
After discussing so many computational approaches, we describe a simple algorithm that
appears to work with only modest storage and computation time requirements, and that satisfies
the condition for non-negative movements.4
Step (1): Solve the problem as given by Equation (5) using a matrix inversion, or by operating
on Equations (3) using a coupled convergent iterative scheme.
Step (2): Compute the resulting migrations Mij.
Step (3): Whenever any Mij is negative replace the corresponding dij by a large number (= ∞, 1
/ dij = 0) setting the values in Q and H appropriately, and then go to Step (1). Several of the Mij
may be negative at one time, and all of the appropriate dij are set to large values. Once a dij has
been modified in this manner it is left large on subsequent passes. If there are no negative Mij in
the entire array on this step, then stop because you are done.
The numerical answers obtained by this simple procedure, which seems to require only a
few iterations, agree with those obtained using a full quadratic programming procedure, e.g., that
of Fletcher (1970, 1971).
The Geographically Continuous Version
Ravenstein (1885, 198) asserts that he has
“proved that the great body of our migrants only proceed a short distance,”
and many others have verified this observation (for example, Hägerstrand 1957). Consequently,
it does not do great violence to the data to assume movement only between neighboring places,
especially if observations are taken over very short time intervals. Many types of geographical
movement display this characteristically local process. This is also not as severe an assumption
as might appear at first glance because computationally it simply means that a migrant from, say,
New York to California is routed to pass through all intermediate places.
For expository simplicity allow every place to have only four neighbors among whom ex-
changes are possible. Index these by subscripts from one to four; and take them to be equidistant,
at distance d = 1, and spaced as on a square mesh, for which Bij = 1 also. Then Equations (3)
4 E = I - (R1 + A2 + A3 + A4),
4 R = O - (E1 + E2 + E3 + E4).
Now add -4R to both sides of the first equation, and -4E to both sides of the second, to obtain
1 + R2+ R3+ R4 - 4 R = l - 4 (E+R).
1 + E2 + E3 + E4 - 4 E = O - 4 (E +R).
The left hand sides are recognized as finite difference versions of the Laplacian. Thus we can
write, approximately and for a limiting fine mesh,
Λ2 E(x,y) = I(x,y) - 4 [R(x,y) + E(x,y)],
Λ2 R(x,y) = O(x.y) - 4 [R(x,y) + E(x,y)],
assuming that R and E are differentiable spatial functions5 . This is a coupled system of two
simultaneous partial differential (Helmholtz) equations, each of which separately is the Euler
equation of, or makes stationary, a functional of the form
with ∂z/∂n = 0 on the boundary. The equations can be uncoupled as before. By addition we
Λ2 T + 8 T = F,
where F(x,y) = I(x,y) + O(x,y) is the forcing function. This is a single Helmhotz equation in the
single unknown turnover function T(x,y), minimizing an integral of the given type. Alternatively,
by subtraction we have
Λ2 A = ∆
using ∆(x,y) = I(x,y) - O(x,y); this result gives Poisson’s equation for the unknown A(x,y).
Efficient computer algorithms exist for solving both Helmholz’s equation and Poisson’s equation
(Proskurowski and Widlund 1976; Buzbee, Golub, and Nielson 1970). The arbitrary additive
constant of integration must still be supplied. A(x,y) is interpreted as the attractivity at each
location. Assuming that movement is proportional to the gradient of this attractivity, i.e., V =
grad A, allows one to make interesting maps of the net geographical movement pattern, as is
shown in a later figure. The movement across the border surrounding the region being studied
gives the Neumann condition for these partial differential equations. In Table 5 (below) this flux
is not recorded and is treated as implying no international migration into or out of the United
The occurrence of Helmholz’s equation, normally used to describe dynamic wave mo-
tion, in a static equilibrium paper on migration, was quite unanticipated. Hydrologic terminology
(streams, currents, flows, eddies, waves) is common in the migration literature (e.g., Redford
1964), but the equations are not.
We have performed a few computations contrasting the push, pull model with US Bureau
of the Census (1973) migration estimates for 1965-1970. These estimates are based on a 15
percent sample enumeration of the migrations between the nine census regions defined by the
government for data publication purposes. Nine regions covering the contiguous United States
yield an average geographic resolution of 944 kilometers, and patterns of circa 2,000 kilometers
across or greater should be observable. Tables 1 and 2 give input data for the model, including
highway driving distances between cities located near the center of gravity of the regions and the
length of the boundaries between the regions, the latter computed from a magnetic tape
containing the boundaries of all of the counties of the United States in coordinate (latitude,
longitude) form. Table 3 presents our estimates for the basic push-pull model and has been
computed by the constrained quadratic programming algorithm. Whenever a negative flow is
computed from the push-pull factors of this table, it must be set to zero to obtain the correct
minimum of the functional. The fit of the model and its variants to the data can be measured in
several ways; all indicate about the same results as are usually obtained for gravity models (R2 >
80 percent). More interesting are the maps (Figure 1), which show the resulting push, pull,
turnover, and attractivity values in their geographical context. The Pacific Region is seen to be
the most “repulsive.” High housing costs or metropolitan air pollution might be the reason.
Conversely, this same area is also the most “enticing,” perhaps for its beautiful scenery, coastal
climate, or life styles. Our model does not consider these contrasts contradictory but instead
incorporates, by summation, these two effects into a large turnover, and also assigns a high net
attractivity to the region. One may compare regions known to be losing population, the Mid-
Atlantic for example, in this same way. This area still has a large drawing power, but this is
overcome by the push effect. Each region on the maps can be examined in this manner.
Figure 2 shows the comparable results for the model
Mij = Pi Pj (Ri + Ej) / dij.
The effect of removing the population sizes is seen. Here is a case in which the matrix
formulation (Equation 5, as modified to include population) was used directly and the Mij ≥ 0
constraint was not needed; all values turned out to be positive even without the use of this
constraint. Table 4 shows the estimated flows, and Table 5 repeats the census figures for easy
Tables 6 and 7 show the solution using
ij = Bij (Ri + Ej) (6)
with the lengths of boundaries between regions instead of distances. This result is particularly
interesting because we have had to introduce pass-through transients in order that all of the flows
come out correctly. It is not possible to get all of the necessary people to the Pacific Region from
the Mountain Region alone. Nor can this latter region absorb all of the out-migrants from the
Pacific Region. We must increase the insum to the Mountain Region, and increase its outsum
also, to get enough people to move from the East to the West, and in the opposite direction. The
following algorithm seems to work well. Compute a solution using Equations (5), appropriately
modified to use boundary lengths instead of distances. Negative migration flows will occur when
this solution is inserted into the basic model (6). Now increment the insums and outsums by the
absolute value of the sum of the negative computed migrations in each row or column. Use these
new marginals to get a new estimate via (5) - the inverse depends only on the geometric structure
of the region and need not be recomputed. Continue this iterative procedure until there are no
negative flows. This appears to be a new way of solving the “traffic assignment problem”
(Florian 1976; Boyce 1980), routing all flows through adjacent places, while minimizing
congestion via the quadratic functional.6 Table 7 gives the number of estimated border-crossing
transients by region. These transshipment migrations
“sweep along with them many of the natives of the counties through which they pass . . . [and]
deposit, in their progress, many of the migrants which have joined them at their origin”
(Ravenstein 1885, 191).
Unfortunately we know of no actual published counts on the part of statistical agencies of
crossings of internal boundaries by migrants. International estimates may be easier to obtain.
Until such data are found there is no method of testing the realism of our procedure. But it is
easily seen that
“…even in the case of ‘counties of dispersion’, which have population to spare for other coun-
ties, there takes place an inflow of migrants across that border which lies furthest away from the
great centers of absorption”. (Ravenstein 1885, 191).
In the present instance the West North Central states form one such interior lying dispersing
region; the reader will be able to find others and can easily identify the direction of movement
across each of their borders. A striking contemporary international case is Mexico, which has an
illegal immigrant problem - with people coming in from the south of the country!
The final maps (Figure 3) display the results of a computation based on the continuous
attractivity model using Poisson’s equation
Λ2 A(x,y) = I(x,y) - O(x,y).
The contiguous United States is approximated, somewhat crudely, by a 61-by-95 lattice of 5,795
nodes, with one finite difference equation for each node. The changes in population resulting
from migration are distributed over each of the nine census regions to yield the source/sink field
∆(x,y) on this mesh. Computation of the potential A(x,y) and the flow vectors then uses standard
procedures (Wachspress 1966) with a Neumann condition on the boundary.7 The continuous case
closely resembles the case in which transients cross over internal borders, and it is in fact
possible to count the number of transients in this model; the method is described in detail in
Tobler (1981). The resulting maps indicate that
“…migratory currents flow along certain well defined geographical channels” (Ravenstein
although this shows up much better when higher-resolution data are used as input or when time
series are available. The variation in the density of the streaklines, and the spacing of the
contoured potentials, also allows one to see that
“The more distance from the fountainhead which feeds them, the less swiftly do these currents
flow”. (Ravenstein 1885: 191).
The streaklines should be interpreted as ensemble averages rather than as paths of individual
migrants. It is also apparent that no account has been taken of transportation facilities in the
computation for Figure 3. The figure does not show fine detail, such as movement to the suburbs,
because of the low resolution of the migration observations.
We believe that we have adequately demonstrated that several of Ravenstein’s “laws” hold for
our equations. There remain many challenging problems, as should be obvious from all of those
aspects of migration that we have not modeled, and we are aware of these inadequacies. Still, as
the Nobel laureate Paul Samuelson so aptly remarks in his Economics (1976):
“Every theory, whether in the physical or biological or social sciences, distorts reality in that
it oversimplifies. But if it is a good theory, what is omitted is outweighed by the beam of
illumination and understanding thrown over the diverse empirical data".
Our model obviously does not fit the observations perfectly; perhaps the residuals will suggest
alternative research directions. But we believe that some issues have been “illuminated.” We
have given a specific mathematical form, previously lacking, to the push-pull idea and have
shown that many of Ravenstein’s “laws” can be deduced from these formulae. We have
established relations to Zipf’s “principle” and to conventional spatial interaction models, and
have shown how these can be contrasted with the now classical transportation/transshipment
problem and the spatial price equilibrium concept. A spatially continuous version of our model is
articulated; this should become increasingly important as migration tables increase in size to
provide greater spatial resolution. Our model yields two-way migrations within the context of
pushes and pulls and is consistent at individual and aggregate levels; both attributes have been
difficult of specification in previous work. The astute reader will also have observed that we
have described an abstract geographical movement system and not only, or even specifically,
migration. The model equations can therefore be applied to information flows, to commodity
movements, to commuting patterns, or to shopping behavior, and so on. The model may also
have relevance to sociometric matrices (Holland and Leinhardt 1981).
We have specified several model formulations and must now discriminate between these
variants and between other models in the literature, especially those incorporating the entropy
approach introduced by A. Wilson (1967). Some recent suggestions have been made for this
purpose (Bishop, Fienberg, and Holland 1975, Chap. 9; Kau and Sirmans 1979; Hubert and
Golledge 1981) but need refinement because several of our proposed variants fit so well that they
cannot be distinguished statistically on the basis of the data used here. The linear property of our
model gives it mathematical advantages over the multiplicative entropy class, especially with
respect to aggregation. No analogy to physics has been used in the development of our model,
but the resulting equations clearly bear a resemblance to those encountered in continuum
mechanics. The entropy equations are derived from ideas also used in statistical mechanics. Thus
the two classes of models of spatial interaction may bear the same relation to each other as the
two approaches to mechanics. Each approach attempts to describe the same events as the other
and uses comparable empirical observations. As outlined here the push-pull model is
deterministic, but a stochastic version may also be obtainable (Hersh and Griego 1969). In-
vestigation of the relation between these classes of models may lead to deeper insights, and this
offers a challenge for students.
Computationally. we have assumed either the availability of the migrant insums and out-
sums (or their combination I + O), or the equivalent availability of place-specific person prices
(push-pull factors). Much of the migration literature is concerned with explaining these factors.
We have shown how to compute them a posteriori. This has advantages and disadvantages,
Instead of attempting to include complex human behavior in our equations, we estimate the
effects of this behavior, allowing other researchers to estimate the relation of the computed
pushes and pulls to life situations. As a consequence we cannot claim to have explained why
people migrate; we only assert a tolerably good description of the spatial pattern when one is
given table marginals and a measure of the strength of driving impulses, whatever these might
be. Because of this, our model is equally applicable to refugees, who constitute a large fraction
of all migrants, as well as to the more benign internal movements. A remaining difficulty is in
the dynamic forecasting of the insums and outsums, the feedback these have on subsequent
events, and in the details of the temporal and spatial lag structures.
Dr. Dorigo’s postdoctoral studies in the United States were supported by the Swiss National
Fund for Scientific Research. We thank Teresa Everett, Susan Pond, and Joanne Mustacchia for
their assistance in completing the manuscript and Ralph Milliff for computation of the flow
1. The reader is directed to the several bibliographic and critical surveys that have recently been
published, e.g., Adams (1968), Bennett and Gade (1979), Clark (1982), Cordey-Hayes
(1972), Courgeau (1980), DaVanzo (1981), Davis (1974), Golledge (1980), Greenwood
(1975), l-(âgerstrand (1957), Hoffmann-NoVotny (1970). Hotelling (1978), Kuznets (1957-
1964), Ledent (1981), Mangalam (1968), Morrison (1973), Mueller (1982), Olssori (1965),
Petersen (1978), Petersen and Thomas (1968), Pierson (1973), Price and Sikes (1975), Pryor
(1981), Quigley and Weinberg (1977), Ritchey (1976), Shaw (1975), Thomas (1938),
Thornthwaite (1934), Weaver and Downing (1976), Welch (1971), Willis (1974), Wolpert
(1965), the International Migration Reviaw, a periodical published by the Center for
Migration Studies of New York, and the Population Index of Princeton University.
2. Stewart 1947; Carrothers 1956; Ewing 1981; Schneider 1959; lsard 1960; Batty 1976;
Smith 1978; Tocalis 1979; Hua and Porell 1979; Erlander 1980.
3. Wilson’s model is multiplicative Mij =ai bj Oi Ij exp( -β dij) and maximizes a constrained
entropy function. An additive analog with the same constraints is
Here D is a constraint on the total movement, and this leads to the slightly different push - pull,
distance-deterence model: Mij = Ri + Ej + γ dij. Empirically, using the nine-region census data
(Tables 2 and 5), we find that γ is negative, as expected. The computational procedures are
similar to those described for the model (1); also see Wansbeek (1977). We deduce for this
model that Mij + Mji = Ti + Tj + 2 γ dij and Mij – Mji = Ai – Aj when dij= dji. (T and A are as
defined in the body of the text.) Mii is also estimated if included with the in-and outsums.
4. The computer program is available from the authors.
5. We use the standard notation
for the Laplacian operator.
6. On a network one might also wish to add capacity constraints.
7. The boundary condition is only approximately satisfied by our numerical technique; see
Milliff (1980) for a discussion of this problem.
Adams, R. B. 1968. Migration geography: a methodological inquiry and United States case
study. Ph.D. dissertation, Department of Geography, University of Minnesota, Minneapolis.
Bacharach, M. 1970. Biproportional matrices and input-output change. London: Cambridge
Batty, M. 1976. Urban modelling. London: Cambridge University Press.
Beale, E. 1959. An algorithm for solving the transportation problem when the shipping cost over
each route is convex. Naval Research Logistics Quarterly 6:43-56.
Bennett, D., and Gade, 0. 1979. Geographic perspectives in migration research. Studies in
Geography No. 12, University of North Carolina, Chapel Hill.
Bishop, Y., Fienberg, S., and Holland, P. 1975. Discrete multivariate analysis: theory and
practice. Cambridge, Mass.: MIT Press.
Bjerhammer, A. 1972. Theory of errors and generalized inverses. Amsterdam: Elsevier.
Boyce, D. 1980. A framework for constructing network equilibrium models of urban location.
Transportation Science 14:77-96.
Bröcker, J. 1980. An application of economic interaction models to the analysis of spatial effects
of economic integration. Environment and Planning A 12:321-38.
Buzbee, G., Golub, G., and Nielson, C. 1970. On direct methods for solving Poisson’s equation.
SIAM Journal of Numerical Analysis 7:627-56.
Carrothers, G. 1956. An historical review of the gravity and potential concepts of human in-
teraction. Journal of the American Institute of Planners 22:94-102.
Clark, G., and Ballard, K. 1980. Modelling out-migration from depressed regions: the signifi-
cance of origin and destination characteristics. Environment and Planning A 12:799-812.
Clark, W. A. V. 1982. Recent research on migration and mobility: a review and interpretation.
Progress in Planning 18:56.
Courageau, 0. 1980. Analyse quantitative de migrations humaines. Paris: Masson.
Cordey-Hayes, M. 1972. Dynamic frameworks for spatial models. Socio-Economic Planning
DaVanzo, J. 1981. Microeconomic approaches to studying migration decisions. In Migration de-
cision making, ed. G. DeJong and R. Gardner, pp. 90-29. New York: Pergamon.
Davis, K. 1974. The migrations of human populations. Scientific American 231:92-109.
Ewing, G. 1981. Papers in spatial modelling. Department of Geography Reprints, McGhil Uni-
Erlander, S. 1980. Optimal spatial interaction and the gravity model. Berlin: Springer.
Fienberg, S. 1970. An iterative procedure for estimation in contingency tables. The Annals of
Mathematical Statistics 41:907- 917.
Fletcher, R. 1970. A Fortran subroutine for general quadratic programming. AERE-R 6370,
Atomic Energy Research Establishment, Harwell, England.
__1971. A general quadratic programming algorithm. Journal of the Institute for Mathematics
and its Applications 7:76-91.
Florian, M., ed. 1976. Traffic equilibrium methods. Heidelberg Springer.
Gleave, D., and Cordey-Hayes, M. 1977. Migration dynamics and labour market turnover.
Progress in Planning 8:1- 95.
Golledge, R. 1980. A behavioral view of mobility and migration research. The Professional
Geographer 32:14 21.
Greenwood, M. 1975. Research on internal migration in the United States. Journal of Economic
__1981. Migration and economic growth in the United States. New York: Academic Press.
Hägerstrand, T. 1957. Migration and area. In Migration in Sweden, ed. D. Hannerberg et al., pp.
17-128. Lund Studies in Geography No. 13, University of Lund, Sweden.
Hersh, R., and Griego, R. 1969. Brownian motion and potential theory. Scientific American
Hodgson, M. 1978. Toward more realistic allocation in location-allocation models: an interaction
approach. Environment and Planning A 10:1273-85.
Hoffmann-Novotny, H. 1970. Migration-ein Beitrag zu einer soziologischen Erklärung.
Holland, P., and Leinhardt, S. 1981. An exponential family of probability distributions for
directed graphs. Journal of the American Statistical Association 76:33-65.
Hollingsworth,T. 1970. Migration: a study based on Scottish experience between 1939 and 1964.
Edinburgh: Oliver and Boyd.
Hotelling, H. 1978. A mathematical theory of migration. Environment and Planning A 10:1233-
Hua, C., and Porell, F. 1979. A critical review of the development of the gravity model. Interna-
tional Regional Science Review 4:97-126.
Hubert, L., and Golledge, R. 1981. A heuristic method for the comparison of related structures.
Journal of Mathematical Psychology, 23:214-26.
Isard, W. 1960. Methods of regional science. Cambridge, Mass.: MIT Press.
Jacoby, S., and Kowalik, J. 1980. Mathematical modeling with computers. Englewood Cliffs, N.
Kau, J., and Sirmans, C. 1979. The functional form of the gravity model. International Regional
Science Review 4:127-36.
Koopmans, T. 1949. Optimum utilization of the transportation system. Econometrica. Supple-
Kunzl, H., Tzschach, H., and Zehnder, C. 1971. Numerical methods of mathematical optimiza-
tion. New York: Academic Press.
Kuznets, S., ed. 1957-1964. Population redistribution and economic growth: United States 1870-
1950 Memoirs 45, 51, and 61, American Philosophical Society. Philadephia.
Ledent, J. 1981. On the relationship between Alonso’s theory of movement and Wilson’s family
of spatial interaction models. Environment and Planning A 13:217-224.
Lee, E. 1966. A theory of migration. Demography 3:47-57.
Leontief, W. 1941. The structure of the American economy 1919-1929. New York: Oxford Uni-
Lowry, I.1966. Migration and metropolitan growth: two analytical models. San Francisco:
MacKinnon, R.1975. Controlling inter-regional migration processes of a Markovian type. Envi-
ronment and Planning A 7:781-92.
Mangalam, J. 1968. Human migration: a guide to migration literature in English 1955-1962.
Lexington, Ky.: University of Kentucky Press.
May, R. 1976. Simple mathematical models with very complicated dynamics. Nature 261:459-
Mera, K. 1971. An evaluation of gravity and linear programming transportation models for pre-
dicting interregional commodity flows. In Techniques of Transportation Planning, Vol. 1, ed.
J. Meyer, pp. 297-309. Washington: Brookings.
Milliff, R. 1980. Boundary condition specification for a model of geographical movement. M.A.
thesis, Department of Geography, University of California-Santa Barbara.
Morrill, R. 1967. The movement of persons and the transportation problem. In Quantitative
Geography, ed. W. Garrison and D. Marble, pp. 84-94. Northwestern University Studies in
Geography No. 14, Evanston, Illinois.
Morrison, P. 1973. Theoretical issues in the design of population mobility models. Environment
and Planning A 5:125-34.
Mueller, C. 1982. The economics of labor migration. New York: Academic Press.
Nijkamp, P. 1975. Reflections on gravity and entropy models. Regional Science and Urban
Olsson, G. 1965. Distance and human interaction. Philadelphia: Regional Science Research In-
Petersen, W. 1978. International migration. International Encyclopedia of the Social Sciences,
Pierson, G. 1973. The moving American. New York: A. Knopf.
Polenska, K. 1966. A case study of transportation models used in multiregional analysis. Ph.D.
dissertation, Department of Economics, Harvard University, Cambridge, Mass.
Price, D., and Sikes, M. 1975. Rural-urban migration research in the United States. Washington:
Department of Health, Education and Welfare.
Proskurowski, W., and Widlurid, 0., 1976. On the numerical solution of Helmholz’s equation by
the capacitance matrix method. Mathematics of Computation 30:433-68.
Pryor, R. 1981. Integrating international and internal migration theories. In Global trends in
migration, ed. M. Kritz. C. Keely, and S. Tomasi, pp. 110-29. New York: Center for
Quigley, J., and Weinberg, D. 1977. Intra-urban residential mobility: a review and synthesis.
International Regional Science Review 2:41-66.
Ravenstein, E. 1876. The birthplaces of the people and the laws of migration. The Geographical
Magazine 3:173-77, 201-6, 229-33.
_1885. The laws of migration. Journal of the Statistical Society 48.167-235
_1889. The laws of migration: second paper. Journal of the Royal Statistical Society 52:241-
Redford, A. 1964. Labour migration in England 1800-1850, 2nd ed. Manchester: The University
Ritchey, P. 1976. Explanations of migration, Annual Review of Sociology 2:363-404.
Rogers, A. 1968. Matrix analysis of interregional population growth and distribution. Berkeley:
University of California Press.
Samuelson, P. 1952. Spatial price equilibrium and linear programming. American Economic Re-
_1976. Economics. New York: McGraw-Hill.
Schneider, M. 1959. Gravity models and trip distribution theory. Papers and Proceedings of the
Regional Science Association 5:51-56.
Shaw, R. 1975. Migration: theory and fact. Philadelphia: Regional Science Research Institute.
Smith, T. 1978. A general efficiency principle of spatial interaction. In Spatial interaction theory
and planning models, ed. A. Karlqvist, L. Lundqvist, F. Snickers, and J. Weibull, pp. 97-118.
Amsterdam: North Holland.
Somermeyer, W. 1971. Multi-polar human flow models. Papers and Proceedings, the Regional
Science Association 26:131-44.
Southwell, H. 1956. Relaxation methods in theoretical physics, Vol. II. Oxford: Clarendon Press.
Speare, A., Goldstein, S., and Frey, W. 1974. Residential mobility, migration and metropolitan
change. Cambridge, Mass.: Ballinger.
Stewart, J. 1947. Empirical mathematical rules concerning the distribution and equilibrium of
population. Geographical Review 37:461-85.
Thomas, D. 1938. Research memorandum on migration differentials. Bulletin No. 43, Social
Science Research Council, New York.
Thornthwaite, W. 1934. Internal migration in the United States. Philadelphia: University of
Tobler, W. 1969. Geographical filters and their inverses. Geographical Analysis 1:234-253.
_1970. A computer movie simulating urban growth in the Detroit region. Economic Geography
_1979. A geographical migration probability density function. The Ontario Geographer 13:41-
_1981. A model of geographical movement. Geographical Analysis 13:1-20.
Tocalis, T., 1979. Changing theoretical foundations of the gravity concept of human interaction.
In The nature of change in geographical ideas, ed. B. Berry, pp. 65-124. Dekalb, III.
Northern Illinois University Press.
U.S. Bureau of the Census. 1973. Lifetime and recent migration. Subject Report PC (2)-2D.
Washington: Department of Commerce.
Wachspress, E. 1966. Iterative solution of elliptic systems. Englewood Cliffs, N. J.: Prentice-
Wansbeek, T. 1977. Least-squares estimation of trip distribution parameters. Transportation
Wardrop, J. 1952. Some theoretical aspects of road traffic research. Proceedings of the Institute
of Civil Engineers, Part Il, 1:325-378.
Weaver, T., and Downing, T., eds. 1976. Mexican migration. Tucson: University of Arizona,
Bureau of Ethnic Research.
Welch, R. 1971. Migration research and migration in Britain. Occasional Paper No. 14, Centre
for Urban and Regional Studies, Birmingham, England.
Willis, K. 1974. Problems in migration analysis, Westmead, England: Saxon House.
Wilson, A. 1967. A statistical theory of spatial distribution models. Transportation Research
Wolpert, J. 1965. Behavioral aspects of the decision to migrate. Papers and Proceedings of the
Regional Science Association 15:159-169.
Zipf, G. 1946. The P1P2 / D hypothesis: on the inter-city movement of persons. American
Sociological Review 11:677-686.
_1949. Human behavior and the principle of least effort. Cambridge. Mass.: Addison Wesley.
xAnnals of the Association of American Geographers, 73(1). 1983. pp. 1-17
© Copyright 1983 by Association of American Geographers.
*Geographisches Institut, Universität Zurich, CH-8033, Zürich, Switzerland.
†Department of Geography, University of California-Santa Barbara, Santa Barbara, CA 93106-
Table 1: Model Inputs
Region Insum Outsum I + 0 I - 0 1970
New England 675,408 679,180 1.354,588 —3,772 11,848,000
Mid Atlantic 1,155,811 1,874,320 3,030,131 —718,509 37,056,000
E North Central 1,789,112 2,134,267 3,923,379 —345,155 40,266,000
W North Central 942,162 1,212,105 2,154,267 —269,943 16,327,000
South Atlantic 2,484,387 1,765,650 4,250,007 718,737 29,920,000
E South Central 819,222 986,050 1,805,272 —166,828 13,096,000
W South Central 1,237,079 1.146,498 2,383,577 90,581 19,025,000
Mountain 1,067,069 987,331 2,054,400 79,738 8.289,000
Pacific 2,143,172 1,528,021 3,671,193 615,151 25.476,000
Source: U.S. Bureau of the Census (1973).
Table 2: Model Inputs
Distance between cities below the diagonal.
Length of border between regions above the diagonal.
All in miles.
1 2 3 4 5 6 7 8 9
1 NE: Boston — 301 0 0 0 0 0 0 0
2 MA: New York 219 — 91 0 350 0 0 0 0
3 ENC: Chicago 1,009 831 — 972 264 703 0 0 0
4 WNC: Omaha 1,514 1,336 505 — 0 166 755 937 0
5 SA: Charleston 974 755 1,019 1,370 — 1.295 0 0 0
6 ESC: Birmingham 1,268 1,049 662 888 482 — 1,140 0 0
7 WSC: Dallas 1,795 1,576 933 654 1,144 662 — 637 0
8 MTN: S Lake City 2.420 2,242 1,451 946 2,278 1,795 1,287 — 154
9 PAC: S Francisco 3,174 2,996 2,205 1.700 2,862 2,380 1,779 754 —
Table 7. Model Results. Estimated from Mij = Bij(Ri + Ej)
Push Pull Turnover Attractivity
Region (R) (E) (T= E + A) ( A = E - R)
New England 2,969 0 2,969 —2.969 0
Mid Atlantic 2,240 —715 1,525 —2.955 0
E North Central 1,440 —74 1,366 —1,514 13,611
W North Central 1,210 —24 1,186 —1,234 1,368,074
S Atlantic 1,886 618 2,504 —1,268 0
E South Central 106 —1,210 —1,104 —1,316 231,004
W South Central 1,221 106 1.327 —1,115 95,387
Mountain 43 —707 —664 —750 1,269,506
Pacific 1,698 1,347 3,045 —351 0
Figure 1. Push, pull, turnover, and attractivity values from the basic model (Table 3).
Figure 2. Push, pull, turnover, and attractivity values from the Mij = PiPj(Ri + Ej)/dlj model
Figure 3. Potential field, gradients, and streaklines for 1965/1970 from the model
Λ2 A = ∆, with ∂A/∂n = 0 on the boundary, solved as a system of 5,795 simultaneous equations.