Content uploaded by Júlio Hoffimann

Author content

All content in this area was uploaded by Júlio Hoffimann on Jun 24, 2019

Content may be subject to copyright.

Accepted Manuscript

Eﬃcient Variography with Partition VariogramsI

J´ulio Hoﬃmanna,∗, Bianca Zadroznya

aIBM Research Brazil

Abstract

Directional variograms were introduced in geostatistics as a tool for reveal-

ing major directions of correlation in spatial data. However, their estimation

presents some practical challenges, particularly in the case of large irregularly-

sampled data sets where eﬃcient spectral-based estimation methods are not

applicable. In this work, we propose a generalization of directional variograms

to general partitions of spatial data, and introduce a parallel estimation algo-

rithm that can eﬃciently handle large data sets with more than 105points. This

partition variogram generalization is motivated by a ﬁve-spot point pattern in

the petroleum industry, which we named more generally as the isolated-lines

arrangement. In such an arrangement, traditional estimators of directional var-

iograms such as r-tube estimators very often fail to incorporate measurements

from adjacent lines (e.g. vertical wells) without also incorporating measure-

ments from other planes (e.g. horizontal layers). We provide illustrations of

this new concept, and assess the approximation error of the proposed estima-

tors with bootstrap methods and synthetic Gaussian process data.

Keywords: Variography, Geostatistics, Partition variogram, Parallel

algorithm, Exploratory data analysis, Spatial correlation

1. Introduction

Physical processes on the Earth surface such as sediment transport by rivers

[1], and processes within the Earth crust such as those responsible for ore genesis

[2], very often show preferential directions at various spatial scales. Evidences of

these directions are left in geological formations (i.e. spatial data), and usually

coincide with directions of major spatial correlation [3,4,5]. Examples include

turbidite deposits that are aligned with the direction of turbidity currents, salt

domes that are aligned with the gravity ﬁeld of the Earth, and various other

examples of directional mineralization.

ISoftware is available at https://github.com/juliohm/GeoStats.jl

∗Corresponding author

Email addresses: julio.hoffimann@ibm.com (J´ulio Hoﬃmann), biancaz@br.ibm.com

(Bianca Zadrozny)

J´ulio developed the concepts and methods under Bianca’s supervision

Preprint submitted to Computers & Geosciences June 24, 2019

Discovering major directions of correlation in spatial data is therefore im-

portant to understanding the physical processes that created the data, as well

as to modeling the Earth, based on a limited and/or indirect set of measure-

ments. Tools like directional variograms were introduced in geostatistics for

exactly that purpose [6,7], yet their estimation presents some practical chal-

lenges, particularly in the case of irregularly-sampled data sets where eﬃcient

spectral-based estimation methods are not applicable [8,9,10,11]:

•Given a direction h, the number of pairs of points (p,q) that are aligned

with the direction, i.e. ∃t∈R:p−q=th, can be small. A tube ap-

proximation hr(t, θ) = th+r[Ncos(θ) + Bsin(θ)] with t∈R, θ ∈[0,2π]

is often employed to improve the variogram estimator [12,13], where ris

the radius of the tube, and Nand Bare normal and binormal directions

to h(see Figure 1).

•The problem with using tubes for estimating directional variograms is that

their radius ris constant as a function of the angle θaround the tube axis.

For point sets like the one illustrated in Figure 1, which may represent a

collection of vertical wells with large horizontal spacing, no tube exists that

includes points from adjacent wells (i.e. wells that are at a distance sfrom

the line p+thin Figure 1) without also including points from multiple

layers. We refer to this point pattern (or any of its aﬃne transformations)

as the isolated-lines arrangement. In such an arrangement, the estimation

of horizontal variograms with tube approximations is restricted to a subset

of wells that may not coincide with the subset of wells that the practitioner

is interested in including.

•Finally, modern data sets have a large number of irregularly-sampled

points (e.g. >105), and traditional algorithms for estimating directional

variograms with tube approximations become unfeasible. In a point set

with npoints, these algorithms perform an exhaustive search for points

pairs, and have O(n2) complexity [14,15].

Motivated by the isolated-lines arrangement in Figure 1, we propose a gen-

eralization of directional variograms to general partitions of spatial data, and

discuss how directional variograms are recovered with a speciﬁc partition func-

tion. We introduce a parallel algorithm for estimating variograms over general

partitions that is computationally eﬃcient, and prove favorable complexity in

comparison to traditional algorithms with tube approximations.

2

p

th

N

Bs

rθ

ϕ

Figure 1: Isolated-lines arrangement (e.g. vertical wells with large horizontal spacing)

illustrating practical challenges in estimating directional variograms. Given a direction

h= (1,0,0) and a reference point p, there are very few points qon the line p+th. A

r-tube is deﬁned to approximate the direction, optionally starting as a cone from point p.

A radius rdoes not exist that is appropriate for primarily including points distributed over

a horizontal plane. When the radius requals the well spacing s, all points belonging to the

vertical wells intersected by thare inappropriately included.

The paper is organized as follows. In section 2 we brieﬂy review the concepts

of directional variograms and r-tube estimators. In section 3, we introduce spa-

tial partition functions and a general procedure for partitioning spatial data.

In section 4, we deﬁne partition variograms as a generalization of directional

variograms to general partitions of spatial data, and introduce a parallel algo-

rithm for fast estimation. In section 5, we use synthetic data to evaluate the

performance of the proposed estimators on isolated-lines arrangements, as well

as other moderate to large point sets. In section 6, we provide conclusions and

point to possible research directions.

2. Directional variograms and r-tube estimators

Consider a compact d-dimensional Euclidean domain Ω = [0,1]d⊂Rdon

which square-integrable functions f∈L2(Ω) are deﬁned (for example 2D images

can be thought of as functions on [0,1]2), and operators oL:L2(Ω) →Ω×Rthat

evaluate f∈L2(Ω) at a ﬁnite set of locations L, thus producing observations of

the function oL(f) = {(xl, f (xl)): xl∈Ω, l ∈ L}. Consider also that f∈L2(Ω)

is a sample function of a stochastic process.

The directional variogram [6]

γh(t) = 1

2|Ω|ZΩ

[f(x+th)−f(x)]2dΩ (1)

describes the degree of spatial dependence of falong the direction hin the

volume |Ω|. In many applications, fis only revealed at a reduced set of locations.

3

For example, in petroleum engineering, drilling operators oLproduce training

sets oL(f) of borehole logging data. In this scenario, an estimator cγh(t) of the

unknown variogram is the empirical sum

cγh(t) = 1

2|Lh(t)|X

(i,j)∈Lh(t)

[f(xi)−f(xj)]2(2)

calculated from pairs of locations Lh(t) = {(i, j)∈ L × L :xi−xj=th}that

are aligned with h, and are separated by a lag t∈R. In practice, the number

of points aligned |Lh(t)|can be very small, which poses Equation 2 as not very

useful. A common approximation is to deﬁne a tube [12,13]

hr(t, θ) = th+r[Ncos(θ) + Bsin(θ)] (3)

within which all points are considered to be aligned with h. In Equation 3, a

tube of radius r(or simply r-tube) is drawn by varying the axial coordinate t,

and the angle coordinate θaround the axis h. The vectors Nand Bare normal

and binormal vectors to h. The deﬁnition of the r-tube can be anchored on a

speciﬁc point of reference p∈Ω (see Figure 1), and in this case it is modiﬁed

to start as a cone of a given angle ϕ, by letting the radius r(t) be a function of

the form

r(t) = (ttan ϕ, t < to

totan ϕ, t ≥to

(4)

This modiﬁcation in Equation 4 excludes points that are too close to p, and

that at the same time, are far from the axis h(i.e. points that are certainly not

aligned with h).

By using r-tubes, an alternative estimator dγh,r of the variogram can be

written. The equation is similar to Equation 2 with the only diﬀerence being

the set over which the summation is performed. Instead of the set of perfecly

aligned points Lh(t), we consider the set of points inside of the tube

Lh,r(t) = {(i, j )∈ L × L :d=xj−xi,kdk=t, kd−projhdk< r(t)}(5)

where projhddenotes the projection of donto h.

r-tube estimators were made popular by seminal open-source software in the

early days of applied geostatistics [12,13]. In spite of practical limitations such

as the inability to cope with isolated-lines arrangements, and low computational

performance on point sets of arbitrary spatial conﬁguration, they are nowadays

widely used to quantify directional correlations in spatial data. Incremental

improvements were proposed for the speciﬁc case of vertical lines in layered

horizontal systems (e.g. boreholes in tabular mineral deposits) such as the

ability to specify diﬀerent horizontal and vertical radii (e.g. GAMV of GSLIB).

However, these improvements are not ﬂexible enough to accommodate more

complex conﬁgurations, including folded geometries and faulted systems [16].

4

3. Spatial partition functions

Having reviewed the concept of directional variograms and r-tube estimators,

we introduce the notion of spatial partition functions, which can be used to

generalize the construction of the sets Lh(t) and Lh,r(t).

Consider an arbitrary partition Π(L) = SαLαof a ﬁnite set of locations.

There exists a function π:L × L → {0,1}, here termed the partition function,

deﬁned as

π(i, j) = (1,∃!α:i, j ∈ Lα

0,otherwise (6)

that indicates whether or not the locations i, j ∈ L belong to the same subset

Lα. Conversely, any function π:L × L → {0,1}induces a partition on Lby

the construction stated in Algorithm 1. In this algorithm, locations i∈ L are

visited in random order, and are added to a subset Lαwhenever the value of

the partition function π(i, j) is equal to 1 for a location j∈ Lα. In the case

that the value π(i, j) is equal to 0 for all subsets Lα∈Π(L), a new singleton

{i}is created, and added to the partition.

Algorithm 1: Partition induced by partition function

Input: L, π

Output: Π(L) = SαLα

Π(L)←∅// initialize partition as an empty set

for i∈ L // visit locations in random order

do

t←0// track when a location is inserted

for Lα∈Π(L)do

j∈ Lα// select any location in the subset

if π(i, j)7→ 1then

Lα← Lα∪ {i}// insert location

t←1

break

end

end

if t7→ 0then

Π(L)←Π(L)∪ {i}// add singleton to partition

end

end

return Π(L)

Algorithm 1 is non-deterministic. Each execution may induce a slightly

diﬀerent partition of the set Ldue to the random order in which locations are

visited. When the value π(i, j) of the function is expressed in terms of the

coordinates xi,xj∈Ω of the locations, the obtained partition Π(L) is termed

aspatial partition of Linduced by the spatial partition function π. In the

5

following sections, we give examples of spatial partition functions in preparation

for a more general deﬁnition of variograms.

3.1. Partition function for r-tubes

The function

πh,r,ϕ(i, j) = (1, θ < ϕ ∧ kdksin θ < r

0,otherwise (7)

with d=xj−xithe diﬀerence between coordinates, and with θ= cos−1hh,di

khk kdk

the angle between directions hand d, partitions Linto a collection of r-tubes.

In fact, given a reference location i∈ L with coordinates xi∈Ω, the value

πh,r,ϕ(i, j) informs whether or not a location j∈ L with coordinates xj∈Ω is

in the intersection of the cone of angle ϕ(i.e. θ < ϕ) with the tube of radius r

(i.e. kdksin θ < r) (see Figure 2).

xi

xj

r-tube

h

d

ϕ

θkdksin θ

r

Figure 2: The value πh,r,ϕ (i, j) informs whether or not the locations i, j ∈Ω belong to the

same r-tube. The pair of locations must be in the cone (i.e. θ < ϕ) and in the tube (i.e.

kdksin θ < r) for the value to be equal to πh,r,ϕ(i, j ) = 1.

Alternatively, πh,r,ϕ can be written in terms of Equation 4, in which case

the cone angle ϕis omitted:

πh,r =(1,kd−projhdk< r(t)

0,otherwise (8)

From Equation 8, it is clear that the set Lh,r (t) and the partition function πh,r

are intimately connected. Whereas the set Lh,r (t) is made of pairs of locations

that are separated by a given lag t, and that are inside of any tube; the function

πh,r partitions Linto a collection of r-tubes regardless of the lag. In section 4,

we make the connection clearer by writing directional variogram estimators in

terms of πh,r.

3.2. Other useful partition functions

3.2.1. Plane partitions

The function

πn,τ (i, j) = (1,hd,ni< τ

0,otherwise (9)

6

with unit vector nand tolerance τ, partitions Linto a family of planes orthog-

onal to n(see Figure 3). The parameter τin πn,τ and the parameter rin πh,r

play a similar role. In this case, the deﬁnition of the plane is relaxed to include

points that are near the plane, and inside of a 2τwindow.

xi

xj

ndhd,ni

τ

τ

Figure 3: The value πn,τ (i, j) informs whether or not the locations i, j ∈Ω belong to the

same τ-plane. The norm of the projection of the lag vector donto the unit normal nmust be

smaller than the tolerance τfor the value to be equal to πn,τ (i, h) = 1.

3.2.2. Equivalence relations

More generally, given an equivalence relation i≡jon the set L, the function

π≡(i, j)=(i≡j) partitions Linto equivalence classes. This means that any

binary relation satisfying reﬂexivity (i≡i), symmetry (i≡j⇐⇒ j≡i)

and transitivity (i≡j∧j≡k=⇒i≡k) can be used for partitioning spatial

data. Equivalence relations are special in the sense that the obtained partition

is unique. In other words, Algorithm 1 becomes deterministic in conjunction

with the partition function π≡.

3.2.3. Product partitions

Consider two partition functions π1and π2as deﬁned above. The func-

tion π1,2(i, j) = π1(i, j )π2(i, j) induces a partition on Lthat is the result of

overlaying the individual partitions obtained with π1and π2on the set of lo-

cations. The same partition is obtained regardless of the order of application

π1,2=π2,1. More generally, given π1, π2, . . . , πkpartition functions, the function

π1,2,...,k(i, j ) = π1,2,...,k−1(i, j)πk(i, j) deﬁned by induction, produces a product

partition on the set L. The greater is the number of terms kin the product,

the smaller are the sets making the partition, and the more sets there are.

In variography, a goal is often to ﬁnd a partition π1,2,...,k on which spatial

correlations are estimated. In one extreme, no partition is performed, i.e. a

trivial partition function πo(i, j)=1,∀i, j ∈ L is employed that produces the

original set of locations Πo(L) = {L}. In the other extreme, the set of locations

is partitioned into singletons Π=(L) = Sl∈L{l}by the equality relation =.

We write

|Πo(L)|≤|Π1,2,...,k (L)| ≤ |Π=(L)|(10)

7

to relate the sizes of the partitions induced by πo,π1,2,...,k, and π=, and note that

the correlations estimated on Πo(L) are omnidirectional, whereas no correlation

can be estimated from the singletons in Π=(L).

3.2.4. Hierarchical partitions

Consider again two partition functions π1and π2. This time we are interested

in the partition obtained by ﬁrst partitioning the set of locations Lwith π1, and

then partitioning each subset of the partition with π2. This hierarchical partition

denoted by Π1→2(L) is constructed with Algorithm 2.

Algorithm 2: Hierarchical partition induced by two partition functions

Input: L, π1, π2

Output: Π1→2(L)

Π1→2(L)←∅// initialize partition as an empty set

Π1(L)←SαLα// partition Lwith π1using Algorithm 1

for Lα∈Π1(L)do

Π2(Lα)←SβLα,β // partition Lαwith π2using Algorithm 1

for Lα,β ∈Π2(Lα)do

Π1→2(L)←Π1→2(L)∪ Lα,β // add set to partition

end

end

return Π1→2(L)

We abuse notation, and write π1→2to mean the execution of Algorithm 2

with partition functions π1and π2. Similarly, we write π1→2→ ··· →k=π1→(2→ ··· →k)

to mean the recursive execution of the algorithm on a sequence of partition

functions (π1, π2, . . . , πk). For clarity purposes, we refer to π1→2→·→kas a

hierarchical partition function in the rest of the paper.

4. Partition variograms

We need a few additional constructs in order to introduce the concept of

partition variograms. Consider a binning of the interval [0, T )⊂Rinto mbins

of size ∆t∈R,

[0, T ) =

m

[

b=1 h(b−1)∆t, b∆t(11)

and let Π(L) = SαLαbe the partition of Linduced by a partition function π.

Denote by

Lb

α=n(i, j)∈ Lα× Lα:kxj−xik ∈ h(b−1)∆t, b∆to (12)

the set of pairs of locations in Lαthat are separated by a lag t=kxj−xikin

the bin Ib=h(b−1)∆t, b∆t, and select a representative element tb∈Ibfrom

each bin (e.g. middle point).

8

A family of estimators

cγα(tb) = 1

2|Lb

α|X

(i,j)∈Lb

α

[f(xi)−f(xj)]2(13)

can be deﬁned that maps the discrete set of lags {t1, t2, . . . , tm}to estimated

values cγα(tb), b = 1,2, . . . , m, computed from pairs of locations inside the

corresponding bins. In the next section, we deﬁne partition variograms in terms

of the family cγα, and in terms of an operation ⊕deﬁned as follows.

Let nb

α=|Lb

α|be the number of pairs of points used to estimate cγα(tb), and

likewise let nb

β=|Lb

β|be the number of pairs of points used to estimate cγβ(tb).

A better estimator

[γα+β(tb) = nb

αcγα(tb) + nb

βcγβ(tb)

nb

α+nb

β

(14)

of the variogram at lag tbis obtained by weighted average. We deﬁne the merge

cγα⊕cγβof estimators cγαand cγβvia Equation 14:

(cγα⊕cγβ)(tb) = [γα+β(tb) (15)

for all lags {t1, t2, . . . , tm}.

4.1. Deﬁnition and connection with directional variograms

Deﬁnition (partition variogram). Let Π(L) = SαLαbe the partition induced

by a partition function π, and let cγαbe the corresponding family of estimators

deﬁned via a common binning [0, T ) = Sm

b=1 Ibwith tb∈Ibrepresentative lags.

The partition variogram

cγπ(tb) = M

αcγα(tb) (16)

is an estimator obtained by merging individual estimators cγαfor each set Lα

in the partition Π(L).

To illustrate the deﬁnition, we consider a few examples:

Directional estimator.Let πh,r be the partition function for r-tubes intro-

duced in Equation 8. Each Lαis a r-tube, and the binning of [0, T ) allows the

computation of cγαfor diﬀerent lags tb∈Ibinside the tube. By ﬁxing a refer-

ence location i∈ Lα, we can visualize the bins as concentric rings in Figure 4.

The resulting estimator [γπh,r is a (faster) alternative to the estimator dγh,r in

section 2.

Hierarchical estimator.As another example, let’s deﬁne a partition func-

tion for estimating variograms along horizontal directions in the isolated-lines

arrangement of Figure 1. We saw that the r-tube estimator, or equivalently the

partition function πh,r, is not appropriate for estimating horizontal variograms

9

xi

xj

Lα

h

d

I1

I2

I3I4I5

· · ·

Figure 4: Concentric rings Ib, b = 1,2,...,m given a reference location i∈ Lαinside r-tube.

The locations i, j ∈ Lαare placed in bin I3, and are used in Equation 13 to compute cγα(t3).

in this arrangement as it includes too many pairs of points from diﬀerent lay-

ers, when the intent is to only include points from adjacent wells on a common

layer. We are after a hierarchical partition function that ﬁrst partitions the

spatial data into planes, and only then partitions each plane into tubes aligned

with the desired direction. The function we are after is

πn,τ,h,r =π(n,τ )→(h,r)(17)

with τand radjustable tolerances, nthe normal direction to the planes (e.g.

(0,0,1)), and hthe direction along which the variogram is estimated (e.g.

(1,0,0)).

4.2. Parallel algorithm for estimation and its favorable complexity

Here we provide a parallel algorithm for the computation of partition vari-

ograms as deﬁned in Equation 16 for any partition function π. The algorithm

exploits the fact that the sets Lαmaking the partition Π(L) = SαLαare dis-

joint to combine multiple estimators in parallel.

Algorithm 3: Partition variogram

Input: oL(f), π, tb∈Ib, b = 1,2, . . . , m

Output: cγπ(tb), b = 1,2, . . . , m

Π(L)←SαLα// partition Lwith πusing Algorithm 1

for Lα∈Π(L)// process subsets Lαin parallel

do

Lα←Sm

b=1 Lb

α// partition Lαvia a common binning Sm

b=1 Ib

cγα(tb)←1

2|Lb

α|P(i,j)∈Lb

α[f(xi)−f(xj)]2, b = 1,2, . . . , m

end

cγπ(tb)←Lαcγα(tb)// merge estimators in parallel

return cγπ(tb), b = 1,2, . . . , m

Algorithm 3 is an instance of a computation pattern known by various

names like map-reduce [17], split-apply-combine [18], and more generally

10

divide-and-conquer [19]. We show that it has favorable complexity in com-

parison to algorithms that do not explicitly partition spatial data.

First, the worst-case complexity of Algorithm 1 is O(n·p) with n=|L|

the number of locations and p=|Π(L)|the number of subsets in the partition.

The algorithm visits each location l∈ L once, and assigns the location to one

of the subsets Lα⊆ L. In practice, the number of subsets in the resulting

partition is much smaller than the number of locations (i.e pn), and does

not change considerably with addition/removal of locations. Algorithm 1 is the

“split” step in the split-apply-combine pattern. Next, individual estimators

cγαare computed in parallel by the application of a function that takes a subset

Lαwith approximately n/p locations, partitions it into bins, and computes

the empirical sum of squares with Equation 13. This “apply” step is therefore

On

p2. Finally, the “combine” step takes the individual estimators cγαfor

each subset in the partition, and merges them in pairs, thus giving O(log2p).

The overall worst-case complexity is often dominated by On

p2, which is the

square of the average number of locations in each subset of the partition. This

complexity is much better than the complexity encountered without partitioning

the set of locations O(n2).

To illustrate the gain in performance, consider an arrangement of locations

Lwhose coordinates form a regular grid in Rd. Consider that the sides of

the grid are made of mdiscrete locations. The total number of locations

in the grid is therefore n=md. Suppose that the goal is to obtain an es-

timate of the directional variogram along one of the coordinate system axes

ei= (0,0,..., 1

|{z}

i-th index

,...,0,0) ∈Rd. We partition the locations into subsets

of perfectly aligned points with ei, and obtain a number of subsets equal to

p=md−1(e.g. partitioning a 2D regular grid with n=m2locations along the

direction (1,0), produces msubsets—the rows of the grid—with mlocations

each). The overall worst-case complexity is quadratic on the grid side:

On

p2

=Omd

md−12

=O(m2) (18)

Without partitioning the set of locations, the complexity would be quadratic on

the number of locations:

O(md)2=O(m2)d(19)

5. Experiments with Gaussian processes

To assess the approximation error of partition variograms, we design a set

of experiments with Gaussian processes. In the ﬁrst experiment, we assess

conﬁdence intervals for the estimators \γπn,τ,h,r (see Equation 17) and [γπh,r with

bootstrap methods [20]. In the second experiment, we assess the approximation

error of the estimator \γπn,τ,h,r as a function of the sample size.

11

Both experiments rely on a data generating process that we describe now.

First, we generate a single Gaussian realization with 1000 ×1000 ×50 voxels

using the spectral method [21], and an anisotropic theoretical variogram with

known horizontal and vertical ranges of 150 and 10 voxels. From this single

realization, which may represent a stratiﬁed rock, we randomly select a collection

of vertical wells that together make a ﬁve-spot pattern3. We choose a well

spacing of 50 voxels to purposefully create an arrangement of isolated vertical

lines (see Figure 5). Various spatial data sets are likewise created by random

horizontal translations of the obtained well collection. All these sets share the

same statistics due to the stationarity and ergodicity of the process [7].

Gaussian realization

1000×1000×50

Random selection of

five-spot pattern

2 ∗ 50

Isolated vertical lines

Figure 5: Data generating process. First, a 3D Gaussian realization with 1000 ×1000 ×50

voxels is generated with an anisotropic Gaussian variogram with known horizontal and vertical

ranges 150 and 10 voxels. Second, a ﬁve-spot pattern with horizontal spacing of 50 voxels is

randomly selected resulting in an isolated-lines arrangement.

5.1. Isolated-lines arrangement

We consider the estimation of the variogram along the direction h= (1,0,0)

based on ﬁve-spot observations drawn with the data generating process in Fig-

ure 5. Given that the number of wells perfectly aligned with the direction his

small (i.e. rows have either 4 or 5 wells), we investigate two approximations.

First, we use the r-tube estimator [γπh,r with r= 50 in an attempt to include

nearby wells drilled at adjacent rows in the ﬁve-spot. Second, we use a hierar-

chical estimator \γπn,τ,h,r that ﬁrst partitions the ﬁve-spot into horizontal planes

3In the petroleum industry, the ﬁve-spot pattern is a common pattern for enhanced oil

recovery: https://www.glossary.oilfield.slb.com/en/Terms/f/five_spot.aspx

12

orthogonal to n= (0,0,1) without tolerance (τ= 0), and then partitions each

plane into r-tubes with πh,r.

Samples of variogram estimates are shown in Figure 6 along with the ground

truth. The yellow region in the plots represents lags that are not present in the

ﬁve-spot, but are an artifact of r-tube partitioning. In this region, the estimator

[γπh,r is aﬀected by the vertical variability of the data (vertical range 10 voxels

<tube radius 50 voxels). For valid lags (grey region in the plots), the estimates

obtained with \γπh,r,n,τ approximate well the theoretical variogram.

0 100 200 300

0.0

0.5

1.0

1.5

2.0

t

γ(t)

theoretical variogram

d

γπh,r estimate

d

γπn,τ,h,r estimate

invalid lags

valid lags

0 100 200 300

0.0

0.5

1.0

1.5

2.0

t

γ(t)

theoretical variogram

d

γπh,r estimate

d

γπn,τ,h,r estimate

invalid lags

valid lags

Figure 6: Samples of variogram estimates obtained with \γπh,r and \γπh,r,n,τ for two diﬀerent

ﬁve-spot data sets. Yellow region represents lags that are not present in the ﬁve-spot, but

are an artifact of r-tube partitioning. Estimates obtained with the hierarchical estimator

\γπh,r,n,τ approximate well the ground truth for all valid lags in grey region.

By repeating the estimation procedure multiple times (e.g. 100 times) with

diﬀerent data sets, we obtain the box plots in Figure 7. The conﬁdence in-

tervals of the hierarchical estimator \γπh,r,n,τ are narrower than that of the r-

tube estimator [γπh,r . We illustrate the sensitivity of r-tube estimators to the

vertical range of the Gaussian process by varying the radius rfrom 1 to 15

voxels, and by computing the L1-norm error with the true Gaussian variogram

E[γπh,r (t)−γh(t)

1. In Figure 8, we highlight two cases: “A” with radius

r= 11 greater than the vertical range, and “B” with radius r= 5 smaller

than the vertical range. The estimate “A” is greatly aﬀected by the vertical

variability of the process, whereas the eﬀect on the estimate “B” is smaller.

5.2. Point sets of moderate size

In this second experiment, we assess the approximation error of the hi-

erarchical estimator \γπh,r,n,τ as a function of the sample size. We are no

longer assuming an isolated-lines arrangement. Instead, we select 104locations

randomly from the Gaussian realization in Figure 5, and iteratively discard

some of these locations to produce a sequence of point sets of increasing size

n= 1000,2000,...,10000.

For each size nof the point set, we run Algorithm 3 100 times to produce

the box plots in Figure 9. To quantify the approximation error, we again use

the L1-norm with the true Gaussian variogram

E\γπh,r,n,τ (t)−γh(t)

1. The

13

0 100 200 300

0.0

0.5

1.0

1.5

2.0

2.5

t

γ(t)

theoretical variogram

d

γπh,r estimate

invalid lags

valid lags

0 100 200 300

0.0

0.5

1.0

1.5

2.0

2.5

t

γ(t)

theoretical variogram

d

γπn,τ,h,r estimate

invalid lags

valid lags

Figure 7: Box plots for estimators \γπh,r and \γπh,r,n,τ computed with 100 data sets. Hierar-

chical estimator \γπh,r,n,τ has superior approximation properties, i.e. it is not aﬀected by the

short vertical range of the Gaussian process.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

0.0

0.5

1.0

1.5

2.0

B

A

r

||E[d

γh,r(t)]−γh(t)||1

L1-norm error

vertical range

sample estimates

0 100 200 300

0.0

0.5

1.0

1.5

2.0

A

t

γ(t)

d

γπh,r estimate, r=11

0 100 200 300

0.0

0.5

1.0

1.5

2.0

B

t

γ(t)

d

γπh,r estimate, r=5

Figure 8: Sensitivity of r-tube estimator \γπh,r to the radius rin an isolated-lines arrangement.

The estimate “A” with radius r= 11 is greatly aﬀected by the vertical variability of the process

(vertical range = 10), whereas the eﬀect on the estimate “B” with radius r= 5 is smaller.

estimator seems to quickly converge in the mean. Moreover, the conﬁdence

intervals are consistently increasing with the lag tfor all the points sets as

expected.

We emphasize that this experiment is computationally unfeasible with tra-

ditional O(n2) algorithms for directional variogram estimation. Not only the

point sets have moderate size (e.g. n= 104), the algorithm must be run 100

times for each point set.

6. Conclusions

In this work, we address the problem of estimating directional variograms on

large points sets of arbitrary spatial conﬁguration via a new family of partition

variogram estimators. We generalize the concept of directional variograms to

arbitrary partitions of spatial data, and show how directional variograms can

be estimated with a speciﬁc partition function.

14

0.50 0.75 1.00 1.25

1000

2000

3000

4000

5000

6000

7000

8000

9000

10000

A

B

C

D

E

||Ed

γπn,τ,h,r (t)−γh(t)||1

n

L1-norm error

sample estimates

0 50 100 150 200

0.0

0.5

1.0

1.5

A

t

γ(t)

d

γπn,τ,h,r estimate, n=1000

0 50 100 150 200

0.0

0.5

1.0

1.5

B

t

γ(t)

d

γπn,τ,h,r estimate, n=3000

0 50 100 150 200

0.0

0.5

1.0

1.5

C

t

γ(t)

d

γπn,τ,h,r estimate, n=5000

0 50 100 150 200

0.0

0.5

1.0

1.5

D

t

γ(t)

d

γπn,τ,h,r estimate, n=7000

0 50 100 150 200

0.0

0.5

1.0

1.5

E

t

γ(t)

d

γπn,τ,h,r estimate, n=9000

Figure 9: Approximation error of hierarchical estimator \γπh,r,n,τ as a function of sample size.

The estimator seems to quickly converge in the mean as illustrated by the highlights “A”,

“B”, “C”, “D”, and “E”.

We propose a parallel algorithm for estimation of partition variograms that

can eﬃciently handle point sets of sizes greater than 105. Our experiments

show that the estimates obtained with the proposed estimators have superior

approximation properties, when compared to traditional r-tube estimators in

point patterns like the isolated-lines arrangement—a pattern of great relevance

to the industry.

Partition variograms are quite ﬂexible, and we are curious about its future

applications. We envision this new family of estimators being used in complex

compartmentalized faulted systems, or in systems of well-deﬁned stratigraphy—

systems in which spatial partitions are natural. Future research could investigate

diﬀerent point patterns, and suggest novel hierarchical partitions for eﬃcient

variography.

15

Computer code availability

All concepts and methods developed in this paper are made available in

the GeoStats.jl project [22]. The project is hosted on GitHub under the ISC4

open-source license: https://github.com/juliohm/GeoStats.jl.

Extensive documentation can be found here. For any questions of use, please

contact our community or open an issue on GitHub.

References

[1] G. Nichols, Sedimentology and Stratigraphy, Wiley-Blackwell, 2009.

[2] A. Bekker, J. F. Slack, N. Planavsky, B. Krapeˇz, A. Hofmann, K. O. Kon-

hauser, O. J. Rouxel, Iron formation: The sedimentary product of a com-

plex interplay among mantle, tectonic, oceanic, and biospheric processes,

Economic Geology (2010).

[3] M. Lillah, J. B. Boisvert, Inference of locally varying anisotropy ﬁelds from

diverse data sources, Computers and Geosciences (2015).

[4] S. G. Roy, P. O. Koons, B. Osti, P. Upton, G. E. Tucker, Multi-scale

characterization of topographic anisotropy, Computers and Geosciences

(2016).

[5] J. B. Boisvert, C. V. Deutsch, Programs for kriging and sequential Gaussian

simulation with locally varying anisotropy using non-Euclidean distances,

Computers and Geosciences (2011).

[6] G. Matheron, F. Blondel, Trait´e de g´eostatistique appliqu´ee, Bureau de

recherches gologiques et minires, Paris, 1962.

[7] J.-P. Chil`es, P. Delﬁner, Geostatistics: Modeling Spatial Uncertainty, Wi-

ley, 2012.

[8] P. Frykman, T. A. Rogon, Anisotropy in pore networks analyzed with 2-D

autocorrelation (variomaps), Computers and Geosciences (1993).

[9] S. Pﬂeiderer, D. G. A. Ball, R. C. Bailey, AUTO: A computer program

for the determination of the two-dimensional autocorrelation function of

digital images, Computers and Geosciences (1993).

[10] D. Marcotte, Fast variogram computation with FFT, Computers and

Geosciences (1996).

[11] E. Pardo-Ig´uzquiza, P. A. Dowd, SPECSIM2: A program for spectral

simulation of anisotropic two-dimensional random ﬁelds, Computers and

Geosciences (2003).

4https://opensource.org/licenses/ISC

16

[12] C. V. Deutsch, A. G. Journel, GSLIB: Geostatistical Software Library and

User’s Guide (Applied Geostatistics), Oxford University Press, 1997.

[13] N. Remy, A. Boucher, J. Wu, Applied Geostatistics with SGeMS: A User’s

Guide, Cambridge University Press, 2009.

[14] V. Svitelman, O. Dinariev, Geostatistical approach to the anisotropy anal-

ysis of 3D rock microtomographic models, Computers and Geosciences

(2013).

[15] J. M. McKinley, C. D. Lloyd, A. H. Ruﬀell, Use of variography in perme-

ability characterization of visually homogeneous sandstone reservoirs with

examples from outcrop studies, 2004. doi:10.1023/B:MATG.0000041178.

73284.88.

[16] J. L. Deutsch, Variogram calculation with tabular deposits, 2015. URL:

http://geostatisticslessons.com/lessons/tabularvariograms.

[17] J. Dean, S. Ghemawat, Mapreduce: Simpliﬁed data processing on large

clusters, Journal of Communication Systems (2004).

[18] H. Wickham, The Split-Apply-Combine Strategy for Data Analysis, Jour-

nal of Statistical Software (2011).

[19] T. H. Cormen, C. E. Leiserson, R. L. Rivest, C. Stein, Introduction to

Algorithms, Third Edition (International Edition), The MIT Press, 2009.

[20] B. Efron, Bootstrap Methods: Another Look at the Jackknife, The Annals

of Statistics (2007).

[21] A. Gutjahr, B. Bullard, S. Hatch, General Joint Conditional Simulations

using a Fast Fourier Transform Method, Mathematical Geology 29 (1997).

[22] J. Hoﬃmann, Geostats.jl - high-performance geostatistics in julia, Journal

of Open Source Software 3 (2018) 692.

17