You are on page 1of 470

GeoComputation

Second Edition

Edited by
Robert J. Abrahart
Linda See
GeoComputation
Second Edition
GeoComputation
Second Edition

Edited by
Robert J. Abrahart
Linda See
MATLAB® is a trademark of The MathWorks, Inc. and is used with permission. The MathWorks does not warrant the accuracy
of the text or exercises in this book. This book’s use or discussion of MATLAB® software or related products does not consti-
tute endorsement or sponsorship by The MathWorks of a particular pedagogical approach or particular use of the MATLAB®
software.

CRC Press
Taylor & Francis Group
6000 Broken Sound Parkway NW, Suite 300
Boca Raton, FL 33487-2742

© 2014 by Taylor & Francis Group, LLC


CRC Press is an imprint of Taylor & Francis Group, an Informa business

No claim to original U.S. Government works


Version Date: 20140317

International Standard Book Number-13: 978-1-4665-0329-8 (eBook - PDF)

This book contains information obtained from authentic and highly regarded sources. Reasonable efforts have been made to
publish reliable data and information, but the author and publisher cannot assume responsibility for the validity of all materials
or the consequences of their use. The authors and publishers have attempted to trace the copyright holders of all material repro-
duced in this publication and apologize to copyright holders if permission to publish in this form has not been obtained. If any
copyright material has not been acknowledged please write and let us know so we may rectify in any future reprint.

Except as permitted under U.S. Copyright Law, no part of this book may be reprinted, reproduced, transmitted, or utilized in any
form by any electronic, mechanical, or other means, now known or hereafter invented, including photocopying, microfilming,
and recording, or in any information storage or retrieval system, without written permission from the publishers.

For permission to photocopy or use material electronically from this work, please access www.copyright.com (http://www.copy-
right.com/) or contact the Copyright Clearance Center, Inc. (CCC), 222 Rosewood Drive, Danvers, MA 01923, 978-750-8400.
CCC is a not-for-profit organization that provides licenses and registration for a variety of users. For organizations that have been
granted a photocopy license by the CCC, a separate system of payment has been arranged.

Trademark Notice: Product or corporate names may be trademarks or registered trademarks, and are used only for identifica-
tion and explanation without intent to infringe.
Visit the Taylor & Francis Web site at
http://www.taylorandfrancis.com

and the CRC Press Web site at


http://www.crcpress.com
Contents
Foreword...........................................................................................................................................vii
Preface by Robert J. Abrahart............................................................................................................ix
Preface by Linda See...................................................................................................................... xiii
Editors............................................................................................................................................... xv
Contributors....................................................................................................................................xvii
MATLAB Statement.......................................................................................................................xix

Chapter 1 GeoComputation........................................................................................................... 1
Stan Openshaw

Chapter 2 Modelling Spatial Morphologies: Fractal Patterns from Cellular Automata.............. 23


Michael Batty and Paul A. Longley

Chapter 3 Parallel Computing in Geography............................................................................... 49


Muhammed Adnan, Paul A. Longley, Alex D. Singleton and Ian Turton

Chapter 4 The Evolving GeoWeb................................................................................................ 69


Andrew Crooks, Andrew Hudson-Smith, Arie Croitoru and Anthony Stefanidis

Chapter 5 Geovisualisation as an Analytical Toolbox for Discovery.......................................... 97


Mark Gahegan

Chapter 6 GeoComputation: Applications in Biology............................................................... 125


Shawn W. Laffan

Chapter 7 Evolutionary Algorithms........................................................................................... 143


Alison Heppenstall and Kirk Harland

Chapter 8 Genetic Programming: Magic Bullet, Poisoned Chalice or


Two-Headed Monster?.............................................................................................169
Darren J. Beriro, Robert J. Abrahart and Gary Diplock

Chapter 9 Agent-Based Modelling............................................................................................. 203


Itzhak Benenson

Chapter 10 E-Research and GeoComputation............................................................................. 241


Mark Birkin and Nick Malleson

v
vi Contents

Chapter 11 Expert Systems for Planning and Spatial Decision Support..................................... 259
Demetris Demetriou, Linda See and John Stillwell

Chapter 12 Fuzzy Modelling....................................................................................................... 283


Peter F. Fisher and Vincent B. Robinson

Chapter 13 Neurocomputing for GeoComputation...................................................................... 307


Manfred M. Fischer and Robert J. Abrahart

Chapter 14 GeoComputation and Open-Source Software: Components and Software


Component Stacks..................................................................................................... 329
Roger S. Bivand

Chapter 15 Location-Based GeoComputation: Strategic Rethinking of the Opportunities


for Outdoor Research Afforded by Mobile Devices................................................. 357
Sam Meek, Gary Priestnall and Robert J. Abrahart

Chapter 16 Ubiquitous Computing, Spatial Big Data and Open GeoComputation..................... 377
Daniel Sui

Chapter 17 Embedded GeoComputation: Publishing Text, Data and Software in a


Reproducible Form.................................................................................................... 397
Chris Brunsdon

Chapter 18 Limits to GeoComputation........................................................................................ 417


Linda See

Chapter 19 GeoComputation in 2061.......................................................................................... 429


Keith C. Clarke
Foreword
Helping to lead GeoComputation and related research here in Silicon Valley in the twenty-first cen-
tury provides intriguing opportunities for reflection on its strengths, challenges, risks, and exciting
opportunities.
GPS-enabled mobile phones and other sensors provide nearly overwhelming streams of real-
time, geotagged big data. Distributed, remote satellite, and embedded sensors these days provide
far more comprehensive global coverage for traditional environmental sensing data, while Internet
of Things embedded sensors stream data reporting on just about all aspects of our personal, social,
professional, commercial, and industrial activities and infrastructure, from appliances of all kinds,
with sizes ranging from embedded medical microdevices to home thermostats, refrigerators, bicy-
cles, planes, trains, automobiles, industrial plants, and most aspects of security and performance
related to our transportation, industrial, and internet infrastructure.
Such human systems sensing has caught and far surpassed both the quantity and especially the
complex heterogeneous diversity of what used to be considered overwhelming volumes of satellite-
based remote sensing data.
Ubiquitous computing provides complementary CPU power to help us process the resulting
streams and floods of spatiotemporal data. Yet spatial, structural, and temporal analytics are far
more challenging than ordinary quantitative or text analytics; data scientists and computational
modelers skilled in effective machine learning algorithms, insight, and inference for such data and
systems are especially rare, just as they become needed now far more than ever.
GeoComputation and the chapters of this book address both the art and the science for effec-
tive modeling, analysis, and inference of vital complex dynamic spatiotemporal processes.
GeoComputation’s role in scientific and academic research and understanding becomes more
important than ever. Far more compellingly, our opportunities to invent and deploy highly effective
distributed human–computer collaborative insight and decision systems are more exciting than ever
and in greater need of GeoComputation human expertise, engagement, and guidance than ever.

Catherine Dibble, PhD


Chief Scientist for Data Insights
Dell Research, Dell Inc.
Santa Clara, California

vii
Preface by Robert J. Abrahart
GeoComputation was originally intended to be a simple reversal and stylish concatenation of
computational geography. It is the application of computing technology to geographical enquiry.
Nothing more. Nothing less. The originators of this newly coined term, additionally, were of the
opinion that it sounded like a Stan word (in recognition of Stan Openshaw’s key role in inspiring,
supporting and developing computational geography): delivering sufficient gravitas and possessing
popular appeal. Importantly, the subsequent high-standing and associated international recognition
of such a neologism signifies a major step in changed mind-sets. It was initially felt that a new ral-
lying point was needed for two key reasons. First and foremost was our desire to provide a recog-
nised home, family and regular meeting place for computational geographers. They were limited
in number and spread across many smaller fields of geography, so much so, that they might never
actually meet or interact! Moreover, some people, who were clearly doing computational geography,
were not based in geography departments, did not attend geography events and did not read geog-
raphy journals. Thus, meaningful networking and collaboration between like-minded parties was
highly unlikely, especially if they did not know that each other existed! Indeed, a feeling of mutual
belonging was considered to be an essential ingredient to facilitate the sharing of skills, ideas and
knowledge: a fundamental requirement if computational geography was to progress at anything
like the rapid rate of advances that were and still are occurring in both computer technology and
application development. It was all about facilitating communication. It was all about providing or
enhancing opportunities for cross-fertilisation. The second reason is the GIS Elephant. GIS was
and still is king! Anything to do with computers and geography was, and is still, frequently bundled
together and, irrespectively, is labelled as being GIS. To many, GIS is computational geography. If
you do it on a computer, you are doing GIS! Others still struggle with the “S” in GIS: does it stand
for system, science, studies, services or students? Some practitioners are only doing automated
map-based overlay or inventory operations and would certainly never claim to be scientists. Many
key players in the field simply insist that they are not doing GIS. End of story. Fresh thinking and a
clearer overall message was required, formulated under a different banner! Importantly, computa-
tional capability has changed dramatically since 2000. But have we seen a corresponding change in
the scale of questions and issues that are being addressed by geographers or GIS? How much atten-
tion, for example, is currently being paid to the eleven strategic research questions – identified in a
report by the National Research Council (2010) – which should ostensibly shape the next decade of
geographical sciences investigations?

1. How are we changing the physical environment of the Earth’s surface?


2. How can we best preserve biological diversity and protect endangered ecosystems?
3. How are climate and other environmental changes affecting the vulnerabilities of coupled
human–environment systems?
4. Where and how will 10 billion people live?
5. How will we sustainably feed everyone in the coming decade and beyond?
6. How does where we live affect our health?
7. How is the movement of people, goods and ideas changing the world?
8. How is economic globalisation affecting inequality?
9. How are geopolitical shifts influencing peace and stability?
10. How might we better observe, analyse and visualise a changing world?
11. What are the societal implications of citizen mapping and mapping citizens?

ix
x Preface by Robert J. Abrahart

The sheer size and global nature of many such problems perhaps suggests that they can only
be successfully addressed by massive computer power applied to rich spatial datasets. In the
early days of GIS, people were asking: where is the geographical equivalent of a HAL 9000
(Heuristically programmed ALgorithmic computer – a fictional sentient computer that unfortu-
nately malfunctioned and is immortalised in the now classic film 2001: A Space Odyssey)? They
were apparently looking for a Geo-HAL! In 2014, powerful desktop, mobile and cloud comput-
ing is prevalent. The Curiosity Rover is being driven, remotely, around Mars. The technology to
perform massive relevant undertakings is clearly available: so what is stopping us? Is it a fear to
tread boldly? Is it safer to do more parochial activities? And what if we do not rise to the chal-
lenges that confront us? I wonder how future geographers will view any current potential lethargy
in dealing with the fundamental concerns of our planet, assuming that geography still exists in a
post-disciplinary era.
The first edition of this book turned out to be something of an uphill challenge. I was clearly
a junior partner, who had very little editorial experience and no previous contact with publishers.
That book was four years in the making. It finally appeared four years after our First International
Conference on GeoComputation, held at Leeds, in 1996. Now, why so slow? (1) our originally
intended publisher pulled out; (2) by means of extensive persuasion, with us arguing that it was
not just a set of conference papers and with us agreeing to relinquish any royalties, a second pub-
lisher was eventually procured; (3) I had two major job changes during that period; and (4) Stan,
sadly, suffered a severely disabling stroke in 1999. Much of our material was by then, however, in
quite reasonable shape, so I was required to choose between either giving up, and walking away,
or soldiering on, and relying on massive help from other geographers, in particular Linda See (her
recollection of events is told in the following pages). Somewhat annoyingly, Longley et al. (1998)
were ‘much quicker off the mark’ in their rapid production and publication of Geocomputation:
A Primer. They got in first – but such is life! Given this blotted history, you can probably appre-
ciate that it was with some trepidation that I eventually agreed to compile a second edition of
GeoComputation. I was initially approached to do a revised edition by Irma Britton, editor for
environmental sciences and engineering, at Taylor & Francis Group, in August 2010. Linda was
once again at the top of my contact list and, with both of us firmly believing that manuscript
delivery would be a rapid and straightforward process, we opted to go for it. It needed doing
and somebody had to do it! The four-year journey that ensued proved to be a far more difficult
undertaking than either of us had ever imagined. Ill health and a major computer crash resulted
in many personal problems and delays, perhaps a stern reminder to us all that the First Law of
GeoComputation is a requirement to perform regular backups! The unprecedented demands of
a politically motivated academic assessment exercise is also in part responsible for substantial
holdups, by relegating book chapter production to a low priority status, such that much promised
material was often very slow in coming, necessitating constant editorial chasing and updating.
The artificial demands of such assessments are not exactly in keeping with the original concept
of an academy: a purported sanctuary of wisdom and skill. Extensive delay, moreover, meant
that we were not exactly flavour of the month with those authors who had delivered, punctually,
as requested. I suppose it is good to be consistent in that producing each book took four years
from start to finish, but it would surely be better to be consistently fast as opposed to consistently
slow. The overall message is nevertheless clear and will hopefully deliver a sound warning to
future prospective editors: do not underestimate the potential difficulties involved in such matters.
Indeed, as they say, one should always expect the unexpected and adopt the axiom ‘if something
can go wrong, it will’!
This book is intended to educate its readers. It also seeks to develop and expand a computational
culture, one that can exploit the ever-increasing richness of modern geographical and geospatial
datasets (i.e. not just spatial, but encompassing considerations of both space and place, since solely
focussing on the former can hinder proper understanding of important issues). Each chapter is an
Preface by Robert J. Abrahart xi

invited contribution from one or more specialists in that field. Support and guidance from these
cutting-edge researchers, with their individual strengths and detailed knowledge of each subject,
has remained instrumental in helping formulate, develop and shape the roots of an up-and-coming,
rapidly developing scientific nucleus. Each chapter is also a stand-alone entity that covers a particu-
lar topic. Interested readers can simply dip in and out or read it from cover to cover. The original
opening chapter by Stan Openshaw has been deliberately and purposely retained, with only a lim-
ited number of minor essential modifications. This is not just a matter of respect. It is eloquent,
prophetic, and his overall message remains largely unchanged. This book, more specifically, is not
a grab-bag of conference papers; neither is it devoted to a particular subset of geography, such as
spatial analysis, sustainability or urban and environmental planning, or, indeed, to a particular sub-
set of computing, such as grid, parallel or high-performance computing. Such compendiums can be
readily sourced on the Internet. However, whilst important in disseminating key material to certain
specialist groups, conference compilations do not typically address the fundamental goal of build-
ing solid research foundations, or of promoting subsequent growth and development, in an up-and-
coming field such as computational geography. Neither do they expressly assist in the construction
of a unified field or help in training up, and inspiring, the next generation of students, since they are
principally designed for existing experts, such that they are guilty of preaching to the converted, and
their target audience perhaps resides in some more distant corner of the academy. Such books are
perhaps best placed in library collections – read once, and seldom returned to! GeoComputation, in
direct contrast, is specifically intended to act as an instructional guide for both new and established
participants – one that is kept on your shelf – for ease of use and regular access as and when the
need arises.
I wonder, in closing, what sort of person reads a preface? Is it meant to contain additional
valuable information or, instead, is it simply an opportunity for an editor to add a few personal
statements? The joint preface in our original edition contained much useful material and is still
worth reading. It attempted to explain that GeoComputation was not a minority sport. It seeks to
gain an understanding of matters principally through the use and analysis of mathematical mod-
els and by computer simulation of processes performed using, and being totally dependent upon,
the availability of computing power. It is a largely or wholly computational approach that seeks
to gain an understanding of (1) the world around us and (2) our position within it. The original
book was also instrumental in seeking to explain that computer science is about using computers
to study scientific problems and in so doing aims to complement the use of theory and experimen-
tation in scientific investigation, not to degrade or replace it. It was not a book about computers.
It was certainly not about computing for computing’s sake. It was about performing geographical
enquiry. Curiously, few people ever mention the opposite argument, about possibly doing theory
for theory’s sake! I wonder why. Likewise, questions are sometimes raised about a lack of support-
ing theory – yet, since it is geographical enquiry that is being performed, any computational activ-
ity involved will be resplendent with much past and present geographical theory. Finally, more
effort is required to help shake off old numerical stigmas, which are perhaps best summarised by
means of what is sometimes reported as a well-known joke—there are three kinds of geographers:
those who can count and those who cannot (Barnes and Hannah, 2001). Indeed, in the twenty-first
century, geographers might perhaps be better grouped into 10 types: those who understand binary
and those who do not!
I am of course indebted to the chapter authors. If they had not agreed to write their chapters,
delivered their material or reviewed each other’s chapters, no second edition would exist. I am also
indebted to several members of the staff at Taylor & Francis Group, in particular Irma Britton, who
never gave up on us! Thank you authors! Thank you Irma!

Robert J. Abrahart
Nottingham, United Kingdom
xii Preface by Robert J. Abrahart

REFERENCES
Barnes, T. and Hannah, M. (2001) The place of numbers: histories, geographies and theories of quantification.
Environment and Planning D: Society and Space 19(4): 379–383.
Longley, P.A., Brooks, S.M., McDonnell, R., and MacMillan, B. (1988) Geocomputation: A Primer. Chichester,
U.K.: John Wiley & Sons.
National Research Council (2010) Understanding the Changing Planet: Strategic Directions for the
Geographical Sciences. Washington, DC: National Academy of Sciences/National Academies Press.
Preface by Linda See
In 1996, I attended the first GeoComputation conference in Leeds as a first-year PhD student of
Professor Stan Openshaw at the Centre for Computational Geography, University of Leeds. Stan’s
great enthusiasm for this newly formed field of GeoComputation was a great motivator for anyone
who worked with him back then or saw him speak and quite literally captivate audiences. I saw the
first edition of GeoComputation come together through my time as a student, and I read the numer-
ous contributions with great interest. In editing the second edition more than 10 years later, I now find
myself working in a radically changed environment. There have been amazing advances in technol-
ogy, ever-increasing amounts of big spatial data to contend with, many open-source initiatives and
citizen involvement in generating maps and collecting spatial data. Yet despite these changes, Stan’s
original chapter from the first edition has been left in this second edition virtually untouched. Stan’s
chapter still resonates today as it did back in 2000, containing many valuable messages that are a
tribute to his visionary musings about GeoComputation and a testimony to one of the great thinkers
in the spatial sciences more generally. The chapter also serves to highlight the debates about the
term GeoComputation that took place around the time the book was published. Stan expressed very
strong ideas about what GeoComputation is (and is not!) back in 2000. Looking across the subjects
of the different chapters in the book, I would argue that the material today still strongly captures the
essence of his original definition.
The rest of the book has changed considerably since the first edition. Some chapters have been updated
to reflect new developments while others have been rewritten by different authors with fresh perspec-
tives on the material. There are a number of new chapters by leading researchers in their fields covering
topics such as agent-based modelling, reproducible research, open-source software, the GeoWeb, ubiq-
uitous computing and location-based GeoComputation. These additions reflect developments that have
come to the fore or gained in importance since the first edition was published. Although genetic algo-
rithms and genetic programming are different methods within the broader field of evolutionary comput-
ing, separate chapters are devoted to each of these topics to reflect quite separate developments but also
the different types of applications to which these methods have been applied. The book is rounded off
with an entertaining reflection on what GeoComputation will look like in 2061. This chapter by Keith
Clarke was written very much in the spirit of how Stan has written his many papers and books in the
past. Whether this vision of GeoComputation will come true still remains to be seen. However, in the
short term, we can follow the progress of the field in the biennial GeoComputation conference series
that continues to thrive and inspire researchers in this field and in the many spatial journals that publish
the types of research that are of relevance to GeoComputation. I hope you find these new and updated
chapters as engaging and informative as I did when I first read the book many years ago.

Linda See
London (CASA) and Laxenburg (IIASA)

xiii
Editors
Dr. Robert J. Abrahart was born and raised in South West London. He holds a BSc in geography
(University of Leicester), an MSc in information technology for management (Coventry University),
an MSc in geographical information systems (University of Leicester), and a PhD in neural network
hydrological modelling (University of Leeds). He currently serves as an associate professor in the
School of Geography at the University of Nottingham, UK, with previous GIS lectureships held in
the School of Earth and Environmental Sciences at the University of Greenwich, UK, and in the
Department of Geography at University College Cork, Ireland. Dr. Abrahart has co-edited 4 books
and published over 75 research-related peer-reviewed papers and book chapters. He is a former chair
of the Royal Geographical Society GI Science Research Group, a former chair of the European
Geophysical Union Hydrological Sciences Sub-Division on Hydroinformatics, a former associ-
ate editor for Water Resources Research and one of the original co-founders of the International
Conference Series on GeoComputation.
Dr. Abrahart is a computational geographer with specialist research interests in machine learning
and fuzzy logic applications, especially in the field of hydroinformatics. The latter is an emergent
subject, which has developed over the past decade, and is today recognised as being an established
field of independent research that encompasses numerous scientific domains. He has a long-standing
commitment to bridging the gap that exists between applied computer science, as a solution genera-
tor, and quantitative geographical analysis, as a problem stakeholder. In many ways, a substantial
amount of important research currently performed by the geospatial community is still restricted to
outdated model structures, together with underpowered and inappropriate statistical or map-based
procedures, that tend to prolong the use of legacy methodologies and mindsets. Time-honoured
mechanisms, however, are unable to satisfy the data processing needs and analytical requirements
of society in an era of spatial big data and the sentient city.
His other principal interests are chess and amateur astronomy.

Dr. Linda See holds an honorary senior lectureship in the Centre for Advanced Spatial Analysis
(CASA) at University College London (UCL). She is also a Research Scholar in the Ecosystem
Services and Management Program at the International Institute for Applied Systems Analysis
(IIASA) in Austria. She earned a PhD under Professor Stan Openshaw at the Centre for
Computational Geography, University of Leeds, just as the field of GeoComputation began to
develop. During her decade as a senior lecturer in GIS in the School of Geography, University of
Leeds, her research interests were focused on using fuzzy logic, neural networks, genetic algo-
rithms and agent-based modelling to solve a range of geographical problems from forecasting
floods to models of land-use change. More recently, her research has moved to crowdsourcing for
validation of land cover, where she is part of the Geo-Wiki team at IIASA. Her recent publications
have focused on the use of crowdsourced data to validate and create new land cover maps as well
as on assessing the quality of this rapidly growing source of information.

xv
Contributors
Robert J. Abrahart Keith C. Clarke
School of Geography Department of Geography
University of Nottingham University of California, Santa Barbara
Nottingham, United Kingdom Santa Barbara, California

Muhammed Adnan Arie Croitoru


Department of Geography Department of Geography and
University College London Geoinformation Science
London, United Kingdom George Mason University
Fairfax, Virginia
Michael Batty
Department of Geography Andrew Crooks
Centre for Advanced Spatial Analysis Department of Computational
University College London Social Science
London, United Kingdom George Mason University
Fairfax, Virginia
Itzhak Benenson
Department of Geography and Human Demetris Demetriou
Environment School of Geography
Tel-Aviv University University of Leeds
Tel-Aviv, Israel Leeds, United Kingdom

Darren J. Beriro Gary Diplock


School of Geography Callcredit Information Group Limited
University of Nottingham Leeds, United Kingdom
Nottingham, United Kingdom
Manfred M. Fischer
Mark Birkin Institute of Economic Geography
School of Geography and GIScience
University of Leeds Vienna University of Economics
Leeds, United Kingdom and Business
Vienna, Austria
Roger S. Bivand
Department of Economics Peter F. Fisher
Norwegian School of Economics Department of Geography
Bergen, Norway University of Leicester
Leicester, United Kingdom
Chris Brunsdon
Department of Geography and Planning Mark Gahegan
School of Environmental Sciences Centre for eResearch
University of Liverpool University of Auckland
Liverpool, United Kingdom Auckland, New Zealand

xvii
xviii Contributors

Kirk Harland Vincent B. Robinson


School of Geography Department of Geography
Centre for Applied Spatial Analysis and Policy University of Toronto
University of Leeds Toronto, Ontario, Canada
Leeds, United Kingdom

Alison Heppenstall Linda See


School of Geography Centre for Advanced Spatial Analysis
Centre for Applied Spatial Analysis and Policy University College London
University of Leeds London, United Kingdom
Leeds, United Kingdom and
Andrew Hudson-Smith Ecosystems Services and Management
Centre for Advanced Spatial Analysis Program
University College London International Institute for Applied
London, United Kingdom Systems Analysis
Laxenburg, Austria
Shawn W. Laffan
School of Biological, Earth and Environmental
Sciences Alex D. Singleton
University of New South Wales Department of Civic Design
Sydney, New South Wales, Australia School of Environmental Sciences
University of Liverpool
Paul A. Longley
Liverpool, United Kingdom
Department of Geography
and
Centre for Advanced Spatial Analysis
University College London Anthony Stefanidis
London, United Kingdom Department of Geography and
Geoinformation Science
Nick Malleson George Mason University
School of Geography Fairfax, Virginia
Centre for Applied Spatial Analysis and Policy
University of Leeds
Leeds, United Kingdom John Stillwell
School of Geography
Sam Meek Centre for Applied Spatial Analysis and Policy
Nottingham Geospatial Institute University of Leeds
University of Nottingham Leeds, United Kingdom
Nottingham, United Kingdom

Stan Openshaw Daniel Sui


Centre for Computational Geography Department of Geography
University of Leeds Ohio State University
Leeds, United Kingdom Columbus, Ohio

Gary Priestnall
School of Geography Ian Turton
University of Nottingham Envitia Ltd
Nottingham, United Kingdom West Sussex, United Kingdom
MATLAB Statement
MATLAB® is a registered trademark of The MathWorks, Inc. For product information,
please contact:
The MathWorks, Inc.
3 Apple Hill Drive
Natick, MA 01760-2098 USA
Tel: 508-647-7000
Fax: 508-647-7001
E-mail: info@mathworks.com
Web: www.mathworks.com

xix
1 GeoComputation
Stan Openshaw

CONTENTS
1.1 Introduction...............................................................................................................................1
1.2 Origins.......................................................................................................................................1
1.3 So What Is Distinctive about GeoComputation?.......................................................................3
1.4 How Does GeoComputation Relate to Quantitative Geography?.............................................4
1.5 What Do Others Say about GeoComputation?..........................................................................5
1.6 GeoComputation Research........................................................................................................9
1.7 Some Examples of Old and New GeoComputation................................................................ 11
1.7.1 Parallel Spatial Interaction Modelling and Location Optimisation............................ 11
1.7.2 New Parameter Estimation Methods........................................................................... 12
1.7.3 Network and Location Optimisation........................................................................... 13
1.7.4 Automated Modelling Systems.................................................................................... 13
1.7.5 Parallel Zone Design and Optimal Geographical Partitioning................................... 14
1.7.6 Parallel Spatial Classification Methods....................................................................... 15
1.7.7 Parallel Geographical Pattern and Relationship Spotters........................................... 15
1.7.8 Building Geographical Knowledge Systems............................................................... 16
1.8 GeoComputation and Future Geographers.............................................................................. 17
References......................................................................................................................................... 19

1.1 INTRODUCTION
GeoComputation (GC) is new, exciting and here, but what is it? Some writers seem to think it has
been around as long as there have been computers being used in geography, whilst others think that
GC is more or less a brand-new invention. There is seemingly an understandable confusion, so the
purpose of this chapter is to examine some of the alternative definitions, identify the more appropri-
ate ones and then outline some examples of what it may mean in practice.

1.2 ORIGINS
GC is linked by name to what is broadly termed computational science with which it is clearly
related and shares many of its aims. Computational science is a relatively new multidisciplinary
paradigm for doing science in the late twentieth century. As yet, there is no general consensus as
to a precise definition of what computational science actually is. In broad terms, computational
science involves using computers to study scientific problems and it seeks to complement the use
of theory and experimentation in scientific investigation. It seeks to gain understanding principally
through the use and analysis of mathematical models and computer simulation of processes per-
formed using, and often totally dependent upon, the availability of high-performance computers. It
is a largely or wholly computational approach to scientific investigation in which computer power is
used to supplement and perhaps in some areas supplant more traditional scientific tools. Indeed once
computer hardware became fast and big enough and numerical methodologies clever or flexible
enough, then a computational paradigm provided a substitute for physical experimentation. It allows

1
2 GeoComputation

the visualisation of hitherto unseen scientific processes, and it offers a basis for the simulation of
complex systems which are too difficult for economical study by any other route. Computation per-
mits the investigator to test theory by simulation, to create new theory by experimentation, to obtain
a view of the previously invisible, to explore the previously unexplorable and to model the previ-
ously unmodellable. There is clearly considerable potential here that will be released in the new
millennium as computer speeds increase and a computational paradigm becomes a more common
paradigm for doing science in many more areas of scientific interest. It is probably as unavoidable as
it is inevitable but with the greatest developments having to wait for both faster computers and new
generations of computationally minded scientists.
So in science, there is now a strong and growing trend favouring a computational paradigm.
Indeed, many scientific experiments and investigations that were once performed in a laboratory, a
wind tunnel, or in the field are now being increasingly augmented or replaced by purely computa-
tional alternatives. A common feature of computational science is that there appears to be an under-
lying implicit belief that the quality of the science depends in some way on the speed of the fastest
available computers. As computers have become faster, computational science has emerged as a
powerful and increasingly indispensable method of analysing a variety of problems in research, pro-
cess development and manufacturing. It is now being widely advocated and increasingly accepted
as a third methodology in engineering and scientific research that fills a gap between physical
experiments and analytical approaches. Computer simulations now provide both qualitative and
quantitative insights into many phenomena that are too complex to be dealt with by analytical
methods and which are too expensive or dangerous to study by physical experiments. For example,
the prohibition of atmospheric and underground nuclear weapons testing has stimulated the need to
be able to simulate nuclear explosions by numerical means. In the United States, this military need
has resulted in the Accelerated Strategic Computing Initiative (ASCI) which will eventually serve
many more civilian applications than purely military ones. Indeed it has already spawned the first
teraflop computers. In 1998, these were about 30 times faster than previous machines, for example,
the Cray T3E 1200 at Manchester, United Kingdom. So it is likely that the early years of the twenty-
first century will see increasing availability of teraflop supercomputers and hardware that will be
useful in many other areas including GC. As high-performance computing (HPC) becomes faster,
it stimulates entirely new areas of application which were previously computationally infeasible and
generally unthinkable.
The emergence of computational science is not a particularly new phenomenon although it is one
which has gathered speed throughout the 1990s. The availability of high-performance computers,
high-performance graphic workstations and high-speed networks, coupled with major advances in
algorithms and software, has brought about a silent revolution in the way many scientific and engi-
neering investigations are performed. In 1998, most of the UK research councils had for the first time
a 6-year programme of committed baseline investment in HPC following the inauguration of the
SCAR service late in 1998. See Birkin and Malleson (2014) in this book for an update on e-Research.
Nevertheless, it should be readily apparent that there are similar attractions for a computational
style of approach in geography and the social sciences. GC can be regarded, therefore, as the appli-
cation of a computational science paradigm to study a wide range of problems in geographical and
earth systems (the geo) contexts. Note that the geo includes human as well as physical systems. This
extension of the computational paradigm is such an obvious development that it may be a surprise
to discover that the word GeoComputation which seems so generically applicable was only recently
invented. Such is the power of language that a word is almost instantly able to describe whole areas
of research that have existed for two decades or more before the term was invented. A similar claim
could be made for GIS which, when it entered common usage aptly and almost instantly, described
many pre-existing areas of research and provided a central focus for their subsequent development
and dissemination.
The word GeoComputation first appeared in the author’s spellchecker dictionary after cof-
fee time discussions relating to a computational geography conference being planned for 1996 in
GeoComputation 3

Leeds. Two years earlier, the School of Geography in Leeds had created a Centre for Computational
Geography. The original intention was to develop a new computational paradigm for doing human
geography, but subsequently the human focus was de-emphasised as it became readily apparent
that it was equally applicable to many areas of physical geography. Openshaw (1994a,b, 1995a)
describes various attempts at devising a computational human geography (CHG) research agenda.
However, a major difficulty was that the ideas and methodologies being advocated in CHG seemed
to be far more attractive to physical geographers than to human geographers! This difficulty is
neatly and instantly resolved by using the term GeoComputation. The new word is also a useful
device for further broadening the attractions of a computational paradigm. However, the study of
earth systems is now of interest to a whole host of disciplines, many of which share common inter-
ests and common methodologies. Would they now feel left out in the development of computational
geography? The words computational geography were just too parochial and restricting. It also
limited the scope of the computational to geographers and would have excluded other disciplines
that may have wanted to be involved because they too study geo-contexts. Maybe only a non-
geographer would have dared say as much. So it was an ice geographer (Tavi Murray) who (either
deliberately or accidentally – which is now lost in the coffee-flavoured mists of time) invented the
term GeoComputation as a more meaningful alternative to computational geography. At a stroke,
she changed the original words computational human geography into something far more general
(GeoComputation) that was instantly understood and which applied equally to many physical and
human phenomena and was also inherently multidisciplinary. The subsequent use of a capital C in
the middle of the word GeoComputation can be attributed to Bob Abrahart. It is designed to empha-
sise the importance of the computation component and hence emphasise this very distinctive char-
acteristic. It is a pity that the first book on GC dropped the upper-case middle C; it is said because
the publishers did not like it! Here, we think that it is of sufficient importance as a distinctive logo
and trademark and have put it back!

1.3  SO WHAT IS DISTINCTIVE ABOUT GEOCOMPUTATION?


GC is not just the application of computers in geography nor is it just about computation for its own
sake. It is meant to imply the adoption of a large-scale computationally intensive scientific paradigm
as a tool for doing all manner of geographical research. Some will now claim they have been doing
GC for 10 or 30 years or more. This is certainly possible, but if they were then, until 1996, it was
certainly called something else; terms such as mathematical modelling, simulation and statistical
modelling all spring to mind.
There are three aspects which make GC special. Firstly, there is an emphasis on the geo subjects.
This is partly a disciplinary focus to the areas of interest, but it is more than geography. GC is con-
cerned with geographical or spatial information of all types but until recently the distinctiveness
of geographical data had been lost. In much of the quantitative work in geography, the geo-aspects
were either completely missing or underdeveloped and underemphasised. It may now appear really
weird that so many of the quantitative methods used in geography were (and still are) geo-poor!
Somehow the geo was left out, except as a description of the data source being used. Geographical
data were, it seems, the same as any other data, and methods used in the more advanced physi-
cal sciences could be imported unchanged into geography. Indeed they were, and this provided
the basis for the quantitative revolution in geography, a process that lasted about 30 years (from
the early 1960s onward) and saw the introduction of a whole host of statistical and mathematical
analysis and modelling methods. Unfortunately, many geographers were slow to realise the unique
and special features of geographical data that limited or rendered invalid many of these early quan-
titative and science-based tools. Mention can be made here that spatial data constitute populations
(rather than samples) of spatially dependent (rather than independent) data. Likewise, the lack of
applicability of stationarity assumptions and the substitution of the local for the global all mas-
sively complicate geographical study. Gradually as data environments became richer and computers
4 GeoComputation

faster, more spatially appropriate methods have started to emerge, but much of the damage still
needs to be undone. The geo is extremely important and distinctive, and sadly, it has historically
been de-emphasised far too much because of the additional complexity that a more explicit recogni-
tion would have caused. Today this is no longer an acceptable excuse.
Secondly, the computation subphrase in GC is also special. It is the intensity of the computation
that is especially distinctive. As computers become faster the very concept of a solution changes.
GC is about finding new or better solutions to existing problems via a computational route. It also
involves thinking about tackling new classes of problems that previously were unthinkable or insol-
uble. The hope is that it is now becoming possible to compute solutions to previously insoluble
problems, to compute improved solutions to other problems and to begin to identify new ways of
working and new subjects for study that are computational in their methodology.
Thirdly, just as important and maybe even more significant is the underlying mindset. Computers
can be used for many different purposes and to argue that number crunching is a distinctive feature
ignores the fact that a spreadsheet is also a number crunching device, whilst processing 100 mil-
lion billion characters would not seemingly involve many megaflops! Computation implies a very
particular paradigm based on numerical approximation rather than analytical precision. It can be
based on data-driven high-performance computer-powered inductive tools rather than data-free,
analytically based, deductive methods. It involves trying to compute solutions to problems that
could not previously be solved at all. It is based on substituting vast amounts of computation as a
substitute for missing knowledge or theory and even to augment intelligence. It could be data driven
in a data mining sense, or it could be entirely data-free with large-scale computer experimentation
being used as a purely theoretical tool for understanding how complex systems work via modelling
and simulation of their dynamics and behaviours.

1.4 HOW DOES GEOCOMPUTATION RELATE TO


QUANTITATIVE GEOGRAPHY?
It is quite simple. GC includes all the tools of quantitative geography, but it also encompasses
far more than quantitative geography ever did as it has a very different emphasis. It also has the
potential to negate most of the weaknesses and to reexpress quantitative geography in a form
more suitable for the twenty-first century; see Openshaw (1998a). Also, GC offers a new perspec-
tive and a paradigm for applying science in a geographical context. It is true that superficially it
does not seem to be much different from quantitative geography. It is merely (some critics will
argue) the application of operationally intensive approaches to the problems of doing physical and
human geography in particular and the geosciences in general. Indeed it is, but it is important to
appreciate what this means and to try and understand some of the potential power of adopting a
computational paradigm that views statistical methods as only one small part of a far more flexible
and expansive toolbox.
GC is concerned with new computational techniques, algorithms and paradigms that are depen-
dent upon and can take advantage of HPC. In fact, it involves four leading edge technologies:

1. GIS, which creates the data


2. Artificial intelligence (AI) and computational intelligence (CI), which provide smart tools
3. HPC, which provides the power
4. Science, which provides the philosophy

So GC is much more than just using computers in geography and neither is it an attempt to rejuve-
nate a moribund quantitative geography in the style of 30 years ago! It is simultaneously a tool, a
paradigm and a way of thinking. It is not just about using computers to do arithmetic; it is the scale
or amount of arithmetic computation that makes it distinctive! As high-performance computers
become faster and larger, the attractions of developing computational approaches increase its appeal
GeoComputation 5

and feasibility. It can be argued that GC is new because until recently computers were neither fast
enough nor possessed of sufficient memory to make a GC paradigm into a practical proposition
capable of general application. This is no longer the case as the 1990s have witnessed the develop-
ment of highly parallel supercomputers; for instance, the Cray T3D (around 1994) had 512 proces-
sors and 32 GB of memory and was rated at about 40 gigaflops, whilst the Cray T3E (around 1998)
had 576 processors and 148 GB of RAM and was rated at about 122 gigaflops of sustained speed.
We are now in an era of petaflop computing.
Do we actually need extra computational power? Most geographers probably think that their PC
with all the power of a mid-1980s mainframe is more than they need to run their 1970s and early
1980s vintage modelling and statistical technologies! In some ways, they are correct but this is the
wrong perspective to apply in an era where HPC offers or promises 10,000 or more times that level
of performance. Nearly all the mathematical models and statistical analysis tools used today in
geography come from an era of either manual calculation or slow and small computers. They use
shortcuts, numerous simplifications, etc., to minimise the amount of computation that is performed.
Indeed most of our computational technology is old fashioned and outmoded and likely to yield far
poorer results than more leading edge tools. However, it is important to be able to demonstrate that
if we perform 10,000 or several million times more computation, the benefits are worthwhile. If GC
is to survive, then it is this challenge that needs to be convincingly addressed.
Macmillan (1998) observes that there are strong elements of continuity between GC and the
established traditions of quantitative geography because they share the same scientific philosophy.
The view here is that GC can easily encompass quantitative geography if it so wished and if there
was some virtue in so doing. However, GC is more than quantitative geography ever aspired to.
Today’s quantitative geography can be regarded as a repository for various legacy statistical and
mathematical technologies that reflect an era of slow computers. Quantitative geography was a
computationally minimising technology, reflecting its origins in a hand-computer era. Analytical
approximation and clever mathematical manipulation had to substitute for the lack of computing
power. The absence of data fostered a theoretical perspective because there was seldom any other
possibility. It is this technology and outlook that still survives in modern quantitative geography.
The idea of running a computer program for a month or a year is still something quite alien. Indeed
it is only in the last 5 years that computing environments have changed by such a degree that large-
scale computation is now routinely feasible. In 1998, it can be calculated that 12 h on a 512-processor
Cray T3E parallel supercomputer is broadly equivalent to somewhere between 4 and 8 years of non-
stop computing on a top-end workstation or PC. This is the emerging world within which GC is
located; it was never the world of quantitative geography where such vast amounts of computation
were seldom envisaged. The challenge for GC is to develop the ideas, the methods, the models and
the paradigms able to use the increasing computer speeds to do useful, worthwhile, innovative and
new science in a variety of geo-contexts.

1.5  WHAT DO OTHERS SAY ABOUT GEOCOMPUTATION?


The definitions of GC described here were those which were expressed by the author during the
time of the First International Conference in GeoComputation held in Leeds in September 1996.
Since then, thinking about the subject has intensified following two other conferences. The question
now is, to what extent do subsequent writers agree or disagree with these suggestions? Although, to
be fair, this work has not previously been published and is thus largely unknown to them.
Rees and Turton (1998, p. 1835) define GeoComputation as ‘… the process of applying comput-
ing technology to geographical problems’. At first sight, this definition would appear to suggest that
GC is equivalent to doing geography with a computer. However, it has to be understood that there
is an important distinction between ‘doing geography with a computer’ (which could be using a
computer to map data) and ‘solving geographical problems with new computing power’ (which is
what Rees and Turton wrote about).
6 GeoComputation

Couclelis notes that ‘GeoComputation just means the universe of computational techniques
applicable to spatial problems’ (Couclelis, 1998a, p. 18). Indeed if you accept her definitions, then
we have been doing GeoComputation for years without realising it (see also Couclelis, 1998a, p. 19).
However, it is important not to confuse using computers in geography with what GC is really about.
Whilst understandable, such confusion greatly underplays the novelty of GC. It certainly involves
the use of computers in geography, but its subject domain is not limited to geography nor is it merely
another term for quantitative geography or geo-computer applications. There is a major paradigm
shift occurring behind the scenes that is affecting why the computing is being applied. The style
of GC envisaged today would have been both impossible and also unnecessary in the 1960s main-
frame era when computers first started to be applied (as a replacement for hand calculation and
electric calculators) to problems in geography. The really new idea behind GC is the use of compu-
tation as a front-line problem-solving paradigm which as such offers a new perspective and a new
paradigm for applying science in a geographical context.
Macmillan (1998) is much more accurate when he writes:

the claim I want to stake for geocomputation is that it is concerned with the science of geography in a
computationally sophisticated environment …. It is also concerned with those computational questions
… which are essential for the proper scientific use of our computational instruments. (p. 258)

Later he adds:

… the key feature of geocomputation … is the domain it belongs to—the domain of scientific research.
Just as astronomy emerged with extraordinary vitality in the post-Galilean world, so geography can
emerge from its post-modern slumbers in a geocomputational world. (Macmillan, 1998, p. 264)

Let’s hope so!

Longley writes:

The environment for geocomputation is provided by geographical information systems, yet what is dis-
tinctive about geocomputation is the creative and experimental use of GIS that it entails. The hallmarks
of geocomputation are those of research-led applications which emphasize process over form, dynam-
ics over statics, and interaction over passive response. (Longley, 1998a, p. 3)

Later he argues that ‘GeoComputation is the ways in which new computational tools and meth-
ods are used … also fundamentally about the depiction of spatial process’ (Longley, 1998a, p. 6).
The important point here is that ‘GeoComputation is much more than GIS’ (Longley et al., 1998,
back cover).
Longley is right to point out the distinctiveness of GC, but maybe it does not have to be so process
and dynamics orientated and that this is only part of what GC is all about. Indeed Longley notes that
GIS is but one of the many tools of GeoComputation. He argues that GeoComputation provides a
framework within which those researching the development and application of GI technologies can
address many of the important questions left unresolved by GIS. He writes very eloquently that ‘the
spirit of GeoComputation is fundamentally about matching technology with environment, process
with data model, geometry and configuration with application, analysis with local context, and phi-
losophy of science with practice’ (Longley, 1998a, p. 4).
So GC is not GIS and embraces a different perspective and set of tools. Longley says, ‘The
data-rich environment of GIS today provides almost limitless possibilities for creating digital repre-
sentations of the world, and the techniques of GeoComputation provide better ways of structuring,
analysing, and interpreting them than ever before’ (Longley, 1998b, p. 83). There is a relationship
with GIS but GC also has other relationships that may be just as important, for example, with com-
puter science or numerical methods or statistics. Maybe also, from a geographical perspective, GC
is what you do after GIS in that it does seek to make use of the data richness created by GIS and
GeoComputation 7

other developments in IT. If GIS is mainly about digital map information, then GC is about using it
in many different application areas within which the focus is no longer on the original GIS compo-
nents. Nor is GC about evolving new or better data structures for use within GIS or about any of the
GIS research agenda. To put it more bluntly, GIS is merely a database infrastructure which is nice
to have but which is lacking in any science or theory other than the measurement science on which
it is based. GC is not just an add-on to GIS; in fact, it is not really part of it at all.
In essence, GC is concerned with the application of a computational science paradigm to study
all manner of geo-phenomena including both physical and human systems. It probably captures
quite well the broad type of methodological approach that an informed computational physicist
or chemist or aeronautical engineer would adopt if asked to suggest ways of studying subjects as
diverse as river systems to human behaviour. It is not just data mining and it is not necessarily
theory-free; indeed, both extremes of inductive and deductive approaches can be studied via a com-
putational paradigm. GC is all about the use of relatively massive computation to tackle grand chal-
lenge (viz. almost impossible to solve) problems of immense complexity. However, a key feature
is what is termed problem scalability. You start by tackling small and simpler versions of a more
complex problem and then scaling up the science as and when either the HPC systems catch-up or
knowledge of algorithms, models and theory start to show signs of being able to cope. In many areas
of social science and human geography, so great has been the scientific neglect that we can no longer
think about a 1- or 2-year time frame but need a 10–50-year period. Long timescales have not put off
other sciences, for example, mapping the human DNA or fusion reactor physics or laser physics. All
you need is a bold but clear vision of what the end goal is and then a path that connects where you
are at present to where you want to be in some years time. However, not all GCs need only be big
science. This is fortunate because big science is still a wholly alien concept in the social sciences.
Much progress can be made far more readily and with far less risk on small projects. The message
is start small but think big.
However, not all researchers appear to agree with these definitions of GC. The problem appears
to be that most commentators have focused on the content of the various conferences as a means of
defining what it is that GeoComputationalists study and hence define the subject of GC. This is not
a particularly good way of developing a definition; for example, the definition of geography based on
the titles and content of the papers presented at the annual RGS/IBG or AAG conferences would at
best be confused and probably somewhat weird! It would be far better to think about the definition
in a more abstract manner.
So far the most detailed study of the subject of GC is by Couclelis (1998a,b). These two essays
contain a delightful mix of fact, useful comment and suggestion blended with hints of confusion and
flashes of future optimism. Couclelis has thought most about the meaning of the term. She starts by
defining GeoComputation as ‘the eclectic application of computational methods and techniques to
portray spatial properties, to explain geographical phenomena, and to solve geographical problems’
(Couclelis, 1998a, p. 17). She has observed from a study of the content of previous GC conferences
that ‘… GeoComputation is understood to encompass an array of computer-based models and tech-
niques, many of them derived from the field of artificial intelligence (AI) and the more recently
defined area of computational intelligence (CI)’ (Couclelis, 1998a, p. 18). According to her, the key
question now ‘… is whether GeoComputation is to be understood as a new perspective or paradigm
in geography and related disciplines, or as a grab-bag of useful computer based tools’. Longley also
hints at a similar degree of confusion when he writes: ‘… GeoComputation has become infinitely
malleable…’ (Longley, 1998b, p. 83). At issue here is whether or not there is something special and
new to GC. The short answer is yes for reasons that have already been stated. However, if you can
accept that GC is a form of computation science applied to spatial or geo-problems (theory and
data), then much of what Couclelis (1998a,b) is concerned about falls by the wayside.
Couclelis talks about an uneasy relationship with mainstream quantitative geography ‘… as
evidenced by the relative dearth of GeoComputation-orientated articles and topics in main quantita-
tive geography journals and texts’ (Couclelis, 1998a, p. 19). She also adds that ‘GeoComputation has
8 GeoComputation

thus far found only limited acceptance within the discipline’. However, this reflects her confusion as
to what GC is all about and her mistaken belief that GC is not new but has been practised for at least
a decade as a form of Dobson’s automated geography; see Dobson (1983, 1993). Indeed one of the
reasons for the author’s insistence in this book on GeoComputation with a capital G and a capital C
in the middle of the term rather than GeoComputation, all in lower case, is to try and emphasise the
newness and capture some of the excitement of what we understand GC to be about.
However, in writing about the nature of GC, there is clearly a danger in associating it too closely
with this or that exemplar technique. For example, Longley (1998a) and Macmillan (1998) both
make several comments about the use of a highly automated form of exploratory geographical anal-
ysis in GC, and occasionally, they appear to think that GC is sometimes believed to be little more
than this. The Geographical Analysis Machine (GAM) of Openshaw and associates (Openshaw,
1987; Openshaw and Craft, 1991) is the subject of this criticism, but GAM was only really ever used
as an illustration of one form or style of GC. Longley writes, ‘GeoComputation has been caricatured
as uninformed pattern-seeking empiricism in the absence of clear theoretical guidance’ (Longley,
1998a, p. 8). Maybe it should be added by the misinformed! It was always intended to be more than
this; indeed, this is an extremely biased, prejudiced and blinkered view. Again Longley writes,
‘A central assumption of much of this work is that machine “intelligence” can be of greater import
than a priori reasoning, by virtue of the brute force of permutation and combination – “might
makes right” in this view of GeoComputation’ (Longley, 1998a, p. 12). This is a gross misunder-
standing of the origins of GAM and also a reflection of a faith in theory and hypothesis that is quite
unreal! It might help to know that GAM was developed for two main reasons: (1) knowledge of
the data precluded proper a priori hypothesis testing and (2) pre-existing hypotheses which could
be legitimately tested reflected knowledge and theories that may well be wrong. For instance, one
might speculate that disease rates will be higher within exactly 5.23 km of a specific point location.
Suppose this general hypothesis is correct except the critical distance was 1.732 km! The hypothesis
would be rejected and you would never be any wiser about the form of the correct hypothesis! How
silly! So why not use a GAM that would indicate the location of patterns treating all locations and
distances equally. Of course, you would then have the problem of understanding and explaining the
results but at least you would have found something if there was anything there that was sufficiently
simple that GAM could find it. This does not reduce human thinking; it merely increases its utility.
There is nothing wrong with building pattern hunting machines that are able to be more suc-
cessful at this task than we are, particularly in complex or multidimensional search spaces. Nor
does it necessarily imply that pattern detection is sterile because there is no understanding. Any
researcher with more than a modicum of intelligence or scientific curiosity will want to know why a
pattern exists here and not there. Pattern detection or the discovery of empirical regularities that are
unusual or unexpected can be an important first step in scientific understanding. It does not have to
be an end in itself! We should not be so ready to neglect inductive approaches based on data mining
technologies. No one is insisting that GC has to be exclusively inductive, only that this is a useful
technology in relevant circumstances. What is so wrong about building machines dedicated to the
inductive search for new theories or new models or new ideas? We would be daft to neglect any new
opportunities to augment human reasoning, thinking and deductive powers and processes by the use
of machine-based technologies. No one is yet suggesting that we relegate all thinking to machines;
not yet anyway! However, it is hard for some to accept or appreciate what the possible benefits may
be. Longley writes, ‘Technology empowers us with tools, yet conventional wisdom asserts that we
need consciously and actively to use them in developing science without surrendering control to the
machine’ (Longley, 1998a, p. 5). Yes of course, but when this comment is applied to the GAM, then
it shows an amazing naivety.
The meaning of GC is therefore no great mystery. It is essentially a computationally intensive
science-based paradigm used to study a wide range of physical and human geographical systems.
It is neither a grab-bag set of tools, nor is it of necessity only rampant empiricism, nor must it be
inductive, nor must it be without theory or philosophy! The distinctive features relate to its central
GeoComputation 9

emphasis on computation as a problem-solving device grounded in a scientific approach. It seeks to


exploit the new opportunities for modelling, simulation and analysis of human and physical systems
that major new developments in HPC have created. In trying to achieve this function, it is quite nat-
ural that GC should also seek to make good use of both old and new tools, particularly those emerg-
ing from AI and CI backgrounds that are computationally based. However, it has not really been
suggested anywhere that before you qualify as a GeoComputationalist, you need simultaneously
lots of data, a lack of theory, massive amounts of HPC and heavy use of the latest AI or CI tools.
To summarise, GC is

• Not another name for GIS


• Not quantitative geography
• Not extreme inductivism
• Not devoid of theory
• Not lacking a philosophy
• Not a grab-bag set of tools

1.6  GEOCOMPUTATION RESEARCH


In many ways, the current GC research agenda reflects and evolves around that of its constituent
parts. The most important of these are HPC, AI and its more generalised expression as CI and a
global GIS that has stimulated the appearance of many large spatial databases. However, there is no
single dominant factor and others of more traditional importance probably need to be added, such
as statistical techniques, mathematical modelling and computer simulation relevant to a geographi-
cal context.
HPC is a most significant technological development. As computers become sufficiently faster
and offer sufficiently large memories, HPC really does provide new ways of approaching geography
based on a GC paradigm, which encapsulates the flavour of a large-scale computationally intensive
approach. It involves both porting and moving current computationally intensive activities onto
HPC platforms, as well as the application of new computational techniques, algorithms and para-
digms that are dependent upon and can take particular advantage of supercomputing.
However, it is once again important to stress that it is much more than just supercomputing or
HPC for its own sake. The driving factors are threefold: (l) developments in HPC are stimulating
the adoption of a computational paradigm to problem-solving, analysis and modelling; (2) the need
to create new ways of handling and using the increasingly large amounts of information about the
world, much of which is spatially addressed; and (3) the increased availability of AI tools and CI
methods (Bezdek, 1994) that exist and are readily (sometimes instantly) applicable to many areas
of geography suggesting better solutions to old problems and creating the prospect of entirely new
developments. GC also involves a fundamental change of style with the replacement of computa-
tionally minimising technologies by a highly computationally intensive one. It also comes with
some grand ambitions about the potential usefulness that may well result from the fusion of virtu-
ally unlimited computing power with smart AI and CI technologies that have the potential to open
up entirely new perspectives on the ways by which we do geography and, indeed, social science. For
instance, it is now possible to think about creating large-scale computing machine-based experi-
ments in which the objects being modelled are artificial people living out their artificial lives as
autonomous beings in computer-generated artificial worlds (Dibble, 1996). HPC provides a labora-
tory within which many geographical and social systems can be simulated, studied, analysed and
modelled; see also Gilbert and Doran (1994) and Gilbert and Conte (1995). A fusion of microsimu-
lation and distributed autonomous intelligent agents is one way forward. The hardware, software,
data and core algorithms largely exist. Perhaps the greatest obstacle is the difficulty of acquiring
research funding for revolutionary ideas far beyond the conventional and then of gaining access to
sufficiently powerful HPC to make it practicable.
10 GeoComputation

GC may appear to some to be technique dominated; however, as previously discussed, the driv-
ing force is and has to be the geo part, as it is not intended that GC becomes an end in itself.
However, GC is unashamedly a problem-solving approach. One ultimate goal is an applied technol-
ogy. Like GIS, it is essentially applied in character but this emphasis should in no way diminish
the need for solutions that rest on a better theoretical understanding of how geographical systems
work and of the processes that are involved. This focus on scientific understanding and theoretical
knowledge provides a strong contrast with GIS. The challenge now is to create new tools that are
able to suggest or discover new knowledge and new theories from the increasingly spatial data-rich
world in which we live generated by the success of GIS. In this quest for theory and understanding,
GC using HPC is a highly relevant technology.
There is an argument that GC would have developed sooner if the HPC technology had been
more advanced. Indeed, until as recently as the early part of the 1990s, neither the power nor the
memory capacities of the leading HPC machines were sufficient to handle many of the problems of
immediate geographical interest. However, HPC is a relative concept. It is certainly true that most
mathematical models developed by geographers made use of classical HPC hardware capable of a
few thousand arithmetic operations per second. However, today the HPC hardware is many millions
of times faster. It is still called HPC but it is like comparing the speed of a lame slug with a rocket!
One way of explaining what these changes in HPC hardware mean is to ask how would you
do your research if that PC on your desk was suddenly 10,000 times faster and more powerful. It is
likely that some researchers would not know what to do with it, some would not want it, but some
would spot major new possibilities for using the computer power to do geography (and geo-related
science) differently. It is this type of researcher who will switch to GC and be well placed to ben-
efit from the next two or three generations of HPC. However, merely identifying applications that
are by their nature potentially suitable for parallel hardware is not sufficient justification to invest
in the necessary parallel programming effort. The applications also have to present a formidable
computational challenge. What point is there in converting serial code that runs on a single CPU
workstation in 30 min to run on a parallel supercomputer with 512 CPUs in 10 s? Certainly there is
a software challenge, but the computational intensity of the task simply may not justify the effort
involved. An additional criterion is that the parallel application should offer some significant extra
benefit that could not be realised without it. There should be some evidence of either new science or
better science or of new results or improved results. The parallelisation task is not an end in itself.
In fact, it is totally irrelevant in the longer term. The biggest gains will come from those applica-
tions that were previously impossible but which can now be solved and, as a result, offer something
worthwhile knowing or being able to do.
What has changed dramatically during the 1990s is the maturity of parallel supercomputing, the
continued speed-up of microprocessors and the availability (after 20 years or so) of compilers that
bring parallel computing within the existing skill domain of computationally minded geographers.
The standardisation of a highly parallel Fortran compiler and also of the message passing interface
(MPI) eases the task of using parallel supercomputers in many areas of geographic application as
well as producing reasonably future-proof portable codes (Openshaw and Turton, 1999). When
viewed from a broader GC perspective, a major revolution in how geography and other spatial sci-
ences may be performed is well underway; it is just that many researchers in these disciplines have
not yet either realised it is happening or have not understood the possible implications for their
interests.
The opportunities are essentially fourfold:

1. To speed up existing computer bound activities so that more extensive experimentation can
be performed
2. To improve the quality of results by using computational intensive methods to reduce the
number of assumptions and remove shortcuts and simplifications forced by computational
restraints that are no longer relevant
GeoComputation 11

3. To permit larger databases to be analysed and/or to obtain better results by being able to
process finer resolution data
4. To develop new approaches and new methods based on computational technologies devel-
oped by other disciplines, particularly AI and computer vision, new ways of solving opti-
misation problems and generally to become opportunistic and entrepreneurial with a
concern to tackle old problems using new technologies and also to do new things that are
relevant to geographical concerns but are currently limited by processor speed and perhaps
also memory size

All are important although some are much more readily attainable than others. In some applications,
there are almost instant benefits that can be gained with a minimal degree of effort. Yet in others,
it could be 5–10 years before immature research blossoms into something useful. One problem for
geographical HPC is that users in other areas of science have a considerable head start in developing
technology and raising awareness levels within their research communities and have research coun-
cils that now respond to their needs for HPC. Other problems are of their own making, for example,
the various paradigm wars and artificially self-constructed philosophical and attitudinal barriers.
Methodological pluralism is good but tolerance is also a necessary condition. Nevertheless, there is
a growing belief that the time is ripe for HPC initiatives in geography and the social sciences and
the international growth in popularity of GC is one indicator of this change.

1.7  SOME EXAMPLES OF OLD AND NEW GEOCOMPUTATION


Even though GC is a new term, it is possible to recognise applications that today would be called GC
but previously were regarded either as quantitative geography or as GIS or spatial analysis. Some
examples may help understand better the GC ethos or style and how GC fits in with what quantita-
tive minded researchers have always done.

1.7.1  Parallel Spatial Interaction Modelling and Location Optimisation


One of the earliest uses of parallel computing in geography has concerned the parallelisation of the
spatial interaction model; see Harris (1985) and Openshaw (1987). This model is central to several
historically important areas of regional science, urban and regional planning and spatial decision
support (Wilson, 1974; Birkin et al., 1996). For illustrative purposes, the simplest spatial interaction
model can be expressed as

Tij = AiOi D j B j exp(−bCij ) (1.1)



where
Tij is the predicted flows from origin i to destination j
Ai is an origin constraint term
Oi is the size of origin zone i
Dj is the attractiveness of destination i
Cij is the distance or cost of going from origin i to destination j
b is a parameter that has to be estimated

This model was originally derived in a theoretically rigorous way by Wilson (1970) using an entropy
maximising method. Clearly this model is implicitly highly parallel since each Tij value can be com-
puted independently. Parallelisation here is important because the model presents a computational
challenge since computer times increase with the square of the number of zones (N). Small N values
can be run on a PC but large N values need a supercomputer. The quality of the science reflects both
the number of zones (more zones provide better resolution than few) and the specification of the
12 GeoComputation

model. Developments in information technology over the last decade have dramatically increased
the availability and sizes of spatial interaction data sets. The 1991 census provides journey to work
and migration data that contain 10,764 origin and destination zones. A parallel version of Equation
1.1 has been run on the KSR parallel supercomputer at Manchester and later ported on to the Cray
T3D (see Turton and Openshaw, 1996).
Scalability is a very important property in the world of parallel HPC. It creates new modelling
opportunities applicable to the modelling of large-scale interaction data. Telephone traffic data exist
for entire countries. In the United Kingdom, it is possible to imagine telephone call flow databases
with between 1.6 and 27 million zones in them. Equivalent data are generated by EFTPOS flows in
the retail sector. These databases, currently being stored in data warehouses, are also of profound
substantive interest since their data portray the microfunctioning of selected aspects of the entire
UK economic space. The daily trivia of a complete living nation is in there, just awaiting analysis.
Retail catchments, changing network effects and space–time dynamics of individual behaviours are
all in there, somewhere. The spatial interaction model could be scaled up to model only some of it
and clearly entirely new modelling methodologies will be needed. Yet the possibilities are almost
endless if we have the imagination to create them and the HPC hardware is sufficiently large and
fast to meet the computational challenge.
Computer technology able to model the behaviour of atoms will soon be able to model more
and more of the behaviour in space and time of millions of individual people. As global resources
become more limited, as environment concerns increasingly require behaviour modification and
as governments aim at a lifelong equality consensus, the task of people management will increase.
However, better planning requires better prediction modelling. We need to be able to model people’s
behaviour if much progress is going to be made. The problem at present is that the science of human
systems modelling (as it has been termed) is still at an extremely rudimentary stage of development;
see Openshaw (1995a) for a brief review. Nearly all the existing models are aggregate rather than
micro, static rather than dynamic and insufficiently non-linear to be of much use. A start has been
made but so much more is still needed.

1.7.2 New Parameter Estimation Methods


Not all of GC needs the use of very large data sets or requires massive software investment or access
to leading edge HPC. Diplock and Openshaw (1996) demonstrate some of the benefits of using
genetic and evolutionary strategy-based parameter estimation methods compared with conventional
non-linear optimisation methods. Computer models (e.g. the spatial interaction model in Equation
1.1) with exponential terms in them contain considerable opportunities for arithmetic instabilities
to arise because the exponential deterrence function can readily generate very large and very small
numbers depending on the parameter b. In fact, the numeric range where there are no arithmetic
protection conditions being generated is extremely small (typically plus or minus one depending on
how the Cij values are scaled) given that the parameter b could in theory range from minus infinity to
plus infinity. The problem becomes worse when more parameters are used. Yet it is this function land-
scape of flat regions, vertical cliffs and narrow valleys leading to the optimal result that conventional
parameter optimisation methods have to search. If they hit any of the barriers or the flat regions, they
tend to become stuck, and because it is dumb technology, they have no way of telling you that this has
happened. The implications are that potentially all statistical and mathematical models with exponen-
tial terms in them can produce the wrong result because there is no assurance that the conventional
non-linear optimisers in current use can safely handle the invisible arithmetic problems. There are
newer methods which will function well on these problems since they are more robust, they are not
affected by floating point arithmetic problems, and they can handle functions which are non-convex
and discontinuous and have multiple suboptima (see Diplock and Openshaw, 1996; Heppenstall and
Harland, 2014). The problem is that they require about 1000 times more computation. Once it was
impossible to use this technology except on a small scale. Now it can be far more widely applied.
GeoComputation 13

A related opportunity for a quick gain in benefit from HPC is the use of the bootstrap to estimate
parameter variances. This is quite straightforward. You merely have to run the model of interest a
few hundred or a few thousand times. It is naturally parallel because each run can be assigned to a
different processor or else the code is left running on a workstation for a week or two. This raises
another point of general significance. Research with a multiregion population forecasting model,
which was used to make population forecasts for the European Union (EU), used this bootstrap
approach to identify the error limits to forecasts for 2021–2051. This can be used to identify model
data weaknesses. It also shows that currently there are no reliable long-term forecasts for the EU
as the confidence limits are extremely wide. The problem appears to be due to uncertainty in the
migration forecasting; see Turton and Openshaw (1998) for further details. Previously these error
bands were unknown. Cross-validation using a jackknife is another useful computationally intensive
tool. Here, the additional computation is a factor of N times, where N is the number of observations.

1.7.3 Network and Location Optimisation


The basic spatial interaction model is often embedded in a non-linear optimisation framework that
can require the model to be run many thousands of times in the search for optimal locations, for
example, to determine the optimal network of shopping centres or car show rooms or good sites.
There are many different types of important public and private sector location optimisation prob-
lems of this sort. The quality of the final result is now critically dependent on the resolution of
the data, the performance of the embedded model and the quality of the optimisation algorithm.
The latter is, crudely put, usually related to how many million different candidate solutions can be
evaluated in a fixed time period, because the problem can only be tackled by heuristic methods. The
number of model evaluations per hour is dependent on processor speed, size of problem, granular-
ity of the parallelism and the skills of the programmer in teasing it out to ensure good performance
on particular hardware; see Turton and Openshaw (1998) for an example. The problem here is that
end users (surprisingly) may be far more interested in a good solution than in obtaining an opti-
mal solution, a view that is sometimes characterised by the dictum ‘the best is the enemy of the
good’. However, this is a distraction. The only way of determining whether a good result has been
obtained is by knowing what the best attainable result is likely to be. Users will naturally assume
that all of the results that they obtain are optimal or nearly optimal, and it is a responsibility of the
researcher to ensure that they are. It is not something that can be fudged but neither is the best result
independent of the methodology used to find it, especially in complex non-linear applications where
optimality is determined by the computational technology.

1.7.4 Automated Modelling Systems


There is also a need to improve the quality of the models being used in geographical research and
not just speed up the time taken by legacy models or scale up the size of problem that can be tackled.
The new computational technologies offer new ways of building models that either replace existing
models based on mathematical and statistical approaches or else can be viewed as complementing
them. The old model shown in Equation 1.1 assumes a single global deterrence function. This was
quite reasonable when N was small and computer time was limited, and without access to HPC, not
much more could be done. Yet building good models of many human systems is hard because of the
complexity of the underlying processes, the lack of good relevant theory and the seemingly chaotic
non-linear behaviour of the systems of interest. It is important, therefore, to develop new ways of
designing and building good-performing models that can combine human intellect and modelling
skills with HPC.
One approach is to create an automated modelling system (AMS) that uses genetic algorithms
and genetic programming (GP) techniques to suggest potentiality useful models. The AMS of
Openshaw (1988) used a Cray vector supercomputer in an early attempt to define and then explore
14 GeoComputation

the universe of alternative spatial interaction models that could be built up from the available pieces
(e.g. variables, parameters, unary and binary operators, standard math functions and reverse pol-
ish rules for well-formed equations) by using evolutionary programming algorithms to breed new
model forms. These methods are explicitly parallel (each member of a population of models is
evaluated in parallel) and also implicitly parallel (the genetic algorithm’s schemata theorem). The
problem with AMS was the use of fixed length bit strings. Koza (1992, 1994) describes how this can
be overcome by using what he terms GP. The AMS approach has been redeveloped in a GP format,
which is far more suitable for parallel rather than vector supercomputers. The results from porting
the GP codes on to the Cray T3D suggest that not only can existing conventional models be redis-
covered but that also new model forms with performance levels of two or three times better can be
found (Turton and Openshaw, 1996; Turton et al., 1997; Diplock, 1996, 1998). Some of the GP runs
reported in Turton et al. (1996, 1997) required over 8 h on a 256-processor Cray T3D. It is likely that
2-week long runs on a 512-processor machine would yield even better results, but this is seven times
greater than the total ESRC allocation of Cray T3D time in 1996. In these complex search problems,
the quality of the results depends totally on the available HPC. Runs of this magnitude, which were
barely feasible in 1996, will be considered trivial, and historians will be amazed at how poor the
HPC hardware was. If the new methods work well, then they would constitute a means of extract-
ing knowledge and theories from the increasingly geography data-rich world all around us. The key
point to note here is that it is becoming increasingly possible to compute our way to better models.
Other new approaches to building new types of spatial models are described in Openshaw
(1998c). He compares the performance of a selection of genetic, evolutionary, neural net and fuzzy
logic spatial interaction models. In general, performance improvements of more than 200% over
conventional models are possible and more than sufficient to justify the 10,000–100,000 times more
computation that was involved. Some of these new models are purely black boxes (viz. the neural
network models), but others are capable of plain English expression (the fuzzy logic models) or are
in equation form (derived from AMS or GP). See Beriro et al. (2014) and Heppenstall and Harland
(2014) in this book for more recent developments in these fields.
Certainly there are problems that still need to be resolved, but GC is about revolutionary tech-
nology. Old truisms may no longer hold good. Old barriers may have gone and have been replaced
by others that are not yet understood. You have to believe that the impossible (i.e. previously the
infeasible) is now possible or else no progress will be made. However, put your GC spectacles on
and suddenly the world is a different and more exciting place, but it still requires you to develop a
degree of self-confidence that you can go safely and carefully where others have yet to tread.

1.7.5  Parallel Zone Design and Optimal Geographical Partitioning


Some other GC applications involve applying existing methods that have been patiently waiting for
increases in the speed of hardware and the provision of GIS data. Zone design is one of these. The
basic algorithms were developed over 30 years ago (Openshaw, 1976, 1978, 1984), but until digital
map boundary data became routinely available in the 1990s and computer hardware much faster, it
was not a practical technology once N (the number of zones) exceeded a small number. The chal-
lenge now is to make routine access to the technology and make available the latest algorithms
(Openshaw and Rao, 1995; Openshaw and Alvanides, 1999). If you can get that far, then you have
to start raising potential user awareness so that they realise what is now possible and start to use it.
Most of the ground work has been done. Parallel zone design codes exist and a parallel simulated
annealing algorithm has been developed; see Openshaw and Schmidt (1996). Yet the principal bar-
rier to application is not algorithmic or HPC aspects but awareness. It is unbelievable that in many
countries the explicit and careful design of sensible census output areas is still not regarded as
important. Surely this application is itself broadly equivalent in importance to many of the HPC
projects in other areas of science, yet because of the absence of a computational culture, it is prob-
ably still regarded as being of the lowest priority and far too advanced for operational use. Yet we
GeoComputation 15

live in a world where computer speeds are doubling almost annually. Flexible area definition of
censuses is just one potential area of need and GC is one way of achieving it.

1.7.6  Parallel Spatial Classification Methods


An obvious response to the spatial data explosion is to apply multivariate data summarising tools,
particularly classification, to the largest available databases. GC is also about rediscovering legacy
methods and then scaling them up for a large data era. Thirty years ago, the best (and most famous)
cluster analysis package had an observation limit of 999. This would now be considered totally
ridiculous, completely unnecessary and a severe limitation. However, legacy methods can also usu-
ally be improved and replaced by more flexible and less assumption ridden more modern devel-
opments. The K-means technology of the 1970s that ran on a mainframe has now been replaced
by unsupervised neural networks that run on parallel supercomputers and even workstations; see
Openshaw (1994c), Openshaw et al. (1995) and Openshaw and Turton (1996) for details. On the
Cray T3D with 256 processors, a single run takes 10 h, but the results are quite different from those
produced by a more conventional method and may be substantially better and tell a very different
story about the structure of Britain’s residential neighbourhoods. See Adnan et al. (2014) on recent
advances and research in this area.

1.7.7  Parallel Geographical Pattern and Relationship Spotters


A major by-product of the GIS revolution of the mid-1980s has been to add geographic x, y
­co-ordinates to virtually all people and property-related computer systems and to create multi-
ple layers of other digital information that relate to the physical environment and which may be
regarded as being related to it (as possible predictor variables). The success of GIS has created a
growing imperative for analysis and modelling simply because the data exist. The problem now
is how to do exploratory analysis on large databases, when there is little or no prior knowledge
of where to look for patterns, when to look for them and even what characteristics these might be
based on. It goes without saying that the methods also have to be easy to use, automated, readily
understood and widely available – a most difficult requirement but, nevertheless, a most important
challenge for GC to consider.
One possible solution is by Openshaw et al. (1987) who describe a prototype GAM able to
explore a spatially referenced child cancer database for evidence of clustering. The GAM used a
brute force grid search that applied a simple statistical procedure to millions of locations in a search
for localised clustering. Fortunately, the search is highly parallel although it was originally run on a
serial mainframe where the first run took 1 month of computer time. Subsequent work was done on
Cray-XMP and Cray 2 vector supercomputer systems although the problem is not naturally a vector-
izable one; see Openshaw and Craft (1991). A parallel version of the latest GAM/K code has been
developed for the Cray T3D written in MPI, but it will also now run on a PC in a few hundred sec-
onds (if the Monte Carlo simulation option is not selected). More powerful computing is now needed
only if the quality of the apparent results is of interest or concern. Previously it had to be used even
to produce crude results. For many spatial analysis applications, the crude results may well be suf-
ficient, but if these are not, then it is now possible to use HPC to validate them (Openshaw, 1998b).
The same basic GAM type of brute force approach has been used to search for spatial relation-
ships. The Geographical Correlates Exploration Machine (GCEM/1) of Openshaw et al. (1990)
examines all 2m−1 permutations of m different thematic map layers obtained from a GIS in a search
for localised spatial relationships. The GCEM was developed for a Cray Y-MP vector process. It is
massively parallel because each of the 2 m−1 map permutations is independent and can be processed
concurrently. It will now run on a PC. In both cases, the speed-up in computer hardware speeds
has allowed very computationally intensive GC methods to filter down to the desktop. Yesterday’s
supercomputers are today’s workstations and it is likely that this process will continue for at least a
16 GeoComputation

couple more decades. What it means is that you can develop and test new GC analysis tools using
HPC and be fairly confident in the knowledge that soon it will run on far less powerful and far more
available machines.
Another important development is to broaden the basis of the exploratory pattern search process
to include all aspects of spatial data (e.g. location in space, location in time and attributes of the
space–time event) and to make the search intelligent rather than systematic. Indeed, the added com-
plexity of additional data domains precludes a simple parallel brute force approach and emphasises
the importance of devising smarter search methods that can explore the full complexity of databases
without being too restricted. What we now need are geographical data mining tools. Only the most
primitive of methods have so far been developed due to a seemingly widespread distaste for induc-
tive analysis. That is a pity because this is exactly what the current era of massive data warehouses
and unbelievable spatial data riches require.
Openshaw (1994d, 1995b) describes the development of space–time attribute creatures, a form of
artificial life that can roam around what he terms the geocyberspace in an endless hunt for patterns.
The claim to intelligence results from the genetic algorithm used to control the search process and
the use of computational statistics to reduce the dangers of spurious results. It is strongly dependent
on having sufficient parallel computational power to drive the entire process. Openshaw and Perree
(1996) show how the addition of animation can help users envisage and understand the geographi-
cal analysis. This type of highly exploratory search technology is only just becoming feasible with
recent developments in HPC, and considerable research is still needed to perfect the technology.
More powerful computing is still needed but mainly in design and development of these methods
where they can dramatically speed up testing and be used to resolve design decisions via large-scale
simulation and animation of the behaviour of alternative algorithms.

1.7.8  Building Geographical Knowledge Systems


A final illustration describes HPC applications that are highly relevant to many areas of geography
but which are probably not yet feasible but soon will be. All the components needed probably exist
(a fairly common occurrence in GC research), usually in other contexts, and the trick is to find them,
understand them sufficiently so as to be able to safely use them, be bold enough to try them out and
have access to a sufficiently fast HPC platform to permit experimentation. Creativity is the name of
this game.
Consider the following view of the modern data landscape. Modern GISs have provided a
microspatial data-rich world, but there are no non-cartographic tools to help identify in any scientific
manner the more abstract recurrent patterns that may exist at higher levels of generalisation if only
we could see them. Geography is full of concepts and theories about space that can be expressed
as idealised 2D and 3D patterns that are supposedly recurrent. Traditionally, these concepts and
theories have been tested using aspatial statistical methods that require the geography to be removed
prior to analysis. For example, if you ask the question does the spatial social structure of Leeds as
shown by the 1991 census conform to a broadly concentric ring type of pattern?, then this hypothesis
can be tested by first defining a central point, then a series of three rings of fixed width, and then
a statistic of some kind is applied to census data to test the a priori hypothesised trends in social
class. However, this clearly requires considerable precision and is not really an adequate test of the
original hypothesis that specified no ring widths nor defined a central point nor defined at what level
of geographic scale the pattern exists. A possible solution is to use pattern recognition and robotic
vision technologies to see whether any evidence of a general concentric geographic structure exists
in the census data for Leeds, after allowing for the distorting effects of scale, site and topography.
If no idealised concentric patterns exist, then which of a library of different pattern types might be
more appropriate?
The old pre-quantitative geographical literature of the 1940s and 1950s contains spatial patterns
of various sorts that could never really be tested using conventional statistical methods. Moreover,
GeoComputation 17

many of the models of geography also represent strongly recurring spatial patterns, for example,
distance decay in trip frequencies from an origin. The quantitative geographers of the 1960s and
1970s tried to develop precise mathematical models to describe these patterns, but maybe they
attempted too much precision and in the process lost the spatial dimension. The HPC revolution
of the mid-1990s provides an opportunity to become less precise and more general, by developing
pattern recognition tools that can build up recurring map pattern libraries of recurrent idealised
forms. Suppose you ask the question how many different spatial patterns do British cities exhibit?
Currently this question cannot be answered but at least the tools exist to allow geographers (and
others) to start to find out. Openshaw (1994e) argues that a more generalised pattern recognition
approach provides the basis for a new look at geographical information with a view to extracting
useful new knowledge from it. Turton (1997, 1999) provides some of the first computer experi-
ments. But this is only possible now as we enter the petaflop era, and it becomes feasible to apply
pattern templates to many millions of locations at many different levels of resolution. This is an area
ripe for further research.

1.8  GEOCOMPUTATION AND FUTURE GEOGRAPHERS


Much of modern human geography is now in a mega-mess and is indefensible. Most is not geo-
graphical, much is little more than storytelling, much is intensely theoretical and complex, nearly all
is non-science based, there is little use of any of the world’s databases, large volumes are anecdotal
descriptions of the unique which are irrelevant to the needs of the modern world, and there is little or
no use of modern technology and no concern to meet the needs either of society or of commerce in a
fast-changing world; see Openshaw (1998a). Equally, quantitative geography is dead. It is no longer
taught in many geography departments, it has failed to become properly spatial, it cannot cope with
the needs of GIS, it emphasises statistical and mathematical tools that are simultaneously too com-
plex and too restrictive, and it fosters the impression of being an unattractive, out-of-date and old
legacy-based technology that is also out of touch with reality. Equally, there are problems with GIS,
which are just about management and capture of mappable information and have steadfastly failed
to develop beyond its original map-based origins. As a result, GIS remains surprisingly narrowly
focused, it is lacking in theory, it is largely devoid of much of the modelling and simulation relevant
to the modern world, and it is limited in what it can deliver. The time is ripe for something new that
can build on existing human and physical geographies; relates to GIS without being restrained by
it; makes use of modern informatics; is exciting, relevant and applied but not devoid of theory; has
depth but is not exclusive; and is acceptable to other sciences. It also needs to be able to invigorate
and excite new generations of geographers with a development path that links past and present to
the future and which also allows first-year students to participate. It has to be both evolutionary and
able to rapidly exploit new developments in a revolutionary manner when need be. However, if GC
is to survive and expand, then it also has to be no more difficult to the beginner than writing essays
on the life and times of a particular gendered ethnic group with distinctive sexual practices in a spe-
cific rural village! The view here is that GC has the potential to meet these objectives and is likely
to develop into a major paradigm in the new millennium.
It is argued that many areas within and outside of geography could benefit from the adoption of
a GC paradigm. Couclelis writes:

… geocomputation has the potential to influence a number of other spatial sciences, disciplines and
application areas with a spatial component, but also to be noticed beyond the walls of universities and
research centres. This potential is based on the fact that geocomputation blends well with several major
trends in contemporary society. It is obviously in tune with the computer revolution, and capitalizes
on the continuing dramatic expansion in computing power and the ubiquity of user-friendly, versatile
machines. It has a better chance than stodgy quantitative geography to attract the interest of the coming
generation of researchers. Couclelis (1998a, p. 25)
18 GeoComputation

Longley writes: ‘… GeoComputation has become integral to our understanding of spatial struc-
ture’ (Longley, 1998b, p. 83). However, there is no reason to assume that only quantitative geog-
raphy and GIS will benefit; indeed, those non-quantitative areas of geography which are concepts
or theory rich but data poor may also have much to gain; see Openshaw and Openshaw (1997) and
Openshaw (1996, 1998a).
It is also argued that there will be no highly visible HPC revolution that suddenly sweeps all before
it. Instead the HPC revolution is silent and almost invisible. Most of the potential users probably still
read the wrong literature and attend the wrong conferences to notice what is going on. A faster PC
is merely the sharpest tip of a massive iceberg of HPC developments. Yet in those areas that need it
and where a computational paradigm may be helpful, then there is a way forward. If the current HPC
machines are too slow, then be patient; soon there will be much faster ones, but you need to start
developing the new approaches now and then safeguard your software investment by using portable
programming languages and conforming to emerging software standards. However, you do not need
access to the world’s fastest HPC to start the process rolling. With modern parallel programming
tools, you can now write portable scalable codes that can be developed and proven to work on low-
end HPC platforms (e.g. workstation farms) before moving on to real-world large-scale applications.
Indeed you can even assemble your own workstation farms and test out your applications locally and
secure in the belief that if it works well on your workstation farm, it will probably do far better on a
real HPC machine. See Adnan et al. (2014) in this book for more information on parallel computing.
It is an interesting thought that GC could act as an attractor for computationally minded scientists
from other fields. It is becoming apparent that the problems of using HPC are generic and disci-
pline independent. Cross-discipline research initiatives could be a useful way forward until critical
masses of users within specific disciplines appear. In a geographical context, the combination of
large amounts of data due to GIS, the availability of new AI and CI techniques and other types of
computer-intensive analysis and modelling technology and the increasing accessibility to HPC look
set to create a new style of computational geography that in the longer term will revolutionise many
aspects of the subject by creating new ways of doing nearly all kinds of geography. However, if this
is to happen, then we need to attract computationally experienced researchers from outside. GC has
a most critical and focal role to play in this process.
The essential challenge is to use HPC to extend and expand our abilities to model and anal-
yse all types of geographical systems and not merely those which are already quantitative and
computerised. It would be a dreadful waste if all they were used for was to make old legacy tools
run faster resulting in a kind of HPC-based revival of old-fashioned quantitative geography. The
opportunities are far broader than any backward looking view would suggest. In some areas,
almost instant benefits can be gained, for example, by switching to computationally intensive sta-
tistical methods to reduce reliance on untenable assumptions or to discover new information about
the behaviour of models. In other areas, whole new GC applications will emerge. In general, it is
likely that those with access to the biggest and fastest parallel hardware may well be best placed
to develop leadership in this new form of internationally competitive computational-based geo-
graphical science. As HPC continues to develop, it is likely that many subjects, not just geography,
will have to undergo a major change in how they operate as HPC is more widely recognised as a
paradigm in its own right.
In a world full of unimaginable data riches, maybe (just maybe) we can compute our way out of a
massive data swamp fenced in by scores of traditional restrictions and discover how best to do more
useful things with it. It is increasingly recognised that data are the raw materials of the informa-
tion age. They are extremely relevant to commerce and the functioning of society. New scientific
discoveries, new knowledge, new ideas and new insights into the behaviour of complex physical and
human systems will increasingly have to be created by a new kind of knowledge industry, some-
thing equivalent to a new knowledge manufacturing process. Maybe GC could become the geogra-
pher’s own version of this knowledge processing industry of the new millennium. It will not be easy
because many of the systems being studied are non-linear, chaotic, noisy and extremely complex in
GeoComputation 19

ways we do not yet properly comprehend. Quite often all we have is masses of data that reflect the
operation of as yet unidentified systems and processes about which we know next to nothing. It is all
very complex, challenging and exciting. Here lies one of the geocyberspace’s research frontiers. It is
easily reached but moving it on will be far harder. Those who readily deride data-driven approaches
as data dredging, data trawling and data mining should appreciate how difficult it really is to apply
science to these problems. It is far, far easier, and simpler, to be deductive than inductive; it is just
that we no longer have the luxury of being able to do this. Immense complexity is the main reason
why GC is needed and, once established, will last for a long time. However, it is also important not
to neglect the new opportunities for building models of geo-systems, for understanding processes,
for simulating new and old theories and generally for joining in the computation fun and games
increasingly being enjoyed by most other sciences.
What are needed now are the new ideas and young enthusiastic freethinking spirits able to go
and develop hitherto impossible or unthought of GC tools, the cleverest people from many different
disciplines united by different aspects of the GC challenge and who believe it is both possible and
worthwhile. We now know enough how to start the process rolling (albeit slowly), but many others
are now needed to develop the many threads and help guide it to a successful conclusion. The pres-
ent is a very exciting time for computationally minded geographers, and hopefully GC is a rallying
call to which many more will feel able to respond to in the years ahead.

REFERENCES
Adnan, M., Longley, P. A., Singleton, A. D., and Turton, I. 2014. Parallel computing in geography. In
GeoComputation, 2nd edn., eds. R. J. Abrahart and L. See, pp. 49–68. Boca Raton, FL: Taylor & Francis
Group.
Beriro, D. J., Abrahart, R. J., and Diplock, G. 2014. Genetic programming: Magic bullet, poisoned chalice or
two headed monster? In GeoComputation, 2nd edn., eds. R. J. Abrahart and L. See, pp. 169–202. Boca
Raton, FL: Taylor & Francis Group.
Bezdek, J. C. 1994. What is computational intelligence? In Computational Intelligence: Imitating Life, eds.
J. M. Zurada, R. J. Marks, and C. J. Robinson, pp. 1–12. New York: IEEE.
Birkin, M., Clarke, G., Clarke, M., and Wilson, A. G. 1996. Intelligent GIS. Cambridge, U.K.: Geoinformation
International.
Birkin, M. and Malleson, N. 2014. E-Research and GeoComputation. In GeoComputation, 2nd edn., eds. R. J.
Abrahart and L. See, pp. 241–258. Boca Raton, FL: Taylor & Francis Group.
Couclelis, H. 1998a. Geocomputation in context. In Geocomputation: A Primer, eds. P. A. Longley, S. M. Brooks,
R. McDonnell, and B. Macmillan, pp. 17–30. Chichester, U.K.: Wiley.
Couclelis, H. 1998b. Geocomputation and space. Environment and Planning B 25: 41–47.
Dibble, C. 1996. Theory in a complex world: Agent based simulation of geographical systems. In Proceedings
of the First International Conference on GeoComputation, September 1996, Vol. 1, pp. 210–213. Leeds,
U.K.: Leeds University.
Diplock, G. J. 1996. The application of evolutionary computing techniques to spatial interaction modelling,
Unpublished PhD thesis. Leeds, U.K.: University of Leeds.
Diplock, G. J. 1998. Building new spatial interaction models using genetic programming and a supercomputer.
Environment and Planning A 30: 1893–1904.
Diplock, G. J. and Openshaw, S. 1996. Using simple genetic algorithms to calibrate spatial interaction models.
Geographical Analysis 28: 262–279.
Dobson, J. E. 1983. Automated geography. The Professional Geographer 35: 135–143.
Dobson, J. E. 1993. The geographic revolution: A retrospective on the age of automated geography.
The Professional Geographer 45: 431–439.
Gilbert, G. N. and Doran, J. 1994. Simulating Societies: The Computer Simulation of Social Phenomena.
London, U.K.: UCL Press.
Gilbert, N. and Conte, R., eds. 1995. Artificial Societies. London, U.K.: UCL Press.
Harris, B. 1985. Some notes on parallel computing with special reference to transportation and land use model-
ling. Environment and Planning A 17: 1275–1278.
Heppenstall, A. J. and Harland, K. 2014. Evolutionary algorithms. In GeoComputation, 2nd edn., eds. R. J.
Abrahart and L. See, pp. 143–168. Boca Raton, FL: Taylor & Francis Group.
20 GeoComputation

Koza, J. R. 1992. Genetic Programming. Cambridge, MA: MIT Press.


Koza, J. R. 1994. Genetic Programming II: Automatic Discovery of Re-Usable Programs. Cambridge, MA:
MIT Press.
Longley, P. A. 1998a. Foundations. In Geocomputation: A Primer, eds. P. A. Longley, S. M. Brooks,
R. McDonnell, and B. Macmillan, pp. 1–16. Chichester, U.K.: Wiley.
Longley, P. A. 1998b. Developments in geocomputation. Computers, Environment and Urban Systems 22:
81–83.
Longley, P. A., Brooks, S. M., McDonnell, R., and Macmillan, B. 1998. Geocomputation: A Primer. Chichester,
U.K.: Wiley.
Macmillan, B. 1998. Epilogue. In Geocomputation: A Primer, eds. P. A. Longley, S. M. Brooks, R. McDonnell,
and B. Macmillan, pp. 257–264. Chichester, U.K.: Wiley.
Openshaw, S. 1976. A geographical solution to scale and aggregation problems in region building, partition-
ing and spatial modelling. Transactions of the Institute of British Geographers New Series 2: 459–472.
Openshaw, S. 1978. An empirical study of some zone design criteria. Environment and Planning A 10: 781–794.
Openshaw, S. 1984. Ecological fallacies and the analysis of areal census data. Environment and Planning A
16: 17–31.
Openshaw, S. 1987. Some applications of supercomputers in urban and regional analysis and modelling.
Environment and Planning A 19: 853–860.
Openshaw, S. 1988. Building an automated modelling system to explore a universe of spatial interaction mod-
els. Geographical Analysis 20: 31–46.
Openshaw, S. 1994a. Computational human geography: Towards a research agenda. Environment and Planning
A 26: 499–505.
Openshaw, S. 1994b. Computational human geography: Exploring the geocyberspace. Leeds Review 37:
201–220.
Openshaw, S. 1994c. Neuroclassification of spatial data. In Neural Nets: Applications in Geography, eds.
B. C. Hewitson and R. Crane, pp. 53–70. Dordrecht, the Netherlands: Kluwer Academic.
Openshaw, S. 1994d. Two exploratory space–time attribute pattern analysers relevant to GIS. In Spatial Analysis
and GIS, eds. S. Fotheringham and P. Rogerson, pp. 83–104. London, U.K.: Taylor & Francis Group.
Openshaw, S. 1994e. A concepts rich approach to spatial analysis, theory generation and scientific discovery in
GIS using massively parallel computing. In Innovations in GIS, ed. M. Worboys, pp. 123–138. London,
U.K.: Taylor & Francis Group.
Openshaw, S. 1995a. Human systems modelling as a new grand challenge area in science. Environment and
Planning A 27: 159–164.
Openshaw, S. 1995b. Developing automated and smart spatial pattern exploration tools for GIS applications.
The Statistician 44: 3–16.
Openshaw, S. 1996. Fuzzy logic as a new scientific paradigm for doing geography. Environment and Planning
A 28: 761–768.
Openshaw, S. 1998a. Towards a more computationally minded scientific human geography. Environment and
Planning A 30: 317–332.
Openshaw, S. 1998b. Building automated geographical analysis and explanation machines. In Geocomputation:
A Primer, eds. P. A. Longley, S. M. Brooks, R. McDonnell, and B. Macmillan, pp. 95–116. Chichester,
U.K.: Wiley.
Openshaw, S. 1998c. Neural network, genetic, and fuzzy logic models of spatial interactions. Environment and
Planning A 30: 1857–1972.
Openshaw, S. and Alvanides, S. 1999. Applying geocomputation to the analysis of spatial distributions.
In Geographical Information Systems: Principles and Technical Issues, Vol. 1, eds. P. A. Longley,
M. F. Goodchild, D. J. Maguire, and D. W. Rhind. New York: Wiley.
Openshaw, S., Blake, M., and Wymer, C. 1995. Using neurocomputing methods to classify Britain’s residential
areas. In Innovations in GIS 2, ed. P. Fisher, pp. 97–112. London, U.K.: Taylor & Francis Group.
Openshaw, S., Charlton, M., Wymer, C., and Craft, A. 1987. A mark 1 geographical analysis machine for the
automated analysis of point data sets. International Journal of GIS 1: 335–358.
Openshaw, S. and Craft, A. 1991. Using the geographical analysis machine to search for evidence of clusters
and clustering in childhood leukaemia and non-Hodgkin lymphomas in Britain. In The Geographical
Epidemiology of Childhood Leukaemia and Non-Hodgkin Lymphomas in Great Britain, 1966–83, ed.
G. Draper, pp. 109–122. London, U.K.: HMSO.
Openshaw, S., Cross, A., and Charlton, M. 1990. Building a prototype geographical correlates exploration
machine. International Journal of GIS 3: 297–312.
Openshaw, S. and Openshaw, C. A. 1997. Artificial Intelligence in Geography. Chichester, U.K.: Wiley.
GeoComputation 21

Openshaw, S. and Perree, T. 1996. User centered intelligent spatial analysis of point data. In Innovations in GIS
3, ed. D. Parker, pp. 119–134. London, U.K.: Taylor & Francis Group.
Openshaw, S. and Rao, L. 1995. Algorithms for re-engineering 1991 census geography. Environment and
Planning A 27: 425–446.
Openshaw, S. and Schmidt, J. 1996. Parallel simulated annealing and genetic algorithms for re-engineering
zoning systems. Geographical Systems 3: 201–220.
Openshaw, S. and Turton, I. 1996. A parallel Kohonen algorithm for the classification of large spatial datasets.
Computers and Geosciences 22: 1019–1026.
Openshaw, S. and Turton, I. 1999. An Introduction to High Performance Computing and the Art of Parallel
Programming: For Geographers, Social Scientists, and Engineers, London, U.K.: Routledge.
Rees, P. and Turton, I. 1998. Geocomputation: Solving geographical problems with computing power.
Environment and Planning A 30: 1835–1838.
Turton, I. 1997. Application of pattern recognition to concept discovery in geography, Unpublished MSc thesis.
Leeds, U.K.: University of Leeds.
Turton, I. 1999. Application of pattern recognition to concept discovery in geography. In Innovations in GIS 6,
ed. B. Gittings, pp. 144–156. London, U.K.: Taylor & Francis Group.
Turton, I. and Openshaw, S. 1996. Modelling and optimising flows using parallel spatial interaction models.
In Euro-Par 96 Parallel Processing, Vol. 2, Lecture Notes in Computer Science 1124, eds. L. Bouge,
P. Fraigniaud, A. Mignotte, and Y. Roberts, pp. 270–275. Berlin, Germany: Springer.
Turton, I. and Openshaw, S. 1998. High performance computing and geography: Developments, issues and
case studies. Environmental and Planning A 30: 1839–1856.
Turton, I., Openshaw, S., and Diplock, G. J. 1996. Some geographical applications of genetic programming on
the Cray T3D supercomputer. In UK Parallel 96: Proceedings of the British Computer Society Parallel
Processing Specialist Group Annual Conference, eds. C. Jesshope and A. Shafarenko, pp. 135–150.
Berlin, Germany: Springer.
Turton, I., Openshaw, S., and Diplock, G. J. 1997. A genetic programming approach to building new spatial
models relevant to GIS. In Innovations in GIS 4, ed. Z. Kemp, pp. 89–102. London, U.K.: Taylor &
Francis Group.
Wilson, A. G. 1970. Entropy in Urban and Regional Modelling. London, U.K.: Pion.
Wilson, A. G. 1974. Urban and Regional Models in Geography and Planning. Chichester, U.K.: Wiley.
2 Modelling Spatial
Morphologies
Fractal Patterns from
Cellular Automata
Michael Batty and Paul A. Longley

CONTENTS
Abstract............................................................................................................................................. 23
2.1 Cellular Automata, GeoComputation and Fractal Morphologies...........................................24
2.2 Elements of Strict CA.............................................................................................................. 25
2.3 Origins of CA..........................................................................................................................28
2.4 Neighbourhoods, Transitions and Conditions......................................................................... 29
2.5 The Generic Model: Reaction and Diffusion.......................................................................... 31
2.6 Origins of Fractal Geometry and Morphology.......................................................................34
2.7 Simulating Fractal Growth Using CA..................................................................................... 35
2.8 More Complicated Growth Regimes....................................................................................... 39
2.9 Applications to Cities and Related Ecologies.......................................................................... 41
2.10 Conclusions..............................................................................................................................44
2.11 Further Reading.......................................................................................................................44
References......................................................................................................................................... 45

ABSTRACT
In this chapter, we introduce a technique of simulation that articulates the system of interest as
a set of cells, in our case, a 2D tessellation of cells that pertain to different land uses or socio-
economic activities that define cities. Cellular automata (CA) are defined in such a way that these
cells change state, from one land use to another, for example, dependent on a series of rules
that define the way these land uses influence one another, usually in very local neighbourhoods
around each cell in question. This is the way local action translates into global patterns, and
CA tend to be the essential mechanism that determines how global patterns emerge from local
order which can often be interpreted as geometries and spatial morphologies that are fractals.
Having introduced CA, we then outline the idea of fractals which have structures across many
spatial and/or temporal scales that are similar to one another at each scale. The classic example
is a tree-like structure or any hierarchical object such as the set of nested road systems from
freeways to local streets or the set of markets and retail centres which define the hierarchy of
central places. CA, of course, can be used to represent other local processes such as forest fires
and a variety of percolation phenomena that translate into ordered patterns at higher levels and
are not restricted to cities. Having introduced CA, we then develop a generic equation for spatial
processes based on reaction–diffusion and introduce ideas about fractals. We consider different

23
24 GeoComputation

kinds of patterns that are generated by CA giving various examples in the 2D domain, and we
then illustrate how these kinds of models have been used to simulate urban development pat-
terns. We develop a number of critiques of this modelling approach, review the key historical
and contemporary literature and then present relevant references.

2.1 CELLULAR AUTOMATA, GEOCOMPUTATION


AND FRACTAL MORPHOLOGIES
Cellular automata, or CAs for short, are computable objects existing in time and space whose char-
acteristics, usually called states, change discretely and uniformly as a function of the states of
neighbouring objects, that is, those that are in their immediate vicinity. The objects are usually
conceived as occupying spaces which are called cells, with processes for changing the state of each
cell through time and space usually articulated as simple rules which control the influence of the
neighbourhood on each cell. This formulation is quite general and many systems can be represented
as CA, but the essence of such modelling consists of ensuring that changes in space and time are
always generated locally, by cells which are strictly adjacent to one another. From such a represen-
tation comes the important notion that CA simulate processes where local action generates global
order, where global or centralised order emerges as a consequence of applying local or decentralised
rules which in turn embody local processes. Systems which cannot be reduced to models of such
local processes are therefore not likely to be candidates for CA, and although this might seem to
exclude a vast array of geographical processes where change seems to be a function of action at a
distance, this criterion is not so restrictive as might appear at first sight.
In this characterization, CA embody processes that operate locally in such a way that order
emerges globally at higher scales in space or time or both which are defined in any number of
dimensions. These generate forms that are globally similar in some sense to the elements of the
local form that often represent the modules that form the basis for the automata. For example, let
us start with a 2D cellular space where one of the cells in the space is occupied; we can then define
a rule that says that any occupied cell generates another occupied cell immediately adjacent to the
cell in question at, say, positions to the northwest and the northeast of the starting cell. If we apply
this local rule over and over again to the growing structure, we generate a tree-like form whose
structure at any scale is represented as a compact intertwined lattice of trees which manifest self-
similarity on all scales. We show this in Figure 2.1 where we see the original space which is the
initial condition (Figure 2.1a), the rule for generating the morphology in terms of any occupied
cells (Figure 2.1b) and the growing structure at subsequent levels of scale, up to the seventh order.

7 7 7 7 7 7 7 7
6 6 6 6 6 6 6
0 5 5 5 5 5 5
4 4 4 4 4
(a)
3 3 3 3
2 2 2
1 1
0

(b) (c)

FIGURE 2.1  Basic elements of a CA: generating a fractal. (a) The initiator. (b) The generator – if this is
applied systematically, it generates the fractal. (c) The fractal – as an intertwined set of trees.
Modelling Spatial Morphologies 25

The structure which emerges is called a fractal which essentially is a form that is grown from the
bottom up and which manifests strict self-similarity on any scale with respect to the lower-order
scales from which it is generated. In this case, it is a set of trees that overlap one another (as we
cannot see the individual trees due to the limits of the 2D representation), but the way they are
generated is clear from Figure 2.1.
Fractals are in fact discrete forms or patterns that repeat themselves at different scales. In cities,
locations which deliver services to a local population often enshrined in the town centre or central
business district repeat themselves over different spatial scales, there being less numbers of bigger
centres as the spatial scale increases. These centres vary systematically in their size and shape with
their shape being based on a nested hierarchy of hinterlands around each centre serving ever larger
populations with ever more specialised goods. The size of a centre increases exponentially accord-
ing to a power law – the so-called rank size rule – as the space or hinterland around each centre
increases in size with scale. City size distributions usually follow a power law, while the networks
which determine how energy is distributed to each of these centres also follow some sort of fractal
pattern which is usually tree-like. In the last 20 years, these principles have been elaborated for
cities (Batty and Longley, 1994; Batty, 2013), although no completely coherent theory exists as yet.
Essentially in this chapter, we will present methods whereby fractal structures in cities can be
generated using CA. In this sense, cities are essentially fractal structures and thus CA models rep-
resent an obvious way in which they can be generated. In fact, generating fractal structures requires
algorithms that are essentially automata, and the term cell which is often attached to these models
simply implies that the representations are often spatial and that regular cells on a grid or at least
regular tessellations such as those found in hexagonal landscapes are the forms used to generate
fractal morphologies. Fractals come in two varieties – those that are strictly self-similar where the
pattern is highly regular at each spatial/temporal scale such as the trees that we show in Figure 2.1
and those that are statistically self-similar where the pattern at each scale is statistically similar
but not formally identical in terms of shape at other scales. Real-world examples are invariably
statistically self-similar because there is considerable noise that is associated with how these struc-
tures evolve in reality, whereas spatial designs are often produced with no noise whatsoever. Thus,
regular deterministic fractal patterns are much more likely to be generated by designers working to
produce idealised forms, whereas statistical fractals represent the geometry of nature (Mandelbrot,
1983). We will introduce both in the presentation below, as for example, in Figures 2.4 and 2.5.
Here, we will first outline the elements of CA in its strictest form. We then sketch the origins of
CA as a way of generating fractal structure, and we define its basic rudiments which are based on
neighbourhoods, transition rules and initial conditions. We will digress a little and generalise the
approach showing how CA relate to wider spatial models based on the generic reaction–diffusion
approach. We then provide some ideas about the origins of fractal geometry and morphology, start-
ing with basic CA models based on growth from single seeds which we then elaborate as growth
from many seeds, showing how these models pertain to self-organisation. We conclude with a brief
survey of applications, guiding the reader to practical examples and commenting more critically on
the limitations of these approaches as urban simulation models. We then outline further reading and
introduce key references.

2.2  ELEMENTS OF STRICT CA


Formally, we can state the principles of CA in terms of four elements. First, there are cells, objects
in any dimensional space but manifesting some adjacency or proximity to one another if they are
to relate in the local manner prescribed by such a model. Second, each cell can take on only one
state at any one time from a set of states which define the attributes of the system. Third, the state
of any cell depends on the states and configurations of other cells in the neighbourhood of that cell,
the neighbourhood being the immediately adjacent set of cells which are next to the cell in question
where next is defined in some precise and, in terms of strict CA, some local manner. Finally, there
26 GeoComputation

are transition rules which drive changes of state in each cell as some function of what exists or is
happening in the cell’s neighbourhood. There are further assumptions and conditions. It is assumed
that the transition rules must be uniform, that is, they must apply to every cell, state and neighbour-
hood at all times and that every change in state must be local, which in turn implies that there is no
action at a distance. There are conditions which specify the start and end points of the simulation
in space and time which are called initial and boundary conditions, respectively. Initial conditions
apply to the spatial configuration of cells and their states which start the process, as well as the time
at which the process begins. Boundary conditions refer to limits on the space or time over which the
CA is allowed to operate.
To illustrate these principles, we require an elementary example. The most usual configura-
tion of cells comprising a CA is based on a regular 2D tessellation such as a grid where the array
of square cells is contiguous to one another. The simplest categorization of states is that each cell
can be either alive or dead, active or inactive, occupied or empty, on or off, true or false, while the
neighbourhood within which any action changes the state of a cell is composed of the eight adjacent
cells in the band around the cell in question, at the eight points of the compass. This is the so-called
Moore neighbourhood. A very basic rule for changes from cells which are off to on might be as
follows: if any cell in the neighbourhood of any other cell in question is on, then that cell becomes
on. In this way, cells which are off are turned on, and those that are on remain on. To show how
these automata might change the state of an array of cells, we need an initial condition – a starting
point for the configuration of cells and also a stopping rule which in spatial terms is the boundary
condition. We will assume that the temporal is dictated by the spatial conditions in that once the
process begins from time zero, it finishes when the spatial boundary is reached. Our earlier example
manifests these conditions exactly: the starting point is the seed cell in Figure 2.1a. The way the rule
is operated in the Moore neighbourhood is shown in Figure 2.1b where a cell is switched on if it is
to the northwest or northeast of the already active cell. And the boundary condition is the extent of
the space as shown in Figure 2.1c.
If we assume a square grid which is a 100 × 100 square cellular array, we can fix the initial con-
figuration as one active or live on cell in its centre and start the process. Let us now assume that
a cell is switched on if there are one or more cells in its neighbourhood which are on. This differs
from our process in Figure 2.1 where the cell is only switched on if the cell to its bottom left or bot-
tom right is on. The new process is particularly simple. At every time period, each cell in the array
is examined, and if there is a live cell in its neighbourhood, then that cell is made live or switched
on. Here, on the first time cycle, the cells in the band around the centre cell each have a live cell in
their Moore neighbourhoods, and thus they are switched on. In the next iteration, the bands around
this first band all have live cells in their neighbourhoods and the same occurs. A process of growth
begins in regular bands around the initial seed site, with the spatial diffusion that this growth
implies, clearly originating from the operation of the rules on a system with a single seed site. You
can visualise this as a square band of cells spreading around a seed site, and it is clear that the pro-
cess could continue indefinitely if the array of cells were infinite.
This kind of growth and diffusion is an analogue to many systems. For example, consider the cel-
lular array as a grid of light bulbs all wired to those in their immediate (Moore) neighbourhood. The
rule is that we switch one on when one of those to which it has been wired has been switched on. If
we begin by switching the central bulb on, the process whereby all the bulbs are lit follows a regular
and complete diffusion. If the central seed were a population which grew in direct response to the
immediate space around it, like a city, then the process might mirror urban development. These
kinds of example can be multiplied indefinitely for any simple growth process from crystals to
cancers. The morphology produced is very simple in that it is one based on an entirely filled cluster
whose form is dictated by the underlying grid and by the influence of the neighbourhood. We should
also look at the model’s dynamics. The number of cells occupied in this model can be predicted as
a function of either time or space. Calling the number of cells at the horizontal or vertical distance
r from the seed N(r), the cells occupied can be predicted as N(r) = (2r + 1)2. As distance r and time t
Modelling Spatial Morphologies 27

are completely synchronised in this automata, then N(t) = (2t + 1)2 as well. If we plot the number of
cells which are live at each distance and time, that is, when r = t = 0, 1, 2, 3, …, then the sequence
follows the progression 1, 9, 25, 49, …, and so on.
It is also useful at this point to examine the dynamics of an equivalent 1D CA where the neigh-
bourhood is now a 3 × 1 set of cells, that is, each cell east and west of the cell in question. Using the
same rules as in the 2D CA, the resulting pattern is a horizontal line of cells diffusing from the cen-
tral cell in exactly the same manner as the 2D automata. It is now easy to guess the dynamics which
give the number of cells produced at distance r from the central cell and at time t as N(r) = (2r + 1)
and N(t) = (2t + 1). For now, simply note that the exponent on the general equations for N(r) and N(t) is
the dimension of the system, 2 for the 2D automata and 1 for the 1D. We will return to this, but now,
all the elements for our study of CA as a basis for spatial simulation have been assembled. Although
we will explore how these features can be adapted to generate many different types of spatial system
in the rest of this chapter, we can anticipate some of this before we digress back into the history and
origins of this powerful approach.
With these definitions and principles in mind, it is worth demonstrating just how flexible the
CA framework is at representing and simulating very diverse types of system. Readers who require
a thorough discussion with many examples, especially from physics, are referred to Toffoli and
Margolus (1987). Although CA give equal emphasis to objects and their relations in space and time,
the focus on cells means that the framework is organised from the spatial rather than the temporal
viewpoint. However, 2D arrays of cells, although the most usual, are simply one case, for CA can
exist in any number of dimensions, and all the principles generalise accordingly. One-dimensional
models can be used to model relations on a line, but space need not be real; it might simply be
used as an ordering principle; in this context, the cells might be, say, time cells. Three-dimensional
automata might be used to represent the explicit 3D world of terrain and built form, but in our expo-
sition, we consider the 2D world the most appropriate for spatial simulation (O’Sullivan and Perry,
2013). States can take on any value in a range of discrete values, while in geographical applications,
there is usually some argument as to whether the concept of neighbourhood should be relaxed. What
we refer to as strict CA are those automata where there is no action at a distance, that is, where the
neighbourhood of interest is entirely local, being composed of those cells which are topologically
nearest neighbours to each cell in question. Geographical systems, however, are often character-
ised by action at a distance, and if this is to be represented, then neighbourhoods must be defined
to reflect it. Such variants are better called CS models (after Albin, 1975), but for the moment, we
will restrict our focus to CA, despite the fact that many realisations of CA models for practical
applications are in fact CS models. In many instances, action at a distance is in fact the product of
the system’s dynamics – it is a consequence of local actions through time – and thus it is eminently
feasible to generate morphologies and their dynamics which display such properties using strict CA.
The major representational issue in CA modelling involves the extent to which the discrete-
ness which the framework demands matches the system’s elements, relations and behaviour. In
principle, any continuous system can be made discrete, and thus assuming that local action and
interaction characterise the system, CA is applicable. However, in practice, it is often difficult or
even impossible to associate cells and states of the model to those of the real system. For example,
consider a town whose basic elements are buildings. Within each building, there may be several
distinct activities, and thus cells cannot be buildings; they must be parts of buildings disaggre-
gated to the point where each distinct activity – state – is associated with a single cell. Often,
this is impossible from the available data with this problem usually being compounded at higher
levels of aggregation such as the census tract. The same problem may exist in defining states. No
matter how small a cell, there may always be more than one state associated with it in that the
elemental level may not be a state per se but some object that can take on more than one state
simultaneously. Sometimes, redefinition of the system can resolve such ambiguities, but often to
use CA at all, certain approximations have to be assumed; for example, a cell which may be a
geographical location, say, can have only one land use or state, and thus this may have to be the
28 GeoComputation

dominant land use. We have said little about time, but similar problems emerge where different
temporal processes requiring synchronisation in complex ways characterise the automata.

2.3  ORIGINS OF CA
CA date back to the very beginnings of digital computation. Alan Turing and John von Neumann,
who pioneered the notion that digital computation provided the basis for the universal machine,
both argued, albeit in somewhat different ways, that digital computation held out a promise for a
theory of machines that would be self-reproducible, that computers through their software could
embody rules that would enable them to reproduce their structure, thus laying open the possibility
that digital computation might form the basis of life itself. This was a bold and daring speculation
but it followed quite naturally from the philosophy of computation established in the 1920s and
1930s. von Neumann perhaps did most to establish the field in that up until his death in 1956, he
was working on the notion that a set of rules or instructions could be found which would provide
the software for reproducibility. The idea of automata flowed quite easily from this conception, and
the notion that the elements of reproducibility might be in terms of cells was an appeal more to the
possibility of using computers as analogues to create life than any actual embodiment of such func-
tions through computer hardware.
von Neumann worked on many projects, CA being only one. His work was published posthu-
mously by his student and colleague Arthur Burks who carried on this work at the University of
Michigan in the 1960s and 1970s (Burks, 1970) where, through his Logic of Computers Group,
he kept the field alive until the glory years began. These years were fallow in that although von
Neumann’s insights marked his usual genius, computer hardware and software had not reached the
point where much could be done with CA. In fact, progress came from a much simpler, more visual
approach to automata. von Neumann had drawn some of his inspiration from Stanislaw Ulam, the
mathematician who worked with him on the Manhattan project. Ulam had suggested to him as early
as 1950 that simple CA could be found in sets of local rules that generated mathematical patterns in
2- and 3D space where global order could be produced from local action (Ulam, 1962, 1976). It was
this line of thinking that was drawn out, as much because in 1970, John Conway, a mathematician
in Cambridge, England, suggested a parlour game called Life which combined all the notions of CA
into a model which simulated the key elements of reproduction in the simplest possible way. Life
has become the exemplar par excellence of CA, but its popularity rests on the fact that a generation
of hackers took up Conway’s idea and explored in countless ways the kinds of complexity which
emerge from such simplicity.
It is probably worth stating the elements of Life for it is a more general embodiment of the key
elements of CA than our examples so far. In essence, Life can be played out on any set of cells which
exist in any space, but it is most convenient to think of this space as being a regular tessellation of
the 2D plane such as the usual cellular grid. Any cell can be alive or dead, on or off, and there are
two rules for cells becoming alive/giving birth or dying/not surviving. The rules are simplicity itself.
A cell which is not alive becomes alive if there are exactly three live cells immediately adjacent to
it in its Moore neighbourhood. A cell remains alive if there are two or three live cells adjacent to it,
otherwise it dies. Less than two adjacent cells implies the cell dies from isolation, more than three
from overcrowding. The event that set the field humming in 1970 was John Conway’s challenge
reported by Gardner (1970) in his recreational mathematics column in Scientific American that he,
Conway, would give a prize of $50 to the first person who could unequivocally demonstrate that cer-
tain configurations of Life could be self-perpetuating. The challenge was won by Bill Gosper and his
group at MIT within the year who showed that a particular configuration of cells and their dynamics
called a glider gun would, under these rules, spawn live cells indefinitely (Poundstone, 1985).
However suggestive the game of Life might be, the original logic of automata eventually
came to fruition. Burk’s group produced some of the basic ideas which now serve to underpin
complexity theory. Work on genetic algorithms associated with Holland (1975 [1992]) and with
Modelling Spatial Morphologies 29

cooperative evolutionary game theory (Axelrod, 1984) has come from Michigan as did new devel-
opments of CA-like models in the fast-growing field of artificial life (Langton, 1989). Much of this
work has been quickly disseminated, linked to more general approaches to systems and complexity
theory and joined to new developments in morphology and non-linear dynamics such as fractal
geometry, chaos and bifurcation theory. The field itself has also been the subject of more funda-
mental theoretical explorations particularly by Wolfram (1984) who has classified CA in terms of
four varieties of system stability, and there have been various attempts to consider CA as parallel
computation (Toffoli and Margolus, 1987). Indeed, Wolfram (2002) in a remarkable and somewhat
speculative book even goes as far as to state that the principles of CA represent A New Kind of
Science! Applications now abound in many fields which have a spatial bias and involve the evolu-
tion of populations, from ecology to astrophysics, but all are marked by a strong pedagogic flavour
(O’Sullivan and Perry, 2013). It would appear that CA are most useful in simplifying phenomena
to the point where the kernel of any local–global interaction is identified, and this has meant that
full-scale systems simulations based on CA are still rare, perhaps unlikely in that their charm and
attraction lie in their ability to reduce systems to their barest essentials.

2.4  NEIGHBOURHOODS, TRANSITIONS AND CONDITIONS


We will begin by examining the range of different CA that might be constructed by varying
neighbourhoods, transition rules, initial conditions and system states. Figure 2.2 illustrates four
different types of neighbourhood which are all based on the notion that the neighbourhood

(a) (b)

(c) (d)

FIGURE 2.2  Cellular neighbourhoods. (a) Moore. (b) von Neumann. (c) Extended von Neumann. (d) Non-
symmetric regular.
30 GeoComputation

around any cell is composed of cells which are geometrically contiguous. It is entirely possible
to consider neighbourhoods where the concept of locality does not mean physical contiguity,
that the cells comprising the neighbourhood are scattered within the space, especially if the
cells of the CA are not spatial in the Euclidean sense. But such examples stretch the concept of
GeoComputation and we will avoid them here. In Figure 2.2a through c, the cells comprising
each neighbourhood are symmetrically arranged, whereas in Figure 2.2d, there is no symmetry,
although the property of uniformity, which means that every cell in the system has the same form
of neighbourhood, imposes a meta-regularity on the automata. The neighbourhood in Figure 2.2a
is called the Moore neighbourhood, in contrast to the reduced 3 × 3 cell space (CS) in Figure 2.2b
which is the von Neumann/Moore neighbourhood. The Moore neighbourhood is in fact the most
usual and the most general. The pattern in Figure 2.2c is a symmetrically displaced/extended
version of the von Neumann neighbourhood, whereas that in Figure 2.2d is more randomly con-
figured, although its form must have meaning to the problem in hand. Within the complete 3 × 3
cellular space, there are a total of∑ (9!/ [(9 − n)! n !]) combinations or forms (where the summa-
n
tion over n is taken from 1 to 9). This gives 512 possible neighbourhoods whose cells are contigu-
ous to one another within the 3 × 3 space, and this admits an enormous variety of patterns that
might be generated by such CA. In this context, however, we will largely deal with the Moore
neighbourhood.
If we turn to patterns within the neighbourhood which generate different transition rules, the
number of possibilities is even greater. Let us assume that each cell is either on or off, the two-
state characterisation that we will use for most of the examples in this chapter. Then for the von
Neumann neighbourhood in Figure 2.2b which consists of 5 cells, there are 25 or 32 different
configurations of on–off cell patterns that affect the transition rule. If the transition rule is one of
switching the central neighbourhood cell on or off if a certain set of patterns occurs, then there
are 232 possible automata that might result. In the case of the Moore neighbourhood which has
9 cells, then the number of possible automata is 2512, which is an astronomical number, twice as
large as the number of elementary particles in the universe (Toffoli and Margolus, 1987)! There
are of course not two possible neighbourhoods – the von Neumann and Moore – but 512 for which
these computations can be envisaged.
Patterns inside neighbourhoods interact with the shape of neighbourhoods themselves, and this
complicates the concatenation of neighbourhoods with patterns. But the point is that this shows
that enormous variety can be generated by thinking in these terms about the kinds of patterns that
might be computed using CA. Our discussion is devoid, however, of any meaning to the pattern of
cells, but it does illustrate the possibility that any conceivable pattern might be computed using CA.
Readers will have to think a little about these implications, and if they find difficulty in envisaging
these possibilities, first, think of all the possible neighbourhoods one might construct based on a
3 × 3 grid – begin to write them out to convince yourself that there are 512 possibilities or 511 if the
neighbourhood with no cells is excluded. Then think about the number of different on–off configu-
rations within the 3 × 3 space which might trigger some action or transition. Start to write these out
too. You will give up quite soon but at least this will demonstrate the enormous array of possible
structures that can be built from these simple bits using the CA approach.
There are three distinct sets of initial conditions which are associated with different types
of growth model and different characterizations of states. The simplest condition involves an
automaton which begins to operate on a single cell which is switched on in a two-state (on/off
developed/non-developed) system. The best example is the one we noted earlier which gives rise
to the diffusion from a single seed, often placed at the centre of the cellular space. The second
condition is a straightforward generalisation of this to more than one seed. These two types of
condition might be thought of as invoking growth processes within a single city or system of
cities, for example. The third condition involves a system that is already complete in that every
Modelling Spatial Morphologies 31

cell is already in one state or the other and that the emphasis is on changing states, not upon
further growth. Of course, this is often a matter of interpretation for the idea of developed and
non-developed states might be seen in a similar way where the focus is on change rather than
growth. We will explore all three of these starting points in the examples below in Sections 2.7
and 2.8, but before we do any of this, we need to step back, digress somewhat and consider how
CA models might be special cases of some more generic modelling structure. To progress this,
we will introduce the formal framework based on reaction–diffusion. After this, we need to say
something about the morphologies that we are generating and give some brief outline of fractal
geometry. At that point, we will return to the theme of CA modelling and pick up on various
examples that demonstrate the logic of this approach to GeoComputation.

2.5  THE GENERIC MODEL: REACTION AND DIFFUSION


The reaction–diffusion structure can be written generically as

∑x (t )P
xk (t + 1) = α xk (t ) + β
j
j jk + λ zk (t ) (2.1)

where
xk(t + 1), xj(t) is the state of the system in location or cell k, j at times t + 1, t, respectively
Pjk is a transition value, in this case a probability, between cell k and j whose cells sum to 1 across
their rows
zk(t) is an exogenous input which influences the state of cell k

The first term α xk (t) is the reaction, the second term the diffusion and the third term the external
driver. Each of these forces is weighted by α, β, λ,  respectively, with these weights summing
to 1. It is easy to show that the state of the cells is in fact probabilities of the occurrence of some
attribute when α + β + λ = 1, 0 ≤ α, β, λ ≤ 1, and the transition probabilities are in the classic form
where∑ k
Pjk (t ) = 1. Then, if we sum Equation 2.1 over k, noting that the vectors zk (t ) = 1 ∑ k

and ∑ x (t ) = 1, then
j
j

∑x (t + 1) = α∑x (t ) + β∑x (t )∑P


k
k
k
k
j
j
k
jk +λ ∑z (t ).
k
k

 (2.2)

= α +β +λ =1 

The probability structure is thus conserved through the reaction, the diffusion and the external driver.
We can develop several different model representations using the structure in Equations 2.1
and 2.2. Whether or not the process converges to a steady state depends on the extent to which its
influences – reactions, diffusions and external events – dominate the dynamics. In the absence of
external drivers, there is a strong chance that the process will converge if the actions and reactions
are well-defined and stable transformations. Let us assume that the state variable xk(t) is a probability.
Then in the structure which consists of simply reaction and diffusion with closure to the outside
world, that is, λzk(t) = 0, the final probability can be computed from solving

xk (t + 1) = αxk (t ) + β ∑x (t )P . (2.3)
j
j jk


32 GeoComputation

This will converge under certain circumstances to

xk (1 − α) β−1 = ∑x P , (2.4)
j
j jk


which is similar to the case where the reaction is incorporated into the diffusion – where α = 0 and
β = 1 with

∑x (t )P = ∑x (t )P . (2.5)
xk (t + 1) = β
j
j jk
j
j jk


In this form, Equation 2.5 is a first-order Markov chain or process that under certain conditions of
strong connectivity of the transition matrix [Pjk] converges to the steady-state xk = ∑
x j Pjk where
j
xk is a stable probability vector that results when the diffusion has completely worked itself out. In
this case, the final state of the system [xk] is independent of the initial conditions [xk(t = 1)]. A variety
of models ranging from spatial interaction to social opinion pooling have been based on these kinds
of structure (Batty, 2013). The most well known is the PageRank algorithm that attributes the suc-
cess of a web page to the process of dynamics implied by the reaction–diffusion equation where the
reaction is constant for any page, that is, from the process where
1
xk (t + 1) = α
N
+ (1 − α) ∑x (t )P . (2.6)
j
j jk


Note that this process assigns the importance of the event (page) or state xk(t + 1) to the random
chance α/N plus the assignment of importance of all other events to the event in question given by
(1 − α)∑ j
x j (t )Pjk . This in fact is the original variant of the algorithm used to rank web pages in
the Google search engine (Brin and Page, 1998).
The CA model can be written in terms of the diffusion model without any reaction and external
drivers. Then the equation becomes

xk (t + 1) = ∑x (t )P , (2.7)
j
j jk


where
the vector xk(t + 1) is the pattern of cells which are switched on at time t + 1
xk(t) is the initial or predecessor pattern of cells at time t
the matrix Pjk is a translation of the set of cellular rules into a form that maps xk(t) into xk(t + 1)
It is in fact rare for this structure to be used to represent CA models largely because convergence is
not strictly a property of such models for these tend to be models in which the occupancy of cells
increases through time, enlarging a space or lattice rather than being distributed across a fixed space.
However, what is significant in terms of this structure is the fact that we can code the rules in the
matrix [Pjk] as pertaining to any size of neighbourhood, enlarging the neighbourhood to one which
covers the entire system if that is the way the system works. In this sense, the generic model not
only includes strict CA but also CS models which tend to be the norm when it comes to applica-
tions. If we add the reaction component, then all this does is to ensure that, as well as the cellular
rules applying to the existing configuration xk(t), the existing configuration is preserved as well (or
at least a fraction α of this is). In short, this can be used to ensure that once a cell is switched on, it
remains on. If we then add back the external driver, then this lets us override the cellular rules and
the reaction if necessary, and this is equivalent to introducing exogenous change.
To illustrate how we can simulate a simple CA using the generic structure in Equation 2.7, in
Figure 2.3, we take the tree-like generator from Figure 2.1 and we display this in a 5 × 5 system.
Modelling Spatial Morphologies 33

21 22 23 24 25
16 17 18 19 20
11 12 13 14 15
6 7 8 9 10
1 2 3 4 5
x(0) =
(a)

1 25
1

(b)
P=

25
(c) (d)

FIGURE 2.3  Generating a fractal using the generic diffusion model. (a) A 5 × 5 2D spatial system that can be
displayed as a 25 cell 1D system as shown in (d). (b) The generator in the 2D system. (c) The generated pattern
in the 5 × 5 system. (d) The matrix form of the CA model.

We have of course to make the dimensions of the model the same as that of the system so our
example is now much reduced in size to 25 cells. These cells are numbered in the square grid in
Figure 2.3a and we show the generator associated with the starting cell in Figure 2.3b. Note that the
starting cell is cell 3 and the generation of new cells which are switched on is at the northwest and
northeast of the initial cells 3, 7 and 9. In Figure 2.3c, we show the complete generation of the tree
for the 5 × 5 system. Now the starting vector of cells x(0) that are switched on – just cell 3 – is shown
at the top of Figure 2.3d, and below this is the matrix P where the main diagonal is set as positive
(i.e. 1) and the cells that get switched on for each cell considered are given by the dots below. The
way to interpret this is to look down each column which corresponds to a cell, and if there is a posi-
tive dot there, then the cell in question can be switched on but only if the vector x(0) is positive. This
operation is as follows: we take the row vector x(0) and multiply this by the matrix P, and if the main
diagonal of the matrix corresponds with a switched on cell in the vector, we look down the column
of the matrix and select those cells to be switched on which are positive.
This is hardly matrix multiplication, more a look-up table, and it is not stochastic in any way.
If we do this for the starting position, then as only cell 3 is positive, then column 3 is activated in
the matrix and the two cells in this column that correspond to those to be switched on are 7 and 9.
These duly get switched on in the new vector x(1) and then we consider how cells 3, 7 and 9 activate
their new neighbours. In this case, cell 3 acts in the same way but cells 7 and 9 activate 11, 13 and
15 which is the third row up in the tree structure in Figure 2.3c. And so the process continues in
building up trees, although in such a restricted space, we can only imagine the growing structures
across a much larger space. There are many variants we can consider. We can delete cells that are
already positive if we so specify a reaction, we can add new cells without taking into account any
considerations about neighbourhoods by using the exogenous driver and we can of course expand
the neighbourhoods to cover any areas of the space we want. In fact, the generic formulation gives
us all these possibilities, and in this sense, the reaction–diffusion framework is completely general.
34 GeoComputation

2.6  ORIGINS OF FRACTAL GEOMETRY AND MORPHOLOGY


There is now a very wide range of basic introductions to fractal geometry, and it is not the intention
here to revisit in detail the basic concepts of scale dependency and self-similarity and their applica-
tion to real-world objects: for a good introduction to this field, see, for example, Peitgen et al. (1992).
Here, we will briefly review the focus upon the application of fractal concepts to the modelling and
simulation of spatial systems (Frankhauser, 1993; Batty and Longley, 1994). In fact, the first appli-
cations of fractal ideas to cities were to render in more realistic detail patterns of land use generated
from cruder models which enable predictions at a higher level of resolution (Batty and Longley,
1986). The spirit of this work chimes with the views of the arch-popularist of fractals Mandelbrot
(1982) who said that ‘… the basic proof of a stochastic model of nature is in the seeing: numerical
comparisons must come second’ and aired such a view in the geographical sciences. The outcome
of these early experiments was an illustration of what is now developing into virtual city representa-
tions of urban structures that were purportedly implicit in many urban models but which had never
been articulated through any explicit land use geometry.
The first serious representations of spatial morphologies at the city level in terms of fractals
go back to the work of the mathematical and theoretical geographers in the 1960s (Tobler, 1970,
1979). These focused on developing the idea of self-similarity for lines defining boundaries where
a series of relations between the perimeter length of a fractal line and its relationship to the scale of
measurement showed that successive self-similar detail is picked up for fractal objects as the scale
gets finer. This builds on the classic coastline conundrum developed by Mandelbrot (1967) which
shows that the length of the line increases indefinitely as the scale gets finer but the area enclosed
by the line tends to a fixed areal limit. There is a range of measures of the ways in which fractal
phenomenon fills space (Batty and Longley, 1994), but the following measure sets out to do so by
relating the number of parts into which a line can be divided, and its length, to some measure of
its scale. Scaling relations may be derived with respect to an irregular line of unspecified length
between two fixed points.
We begin by defining a scale of resolution r 0 such that when this line is approximated by a
sequence of contiguous segments or chords, each of length r 0, this yields N0 such chords. Next, we
determine a new scale of resolution r1 which is less than r 0, that is, r1 < r0. Applying this scale r1 to
the line yields N1 chords. If the line is fractal, then it is clear that reducing the interval always picks
up more than proportionate detail (Mark and Aronson, 1984). Formally, this means that the length
of the line Ln at any level of scale n is given by the equation Ln = Nnr n with Ln > Ln−1 with the rela-
tionship between successive scales given as Ln = (Ln−1)D where D > 1. If D is stable at every change
in scale, then the object is considered to be a fractal because the same level of additional detail is
being picked up at every scale, and the only way this can happen is that if this detail is similar to
that at the previous scale. If no additional detail is picked up by the change in scale, then this implies
that the line is straight and that the dimension D = 1. If the detail increases according to the square
of the length of the previous line, then this implies that the dimension D = 2. In fact, this parameter
is called a fractal dimension, and to cut a long story short, it specifies the degree of additional detail
picked up as the line changes its form from the straight line with Euclidean dimension 1 to the plane
with Euclidean dimension 2. All of this can be generalised to any number of dimensions, and many
of the fractals that are well known tend to exist in mathematical rather than in the physical space of
our world of three dimensions.
In fact, the essence of fractal geometry is the generation of successive levels of detail using what
essentially is a recursive algorithm that continually subdivides space. The same idea of growing a
fractal using the algorithm in reverse so to speak immediately introduces the idea of CA, and there
are many definitions that show that the cellular algorithm is a specification in terms of an initiator –
the starting configuration – and a generator – showing how the configuration grows or subdivides
at the next iteration of generation. This is the way we generated the intertwined trees in Figure 2.1
which is the example par excellence of fractals. In fact, the best examples of fractal growth depend,
Modelling Spatial Morphologies 35

in many variants of CA on not where the structure grown by limiting the diffusion to enable a con-
nected structure to grow from a seed site which generates a tree-like pattern that mirrors the way a
city might develop around a market or central place (Batty, 2005, 2013).

2.7  SIMULATING FRACTAL GROWTH USING CA


Let us begin our illustrative examples by returning to our first simple diffusion in its 1D and 2D
forms. In one sense, these automata are almost trivial in that they grow under the most unrestric-
tive neighbourhood rule to fill the entire space available. Their rate of growth is regular, with space
and time synchronised through the general equation N(r) = (2r + 1)D or N(t) = (2t + 1)D where D is the
dimension of the system. Most CA generated from a single seed will utilise transitions which do not
lead to their entire space being filled in such a regular way, but it would seem intuitively attractive
to be able to measure their fractal space filling by the same equations. Interesting patterns will fill
more than a 1D line across the space and less than the entire 2D space, and thus we might expect the
dimension D to lie between 1 and 2 for such automata. Such dimensions imply that such automata
are fractals and D as noted earlier is the fractal dimension.
Our first examples deal with transition rules that generate a change in cell state (from off to on)
when only a fixed number of cells are active/on in the neighbourhood. In Figure 2.4, we show the
possibilities. The first in Figure 2.4a shows the pattern generated when a cell changes state from off
to on when one and only one cell is active in the Moore neighbourhood, in Figure 2.4b when one
or two cells are active and in Figure 2.4c when one and only one cell is active in the von Neumann
neighbourhood. If there are more than two cells active in the Moore and more than one active in the
von Neumann neighbourhoods, the automata generate space that is filled entirely. It is quite clear
that the patterns generated in Figure 2.4 are fractal or fractal-like; they are self-similar in that a basic
motif, which in turn is a function of the neighbourhood rules, is repeated at different scales, and as
the associated space-filling graphs show, they fill more than the 1D space and less than the 2D. In
fact, because of the way they are generated, the dimension D in N(r) = (2r + 1)D and N(t) = (2t + 1)D
must be determined statistically, but in each case, these dimensions are close to but less than 2, that
is, D ~ 1.947 for Figure 2.4a, D ~ 1.945 for Figure 2.4b and D ~ 1.997 for Figure 2.4c.
In this chapter, we will illustrate all our examples using the analogy between CA and the way
cities are developed, although readers are encouraged to think of other examples pertaining to their
own fields of interest and expertise. The patterns generated in Figure 2.4 are highly structured in
that the assumptions embodied within their transition rules are very restrictive. However, these are
reminiscent of a wide array of idealised city forms, such as in the various writings of Renaissance
scholars concerning the optimum layout and size of cities. In fact, these kinds of CA provide excel-
lent analogues for generating those highly stylized residential districts in cities where rules concern-
ing vehicular–pedestrian segregation are used as in the neighbourhoods of English and American
new towns which originated from the pioneering housing layout in Radburn, New Jersey. They
are also suitable for showing how the rules of town layout are exercised in imperial towns such
as Roman castra and colonial towns of the New World such as Savannah, Georgia (Batty, 1997).
Examples can be found in a series of books that deal with fractal forms from Batty and Longley
(1994) to Salat (2011).
Most cities do not grow with such restrictive conditions on development: completely deter-
ministic, regular patterns are the exception rather than the rule. To make such automata proba-
bilistic, it is necessary to specify that a change in state will occur with a certain probability if a
particular condition(s) in the neighbourhood is (are) met. Thus, the transition rule only operates
with a certain probability. For example, in the case of the complete space-filling automata, a
cell, which has within its Moore neighbourhood an already developed cell, is developed but only
with a given probability ρ which effectively means that it is developed only ρ × 100% of the time
the transition rule is met. This is usually achieved by considering the probability to be a thresh-
old, above which the cell is not developed, below which it is. For example, if the probability of
36 GeoComputation

(a) (b)

(c)

FIGURE 2.4  Variations in configuration for regular neighbourhoods. (a) Develop if there is only one cell
developed in the Moore neighbourhood. (b) Develop if there are one or two cells developed in the Moore
neighbourhood. (c) Develop if there is only cell developed in the von Neumann neighbourhood.

development were ρ = 0.2, then a random number between 0 and 9999, say, is drawn. If the num-
ber is 2000 or greater, the cell is not developed; if less, it is developed. It is usually argued that
probabilities reflect uncertainty about the decision in question or variety in preferences which is
captured through noise in the transition rule.
We show these kinds of automata generated by the probabilistic rule in Figure 2.5. In
Figure 2.5a, we show the pattern using the rules to generate Figure 2.4a where the probability
threshold is fixed at 0.2 with the boundary condition at r = 40 which is reached after 66 time
iterations. If we were to tighten this threshold, then all that would occur is that the same kind
of pattern would be generated faster as the probabilities are independent on each cycle of the
automata; that is, if a cell has a 20% chance of being developed and it is not, it still has a 20%
chance of being developed the next time, and so on. Although the patterns are different in terms
of the time each cell is developed even when the probability thresholds are different, the space
gradually fills up, and in the limit, the entire space is filled with D = 2. If sparser structures with
1 < D < 2 are to be generated, then it is necessary to make the sequence of probabilities depen-
dent; for example, if the threshold is ρ = 0.2 the first time and the cell is not selected, then the
Modelling Spatial Morphologies 37

(a) (b)

FIGURE 2.5  Statistically self-similar fractal growth using probability thresholds. (a) Probability threshold
ρ = 0.2 with development in the Moore neighbourhood using the same rules as in Figure 2.4a. (b) Probability
threshold ρ = 0.5 with development in the Moore neighbourhood using the same rules as in Figure 2.4b.

threshold might become ρ × ρ = 0.2 × 0.2 = 0.04 the second time and so on. In these randomised
automata, N(r) and N(t) are no longer synchronised or even lagged. In Figure 2.5b, we show the
pattern generated to r = 40, for a probability threshold of 0.5 where the neighbourhood rule is the
same as that used to generate the fractal pattern shown in Figure 2.4b.
So far, we have shown how very different patterns might be simulated by altering transition rules
based on the two standard Moore and von Neumann neighbourhoods and by introducing probabi-
listic thresholds into the exercise of transition rules. However, we can also change the nature of the
neighbourhood by making certain cells in the Moore neighbourhood illegal for development. This
implies a more general principle of placing a mask over the cellular space to restrict certain areas,
thus artificially changing the nature of the entire space. Here, however, we will use such masks
solely in the 3 × 3 Moore neighbourhood to show how different configurations of cells can lead to
different patterns. This does not destroy the uniformity assumption in that all the neighbourhoods
and transitions are still the same. Moreover, note that the von Neumann neighbourhood is a subset
of the Moore neighbourhood (as shown previously in Figure 2.4a) in that it is formed by making
the diagonal cells to the centre cell illegal to development. In general, this making of cells illegal
is equivalent to altering the transition rules so that certain cells are made ineligible for activating
a change in state, but this is also a more graphic way of illustrating how CA can produce very
different forms.
In Figure 2.6, we show four typically different neighbourhood masks which influence the growth
from a central seed site. If you refer to Figure 2.4c which shows the diagonal grid of growth from
the von Neumann neighbourhood, it is tempting to ask how a similar horizontal grid of alternating
on–off cells might be generated. This is possible by simply displacing the displaced von Neumann
neighbourhood where the mask in Figure 2.6a shows how this is accomplished. Note that the black
cells in the mask show those that are legal, the white those that are illegal: the stippled square is the
origin. If this mask is reduced to only the diagonal half of the 3 × 3 grid as in Figure 2.6b, the resul-
tant pattern which is grown to the edge of the screen is a class of fractal known as the Sierpinski
gasket (Batty and Longley, 1994). It has a fractal dimension D ~ 1.585 which is also confirmed from
estimation of D in N(r) = (2r + 1)D.
In Figure 2.6c, we have configured the legal neighbourhood as an -shaped block which, if
viewed as a superblock of housing, might be assumed to be a good compromise between access
and daylighting in the position shown. This is the kind of geometry which architects used to
38 GeoComputation

(a) (b)

(c) (d)

FIGURE 2.6  Masked neighbourhoods: restrictions on development. (a) Displaced von Neumann.
(b) Sierpinski gasket. (c) Superblock layout. (d) Superblock layout with ρ = 0.5.

design estates of superblocks in the 1950s and 1960s, and its replication is reminiscent of the
kinds of residential layout seen in municipal housing. In fact, it would be a relatively simple mat-
ter to add some meta-transition rules which enable green space and appropriate road access to be
incorporated, thus providing reasonable simulations of the kind of geometry that actually exists.
We can of course apply all the automata we have introduced to these modified neighbourhoods,
including the 505 which we have not shown in the examples so far. In Figure 2.6d, for example,
we show how we can apply a probabilistic threshold to the neighbourhood of Figure 2.6c but this
time letting the automata wrap around the screen. This produces a more realistic pattern which
begins to suggest how these transition rules might be embodied as shape grammars and how
physical constraints on development might be introduced so that these automata can reproduce
real situations.
The last example in this section introduces an entirely new theme. So far, we have only consid-
ered growth – new development in which cells can be switched on. Now, we consider replacement or
redevelopment, in which developed cells which reach a certain age are first turned off – emptied of
development or demolished, thus entering the development process once again. This is much more
akin to how development actually takes place. Buildings age and are renewed or demolished; new
buildings are then built on the same sites. For any CA, we have a complete development history, and
thus we know the age or time at which the cell was first or last developed. What we can now do is
introduce an age limit parameter which when reached by any cell causes that cell to become vacant
and thus eligible for re- or new development.
In most of the simple examples so far, space has been synchronised with time, and development
(growth) has proceeded in waves or bands at increasing distances from the central seed site. If an
age threshold is introduced in any of the examples so far, then waves of development and rede-
velopment can be seen pulsing out from the central seed site as the automata are run indefinitely
Modelling Spatial Morphologies 39

without any boundary conditions. This is clearer in the deterministic models, but it is also apparent
in the probabilistic where the thresholds are greater than ρ = 0.5. In this example, two waves pulsate
through the structure where the age threshold is set at 15 years. In terms of the long-term age trajec-
tory of the system measured as the average age of cells, the age profile increases at an increasing
rate until the first wave of redevelopment kicks in and then it builds up again until the second wave.
The relative drop in average age associated with these pulses is gradually ironed out as the waves of
redevelopment become the dominant feature of the development.
These waves are in fact emergent phenomena in that they are a result of delayed local actions.
In a sense, the growth around the central seed site is one of increasing waves which result from
local actions acting immediately on the geometry, and the waves of redevelopment are essentially
these same waves which are delayed through the age threshold. We refer to waves of change in real
cities, but as in these examples, although they depend upon the interactions associated with the
local dynamics, they cannot be predicted from just a knowledge of these local rules. In this sense,
they are formed in the same way a wave of laughter or excitement ripples through an audience
which depends on how one’s neighbours are reacting, not upon any macro-property of the system
at large. It is thus necessary to observe the system in motion before such emergent phenomena can
be explained and understood.

2.8  MORE COMPLICATED GROWTH REGIMES


The diffusion model that is intrinsic to all CA can be constrained in various ways. In Figure 2.6,
we show how this can be done by masking the neighbourhood in terms of the cells within the
Moore neighbourhood that are eligible for development. Orientation and directions of growth
can be established in this manner, while disconnected automata can also be fashioned if the
neighbourhood is enlarged and elements of it which are not connected to the seed site are allowed
to be developed. However, the simplest and probably the archetypal growth model which uses a
generalisation of CA is the diffusion-limited aggregation (DLA) model. This model begins from
a seed site and activates a set of agents in the space around it who wander in their neighbourhood
making a random move to one of their cells at each time period. This process continues until an
agent reaches a cell where there is a developed cell in its neighbourhood. Then the agent makes a
development decision and essentially turns the cell on and becomes settled. In this sense, this is
like a wandering migrant who finds a site already developed in its neighbourhood and decides to
pitch camp so to speak. Of course, the first site is the seed site and thus the development occurs
from that seed outwards.
As the agent must be in a cell that is physically connected to the site that has been developed, the
entire development is connected, although this can be relaxed in terms of letting the agent develop
a site within some distance of an already developed site. It turns out that the growing cluster in fact
develops with tree-like branches diffusing out from the seed. It does not generate an amorphous
mass but a highly structured form that is entirely due to the fact that once a site is settled, its neigh-
bours become very slightly more likely to be developed for the agent is more likely to discover them
as the cluster is growing outwards and the agent is wandering across the entire space. The kinds
of structure that can be developed under different variants of this process are shown in Figure 2.7,
and it is immediately clear that there are very close parallels with the way mono-centric cities
grow around their central business districts. In fact, the DLA model is the example par excellence
of fractal growth which has been exploited in many urban applications (Batty and Longley, 1994;
Batty, 2005, 2013).
The extension of these CA to many seeds is straightforward. The immediate interest is in
the kinds of morphologies that are generated when the different patterns around each of the
seeds begin to overlap. If the automata are based on the simplest morphologies of diffusion as
we noted earlier, and if the different seeds generate patterns that are not synchronised spatially,
then interesting overlapping patterns in the form of waves can occur. It is difficult, however,
40 GeoComputation

(a) (b) (c)

FIGURE 2.7  Various types of DLA. (a) Classic DLA. (b) Compact DLA. (c) DLA growth from an edge.

to demonstrate that anything really useful comes from simply adding patterns together in this
manner, although there can be endless forms from which evocative and fascinating overlap-
ping pattern waves emerge, and who is to say that some of these might not contain insightful
inquiries into real systems? But unlike single-seed automata where global patterns do emerge
from local transitions, there is nothing other than overlap to give coherence and integrity to the
many-seed patterns that are produced by such automata. However, the many-seed approach is
useful for generating automata where the location of the multiple seeds is possible to predict
independently and even for cases where CA is used for design in the manner of shape grammars
(Batty, 1997). Finally, we need to note the space-filling properties of such automata. If we have
regularly spaced seeds and we operate the simplest transition rule which generates the entirely
filled form of N(r) = (2r + 1)2, then the space is filled as Ñ(r) ~ nN(r) where n is the number of
seeds. Of course, when the overlaps occur, the space becomes entirely filled and this marks the
boundary condition. All the other automata we have introduced can be generalised in the same
way but with caveats imposed by boundary conditions, regular spacing and space–time synchro-
nisation as we have already noted. We can thus generalise N(r) = (2r + 1)D to Ñ(r) ~ ϕN(r) where
ϕ is a constant varying with the number of seeds but also accounting for various kinds of noise
introduced where complex overlaps occur and where space and time fall out of sync.
We can now move to a somewhat different and possibly more general variety of CA which begins
with an already developed system. In such cases, there need to be two distinct states other than the
trivial developed/non-developed cases of the previous automata. Consider a completely developed
situation in which each cell is populated by two exclusive types of household – with highbrow or
lowbrow tastes in music, let us say. Imagine that each resident group prefers to have at least the same
number or more of their own kind in their Moore neighbourhood. This preference is not unusual, it
is not segregation per se and it might even be relaxed in situations where the preference is for say at
least 30%, not 50%, of their own kind to be in their neighbourhood. In terms of the number of cells
in the 3 × 3 neighbourhood, this means that the resident in the central cell would prefer to have 4,
5, 6, 7 or 8 neighbours of the same kind. The transition rule embodying this preference is thus as
follows: if there are less than four cells of type i in the Moore neighbourhood around a cell of type
i, then that cell changes to state j, where i and j are the two types of cell.
This is a very different rule from any we have used so far. It involves a change in state which
depends on the nature as well as the number of cells in the neighbourhood, not simply the number
which was the case in the previous growth models. It thus introduces competition into the automata.
Imagine that the cellular space is arranged so that every other cell in the grid is of a different type
or state. Highbrow residents are evenly mixed with lowbrow in regular checkerboard fashion so
that each resident has exactly four neighbours of his or her own kind. The system is balanced as
no changes of state will take place – everyone is satisfied – but the balance is precarious. If we
shake the system and shuffle things a bit, the overall proportions are the same – 50% highbrow,
50% lowbrow – but what then happens is that some residents are dissatisfied with the tastes of their
Modelling Spatial Morphologies 41

(a) (b)

FIGURE 2.8  Schelling’s model: segregation from mild preferences to be amongst one’s own kind.
(a) A random distribution of two kinds of agents – grey and white. (b) Segregation under mild conditions of
preferences for being similar.

neighbours and they begin to change their tastes accordingly. In fact, there are two ways of making
the change, either the resident might move to another cell to try to increase their number of like
neighbours or they might actually change their tastes to reflect their neighbours. We will adopt the
latter course in that we assume that if a resident with taste i finds himself or herself surrounded by
five or more neighbours with taste j, then they will assume that the vote has gone against them and
they will change their tastes accordingly.
Now let us see what happens when we start with a completely random configuration of tastes
but in the proportion 50:50 as illustrated in Figure 2.8a. Applying the transition rule, then after a
sufficient number of iterations (37 in this case), a new but highly segregated equilibrium emerges
which is shown in Figure 2.8b. What is remarkable about this structure is that although residents
will gladly coexist with an equal number of neighbours of either type – an even mix – this does
not occur. The local dynamics of the situation make any global equality impossible. You can
work this through by considering how more than four cells of either kind lead to a reinforcement
or positive feedback which increases segregation which, in random situations, is likely to be the
norm. Moreover, once this begins, the local repercussions throughout the system can turn what
is almost an even mix into a highly segregated pattern. Once again, this is a true property of
emergence in CA for it is impossible to deduce it from a knowledge of the local dynamics. It only
occurs when the local dynamics are writ large. It was first pointed out by Schelling (1978) as an
example of how micro-motives cannot be aggregated into macro-motives, which he illustrated
with respect to the emergence of highly segregated ethnic neighbourhoods in US cities. A similar
problem in which the residents move rather than change their tastes is worked through by Resnick
(1994), and a generalisation to wider models of segregation has been researched by Portugali et al.
(1994) and Benenson (2014).

2.9  APPLICATIONS TO CITIES AND RELATED ECOLOGIES


The application of CA to urban systems like CA itself can be traced back to the beginning, to the
first attempts to build mathematical models of urban systems which began in the 1950s. In the
postwar years, social physics was in full swing and models of spatial diffusion were an important
branch of these developments. Hagerstrand as early as 1950 was building diffusion models, specifi-
cally of human migration based on the excellent historical population record in Sweden, and these
models, although embodying action at a distance through gravitation effects, were close in spirit to
42 GeoComputation

the notion of cells being affected by changes in their immediate vicinity (Hagerstrand, 1967). These
were not strict CA but CS models in the terminology adopted here. In the early 1960s, CA were
implicit in the wave of computer models designed for land use–transportation planning. Chapin
and his colleagues at North Carolina in their modelling of the land development process articulated
CS models where changes in state were predicted as a function of a variety of factors affecting
each cell, some of which embodied neighbourhood effects (Chapin and Weiss, 1968). Lathrop and
Hamburg (1965) proposed similar CS simulations for the development of western New York state.
The idea that the effect of space should be neutralised in such models by adopting regular lattice
structures such as grids also encouraged CA-like representations.
However, strict CA models came from another source – from theoretical quantitative geography.
These were largely due to Waldo Tobler (1970, 1975, 1979) who during the 1970s worked at the
University of Michigan where Arthur Burks and his Logic of Computers Group were keeping the
field alive. Tobler himself first proposed CS models for the development of Detroit but, in 1974,
formally began to explore the way in which strict CA might be applied to geographical systems,
culminating in his famous paper Cellular Geography published in 1979. At Santa Barbara in the
1980s, Couclelis (1985, 1988, 1989), influenced by Tobler, continued these speculations, until the
early 1990s when applications really began to take off as computer graphics, fractals, chaos and
complexity, all generated the conditions in which CA have now become an important approach to
GeoComputation.
It is perhaps surprising that CA models were not explored earlier as a basis for GeoComputation
in urban and related simulations, but other approaches held sway, particularly those that emphasised
time rather than space per se. Dynamics has always held a fascination in spatial modelling. Early
attempts at embodying time into operational urban models were always plagued by a simplistic view
of dynamics or by difficulties of embedding appropriate dynamics within spatial representations
(Forrester, 1969; Batty 1971). By the early 1980s, however, several groups had begun to explore
how developments in non-linear dynamics might be adapted to the simulation of urban change.
Wilson (1981) building on catastrophe theory, Allen (1982) on adaptations of Prigogine’s approach
to bifurcation through positive feedback, White (1985) on notions of discontinuity in the behaviour
of regional systems and Dendrinos (1991) on predator–prey models and latterly with Sonis on cha-
otic dynamics (Dendrinos and Sonis, 1990) all set the pace. But this work downplayed the spatial
element which was considered simply as a starting point. The emphasis was upon new conceptions
of time. The dynamics of how spatial morphologies evolved and changed took much longer to gain
the attention of researchers following this new paradigm. Nevertheless, it was from these develop-
ments in dynamics that the first explicit application of CA to real urban systems came. White and
Engelen’s (1993) application of CA in the light of their own work in non-linear urban dynamics
was to the development of US cities such as Cincinnati where they showed how urban form could
be modelled through time and how these forms were consistent with fractal geometry and urban
density theory (Batty and Longley, 1994).
Strict CA of course does not appear immediately applicable to real systems where the definition
of states, neighbourhoods and transition rules is much more general than the theory suggests.
Clear statements of the theory of CA have only been produced since Wolfram’s (1984, 1994) work,
and even now, there is no definitive discussion of the ways in which strict CA might be relaxed
and adapted to real systems, with the possible exception of Toffoli and Margolus’ (1987) book.
The key problem of adapting strict CA to generalised GeoComputation involves the issue of action
at a distance. Much GeoComputation, which has spatial analysis as its foundation, articulates spa-
tial behaviour as the product of action at a distance, building on notions of gravitation, spatial
autocorrelation and network connectivity. But such notions are invariably developed from models
of static systems where distance relations have clearly evolved through time. The situation for
dynamic urban theory is much more confused because there is a strong argument that action at a
distance emerges in such systems as the consequence of local action through time, as a product of
the successive build-up and compounding of local effects which give rise to structures that reflect
Modelling Spatial Morphologies 43

much wider interaction. There has been little or no research into such possibilities; in fact, it is the
development of CA in this context which has raised the idea of these effects – so long taken for
granted as exogenous – being endogenous to and emergent from such computation. As cells evolve
and change, building their overall spatial potential through local neighbourhood action or decision,
it is possible to conceive of all system-wide effects as being embodied in this potential. Therefore,
it is only necessary to ever act behaviourally according to what this potential is within its local
neighbourhood for this potential takes account of wider action at a distance effects. Simply by
examining the position of a cell in the system, these effects are known. This is an issue that clearly
requires considerable research.
The first CA models came from Tobler’s (1979) algebras, from Couclelis’s (1985) theoretical
speculations, from Batty and Longley’s (1986) initial work on fractals, from Batty and Xie’s (1994)
work on urban simulation, from White and Engelen’s (1993) applications to Cincinnati and from
the Clarke et al. (1997) generalisation of the forest fire models to the fractal growth of the San
Francisco Bay area. These latter two applications spawned the only two long-standing CA mod-
els applied to urban development, namely, SLEUTH developed by Clarke and his colleagues and
the White–Engelen Metronamica models that have found widespread development in Europe. A
midterm summary of these developments is given by Batty and Xie (2005), and more recent spe-
cial issues of journals and conferences have been devoted to the basic ideas in an applied context
(Dragićević, 2008; Marceau and Benenson, 2011). As far as we know, no one has yet produced a
summary of applications, with perhaps the short summary by Dragićević (2008) being the excep-
tion, and there is now a sense in which CA models applied to city systems are simply one of many
approaches which have, like all urban models, considerable limitations. One of the major limitations
is the fact that such models really generate qualitative changes in state rather than numerical predic-
tions. This makes their use in policy making problematic. Moreover, these models tend to lack an
explicit transportation sector, and as transportation is still one of the essential components in urban
structure, this makes their application to problems of sprawl and urban growth – for which they are
devised in the first place – limited. Growth is intimately linked to transportation, and thus there
are very few urban agencies that have adopted CA-like models, preferring older and large-scale and
more comprehensive land use–transportation interaction (LUTI) models.
The flurry of recently developed applications can be divided into those which deal with hypo-
thetical in contrast to real systems, as well as those which are strict CA in contrast to CS models
where definitions of local neighbourhood and transition rules are relaxed. Other significant features
involve relationships with GIS software, the extent to which multiple states are dealt with and the
starting points for such simulations based on limited numbers of seeds or already developed land-
scapes. There are now upwards of 50 or more applications of CA to cities. Most deal with hypotheti-
cal examples which emphasise some aspect of urban structure or dynamics such as the segregation
of land uses and the diffusion or migration of resident populations. As we have noted, applications
to urban policy problems are few and far between, but there are several proof of concept examples
in real cities now existing.
We will not review the many applications here but it is worth illustrating a typical example of
CA to urban development that the authors have been involved in (Stanilov and Batty, 2011). We have
applied the Metronamica model to the growth of west London at a fairly detailed fine spatial scale
where development is articulated as the sequence of development decisions associated with land
parcels and streets. A simulation since the mid-nineteenth century has been developed using data
from old maps and related census sources, and the application shows that CA models at this scale
produce rather good patterns of development, explaining the importance of local rules to the way
sites are developed. In fact, it appears from this example that the real power of CA in urban model-
ling is at the fine physical scale where the performance of this particular model is good. At broader
scales, the performance of these models is more problematic, and the fact that transportation is so
important but largely missing from such models and that the idea of a local neighbourhood is lim-
ited in real cities tends to limit the relevance of these models.
44 GeoComputation

Action at a distance is the central organising principle behind spatial modelling. Consequently,
most applications of CA break with the rule that truly local neighbourhoods condition growth and
change, preferring to embody some action at a distance within larger neighbourhoods within which
the effect of individual cells might embody some distance decay. These CS models are writ large
in empirical applications but strict CA is still invoked in some applications such as the SLEUTH
models. Moreover, in several applications, the scale of space – the size of the cells – and the extent
to which these contain all interaction within are rarely explicit. Couclelis (1985, 1988, 1989) has
emphasised many times in her papers that, at best, CA must be primarily seen as a metaphor for
urban growth and change: ‘… systems of the kind considered here have such volatile behaviour that
models representing them may be more useful as “metaphors” or conceptual organising schemata,
than as quantitative planning models’ (Couclelis, 1989, p.142).
There are however ways in which CA might provide much more sophisticated representations of
urban systems than anything so far. When systems grow in space, they invariably diffuse, and the
repeated action of local rules can be so structured as to represent the cumulative build-up of interac-
tion potential. This might be no more than when a cell is occupied, it interacts locally with all other
occupied cells in its neighbourhood from thenceforth and thus cells which are occupied first always
have the greatest cumulative potential interaction through time. Potential might thus vary directly
with the age of a cell – when it was first occupied – and in this way, centrality can be reinforced as
action at a distance emerges from such repeated local actions across space. The various applications
to hypothetical urban systems which dominate the field all stress different aspects of the theory of
CA. There are several strong links to GIS based on the notion that CA and CS models use a form
of representation which is the same as raster-based/pixel-based GIS. Standard CA models can be
represented and modelled within the raster-based systems such as IDRISI, but contemporary GIS
systems such as ArcGIS now embrace CA-style applications that can easily be embedded into the
overlay capabilities and modelling structures within such software.

2.10 CONCLUSIONS
CA clearly brings many unique aspects to GeoComputation and modelling, as much to define the
limits of what is modellable and what is computable as to define new methods of GeoComputation
per se. Moreover, it picks up on the notion that spatial form is intrinsically fractal and CA methods
provide the basis for their generation. But as a basis for urban modelling which is geared to policy
analysis, these techniques are limited. Emphasis on the principles of locality and transition in neigh-
bourhoods, on the question of action at a distance, strikes at the very heart of the issue of the way
in which potential and density are created temporally in spatial systems and the way new foci of
potential such as edge cities emerge through positive feedback and bifurcations in the development
process. Scale and space are still confused within such modelling for there has been little research
into appropriate levels at which urban systems might be constituted as automata. Applications show
scales of cell and neighbourhood which range across as many as three orders of magnitude, while
the competition and interaction between different states in cells, which often represent different uses
of land or buildings in an urban context, still remain largely to be worked out. CA imposes a degree
of regularity on the world which must be modified whenever applications are developed, but as yet,
the effect of irregular cell shapes and disconnected neighbourhoods and the representation of streets
and linear features as cells and their interaction with areal features all define the research frontier.

2.11  FURTHER READING


Although no one has yet written a general expository text on CA which gradually builds up basic
ideas and translates these into generic applications – something we have tried to do here for
geographic systems, albeit very briefly – Toffoli and Margolus’ (1987) book Cellular Automata
Machines: A New Environment for Modeling is by far the best exposition to date. Notwithstanding
Modelling Spatial Morphologies 45

their use of the FORTH language to represent their applications (because their text assumes the
reader has access to their customised parallel PC hardware extension CAM), this book is still the
clearest development of CA ideas to date. Wolfram’s (1986, 1994) collections of papers also deal
with basic concepts but these are less applied. His book in 2002 called A New Kind of Science is
a good summary of this point of view, but its relevance to cities and urban modelling is at pres-
ent remote. A particularly useful and broader rendition of the CA style of modelling is contained
in Resnick’s (1994) wonderful little volume Termites, Turtles and Traffic Jams: Explorations in
Massively Parallel Micro-Worlds.
Agent-based simulations which build on CA have been developed in the field of artificial life. Many
papers of which have been published as part of the Santa Fe Series in Complexity, namely, the edited
volumes Artificial Life I, II, III and IV (Langton, 1989, 1994; Langton et al., 1991; Brooks and Maes,
1994). The book by Epstein and Axtell (1996) Growing Artificial Societies: Social Science from the
Bottom Up provides a recent focus with strong implications for human geography. But the most com-
prehensive book is that by O’Sullivan and Perry (2013), Spatial Simulation, which links CA to ABM
(Agent Based Modelling) in a way that is completely consistent with the ideas introduced here.
In urban modelling, the original papers by Tobler (1970, 1975, 1979) are worth studying as are
those by Couclelis (1985, 1988, 1989). The original application to Cincinnati and other US cities by
White and Engelen (1993) is important. We have noted that the books by Marceau and Benenson
(2011) and the articles by Dragićević (2008, 2010) earlier are useful. In terms of generalising these
ideas to the wider science of cities, then Batty’s (2005) Cities and Complexity is a good source, and
his recent book (2013) The New Science of Cities shows where some of these ideas are heading.
How these all fit into GIS is provided in the text Geographic Information Systems and Science by
Longley et al. (2010). There are now many software packages relevant to this area, but by far, the
best is NetLogo (http://ccl.northwestern.edu/netlogo/) which is now a very general CA–ABM pack-
age with an excellent library of models and an urban suite (e.g. http://ccl.northwestern.edu/netlogo/
models/UrbanSuite-PositiveFeedback) based on Batty’s (2005) book.

REFERENCES
Albin, P. 1975. The Analysis of Complex Socio-Economic Systems. Lexington, MA: Lexington Books.
Allen, P. M. 1982. Evolution, modelling and design in a complex world. Environment and Planning B 9:
95–111.
Axelrod, R. 1984. The Evolution of Cooperation. New York: Basic Books.
Batty, M. 1971. Modelling cities as dynamic systems. Nature 231: 425–428.
Batty, M. 1997. Cellular automata and urban form: A primer. Journal of the American Planning Association
63(2): 266–274.
Batty, M. 2005. Cities and Complexity: Understanding Cities with Cellular Automata, Agent-Based Models
and Fractals. Cambridge, MA: The MIT Press.
Batty, M. 2013. The New Science of Cities. Cambridge, MA: The MIT Press.
Batty, M. and Longley, P. 1986. The fractal simulation of urban structure. Environment and Planning A
18: 1143–1179.
Batty, M. and Longley, P. A. 1994. Fractal Cities: A Geometry of Form and Function. London, U.K.:
Academic Press.
Batty, M. and Xie, Y. 1994. From cells to cities. Environment and Planning B 21: s31–s48.
Batty, M. and Xie, Y. 2005. Urban growth using cellular automata models. In GIS, Spatial Analysis, and
Modeling, eds. D. J. Maguire, M. Batty and M. F. Goodchild, pp. 151–172. Redlands, CA: ESRI Press.
Benenson, I. 2014. Agent-based modeling. In Geocomputation, 2nd edn., eds. R. J. Abrahart and L. M. See,
pp. 203–240. Boca Raton, FL: Taylor & Francis Group.
Brin, S. and Page, L. 1998. The anatomy of a large-scale hypertextual Web search engine. Computer Networks
and ISDN Systems 30: 107–117.
Brooks, R. A. and Maes, P. 1994. Artificial Life IV. Cambridge, MA: The MIT Press.
Burks, A. W. (ed.) 1970. Essays on Cellular Automata. Urbana-Champaign, IL: University of Illinois Press.
Chapin, F. S. and Weiss, S. F. 1968. A probabilistic model for residential growth. Transportation Research
2: 375–390.
46 GeoComputation

Clarke, K. C., Hoppen, S. and Gaydos, L. 1997. A self-modifying cellular automaton model of historical
urbanization in the San Francisco Bay area. Environment and Planning B 24: 247–261.
Couclelis, H. 1985. Cellular worlds: A framework for modeling micro-macro dynamics. Environment and
Planning A 17: 585–596.
Couclelis, H. 1988. Of mice and men: What rodent populations can teach us about complex spatial dynamics.
Environment and Planning A 29: 99–109.
Couclelis, H. 1989. Macrostructure and microbehavior in a metropolitan area. Environment and Planning B
16: 141–154.
Dendrinos, D. S. 1991. The Dynamics of Cities: Ecological Determinism, Dualism, and Chaos. London, U.K.:
Routledge.
Dendrinos, D. S. and Sonis, M. 1990. Turbulence and Socio-Spatial Dynamics. New York: Springer-Verlag.
Dragićević, S. 2008. GeoComputation: Modeling with spatial agents. Computers, Environment and Urban
Systems 32(6): 415–416.
Dragićević, S. 2010. Cellular automata. In Encyclopedia of Geography, ed. B. Warf, pp. 369–372. Thousand
Oaks, CA: Sage Publications, Inc.
Epstein, J. M. and Axtell, R. 1996. Growing Artificial Societies: Social Science from the Bottom Up. Cambridge,
MA: Brookings/The MIT Press.
Forrester, J. W. 1969. Urban Dynamics. Cambridge, MA: The MIT Press.
Frankhauser, P. 1993. La Fractalité des Structures Urbaines, Thèse de Doctorat. UFR de Geographie, Université
de Paris I, Paris, France.
Gardner, M. 1970. The fantastic combinations of John Conway’s new solitary game of ‘life’. Scientific
American 223: 120–123.
Hagerstrand, T. 1967. Innovation Diffusion as a Spatial Process. Chicago, IL: University of Chicago Press.
Holland, J. 1975 [1992]. Adaptation in Natural and Artificial Systems. Ann Arbor, MI: University of Michigan
Press; reprinted in 1992. Cambridge, MA: The MIT Press.
Langton, C. G. (ed.) 1989. Artificial Life. Redwood City, CA: Addison-Wesley.
Langton, C. G. (ed.) 1994. Artificial Life III. Redwood City, CA: Addison-Wesley.
Langton, C. G., Taylor, J., Farmer, J. D. and Rasmussen, S. (eds.) 1991. Artificial Life II. Redwood City, CA:
Addison-Wesley.
Lathrop, G. T. and Hamburg, J. R. 1965. An opportunity-accessibility model for allocating regional growth.
Journal of the American Institute of Planners 31: 95–103.
Longley, P. A., Goodchild, M. F., Maguire, D. J. and Rhind, D. W. 2010. Geographic Information Systems and
Science. New York: John Wiley & Sons.
Mandelbrot, B. B. 1967. How long is the coast of Britain? Statistical self-similarity and fractal dimension.
Science 155: 636–638.
Mandelbrot, B. B. 1982. Comment of computer rendering of fractal stochastic models. Communications of
ACM 25: 581–583.
Mandelbrot, B. B. 1983. The Fractal Geometry of Nature. San Francisco, CA: W. H. Freeman.
Marceau, D. J. and Benenson, I. (ed.) 2011. Advanced Geosimulation Models. Oak Park, IL: Bentham Science
Publishers.
Mark, D. M. and Aronson, P. B. 1984. Scale-dependent fractal dimensions of topographic surfaces: An emprical
investigation, with applications in geomorphology and computer mapping, Journal of the International
Association for Mathematical Geology 16: 671–683.
O’Sullivan, D. and Perry, G. 2013. Spatial Simulation: Exploring Pattern and Process. New York:
John Wiley & Sons.
Peitgen, H., Jurgens, H., and Saupe, D. 1992. Fractals for the Classroom: Part 1, Introduction to Fractals and
Chaos. New York: Springer-Verlag.
Portugali, J., Benenson, I., and Omer, I. 1994. Sociospatial residential dynamics, stability and instability within
the self-organizing city. Geographical Analysis 26: 321–340.
Poundstone, W. 1985. The Recursive Universe. New York: William Morrow.
Resnick, M. 1994. Termites, Turtles and Traffic Jams: Explorations in Massively Parallel Micro-Worlds.
Cambridge, MA: The MIT Press.
Salat, S. 2011. Cities and Forms: On Sustainable Urbanism. Paris, France: Hermann.
Schelling, T. 1978. Micromotives and Macrobehavior. New York: W.W. Norton & Company.
Stanilov, K. and Batty, M. 2011. Exploring the historical determinants of urban growth patterns through cellular
automata. Transactions in GIS 15(3): 253–271.
Tobler, W. R. 1970. A computer movie simulating population growth in the Detroit region. Economic Geography
42: 234–240.
Modelling Spatial Morphologies 47

Tobler, W. R. 1975. Linear operators applied to areal data. In Display and Analysis of Spatial Data, eds. J. C.
Davis and M. J. McCullaugh, pp. 14–37. New York: John Wiley & Sons.
Tobler, W. R. 1979. Cellular geography. In Philosophy in Geography, eds. S. Gale and G. Olsson, pp. 279–386.
Dordrecht, the Netherlands: D. Reidel.
Toffoli, T. and Margolus, N. 1987. Cellular Automata Machines: A New Environment for Modeling. Cambridge,
MA: The MIT Press.
Ulam, S. M. 1962. On some mathematical problems connected with patterns of growth of figures. Proceedings
of Symposia in Applied Mathematics, Providence, RI 14, pp. 215–224.
Ulam, S. M. 1976. Adventures of a Mathematician. New York: Charles Scribner’s Sons.
White, R. W. 1985. Transitions to chaos with increasing system complexity: The case of regional industrial
systems. Environment and Planning A 17: 387–396.
White, R. W. and Engelen, G. 1993. Cellular automata and fractal urban form: A cellular modelling approach
to the evolution of urban land use patterns. Environment and Planning A 25: 1175–1193.
Wilson, A. G. 1981. Catastrophe Theory and Bifurcation in Urban and Regional Modelling. Berkeley, CA:
University of California Press.
Wolfram, S. 1984. Cellular automata: A model of complexity. Nature 31: 419–424.
Wolfram, S. 1986. Theory and Applications of Cellular Automata. Singapore: World Scientific.
Wolfram, S. 1994. Cellular Automata and Complexity: Collected Papers. Reading, MA: Addison Wesley.
Wolfram, S. 2002. A New Kind of Science. Urbana-Champaign, IL: Wolfram Media.
3 Parallel Computing
in Geography
Muhammed Adnan, Paul A. Longley,
Alex D. Singleton and Ian Turton

CONTENTS
Abstract............................................................................................................................................. 49
3.1 Introduction............................................................................................................................. 49
3.2 Types of Parallel Computing................................................................................................... 51
3.3 Short History of Parallel Computing....................................................................................... 52
3.4 Parallel Computing and Geography........................................................................................ 53
3.5 When Not to Use Parallel Computing..................................................................................... 55
3.6 When to Use Parallel Computing and How............................................................................. 55
3.7 GPGPU Geodemographic Information System....................................................................... 57
3.8 Towards Real-Time GeoComputation of Geodemographics Using GPU............................... 59
3.9 Conclusions.............................................................................................................................. 63
References.........................................................................................................................................64

ABSTRACT
Parallel computing has been around for more than 20 years. Yet geography and GIScience have not
employed this technology widely or to its full potential. One reason for this may be due to a per-
ceived lack of access to parallel computing resources in social science departments despite the fact
that dual-core and multicore processors, and hyper-threading technology generating virtual cores,
have been standard equipment for a number of years. However, this may change in the near future
with improved accessibility to technologies such as graphics processing units (GPUs). This chapter
provides an overview of parallel computing including a presentation of different types of parallel
processing followed by a brief history of the field. The chapter then attempts to set out when paral-
lel computing should be used and how, ending with an example of the use of general-purpose GPU
for the development of geodemographic classifications. In an era of government initiatives on open
data, the rise of big spatial data and pressing global geographical challenges to solve, greater adop-
tion of parallel computing technologies could deliver numerous gains.

3.1 INTRODUCTION
In the IT world, sequential computing is the use of a single processing unit to perform a single
or multiple tasks, and this has historically been the standard mode of computation. In contrast,
parallel computing (or parallel processing*) makes use of, at the same time, more than one
central processing unit (CPU) in order to allow users to complete lengthy computational tasks
more quickly. This is achieved by taking the problem and dividing it into smaller tasks, which
are then solved simultaneously (or in parallel) via these different CPUs. Although parallelism

* An older expression that is frequently used as a synonym for parallel computing.

49
50 GeoComputation

has been used in high-performance computing (HPC) for many years, parallel computing has
more recently become embedded in desktops through the development of hyper-threading tech-
nology, producing virtual cores and multicore processors, that is, a single component containing
two or more independent CPUs (called cores), which can read and execute program instructions
(Rauber and Rünger 2010).
Parallel computing should not be confused with so-called multitasking where a single proces-
sor gives the appearance of working on more than one task (or process) at the same time by split-
ting its resources between competing programs. However, only one process is actually running on
the processor at any one point in time, meaning that the processor is only actively executing spe-
cific instructions for that particular task. Thus, multitasking schedules tasks so as to minimise the
amount of time that the processor is left idle while it waits for slower peripheral activities to occur.
If both programs involved are computationally intensive, then scheduling and waiting overheads
could mean that it may require more than twice as long for both of them to complete.
Some tasks are easy to parallelise. One example often used is building a brick wall. If it would
take one person 4 days to build, it would probably take a well-organised team of four bricklayers
1 day to build it. In terms of parallel computing, this is called speed-up. Speed-up is a term which
is often used to describe how well (or badly) a parallel program is working; it can be defined as the
time taken to run the program on a single processor divided by the time taken to run it on a larger
number of processors (N). The closer the speed-up is to N, the better the program is performing.
An optimal speed-up would be a decrease in runtime that is linearly proportional to the number of
processors, but this is rarely achieved, that is, a small number of processors usually result in almost
linear speed-up but then saturate for large numbers of processing units. In addition, it is also impor-
tant to note that those algorithms used within a parallelised environment may themselves be opti-
mised for these purposes; so, in addition to basic speed-up as a result of running jobs over multiple
processors, the optimised algorithms for these different computational contexts may themselves
provide enhanced performance.
The maximum amount of speed-up, s, as a result of parallelisation, which is referred to as
Amdahl’s law (Amdahl 1967), is inversely proportional to the amount of time that is spent running
those sections of the code that can only run sequentially. For example, if the sequential part of the
code represents 10% of the runtime, then the upper limit to speed up is 10 times the non-parallel
version, regardless of how many more processors are added. Understanding the critical path or the
order in which dependent calculations must be undertaken is necessary for implementing parallel
algorithms. If there are no dependencies between the calculations, then all the tasks (often called
threads, fibres or processes depending upon the size) can be run in parallel. Moreover, not all paral-
lelisation efforts will result in decreased runtime. When a task is divided into an increasing number
of threads, these threads will spend more time communicating with each other. The overheads from
communication will eventually dominate the time spent solving the problem, and further efforts at
parallelisation will simply increase the amount of time needed to complete the task. At the same
time, there are also some tasks that are clearly unsuited to parallelisation. For example, if it takes
a woman 9 months to have a baby, then adding more women will not decrease the overall time it
takes to have a single baby!
There are different levels of parallelism possible, that is, bit-level, instruction-level, data-level
and task-level parallelism (Culler et al. 1999). In the past, speed-up has been achieved through bit-
level parallelism, that is, by doubling the amount of information that a CPU can process, as 4-bit
microprocessors have been replaced by 8-bit, then 16-bit, then 32-bit and, most recently, 64-bit
microprocessors, which are now commonplace. Instruction-level parallelism involves grouping or
ordering sets of instructions so that they can be executed in parallel and was the main form of
parallelism in the 1980s and 1990s. Data parallelism involves taking the repetitive tasks that occur
in loops and giving these to different processing units, while task parallelism involves giving dif-
ferent tasks to different processing units, where the former scales well with the size of the problem
but the latter does not.
Parallel Computing in Geography 51

Parallel computing is often felt to be the preserve of large number crunching engineering dis-
ciplines. Geography, however, has many large and complex problems that require the use of the
largest supercomputers available, for example, climate modelling. GeoComputation (GC) has arisen
out of the direct need for solving spatial problems with advanced computational methods. However,
geography also has many smaller problems that can still benefit from parallelism, where the cur-
rent technology is easily available to geographers. This chapter will provide an overview of paral-
lel computing, starting with the main types of parallel computing available and a short history of
developments in this field. We will then discuss whether geography even needs data and/or task
parallel computing and when it should and should not be used. Since the first edition of the book was
published, more applications of parallel computing have appeared in the literature, so the current
state of play is summarised. Finally, we present a recent example of how parallel computing can be
applied to geodemographic classification and end with reflections on the future.

3.2  TYPES OF PARALLEL COMPUTING


Different types of parallel computer are suited to different types of task. Flynn (1972) proposed a
classification of computers based on their use of instructions (the program) and their use of data. He
divided computers into four possible groups formed by the intersection of machines that used single
streams of data and multiple streams of data and machines that used single streams of instruc-
tions and multiple streams of instructions. First, a classic CPU is a SISD (single instruction single
data) processor that performs one instruction at a time on a single item of data. The operations are
sequenced in time and are easily traced and understood. Some would argue that the introduction of
pipelining in modern processors introduces an element of temporal parallelism into the processing,
although this is not true parallelism as it is not completely within the control of the programmer.
Second, a MISD (multiple instruction single data) processor could apply multiple instructions
to a single item of data at the same time. This is clearly of no use in the real world and therefore is
seen by many to be a serious failing of Flynn’s classification since it classifies non-existent proces-
sor types. Third, SIMD (single instruction multiple data) machines have a series of processors that
operate in exact lockstep, each carrying out the same operation on a different piece of data at the
same time. The experience of the 1980s was that such machines proved to be less than useful for
many types of real problem.
Finally, there are MIMD (multiple instruction multiple data) machines, which have proven to be
more useful, having many processors performing different instructions on different pieces of data
at the same time, executing both data and task forms of parallelism. They do not require each pro-
cessor to be exactly in step with each other processor or even to be carrying out a similar task. This
allows the programmer much greater flexibility in programming the machine to carry out the task
required as opposed to coercing the algorithm to fit the machine.
Parallel computers can also be classified by the degree to which the hardware supports paral-
lelism, that is, multicore and multiprocessor computers have multiple processing units embedded
in a single machine with shared memory. Distributed computing (i.e. clusters, grids and massively
parallel processing), on the other hand, uses multiple computers connected by a network in order to
do the same task. Each processor can only access the memory in its own unit. Thus, if a data value
is required by another processor, an explicit message must be sent to request it and another to return
the value required. Well-known examples of distributed computing over the Internet are SETI@
home (http://setiathome.berkeley.edu), Folding@home (http://folding.standford.edu) and climate
change modelling (http://www.climateprediction.net/). A cluster is a group of stand-alone machines
that are connected via a network where a Beowulf cluster, which consists of many computers con-
nected via a local area network (Sterling et al. 1995), is now used worldwide and is one of the most
common types available. The top supercomputer in the world as of June 2013, the Chinese Tianhe-2,
is a cluster with more than 3 million Intel processors and a performance of 33,862 TFLOPS (http://
www.top500.org/), where a FLOPS is a floating point operation per second. The HTCondor project
52 GeoComputation

provides a cluster solution that loosely configures a set of computers, for example, in an office, that
can be used to process tasks during idle times (Thain et al. 2005). In contrast, a massively paral-
lel processor (MPP) is a single computer that has many CPUs, each of which contains their own
operating system and memory. The CPUs are connected through specialised networks. An example
is IBM’s Sequoia Blue Gene/Q with more than 1.5 million processors, which is currently ranked as
the third fastest supercomputer in the world as of June 2013 with a performance of 17,173 TFLOPS
(http://www.top500.org/).
GPUs were an innovation of the late 1990s, when they were added to graphics boards in order
to improve the quality and speed by which graphical images could be processed. Today, GPUs
are finding applications in parallel processing. Michalakes and Vachharajani (2008) describe how
GPUs have become a low-cost, low-power (watts per flop), very high-performance alternative to
conventional microprocessors. For example, NVIDIA’s (www.nvidia.com) 8800 GTX, with a theo-
retical peak 520 GFLOPS and dissipating 150 W, costs just $500.
GPUs make heavy use of parallel processing, in which a large task is subdivided into many
smaller ones, and each part is worked on independently by a different part of the chip before being
recombined. This innovation was principally directed at the computer games market, where it
enabled the rendering of more realistic 3D models and their associated physics, such as lighting,
shading and movement. GPU chips were subsequently adapted to more general-purpose comput-
ing, although it is only recently that chips have become sufficiently sophisticated for many practical
applications. NVIDIA (which, along with advanced micro devices (AMD), are the world’s largest
graphics-card manufacturers) produces chips designed specifically for non-graphics applications
and provides a specialised parallel computing architecture and programming language architecture
for use with them (CUDA [compute unified device architecture]). Over time, the sophistication of
GPU has increased and at a pace which has outstripped that of CPU. This relative improvement in
GPU performance over CPU arises because of differences in architecture, with the former contain-
ing a higher density of cores and using a process called streaming to handle operations.
General-purpose computing on graphics processing unit (GPGPU) is the exploitation of the
resources of the GPU for various tasks which might typically have been conducted on a CPU.
This parallel implementation of computationally intensive algorithms has been demonstrated over
a range of application areas, for example, adapting a message-driven parallel application to GPU-
accelerated clusters (Phillips et al. 2008), accelerated large graph algorithms (Harish and Narayanan
2007) and biomedical image analysis (Hartley et al. 2008). Parallelising the analysis of specific GC
problems on GPU offers obvious benefits of significant speed gain when returning results, which
has particular advantages for online or real-time systems where the return of results in a short tim-
escale is of fundamental concern to systems designers wishing to enhance usability and interaction.
However, parallelisation also offers the ability to model more complex problems and gain a better
understanding of geographical phenomena.

3.3  SHORT HISTORY OF PARALLEL COMPUTING


The development of supercomputers has historically been driven by military applications, but
population censuses have also provided important applications in the civilian sphere. Applications
as diverse as climate modelling, genetic sequencing and data encryption have subsequently pro-
vided fertile application areas, leading to the design of ever larger and faster computers. Initially,
it was possible to make a computer go faster by building better and smaller chips; for instance, the
improvements from the Cray-1 supercomputer to the Cray X-MP supercomputer came mostly from
better chip technology in the form of vector processors. Unfortunately, there were several physical
barriers to continuing along this path. Electrons are limited to the speed of light so a smaller chip
runs faster because the electrons have less distance to travel. But there is a limit to how fine a mask
can be used in the manufacture of chips due to diffraction effects, while at very small length scales,
it becomes impossible to contain the electrons in the wires due to quantum tunnelling effects.
Parallel Computing in Geography 53

With the end of the Cold War, the supercomputer market was no longer large enough or rich
enough to support the design of new custom chips, and the remaining manufacturers in the market
changed to the use of highly parallel arrays of cheap consumer chips with fast interconnections
between them, for example, MPP. These chips were essentially the same as those used in worksta-
tions and personal computers. Likewise, physical limitations will eventually prevent chip designers
from making these chips any faster. The consequence is the descent of parallel computing from the
elevated heights of supercomputing to the desks of users.
More recently, a variety of parallel computing systems have been developed and brought into
applications. These include parallel computers (supercomputers), computer clusters (CPU and GPU),
computational grids and multi-node CPU computers as outlined in the previous section. The appli-
cation of parallel computing is not just limited to the field of computer science; rather, it is applied
in many more fields. Cosnard and Trystram (1995) set out how parallel computing has been adopted
in many fields, including weather and climate forecasting, genetics, nuclear engineering, mineral
and geological exploration and astrophysical modelling. This diversification has been accompanied
by other innovations, specifically the use of the GPU of a graphics card to process computationally
intensive tasks or programs. Graphics cards were initially devised to render images faster on a com-
puter. However, the processing cores on a graphics cards can be used to run algorithms in parallel.

3.4  PARALLEL COMPUTING AND GEOGRAPHY


The uptake of parallel computing has had a short and patchy history in geography and the social
sciences. In most cases, parallel computing has been used to speed up the application of an existing
algorithm, essentially offering data parallelism. It has not been used to develop fresh approaches
for resolving complex geospatial problems. This is by far the easier of our two options and such
failings have led some to argue that faster processing is not important. Does it really matter if you
have to wait a little longer for an answer? Perhaps program runtimes are not important because all
applications will eventually get faster as chip speeds increase. Such simplistic arguments, however,
completely miss the point. It is the nature of what can or cannot be achieved, in a timely, viable and
worthwhile manner, which has changed with the arrival of parallel computing. The overall con-
cept encompasses a synergistic combination of powerful hardware and software, exemplified, for
example, by the early work of Openshaw and Turton (1996), who used a Cray T3D to classify small
area UK census data. Another early example is ZDES (Zone DESign) (Openshaw and Rao 1995;
Openshaw and Schmidt 1996), which is a system that allows users to design new zoning systems
from smaller regions and is highly computationally intensive. By breaking the system out of the
GIS framework into a loosely coupled system, the use of available parallel resources to speed up the
problem became possible.
Various areas in which speed-up would be of the utmost importance might include instances
in which number crunching is replaced with model crunching, for example, in meta-modelling
(Sreekanth and Datta 2011), or where bootstrapping is used to generate statistical population dis-
tributions and confidence limits (e.g. Nossent et al. 2011) and where extended runs are performed
on large data sets for long periods of time, commensurate with our need to understand the surface
impact of global warming. The implementation of such products in the form of real-time data-
processing applications would also be of particular significance to geography and GC.
Fogarty (1994) pointed out that the US list of grand challenges for HPC (Office of Science
and Technology 1987) lacked any reference to the social sciences and in response argued for the
inclusion of more research on the use of supercomputing in GIS. This continued the trend of the
preceding years where the only interest geographers had shown in parallel computing was to per-
form basic GIS operations more quickly (Costanza and Maxwell 1991; Faust et al. 1991; Kriegel
et al. 1991). In this view, Fogarty was mistaken as to what a grand challenge was; while building a
faster GIS is important as a tool for geography, it lacks the novelty and size for many of the com-
plex problems faced by geographers. Openshaw (1995) subsequently proposed that human systems
54 GeoComputation

modelling could place geography and the social sciences firmly in the supercomputing arena. He
argued that knowledge and the ability to model human systems, such as cities, are of vital impor-
tance since the majority of the world’s population lives in cities, and urbanisation, particularly in
developing countries, continues at a rapid rate. Moreover, human influences on climate remained
poorly understood or modelled, and Openshaw saw that the increasing size and speed of the new
supercomputers in the mid-1990s, combined with the ever larger amounts of data being produced
by the spatial data revolution, would allow geography and the social sciences to start to model
these phenomena. It was also recognised by Ding and Densham (1996) that parallel computing
would allow geographers to gain a better understanding of geographical phenomena by being able
to better model spatial relationships. Moreover, parallel implementations of models are more in
line with complex geographical phenomena, which are characterised by multiple simultaneous
events, than the more traditional sequential modelling approach (Openshaw and Turton 2000). A
wake-up call is offered by Armstrong (2000), who makes the important point that geographers
must actively contribute to research on parallel computing in order to solve geographical problems
or they will find other disciplines moving into the spatial arena and reinventing many spatial con-
cepts and methods.
Early research in parallel computing in geography showed that it had practical applications in
transportation and land-use modelling (Harris 1985; Xiong and Marble 1996), spatial data han-
dling and analysis (Sandhu and Marble 1988), least cost path calculations (Smith et al. 1989), earth
observation (Mineter and Dowers 1999; Aloisio and Cafaro 2003) and in speeding up other GIS
operations such as polygon overlay, line shading and line simplification (Wang 1993; Mower 1996;
Roche and Gittings 1996). Parallel implementations of spatial interpolation algorithms, in particu-
lar, are an area that has seen a great deal of activity both in the past (Armstrong and Marciano
1993, 1994, 1995, 1996, 1997; Wang and Armstrong 2003) and more recently (Srinivasan et al.
2010; Guan et al. 2011; Henneboehl et al. 2011; Pesquer et al. 2011). Similarly, digital terrain anal-
ysis is another area of active research interest with respect to parallel computing, for example, the
early work by Peucker and Douglas (1975). More recently, Do et al. (2010) implemented a parallel
algorithm to delineate catchments from a digital elevation model (DEM) using OpenMPI and C++
on an eight-node machine, achieving near linear speed-up, particularly for larger DEMs. Parallel
computing has also been used in the calculation of other hydrological parameters from a DEM, for
example, the calculation of flow accumulation, that is, how much water accumulates in each grid
cell based on neighbouring flows of water in a catchment, and other hydrological proximity mea-
sures (Tesfa et al. 2011). For example, Wallis et al. (2009) developed a set of parallel algorithms
for flow direction and accumulation using MPI (message passing interface). Testing the parallel
implementations against the serial one not only resulted in considerable speed-up but also revealed
that larger DEMs can be processed that would not be possible through the serial algorithm alone.
GPU was used in the parallel implementation of flow accumulation by Qin and Zhan (2012), while
Yao et al. (2012) applied a sweeping algorithm to flow accumulation calculations that could be
run in parallel. These applications, however, are for the most part still data parallelism. There is
no real re-engineering of a fresh or novel solution that demands parallel thinking and complex
parallel programming!
Progress continues to be made in the field of GIS, but this is largely in experimental systems
with few if any of the vendors of GIS systems showing any interest in developing parallel systems
commercially. However, ESRI’s ArcGIS server can now execute some large geoprocessing jobs in
a parallel manner (ESRI 2009), and parallel databases are being developed for the business market
which have obvious benefits to the GIS community. In general, it is the database operations that
make a GIS slow; with the development of graphics coprocessors, visualising even very large data
sets is no longer a problem. However, carrying out large and complex queries of the database can
still be very slow and is inherently parallel. More recently, geography has linked parallel comput-
ing architectures to the development of GIS algorithms and toolkits using HPC, for example; see
Clematis et al. (2003) as well as distributed approaches (Hawick et al. 2003).
Parallel Computing in Geography 55

3.5  WHEN NOT TO USE PARALLEL COMPUTING


It may seem odd in a chapter promoting the use of parallel computers to include a section about
when not to use them. However, it will save a lot of time if, before rushing headlong into parallel
programming, analysis or modelling, you stop and think if your problem really requires you to put
so much effort into it. Some questions to ask are as follows: How often is this code to be run in
production? How long does it take to run at the moment? If the answers to these questions are not
often and not too long, then don’t bother to think parallel! It will take at least twice as long and prob-
ably a lot longer to write, test and debug the parallel version of your code than it would to write (or
optimise) some serial code. If you only need to run the model once or twice, then even runtimes of
a week or two are still quicker than building a parallel version of your code. However, you will also
need to consider the memory requirements of your problem; if they are many times the real memory
available on your serial machine, then parallel may well be the right route. If you have a program
that takes a month or more to run, then parallelism may be right, and if you need to run a program
or model many thousands or millions of times, then again parallel is the correct path to consider.
It is also necessary to consider the size of the task that you want to parallelise. If the problem
is a small kernel which cannot be easily subdivided and it depends on the previous result, then it
is unlikely to parallelise, since you cannot split the job between processors and you cannot start
computing the next part of the problem until the current step is complete. Problems of this type are,
however, rare in geography.

3.6  WHEN TO USE PARALLEL COMPUTING AND HOW


First, reread the section earlier, which will attempt to talk you out of parallelisation. If you can
pass all the aforementioned tests or are persistent in the face of them, then now is the time to think
parallel. First, you need to decide what sort of parallelism you want to use, and then consider the
language you want to use. Some of these choices will be dictated by what sort of parallel machine
you have access to and which parallel languages it supports.
If you are certain that you need to go parallel, then the next question is as follows: Do you have
access to a parallel computer? Even if at first glance the answer to this seems to be no, do not be dis-
heartened as it is possible with some extra software to turn a room (or building) full of workstations
into a virtual parallel computer. There are free versions of MPI available that provide exactly the
same functionality on a network of workstations as MPI found on large supercomputers. Obviously,
this is not as fast as a dedicated parallel machine but it is a lot cheaper. This approach can also be
used for development work on parallel software since you will only be allocated a limited amount
of time on a large machine for your work, which can often be used up very quickly during devel-
opment. The OpenMP parallel processing API (application programming interface) has also been
developed for writing parallel programs in a number of different programming languages on vari-
ous platforms from desktop computers to supercomputers (Chapman 2008). OpenMP is currently
in version 4.0 (http://openmp.org/wp/).
Parallel problems can be broken down into several types. The first is fine-grained parallelism,
which refers to subtasks that must communicate many times per second, while the second one is
referred to as coarse-grained parallelism, where subtasks communicate less frequently than many
times per second. The final group is known as trivially parallel or embarrassingly parallel, and as
the name suggests, they are the easiest to handle since these programs have subtasks that rarely com-
municate or never have to communicate. The example of producing nine babies given earlier is an
example from the real world. There is no need for the women involved to be in constant communica-
tion with each other or even to be in the same place. For certain types of computing problem, this
is also the case; for instance, if you want to carry out an error simulation on a model that involves
running the model 100 times and comparing the spread of the results from slightly different starting
points, then the easiest way to make this run faster is to run each model on a separate processor and
56 GeoComputation

collate the results at the end of the runs. This kind of problem can almost always produce near linear
speed-ups without much work on the part of the programmer. Harder forms of parallelism are where
there is insufficient room in the memory of each processor to store the problem or where the model
is only to be run once or a few times. Examples of this are often found in physical geography, such
as climate models which cover the whole of the Earth, or in human geography with large spatial
interaction models where the cost matrix and the trip matrix must be stored. In this case, it becomes
necessary to divide the problem up between different processors. This nearly always involves the
program in communicating between the processors which takes up time when the processor could
be performing real work. In problems of this type, it is quite possible to achieve speed-ups of sig-
nificantly less than N. If the number of processors becomes too large compared to the size of the
program task, then communication will completely swamp the problem runtime. For instance, in
the example of the brick wall mentioned earlier, if a team of 1000 bricklayers was put to work, then
it would be very unlikely that any bricks would have been laid at the end of the first day since the
foreman would still be trying to sort out the teams.
How to divide up a problem is also an important part of the parallelisation task. In a simple
model, it may be possible to simply divide the problem up evenly between the processors. This is
often the approach carried out in computational physics and chemistry where problem shapes are
often rectangular and evenly spaced. Unfortunately, in geography, this is rarely the case. The spa-
tial interaction problem can be divided up in this way since journeys to work are usually local and
it is possible to split the rows of the matrix in such a way as to spread out the major conurbations.
However, if you wished to carry out a pattern recognition task on a population raster map of Great
Britain, then one approach might be to divide the map up into as many rectangles as there are pro-
cessors and assign one rectangle to each processor (Figure 3.1a). However, the processor that was
allocated to the top right-hand rectangle would finish almost immediately since it contains mostly
sea, whereas the one that was allocated the bottom-right rectangle would take a long time since
it had the whole of London to deal with. In this case, it would be better to divide the map up into
smaller regions (Figure 3.1b) and to allocate several regions to each processor or to hand out the next
region to each processor as it finished. Care has to be taken not to divide the problem into regions
too small for the processors to work on efficiently or more time will be spent allocating areas than
will be spent working on them.

(a) (b)

FIGURE 3.1  Two possible ways [(a) and (b)] of dividing up a raster population map of the United Kingdom.
(From OS Boundary-Line Great Britain [Shapefile geospatial data], Coverage: Great Britain, Ordnance
Survey, GB. Using: EDINA Digimap Ordnance Survey Service, http://edina.ac.uk/digimap, Downloaded:
October 2013.)
Parallel Computing in Geography 57

The final sections of this chapter are devoted to a recent geographical example of the use of
GPGPU, which is an emerging area of parallel computing with great potential for GC research.
GPU has primarily been used in the area of geostatistics as described earlier, but classification of
large data sets is a problem that lends itself to speed-up through parallel implementation.

3.7  GPGPU GEODEMOGRAPHIC INFORMATION SYSTEM


This section provides an example to illustrate how k-means, a common algorithm used in the
creation of geodemographic classifications, can be enhanced to run in parallel over a GPU. We
then evaluate how this parallel implementation can be further enhanced by different normalisa-
tion procedures and offer further performance improvements upon the standard k-means clustering
that utilises a CPU only. Although of obvious general theoretical interest, this evaluation tackles a
specific applied problem in GC of geodemographic classifications: that is, none of the established
algorithms provide sufficiently efficient means to create national or regional geodemographic clas-
sifications within an acceptable time frame. As such, in assessing the advantages of this approach,
we evaluate the ways in which the parallel k-means clustering algorithm can be applied to the com-
putation of geodemographic classifications online and in real time.
This work exploits the CUDA feature of recent NVIDIA graphics card: a general-purpose parallel
computing architecture that uses programs written in C or C++. A typical CUDA-enabled graphics
card has a number of GPU and a memory capacity capable of storing a large amount of data. For
example, the GeForce 8400M GT graphics card has 16 GPU and 512 MB of internal memory. CUDA
requires that the computational problem be programmed in the C language for parallel processing.
Our case study can be seen in the wider context of parallel implementations of k-means using
CUDA: for example, Takizawa and Kobayashi (2006) have proposed a parallel k-means solution
for solving image texture size problems, and Hall and Hart (2010) have proposed a parallel solution
for solving the problem of limited instance counts and dimensionality in the analysis of complex
shapes. However, these implementations only work in specified environments, and there are as yet
no global parallel k-means solutions that are suitable for creating geodemographic classifications.
Geodemographic classifications provide summary measures of socio-economic conditions in
small neighbourhood areas, typically based upon weighted combinations of census variables (Harris
et al. 2005). There are multiple geodemographic classifications that have been devised as general-
purpose indicators to gauge the levels of social similarity between neighbourhoods in individual
countries and even some that transcend international boundaries.* Classifications are usually struc-
tured into a series of hierarchical levels that represent the typical characteristics of an area. The
characteristics of each class within a typology are usually summarised by a label (e.g. city living),
a verbal pen portrait and other descriptive material such as photographs, montages and videos to
give end users of the classification a clearer understanding of the characteristics of the underlying
populations. In recent years, concerns have been raised over both the need for data that are up to
date (Adnan et al. 2010) and also the applicability of closed source general-purpose classifications
for public service applications such as health or education.
Geodemographic classifications have been developed in a range of national settings. Burrows and
Gane (2006) review Jonathan Robbin’s pioneering work on computer-based geodemographics in the
United States, where he created PRIZM using funding from the US Department of Housing and Urban
Development. PRIZM was focused on the allocation of housing grants between cities that have a his-
tory of rioting (Weiss 2000) and is now owned by the Nielsen Company (Burrows and Gane 2006).
Harris et al. (2005) describe some of the geodemographic tools that have been developed in many
countries of the world, including Australia, China, Denmark, Finland, France, Germany, Greece,
Japan, the Netherlands, New Zealand, Spain, Sweden, Norway, United Kingdom and United States.

* For example, Mosaic Global (http://www.experian.co.uk/business-strategies/mosaic-global.html), which integrates data


from 24 national classifications.
58 GeoComputation

The increasingly complex, urbanised and connected nature of human settlement is driving a
demand for better contextual information to inform decisions about the needs and preferences of
people and the places in which they live and work. Decennial censuses of population (e.g. in the
United Kingdom) have in the past been appropriate for this task, but there are increasing numbers of
calls to supplement census sources with data that are more timely and relevant to particular applica-
tions. Bespoke classifications aim to meet this need and differ from general-purpose classifications
by being built for a specific domain of use (e.g. health or education). Better and more intelligent
integration of a wider range of available data sources can open new horizons for depicting salient
characteristics of populations and their behaviours. The art and science of creating geodemographic
classifications has always been about much more than computational data reduction, and a key con-
sideration in this quest is the availability of decision support tools to present areal data from a range
of attributes in a format that is readily intelligible to the user. Thus, for example, in devising a local
indicator of school attainment, it might be appropriate to use data sources that variously measure
demographic structure, school attainment and deprivation. In assembling such sources together,
the analyst should be made aware of issues of data collection, normalisation, weighting and data
reduction method.
The challenge to GC arises from the need to create geodemographic systems that are simultane-
ously more responsive and more open. There are a number of motivations behind this. First, current
classifications are created from static data sources that do not necessarily reflect the dynamics of
population change in modern cities. Data are increasingly available for frequent time intervals and
offer the potential to be integrated with other traditional sources to create more timely systems. For
example, travel data recording the flow of commuters across a city network could be used to estimate
daytime population characteristics. A further example might entail extracting frequently updated
patient registrations with doctors’ surgeries in order to provide a more up-to-date picture of the
residential composition of neighbourhoods. A requirement for distributed and simple to use online
classification tools arises from changes in the supply of socio-economic data and the potential that
this creates for end users to create new intelligence on socio-spatial structures. In addition to census
data that have been collected every 10 years in the United Kingdom, numerous supplementary data
sources are becoming available, some of which are already updated in near real time. The availabil-
ity of such resources will increase the potential to create more responsive and application-specific
geodemographic classifications that will make it less acceptable to uncritically accept the outputs of
general-purpose classifications as received wisdom. A second motivation is that application-specific
classifications have been successfully demonstrated across a variety of domains, and there are many
more sectors that could potentially benefit if the methods of construction and interpretation were
more accessible and transparent.
We argue here that there is a need for GC web-based applications that enable the creation of
general-purpose geodemographic classifications on the fly, and we anticipate that, when building
geodemographic classifications in the future, the full process of specification, estimation and test-
ing will be integrated in such an online tool. In these systems, the construction process should be
guided to fulfil the objectives of the problem under investigation and will enable parallels between
those aspects of society or the built environment that aim to be measured to be selected, and then
these matched to available absolute, surrogate or estimated data. The created measures will then
be standardised onto the same scale to enable comparison and grouping through cluster analysis.
The data comprising these measures will typically be organised in a database, the content of which
may have been drawn from disparate locations (possibly in real time), and include data related to
various time periods and spatial resolutions. The data could have been manually input, uploaded
as batch files or updated as direct calls to remote API of various open data sharing websites. The
main computational overhead in building such a geodemographic information system relates to
the performance of clustering algorithms when searching for patterns of similarity amongst high-
dimensional attribute data about places. The more zones and attributes the data matrix comprises,
the slower the computation will take to find an optimal solution.
Parallel Computing in Geography 59

In the next section, we evaluate this problem in detail and illustrate how different normalisation
procedures, clustering algorithms and their implementation on parallel architectures of graphics
cards can enhance the speed with which classifications can be compiled. This is essential if
geodemographics are to be reoriented from static systems into problem-orientated flexible pattern
finding tools.

3.8 TOWARDS REAL-TIME GEOCOMPUTATION OF


GEODEMOGRAPHICS USING GPU
As noted earlier, the k-means clustering algorithm remains a core algorithm for the computation
of geodemographic classifications and is typically used to create the finest-level geodemographic
classes. The algorithm seeks to find the set of cluster centroids that minimises the following:

n n

V= ∑∑(z − µ ) (3.1)
x =1 y =1
x y
2

where
n is the number of clusters
μy is the mean centroid of all the points z x in cluster y

The k-means algorithm randomly assigns a set of n seeds within the data set and then proceeds
by assigning each datapoint to its nearest seed. Cluster centroids are then created for each cluster,
and the datapoints are assigned to the nearest centroid. The algorithm then recalculates the cluster
centroids and repeats these steps until a convergence criterion is met (usually when switching of
datapoints no longer takes place between the clusters).
However, there is evidence that the standard implementation of k-means requires multiple runs
of individual instances of the algorithm to create a robust classification (Singleton and Longley
2009), adding considerably to the computational burden. Some improvements to the k-means clus-
tering algorithm have been implemented by Reynolds et al. (2006) as k-means ++, in which initial
seeds are assigned more intelligently by searching for density patterns within the attribute space,
thus reducing the time required to find an optimal solution. Other possibilities include the use of
algorithms that implement hierarchical clustering, partitioning around medoids (PAM) and genetic
clustering algorithms (Adnan 2011).
Adnan (2011) describes one implementation of a parallel k-means algorithm using CUDA that
works as follows:

1. The CPU prepares the datapoints and counts the number of GPU available on the NVIDIA
graphics card. Afterwards, the CPU uploads the datapoints and code assigning one k-means
run to each GPU.
2. Each GPU performs k-means clustering on the datapoints by minimising a cluster solution
based upon an initial set of seed sites. When an optimal solution is achieved, each GPU
returns the result to the CPU and claims the next available k-means run from the CPU if
there are any.
3. The CPU stores the results returned by each GPU in a local data structure contained in
random access memory (RAM). The CPU continues to delegate requests to GPU until the
remaining number of runs is equal to the total number of GPU.
4. After completion of the final set of iterations, the CPU compares the within sum of squares
distance optimisation criterion of all the runs.
5. The optimal solution is the one that minimises the within sum of squares distance within
each cluster.
60 GeoComputation

0 25 50 100 150 200


Miles

FIGURE 3.2  Location and extent of Greater London in the United Kingdom. (From OS Boundary-Line
Great Britain and London [Shapefile geospatial data], Coverage: Great Britain, Ordnance Survey, GB. Using:
EDINA Digimap Ordnance Survey Service, http://edina.ac.uk/digimap, Downloaded: 2013.)

A related issue in classification is the standardisation technique used, and different solutions
may be appropriate depending on the structure of the underlying data. Flexibility in weighting
nonetheless has an impact on the time it takes to compute a clustering solution across a range
of algorithms. As such, Adnan (2011) reports on the efficiency of a number of established clus-
tering algorithms by using three different variable standardisation techniques which include
z-scores, range standardisation and principal component analysis (PCA). An extensive compari-
son of Clara, genetic algorithms and k-means identifies that k-means remains a strong performer
for producing the finest levels of geodemographic classifications, although algorithm refinement
to improve computation time remains a task for future GC research. To this end, research (e.g.
Ding and He 2004) has suggested that PCA projects to the subspace where the global solution of
k-means clustering lies and thus guides k-means clustering to find a near-optimal solution. Using
data for Greater London (Figure 3.2), Adnan (2011) has tested this hypothesis using the variables
that comprise the 41 variable output area (geodemographic) classification (OAC) (Vickers and
Rees 2007), compared with the 26 principal components that account for 90% of the variance in
the same data set. Figures 3.3 and 3.4 show the close correspondence between the results. Running
Parallel Computing in Geography 61

0 1.5 3 6 9 12
Miles

FIGURE 3.3  k-Means applied to the 41 OAC variables. (From Office for National Statistics, 2011
Census: Digitised Boundary Data (England and Wales) [computer file]. UK Data Service Census Support.
Downloaded from: http://edina.ac.uk/census; 2011 Census: Output Area Classification (England and Wales).
Census output is Crown copyright and is reproduced with the permission of the Controller of HMSO and
the Queen’s Printer for Scotland.)

k-means on the 41 OAC variables and 26 principal components of these 41 OAC variables pro-
duces a similar result, but is faster because it takes less time to run an algorithm on 26 variables
than on 41, keeping the same number of records in both cases. This illustrates the usefulness of
PCA as a standardisation technique, if enhanced computational performance is needed from a
k-means clustering algorithm.
Further GC improvements can be made through parallel implementation of k-means using
NVIDIA’s CUDA described earlier. Adnan (2011) describes the development of an algorithm for a
computer with an Intel Core 2 Duo 2.10 GHz CPU, 4 GB RAM and GeForce 8600M GS NVIDIA
graphics card. The graphics card has 16 GPUs and 512 MB of RAM.
Figure 3.5 shows the time in minutes it takes to run both standard CPU-based k-means and
parallel GPU k-means on the data set through to optimisation for 2–30 clusters. Each algorithm
was run 50 times for each value of k. Repeated runs over these multiple values of k indicate how
the performances of the algorithms scale when greater numbers of clusters are specified, as would
be demanded by a bespoke geodemographic information system. For each k value, the CPU algo-
rithm (dark grey) and GPU algorithm (light grey) are compared. The general trend is that GPU
k-means outperforms CPU k-means considerably in terms of computational time. GPU k-means
runs approximately 12 times faster than the general k-means. However, this might change depend-
ing on different hardware. Additionally, over the different values of k, the GPU k-means performs
fairly uniformly with regard to finding an optimal solution, whereas the computation time increases
at a broadly upward trend with CPU-based k-means. Possible explanations for this reasonably even
62 GeoComputation

0 1.5 3 6 9 12
Miles

FIGURE 3.4  k-Means applied to 26 principal components of the 41 OAC variables. (From Office for
National Statistics, 2011 Census: Digitised Boundary Data (England and Wales) [computer file]. UK
Data Service Census Support. Downloaded from: http://edina.ac.uk/census; 2011 Census: Output Area
Classification (England and Wales). Census output is Crown copyright and is reproduced with the permission
of the Controller of HMSO and the Queen’s Printer for Scotland.)

40

35
k-means
30 Parallel k-means

25
Time (min)

20

15

10

0
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
No. of clusters

FIGURE 3.5  Output area (OA)-level results for the two clustering algorithms.
Parallel Computing in Geography 63

performance may include the following: that the full capacity of the GPU is not being utilised; that
the CPU-based measures are running into bottlenecks related to disc access in comparison to the
GPU method which runs in the memory of the graphics card; or that this represents the difference
between streaming and threading methods of allocating jobs to the processors.
The results from each of the algorithms are similar because GPU k-means uses the same stan-
dard k-means algorithm to cluster the data, albeit by running each instance of the k-means on a
single GPU core. The value of using such a parallel approach means that both exhaustive investiga-
tion of the number of clusters and different initial starting seeds can be undertaken.

3.9 CONCLUSIONS
Parallel computing has been applied in different fields to enhance the performance of algorithms
and computationally intensive tasks. Early objectives within the field of geography and GIS were
to make GIS run faster, but research has now moved beyond that goal and has also led to the
development of a few toolkits and implemented a few algorithms that exploit parallel computing
capabilities. Although there is evidence that the use of parallel computing in the field of geography
is increasing, use is still not very widespread. As discussed by Guan and Clarke (2010), it is not
clear if GIScience or geography more generally is really in an era of parallel computing or not as
most models are still based on sequential computing. The reasons for poor uptake can (partly) be
attributed to poor availability of parallel computing resources and lack of the necessary toolkits
and algorithms to build parallel applications (Clematis et al. 2003). It could also be attributed to
limited perceived need, limited interest in computing power and no real geographical champion.
Further, most reported applications offer little more than a combination of exiting algorithms and
data parallelism, and finally, simultaneously thinking in parallel and outside of the box is a hugely
difficult activity. If learning curves are steep or if there are other barriers to accessibility, then
geographers may simply opt to settle for resolving small problems and/or suffer longer runtimes.
Lack of resources is becoming less of an issue with readily available GPU, although the deploy-
ment of this type of parallel computing to solve geographical problems is still rare. While GPU
began as a technology in which computer graphics cards were principally used to render visual
imagery, the development of GPGPU has enabled this technology to solve a variety of scientific
problems that are core to GC analysis. GPGPU technology is very scalable and very practicable
given the many multiple cores now available on high-specification graphics cards. Moreover, their
simple integration into an array structure allows the deployment of GPU alongside standard serv-
ers. These can be accessed remotely, making them highly suitable for implementation in data cen-
tres where specific analytical tasks require high-speed computation, as, for example, is required
for real-time financial analysis.
GPGPU is destined to become a growth area in GC, as well as more widely in both desktop and
web applications. The effects of wide adoption are likely to range from the speeding up of mundane
tasks associated with an operating system through to implementation of computationally intensive
algorithms to search for patterns and meaning hidden within massive data structures.
Clustering represents one important aspect of a chain of necessary spatial data operations which
will facilitate future web-based geodemographic classifications. The number and range of such
applications are likely to multiply in line with the greater availability of open spatial data pertaining
to populations and their interactions across space and the assembly of more real-time information
for use in decision-making. The illustrative application that we have developed here demonstrates
that GPGPU usage can be honed still further with the aid of standardisation procedures, such as
PCA. Our parallel k-means implementation using GPU shows significantly improved computation
efficiency when compared with the standard k-means clustering algorithm, and indeed, this scales
through addition of more GPUs, thus enabling further performance gains with appropriate hard-
ware. As such, we argue that the computation of an online geodemographic classification can be
achieved by combining PCA as the standardisation technique and a GPU-based parallel k-means
64 GeoComputation

implementation as the clustering algorithm. There are obvious implications for hardware procure-
ment in running parallel k-means clustering algorithms, as these need a powerful and appropriately
specified graphics card installed on the machine. However, we argue that with the decrease in com-
putation prices in recent years, this implication is acceptable.
Classification algorithms are only one area where parallel computing has a potentially large
benefit. In 2010, the Committee on Strategic Directions for the Geographical Sciences in the Next
Decade and National Research Council presented 11 fundamental challenges for the geographical
sciences ranging from dealing with an increased population to the impact of climate change on the
human–environment system to food security issues. If there is any hope of tackling these complex,
global problems, then parallel computing will need to become more commonly used in the future. If
geographers do not recognise the need to embrace and master this technology, then there is a danger
that we will be left behind, continuing to develop sequentially based models that address only the
simplest of problems.

REFERENCES
Adnan, M. 2011. Towards real-time geodemographic information systems: Design, analysis and evaluation.
Doctoral thesis, University College London, London, U.K. http://discovery.ucl.ac.uk/1335608/.
Adnan, M., P.A. Longley, A.D. Singleton, and C. Brunsdon. 2010. Towards real-time geodemographics:
Clustering algorithm performance for large multidimensional spatial databases. Transactions in GIS
14(3): 283–297.
Aloisio, G. and M. Cafaro. October 2003. A dynamic earth observation system. Parallel Computing 29(10):
1357–1362.
Amdahl, G.M. 1967. Validity of the single processor approach to achieving large scale computing capabilities.
In AFIPS Conference Proceedings, Atlantic City, NJ, p. 483. ACM Press, New York. http://portal.acm.
org/citation.cfm?doid=1465482.1465560.
Armstrong, M.P. 2000. Geography and computational science. Annals of the Association of American
Geographers 90(1): 146–156.
Armstrong, M.P. and R. Marciano. 1993. Parallel spatial interpolation. In Proceedings of the 11th International
Symposium on Computer-Assisted Cartography, Bethesda, MD, pp. 414–423. http://mapcontext.com/
autocarto/proceedings/auto-carto-11/.
Armstrong, M.P. and R. Marciano. 1994. Inverse-distance-weighted spatial interpolation using parallel super-
computers. Photogrammetric Engineering & Remote Sensing 60(9): 1097–1103.
Armstrong, M.P. and R. Marciano. March 1995. Massively parallel processing of spatial statistics. International
Journal of Geographical Information Systems 9(2): 169–189.
Armstrong, M.P. and R.J. Marciano. September 1996. Local interpolation using a distributed parallel super-
computer. International Journal of Geographical Information Systems 10(6): 713–729.
Armstrong, M.P. and R.J. Marciano. October 1997. Massively parallel strategies for local spatial interpolation.
Computers & Geosciences 23(8): 859–867.
Burrows, R. and N. Gane. October 1, 2006. Geodemographics, software and class. Sociology 40(5): 793–812.
Chapman, B. 2008. Using OpenMP: Portable Shared Memory Parallel Programming. Scientific and
Engineering Computation. MIT Press, Cambridge, MA.
Clematis, A., M. Mineter, and R. Marciano. October 2003. High performance computing with geographical
data. Parallel Computing 29(10): 1275–1279.
Committee on Strategic Directions for the Geographical Sciences in the Next Decade; National Research
Council. 2010. Understanding the Changing Planet: Strategic Directions for the Geographical Sciences.
The National Academies Press, Washington, DC.
Cosnard, M. and D. Trystram. 1995. Parallel Algorithms and Architectures. Bloomsbury Publishing Plc.,
New York.
Costanza, R. and T. Maxwell. November 1991. Spatial ecosystem modelling using parallel processors.
Ecological Modelling 58(1–4): 159–183.
Culler, D.E., J.P. Singh, and A. Gupta. 1999. Parallel Computer Architecture: A Hardware/Software Approach.
Gulf Professional Publishing. Oxford, U.K.
Ding, C. and X. He. 2004. K-means clustering via principal component analysis. In Proceedings of the 21st
International Conference on Machine Learning, Banff, Alberta, Canada. http://machinelearning.wustl.
edu/mlpapers/paper_files/icml2004_DingH04a.pdf.
Parallel Computing in Geography 65

Ding, Y. and P.J. Densham. 1996. Spatial strategies for parallel spatial modelling. International Journal of
Geographical Information Systems 10(6): 669–698.
Do, H.-T., S. Limet, and E. Melin. 2010. Parallel computing of catchment basins in large digital elevation
model. In W. Zhang, Z. Chen, C.C. Douglas, and W. Tong, eds., High Performance Computing and
Applications. Lecture Notes in Computer Science, Vol. 5938, pp. 133–138. Springer, Berlin, Germany.
http://link.springer.com/chapter/10.1007/978-3-642-11842-5_17.
ESRI. 2009. Parallel processing with ArcGIS server: A case study with geocoding. ArcGIS Resources.
http://blogs.esri.com/esri/arcgis/2009/04/06/parallel-processing-with-arcgis-server-a-case-study-
with-geocoding/.
Faust, N.L., W.H. Anderson, and J.L. Star. 1991. Geographic information systems and remote sensing future
computing environment. Photogrammetric Engineering and Remote Sensing 57(6): 655–668.
Flynn, M.J. September 1972. Some computer organizations and their effectiveness. IEEE Transactions on
Computers 21(9): 948–960.
Fogarty, B.W. July 1, 1994. Grand challenges for GIS and what’s really relevant to social science. Social
Science Computer Review 12(2): 193–201.
Guan, Q. and K.C. Clarke. April 19, 2010. A general-purpose parallel raster processing programming library
test application using a geographic cellular automata model. International Journal of Geographical
Information Science 24(5): 695–722.
Guan, Q., P.C. Kyriakidis, and M.F. Goodchild. August 2011. A parallel computing approach to fast geo-
statistical areal interpolation. International Journal of Geographical Information Science 25(8):
1241–1267.
Hall, J.D. and J.C. Hart. 2010. GPU acceleration of iterative clustering. http://hgpu.org/?p=2171. Accessed
14 June 2013.
Harish, P. and P.J. Narayanan. 2007. Accelerating large graph algorithms on the GPU using CUDA. In
Proceedings of the 14th International Conference on High Performance Computing, HiPC’07, Goa, India,
pp. 197–208. Springer-Verlag, Berlin, Germany. http://dl.acm.org/citation.cfm?id=1782174.1782200.
Harris, B. 1985. Some notes on parallel computing: With special reference to transportation and land-use
modeling. Environment and Planning A 17(9): 1275–1278.
Harris, R., P. Sleight, and R. Webber. 2005. Geodemographics, GIS and Neighbourhood Targeting. John Wiley
& Sons, Chichester, U.K.
Hartley, T.D.R., U. Catalyurek, A. Ruiz, F. Igual, R. Mayo, and M. Ujaldon. 2008. Biomedical image analysis
on a cooperative cluster of GPUs and multicores. In Proceedings of the 22nd Annual International
Conference on Supercomputing, ICS’08, Island of Kos, Greece, pp. 15–25. ACM, New York.
http://doi.acm.org/10.1145/1375527.1375533.
Hawick, K.A., P. Coddington, and H. James. October 2003. Distributed frameworks and parallel algorithms for
processing large-scale geographic data. Parallel Computing 29(10): 1297–1333.
Henneboehl, K., M. Appel, and E. Pebesma. 2011. Spatial interpolation in massively parallel computing
environments. In 14th AGILE International Conference on Geographic Information Science (AGILE),
University of Muenster, Muenster, Germany. http://www.agile-online.org/Conference_Paper/CDs/
agile_2011/contents/pdf/shortpapers/sp_157.pdf.
Kriegel, H.-P., T. Brinkhoff, and R. Schneider. 1991. The combination of spatial access methods and compu-
tational geometry in geographic database systems. In O. Günther and H.-J. Schek, eds., Advances in
Spatial Databases. Lecture Notes in Computer Science, Vol. 525, pp. 5–21. Springer, Berlin, Germany.
http://link.springer.com/chapter/10.1007/3-540-54414-3_28.
Michalakes, J. and M. Vachharajani. December 2008. GPU acceleration of numerical weather prediction.
Parallel Processing Letters 18(4): 531–548.
Mineter, M. and S. Dowers. March 25, 1999. Parallel processing for geographical applications: A layered
approach. Journal of Geographical Systems 1(1): 61–74.
Mower, J.E. September 1996. Developing parallel procedures for line simplification. International Journal of
Geographical Information Systems 10(6): 699–712.
Nossent, J., P. Elsen, and W. Bauwens. December 2011. Sobol’ sensitivity analysis of a complex environmental
model. Environmental Modelling & Software 26(12): 1515–1525.
Office of Science and Technology. 1987. The Federal High Performance Computing Program. Office of Science
and Technology, Washington, DC.
Openshaw, S. 1995. Human systems modelling as a new grand challenge area in science, what has happened to
the science in social science? Environment and Planning A 27: 159–164.
Openshaw, S. and L. Rao. 1995. Algorithms for reengineering 1991 census geography. Environment and
Planning A 27(3): 425–446.
66 GeoComputation

Openshaw, S. and J. Schmidt. 1996. Parallel simulated annealing and genetic algorithms for re-engineering
zoning systems. Geographical Systems 3: 201–220.
Openshaw, S. and I. Turton. November 1996. A parallel Kohonen algorithm for the classification of large
spatial datasets. Computers & Geosciences 22(9): 1019–1026.
Openshaw, S. and I. Turton. 2000. High Performance Computing and the Art of Parallel Programming: An
Introduction for Geographers, Social Scientists and Engineers. Routledge, London.
OS Boundary-Line Great Britain [Shapefile geospatial data]. Coverage: Great Britain, Ordnance Survey, GB.
Using: EDINA Digimap Ordnance Survey Service, http://edina.ac.uk/digimap, Downloaded 2013.
Pesquer, L., A. Cortés, and X. Pons. April 2011. Parallel ordinary kriging interpolation incorporating automatic
variogram fitting. Computers & Geosciences 37(4): 464–473.
Peucker, T.K. and D.H. Douglas. December 1975. Detection of surface-specific points by local parallel
processing of discrete terrain elevation data. Computer Graphics and Image Processing 4(4): 375–387.
Phillips, J.C., J.E. Stone, and K. Schulten. 2008. Adapting a message-driven parallel application to GPU-
accelerated clusters. In Proceedings of the 2008 ACM/IEEE Conference on Supercomputing, SC’08, New
York, pp. 8:1–8:9. IEEE Press, Piscataway, NJ. http://dl.acm.org/citation.cfm?id=1413370.1413379.
Qin, C.-Z. and L. Zhan. June 2012. Parallelizing flow-accumulation calculations on graphics processing
units—From iterative DEM preprocessing algorithm to recursive multiple-flow-direction algorithm.
Computers & Geosciences 43: 7–16.
Rauber, T. and G. Rünger. 2010. Parallel Programming: For Multicore and Cluster Systems. Springer, New York.
Reynolds, A.P., G. Richards, B. de la Iglesia, and V.J. Rayward-Smith. 2006. Clustering rules: A comparison of
partitioning and hierarchical clustering algorithms. Mathematical Modelling and Algorithms 5: 475–504.
Roche, S.C. and B.M. Gittings. September 1996. Parallel polygon line shading: The quest for more com-
putational power from an existing GIS algorithm. International Journal of Geographical Information
Systems 10(6): 731–746.
Sandhu, J. and D.F. Marble. 1988. An investigation into the utility of the Cray X-MP supercomputer for han-
dling spatial data. In Proceedings of the Third International Symposium on Spatial Data Handling,
Sydney, New South Wales, Australia, pp. 253–267. IGU Commission on GIS, Columbus, OH.
Singleton, A.D. and P.A. Longley. 2009. Creating open source geodemographics: Refining a national
classification of census output areas for applications in higher education. Papers in Regional Science
88(3): 643–666.
Smith, T.R., G. Peng, and P. Gahinet. 1989. Asynchronous, iterative, and parallel procedures for solving the
weighted-region least cost path problem. Geographical Analysis 21(2): 147–166.
Sreekanth, J. and B. Datta. April 2011. Coupled simulation-optimization model for coastal aquifer management
using genetic programming-based ensemble surrogate models and multiple-realization optimization.
Water Resources Research 47(4): 1–17.
Srinivasan, B.V., R. Duraiswami, and R. Murtugudde. 2010. Efficient kriging for real-time spatio-temporal
interpolation. In Proceedings of the 20th Conference on Probability and Statistics in the Atmospheric
Sciences, Atlanta, GA, pp. 228–235.
Sterling, T., D.J. Becker, D. Savarese, J.E. Dorband, U.A. Ranawake, and C.V. Packer. 1995. BEOWULF:
A parallel workstation for scientific computation. In Proceedings of the 24th International Conference
on Parallel Processing, Oconomowoc, WI, pp. 11–14. CRC Press, Boca Raton, FL.
Takizawa, H. and H. Kobayashi. June 2006. Hierarchical parallel processing of large scale data clustering on a
PC cluster with GPU co-processing. Journal of Supercomputing 36(3): 219–234.
Tesfa, T.K., D.G. Tarboton, D.W. Watson, K.A.T. Schreuders, M.E. Baker, and R.M. Wallace. December 2011.
Extraction of hydrological proximity measures from DEMs using parallel processing. Environmental
Modelling & Software 26(12): 1696–1709.
Thain, D., T. Tannenbaum, and M. Livny. February 2005. Distributed computing in practice: The condor expe-
rience: Research articles. Concurrency and Computation: Practice and Experience 17(2–4): 323–356.
Vickers, D. and P. Rees. 2007. Creating the UK National Statistics 2001 output area classification. Journal of
the Royal Statistical Society: Series A (Statistics in Society) 170(2): 379–403.
Wallis, C., D. Watson, D. Tarboton, and R. Wallace. 2009. Parallel flow-direction and contributing area calcula-
tion for hydrology analysis in digital elevation models. http://citeseer.uark.edu:8080/citeseerx/viewdoc/
summary?doi=10.1.1.158.2864. Accessed 20 July, 2013.
Wang, F. 1993. A parallel intersection algorithm for vector polygon overlay. IEEE Computer Graphics and
Applications 13(2): 74–81.
Wang, S. and M.P. Armstrong. October 2003. A quadtree approach to domain decomposition for spatial inter-
polation in grid computing environments. Parallel Computing 29(10): 1481–1504.
Parallel Computing in Geography 67

Weiss, M.J. 2000. The Clustered World: How We Live, What We Buy, and What It All Means About Who We Are.
Little Brown & Company, New York.
Xiong, D. and D.F. Marble. September 1996. Strategies for real-time spatial analysis using massively parallel
SIMD computers: An application to urban traffic flow analysis. International Journal of Geographical
Information Systems 10(6): 769–789.
Yao, Y., H. Tao, and X. Shi. 2012. Multi-type sweeping for improving the efficiency of flow accumulation
calculation. In Proceedings of the 20th International Conference on Geoinformatics (GEOINFORMATICS),
Hong Kong, People’s Republic of China, pp. 1–4.
4 The Evolving GeoWeb
Andrew Crooks, Andrew Hudson-Smith,
Arie Croitoru and Anthony Stefanidis

CONTENTS
Abstract............................................................................................................................................. 69
4.1 Web-Based GeoComputation.................................................................................................. 70
4.2 Evolution of the GeoWeb......................................................................................................... 70
4.3 Rise of Web 2.0........................................................................................................................ 74
4.4 Role of Crowdsourcing and the GeoWeb................................................................................. 75
4.5 Visualisation and Simulation................................................................................................... 77
4.5.1 Digital Earths............................................................................................................... 78
4.5.2 Virtual Worlds.............................................................................................................80
4.6 From GIS Software to GIS Services........................................................................................ 86
4.7 Summary................................................................................................................................. 89
References.........................................................................................................................................92

ABSTRACT
The Internet and its World Wide Web (WWW) have revolutionised many aspects of our daily
lives from how we access and retrieve information to how we communicate with friends and
peers. Over the past two decades, the Web has evolved from a system aimed primarily towards
data access to a medium that fosters information contribution and interaction within large, glob-
ally distributed communities. Just as the Web evolved, so too did Web-based GeoComputation
(GC), which we refer to here as the Geographic World Wide Web or the GeoWeb for short.
Whereas the generation and viewing of geographical information was initially limited to the
purview of specialists and dedicated workstations, it has now become of interest to the general
public and is accessed using a variety of devices such as GPS-enabled smartphones and tab-
lets. Accordingly, in order to meet the needs of this expanded constituency, the GeoWeb has
evolved from displaying static maps to a dynamic environment where diverse datasets can be
accessed, exchanged and mashed together. Within this chapter, we trace this evolution and cor-
responding paradigm shifts within the GeoWeb with a particular focus on Web 2.0 technologies.
Furthermore, we explore the role of the crowd in consuming and producing geographical infor-
mation and how this is influencing GeoWeb developments. Specifically, we are interested in how
location provides a means to index and access information over the Internet. Next, we discuss
the role of Digital Earth and virtual world paradigms for storing, manipulating and displaying
geographical information in an immersive environment. We then discuss how GIS software is
changing towards GIS services and the rise in location-based services (LBS) and lightweight
software applications (so-called apps). Finally, we conclude with a summary of this chapter and
discuss how the GeoWeb might evolve with the rise in massive amounts of locational data being
generated through social media and the growth of augmented reality (AR) applications tied to
specific locations.

69
70 GeoComputation

4.1  WEB-BASED GEOCOMPUTATION


From its humble beginnings in the 1960s when the Internet was developed primarily to link select
university computers to the development of electronic mail (Cerf, 1993) and the WWW in the
1990s, the Internet has revolutionised many aspects of our daily lives. What started early on as the
enablement of the general public to access information, such as news, has now evolved to a full
spectrum of capabilities ranging from media sharing and online shopping to personal communica-
tions and various forms of social interaction. This revolution has been both driven and enabled by
the proliferation of personalised computers and portable computing devices such as smartphones
and tablets. This change is also seen within the field of Web-based GC, which we refer to here as the
Geographic World Wide Web or the GeoWeb for short (Haklay et al., 2008).
Whereas the generation and viewing of geographical information was initially limited to the
purview of specialists and dedicated workstations, it has now become of interest to the general
public. GeoWeb technology has revolutionised the way we access, utilise, consume and produce
spatial data, information and knowledge. The availability of the Global Positioning System (GPS),
the development of broadband (wired and wireless) communication networks, the emergence of
affordable location-aware mobile computing devices, the growing popularity of geo-browsers (e.g.
Google Maps/Earth and Microsoft Bing) and the ability to easily mash up geographic Web services
have brought personalised spatial information products to the fingertips of everyday users. Within
a few years, the GeoWeb has become an indispensable on-demand, affordable and easy-to-use
consumer product in a rapidly evolving information society. Geospatial information has become
part of numerous and diverse activities and applications, including real-time on-demand navigation,
LBS, environmental monitoring and resource management, health, defence and security.
As can be implied from its definition, the GeoWeb reflects the merging of geographical
information with Web-based content (Elwood and Leszczynski, 2011), empowering the users
with the capabilities to browse, view, customise and contribute geographical information
(Skarlatidou et al., 2013). If one considers the Web as a series of interlined HTML documents,
one can consider the GeoWeb as an ‘interconnected, online digital network of discoverable
geospatial documents, databases and services’ (Turner and Forrest, 2008). What lies behind the
GeoWeb is hardware (servers, computers and mobile devices), software objects (applications and
services) and programming techniques and technical standards that allow for the sharing and
communication of information.
In just a few years after its introduction, the WWW had transformed the way we view and dis-
tribute geographical information, moving away from paper maps to that of the digital as the main
form of distribution (Peterson, 1997). Within this chapter, we discuss how the GeoWeb has evolved
(Section 4.2) and link this evolution to the development of Web 2.0 technology (Section 4.3). We
then turn our attention towards crowdsourcing and its impact on Web-based GC, specifically that
of information generation (Section 4.4). Section 4.5 discusses how the GeoWeb allows for innova-
tive ways of visualising and simulating spatial phenomena with a specific focus on Digital Earth
and virtual world platforms. We then explore in Section 4.6 how GIS software is evolving towards
GIS services and the rise in LBS and lightweight software applications (so-called apps). Finally, in
Section 4.7, we conclude with a summary of this chapter and discuss how the GeoWeb might evolve
with the rise in massive amounts of locational data being generated through social media and the
growth of AR applications tied to specific locations.

4.2  EVOLUTION OF THE GEOWEB


Initially, the creation and viewing of geographical information was limited to specialists
and dedicated workstations (Batty, 1992). It was not until the 1990s that desktop geographical
information systems (GIS) made its entry with the release of ArcView and MapInfo. However,
people were quick to realise the potential of moving GIS beyond stand-alone desktop computers to
The Evolving GeoWeb 71

FIGURE 4.1  PARC Map Viewer. (From Putz, S., Comput. Netw. ISDN Syst., 27(2), 273, 1994.)

the WWW. This transition allowed GIS to move beyond being a tool for the expert to also become
a tool for a much wider audience to share and communicate information about the Earth or geolo-
cated information at large (Sui and Goodchild, 2011).
The dissemination of geographical information and Web mapping, in particular, started early
after the Internet with the Xerox PARC Map Viewer (Putz, 1994) which is shown in Figure 4.1. As
one can see, the viewer had limited capabilities such as fixed zooming. The early realisation that
significant infrastructure was needed to deliver an acceptable user experience in near real time
(Herring, 1994) served as a key motivation for the development of the GeoWeb. Compared to cur-
rent GeoWeb capabilities, these old static map visualisations have been upgraded dramatically with
multiple layering, interactivity and multimedia, thus enhancing the user experience (as discussed in
Gibin et al., 2008 and further elaborated in Section 4.3 of this chapter). While the technical develop-
ment of mapping over the Internet has been discussed extensively elsewhere (e.g. Doyle et al., 1998;
Peng and Tsou, 2003; Plewe, 2007; Haklay et al., 2008), in the following, we focus on the key phases
in the evolution of the GeoWeb.
Plewe (2007) identified four technical generations of the GeoWeb. The first was based on HTML
and Common Gateway Interfaces which provided static maps, with limited user interaction
(e.g. simple zoom and panning functions) based on simple HTTP requests. These first-generation
72 GeoComputation

Web maps included Xerox PARC Map Viewer followed by the Tiger Mapping Service, MapQuest
and Multimap. Such services were limited to information preloaded by the provider and offered
little in the way of spatial analysis. The second generation of Web maps in the mid-1990s were
built upon then novel technologies such as applets (e.g. Java) and component-oriented Web tools
(e.g. ActiveX) such as ESRI ArcIMS and now ArcGIS Server. Such technology enabled the
deployment of Web Mapping Services (WMS) on local Web servers. According to the Open
Geospatial Consortium (OGC), the WMS standard (2000) focuses on three primary functions:
‘produce a map’, ‘answer basic queries about the content of the map’ and ‘tell other programs
what maps it can produce and which of those can be queried further’. Such services allowed
browsing, searching, downloading and basic editing of geographical information (see Simao et
al., 2009 for such a sample application). Such Web mapping standards allowed people to create
maps from the aggregation of multiple geographically distributed data sources. However, such
applications largely remained in the hands of GIS experts due to the technical complexity of the
standards and availability of OGC-compliant software and services (Haklay et al., 2008). Some
have referred to such services as GeoWeb 1.0 (Maguire, 2006).
Following Plewe (2007), the next two paradigms evolved almost simultaneously. Moreover,
these paradigms opened the way for the general public to produce and distribute geographical
information – for better or worse (Sui, 2008). The third paradigm of Web mapping delivered a more
interactive map browsing by utilising technologies such as JavaScript and XML. This has been
made possible through the availability of application programming interfaces (APIs), which provide
an application-agnostic framework to access geographical information. This framework has been
particularly valuable and popular for the creation of mashups* for retrieving, querying and display-
ing geographical information on maps. For example, the release of the Google Maps API enables
users to mix Google stream-based data with other spatially referenced material. The release of this
API in 2005 changed the GeoWeb as it gave the masses easy access to unprecedented amounts of
geographical information (Hudson-Smith and Crooks, 2009) and promoted the creation of numer-
ous GeoWeb applications. For example, 2 years after its release, the Google Maps API was used
in over 50,000 websites (Tran, 2007). Such a dramatic increase in the use of Web-based mapping
services could not have been supported by the GeoWeb 1.0 paradigm due to the high technical entry
level needed to deploy WMS and the high cost with respect to setting up such a service (Haklay
et al., 2008). Through the combination of relatively easy-to-use APIs and the mashup concept, data
can be quickly transformed into consumable maps and served as bespoke applications. Examples
include but are not limited to mashups covering themes such as devastation caused by hurricanes
(Miller, 2006) or damage caused by floods (e.g. Hudson-Smith et al., 2009b) and to that of the
destruction caused by earthquakes (Zook et al., 2010).
Initially such mashups were focused on mapping point data (e.g. UK floods in 2007; see Hudson-
Smith et al., 2009b) even if they were used to summarise areal distributions. Choropleth maps in
mashups were not initially available, which lead researchers to create tools for choropleth map gen-
eration such as those initially developed at the Centre for Advanced Spatial Analysis (see Hudson-
Smith et al., 2009b) or Geocommons (2012). For example, in Figure 4.2, we illustrate the graphical
user interface (GUI) of the London Profiler website, which is a mashup of various types of datasets
from the UK census and other sources in the form of choropleth maps, displayed on top of Google
Maps using the Google Maps API (see Gibin et al., 2008 for more information). However, such
mashups had limited spatial analysis capabilities compared to desktop GIS functionalities or Web
services that are based on a fully fledged GIS engine (e.g. the ArcGIS Server).

* As a further indicator of the effects of Web 2.0 on geospatial capabilities, the term mashup itself crossed over to geospa-
tial technology from popular culture: DJ Danger Mouse first used the term to describe the mixing together of musical
tracks on his Grey Album. The term now refers to websites that weave data from different sources into a new integrated
single user service (Hof, 2005).
The Evolving GeoWeb 73

FIGURE 4.2  GUI of the London Profiler showing an example of a choropleth map overlaid on Google Maps
(London Profiler, 2013, available at http://www.londonprofiler.org/, accessed on June 10, 2013).

A number of different terms have been used to describe these applications, including map mash-
ups (Purvis et al., 2006), map hacks (Erle et al., 2006) and Mapplets (Google, 2008). Regardless of
the term being used, what is at the core of this new GeoWeb are tools and standards for collecting,
storing and sharing information. Turner and Forrest (2008) term this the geostack, which allows for
the creation, publication, sharing and consumption of map-based information. However, as Haklay
et al. (2008) note, the potential for map mashups has been around since 2000 via the OGC, while
the concept of the geostack has been reported in the literature for decades (see Kohn, 1970 cited in
Haklay et al., 2008). What is now different is the availability of readily accessible technology for
the creation of such applications.
These developments in geographical services and applications have empowered the general pub-
lic to produce geographical information, giving rise to the GeoWeb 2.0. It is not only the general
public that sees the benefit of GeoWeb 2.0 but also researchers (e.g. Longley and Singleton, 2009), in
the sense that GeoWeb 2.0 architectures make results from research accessible to the wider public.
This moves geographical products away from the expert to the spatially illiterate. Table 4.1 sketches
out the differences between GeoWeb 1.0 and 2.0. Following Grossner et al. (2008), in addition

TABLE 4.1
Differences between GeoWeb 1.0 and 2.0
GeoWeb 1.0 GeoWeb 2.0
Static 2D map sites (e.g. PARC Map Viewer) Dynamic 2D maps, globes and Earths (e.g. Google Earth,
ArcGIS Explorer)
File transfer (ftp) Direct use Web services (e.g. Google Maps, Bing Maps)
Clearinghouse nodes (e.g. Alexandria Digital Library) Catalogue portals (e.g. geodata.gov., INSPIRE, USGS)
Individual websites (e.g. Multimap) Web service mashups (e.g. London Profiler, Oakland
Crimespotting)
Proprietary protocols (e.g. AXL) Standard protocols (e.g. W3C SOAP/XML, OGC WMS, GML)
User-hosted services Remotely hosted services (e.g. ArcWeb Services)

Source: Maguire, D., GeoWeb 2.0: Implications for ESDI, in: Proceedings of the 12th EC-GI&GIS Workshop, Innsbruck,
Austria, 2006.
74 GeoComputation

to the evolution of GeoWeb standards (e.g. Keyhole Markup Language [KML] and others such
as WMS, Web Feature Services [WFS] and the Geographic Markup Language [GML] standard),
open-source software was developed such as spatial databases (e.g. PostgreSQL and MySQL) along
with readily available Web mapping platforms (e.g. OpenLayers) and map server (e.g. GeoServer
and MapServer).
Coinciding with the mashup paradigm is the fourth generation, that of Digital Earths (or geo-
browsers) such as Google Earth, NASA World Wind and Microsoft Virtual Earth (now Bing Maps)
or ESRI’s ArcGIS Explorer which allow for an immersive mapping environment. We turn again to
this paradigm in Section 4.5. However, with respect to the GeoWeb, we propose a fifth paradigm,
that of virtual worlds. Virtual worlds differ from Digital Earths as these do not aim to mirror worlds
but instead intersect the line between real and fantasy – as we will further discuss in Section 4.5.
Recently, Plewe’s (2007) paradigms have been revisited by Tsou (2011), who added an additional
paradigm, that of Web maps built on cloud computing, rich Internet applications (RIAs) and crowd-
sourcing, which will be discussed in Section 4.6. While the GeoWeb is constantly evolving, the key
to this remarkable evolution is the end-user experience with respect to geographical information.
We have moved from static to dynamic sites, from simply publishing information to participating
in its creation and from centralised data repositories to distributed ones amongst many servers
(Maguire, 2006). This evolution is tied closely to Web 2.0 frameworks and services which empha-
sise user interactivity and user generation of content (Elwood and Leszczynski, 2011), and it is to
this we now turn.

4.3  RISE OF WEB 2.0


Much of what is now possible with respect to the GeoWeb relates to the growth and evolution of
Web 2.0 technologies. With the rise of Web 2.0 and social computing, we have witnessed a revolu-
tion in the way spatial information is being accessed and utilised (Croitoru and Arazy, 2012). In this
section, we present the defining characteristics of Web 2.0 and its relation to geographical informa-
tion gathering and dissemination. The term Web 2.0 can be traced back to O’Reilly Media in 2004,
who used it to define Web applications that facilitate interactive information sharing, interoperabil-
ity, user-centred design and collaboration on the WWW, utilising technologies of social network-
ing, social book marking, blogging, Wikis and RSS/XML feeds (Graham, 2007). This is a clear
divergence from Web 1.0, which was built upon a set of static Web pages with hyperlinks con-
necting them. In contrast, Web 2.0 can be defined by six often overlapping concepts: (1) individual
production and user-generated content, (2) harnessing the power of the crowd (e.g. crowdsourcing;
see Howe, 2006), (3) data on a massive scale, (4) participation enabling architectures, (5) ubiquitous
networking and, finally, (6) openness and transparency (see O’Reilly, 2005; Anderson, 2007; and
Batty et al., 2010 for further discussions). Or in O’Reilly’s (2006) words,

Web 2.0 is the business revolution in the computer industry caused by the move to the Internet as
platform, and an attempt to understand the rules for success on that new platform. Chief among those
rules is this: Build applications that harness network effects to get better the more people use them.
(This is what I’ve elsewhere called “harnessing collective intelligence”.)

Examples of such Web 2.0 applications include MySpace, Facebook, Flickr, YouTube, Twitter and
Wikipedia. The growth of Web 2.0 technologies relies heavily on our ability to communicate and
share data and information through simple, freely available tools, in contrast to the static websites
and data repositories of the past. This evolution is analogous to the paradigm shifts in the GeoWeb
as discussed in Section 4.2, in the sense of how we have moved from authoritative static maps to
map mashups from a variety of distributed data sources. The aim of Web 2.0 tools is that they can
be learnt quickly and effectively without immersion in professional activities (see Hudson-Smith
et al., 2009a) such as advanced computer-programming skills. Again this is seen in the evolution of
The Evolving GeoWeb 75

the GeoWeb, which transitioned from highly trained professionals collecting and distributing geo-
graphical information via highly specialised systems to that where non-experts can collect, display
and share geographical information using freely available tools.
Within the Web 2.0 framework, citizens no longer play a passive role of spatial information
consumers but become spatial data creators (Sui, 2008). This marks the evolution away from the
centralised nature of public participation GIS (PPGIS), which were introduced in the 1990s as a way
to increase public involvement in policy making (Schlossberg and Shuford, 2005). However, PPGIS
has a designated central authority in control of the inputs and outcomes. The rise of Web 2.0 and the
neogeographer (Turner, 2006) has blurred the roles of data consumers, communicators and produc-
ers and has thus altered the nature of PPGIS. Unlike traditional PPGIS, the GeoWeb 2.0 challenges
such concepts as now there is no central authority controlling the inputs and outputs.
With relation to spatial data, Web 2.0 has led to a renaissance in geographical information
(Hudson-Smith and Crooks, 2009). This renaissance was fuelled by the immense popularity of
tools like Google Maps, which brought geographical information to many aspects of our modern
life. Geography, especially location, provides a means to index and access information over the
Internet (Craglia et al., 2008; Haklay et al., 2008) and is therefore enmeshed in the very fabric of the
Internet, thus making the GeoWeb ever more important. This renaissance has put a renewed focus
on early work to exploit geographical information present in a variety of online sources such as Web
pages (e.g. Buyukkokten et al., 1999; Gravano et al., 2003). Additionally, the increased amount of
geographical data has also renewed the need to develop spatial data infrastructures (SDIs), such as
the European INSPIRE (2014), to allow for data to be shared).

4.4  ROLE OF CROWDSOURCING AND THE GEOWEB


The GeoWeb has taken a new meaning with the rise of Web 2.0 frameworks and services, which
emphasise user interactivity and user generation of content. Considering the particularities of geo-
spatial content as it relates to the aforementioned six defining themes of Web 2.0, let us consider
individual production and user-generated content, which also results in massive amounts of data.
In the past, the production and collection of geographical data (either primary or secondary) was
often the first and most vital task of any GIS project, with data capture costs often accounting for up
to 85% of the cost of a GIS (Longley et al., 2010). This has been tipped on its head through crowd-
sourcing and volunteered geographic information (VGI).
Here, we define crowdsourcing as a method of data creation where the presence of a large group
of users not centrally organised generates content that is accessible and shareable as Web-based
services (Howe, 2006). The notion of using the crowd is that although a large number of individual
estimates may be incorrect, their average can be closer to the mark than any individual estimate
(Surowiecki, 2004). Some notable Web 2.0 examples include Wikipedia and WikiMapia, the lat-
ter being closely related to that of crowdsourcing of geographical information or VGI (Goodchild,
2007), with citizens acting as sensors, actively collecting and contributing geographical information
(Goodchild, 2007) utilising Web 2.0 technologies. This has led to a reduction in terms of the cost
of collection and compiling of data (such as GPS-enabled devices and online digitisation). This can
be correlated with the emergence of relevant sites that provide services for distributed GIS data
collection, for example, Google Map Maker. Such sites allow people to collect and disseminate geo-
graphical information while bypassing traditional GIS software. Furthermore, through APIs, users
can create bespoke applications to serve such data, for example, through Web mashups. However,
the analysis capabilities of such tools are often limited. One could consider this to be a legacy of GIS
education, in the sense that people often consider GIS simply as a tool for producing and displaying
maps and not the underlying techniques to build such maps. But it also revolves around the purpose
of many map mashups: to display data and not to manipulate it. Another barrier to carrying out
spatial analysis is of course access to dedicated geographical information software (such as ArcGIS
or MapInfo), which was traditionally limited to experts rather than the public at large due to their
76 GeoComputation

cost. This latter concern is, however, changing through the development of open-source geographi-
cal information-related software (such as QGIS and R), enabling people to manipulate and analyse
data, just as OpenOffice allows people to use word and data packages.
More recently, VGI and the GeoWeb have played an important role in post-disaster response and
recovery mapping (e.g. Norheim-Hagtun and Meier, 2010; Zook et al., 2010) by utilising dedicated
GeoWeb services (such as OpenStreetMap or Google Map Maker). Not only can the public contrib-
ute information (e.g. Roche et al., 2013), but map mashups have been used to merge authoritative
and non-authoritative data in crisis situations (Goodchild, 2009). For example, Google Maps API
was used to display authoritative information of fires taken from RSS feeds from fire departments
in combination with VGI coming from citizens on the ground (Goodchild and Glennon, 2010; Liu
and Palen, 2010; Roche et al., 2013).
Some would argue that harnessing the power of the crowd reduces the burden of geographical
data collection. However, this new paradigm in which citizens are directly involved in the collection
and compiling of datasets is introducing new challenges with respect to data quality. While in the
past many geographical datasets were collected and compiled by central authoritative entities (e.g.
the Ordnance Survey of the United Kingdom) using highly controlled data collection practices and
data quality procedures, the very nature of VGI turns this on its head. Authors have already started
to assess the quality of VGI like OpenStreetMap, by comparing it to established authoritative map-
ping organisations such as the UK Ordnance Survey road datasets (Haklay, 2010) or exploring its
completeness and accuracy with respect to point features (Jackson et al., 2013).
One could consider VGI good enough for its purpose, especially in situations where it presents
the only reasonable means to collect information in a timely manner. In addition, some would
argue that OpenStreetMap like Wikipedia is a process of evolving a good product, not a complete
product in itself because there is no end goal in sight as to what constitutes the best map (or the
best entry in the case of Wikipedia; see Hudson-Smith et al., 2009b). Moreover, while access to the
Internet is increasing, not all areas will participate in data collection, as it is dependent on access
to the Internet. This resurfaces questions relating to the digital divide (the haves and have nots; see
Longley et al., 2006, and Buys et al., 2009).
In conjunction with the emergence of VGI, we are witnessing an explosion of geographical infor-
mation from social media (e.g. Twitter, Flickr). This brings forward a different model of geographi-
cal information contribution. While it is still true that users actively contribute geographical data, a
new model is emerging where the users’ intent is not to directly contribute geographical data (e.g.
a map) but rather contribute information (e.g. a geotagged picture from a family vacation or text
describing a planned or unplanned event such as a flood) that happens to have an associated geo-
graphical component and a corresponding footprint. Harvesting and analysing such ambient geo-
graphical information (AGI, Stefanidis et al., 2013a) represents a substantial challenge needing new
skill sets as it resides at the intersection of disciplines like geography, computational social sciences,
linguistics and computer science. Nevertheless, it can provide us with unparalleled insight on a
broad variety of cultural, societal and human factors, particularly as they relate to human and social
dynamics in a networked society (Scharl and Tochtermann, 2007). For example, in Figure 4.3, we
show a screenshot from GeoSocial Gauge (2014) showing live updates of Twitter traffic associated
with President Obama. It comprises four views of the streaming data. On the top left, we have a map
with overlaid icons indicating the origin locations of social media feeds (tweets in this case) and a
corresponding heat map. On the top right, we display streaming social media feeds, harvested from
the Twitter API which are coloured according to sentiment (light grey for positive, dark grey for
negative). On the bottom left, we show a word cloud representation of the content of these messages.
Finally, on the bottom right, we show a rank of the origin locations of these contributions. At the
same time, this growth in geographical information at the personal level also raises issues of privacy
(see Elwood and Leszczynski, 2011).
The role of crowdsourcing and the GeoWeb is a move from a one-to-many, top-down, authori-
tative means of collecting and distributing geographical information, which was analogous with
The Evolving GeoWeb 77

FIGURE 4.3  Screenshot of the GeoSocial Gauge System, highlighting how social media can be aggregated
into a map mashup (GeoSocial Gauge, 2014 available at http://geosocial.gmu.edu, accessed on February 10, 2014).

the first generations of the GeoWeb. Now we are witnessing a many-to-many decentralised
architecture for collecting and disseminating geographical information from the bottom up
(Roche et al., 2013). However, it is not just who contributes data but also the user experience
in the sense of our ability to effectively organise, visualise and analyse such data that are also
changing. It is to this we now turn.

4.5  VISUALISATION AND SIMULATION


It has long been recognised that the WWW offers innovative ways for representing the physical
environment with real-time interaction over the Internet. The potential of the GeoWeb for visuali-
sation and simulation has been discussed for several years (e.g. Doyle et al., 1998). However, with
advances in computer hardware, software (including computer-aided design [CAD]) and digital
data availability, one can more easily create rich visualisations that mirror reality. Such applica-
tions give an immersive 3D experience of the world that is difficult to achieve from text, pictures or
2D maps alone. Moreover, digital 3D environments hold the ability to create a sense of place, and
thus they are able to mimic the real world for the purpose of digital planning and experimentation
(Hudson-Smith, 2003). This relates to the concept of legibility in planning. Legibility is used to
refer to the ease with which inhabitants of a city can develop a cognitive map over a period of time
and so orientate themselves within it and navigate through it. For example, Lynch (1960) writes,
‘nothing is experienced by itself, but always in relation to its surroundings (p. 1)’. This is the reality
of the city, the built environment. Therefore, if for the purpose of digital planning we are to replicate
the built environment in digital space, the space itself must convey to the user a sense of location,
orientation and identification; in short, it must convey a sense of place (Hudson-Smith, 2003). To
gain an essential foothold, man has to be able to orientate himself; he has to know where he is. But
he also has to identify with himself within the environment, that is, he has to know he is in a certain
place (Groat, 1995). Moving into the 3D realm has the potential to provide windows into the com-
plexity of phenomena and environments under investigation. Within this section, we discuss what
roles Digital Earths play in this arena and their current limitations (Section 4.1) with respect to the
GeoWeb. We then turn to discussing virtual worlds and how they enable us to be imbedded within
them to explore geographical information, gain a sense of place and allow for simulation, such as
how people and traffic might move within a 3D world which mirrors that of reality (Section 4.5.2).
78 GeoComputation

4.5.1 Digital Earths
In a speech, Gore (1998) stated ‘… we need a Digital Earth. A multi-resolution, three-dimensional
representation of the planet, into which we can embed vast quantities of geo-referenced data’. In
essence, Gore was calling for a virtual representation of the Earth on the Internet that is spatially
referenced and interconnected with digital databases from around the world. Indeed, just as we
discussed in Section 4.3, geography, especially location, provides a means to index and access such
information over the Internet, and in the concept of the Digital Earth, the rapid diffusion of geo-
browsers is simply in the vanguard of a whole series of software systems providing a geographically
enabled Web 2.0 service that promises to bring geolocation to the fore and of course to everyone
(Hudson-Smith, 2008).
The idea behind such a system is to allow users to navigate through space and time. Initially
while the idea of organising vast quantities of digital data to specific points was appealing, it was
not feasible due to hardware, software, networking and data interoperability limitations. However,
as Grossner et al. (2008) note, what made the Digital Earth concept possible was the Digital Earth
Initiative chaired by NASA which focused on infrastructure interoperability (once again stressing
the needs for standards for the GeoWeb). However, it was not until 2001 with the launch of Earth
Viewer by Keyhole* (later acquired by Google and becoming Google Earth) that the technical fea-
sibility of a Digital Earth viewer was possible on a desktop computer. A common feature of Digital
Earths (geo-browsers) is that they are built using a technology stack comprised of a thin client,
high-speed Internet connection and sophisticated server infrastructure (Craglia et al., 2008), and
such technologies were not available when Gore (1998) made his speech.
Google Earth (along with other geo-browsers) has increased awareness of GIS potential and
encourages researchers to explore more powerful techniques (Butler, 2006). ‘Just as the PC democ-
ratised computing, so systems like Google Earth will democratise GIS’ (Goodchild quoted in
Butler, 2006). The Google Earth phenomena have opened up some of the more straightforward
capabilities of GIS to the general public, making it easy to deploy geographical information across
computing platforms through a standard, easy-to-navigate GUI. They provide a base layer on which
to overlay data whereby users can pan (e.g. by dragging the mouse) and zoom (e.g. by using the
mouse wheel) on map data almost anywhere in the world. For example, in Figure 4.4, we show how
Google Earth can be used as a base layer to explore possible trajectories of the radioactive plume
from the Fukushima Daiichi nuclear disaster.
While geo-browsers are visually impressive, they are restricted to some sort of mashup capability
(as shown in Figure 4.4) or searching functionality and have limited spatial analysis functions (e.g.
positioning, measuring). More often than not they are used just for visualisation purposes. For
example, one can use Google Earth to explore how an area has changed as shown in Figure 4.5. But
such Digital Earths have been shown to build critical thinking and analysis and promote geographic
awareness (e.g. Patterson, 2007). This has lead some researchers, for example, Rau and Cheng
(2013), to call for a Web-based 3D GIS platform accessible over the Internet which is capable of 2D
and 3D spatial analysis. However, such systems are not widely available. For example, one has to
rely on specialised 3D GIS software to carry out visibility and viewshed with respect to building
heights (e.g. Yu et al., 2007) or emergency response (Kwan and Lee, 2005). If one wants to explore
changes over time or the linkage between human activity and the corresponding physical footprint
or vice versa (e.g. the potential impact of a hurricane on humans), one still has to turn to specific 3D
GIS. Nevertheless, it is important to realise the recent progress in Digital Earths which now provide
the capability to visualise past settlement patterns in three dimensions. For example, Digital Earths
have been used to reconstruct past settlements such as Chengtoushan in China (Sakamoto and
Chikatsu, 2002) to that of modern-day cities such as London, England (Hudson-Smith et al., 2005)
or a combination of both such as in Kyoto, Japan (Yano et al., 2009). Digital Earths can also be used

* Interestingly, one of the co-founders of Keyhole also developed technologies for Second Life (see Crampton, 2008).
The Evolving GeoWeb 79

FIGURE 4.4  Google Earth as a base layer for possible trajectories of the radioactive plume from the
Fukushima Daiichi nuclear disaster. The different lines represent different possible paths of the plume
(HYSPLIT, Possible trajectories of the radioactive plume from the Fukushima Daiichi nuclear disaster, 2014,
available at http://forecast.chapman.edu/images/japan/tranj.kmz, accessed on February 10, 2014).

as a valuable tool in scientific applications (Yu and Gong, 2012) ranging from exploring the cryo-
sphere to mapping the spread of diseases, to urban growth and planning (e.g. Pu and Vosselman,
2009) or to visualisation of the impact of future wind farms (e.g. Wolk, 2008).
However, to fully utilise the Digital Earth concept as put forward by Gore (1998), we have to also
consider that the idea behind a Digital Earth is to provide a highly detailed and immersive environ-
ment for users to explore the Earth. Building detailed 3D models, especially those related to cities,
relies on a number of fields ranging from computer vision, computer graphics, remote sensing and
photogrammetry (Rau and Cheng, 2013). For example, in order to achieve a high degree of realism,
we need a detailed 3D object, data and accompanying texture information (Lange, 2001). Moreover,
we need methods for storing and analysing 3D data (Abdul-Rahman and Pilouk, 2008). This relates
to the notion that building traditional 3D city models was very time-consuming and labour inten-
sive, requiring manual reconstruction from 2D geographical information sources whereby building
outlines are extruded or elevated to create a crude 3D model (Pu and Vosselman, 2009).
For building 3D-rich environments, we can take advantage of developments in data capture.
Examples include airborne and ground-based laser scanning (LIDAR) that offers the ability to extract
a dense 3D point cloud from which buildings can be reconstructed (e.g. Pu and Vosselman, 2009; Heo
et al., 2013). However, such methods only focus on the exterior geometric characteristics of the built
environment, resulting in empty shells that lack any human dimension associated with the buildings.
Motivated by this gap, work is actively being pursued in this arena. For example, Smith and Crooks
(2010) enrich such empty shells with residential and commercial property information sourced from
other databases within the Greater London Authority to explore the relationship between urban form
and function. A truly comprehensive treatment of the issue of empty shells really requires informa-
tion about the internal structures of buildings. For this, we can turn to CityGML (Gröger and Plümer,
2012), an OGC standard for the storage and exchange of 3D city models based on GML. CityGML
is different from KML and Virtual Reality Modeling Language (VRML), which are often used to
build 3D city models as these are purely geometrical or graphical models of the built environment.
80 GeoComputation

(a)

(b)

FIGURE 4.5  Exploring historical images of Las Vegas within Google Earth to visualise urban growth.
(a) 1977 and (b) 2012.

4.5.2  Virtual Worlds


The growth of the GeoWeb has not only has allowed us to display vast quantities of geographical
data in Digital Earths but is also enabling us to create virtual worlds which can create an alternative
geographic reality or mirror the real world. The idea behind such developments can be linked back
to Gelernter (1991) in his seminal book Mirror Worlds: Or the Day Software Puts the Universe in a
The Evolving GeoWeb 81

Shoebox. Gelernter (1991) defines Mirror Worlds as software models of some chunk of reality, some
piece of the real world going on outside your window which can be represented digitally. Gelernter
predicted that a software model of your city, once setup, will be available (like a public park) … it
will sustain a million different views … each visitor will zoom in and pan around and roam through
the model as he chooses (Roush, 2007). Back in 1991, Mirror Worlds and the concept of the universe
in a shoebox were fantasy and preceded the technology that was needed to make it a reality.
Just as the GeoWeb has advanced, so too have virtual worlds, from simple text-based worlds in
the 1980s (e.g. Multi-User DUNGEN or DungenMud) to 2D worlds in the 1990s (e.g. Neverwinter
Nights) to those of 3D virtual worlds such as Second Life, Active Worlds and OpenSim. While the
earliest applications of virtual worlds were focused on social spaces and games, this is changing. Such
electronic environments offer a new potential for study, education and outreach across all the sciences
albeit in the virtual world (Bainbridge, 2007). For example, virtual worlds have been extensively used
in the military (e.g. Vargas, 2006) and for urban planning applications (e.g. Hudson-Smith, 2003).
From an educational perspective, if we take, for example, SimCity (2009),* a city-building simula-
tion game whose objective as the name suggests is to build and design a city, the player can own land
(e.g. commercial, industrial or residential), add buildings, change taxes along with building transporta-
tion systems and respond to disasters such as flooding or earthquakes. Scenarios within the simulation
can be based on real cities and problems associated with them. For example, in the original SimCity
model, one scenario portrayed the capital of Switzerland (Bern) in 1965, a time when the roads were
clogged with traffic. Within this scenario, a player assuming the role of the mayor needed to reduce
traffic and improve the city by installing mass transit systems. In a sense, such a game provides a valu-
able teaching tool for urban geography, planners, designers and policy makers (Adams, 1998), because
while it is a game, it has business rules, ecosystem modelling and social dependencies. The GUI of the
game facilitates the learning about the complex, dynamic and interrelated nature of urban problems.
Today, virtual worlds are electronic environments that can visually mimic complex physical
spaces. Second Life and other virtual worlds such as Active Worlds are classed as multi-user virtual
environments (MUVEs) which are created to engage a community of users where people can be
active users, contributing to sites and participating in site content in real time through the Internet.
This is analogous to the role of the crowd in taking an active role in the production and consumption
of data in the GeoWeb. Users, through their avatars, are able to see the 3D world, to turn around and
look at fellow avatars, while holding a conversation, through voice chat, text-based group discus-
sions and instant messaging which all introduce a meaningful level of social interaction (Hudson-
Smith et al., 1998). Such environments are open to anyone who is connected to the Internet (with
obvious limits of membership, censorship, etc.). This literally puts users in the Internet, rather than
on it (which is the case for Digital Earths). As noted in Section 4.3, the ability of many to engage
and interact is the key feature that defines Web 2.0 technologies where interaction is key and where
most interaction is currently achieved through GUIs (Hudson-Smith et al., 2009c).
Taking Second Life as an example, it provides a synchronous platform with the ability to tie
information, actions and rules to objects, opening the possibility of a true multi-user GIS. For
example, in Figure 4.6, we show how one can import geographical information into Second Life
(e.g. physical terrain data), enabling the creation of table top models of the Earth’s physical geog-
raphy. Such models can then be viewed and discussed within a virtual collaborative environment.
Furthermore, one can import 3D data into Second Life, for example, as shown in Figure 4.6a,
which has been laid out onto a scrolling map at a scaled down level. A simple north/south/east/west
interface enabled users to navigate around the city and new geographical data to be loaded as nec-
essary, while in the background, buildings with real facades are directly imported as JPEGs from
graphic packages (Figure 4.6a). This demonstrates how different levels of geographical detail can

* SimCity is not really a true 3D model but a 2.5D as it uses an isometric viewpoint. The player navigates the environment
by scrolling left, right, up or down. It gives a sense of 3D without having a z-axis (see Krikke, 2000 and Hudson-Smith,
2003 for more details).
82 GeoComputation

be represented within a single virtual environment, ranging from building blocks to life-size build-
ings. The importation of GIS data within virtual worlds has a huge potential for the display, query-
ing and discussion of data either directly from native GIS formats (e.g. shapefiles) or by creating
map boards. For example, Figure 4.6b illustrates a map display for global literacy rates. This ability
opens a range of possibilities for importing geographical data into an environment that is ripe for
public participation and collaboration-type outreach activities (Hudson-Smith, 2003).
While the visualisation and querying of geographical information is one avenue of research, the
acquisition of real-time data is also of interest. For example, Figure 4.6c depicts how one can import
RSS feeds and run them through a text board or how it is possible to link near real-time feeds to
geographic places. For example, in Figure 4.6d, we show real-world weather data in Second Life –
global maps displaying temperature, rainfall, wind speed, barometric pressure and humidity from
around the world.

(a)

(b)

FIGURE 4.6  Geovisualisation in Second Life. (a) Importing and visualising virtual cities, (b) visualising
geospatial data.
The Evolving GeoWeb 83

(c)

(d)

FIGURE 4.6 (continued)  Geovisualisation in Second Life. (c) RSS feed running on a text board, and
(d) Digital Earth with real-time weather data.

There are many tools one can use for the creation of virtual worlds such as from pre-built func-
tions within say Second Life to the importation of data from Google SketchUp (and buildings and
objects from Google Warehouse). For example, Figure 4.7 shows the creation of a building from
floor plans from Google SketchUp into OpenSim. Also as noted earlier, we can import digital
elevation models into virtual worlds to act as realistic terrain on which buildings can be placed.
Additionally, virtual worlds and game engines (e.g. CityScape, Unity, Crysis) allow one to import
road networks as shown in Figure 4.8, which can then be used to simulate traffic dynamics.
Combining the digital models with simulation models in a virtual world gives us unprecedented
power to understand, simulate, explore and visualise cities (Batty, 2001; Crooks et al., 2011). This
has potentially great benefits for urban design. Take, for instance, planners and architects who are
84 GeoComputation

(a)

(b)

FIGURE 4.7  Creating buildings in Google SketchUp and viewing them in OpenSim. (a) Initial floor plan
from a CAD file, (b) building the internal and external structure of the building.

increasingly being challenged to develop innovative uses for spaces but who do not know how people will
use such spaces. Combining the architectural model with an agent-based model of human behaviour*
allows one to explore how people might use the space. For example, we can explore how pedestrians in
the form of agents use a space while exiting a building in an emergency (Crooks et al., 2009).

* See Crooks and Heppenstall (2012) and Benenson (2014) for a detailed explanation of agent-based modelling.
The Evolving GeoWeb 85

(c)

(d)

FIGURE 4.7 (continued)  Creating buildings in Google SketchUp and viewing them in OpenSim. (c) Adding
photorealistic skin to the building, (d) view within.
(continued )

Figure 4.9 shows such an example in Second Life, where agents take the form of pedestrians
and are evacuating the building as the fire alarm has been activated. Given that human movement
behaviour has deep implications on the design of effective pedestrian pathways (Willis et al.,
2004), combining digital and simulation models within a virtual world could therefore improve
the design process through embedding pedestrian dynamics in the related architectural structures
(Vizzari et al., 2006).
Creating detailed 3D city models based on real-world data within virtual worlds does not only
provide us with a sense of place. The visualisation of people moving allows us to better convey
situations such as pedestrian movement and allows urban planners to improve the structure of the
street network and communicate the idea of space to the public (Burkhard et al., 2008). Additionally
86 GeoComputation

(e)

FIGURE 4.7 (continued)  Creating buildings in Google SketchUp and viewing them in OpenSim. (e) Outside
of the building within OpenSim.

incorporating the third dimension into models allows us to augment such models within the real
world. For example, Nakanishi et al. (2009) explored the use of virtual worlds as a test bed for
examining the design of urban public spaces. Specifically, the authors combine an agent-based
model with a virtual city model (in this case, a platform at the Kyoto subway station) and used AR
(which will be further discussed in Section 4.7) to allow humans to interact with the agents (as if
the agents and the humans were in the same crowd) through the use of positioning sensors around
the station and then simulated an emergency. Combining agent-based models with virtual worlds
not only allows us to carry out experiments which are not easy to do in reality, such as setting a
building on fire, it also provides us with a sense of place which people can relate to. It can therefore
potentially help communicate such models to people who are not familiar with simulation models.
However, it is not just urban systems that can benefit from moving into the third dimension but also
ecosystems such as the study of river basin management (e.g. Volk et al., 2008).

4.6  FROM GIS SOFTWARE TO GIS SERVICES


As the GeoWeb continues to develop and evolve, a new paradigm is emerging for creating tools
and functionality around geographical information. Traditionally, tools for processing geospatial
information were developed by large software vendors who embedded them in tightly integrated
software packages. Such packages provided little room for customisation and offered a very limited
ability to build upon existing functionality. GIS software was monolithic rather than flexible. The
business model built around this paradigm is what O’Reilly (2005) would call the Web 1.0 business
model, where software is packaged and sold as desktop applications according to scheduled soft-
ware releases; revenue is based on selling expensive licences to a few specialised customers (Anand
et al., 2010). This approach was not unique to GIS software, as many other software vendors across
the board adopted this approach and business model.
The development of Web 2.0 has brought a significant shift in this paradigm, which was fuelled
by a new approach to software production and delivery. As user activity has shifted from the desk-
top PC to the WWW, the Internet itself emerged as an effective way to deliver software tools by
allowing vendors to reach larger portions of their potential market while mitigating much of the
platform-specific limitations that the desktop PC environment imposed (i.e. compatibility with a
The Evolving GeoWeb 87

(a)

(b)

FIGURE 4.8  Adding real-world road networks within virtual worlds and simulating the movement of
traffic. (a) User view of the world and (b) underlying road network which was imported from OpenStreetMap
(each car is an individual agent).

specific hardware and operating system vendor). In part, this was made possible by the high level of
maturity that Web technology and Web standards have reached (e.g. PHP, JavaScript and the repre-
sentational state transfer architecture). In the Web 2.0 world, software therefore became a service
delivered via the Internet rather than an installation media, and GIS software is no exception.
In conjunction with these developments, technologies and platforms that rely on the software
as a service (SaaS) have emerged and, with them, lightweight software applications or apps, which
provide the necessary user interaction for delivering a specific software service. Due to these char-
acteristics, apps have enjoyed tremendous popularity on mobile computing devices and in particular
smartphones. In the spirit of Web 2.0, apps are built around the user and user-provided data and
they leverage those data to increase the value of the service. A prominent example of such apps is
that of Waze, which provides navigation in real-time traffic from crowd-sourced information. As
can be seen in Figure 4.10a, Waze has a simple interface showing current traffic conditions that
88 GeoComputation

FIGURE 4.9  Pedestrian agents exiting a room once a fire alarm has been activated.

(a) (b)

FIGURE 4.10  Examples of LBS. (a) Interface to SeeClickFix and (b) interface to Waze.

are passively contributed by users of the application. More active gestures include reporting the
locations of say police vehicles or road accidents, all of which are contributed by individual users.
Through such a specialised traffic-centric service, Waze provides users with highly valuable infor-
mation, which continues to improve as the number of users grows. The success of this approach has
led to the acquisition of Waze by Google in 2013 for over 1 billion US dollars.
The Evolving GeoWeb 89

In conjunction with the development of apps such as Waze, the Web 2.0 paradigm has also pro-
moted the development of location-aware apps that actively provide services based on the user’s
location – or LBS (Küpper, 2005; Meek et al., 2014). Through such apps, users can be offered infor-
mation about services from nearby amenities, receive recommendations on services from vendors
in their area or explore user opinions (e.g. reviews) on nearby businesses. However, the concept
behind LBS is also changing based on the success of VGI for emergency response and mapping.
Savelyev et al. (2011) have extended the idea of VGI to incorporate volunteered geographic ser-
vices (VGS). In essence, instead of contributing information, the volunteers can request or offer
services to their local community. One could consider VGS as a human-centred form of LBS. Such
services include SeeClickFix (2013) for reporting things such as broken street lights or graffiti as
shown in Figure 4.10b or Avego (2013) for real-time ridesharing for commuters. Moreover, with
the rise in LBS and user-contributed information over the Internet, the GeoWeb will play an ever
important role here. For example, location provides a means to index and access information over
the Internet. Furthermore, as LBS and VBS grow, the capacity to tailor and target advertisement
based on an individual’s location is increasingly going to be important. One can already start to
see this emergence in certain apps. Foursquare, for example, provides discounts for certain stores
if one checks in.
It is important to note that the wide availability of development tools and platforms for app
development (and service development) has had a dramatic effect on the rate at which apps are
developed and on the promotion of innovation in their development process. In the past, the rate
at which GIS software was developed was dependent on the capacity of its software development
workforce, and new features were introduced through a rather slow top-down process. The world of
Web 2.0 has enabled independent users to quickly develop their ideas and innovation into working
apps, deploy them and quickly gauge users’ opinions. This enables developers to be more agile in
responding to user feedback and needs by modifying their apps and by adding additional features.
This trend also promoted the development and distribution of open-source software (e.g. QGIS;
see Steiniger and Bocher, 2009, for a review) or freeware (e.g. Google SketchUp and Earth) for the
desktop. Proprietary GIS software vendors, such as ESRI, have responded with the development
of the ArcGIS Web Mapping API, which can integrate maps generated by ArcGIS Server (and its
associated analysis functions) with maps served by ESRI. In turn, users can access these APIs at
no cost to build and deploy applications for internal or non-commercial use (Anand et al., 2010).
Another emerging trend worth noting is the development of projects that allow for customisable
maps (e.g. MapBox, CartoDB) based on the open-source OpenStreetMap project, which is allowing
the public and amateur to be the map-maker (Sherman, 2013). There are websites such as MapTales
(2013), which allows users to add personal stories to maps, or Soundcities (2013), which allows
people to upload different sounds from the city to a map. Such sites are therefore allowing one to
organise not just spatial information but also narratives and sounds to a map, all of which can be
searched by location.

4.7 SUMMARY
Today, it is difficult to imagine a modern world without the GeoWeb: a world without easily
accessible, personalised and freely accessible geographical information, a world without geo-
browsers through which we explore the Web or a world without near real-time on-demand delivery
of location-aware news or social media to virtually any mobile device. As the GeoWeb continues
to evolve and deepen its role in our society, it is important to review the evolutionary processes and
watershed moments that have led the GeoWeb to its current significance and ubiquity. This chapter
has traced the development of the GeoWeb, a development process that mirrors how the WWW has
developed more generally. We reviewed the evolution process from static maps to dynamic maps
and the transition from that of consultation and viewing to that of also interaction and contribution
of geographical information. Throughout its evolution, much of the development in the GeoWeb
90 GeoComputation

has coincided with (and built upon) the development of Web 2.0 technologies. Such technologi-
cal advances have altered the GeoWeb paradigm, from enabling people to consume spatial data to
empowering people to contribute it. Moreover, the GeoWeb now provides a way to organise and
share information, and developments relating to crowdsourcing and user interaction are providing a
means to build and maintain virtual communities and alter how information is produced and con-
sumed (Scharl, 2007). In a sense, these advances are bringing us closer to the Digital Earth vision
and are allowing us to build richer and more realistic virtual worlds.
As we have discussed previously, the GeoWeb is providing a means for the broader dissemination
of and access to locational data. However, we also need to consider issues relating to privacy with
regard to the availability and exploitation of personal content of locational information (Elwood,
2010; Elwood and Leszczynski, 2011). This is especially acute with the explosive growth in social
media. For example, in 2011, Twitter users were posting approximately 200 million tweets per
day (Twitter, 2011). A year later, this doubled to 400 million (Forbes, 2012), reaching a world-
wide rate of over 270,000 tweets per minute. At the same time, Flickr users upload in excess of
3000 images per minute (Sapiro, 2011), and YouTube users upload approximately 72 h of video per
minute (YouTube, 2013). These are remarkable volumes of user-generated data, signifying the shift
that has occurred in recent years in digital data production. While in the past, established govern-
ment or commercial organisations were responsible for generating most of the digital data, today, it
is estimated that approximately 75% of all digital data are contributed by individual users (Mearian,
2011). This trend in data growth is expected to become even more significant over the next several
years (Hollis, 2011), as computing and technological advances are solidifying the role of the general
public as the main contributor and consumer of big data, which has the potential to revolutionise
SDIs for scientific purposes (Craglia et al., 2008).
Coincident with these trends is the proliferation of location-aware devices (as we have dis-
cussed earlier). One could argue that all human artefacts have a location (Scharl, 2007), and
even in the Web 1.0 world, 20% of Web pages had geographic identifiers (Delboni et al., 2005),
but this is being changed substantially as people are using their smartphones or tablets to post
information on the Web. This means that a large portion of user-generated content contributed
through Web services is geolocated, thus fostering the emergence of a new type of geographical
information: user-generated, geolocated (or georeferenced) multimedia feeds of diverse thematic
content. These feeds are of diverse value, because they are expressions of geo-journalism, con-
veying current information about significant events, ranging from political movements and upris-
ings (e.g. Pollock, 2011; Stefanidis et al., 2013b) to natural disasters (e.g. Crooks et al., 2013).
These feeds also communicate users’ opinions and views (Bruns and Burgess 2011; Tumasjan
et al., 2011) or even communicate their experiential perception of the space around them (as in
the concept of urban imaginaries of Kelley, 2013).
As a result, social media feeds are becoming increasingly geosocial in the sense that they
often have a substantial geographical content. This can take the form of coordinates from which
the contributions originate or of references to specific locations. At the same time, information
on the underlying social structure of the user community can be derived by studying the interac-
tions between users (e.g. formed as they respond to, or follow, other users), and this information
can provide additional context to the data analysis. Geosocial media therefore emerges as an
alternative form of geographical information, which, through its volume and richness, opens
new avenues and research challenges for the understanding of dynamic events and situations
(Croitoru et al., 2013).
Looking forward, one can expect to see a growth in AR applications tied to specific locations,
especially with the future release of Google Glass and similar products. Currently there is much
development work in AR where information is overlaid onto our view of the physical world, but
this is likely to become more widespread as mobile phones and other technologies become more
ubiquitous. This will add another dimension to the GeoWeb by providing a special kind of loca-
tion-based mashup (Anand et al., 2010). For example, Figure 4.11 shows UCLive, an AR map of
The Evolving GeoWeb 91

(a)

(b)

FIGURE 4.11  AR applications from the Centre of Advanced Spatial Analysis. (a) UCLive and (b) visualising
a 3D city on an actual desk.

University College London utilising the Vuforia AR Extension for Unity which allows developers
to build AR apps using the cross-platform game engine – Unity.
Clearly, we are moving towards a more mobile-orientated Internet with many services oper-
ating in the cloud. Developments towards the semantic Web (W3C, 2013), a web of data, where
‘information is given well-defined meaning, better enabling computers and people to work in
cooperation’ (Berners-Lee et al., 2001), are slowly being developed and are likely to impact how
information is stored and accessed. For instance, if more data are structured, they are more easily
searchable and this can be indexed to places and locations and fed into Digital Earths and virtual
worlds. Moreover, it is not just using people as sensors that are changing how geographical infor-
mation is collected but also the proliferation of satellites for high-resolution image capture. This
too has changed from large government organisations to small companies offering services such
as that of Skybox Imaging. We are also witnessing more target adverts with respect to LBS and
more personalised maps such as those from Google. With the rapid technological changes and the
fast evolution of Web 2.0 applications, it is difficult to precisely predict the path that the GeoWeb
92 GeoComputation

will take as it continues to evolve. However, whichever path it may be, we should expect it to be as
fascinating and revolutionary as the remarkable story of the evolution of the GeoWeb.

REFERENCES
Abdul-Rahman, A. and Pilouk, M. 2008. Spatial Data Modelling for 3D GIS. Heidelberg, Germany: Springer.
Adams, P. C. 1998. Teaching and learning with SimCity 2000. Journal of Geography 97(2): 45–55.
Anand, S., Batty, M., Crooks, A. T., Hudson-Smith, A., Jackson, M., Milton, R., and Morley, J. 2010. Data
mash-ups and the future of mapping. Joint Information Systems Committee (JISC) Technology &
Standards Watch (TechWatch) horizon scanning report 10_01. Bristol, U.K.: JISC.
Anderson, P. 2007. What is Web 2.0? Ideas, technologies and implications for education. Horizon scanning
report, JISC Technology and Standards Watch. Available at: http://www.jisc.ac.uk/whatwedo/services/
techwatch/reports/horizonscanning/hs0701.aspx [Accessed on July 29, 2013].
Avego. 2013. Available at https://www.avego.com/ [Accessed on June 10, 2013].
Bainbridge, W. S. 2007. The scientific research potential of virtual worlds. Science 317(5837): 472–476.
Batty, M. 1992. Urban modelling in computer-graphic and geographic information system environments.
Environment and Planning B 19(6): 663–685.
Batty, M. 2001. Models in planning: Technological imperatives and changing roles. International Journal of
Applied Earth Observation and Geoinformation 3(3): 252–266.
Batty, M., Hudson-Smith, A., Milton, R., and Crooks, A. T. 2010. Map mashups, Web 2.0 and the GIS
revolution. Annals of GIS 16(1): 1–13.
Benenson, I. 2014. Agent-based modeling. In GeoComputation, 2nd edn., eds. R.J. Abrahart and L. See,
pp. 203–240. Boca Raton, FL: Taylor & Francis Group.
Berners-Lee, T., Hendler, J., and Lassila, O. 2001. The semantic web. Scientific American 285(5): 28–37.
Bruns, A. and Burgess, J. E. 2011. #Ausvotes: How twitter covered the 2010 Australian federal election.
Communication, Politics and Culture 44(2): 37–56.
Burkhard, R., Bischof, S. and Herzog, A. 2008. The potential of crowd simulations for communication purposes
in architecture. In Proceedings of the 12th International Conference on Information Visualisation,
London, U.K., pp. 403–408.
Butler, D. 2006. Virtual globes: The web-wide world. Nature 439(7078): 776–778.
Buys, P., Dasgupta, S., Thomas, T. S., and Wheeler, D. 2009. Determinants of a digital divide in Sub-Saharan
Africa: A spatial econometric analysis of cell phone coverage. World Development 37(9): 1494–1505.
Buyukkokten, O., Cho, J., Garcia-Molina, H., Gravano, L., and Shivakumar, N. 1999. Exploiting geographical
location information of web pages. In Proceedings of the ACM SIGMOD Workshop on Web and
Databases, Philadelphia, PA.
Cerf, V. 1993. How the internet came to be. In The Online User’s Encyclopedia: Bulletin Boards and Beyond,
ed. B. Aboba, pp. 527–534. Reading, MA: Addison-Wesley.
Craglia, M., Goodchild, M. F., Annoni, A., Camara, G., Gould, M., Kuhn, W., Mark, D. et al. 2008. Next-
generation Digital Earth: A position paper from the Vespucci initiative for the advancement of geographic
information science. International Journal of Spatial Data Infrastructures Research 3: 146–167.
Crampton, J. 2008. Keyhole, Google Earth, and 3D worlds: An interview with Avi Bar-Zeev. Cartographica
43(2): 85–93.
Croitoru, A. and Arazy, O. 2012. Building location-based mass collaboration systems: Challenges and
opportunities. In Geospatial Free and Open Source Software in the 21st Century, eds. E. Bocher and
M. Neteler, pp. 175–189. Berlin, Germany: Springer.
Croitoru, A., Crooks, A. T., Radzikowski, J., and Stefanidis, A. 2013. GeoSocial Gauge: A system prototype for
knowledge discovery from geosocial media. International Journal of Geographical Information Science
27(12):2483–2508.
Crooks, A. T., Croitoru, A., Stefanidis, A., and Radzikowski, J. 2013. #Earthquake: Twitter as a distributed
sensor system. Transactions in GIS 17(1): 124–147.
Crooks, A. T. and Heppenstall, A. J. 2012. Introduction to agent-based modelling. In Agent-Based Models
of Geographical Systems, eds. A. J. Heppenstall, A. T. Crooks, L. M. See, and M. Batty, pp. 85–108.
New York: Springer.
Crooks, A. T., Hudson-Smith, A., and Dearden, J. 2009. Agent Street: An environment for exploring agent-based
models in second life. Journal of Artificial Societies and Social Simulation 12(4): 10, http://jasss.soc.
surrey.ac.uk/12/4/10.html [Accessed on July 29, 2013].
The Evolving GeoWeb 93

Crooks, A. T., Hudson-Smith, A., and Patel, A. 2011. Advances and techniques for building 3D agent-based
models for urban systems. In Advanced Geosimulation Models, eds. D. J. Marceau and I. Benenson,
pp. 49–65. Hilversum, the Netherlands: Bentham Science Publishers.
Delboni, T. M., Borges, K. A., and Laender, A. H. 2005. Geographic web search based on positioning
expressions. In Proceedings of the 2005 Workshop on Geographic Information Retrieval, Bremen,
Germany, pp. 61–64.
Doyle, S., Dodge, M., and Smith, A. 1998. The potential of web-based mapping and virtual reality technologies
for modeling urban environments. Computers, Environment and Urban Systems 22(2): 137–155.
Elwood, S. 2010. Geographic information science: Emerging research on the societal implications of the
geospatial web. Progress in Human Geography 34(3): 349–357.
Elwood, S. and Leszczynski, A. 2011. Privacy, reconsidered: New representations, data practices and the
Geoweb. Geoforum 42(1): 6–15.
Erle, S., Gibson, R., and Walsh, J. 2006. Mapping Hacks: Tips & Tools for Electronic Cartography. Sebastopol,
CA: O’Reilly Media Inc.
Forbes. 2012. Twitter’s Dick Costolo: Twitter mobile ad revenue beats desktop on some days. Available at:
http://onforb.es/KgTWYP [Accessed on January 19, 2013].
Gelernter, D. 1991. Mirror Worlds: The Day Software Puts the Universe in a Shoebox. How It Will Happen and
What It Will Mean? New York: Oxford University Press.
geocommons. 2012. Available at: http://geocommons.com/ [Accessed on November 15, 2012].
GeoSocial Gauge. 2014. Available at http://geosocial.gmu.edu/ [Accessed on February 10, 2014].
Gibin, M., Singleton, A., Milton, R., Mateos, P., and Longley, P. 2008. An exploratory cartographic visualisation
of London through the Google Maps API. Applied Spatial Analysis and Policy 1(2): 85–97.
Goodchild, M. F. 2007. Citizens as sensors: The world of volunteered geography. GeoJournal 69(4): 211–221.
Goodchild, M. F. 2009. NeoGeography and the nature of geographic expertise. Journal of Location Based
Services 3(2): 82–96.
Goodchild, M. F. and Glennon, J. A. 2010. Crowdsourcing geographic information for disaster response: A
research frontier. International Journal of Digital Earth 3(3): 231–241.
Google. 2008. Google Mapplets API. Available at: http://code.google.com/apis/maps/documentation/mapplets/
[Accessed on May 15, 2008].
Gore, A. 1998. The Digital Earth: Understanding our planet in the 21st century. Australian Surveyor 43(2): 89–91.
Graham, P. 2007. Web 2.0. Available at: http://www.paulgraham.com/web20.html [Accessed on May 1, 2008].
Gravano, L., Hatzivassiloglou, V., and Lichtenstein, R. 2003. Categorizing web queries according to
geographical locality. In Proceedings of the Conference on Information and Knowledge Management,
New Orleans, LA, pp. 325–333.
Groat, L. N. 1995. Giving Places Meaning. London, U.K.: Academic Press.
Gröger, G. and Plümer, L. 2012. CityGML—Interoperable semantic 3-D city models. ISPRS Journal of
Photogrammetry and Remote Sensing 71(7): 12–33.
Grossner, K. E., Goodchild, M. F., and Clarke, K. C. 2008. Defining a digital Earth system. Transactions in
GIS 12(1): 145–160.
Haklay, M. 2010. How good is volunteered geographical information? A comparative study of OpenStreetMap
and Ordnance Survey datasets. Environment and Planning B 37(4): 682–703.
Haklay, M., Singleton, A., and Parker, C. 2008. Web mapping 2.0: The Neogeography of the GeoWeb.
Geography Compass 2(6): 2011–2039.
Heo, J., Jeong, S., Park, H. K., Jung, J., Han, S., Hong, S., and Sohn, H. G. 2013. Productive high-complexity
3D city modeling with point clouds collected from terrestrial LiDAR. Computers, Environment and
Urban Systems 41: 26–38.
Herring, C. 1994. An Architecture of Cyberspace: Spatialization of the Internet. Champaign, IL: US Army
Construction Engineering Research Laboratory.
Hof, R. D. 2005. Mix, match, and mutate: “mash-ups”—Homespun combinations of mainstream services—
Are altering the net. Business Week 3942: 72. Available at: http://www.businessweek.com/magazine/
content/05_30/b3944108_mz063.htm [Accessed on April 23, 2008].
Hollis, C. 2011. 2011 IDC digital universe study: Big data is here, now what? Available at: http://bit.ly/kouTgc
[Accessed on January 19, 2013].
Howe, J. 2006. The rise of crowdsourcing. Wired 14(6): 161–165. Available at: http://www.wired.com/wired/
archive/14.06/crowds.html [Accessed on September 25, 2008].
Hudson-Smith, A. 2003. Digitally distributed urban environments: The prospects for online planning. PhD
thesis. London, U.K.: University College London.
94 GeoComputation

Hudson-Smith, A. 2008. Digital Geography: Geographic Visualisation for Urban Environments. London,
U.K.: Centre for Advanced Spatial Analysis, University College London.
Hudson-Smith, A., Batty, M., Crooks, A. T., and Milton, R. 2009a. Mapping tools for the masses: Web 2.0 and
crowdsourcing. Social Science Computer Review 27(4): 524–538.
Hudson-Smith, A. and Crooks, A. T. 2009. The renaissance of geographic information: Neogeography, gaming
and second life. In Virtual Geographic Environments, eds. H. Lin and M. Batty, pp. 25–36. Beijing,
People’s Republic of China: Science Press.
Hudson-Smith, A., Crooks, A. T., Gibin, M., Milton, R., and Batty, M. 2009b. Neogeography and Web 2.0:
Concepts, tools and applications. Journal of Location Based Services 3(2): 118–145.
Hudson-Smith, A., Dodge, M., and Doyle, S. 1998. Visual communication in urban planning and urban design.
Working paper 2. London, U.K.: Centre for Advanced Spatial Analysis, University College London.
Hudson-Smith, A., Evans, S., and Batty, M. 2005. Virtual London: From CAD to 3-D GIS to global digital
cities. In Insights of Digital Cities, ed. M.-L. Chiu, pp. 75–92. Taipei, Taiwan: Archidata Co. Ltd.
Hudson-Smith, A., Milton, R., Dearden, J., and Batty, M. 2009c. Virtual cities: Digital mirrors into a recursive
world. In Handbook of Research on Urban Informatics: The Practice and Promise of the Real-Time City,
ed. M. Foth, pp. 270–290. Hershey, PA: IGI Global.
HYSPLIT. 2014. Possible trajectories of the radioactive plume from the Fukushima Daiichi nuclear disaster,
Available at http://forecast.chapman.edu/images/japan/tranj.kmz [Accessed on February 10, 2014].
INSPIRE. 2014. Infrastructure for Spatial Information in the European Community, Available at http://inspire.
jrc.ec.europa.eu/ [Accessed on February 10, 2014].
Jackson, S. P., Mullen, W., Agouris, P., Crooks, A. T., Croitoru, A., and Stefanidis, A. 2013. Assessing
completeness and spatial error of features in volunteered geographic information. ISPRS International
Journal of Geo-Information 2(2): 507–530.
Kelley, M. J. 2013. The emergent urban imaginaries of geosocial media. GeoJournal 78(1): 181–203.
Kohn, C. M. 1970. The 1960s: A decade of progress in geographical research and instruction. Annals of the
Association of American Geographers 60(2): 211–219.
Krikke, J. 2000. Axonometry: A matter of perspective. IEEE Computer Graphics and Applications 20(4): 7–11.
Küpper, A. 2005. Location-Based Services: Fundamentals and Operation. New York: Wiley.
Kwan, M.-P. and Lee, J. 2005. Emergency response after 9/11: The potential of real-time 3D GIS for quick
emergency response in micro-spatial environments. Computers, Environment and Urban Systems
29(2): 93–113.
Lange, E. 2001. The limits of realism: Perceptions of virtual landscapes. Landscape and Urban Planning
54(1–4): 163–182.
Liu, S. B. and Palen, L. 2010. The new cartographers: Crisis map mashups and the emergence of neogeographic
practice. Cartography and Geographic Information Science 37(1): 69–90.
London Profiler. 2013. Available at www.londonprofiler.org/ [Accessed on June 10, 2013].
Longley, P. A., Ashby, D. I., Webber, R., and Li, C. 2006. Geodemographic classifications, the digital divide and
understanding customer take-up of new technologies. BT Technology Journal 24(3): 67–74.
Longley, P. A., Goodchild, M. F., Maguire, D. J., and Rhind, D. W. 2010. Geographical Information Systems
and Science, 3rd edn. New York: John Wiley & Sons.
Longley, P. A. and Singleton, A. D. 2009. Classification through consultation: Public views of the geography of
the e-society. International Journal of Geographical Information Science 23(6): 737–763.
Lynch, K. 1960. The Image of the City. Cambridge, MA: MIT Press.
Maguire, D. 2006. GeoWeb 2.0: Implications for ESDI. In Proceedings of the 12th EC-GI&GIS Workshop,
Innsbruck, Austria.
MapTales. 2013. Available at http://maptal.es/ [Accessed on June 10, 2013].
Mearian, L. 2011. World’s data will grow by 50× in next decade, IDC study predicts. Computer World. Available
at: http://bit.ly/k1Jo0V [Accessed on January 18, 2013].
Meek, S., Priestnall, G., and Abrahart, R.J. 2014. Location-based GeoComputation: A Strategic rethinking of
the opportunities for outdoor research afforded by mobile devices. In GeoComputation, 2nd edn., eds.
R.J. Abrahart and L. See, pp. 357–376. Boca Raton, FL: Taylor & Francis Group.
Miller, C. C. 2006. A beast in the field: The Google maps mashup as GIS/2. Cartographica: The International
Journal for Geographic Information and Geovisualization 41(3): 187–199.
Nakanishi, H., Ishida, T., and Koizumi, S. 2009. Virtual cities for simulating smart urban public spaces. In
Handbook of Research on Urban Informatics: The Practice and Promise of the Real-Time City, ed.
M. Foth, pp. 257–269. Hershey, PA: IGI Global.
Norheim-Hagtun, I. and Meier, P. 2010. Crowdsourcing for crisis mapping in Haiti. Innovations: Technology,
Governance 5(4): 81–89.
The Evolving GeoWeb 95

O’Reilly, T. 2005. What is Web 2.0: Design patterns and business models for the next generation of software.
Available at: http://www.oreillynet.com/lpt/a/6228 [Accessed on February 20, 2009].
O’Reilly, T. 2006. Web 2.0 compact definition: Trying again. Available at: http://radar.oreilly.com/2006/12/
web-20-compact-definition-tryi.html [Accessed on February 20, 2009].
Open Geospatial Consortium. 2000. OpenGIS® Web Map Server Interface Implementation Specification
Revision 1.0.0. Available at: http://www.opengeospatial.org/ [Accessed on July 29, 2013].
Patterson, T. C. 2007. Google Earth as a (not just) geography education tool. Journal of Geography
106(4): 145–152.
Peng, Z. R. and Tsou, M. 2003. Internet GIS: Distributed Geographic Information Services for the Internet and
Wireless Networks. Hoboken, NJ: Wiley.
Peterson, M. P. 1997. Trends in internet map use. In Proceedings of the 18th International Cartographic
Conference, Stockholm, Sweden, pp. 1635–1642.
Plewe, B. 2007. Web cartography in the United States. Cartography and Geographic Information Science
34(2): 133–136.
Pollock, J. 2011. Streetbook: How Egyptian and Tunisian youth hacked the Arab Spring, Technology Review.
Available at: http://www.technologyreview.com/web/38379/ [Accessed on July 23, 2012].
Pu, S. and Vosselman, G. 2009. Knowledge based reconstruction of building models from terrestrial laser
scanning data. ISPRS Journal of Photogrammetry and Remote Sensing 64(6): 575–584.
Purvis, M., Sambells, J., and Turner, C. 2006. Beginning Google Maps Applications with PHP and Ajax.
Berkeley, CA: A Press.
Putz, S. 1994. Interactive information services using world-wide web hypertext. Computer Networks and ISDN
Systems 27(2): 273–280.
Rau, J.-Y. and Cheng, C.-K. 2013. Cost-effective strategy for multi-scale photo-realistic building modeling
and web-based 3-D GIS applications in real estate. Computers, Environment and Urban Systems
38(3): 35–44.
Roche, S., Propeck-Zimmermann, E., and Mericskay, B. 2013. GeoWeb and crisis management: Issues and
perspectives of volunteered geographic information. GeoJournal 78(1): 21–40.
Roush, W. 2007. Second Earth: The World Wide Web will soon be absorbed into the world wide sim: An
environment combining elements of Second Life and Google Earth, Technology Review. Available at:
http://www.technologyreview.com/Infotech/18911/?a=f [Accessed on May 6, 2008].
Sakamoto, K. and Chikatsu, H. 2002. Computer reconstruction of the past objects and visual animation of
landscape. In ISPRS Archives—Volume XXXIV-5/W3, 2002, WG V/6, International Workshop on
Visualization and Animation of Landscape, eds. A. Gruen and S. Murai. Kunming, China.
Sapiro, G. 2011. Images everywhere: Looking for models: Technical perspective. Communications of the ACM
54(5): 108.
Savelyev, A., Xu, S., Janowicz, K., Mülligann, C., Thatcher, J., and Luo, W. 2011. Volunteered geographic
services: Developing a linked data driven location-based service. In Proceedings of the 1st ACM
SIGSPATIAL International Workshop on Spatial Semantics and Ontologies, Chicago, IL, pp. 25–31.
Scharl, A. 2007. Towards the geospatial web: Media platforms for managing geotagged knowledge repositories.
In The Geospatial Web—How Geo-Browsers, Social Software and the Web 2.0 Are Shaping the Network
Society, eds. A. Scharl and K. Tochtermann, pp. 3–14. London, U.K.: Springer.
Scharl, A. and Tochtermann, K. (eds.) 2007. The Geospatial Web: How Geobrowsers, Social Software and the
Web 2.0 Are Shaping the Network Society. London, U.K.: Springer.
Schlossberg, M. A. and Shuford, E. 2005. Delineating “Public” and “Participation” in PPGIS. Urban and
Regional Information Systems Association Journal 16(2): 15–26.
SeeClickFix. 2013. Available at http://seeclickfix.com/ [Accessed on June 10, 2013].
Sherman, S. 2013. Are Mapbox and OpenStreetMap’s personalised maps the future of cartography? The
Independent, June 26, 2013. Available at: http://ind.pn/1boSpAI [Accessed on March 26, 2013].
Simao, A., Densham, P. J., and Haklay, M. 2009. Web-based GIS for collaborative planning and public
participation: An application to the strategic planning of wind farm sites. Journal of Environmental
Management 90(6): 2027–2040.
SimCity. 2009. SimCity societies. Available at: http://simcitysocieties.ea.com/ [Accessed on June 6, 2009].
Skarlatidou, A., Cheng, T., and Haklay, M. 2013. Guidelines for trust interface design for public engagement
web GIS. International Journal of Geographical Information Science 27: 1668–1687, doi:10.1080/136
58816.2013.766336.
Smith, D. A. and Crooks, A. T. 2010. From buildings to cities: Techniques for the multi-scale analysis of urban
form and function, Working paper 155. London, U.K.: Centre for Advanced Spatial Analysis, University
College London.
96 GeoComputation

Soundcities. 2013. Available at http://www.soundcities.com/ [Accessed on June 10, 2013].


Stefanidis, A., Cotnoir, A., Croitoru, A., Crooks, A. T., Radzikowski, J., and Rice, M. 2013a. Demarcating new
boundaries: Mapping virtual polycentric communities through social media content. Cartography and
Geographic Information Science 40(2): 116–129.
Stefanidis, T., Crooks, A. T., and Radzikowski, J. 2013b. Harvesting ambient geospatial information from
social media feeds. GeoJournal 78(2): 319–338.
Steiniger, S. and Bocher, E. 2009. An overview on current free and open source desktop GIS developments.
International Journal of Geographical Information Science 23(10): 1345–1370.
Sui, D. 2008. The wikification of GIS and its consequences: Or Angelina Jolie’s new tattoo and the future of
GIS. Computers, Environment and Urban Systems 32(1): 1–5.
Sui, D. and Goodchild, M. F. 2011. The convergence of GIS and social media: Challenges for GIScience.
International Journal of Geographical Information Science 25(11): 1737–1748.
Surowiecki, J. 2004. The Wisdom of Crowds: Why the Many Are Smarter than the Few and How Collective
Wisdom Shapes Business, Economies, Societies and Nations. New York: Little, Brown and Company.
Tran, T. 2007. Google maps mashups 2.0. Google lat-long blog. Available at: http://google-latlong.blogspot.
com/2007/07/google-maps-mashups-20.html [Accessed on May 20, 2013].
Tsou, M. 2011. Revisiting web cartography in the United States: The rise of user-centered design. Cartography
and Geographic Information Science 38(3): 250–257.
Tumasjan, A., Sprenger, T., Sandner, P., and Welpe, I. 2011. Election forecasts with twitter: How 140 characters
reflect the political landscape. Social Science Computer Review 29(4): 402–418.
Turner, A. 2006. Introduction to Neogeography. Sebastopol, CA: O’Reilly. Available at: http://www.oreilly.
com/catalog/neogeography/ [Accessed on April 23, 2008].
Turner, A. and Forrest, B. 2008. Where 2.0: The State of the geospatial web. An O’Reilly Radar Report,
Sebastopol, CA.
Twitter. 2011. 2000 million tweets per day. Available at http://bit.ly/laY1Jx [Accessed on January 19, 2013].
Vargas, J. A. 2006. Virtual reality prepares soldiers for real war. Washington Post, Tuesday, 14, 02–06.
Available at: http://www.washingtonpost.com/wp-dyn/content/article/2006/02/13/AR2006021302437.
html [Accessed on February 6, 2012].
Vizzari, G., Pizzi, G., and Federici, M. 2006. Visualization of discrete crowd dynamics in a 3D environment.
In Proceedings of the 7th International Conference on Cellular Automata for Research and Industry, eds.
S. E. Yacoubi, B. Chopard, and S. Bandini, pp. 720–723. Perpignan, France: Springer-Verlag.
Volk, M., Hirschfeld, J., Dehnhardt, A., Schmidt, G., Bohn, C., Liersch, S., and Gassman, P. W. 2008. Integrated
ecological-economic modelling of water pollution abatement management options in the Upper Ems
River basin. Ecological Economics 66(1): 66–76.
W3C. 2013. W3C semantic web activity. Available at: http://www.w3.org/2001/sw/ [Accessed on June 12, 2013].
Willis, A., Gjersoe, N., Havard, C., Kerridge, J., and Kukla, R. 2004. Human movement behaviour in urban
spaces: Implications for the design and modelling of effective pedestrian environments. Environment and
Planning B 31(6): 805–828.
Wolk, R. M. 2008. Utilizing Google Earth and Google Sketchup to visualize wind farms. In Proceedings of the
IEEE International Symposium Technology and Society, Fredericton, New Brunswick, Canada, pp. 1–8.
Yano, K., Nakaya, T., Isoda, Y., and Kawasumi, T. 2009. Virtual Kyoto as 4D-GIS. In Virtual Geographic
Environments, eds. H. Lin and M. Batty, pp. 69–86. Beijing, People’s Republic of China: Science Press.
YouTube. 2013. YouTube pressroom statistics. Available at: http://bit.ly/gzYBVx [Accessed on January 20, 2013].
Yu, L. and Gong, P. 2012. Google Earth as a virtual globe tool for Earth science applications at the global scale:
Progress and perspectives. International Journal of Remote Sensing 33(12): 3966–3986.
Yu, S., Han, S., and Chai, C. 2007. Modeling the value of view in high-rise apartments: A 3-D GIS approach.
Environment and Planning B 34(1): 139–153.
Zook, M., Graham, M., Shelton, T., and Gorman, S. 2010. Volunteered geographic information and
crowdsourcing disaster relief: A case study of the Haitian earthquake. World Medical & Health Policy
2(2): 7–33.
5 Geovisualisation as
an Analytical Toolbox
for Discovery
Mark Gahegan

CONTENTS
Abstract.............................................................................................................................................97
5.1 Introduction: GeoComputation and Information Visualisation.............................................. 98
5.2 Geovisualisation for Discovery............................................................................................. 100
5.2.1 Exploratory Visualisation, Visual Data Mining, Knowledge Discovery.................. 101
5.2.2 Definitions of Key Terms Used................................................................................. 102
5.2.3 Genesis of Geovisualisation Systems........................................................................ 103
5.2.4 Geovisualisation Systems.......................................................................................... 105
5.3 Decomposing the Various Aspects of a Visualisation........................................................... 106
5.3.1 Visual Variables......................................................................................................... 106
5.3.2 Visual Displays.......................................................................................................... 107
5.3.2.1 More Complex Visual Metaphors............................................................... 107
5.3.2.2 Divide and Conquer versus Compositional Approaches............................ 108
5.3.3 Animation and the Use of Interactors....................................................................... 110
5.4 Perceptual and Cognitive Issues............................................................................................ 110
5.4.1 Visualisation Effectiveness: The Study of Cognition and Psychometrics................. 111
5.5 Creating Useful Visualisations.............................................................................................. 111
5.5.1 Designing a Visualisation.......................................................................................... 112
5.5.2 Example of Repeated Visual Encoding for Exploration: Choropleth Mapping........ 113
5.5.3 Generic Exploratory Visualisation Workflow........................................................... 114
5.6 Visualisation and the Process of Discovery Science............................................................. 115
5.7 Conclusions and Challenges in Geovisualisation.................................................................. 117
5.8 Further Readings................................................................................................................... 119
Acknowledgements......................................................................................................................... 119
References....................................................................................................................................... 119

ABSTRACT
This chapter makes the case for geovisualisation (GeoViz) as a vital ally in the struggle to address
the ever-increasing data complexity that shapes contemporary geographical analysis. And since
GeoViz is promoted here as an approach for discovery science, we look at the process by which
GeoViz is applied in discovery activities and to what extent the process, experience and results
differ from other analytical approaches, such as machine learning and exploratory statistics.
The stance taken here is that GeoViz has established enough credibility and utility to be con-
sidered an equal partner in the expanding arsenal of GeoComputation (GC) techniques and that
there is by now sufficient scientific credibility and related success stories to justify this stance.

97
98 GeoComputation

The introduction describes the connections between GC and discovery, followed by a section that
recaps the history and development of various approaches and provides definitions for the key
terminology used in later sections. Section 5.3 dissects the anatomy of a GeoViz display and intro-
duces some of the more common visual devices and metaphors. In Section 5.4, the perceptual and
cognitive issues underlying GeoViz are summarised, followed in Section 5.5 by an account of how
a visualisation is constructed, in the light of these perceptual and cognitive issues. A workflow-like
description of the main stages of construction is provided. Section 5.6 describes how GeoViz can
be used in the discovery process and notes seven challenges that must be overcome in order for
visually led discovery to be effective. A summary and list of outstanding problems are presented
by way of conclusions.

5.1 INTRODUCTION: GEOCOMPUTATION AND


INFORMATION VISUALISATION
When the term GeoComputation (GC) was first proposed in the 1990s by Openshaw and colleagues
(Openshaw, 2000), the focus was clearly on the analytical methods and techniques needed to allow
geographical analysis to scale up to bigger, or more complex, or more detailed problems, extend-
ing what was possible using existing analytical methods. In this sense, it actually foreshadows the
current interest in big data (e.g. Hey et al., 2009; Sui, 2014) that we see taking hold right across
the sciences and also in business and government. These new analytical methods were typically
directed at improved scalability, or dealing with noisy data, or situations where existing parametric
assumptions to analysis were found wanting (e.g. Gould, 1970; Gahegan, 2003). Since its intro-
duction, the meaning of the term GeoComputation has become somewhat broadened, perhaps a
casualty of the constant battle for conference attendance. But in this original sense, geovisualisation
(GeoViz) aligns well with the ethos of GC because both aim to avoid a priori assumptions about data
distributions and patterns where they are not needed or likely to be misleading or just plain wrong.*
Another shared aim between GC and GeoViz is to scale to large or complex multivariate datasets.
And while no analysis technique can avoid making some assumptions or scale infinitely, neverthe-
less the role that GeoViz can play here is a critically important one, which geographical analysis
will need to draw more deeply upon in the future. Within this chapter, the focus is placed on the
process of GeoViz, to show the tasks involved in creating visual displays, the complexities in some
of the steps that can still cause problems, the kinds of inferences and insights gained and the nature
of the results produced. In other words, if we treat GeoViz as just another analysis toolbox, how do
we use it and how does it compare to other emerging GC approaches, such as machine learning or
artificial life?
In contrast to McNoleg’s (2008) tongue-in-cheek claim that GeoViz is ‘… the recycling of
surplus numbers into abstract art’, GeoViz has by now demonstrated that it is much more than
window dressing at the end of the research enterprise and that it has a great deal to offer as a
method for data exploration and discovery science. For example, many compelling visualisation
success stories are regularly reported in the results of the International Science and Engineering
Visualization Challenge hosted periodically by the US National Science Foundation. This chal-
lenge has the tag line ‘Science and Engineering’s most powerful statements are not made from
words alone’† and its findings are reported in an accompanying special issue of the premier jour-
nal Science (2010).
As a simple example of the power of exploratory visualisation to grant insight, consider the
distributions shown in Figure 5.1. The four datasets graphed are known as Anscombe’s quartet
(Anscombe, 1973). Each of these datasets has identical values – to two decimal places or better – for
the following descriptive statistics: mean in x, variance in x, mean in y, variance in y, correlation

* The same can be said of the machine learning methods that emerged as part of the same GeoComputation movement.
† http://www.nsf.gov/news/special_reports/scivis/winners_2009.jsp.
Geovisualisation as an Analytical Toolbox for Discovery 99

12 12
10 10
8 8
Y1

Y2
6 6
4 4

4 6 8 10 12 14 16 18 4 6 8 10 12 14 16 18
X1 X2

12 12
10 10
8 8
Y3

Y4
6 6
4 4

4 6 8 10 12 14 16 18 4 6 8 10 12 14 16 18
X3 X4

FIGURE 5.1  Anscombe’s quartet: four datasets that share many of the same summary statistical properties,
including mean, variance, correlation and linear regression. (Derived from earlier work by Schutz and the R
development core team and is available from Wikipedia’s creative commons. This file is licensed under the
Creative Commons Attribution-ShareAlike 3.0 Unported, http://en.wikipedia.org/wiki/File:Anscombe%27s_
quartet_3.svg.)

between x and y and linear regression of x and y. For those interested in verifying this for themselves,
further details can be found here: http://en.wikipedia.org/wiki/Anscombe’s_quartet. Sometimes,
relying too much on descriptive statistics can cause us to miss important detail that visualisation
can easily reveal.
Throughout this chapter, I take the view that ‘geovisualisation as an analytical toolbox for dis-
covery’ refers to the use of GeoViz for exploration activities involving geographical data: to discover
the unknown or to better understand the complex distributions and patterns within the geographical
datasets we now routinely assemble. And rather like the explorers of the past, these acts of discov-
ery are sometimes conducted across unfamiliar landscapes: in our case, the landscapes are formed
dynamically via the projection of data into a visual form. Of course, GeoViz can also play additional
roles in the research process, for example, to present or to communicate final outcomes arising from
analysis. This kind of use is more aligned with traditional presentational forms of cartography than
with GC, so is not considered here.
In contrast to statistical analysis and machine learning techniques, visualisation of any kind
requires strong support from a human observer, who must engage with – and make sense of – the
visualised data, in order to draw inference. The researcher becomes an active part of the analytical
workflow and plays the dual role of both extracting artefacts of potential interest from the display
(‘that pattern looks interesting…’) and of explaining or contextualising the artefact (‘…I wonder
what it means?’). See Section 5.6 for a further description of the kinds of inference that GeoViz
supports.
Visualisation works because of the inherent power and adaptability of the human visual sys-
tem, which can still outperform computer vision systems for many complex visual tasks, such
as the detection of weak correlations in noisy data or the winnowing of many correlations to
those most likely to be useful for later analysis. To be effective, GeoViz must translate patterns
of potential interest in the data to visual symbols in such a way as they become discernible
100 GeoComputation

(even obvious) in the display. These patterns must then be recognised and recorded (or further
analysed) by the researcher. Involving the researcher intimately in the process of discovery is
definitely not a new idea(!) but here the traditional responsibilities and roles are shifted away
from the system providing the results of analysis in statistical or numerical form, along with
confidence intervals or error bars. Thus, we can see that visualisation is by its very nature more
subjective – what is seen depends on how one looks and on who is looking. And before – dear
reader – you dismiss this as a weakness, first, try on the idea that it might actually be a strength.
If you are a geographical researcher, you can probably bring a great deal of expertise to bear on
data exploration that would be difficult to express or operationalise statistically. Visualisation
does not force you to try.

5.2  GEOVISUALISATION FOR DISCOVERY


In this section, the need for better discovery methods is highlighted, and the history and genesis of
GeoViz is briefly outlined, followed by the introduction and definition of some of the key terms that
recur throughout the later sections.
Strong motivation is provided for the development of specifically geo-capable visualisation
systems by the increasing amounts of data becoming available for many types of application
right across geography and the wider geosciences. New families of geo-physical and thematic
instruments, demographic surveys, crowdsourced information and disease registries are creating
datasets with large numbers of data dimensions and with high thematic, spatial and temporal res-
olution, from which exploration into trend and change detection is needed. Furthermore, improve-
ments in data interoperability, ontology alignment and linked geographical data (Janowicz et al.,
2012) generate opportunities to combine existing datasets in new ways, again creating more data
complexity (Spira and Goldes, 2007). For example, a disease incidence study using census and
medical data might require 30 or more variables including case data, administrative boundaries
and demographic surfaces (e.g. Guo et al., 2003), whereas a land cover change mapping exercise
might use multichannel multi-date, remote sensing imagery supplemented with ground surveys,
elevation surfaces and aerial photographs. Such augmented datasets give rise to new challenges
relating to data discovery, some of which can be addressed by using the enhanced functionality
and finer control that visualisation environments offer to enable the discovery of useful patterns
and trends.
Many traditional forms of spatial analysis can become prohibitively complex or unreliable when
dealing with such large and diverse multivariate datasets. To a lesser extent, the same can be said
of machine learning techniques; they can become difficult to configure and slow to converge as the
complexity of the analysis task increases by adding in data dimensions. GeoViz offers the capabil-
ity to view many multiple, related data themes concurrently, without recourse to statistical sum-
marisation or data reduction – both of which may mask or even remove the very trends in the data
that might be of greatest interest to us. To quickly illustrate the point, Figure 5.2 shows more tradi-
tional statistical plots, mixed with a time series and a map, to view a complex dataset that contains
demographics, ethnicity and cancer incidence data (for five cancer types) over a 5-year period. The
combination of displays allows spatial, temporal and statistical trends and patterns to be tracked
concurrently.
GeoViz has emerged over the last 20 years as an active and coherent sub-discipline within
GIScience that – as its name suggests – focuses on the portrayal of geographical information in
visual form. It essentially tracks the more mainstream information visualisation (InfoViz) and
scientific visualisation (SciViz) disciplines, though with the specific inclusion of maps and dis-
plays of spatial data. Both InfoViz and SciViz draw from a rich and diverse research literature
including computer graphics, statistics and cartography, but mixed with a healthy dose of cogni-
tive science and psychometric research to help us understand and utilise the human visual system
to good effect.
Geovisualisation as an Analytical Toolbox for Discovery 101

FIGURE 5.2  An initial exploration of breast cancer incidence in New Zealand. The display on the right is
a bivariate choropleth map, made by combining two data variables (cancer rates for two different years). The
parallel coordinate plot at bottom left shows how the cancer rate varies over 5 years for each region. The his-
togram (middle top) shows the distribution of values for just one variable and the scatterplot (top left) graphs
two variables together (the same two as shown in the map). Note the leader lines that connect values across all
the displays for the region that is currently selected (the Kaipara District of North Island).

5.2.1 Exploratory Visualisation, Visual Data Mining, Knowledge Discovery


Data can tell many stories; a comprehensive geographical dataset contains a huge wealth of dif-
ferent relationships, both within and between the different layers or themes. The term exploratory
visual analysis (EVA) was established in the early 1990s, with the goal of presenting data to a user
in such a way that relationships and structure contained therein are made apparent (e.g. Tukey, 1977;
Cleveland and McGill, 1988; Monmonier, 1990). The recognition of some underlying pattern or
structure is known colloquially as visual pop-out. For pop-out to occur, the target must be identifi-
able via the combined visual stimulus produced from the presentation of the underlying data, which
implies that the stimulus is not shared with any distracters, that is, irrelevant patterns or structures
that produce a similar response in the observer. Simply put, visualisation tools designed for discov-
ery activities need data presentation strategies that lead to pop-out.
EVA is one method in a larger arsenal for performing data mining or knowledge discovery that
could be grouped under the heading of exploratory data analysis (EDA) or data mining and knowl-
edge discovery (Fayyad et al., 2002; Miller and Han, 2009). Non-visual approaches to exploration
and data mining attempt to recognise or discover knowledge by computing the strength of relation-
ships within and between layers of data (e.g. using covariance or entropy measures), possibly distill-
ing out some sort of statistical model as a result. They are usually computer-intensive. Haslett et al.
(1991) describe some early interactive tools for identifying statistical anomalies in data.
More recently, the term visual data mining has become synonymous with EVA (de Oliveira
and Levkowitz, 2003), and specifically relevant here is that it seems to draw inspiration from the
increasing data complexity and volumes that have also stimulated mainstream data mining, for
example, with the challenge of conveying synoptic overviews of millions of records in limited
visual spaces (e.g. Keim and Kriegel, 1996; Jerding and Stasko, 1998). Keim et al. (2006) provide
an excellent summary of the challenges to be overcome. Compieta et al. (2007) describe the con-
nection between exploratory spatio-temporal data mining and visualisation. Data mining has also
made substantial progress of late but remains hampered largely by the difficulty in integrating the
102 GeoComputation

domain-specific knowledge that would allow useful findings to be separated out from those already
known or unhelpful. Recognition of this fact has led to an acknowledged role for visualisation
(Thomas and Cook, 2005, 2006), alongside more quantitative approaches to analysis and a conse-
quent shift towards a collaborative mode of interaction between researchers and their computational
systems. There is a similar trend within the computer vision and artificial intelligence commu-
nity to regard the human as an essential component within many systems and renewed interest in
developing collaborative approaches (e.g. Keel, 2007; Mac Fhearaí et al., 2011) that can utilise the
strengths of both computers and people working together.* Obviously, visualisation can provide an
approach to data analysis that is based around such collaboration. As we will see later, interaction in
visualisation is typically highly interactive, allowing the user to move around the display to explore
different perspectives on the underlying data and to easily change those aspects of the data that are
emphasised visually and how they are emphasised.
From the perspective of human–computer interaction, visualisation can be viewed as one mem-
ber of a larger family of methods for interacting with information via the senses, by forming images,
scenes or virtual realities to graphically portray data. Other modalities such as touch, sound and
even taste and smell have also been explored as additional channels by which to convey informa-
tion (e.g. Hermann and Hunt, 2005). In sighted humans, vision is the dominant sense, making it the
strongest candidate on which to base interaction with the computer.
Fuelling the more widespread adoption of visualisation is the trend towards increasing graphi-
cal performance on every kind of personal computing device. Early GeoViz required sophisti-
cated and expensive hardware to provide accelerated graphical performance (known as rendering
speed). However, the ever-improving cost-performance of computer hardware has ensured that
suitable graphics capabilities are available now for many platforms, including desktop computers
and mobile devices, and indeed are now considered standard equipment. Highly optimised GPU
(graphics processing unit) hardware and better integration with motherboards, memory and high-
level languages has opened up a world of possibilities, with rendering speeds that would have
been unimaginable 10 years ago. All of this makes it possible to manipulate complex datasets,
using sophisticated visual paradigms, in real time on personal computing devices.† And render-
ing speed will continue to improve for some time yet. Still holding us back is a range of more
complex challenges around understanding the effectiveness of particular visualisation methods,
the poor integration of these methods into existing analysis packages and databases and perhaps a
misplaced sense that the resulting subjectivity is problematic to shoehorn into established notions
of scientific rigour.

5.2.2 Definitions of Key Terms Used


Visualisation encompasses both the methods to depict data visually and the means to interact with
this depiction, based around a graphical environment. It involves the production of graphical repre-
sentations of data, often termed visualisations or scenes or displays. A scene may depict (render)
data as it might appear in the real world to a human observer (e.g. photorealistic), or alternatively
it may transform data values that do not have a true visual appearance (such as depth, soil pH or
rainfall) into an abstract graphical form where they can be readily perceived. This transformation is
known as visual encoding, by mapping the data to some visual variable, such as colour, size, shape
or transparency.

* This is not to say that statistical and machine learning should not be used for complex exploratory analysis. On the con-
trary, there are many tasks that can be better performed by an algorithm than by humans. For example, classification and
the search for minima and maxima in high dimensionality spaces (which form the basis of many of the artificial intel-
ligence techniques discussed in this book, including neural networks, decision trees and genetic algorithms) are usually
best performed using a computational approach.
† And using server farms of similar computers, it becomes possible to render armies of goblins and dwarves and even the

odd dragon onto real or virtual film sets in near real time.
Geovisualisation as an Analytical Toolbox for Discovery 103

A display is composed of a number of primitive graphical objects that are combined together,
rather like the base types in a conventional programming language. Example objects might be a
point, a region or an arrow; these are sometimes termed symbols or glyphs. Symbols host visual
variables – such as colour, shape, transparency and position – to which data can be visually
encoded. Many visualisation environments allow multiple displays to be rendered together as a
scene and support coordination of activities across these different displays, essentially providing
different views or perspectives onto the underlying data. For example, in GeoViz, it is common
to support a map display that is linked to more traditional statistical displays such as a scatterplot
and parallel coordinate plot and to provide interactivity between these displays so that user actions
in one display are mirrored onto the others (so-called linking and brushing or coordinated visual
displays: North and Schneiderman, 1999). In Figure 5.2, these connections between displays are
shown by leader lines as well as by highlighting the region currently selected in the same manner
in the linked displays.
The visualisation environment typically allows a user to assign data to some or all of the visual
variables that a symbol supports, to determine its appearance. A simple example from cartography
involves using the size of a population to determine the area of a circle used to represent a city. More
complex examples are given later. In traditional cartography and in GeoViz based around maps,
the underlying geography determines position and shape* for the geospatial data, leaving visual
variables such as colour, transparency and hatching to encode any additional attributes (such as
land cover or soil type). By contrast, statistical graphs and charts often allow any arbitrary variable
to be encoded using position, such as in a scatterplot where the x- and y-axes are not restricted to
spatial coordinates (if they are, then the scatterplot essentially becomes an unprojected map). Any
visual variables that a user can choose to assign data to are known as free variables; the ones that
are reserved for some other system-defined role are known as bound variables. From GIS packages
to SciViz systems, we see a variety of charting and graphing tools that offer different arrangements
of free variables that can be used to encode data. For example, some systems might support symbols
that can move (be animated), or geometry that morphs, or the ability to change the viewpoint of the
observer to the scene, while others stick to a more rigid map-based paradigm where x and y must be
used for geographical position.† Some excellent examples of the range of possibilities for map-based
GeoViz are provided by Demaj and Field (2013).
A brief summary of some of the key terms introduced earlier is provided in Table 5.1. The termi-
nology used in visualisation can get rather confusing, not least because different communities use
different terms to mean the same thing.

5.2.3 Genesis of Geovisualisation Systems


Visualisation is an evolving field of study, and it has its beginnings in several seemingly discon-
nected research communities. Perhaps the earliest focus on visualisation was seen in the engi-
neering and science communities during the 1970s and 1980s where rendering systems came to
the fore to help researchers understand complex engineering and scientific structures, such as
buildings, organic molecules and the ozone hole (Treinish, 1993). When visualisation started to
become more popular in the 1980s–1990s, several large, commercial visualisation systems arose,
such as ENVI/IDL, NAG IRIS Explorer and IBM Data Explorer. These provided comprehensive
development environments that greatly eased the task of creating a visualisation from scratch,
often by the use of visual programming techniques based on the flow of data. These systems were

* Cartograms literally stretch this point by allowing some other variable such as population to warp the shape and position
of geographical regions.
† Of course, most GIS software allows the map geometry to be morphed by the map projection and registration process,

but not by values that originate in the attribute data, such as the amount of rainfall received. The geometry variables are
bound for all practical visualisation purposes.
104 GeoComputation

TABLE 5.1
Brief Summary of Key Visualisation Terms Used throughout This Chapter
Term Meaning in This Text
Data attribute (data, Data (numerical or textual) from a database or GIS. A data attribute is a unique,
variable) single-valued field in a database, such as population density or soil type.
Visual variable (visual Visual data, encoded in some property of a symbol or other visual device; its value is usually
attribute, retinal variable) derived from some kind of transformation (see visual encoding) applied to real data.
Display (view, plot, graph, A specific arrangement of symbols and graphing metaphors to create a visualisation tool, for
window) example, a map, scatterplot or 3D geological model.
Scene (visualisation) Any number of displays, coordinated together in a single session or experiment.
Pop-out A coherent, discernible visual signal or pattern in a display that gets noticed by the user.
Visual encoding The transformation of numerical and textual values in data to a visual form, via some kind of
transformation function, such as a colour ramp.
Symbol (glyph, geometric Some geometric device, such as a circle or arrow, capable of supporting several visual
mark) variables (e.g. using colour, size and transparency).

primarily designed for scientific and engineering uses and could render objects in 3D, from any
viewpoint, and using sophisticated models of surface lighting, material reflectance and ray trac-
ing (Palamidese, 1993), to give lifelike realism to rendered objects – whether they were car parts,
buildings or faces. This approach became known as SciViz and still has a strong presence in both
research and practice. Figure 5.3 shows an example of a scene under construction in a SciViz
system, with controls for scene lighting and surface reflectance properties positioned alongside a
variety of other controls.
On a somewhat parallel evolutionary path, InfoViz first emerged as a supplementary aid to statis-
tical analysis (e.g. Cleveland and McGill, 1988) and mostly in ad hoc systems and tools developed
by researchers. The focus has moved over time from developing new charting tools (such as parallel
coordinate plots: Inselberg, 1997), to rich coordination strategies over multiple displays (Weaver,
2004), to tools supporting node-edge style graphs, to geographical visualisation and finally moving
the visualisation tools to the web (working directly from a web browser). The InfoViz community
has seen very rapid growth in the last few years and exerts the strongest influence currently on
GeoViz. A truly formidable range of tools and systems are now available (see http://www.infovis-
wiki.net/index.php?title=Toolkit_Links for a comprehensive list), some of which can support the
visualisation of geographical information. The InfoViz community tends towards an open-source
ethos, so can be an excellent source of tools and related information.
Finally, and more recently, there has been a trend towards specialised software systems to sup-
port the production of animated content. These systems became popular in the late 1990s with
the emergence of Flash as a simple desktop tool with which to create animations by scripting the
behaviour of symbols and backdrops. These too can have a role in GeoViz (e.g. Bhowmick et al.,
2008). More complex versions of these systems, such as Maya and Blender,* are used extensively
in the design and movie industries to render complex objects and environments with such lifelike
detail that they can pass for real.
To summarise the previous condition, SciViz systems usually offer the most control over visual
appearance and can define arbitrarily complex geometry and provide fly-throughs and advanced
lighting methods to create visual realism (such as scene illumination). InfoViz systems offer
the most comprehensive sets of graphing methods, often with powerful, pre-built coordination

* A useful list of 3D animation software systems is available on Wikipedia at http://en.wikipedia.org/wiki/


List_of_3D_animation_software.
Geovisualisation as an Analytical Toolbox for Discovery 105

FIGURE 5.3  A geological scene under construction in the NAG IRIS Explorer SciViz system. Magnetic
anomaly data have been draped over the elevation model in the centre of the display and small point symbols
used to indicate geochemical samples. Around the edges are various interactive controls, including for light-
ing the scene (middle left) which induces shadows on the DEM, and a material properties editor (top right)
can change the reflectivity of the elevation surface to accentuate or dampen the effect of the lighting model.

mechanisms. Some of these systems and graphs can scale to massive datasets involving thousands
or even millions of records. Animation software offers perhaps the easiest means to explore data
that contain moving objects or in animating temporal sequences. These systems often do not
scale well to large volumes of data but may offer other advantages in terms of presentation and
dynamics.

5.2.4 Geovisualisation Systems
GeoViz became established as a field in its own right during the 1990s with the creation of spe-
cial interest groups and community-wide research agendas (e.g. MacEachren and Kraak, 1997).
Buttenfield and Mackaness (1991) described the early emergence of GeoViz in terms of several
needs including to search through huge volumes of data for relevant information and for explo-
ration; so from its beginnings, GeoViz has had a strong focus on discovery. A comprehensive,
long-term timeline of the history of cartographic and geovisual progress is provided by Friendly
(2009). A good cross section of relevant research themes is provided by Dykes et al. (2005). GeoViz
continues to refine its research agenda (e.g. Gahegan et al., 2001; MacEachren and Kraak, 2001;
Kraak and MacEachren, 2005; Andrienko et al., 2007), and a special GeoViz commission has
been established under the auspices of the International Cartographic Association (ICA) (http://
geoanalytics.net/ica/).
Several geo-specific exploratory visualisation tools have been developed to date, including
GeoVISTA Studio (Gahegan et al., 2002), CommonGIS (Andrienko et al., 2003), STARS (Rey and
106 GeoComputation

FIGURE 5.4  A screenshot of GeoVISTA Studio in use, the left panel depicts (and saves) the workflow used
to create the visualisation – an example of visual programming. The right panel shows the resulting map, with
the colour choices supplied by ColorBrewer.

Janikas, 2006) and GeoViz Toolkit (Hardisty and Robinson, 2011). Slocum et al. (2008) provide a
useful overview of a variety of several research-based tools and rank their ease of use and utility.
Some excellent examples of the range of possibilities for map-based GeoViz are provided by Demaj
and Field (2013). Figure 5.4 shows an example session with the GeoVISTA Studio visualisation
system, where the workflow used to create the scene is also visualised (on the left).
The website at http://www.infovis-wiki.net/index.php?title=Toolkit_Links contains links to
many actively developed visualisation systems, some of which contain specific displays for GeoViz.
A very useful comparison of systems based on JavaScript (for use in a web browser) is available at
http://kraskniga.blogspot.co.at/2012/06/comparison-of-javascript-data.html.

5.3  DECOMPOSING THE VARIOUS ASPECTS OF A VISUALISATION


5.3.1  Visual Variables
As noted previously, visualisation systems provide a degree of control over the visual variables that
together define the appearance of the symbol sets and surfaces to be rendered. For example, the fol-
lowing visual variables may be separately configurable for a given symbol:

• Position: Usually in two or three dimensions.


• Colour: Often as three separate variables representing hue, saturation and intensity (or red,
green and blue); more sophisticated systems may offer perceptually graduated colour tools.
• Size: Usually as a scaling up or down of a symbol.

Most visualisation environments use a transformation function to assign quantities to each visual
variable, from values derived from a data attribute, that is, to visually encode the data. It is also
typical in many GeoViz systems to choose a small number of classes by which to group the data val-
ues (often via a binning classifier of some kind), so that a user can easily differentiate between the
resulting small number of different colours or sizes that are then used in the display. That is to say,
it is often helpful to keep a clearly perceptible visual difference between the settings used for the
visual variables (e.g. Brewer, 2003). Slocum et al. (2008: Chapter 13) provide a much fuller account
of the subtleties of visual classification.
Geovisualisation as an Analytical Toolbox for Discovery 107

Depending on the sophistication of the system being used, further control over appearance may
be possible via additional visual variables such as the following:

• Transparency: As a single value, usually referred to as alpha (α), that effectively allows the
user to see through the symbols and overlays present (Roth et al., 2010)
• Material properties: To describe the light reflectance and absorption characteristics of the
objects in a scene
• Animation scripts: To govern when a symbol appears and how its visual variables may
change over time

In many visualisation systems, it is now possible to extend the visual library by adding in new sym-
bols and other geometries that may suit a particular purpose or audience. In addition, many SciViz
environments provide further control over the entire scene, including the position from which the
scene is observed (viewpoint) and the location and characteristics of light sources to control how
the scene is illuminated. These scene properties can be used as a basis for interaction. For example,
a fly-through or walk-through can be simulated by incrementally changing the viewpoint. Many
3D solid-earth visualisation environments (block models) also support the slicing and dissection of
solid structures, such as geological formations, or in climate circulation models to reveal the interior
structure of solid objects that might otherwise be hidden. Scene lighting can be used to highlight or
focus attention on interesting trends in the data.
Compared to SciViz environments, the degree of control over visual appearance available in
many GIS, web mapping and InfoViz environments is rather limited, since the latter are often
restricted to a small number of pre-defined symbols, with few visual variables available to the
user. Instead of concentrating on the quality and realism of rendered objects, these systems focus
more on supporting abstract graph displays that translate unfamiliar information into a more
common and uniform visual format, such as a map or a scatterplot. In doing so, the complexity
of each individually rendered symbol is greatly reduced, in exchange for the clarity of a well-
designed and more consistent layout. Choosing between these two approaches can be compli-
cated; SciViz systems provide much more visual flexibility and so offer the possibility of creating
a single scene that encodes many data attributes so that subtle relationships may become appar-
ent. But using this flexibility to advantage is a challenge – it is easy to present too much visual
information to a user, and the more complex the display, the harder it becomes to read. On the
other hand, presenting a large number of variables in scatterplots and maps involves dividing
up data attributes among several displays, which may not help in recognising subtle multivari-
ate associations (Gahegan, 1998; Griffin and Robinson, 2010). The circumstances in which one
approach might be better than the other are not well understood at this time and would make an
excellent research topic.

5.3.2  Visual Displays


Some of the visualisation displays commonly used in GeoViz are choropleth mapping (including
bivariate mapping), scatterplots, cartograms, parallel coordinate plots and star maps; coordinating
multiple displays together is also a common feature. An example session in GeoViz Toolkit show-
ing some of these tools in coordinated use appears in Figure 5.5. Ward et al. (2010) provide a thor-
ough description of many of the more widely used visualisation displays; Slocum et al. (2008) and
Gahegan (2008) provide summaries of displays commonly used in GeoViz.

5.3.2.1  More Complex Visual Metaphors


Since GeoViz currently most closely follows InfoViz, the symbols and displays used in GeoViz
tend to be simple and abstract and employ consistent graphing metaphors and strong perceptual
108 GeoComputation

FIGURE 5.5  A set of coordinated displays inside of GeoViz Toolkit. The matrix at top left shows scatterplots
and bivariate maps contrasting the pairwise comparison of six ethnicities for the greater Auckland region of
New Zealand (and also a histogram for each variable’s distribution). These same six variables also appear in
the parallel coordinate plot at bottom left. A single selected suburb is highlighted in all of the displays, since
any selection event is coordinated between them.

principles. But more complex motifs such as Chernoff* faces (Chernoff, 1973) and landscape visu-
alisations (Rheingans and Landreth, 1995) are also possible and are used sometimes. The human
visual system appears to be specifically tuned for interpreting faces and landscapes, we learn early
in our personal development to interpret facial expressions such as anger and boredom, and we also
learn from experience how to read the topography of our environment. So perhaps these are useful
metaphors by which to convey other kinds of data? Dorling (1994) shows some visually compelling
examples of Chernoff faces used in GeoViz to highlight trends in political and social conditions in
the form of a cartogram. Some excellent examples of the power of the landscape metaphor used in
InfoViz are provided by Dürsteler (2013).

5.3.2.2  Divide and Conquer versus Compositional Approaches


When dealing with highly multivariate data, we require to scale beyond searching for patterns
across a handful of data attributes that might be clearly visualised in a single graph, such as a
scatterplot, to tens or even hundreds of attributes. Two approaches are feasible: small multiples
and compositional – both described here. Small multiples decompose the problem into a num-
ber of independent, but usually linked displays, such as a matrix of scatterplots (MacEachren
et al., 2003). One clear advantage of this approach is that no prior assumptions need be made
about which variables to graph – all are graphed and the search begins from the premise that
pairwise correlation across all data attributes (e.g. in scatterplots and maps) is a useful first

* A Chernoff face is created by combining several simple glyphs (e.g. circles for eyes, a triangle for a nose) into a compound
cartoon-like face. The glyphs are used to visually encode several data attributes, such that a single face can encode per-
haps 10 or more variables.
Geovisualisation as an Analytical Toolbox for Discovery 109

insight to gain.* Of course, various other filters – both statistical and geographical – may be used
so that only some attributes are graphed or certain ranges of values are plotted (Weaver, 2010).
Small multiples are useful when several possible explanations are being pursued, for example, a
systematic search of disease covariates to find those that seem to have the strongest geographical
clustering. In Figure 5.5, a matrix of six variables displayed as scatterplots, bivariate maps and
histograms (on the diagonal of the matrix) is shown in the upper left. This compound display
simultaneously supports pairwise exploration for correlation and spatial association across a sig-
nificant amount of data.
Small multiples scale up well to around 10 or so attributes on today’s computer screens, after
which further reduction is necessary to see comparisons across all data attributes concurrently. To
achieve this reduction, we need to lose some detail. One approach is to simplify the matrix to only
simple values of correlation or conditional entropy, using hue or brightness to show the strength of
the result. This approach produces large numbers of tiles, all of which look basically similar, so
it can be daunting to use. But it does highlight sub-spaces in the data where further investigation
might be warranted (Figure 5.6).
Some geographical processes and objects can be difficult to identify because they are a result of
subtle relationships over time, space and many dimensions of attributes. That being the case, they
may not be easily discovered when these correlations are distributed between different bivariate dis-
plays. To be noticed, they may require the evidence to be combined from several data attributes con-
currently. So rather than visualise pairwise data values and their patterns, we may instead construct
a scene that combines several different data attributes directly, by creating more complex glyphs
and layers that provide more empty slots for visual variables that we can assign data to. This is eas-
ily achieved by utilising the greater visual control that fully rendered systems provide (see earlier

FIGURE 5.6  A display showing the pairwise correlation (upper right diagonal) and entropy (lower right
diagonal) across a dataset containing 36-variable demographic and health-related data attributes. Each tile
in the display represents the entropy or correlation between a pair of data attributes. Although not visible
from the above figure, red values shown within the display indicate more similarity between the attributes.
Clusters of colours show regions in this combined dataset that might warrant more detailed investigation,
perhaps using some of the display types shown earlier in Figure 5.5.

* From the discussion of the science discovery process presented later we could perhaps claim that the hypothesis space for
discovery is evenly sampled, without initial bias in this starting configuration.
110 GeoComputation

description of SciViz systems). The scenes themselves are often more subjective and more complex
to engineer, but they offer the tantalising possibility of combining many variables together into an
integrated whole. Such an approach is perhaps more in keeping with integrated theories of percep-
tion, as described by Treisman (1986b). Senay and Ignatius (1991, 1994) describe some different
mechanisms by which data may be combined within a scene while maintaining overall effective-
ness of the complete visualisation. Compositional approaches to visualisation recognise that some
of the symbols and surfaces used are capable of encoding many visual variables simultaneously,
for example, the Chernoff faces and landscape visualisations described earlier. Spare capacity can
be used to encode further data to the unassigned visual variables. The resulting scenes are usually
more complex (richer) and can appear rather confusing at first as the observer becomes oriented to
the visual encodings being used.
All visual paradigms have cognitive limitations, caused by the compromises used to display a
complex multivariate dataset in a limited space and in a manner that encourages discovery. If we
separate data into different layers, to avoid over-cluttering in any one layer, then we also may sepa-
rate out the components of interesting patterns – making them more difficult to observe. When addi-
tional layers or displays of data are required, then the user’s focus of attention must shift between
these layers or displays in order to assess their interrelationships (to see pattern or structure). This
attention shifting is undesirable as it leads to a weakening of the overall stimulus at any given point
in the scene, since it is now divided among n layers.

5.3.3 Animation and the Use of Interactors


Animation techniques provide a powerful and visually effective means of studying the relationships
between objects or patterns of interest and their defining data (Keller and Keller, 1993). Movement
has been shown to have a high visual impact, and its detection in humans uses significantly differ-
ent neural pathways to the perception of retinal variables (see Section 5.4.1). Animation is therefore
highly complementary to techniques based around shape, colour and position.
The link between animated cartography and visualisation is described by Dorling (1992) and
Andrienko et al. (2009), and a comprehensive account of the different ways that temporal varia-
tion can encode geographical data is provided by MacEachren (1994). Another possibility, geared
towards visual data exploration, is to use animation to explore possible connections between data
artefacts and investigate relationships. Examples include the movement of surfaces, one through
another, the projection of specific artefacts between graphs or surfaces and the animation of sta-
tistical operations applied progressively to the data (see Section 5.6). To be useful for exploratory
analysis, these techniques must facilitate perception of the structural and positional relationships
between specific regions in the data.

5.4  PERCEPTUAL AND COGNITIVE ISSUES


Useful and effective visualisations seldom occur by chance. Just as with statistical and machine
learning approaches to analysis, we must understand the guiding principles, the methodology
and how these fit into and shape the process of science (in this case, we concentrate on discov-
ery as the major science activity). So, in order to use GeoViz effectively in research, we need to
understand

• The effectiveness of different kinds of visual variables and their appropriateness for dif-
ferent tasks
• The various steps in the process or workflow to produce a visualisation
• The role(s) visualisation plays in the science/discovery process

Each of these themes is covered in the following subsection.


Geovisualisation as an Analytical Toolbox for Discovery 111

5.4.1  Visualisation Effectiveness: The Study of Cognition and Psychometrics


To understand how and why visualisation can be effective and to improve this effectiveness, it is
necessary to understand something of the process of visual perception and cognition in humans.
Much research and experimentation has led to the establishment of some useful models of visual
perception, including the modal model of the mind and a deeper understanding of the effective-
ness or otherwise of different visual stimuli for conveying information. The Wikipedia article
on Visual Search is a good place to begin a journey to understand this process in depth (http://
en.wikipedia.org/wiki/Visual_search). For example, it is known that perception of certain visual
variables occurs earlier in the task of overall cognition than others. The early stage of visual
processing is often termed pre-attentive or early vision and can be considered as a low-level
cognitive process in humans. Experiments with the separability of different visual variables
when combined in a display show that shape and colour and also lightness and size are to a large
extent separable and pre-attentive and occur in parallel; hence, they may be good candidates
for using together to visually encode multiple data attributes into the same scene. The foun-
dational work by Treisman (1986a,b), Treisman and Gormican (1988) and Pickett et al. (1995)
provides a more detailed explanation. Additional research has identified major neural pathways
through which visual information is received, including colour, form (or structure) and move-
ment (Livingstone and Hubel, 1988). To a large extent, perception of these three different types
of information appears to be performed orthogonally, thus allowing different data attributes to
be separately perceived within the overall visual stimulus. The hypothesis is that, on viewing
the display, an observer may be able to maintain this separation, thus perceiving many different
data values simultaneously. By exploiting such pathways and also some heuristics that determine
how accurately and at what rate human subjects can assimilate these various types of visual
variables, it becomes possible to design visualisation strategies that are effective, making good
use of the cognitive abilities of the observer. Useful accounts of a wide range of cognitive and
usability issues confronting GeoViz are provided by MacEachren (1995), Slocum et al. (2001)
and Fabrikant and Skupin (2005). The challenge of creating useful GeoVizs is described by
Andrienko et al. (2006).
The fact that some tasks in vision require more effort and take more time has led to a good
deal of research into the ranking of perceptual tasks, according to their difficulty. Early work in
this field by Bertin (1967, 1981) has had a profound influence on researchers in cartography and
GeoViz. Bertin proposed a categorisation of visual variables (usually referred to as retinal variables
in his work) according to whether they could be observed separately or integrated together when
combined into a visual stimulus such as a symbol. Rather than being a problem, this presents an
opportunity: data attributes we wish to observe independently can be assigned to separable visual
variables (such as position in x and y), and data attributes we wish to see within the context of other
variables can be assigned to integrative visual variables (such as hue, saturation and intensity which
we see together as colour).
Some symbols used in GeoViz attempt to support a degree of separability and integration at the
same time; for example, Chernoff faces can show many independent variables that can be observed
as (say) the wideness of the eyes or the roundness of the face, but we can sum these traits into a
single facial expression or even an emotion. Star plots, as shown in Figure 5.7, combine many data
values into a single overall geometric outline, though we can still differentiate the relative magni-
tude of any contributing variable.

5.5  CREATING USEFUL VISUALISATIONS


Visualisation, being a relatively new discipline, has a number of outstanding issues that have as yet
been only partially addressed. Discussion here is restricted to issues that relate to the use of explor-
atory visualisation as it applies to geography. The development of related hardware and software
112 GeoComputation

FIGURE 5.7  A star plot of the cancer burden across the Māori population of New Zealand for a group of five
cancers – thus creating a five-sided geometric figure. Each symbol represents a different geographical region.
The cancer rates show a good deal of variation from place to place, though the data contain some missing
values that cause the affected symbols to become linear in places.

to support visualisation activities is not covered here since these needs are being independently
pursued by many different research communities.
Building on Bertin’s work, Mackinlay (1986) synthesised a rank ordering of the difficulty of
perception tasks. As Table 5.2 shows, he found that the orderings actually differ according to the
statistical scale of the data under consideration (nominal, ordinal or quantitative). It is interesting
to note that position is ranked as the most easily separable visual variable for all statistical scales,
but after that, the most separable variable to use depends quite heavily on the statistical scale of the
data to be visually encoded. This tells us that to make an effective visualisation, the choice of visual
variable should depend on the nature of the task (integration or separation of values) and also on the
statistical scale of the data.
The aforementioned guidelines can be adopted as a starting point from which to construct a
visualisation, a topic that is taken up in the next section.

5.5.1 Designing a Visualisation
In order to ensure that a visualisation achieves its goal, the data should be encoded to the available
visual variables bearing in mind the effort required to correctly perceive and interpret them. For
example, humans are generally poor performers at quantifying differences in colour hue (and about
Geovisualisation as an Analytical Toolbox for Discovery 113

TABLE 5.2
Ranking of Elementary Perceptual Tasks according
to Statistical Scale after Mackinlay (1986)
Quantitative Ordinal Nominal
Position Position Position
Length Grey saturation Colour hue
Angle Colour saturation Texture
Slope Colour hue Connection
Area Texture Containment
Volume Connection Grey saturation
Grey saturation Containment Colour saturation
Colour saturation Length Shape
Colour hue Angle Length
Texture Slope Angle
Connection Area Slope
Containment Volume Area
Shape Shape Volume

Note: Items in bold are not applicable.

5% of males are also red–green colour-blind), so using hue to highlight subtle differences between
two similar demographic datasets might be less effective than using positional offset – say by ver-
tical displacement – or movement (animation). To complicate things further, human perception
of visual variables is non-linear but may follow a known activation function (e.g. Robertson and
O’Callaghan, 1988). For example, humans are particularly poor judges of the comparative magni-
tudes of both areas and volumes, though we seem to underestimate them in a known and consistent
manner!
The total bandwidth available across all visual variables sets a theoretical upper bound on the
amount of information that can be conveyed concurrently. However, even within this limit, the use
of a greater number of visual variables to encode more data attributes does not necessarily increase
the effectiveness of a scene, since many combinations of visual variables are known to interfere
with each other (e.g. colour intensity and transparency tend to cancel each other out so using them
together will likely add confusion, not information). The use of such knowledge in the construction
of a scene is described in the following.

5.5.2 Example of Repeated Visual Encoding for Exploration: Choropleth Mapping


One of the most widely used techniques in GeoViz is an exploratory form of choropleth mapping,
whereby a succession of different classification schemes are essentially applied to the data, to see
if useful structure appears to have been imposed, or with a view to uncovering some pattern that
was hitherto unknown. For example, an obvious spatial clustering of geographical regions, to which
the same colour has been applied by the classifier, may become apparent. One might regard each
such test as being a kind of hypothesis, which is quickly posited and then withdrawn if it proves
unfruitful (see Section 5.6). Visual classification schemes are imposed on data by using grouping
or binning methods (which most GeoViz systems provide), by amplifying some differences in the
data, while holding others constant. For example, we may choose to organise geographical regions
into five classes based on unemployment levels. These classes are then reflected into the display in
some way that visually differentiates them, by assigning to them different visual variables; colours
would be used in choropleth mapping, but other visual variables such as size could be used instead.
114 GeoComputation

It makes sense of course to choose an encoding strategy that retains some of the essential character
of the underlying data, such as its ordering from smallest to largest. Brewer and Harrower provide
an excellent tool (http://colorbrewer2.org/), to preserve some of this essential character during the
assignment process when choosing colours for a choropleth map.
When the recoloured regions are displayed, these changed visual variables in turn produce
new patterns and trends in the display, which the user’s cognitive system then tries to make sense
of. Assuming some pattern of interest emerges in the map, we might say that the data attributes
selected, when passed through the classifier, produce a stimulus that shows a geographical pattern.
Or in other words, perhaps that the data attribute has an interesting spatial distribution that could
be further investigated? Before assuming this, however, the user might also check that the pattern
is not a spurious artefact of the classifier used. No matter how careful we may be, it is a statistical
certainty that data exploration by fitting models always produces false positives.
The classifiers used to bin data are typically simple 1D methods that utilise the frequency distri-
bution of the data. They might divide up the range of data attributes so that the same number of cases
is assigned to each category, or so that the range of values in each category is consistent, or perhaps
so that the largest apparent gaps in the distribution are used to define the classes. A full account of
choropleth mapping and associated classification tools is provided by Slocum et al. (2008).
As an additional twist on this theme, many GeoViz systems support bivariate choropleth map-
ping, where two data attributes are used to determine the colour used for a region or symbol on a
map, by using two colour ramps comprised of opposite colours (such as blue and yellow or purple
and green) to each encode one data attribute, but then these two colours are combined together into
a single colour used on the map. The map legend then becomes a matrix, as shown at the upper right
corner of the map displays in Figures 5.2 and 5.5.

5.5.3 Generic Exploratory Visualisation Workflow


If we abstract the preceding process beyond the choropleth example and express it as a workflow,
then we get the following:

1.
Select data attribute(s) for visualisation.
2.
Project just the fields of interest, normalise or scale the range of the data if needed and
tidy up or avoid any errors or nulls. Just as with regular statistical analysis, missing values
are likely to cause problems, since they can dramatically change the appearance of the
display.
3.
Visually encode the chosen data using some combination of visual variables and graphi-
cal devices that carry the visual variable (such as a symbol or a layer). A first step in this
process is often to cluster or classify the data, followed by visually encoding the outcome,
such as in the earlier choropleth example. Sometimes it may be helpful to include the same
data attribute in several graphs or doubly encode it for emphasis by using more than one
visual variable. A common example of the latter is to use both size and colour of a symbol
to encode a single data attribute (such as disease incidence) on a map.
4.
Fine-tune this visual encoding function so that it preserves useful or interesting emergent
properties of the data.
5.
Interact with the display to explore the resulting visualisation.
6.
Validate any emergent patterns by mentally translating each pattern back into the data
domain to see if it makes sense and if it tells you something new. Also test the robustness of
any emergent patterns by subtly changing the visual encoding strategy used in #3, to check
that the pattern is not an artefact of visual encoding. The human visual system is designed
to find patterns and structure in a given visual stimulus, even when there is none present.
So caution is needed to reflect carefully on what you think you may see.
7.
Repeat as necessary.
Geovisualisation as an Analytical Toolbox for Discovery 115

The process can be a bit daunting at first to those unfamiliar with the tools and theory. To make
good choices, the user must (1) have an idea as to what kinds of patterns they hope to explore and
which data attributes to use in order to see them; (2) understand the types of displays available to
them, the visual variables that they each provide and the kinds of discoveries and comparisons that
they can facilitate; and (3) choose sensible visual encoding and clustering strategies. As an example,
in a parallel coordinate plot, one can most readily compare values between neighbouring axes – it
is more difficult to compare values that are not immediate neighbours, but in a scatterplot matrix,
every variable can be compared with every other variable. Parallel coordinate plots work well for
comparing data attributes with a defined order, such as in a series or temporal sequence. In fact, the
stimulus produced is highly dependent on the ordering of the axes. Scatterplot matrices are a better
alternative if the aim is to search for pairwise correlations between attributes.
Turk (1994) provides a very useful taxonomy of approaches for the visual encoding of data,
reviewing a number of different ways by which the assignment of data to visual attributes can be
achieved. Some researchers have endeavoured to embed the kind of guidelines described previously
into intelligent visualisation systems that can make suitable choices for visual assignment based
on metrics and metadata (e.g. Beshers and Feiner, 1993; Gahegan and O’Brien, 1997; Senay and
Ignatius, 1998; Liu et al., 2005). A definitive set of rules for visualisation design that work in most
circumstances is still some way off, but in the meantime, the aforementioned guidelines can be
adopted as a starting point from which to construct a visualisation.

5.6  VISUALISATION AND THE PROCESS OF DISCOVERY SCIENCE


Recall from the previous section that the discovery process via GeoViz is one of repeatedly
posing hypotheses about the possible emergence of a pattern or structure, by changing the way
data are visualised and by exploring connections between different data patterns (possibly dis-
played in different graphs). Effectively, we discover by adding in some structure to the data and
then assessing if this structure helps to amplify themes or patterns of potential interest in the
scene.* If we begin with some kind of classification task to add structure, as described earlier
in the choropleth mapping example, then more formally, we recognise this as an application of
inductive reasoning. In inductive reasoning, we generalise the properties of individuals to create
categories that are useful devices for grouping the data and removing the confusion of dealing
with many data attributes with different values. We use the resulting classes as the basis for creat-
ing a new visual display in which the user searches for patterns of interest and then attempts to
translate these back into the domain of interest, that is, reasoning from a pattern observed (e.g. a
cluster of regions with a high unemployment rate) to an explanation that might support the pat-
tern (their proximity to factories that have shut down perhaps?). This latter form of inference is
called abduction – reasoning from an observation to an explanation. So, in GeoViz, the typical
inferential approach taken is to encourage abduction by first engaging in induction. Gahegan
(2005, 2009) provides more details of the reasoning processes and associated workflows used in
visualisation for discovery.
Where to begin visualising a new dataset and how to navigate through the seemingly endless set
of possibilities are major challenges. If we simply graph one variable after another – in the hope of
finding something of interest – we may well be disappointed or become bored, in which case we
may not notice a potentially interesting artefact. We are also likely to discover relationships that are
actually well known, even by ourselves! As an exploration activity, GeoViz must contend with a lack
of clarity around the discovery process in general: discovery in computational systems is still for the

* ‘Sir Francis Bacon, in book II of his Novum Organum (The New Organon; 1620) states that “Truth will sooner come
out from error than from confusion.” This famous epithet describes the idea that we understand the world by imposing
conceptual structure upon the confusion of data we receive. Our mistakes in doing so eventually lead us to a deeper
understanding.’ (Gahegan, 2009).
116 GeoComputation

most part poorly understood and poorly supported; this is equally true for computational, statistical
and visual approaches. The techniques used, the results produced and the validation and interpreta-
tion of these results are very important stages in the science process (e.g. Leedy and Ormrod, 2010),
but not necessarily supported well in the systems we currently use. On a more positive note, there
are already signs that visualisation is starting to address some of these challenges in an effort to
move towards defensible and repeatable science (e.g. Thomas and Cook, 2005, 2006). The following
list represents some of the challenges that GeoViz faces as it moves from being an ad hoc process
with limited support to a well-defined process with tools to back up each stage. The list is written to
emphasise the parallels between visual and analytical approaches to GC:

1.
Have the right data. Restricting the data attributes imported can help a great deal in limit-
ing the amount of visual comparison and search that is required. But at a deeper level, there
is a huge and often unacknowledged role here for the expert geographer, to ensure that the
datasets used do indeed contain the potential to support useful discoveries. In situations
where explanations are being sought for some pattern, this equates to having a good work-
ing knowledge of likely causal factors. It is obvious, but you can only discover relationships
between data attributes that you have collected and included in the analysis!
2.
Build a useful hypothesis space (search space) in which the likely useful findings are
there to be discovered. A hypothesis space is a conceptual idea, to describe the range of
possibilities that are open to the researcher using a specific set of methods. It essentially
puts boundaries around all the possible ways a search can be constructed to make a dis-
covery. The term is used extensively in the machine learning community when describ-
ing the bounds of a search for a local minimum when configuring some kind of learning
algorithm, but the same logic also applies here. Each different visualisation produced can
be considered a hypothesis in the loose sense that some combination of data, symbols,
visual variables and encoding strategy may lead to the recognition of some interesting
artefact in the data. The set of all these possible visualisations defines the total space of
discovery that could be explored. The hypothesis space is not simply a by-product of the
data chosen; it is also constrained by the choices the user makes when selecting what to
visualise and how.
3.
Adopt a structured approach to exploration that searches the hypothesis space in a
describable or predictable manner. The visual equivalent of a statistical Type II error
is to miss an interesting artefact in the data because the data were never graphed in a
way that would reveal it. A structured approach may be systematic or pragmatic, but it is
important to know which and thus how much trust to place in the result in terms of errors
of omission. Systematic techniques include projection pursuit and grand tour methods
(Asimov, 1985; Cook et al., 1995) that take a predictable path through the hypothesis
space by performing dimensional reduction and projection on the data in an iterative,
automated manner. Pragmatic approaches tend to follow an initial hypothesis or interest
that a researcher has and then refine it. That might be practical given the vastness of the
hypothesis space but can lead to large areas of this space being unexamined, and thus
potentially interesting or important discoveries might be missed. Most machine learning
approaches use stochastic search methods that employ useful metrics such as gradient
ascent (e.g. Noll, 1967) to help guide the direction and rate of change from one hypothesis
to the next. Though not without its own risks, it can be helpful to think of visual searches
in the same manner, as one of progressive refinement until there is insufficient improve-
ment in the results (c.f. information gain, Mitchell, 1997) to make further refinement
worthwhile.
4.
Avoid what is already known. The strongest correlations and associations in a dataset will
be known already in almost all cases. Yet without care to avoid them, these signals will
tend to dominate the visual display – they will produce the strongest clusters or trends.
Geovisualisation as an Analytical Toolbox for Discovery 117

Without some means of avoiding these strong distractors, it will be more difficult to make
genuinely new discoveries. Targeting the search to regions of the hypothesis space that
might prove most fruitful is a challenging and unresolved problem in any discovery sys-
tem, no matter what technologies it uses.
5.
Test that any finding is not simply an artefact of the mappings used between the data
and the visual variables. This is the visualisation equivalent of avoiding Type I statistical
errors. For example, visual classifiers must create somewhat arbitrary bins into which to
place the data. The methods used can themselves introduce a false positive into the spatial
distribution of some visual variable in the display that would not occur with a slightly dif-
ferent classifier or with a different number of classes used. Some measure of the stability
of a discovery gauged against these kinds of perturbations may help to avoid errors of
commission.
6.
Create some evidence of the visual discovery and translate that evidence into follow-up
analyses that can be carried out using more traditional toolsets, such as correlation analy-
sis or spatial statistical tests. It is important to remember that the visualisation software
does not evaluate relationships in the data, but instead aids the user in identifying such
relationships for themselves. It is also often difficult to reproduce findings in current sys-
tems or to record them in a convenient manner so that they can be shared. Screenshots
usually fail to show the settings used and hence may not convey a description of the
hypothesis that the visualisation represents (see #3 and #4 earlier). Yang et al. (2007)
and Groth (2007) provide some useful ideas for addressing these shortcomings based on
provenance tracking.
7.
Keep the user engaged and alert, since the user is an essential part of the workflow. If
there is not enough novelty in the various displays to maintain a good level of interest
and curiosity, then the whole enterprise will fail. Likewise, if the graphical devices used
are at odds with the visual tastes of the user, then they will not want to look. Perhaps the
overall effectiveness of data visualisation (Tufte, 1990) is sometimes overlooked in our
adherence to lower-level psychometric principles (Jones et al., 2010)? But it is difficult to
present information in a compelling way if you don’t yet know what you are looking for!
Samara (2007) provides a very interesting perspective on visual design rules and when to
break them.

5.7  CONCLUSIONS AND CHALLENGES IN GEOVISUALISATION


GeoViz has come a long way, even in the time since the first version of this book was produced in
2000. With a greater number of visualisation tools available, a better understanding of the roles they
play and the beginnings of a reconceptualisation of the discovery process that features visualisation
centrally (Gahegan, 2005; Thomas and Cook, 2005; Andrienko et al., 2011), GeoViz is in a strong
position, going forward.
As has been shown earlier, GeoViz in the context of discovery science has much in common
with other methods that attempt the same ends: the problem is essentially one of search and the
challenges are to search a potentially massive hypothesis space effectively and then to ensure that
any findings are validated, preserved and communicated effectively. Recognition of this degree of
structure and formality in the process of GeoViz is a necessary step on the way to becoming an
established and legitimate scientific method. As I hope I have shown earlier, this journey is not yet
complete, but it has begun in earnest.
Many of the outstanding research questions relate to visual effectiveness: specifically, how to
make the best use of the available functionality to engage more successfully with the user. This
is a familiar problem to cartographers, but the large increase in visualisation possibilities raises
some difficult and as-yet-unresolved problems around choice of display types and visual encod-
ing strategies. The development of a visualisation (specifically the building of a scene) is often
118 GeoComputation

a highly under-constrained problem: meaning that there are a vast number of visual assignment
and graphing possibilities, with too few firm rules or constraints to narrow down the solution
to one or a few good visualisations. Current psychometric guidelines only get us so far, as do
more holistic approaches to design. Comprehensive, long-term, evaluations of effectiveness are
urgently needed. Two useful examples are provided by Andrienko et al. (2006) and Lloyd and
Dykes (2011), but more are required; in fact, evaluation is far more necessary at this stage than
the development of new visualisation tools. At this point, too little is known about the relative
merits of the different graphing methods, even the popular ones, and their relative utility for
specific visual tasks. The envisioned target is to have enough verified knowledge of perception
and utility for a specific task to be able to support the different stages of the spatial analysis with
the most appropriate visualisation tools, configured together and loaded with data in a visually
effective way.
The following four problems seem particularly pressing in this regard:

1. It is difficult to define the psychometric principles that a good visualisation should fol-
low. In very simple scenarios, existing perceptual and cartographic knowledge can be
applied with relative ease. However, the richness of the geographic domain (includ-
ing the spatial and temporal dimensions) and the large number of visual variables that
might be required concurrently point to the need for this existing knowledge to expand
(e.g. Mackinlay, 1986; Rheingans and Landreth, 1995; Ware, 2000; McCandless, 2009;
MacEachren et al., 2012).
2. There is a related problem of using acquired perceptual and cartographic knowledge to
good effect (Andrienko et al., 2006), that is, a system that can actually apply these rules
and guidelines on behalf of the user in the building of a scene or can warn a user when their
course of action will likely cause perceptual problems. Experimental systems that do so
have been suggested by several researchers including Duclos and Grave (1993), Senay and
Ignatius (1994) and Gahegan and O’Brien (1997). The previously mentioned ColorBrewer
tool (http://colorbrewer2.org/) is a good example of a successful recommender system that
will adapt to a given set of task-specific parameters to help the researcher make perceptu-
ally grounded choices on their use of colour. We need to extend ideas like this over more
visual variables and more display types.
3. A second issue is the need to embed or otherwise connect GeoViz systems with more
traditional analysis and modelling tools in a more seamless manner (e.g. Takatsuka and
Gahegan, 2002; Johansson et al., 2004; Andrienko et al., 2011). Most tools to this point
are either stand-alone or not closely integrated with existing GIS or spatial analysis tool-
kits. Closer integration would encourage greater uptake. A service-oriented approach,
based on open standards, would seem to offer a good way forward (Hildebrandt and
Döllner, 2010).
4. The task of evaluating the effectiveness of a scene is problematic (Carpendale, 2008).
Ideally, some quantification of the utility of a visualisation should be computable, as feed-
back to the preceding first and second problems. Effectiveness evaluation is complicated
because the results are ultimately evaluated by humans, whose judgements are subjec-
tive and can vary between individuals and over time. In order to make this much-needed
progress as a community, we require an agreed means of discerning the good from the
bad. For example, how do we establish that one visualisation paradigm or graph type
works better than another for a given task (Kosara et al., 2003; Koua et al., 2007; Isenberg
et al., 2008)? Ideally, we would measure effectiveness as experienced by human operators,
requiring that we perform experiments, use control groups, questionnaires and so forth,
in the tradition of psychometric research. Even simple feedback on combinations of tasks,
graphs and visual encoding strategies that worked (or did not) would contain a wealth of
currently unrecognised information. For a user, providing a coarse evaluation could be as
Geovisualisation as an Analytical Toolbox for Discovery 119

simple as pressing a green or red button after using a visualisation. This final point speaks
to the need for a greater degree of coordination among researchers and a more systematic
approach to evaluation and for these to be established as community norms rather than
exceptions. Until the community itself rises to the challenge as a strong priority, this prob-
lem will not be solved.

5.8  FURTHER READINGS


For those interested in the perceptual aspects of visualisation, the work of Mackinlay or Treisman is
a good place to start. An excellent primer is the book Perceptual Issues in Visualisation (Grinstein
and Levkowitz, 1995), and MacEachren’s (1995) How Maps Work gives considerable depth to
the cognitive and semiotic aspects of visual perception. A more computational perspective can
be gleaned from Scientific Visualisation: Advanced Software Techniques (Palamidese, 1993).
There are by now many journal special issues and workshop proceedings that provide a useful
snapshot of the GeoViz research (http://geoanalytics.net/ica/ provides a useful repository and help-
ful links). Thematic Cartography and Geovisualisation by Slocum et al. (2008) provides excellent
and approachable coverage of many of the basics of GeoViz.

ACKNOWLEDGEMENTS
Most of the GeoViz examples shown here are derived from software created at the GeoVISTA
Center, Penn State University (http://www.geovista.psu.edu/); the author is eternally grateful to
many past and current colleagues there for their excellent work and enthusiasm for GeoViz tools
and methods.

REFERENCES
Andrienko, G., Andrienko, N., Dykes, J., Fabrikant, S. I., and Wachowicz, M. 2009. Geovisualization of
dynamics, movement and change: Key issues and developing approaches in visualization. International
Journal of Geographical Information Science 23(8): 1077–1093.
Andrienko, G., Andrienko, N., Fischer, R., VolkerMues, V., and Schuck, A. 2006. Reactions to geovisualiza-
tion: An experience from a European project. International Journal of Geographical Information Science
20(10): 1149–1171.
Andrienko, G., Andrienko, N., Jankowski, P., Keim, D., Kraak, M.-J., MacEachren, A. M., and Wrobel, S.
2007. Geovisual analytics for spatial decision support: Setting the research agenda. International Journal
of Geographical Information Science 21(8): 839–857.
Andrienko, G., Andrienko, N., and Voss, H. 2003. GIS for everyone: The CommonGIS project and beyond. In:
Maps and the Internet, ed. M. Peterson, pp. 131–146. Oxford, U.K.: Elsevier Science.
Andrienko, G., Dykes, J., Jiang, B., and Schiewe, J. 2011. GeoViz—Linking geovisualization with spatial
analysis and modelling. Cartographica 46(4): 209–210.
Anscombe, F. J. 1973. Graphs in statistical analysis. American Statistician 27: 17–21.
Asimov, D. 1985. The grand tour: A tool for viewing multidimensional data. SIAM Journal of Science and
Statistical Computing 6: 28–143.
Bertin, J. 1967. Semiology of Graphics: Diagrams, Networks, Maps. Madison, WI: University of Wisconsin
Press.
Bertin, J. 1981. Graphics and Graphic Information Processing. Berlin, Germany: Walter de Gruyter.
Beshers, C. and Feiner, S. 1993. AutoVisual: Rule-based design of interactive multivariate visualisations. IEEE
Computer Graphics and Applications 13(4): 41–49.
Bhowmick, T., Robinson, A. C., Gruver, A., MacEachren, A. M., and Lengerich, E. J. 2008. Distributed usability
evaluation of the Pennsylvania Cancer Atlas. International Journal of Health Geography 7(36): 1–20.
Brewer, C. 2003. A transition in improving maps: The ColorBrewer example. Cartography and Geographic
Information Science 30(2): 159–162.
Buttenfield, B. P. and Mackaness, W. A. 1991. Visualisation. In: Geographical Information Systems, eds.
D. J. Maguire, M. F. Goodchild, and D. W. Rhind, pp. 427–443. London, U.K.: Longman House.
120 GeoComputation

Carpendale, S. 2008. Evaluating information visualizations In: Information Visualization. Lecture Notes in
Computer Science 4950, eds. A. Kerren, J. T. Stasko, J.-D. Fekete, and C. North, pp. 19–45. Heidelberg,
Germany: Springer.
Chernoff, H. 1973. The use of faces to represent points in k-dimensional space graphically. Journal of the
American Statistical Association 68: 361–36.
Cleveland, W. S. and McGill, M. E. 1988. Dynamic Graphics for Statistics. Belmont, CA: Wadsworth &
Brookes/Cole.
Compieta, P., Di Martino, S., Bertolotto, M., Ferrucci, F., and Kechadi, T. 2007. Exploratory spatio-temporal
data mining and visualization. Journal of Visual Languages and Computing 18(3): 255–279.
Cook, D., Buja, A., Cabrera, J., and Hurley, C. 1995. Grand tour and projection pursuit. Computational and
Graphical Statistics 4(3): 155–172.
Demaj, D. D. and Field, K. 2013. Website of the Commission on Map Design, International Cartographical
Association (ICA). http://mapdesign.icaci.org/map-examples/ (accessed January 2013).
de Oliveira, M. and Levkowitz, H. 2003. From visual data exploration to visual data mining: A survey. IEEE
Transactions on Visualization and Computer Graphics 9(3): 378–394.
Dorling, D. 1992. Stretching space and splicing time: From cartographic animation to interactive visualisation.
Cartography and Geographic Information Systems 19(4): 215–227.
Dorling, D. 1994. Cartograms for human geography. In: Visualisation in Geographical Information Systems,
eds. H. M. Hearnshaw and D. J. Unwin, pp. 85–102. Chichester, U.K.: Wiley.
Duclos, A. M. and Grave, M. 1993. Reference models and formal specification for scientific visualisation. In:
Scientific Visualisation: Advanced Software Techniques, ed. P. Palamidese, pp. 3–14. New York: Ellis
Horwood.
Dürsteler, J. C. 2013. Inf@Vis! (The digital magazine of InfoViz.net). http://www.infovis.net/printMag.
php?lang=2&num=168 (accessed 2013).
Dykes, J., MacEachren, A. M., and Kraak, M.-J. 2005. Exploring Geovisualization. Amsterdam, the
Netherlands: Elsevier.
Fabrikant, S. I. and Skupin, A. 2005. Cognitively plausible information visualization. In: Exploring
Geovisualization, eds. J. A. Dykes, A. M. MacEachren, and M. J. Kraak, pp. 667–690. Amsterdam, the
Netherlands: Elsevier.
Fayyad, U., Grinstein, G., and Wierse, A. 2002. Information Visualization in Data Mining and Knowledge
Discovery. New York: Morgan-Kaufmann.
Friendly, M. 2009. Milestones in the history of thematic cartography, statistical graphics, and data visualiza-
tion. http://www.math.yorku.ca/SCS/Gallery/milestone/milestone.pdf (accessed 2009).
Gahegan, M. N. 1998. Scatterplots and scenes: Visualisation techniques for exploratory spatial analysis.
Computers, Environment and Urban Systems 21(1): 43–56.
Gahegan, M. N. 2003. Is inductive machine learning just another wild goose (or might it lay the golden egg?).
International Journal of Geographical Information Science 17: 69–92.
Gahegan, M. N. 2005. Beyond tools: Visual support for the entire process of GIScience. In: Exploring
Geovisualization, eds. J. Dykes, A. M. MacEachren, and J.-M. Kraak, pp. 83–89. Amsterdam, the
Netherlands: Elsevier.
Gahegan, M. N. 2008. Multivariate geovisualization (chapter 16). In: The Handbook of Geographic Information
Science, eds. J. P. Wilson and A. S. Fotheringham. Oxford, U.K.: Blackwell.
Gahegan, M. N. 2009. Visual exploration and explanation in Geography: Analysis with light. In: Knowledge
Discovery with Geographic Information, eds. H. Miller and J. Han, pp. 291–324. Boca-Raton, FL: CRC Press.
Gahegan, M. N. and O’Brien, D. L. 1997. A strategy and architecture for the visualisation of complex geograph-
ical datasets. International Journal of Pattern Recognition and Artificial Intelligence 11(2): 239–261.
Gahegan, M. N., Takatsuka, M., Wheeler, M., and Hardisty, F. 2002. GeoVISTA Studio: A geocomputational
workbench. Computers, Environment and Urban Systems 26: 267–292.
Gahegan, M. N., Wachowicz, M., Harrower, M., and Rhyne, T. 2001. The integration of geographic visu-
alization with knowledge discovery in databases and geocomputation. Cartography and Geographic
Information Science 28(1): 29–44.
Gould, P. 1970. Is statistix inferens the geographical name for a wild goose? Economic Geography 46: 439–448
(Supplement for: Proceedings. International Geographical Union. Commission on Quantitative Methods,
June 1970).
Griffin, A. L. and Robinson, A. C. 2010. Comparing color and leader line approaches for highlighting in geovi-
sualization, Geographic Information Science. In: Sixth International Conference, GIScience 2010, eds.
S. Fabrikant, T. Reichenbacher, M. van Kreveld, and C. Schliede. Berlin, Germany: Springer-Verlag.
http://www.giscience2010.org/pdfs/paper_137.pdf.
Geovisualisation as an Analytical Toolbox for Discovery 121

Grinstein, G. and Levkowitz, H. 1995. Perceptual Issues in Visualisation. Berlin, Germany: Springer-Verlag.
Groth, D. P. 2007. Tracking and organizing visual exploration activities across systems and tools. In: Proceedings
of the IEEE Conference Information Visualization, pp. 11–16. Zurich, Switzerland. Washington, DC:
IEEE Computer Society.
Guo, D., Peuquet, D., and Gahegan, M. N. 2003. ICEAGE: Interactive clustering and exploration of large and
high-dimensional geodata. GeoInformatica 7: 229–53.
Hardisty, F. and Robinson, A. C. 2011. The GeoViz Toolkit: Using component-oriented coordination methods
for geographic visualization and analysis. International Journal of Geographical Information Science
25(2): 191–210.
Haslett, J., Bradley, R., Craig, P., Unwin, A., and Wills, G. 1991. Dynamic graphics for exploring spatial data
with application to locating global and local anomalies. The American Statistician 45(3): 234–242.
Hermann, T. and Hunt, A. 2005. An introduction to interactive sonification. IEEE MultiMedia 12(2): 20–24.
Hey, T., Tansley, S., and Tolle, K. 2009. The Fourth Paradigm: Data-Intensive Scientific Discovery. Redmond,
VA: Microsoft Research.
Hildebrandt, D. and Döllner, J. 2010. Service-oriented, standards-based 3D geovisualization: Potential and
challenges. Computers, Environment and Urban Systems 34(6): 484–495.
Inselberg, A. 1997. Multidimensional detective. In: Proceedings of the IEEE Conference on Visualization
(Visualization’97), pp. 100–107. Los Alamitos, CA: IEEE Computer Society.
Isenberg, P., Tang, A., and Carpendale, S. 2008. An exploratory study of visual information analysis. In: ACM
Conference on Human Factors in Computing Systems (CHI 2008), April 5–10, 2008, pp. 1217–1226.
Florence, Italy: ACM.
Janowicz, K., Scheider, S., Pehle, T., and Hart, G. 2012. Geospatial semantics and linked spatiotemporal data—
Past, present, and future. Semantic Web 3: 321–332.
Jerding, D. F. and Stasko, J. T. 1998. The information mural: A technique for displaying and navigating large
information spaces. IEEE Transactions on Visualization and Computer Graphics 4(3): 257–271.
Johansson, J., Treloar, R., and Jern, M. 2004. Integration of unsupervised clustering, interaction and parallel
coordinates for the exploration of large multivariate data. In: Proceedings of the Eighth International
Conference Information Visualization, IV 2004, pp. 52–57. Los Alamitos, CA. Washington, DC: IEEE
Computer Society.
Jones, C. A, Haklay, M., Griffiths, S., and Vaughan, L. 2010. A less-is-more approach to geovisualization—
Enhancing knowledge construction across multidisciplinary teams. Computers, Environment and Urban
Systems 34(6): 484–495.
Keel, P. E. 2007. EWall: A visual analytics environment for collaborative sense-making. Information
Visualization 6(1): 48–63.
Keim, D. and Kriegel, H.-P. 1996. Visualization techniques for mining large databases: A comparison. IEEE
Transactions on Knowledge and Data Engineering 8(6): 923–938.
Keim, D. A., Mansmann, F., Schneidewind, J., and Ziegler, H. 2006. Challenges in visual data analysis. In:
Proceedings of the Information Visualization 2006 (IV’06), IEEE, pp. 9–16. London, U.K. Washington,
DC: IEEE Computer Society.
Keller, P. R. and Keller, M. M. 1993. Visual Cues: Practical Data Visualisation. Los Alamitos, CA: IEEE Press.
Kosara, R., Healey, C. G., Interrante, V., Laidlaw, D. H. V., and Ware, C. 2003. User studies: Why, how, and
when? IEEE Computer Graphics and Applications 23(4): 20–25.
Koua, E., MacEachren, A., and Kraak, M.-J. 2007. Evaluating the usability of visualization methods in an
exploratory geovisualization environment. International Journal of Geographical Information Science
20: 425–448.
Kraak, M. J. and MacEachren, A. M. 2005. Geovisualization and GIScience. Cartography and Geographic
Information Science 32(2): 67–68.
Leedy, P. D. and Ormrod, J. E. 2010. Practical Research: Planning and Design, 9th edn. Boston, MA: Pearson.
Liu, H., Jiang, L., Parashar, M., and Silver, D. 2005. Rule-based visualization in the discover computational
steering collaborator. Future Generation Computer Systems 21(1): 53–59.
Livingstone, M., and Hubel, D. 1988. Segregation of form, colour, movement and depth: Anatomy, physiology
and perception. Science 240: 740–749.
Lloyd, D. and Dykes, J., 2011. Human-centered approaches in geovisualization design: Investigating multiple
methods through a long-term case study. IEEE Transactions on Visualization and Computer Graphics
17(2): 2498–2507.
MacEachren, A., Dai, X., Hardisty, F., Guo, D., and Lengerich, G. 2003. Exploring high-D spaces with multi-
form matrices and small multiples. In: Proceedings of the IEEE Symposium on Information Visualization
2003 (INFOVIS’03), pp. 31–38. Washington, DC: IEEE Computer Society.
122 GeoComputation

MacEachren, A. M. 1994. Time as a cartographic variable. In: Visualization in Geographical Information


Systems, eds. H. M. Hearnshaw and D. J. Unwin, pp. 115–130. Chichester, U.K.: Wiley.
MacEachren, A. M. 1995. How Maps Work: Representation, Visualization and Design. New York: Guilford
Press.
MacEachren, A. M. and Kraak, M.-J. 1997. Exploratory cartographic visualisation: Advancing the agenda.
Computers & Geosciences 23(4): 335–343.
MacEachren, A. M. and Kraak, M.-J. 2001. Research challenges in geovisualization. Cartography and
Geographic Information Science 28(1): 3–12.
MacEachren, A. M., Roth, R. E., O’Brien, J., Li, B., Swingley, D., and Gahegan, M. 2012. Visual semiotics
and uncertainty visualization: An empirical study. IEEE Transactions on Visualization and Computer
Graphics 18(12): 2496–2505.
Mac Fhearaí, O., Humphrys, M., and Walshe, R. 2011. A framework for scaling up distributed minds. In:
Proceedings of the Third International Conference on Software, Services and Semantic Technologies
(S3T 2011), pp. 211–212. Berlin, Germany: Springer-Verlag.
Mackinlay, J. D. 1986. Automating the design of graphical presentations of relational information. ACM
Transactions on Computer Graphics 5(2): 110–141.
McCandless, D. 2009. The Visual Miscellaneum. New York: HarperCollins.
McNoleg 2008. Professor McNoleg’s A-to-Z of useful GIScience terms (A refreshingly non-glossy and inex-
pensive glossary). Transactions in GIS 12(5): 563–565.
Miller, H. and Han, J. 2009. Knowledge Discovery with Geographic Information. Boca Raton, FL: CRC Press.
Mitchell, T. 1997. Machine Learning. Boston, MA: McGraw-Hill.
Monmonier, M. S. 1990. Strategies for the interactive exploration of geographic correlation. In: Proceedings of
the Fourth International Symposium on Spatial Data Handling, eds. K. Brassel and H. Kishimoto, Vol. 1,
pp. 381–389. Zürich, Switzerland: Department of Geography, University of Zurich.
Noll, A. M. 1967. A computer technique for displaying n-dimensional hyperobjects. Communications of the
ACM 10(8): 469–473.
North, C. and Shneiderman, B. 1999. Snap-together visualization: Coordinating multiple views to explore
information. College Park, MD: University of Maryland, Computer Science Department Technical
Report No. CS-TR-4020.
Openshaw, S. 2000. GeoComputation. In: GeoComputation, eds. S. Openshaw and R. J. Abrahart, pp. 1–31.
London, U.K.: Taylor & Francis Group.
Palamidese, P. (ed.) 1993. Scientific Visualisation: Advanced Software Techniques. New York: Ellis-Horwood.
Pickett, R. M., Grinstein, G., Levkowitz, H., and Smith, S. 1995. Harnessing preattentive perceptual processes
in visualisation. In: Perceptual Issues in Visualisation, eds. G. Grinstein and H. Levkowitz. Berlin,
pp. 33–45. Germany: Springer-Verlag.
Rey, S. J. and Janikas, M. V. 2006. STARS: Space–time analysis of regional systems. Geographical Analysis
38(1): 67–86.
Rheingans, P. and Landreth, C. 1995. Perceptual principles for effective visualisations. In: Perceptual Issues in
Visualisation, eds. G. Grinstein and H. Levkowitz, pp. 59–69. Berlin, Germany: Springer-Verlag.
Robertson, P. K. and O’Callaghan, J. F. 1988. The application of perceptual colour spaces to the display of
remotely sensed imagery. IEEE Transactions on Geoscience and Remote Sensing 26(1): 49–59.
Roth, R. E., Woodruff, A. W., and Johnson, Z. F. 2010. Value-by-alpha maps: An alternative technique to the
cartogram. The Cartographic Journal 47(2): 130–140.
Samara, T 2007. Design Elements—A Graphical Style Manual (Understanding the Rules and Knowing When
to Break Them). Gloucester, MA: Rockport.
Science 2010. International science & engineering visualization challenge 2009. http://www.sciencemag.org/
site/special/vis2009/ (special issue, February 19, 2010).
Senay, H. and Ignatius, E. 1991. Compositional analysis and synthesis of scientific data visualisation tech-
niques. In: Scientific Visualisation of Physical Phenomena, ed. P. Patrikalakis, pp. 269–281. Hong Kong,
China: Springer-Verlag.
Senay, H. and Ignatius, E. 1994. A knowledge-based system for visualisation design. IEEE Computer Graphics
and Applications 14(6): 36–47.
Senay, H. and Ignatius, E. 1998. Rules and principles of scientific data visualisation. http://www.siggraph.org/
education/materials/HyperVis/percept/visrules.htm (accessed February 18, 2014).
Slocum, T. A., Blok, C., Jiang, B., Koussoulakou, A., Montello, D., Fuhrmann, S., and Hedley, N. R. 2001.
Cognitive and usability issues in geovisualization. Cartography and Geographic Information Science
28: 61–75.
Geovisualisation as an Analytical Toolbox for Discovery 123

Slocum, T. A., McMaster, R. B., Kessler, F. C., and Howard, H. H. 2008. Thematic Cartography and
Geovisualization, 3rd edn. Lebanon, IN: Prentice Hall.
Spira, J. and Goldes, D. 2007. Information overload: We have met the enemy and he is us. New York NY:
Basex, Inc.
Sui, D. 2014. Ubiquitous computing, spatial big data and open GeoComputation. In: GeoComputation, 2nd
edn., eds. R. J. Abrahart and L. See, pp. 377–396. Boca Raton, FL: Taylor & Francis Group.
Takatsuka, M. and Gahegan, M. 2002. GeoVISTA Studio: A codeless visual programming environment for
geoscientific data analysis and visualization. Computers and Geosciences 28(10): 1131–1144.
Thomas, J. J. and Cook, K. A. 2005. Illuminating the Path: The Research and Development Agenda for Visual
Analytics. New York: IEEE CS Press.
Thomas, J. J. and Cook, K. A. 2006. A visual analytics agenda. Computer Graphics and Applications 26(1):
10–13.
Treinish, L. A. 1993. Visualization of stratospheric ozone depletion and the polar vortex. In: Proceedings of the
IEEE Conference on Visualization (October 25–29, 1993), pp. 391–396. San Jose, CA.
Treisman, A. 1986a. Properties, parts and objects. In: Handbook of Perception, Vol. II, pp. 35.1–35.70.
New York: Wiley.
Treisman, A. November 1986b. Features and objects in early vision. Scientific American 255: 114–125.
Treisman, A. and Gormican, S. 1988. Feature analysis in early vision: Evidence from search asymmetries.
Psychological Review 95: 15–48.
Tufte, E. R. 1990. Envisioning Information. Cheshire, CT: Graphics Press.
Tukey, J. W. 1977. Exploratory Data Analysis. Reading, MA: Addison-Wesley.
Turk, A. 1994. Cogent GIS visualisations. In: Visualisation in Geographical Information Systems, eds.
H. M. Hearnshaw and D. J. Unwin, pp. 26–33. Chichester, U.K.: Wiley.
Ward, M., Grinstein, G., and Keim, D. 2010. Interactive Data Visualization: Foundations, Techniques and
Application. Natick, MA: A K Peters.
Ware, C. 2000. Information Visualization: Perception for Design. Los Altos, CA: Morgan Kaufmann.
Weaver, C. 2004. Building highly-coordinated visualizations in Improvise. In: Proceedings of the IEEE
Symposium on Information Visualization 2004, pp. 159–166. Austin, TX.
Weaver, C. 2010. Cross-filtered views for multidimensional visuals analysis. IEEE Transactions on Visualization
and Computer Graphics 16(2): 192–204.
Yang, D., Xie, Z., Rundensteiner, E., and Ward, M. 2007. Managing discoveries in the visual analytics process.
SIGKDD Explorations 9(2): 22–29.
6 Applications in Biology
GeoComputation

Shawn W. Laffan

CONTENTS
Abstract........................................................................................................................................... 125
6.1 Introduction........................................................................................................................... 125
6.2 Biological Data...................................................................................................................... 126
6.2.1 Taxonomies and Phylogenies..................................................................................... 127
6.2.2 Genes and Other Molecular Data.............................................................................. 128
6.2.3 Phenotypes, Traits and Phenology............................................................................. 129
6.2.4 Data Explosion........................................................................................................... 129
6.3 Analytical Methods............................................................................................................... 130
6.3.1 Diversity Analyses..................................................................................................... 130
6.3.2 Generalised Dissimilarity Modelling........................................................................ 133
6.3.3 Reserve Design.......................................................................................................... 135
6.3.4 Disease Spread........................................................................................................... 137
6.3.5 Movement Analyses................................................................................................... 137
6.4 Conclusions............................................................................................................................ 139
References....................................................................................................................................... 139

ABSTRACT
The aim of this chapter is to provide an overview of some current and potential applications of
GeoComputation (GC) in biology. GC and biology overlap in several important areas in terms of
algorithms and application spaces, but there is considerable potential for further use of biological
applications in GC research. Biological data, with its taxonomies, phylogenies, genetic related-
ness and molecular data, do not always lend themselves to analysis using conventional GC data
structures. This means that standard GC approaches often need to be adapted or rebuilt when used
for biological applications. Following a discussion of pertinent data structures and the explosive
growth in acquired and warehoused biological data now available for numerical investigation, a
set of example application areas of relevance to, or representing opportunity for, GC research are
considered. The topics covered in this chapter demonstrate how biological applications espouse the
core organising concepts and techniques of GC and that computationally intensive modelling of
biological systems is very much at the cutting edge of biology research. Much biologically oriented
GC research has already begun, but there remains a wealth of opportunity for researchers in GC to
utilise and explore biological data and applications.

6.1 INTRODUCTION
The aim of this chapter is to provide an overview of some current and potential applications of
GeoComputation (GC) in biology. GC is a relatively small field, focussed on methods, with a
broad applicability across the geospatial disciplines. In contrast, biology is an enormous discipline

125
126 GeoComputation

engaged in research spanning all of life since it first emerged approximately 3.8 billion years ago.
This breadth is a potential advantage for GC, offering many useful avenues for research involving
biological applications.
As with geospatial analyses, the application space for biological analyses is enormous. It is
perhaps a gross generalisation but, where geospatial disciplines are focussed on geolocated phe-
nomena, biology is focussed on organisms. The geospatial disciplines and biology both deal with
temporal scales ranging from immediate to astronomical. Both are concerned with processes and
interactions between objects over space, but, where geospatial disciplines are generally concerned
with landscape to global scales, biology is concerned with processes at spatial scales ranging from
within individual virus cells, to Petri dishes, to the planet (see Chapman, 2009). This scale range is
many orders of magnitude greater than in geospatial research.
Clearly the overlap of applications between the geo- and bio-disciplines lies at the spatial
scales typically occupied by the geosciences. However, it is important to remember that many
spatial analyses have broad applicability. Spatial analyses are fundamentally applied to some
set of spatial units, where membership of the set is normally based on proximity to a particular
unit of interest, for example, central or focal unit, but can be defined in possibly arbitrary ways.
Such analyses can be applied at any scale given appropriate modifications. For example, Darcy’s
law of fluid flow through porous media, one of the foundations of hydrology, finds application
in cellular-level studies (Chapman et al., 2008). One can even analyse digestive tracts as spatial
entities (Stearns et al., 2011).
GC and biology intersect in two ways. First is the application of analytical methods and simu-
lation environments that are biological analogues. Perhaps the most common examples of these
are evolutionary algorithms and artificial neural networks. Such topics are dealt with in depth in
Heppenstall and Kirkland (2014) and Fischer and Abrahart (2014). Second, and the focus of this
chapter, is the application of GC methods to geolocated biological data.
As will be discussed, some of the GC applications in biology are well established and in several
cases involve the application of methods developed outside the geosciences, GC and biology. Others
represent areas of GC that have potential for biology or, alternately, are application areas in biology
that have potential to generate interesting developments in GC.
The remainder of this chapter is divided into two parts. First is a general outline of the types of
biological data that are relevant to GC, either for direct application or as a source of new research
approaches. This is then followed by a discussion of some spatial and spatio-temporal analyses that
can be applied.

6.2  BIOLOGICAL DATA


Readers will be familiar with the GIS data models most frequently used to represent geographic
phenomena in GC (see Longley et al., 2010). In the object data model, some set of objects posi-
tioned in geographic and/or temporal space is assigned values that describe one or more associated
locational spatio-temporal attributes. In the field data model, one or more continuous surfaces are
located in space and/or time. Geolocated biological data are amenable to such data models but, in
addition, have hierarchical representations of the relatedness between organisms in the form of
taxonomies and phylogenies (Figure 6.1). Of course, one can develop such hierarchical structures to
link non-biological phenomena, soil classifications being an established example; it is just that the
concept is very well defined in biology. Indeed, it is a fundamental part of the discipline. This can
be partly attributed to the fact that considerable research and effort has gone into the understanding
of genes and their use for determining relatedness between organisms.
In terms of the individual unit of analysis, one can analyse geolocated biological data at several
levels. First, there is the individual organism, followed by groups of organisms (e.g. herds, flocks,
crowds), up to populations. A reality is that data are frequently not available at any of these levels
due to difficulties of sampling. In such cases, one can analyse collections of organisms. As analyses
Applications in Biology 127

Gorilla Gorilla

Human Human

Chimpanzee Chimpanzee

Bonobo Bonobo

Orangutan Orangutan

0 1 Unit 0 5 10 Ma
(a) (b)

FIGURE 6.1  Taxonomic (a) and phylogenetic (b) trees are used to represent the hierarchy of relatedness
between organisms, in this case the great apes. A species-based analysis would treat humans, chimpanzees
and bonobos as equally different. A taxonomic tree allows for differences at the genus level, but the only effec-
tive difference is for comparisons involving chimpanzees and bonobos. The phylogenetic tree allows a more
refined measure of difference between each of the taxa, in this case millions of years of evolution since diver-
gence of each of the lineages. (Phylogenetic tree from Bininda-Emonds, O.R.P. et al., Nature, 446, 507, 2007.)

and data collection become cheaper, individual organisms will increasingly be studied. However,
this will not change the basic approaches used.
Given the preceding conditions, the object data model is most commonly used in the analysis of
geolocated biological data. However, consistent with other object-based data, continuous fields can
be derived through processes such as smoothing, density estimation and interpolation.

6.2.1 Taxonomies and Phylogenies


A taxonomy is the familiar Linnaean system of classification where taxa are grouped into the hier-
archy of kingdom, phylum, class, order, family, genus and species (although other intermediate
and lower levels can be included) (see Figure 6.1). The concatenation of labels from different levels
results in a unique name for any taxon, although only genus and species are strictly needed for
identification (e.g. Homo sapiens for humans and Brassica oleracea for cabbage). A taxonomy is a
topological structure, in which distance between each level of the hierarchy does not represent a true
distance. In this sense, species within a genus are represented as being equally different from each
other, when in reality some will be more closely related than others.
A phylogeny is a more detailed representation of the relatedness between taxa than a taxonomy
(Figure 6.1). The branch lengths of a phylogeny can be interpreted as the rate of change of features
between organisms, such features typically being genes and/or morphological characteristics. By
means of appropriate calibration, one can derive a chronogram, enabling branch lengths to represent
time since divergence of the lineages within the tree.
The tree-based data structure makes a phylogeny an intuitive system to work with. A simple
interpretation of phylogenies can be derived by rephrasing Tobler’s (1970) first law of geography
‘That all species are related to all other species, but that phylogenetically close species are more
related than those phylogenetically further apart’. There is also no need for it to be displayed using
only two dimensions, with recent tools being developed to allow geographic visualisation of phylog-
enies on digital globes (Hill and Guralnick, 2010; Bielejec et al., 2011). Such approaches make for
an interesting addition to the visualisation tools already in use in GC (Gahegan, 2014).
Given its greater level of detail than a taxonomy, one would ideally use a phylogeny to represent
the relatedness between taxa in any analysis. However, the reality is that complete phylogenies are
128 GeoComputation

not yet available for most taxonomic groups, even those that are well studied. For example, the genus
Acacia is one of the most speciose and well studied of the Australian vascular plant groups, with
1029 known species in the genus. Despite being a very well-studied group, the available phylogeny
covers less than 20% of known species (see Miller et al., 2011). The level of detail contained in a
phylogeny is also a function of what the taxa are and the extent to which they have been studied. For
example, where available, mammal species typically have phylogenies at the species level, insects
at the genus level and bacteria at no more detail than the family level or higher, except where they
are related to human diseases. Many organisms have yet to even be described by science. These
are typically smaller organisms such as insects, but such organisms represent the great majority of
species on the Earth.
Given the difficulties associated with the identification of bacterial and related organisms, one
alternative approach being explored is to develop phylogenies of the genetic diversity of what is
present at a location rather than attempting to identify individual species (Venter et al., 2004). Such
an approach avoids the sometimes contentious issue of defining species units and instead operates at
the level of the individual organism. Perhaps the example that relates most to readers is the assess-
ment of genetic variation among a sample of humans.
Genetics is also a field that moves at an extremely rapid rate, with advanced technologies from
10 years ago already being redundant. The current state-of-the-art approach is in next-generation
sequencing (e.g. Egan et al., 2012), a set of methods with the potential to generate extremely large
amounts of complex geospatial data in very short periods of time.
A further limitation of phylogenies is the availability of data over temporal periods relevant to
evolution. Genetic samples are comparatively easy to obtain for extant (living) organisms. However,
fossil and sub-fossil data are at the mercy of preservation, assuming they can be found in the first
place. This means that one needs to use morphological traits that are preserved in the fossil record
such as dentition (teeth) or leaf structures.
There also always looms the possible effect of phylogenetic revisions as new data and methods
become available. However, change in the underlying data is not an abnormal occurrence in GC
or indeed in any field of research. The main effect in the case of phylogenetic analyses is that any
such modifications to the structure of the phylogeny will propagate their way through a subsequent
spatial analysis operation, to deliver changes in the resultant spatial patterns that are directly pro-
portional to changes in the original phylogeny.

6.2.2 Genes and Other Molecular Data


Phylogenies are generated primarily from genetic data. This is done using a variety of methods,
but fundamentally it is based on a comparison of shared DNA base pairs (the nucleotides A, C, G
and T). These base pairs are the rungs on the double helix ladder that is DNA, with the full set of
base pairs being the genome. The more pairs that are common to two organisms, the more shared
DNA they have.
From these, genetic data can be derived matrices of genetic relatedness. These matrices can be
used to derive phylogenies or analysed directly (Bickford et al., 2004) by linking them to geolocated
objects at whichever level is appropriate (e.g. individual, group, population, taxon).
These genetic matrices represent one of the challenges of spatially analysing biological data.
GIS software has not been developed with such data structures in mind. Small matrices can be
stored as attribute tables, but new data structures analogous to spatial weight matrices found in
specialist spatial analysis tools are needed to analyse them spatially. This then requires new and/
or more complex algorithms to access the data to use in an analysis of a location or neighbourhood
of locations.
While genetic data are comparatively common, other molecular data such as metabolites are also
the subject of research (Kulheim et al., 2011) and represent an additional form of biological data to
which GC methods could be applied.
Applications in Biology 129

6.2.3  Phenotypes, Traits and Phenology


The genotype is the genetic structure of an organism (its genome), but this is merely the starting
point for its structure and shape. The phenotype is the expression of an organism’s genotype given
the environment in which it occurs, for example, climate, available resources and competition from
other organisms. Examples include fruit length and size, growth forms and height (Moles et al.,
2007, 2009).
Given the variability of environments, there is often considerable temporal variation. Phenological
variations are the response of the organism to seasonal and/or other temporal fluctuations, for
example, the time of flowering. Climate change effects on phenology are an area of active research
(e.g. Visser and Both, 2005).

6.2.4 Data Explosion
GC practitioners have for many years recognised the fact that we are in the midst of a spatial data
explosion (Openshaw, 1999). Earth observation systems constantly deliver terabytes of satellite imag-
ery from orbit; millions of geocoded/geolocated LiDAR data points can be captured in minutes via low
flying aircraft; and a bewildering array of different tracking technologies can be employed to record
the locational whereabouts of individuals, for example, use of platform transmitter terminal (PTT) or
radio-frequency identification (RFID) tagging, CCTV cameras or mobile devices. However, the bio-
sciences have also experienced a similar explosion in data over the same time period, partly because
both the geosciences and biosciences have been supported by similar underlying technological devel-
opments such as increases in computer power and data storage capacity. Much of this biological data
is not geolocated, but it can be linked to geolocated observations of biological entities.
In terms of available specimen data, there is an ever-increasing availability of geolocated records.
Two examples are the Atlas of Living Australia (http://www.ala.org.au/), a database containing
more than 40,000,000 specimens for Australia (as of January 2014), and the Global Biodiversity
Information Fund (GBIF; http://www.gbif.org) which maintains a global extent database of more
than 370,000,000 indexed records with coordinates (http://data.gbif.org/welcome.htm). This number
is far from a complete census. Many areas, marine environments in particular, are poorly sampled
for most taxonomic groups. Even well-sampled areas can still be poorly sampled for many groups
(Newbold, 2010). For example, large trees are easy to identify, but small herbs and fungi are not.
Many such geolocated data are derived from museum records, all of which have location infor-
mation at some level of detail, ranging from GPS-derived coordinates to statements such as Terra
Australis or Nova Hollandia. Others are derived from opportunistic sightings such as those recorded
in bird watcher databases. Following an assessment of museum-derived data for taxonomic and geo-
graphic accuracy, it is not unusual for 40% of the original records to be discarded prior to analysis
(Kooyman et al., 2012).
For descriptions and relationships among these data, the Encyclopedia of Life (http://eol.org/)
has close to one million pages containing species information, plus millions of pages compris-
ing only a name that are still waiting to be completed (http://eol.org/collections/34). The Tree of
Life (Maddison and Schulz, 2007; http://tolweb.org) already contains more than 10,000 pages with
phylogenetic information for extant and extinct biotic groups. The Catalogue of Life is attempting
to be a comprehensive catalogue of species and for the 2011 edition had 1,347,224 species listed
(Bisby et al., 2011). These archives represent small steps on what is a very long road.
Researchers in phylogenetics are encouraged, and for publication in some journals, required
to submit phylogenies to TreeBASE, a public repository of phylogenies (http://www.treebase.org/
treebase-web/home.html). At the time of writing, TreeBASE contained 8,462 trees comprising a
total of 465,762 distinct taxon labels mapping to approximately 82,043 distinct taxa. For genetic
data from which many phylogenies are derived, GenBank (Benson et al., 2012) is a standard data-
base. Release 185 of GenBank contained more than 340 billion base pairs (Benson et al., 2012).
130 GeoComputation

Very few organisms have the entirety of their genome mapped, and in many cases, it is difficult
to generate moderately detailed data. In fact, the typical genome has billions of base pairs (Sherwin,
2010). For the purposes of simple identification, research is underway into DNA bar coding of spe-
cies, where short segments of DNA are used to identify species (Savolainen et al., 2005). This has
the potential to generate very large amounts of geolocated data, as each sample has some form of
geolocation attached to it.
In summary, it is clear that there is a rich source of data in biology for GC. What is now consid-
ered are some of the possible GC approaches to their analysis.

6.3  ANALYTICAL METHODS


Many biological data can be spatially analysed using established procedures. These methods would
be considered standard practice in GC, for example, using spatial statistics (Laffan, 2006; Kulheim
et al., 2011) or geographically weighted regression (Bickford and Laffan, 2006). Indeed, many such
methods of analysis are also essentially standard practice in spatial ecology (see Fortin and Dale,
2005), and moreover, GC methods are often applied to species distribution models (Miller et al.,
2007; Franklin, 2010). This overlap should not come as a surprise as, after all, statistical and machine
learning approaches are applied across many disciplines. A simple example is the Moran’s I statistic
which can be applied equally well to an analysis of human populations (Zhang et al., 2010) as it can
to relationships in a phylogenetic tree (Gittleman and Kot, 1990). The latter is essentially a calcula-
tion that uses neighbours defined by a network, a process demonstrated for traffic networks by Okabe
et al. (2006). These approaches also have the same general limitations as other GC approaches (See,
2014), and the available tools are a mixture of proprietary and open source (Bivand, 2014).
There are, however, key differences in approach. Biological, and certainly ecological, analyses
often use hypothetico-deductive reasoning supported by standard statistical procedures. This is partly
a result of available data and the ability, for smaller organisms at least, of researchers to conduct
manipulative experiments (e.g. Bonser et al., 2010). Such manipulative experiments are typically
impractical for applications normal to GC, and indeed the impracticality of such approaches provides
impetus for GC research. Data mining and machine learning, important approaches in GC, are less
often used in mainstream biology. This is partly because much biological research is focussed on the
discovery of underlying processes and mechanisms and these can be difficult to extract from many
machine learning methodologies. Such methods have, however, received attention in fields such as
bioinformatics (Jensen and Bateman, 2011) and veterinary epidemiology (Ward and Carpenter, 2000).
Spatial and spatio-temporal analysis of biological data can be complex, as one of the common
formats is as collections of geolocated species observations (see Section 6.2.4). At the spatial
precision of most data sets, individual entities are effectively co-located. Indeed, a common
approach is to aggregate the observations into some grouped unit such as a polygon and thereafter
analyse the collections of taxa found within and between each group. The focus of the following
sections is on the analysis of these types of data, which as individual data layers can be analysed
using conventional spatial analyses.
Five approaches are considered. The first three are purely spatial (diversity analyses, generalised
dissimilarity modelling [GDM] and reserve design), while the latter two are spatio-temporal (dis-
ease modelling and movement analyses).

6.3.1 Diversity Analyses
Diversity analyses underpin our understanding of biodiversity and its geographic distribution. The
challenge for GC in this regard lies primarily in the development of algorithms and tools that can
in parallel analyse the non-geolocated component of a biological data set, comprising information
pertaining to organisms or taxonomic units, and, concurrently, incorporate a spatial element in the
analysis pertaining to their associated geographic distributions.
Applications in Biology 131

As noted earlier, much of the available geolocated specimen data is typically analysed in aggre-
gated form. Most commonly one is working with lists of taxa that occur within the bounds of a
geographic cell, with that cell typically being square. Having such a collection of taxa (or labels
to be more general) makes standard spatial analyses difficult to apply. One might perhaps consider
separating the data into individual layers for analysis, but there are many other approaches that
could potentially be used to analyse the collection of species, not only according to their internal
structure but also in terms of how they relate to geographic neighbours. It is exactly to address this
sort of diversity analysis problem that tools such as Biodiverse (Laffan et al., 2010; Laffan, 2011)
have been developed.
Given that one is analysing a set of labels within some spatial unit, diversity analyses have appli-
cation to many non-biological phenomena. The methods are essentially functions of sets so, as noted
previously, are generic in terms of their application domain. One recent GC example amenable to
such analyses is surnames (Longley et al., 2011; Cheshire and Longley, 2012), which themselves
have a link to human genetics (Winney et al., 2012). If one has data on an interval or ratio scale,
then methods related to the semivariance of geostatistics can also be used (Di Virgilio et al., 2012).
In their simplest form, diversity analyses assess the set of species and their abundances within
a neighbourhood, possibly in relation to the data set as a whole. Of these, the simplest analysis is
species richness (SR; Equation 6.1), which is merely the count of taxa that occur at a location. Such
analyses have a long history of application in biology (Mayr, 1944; Legendre and Legendre, 2000).

SR i = ∑1 (6.1)
t∈Ti

where t is a taxon in the set of taxa Ti at a location i.
A key advantage of having geolocated data is that one can begin to include the geographic
properties of the species distributions in an analysis. An important example is analyses of range
restriction (relative endemism). The range of a species is the full geographic distribution over which
it is found. A species is endemic to a region when its range is entirely bounded by that region. This
clearly has issues with boundary definitions and is therefore subject to the modifiable areal unit
problem (MAUP; Openshaw, 1983). A more effective approach is to calculate the relative proportion
of the species range that is found within an analysis window (Crisp et al., 2001; Laffan and Crisp,
2003; Gonzales-Orozco et al., 2011). This results in a value ranging between 0 and 1 for each spe-
cies, with widespread species having low values and range-restricted species having high values.
The sum of these values results in a measure of weighted endemism (WE; Equation 6.2), which is
analogous to a range-weighted richness score. This can then be divided by the SR to obtain an aver-
age range restriction of species in that neighbourhood (referred to as the corrected weighted ende-
mism [CWE; Equation 6.3]). Depending on the aims of the study, one can focus on those areas that
have concentrations of range-restricted species, or the inverse. By varying the window sizes (and
shapes), one can explore the rate of change of the range restriction and begin to identify the extent
of spatial regions (Laffan and Crisp, 2003). The extension of such an approach to analysing rarity is
achieved simply, as one need only replace the species ranges with their abundances.
rt
WE i = ∑ R (6.2)
t∈Ti t

WE
CWE i = (6.3)
SR

where
Rt is the full geographic range of taxon t in the set of taxa Ti in neighbourhood i
rt is the local range of taxon t restricted to neighbourhood i
132 GeoComputation

However, the real advance in terms of GC is when one links the attribute data represented in tree
and matrix data structures to the taxon data. This allows one to consider genetically and phyloge-
netically weighted indices (Bickford et al., 2004; Rosauer et al., 2009b).
The most commonly applied form of phylogenetically weighted analysis is phylogenetic diversity
(PD; Equation 6.4; Faith, 1994). PD is the phylogenetic analogue of SR, simply comprising the sum
of the branch lengths spanned by the taxa occurring within a neighbourhood, measured from termi-
nal branches to root node. In many cases, the branch lengths correspond to the number of unique
features represented by that branch, so PD is operating at a finer level of detail than the taxon while
also correcting for features shared between related taxa. It is a simple matter to extend the method
into a measure of phylogenetic endemism (PE; Equation 6.5), something that is derived from a com-
bination of WE and PD (Rosauer et al., 2009b). As with species endemism metrics, one calculates
the relative range restriction, but in this case, it is for the nodes in the tree, with the weight calcu-
lated by multiplying the branch length of each node by the fraction of its range represented in the
neighbourhood. One can then either explore the relative weights of each node or sum the values to
obtain the aggregate PE score. The interpretation of this result depends on the nature of the tree. For a
chronogram, for example, one will have a metric of the spatial concentration of evolutionary history:

PDi = ∑L (6.4)
c∈Ci
c

rc
PE i = ∑L
c∈Ci
c
Rc
(6.5)

where
Ci is the set of branches in the minimum spanning path joining the taxa in neighbourhood i to
the root of the tree
c is a branch (a single segment between two nodes) in the spanning path Ci
Lc is the length of branch c
Rc is the geographic range of branch c (the union of the ranges of taxa under branch c)
rc is the local range of branch c restricted to neighbourhood i

A comparison of the aforementioned metrics is given in Figure 6.2, using species distribution data
obtained from the Red List of Threatened Species version 2010.2 from the International Union
for Conservation of Nature (IUCN) (http://www.iucnredlist.org), aggregated to 100 km cells in an
Albers equal area coordinate system and a phylogenetic tree extracted from Bininda-Emonds et al.
(2007) with branch lengths representing millions of years of evolution. The SR and PD patterns are
comparatively similar, as are the WE and PE scores. However, where the WE score is the sum of the
weighted species, the PE score tells us how many millions of years of unique evolutionary history
is found in each of the cells. The cells with the highest CWE scores represent, on average, 25% or
more of the ranges of species that are found within them.
One GC application area that is worthy of further exploration is the use of more complex spatial
neighbourhoods, for example, using process-based knowledge (Laffan, 2002). Alternately one can
use an agglomerative cluster analysis of the data to define groupings based on some taxonomic,
genetic or phylogenetic index, a process enabled within Biodiverse (Laffan et al., 2010). Each of
these clusters, at each level of the tree, contains some set of geographic units, and this can be treated
as a neighbourhood for which other indices can be derived. Clearly some care needs to be taken in
terms of analytical circularity. Many indices are closely related and are often slight modifications of
each other. Calculation of spatial indices from the same set of taxa used to determine the clustering
will not be informative in many cases. However, indices of their traits might well be, for example,
the fruit size of endemic taxa.
Applications in Biology 133

SR WE CWE
41 >3.8 >0.25
1 0 0
0 1000 2000
km

PD PE
>880 >20
0 0
Node range (cells)
0 10 20 30 40 Ma 1–100
100–300
301–882

FIGURE 6.2  Geographic surfaces representing biodiversity indices for the Australian marsupials (SR, spe-
cies richness; WE, weighted endemism; CWE, corrected weighted endemism; PD, phylogenetic diversity; PE,
phylogenetic endemism). Spatial data are derived from IUCN distribution polygons (http://www.iucnredlist.
org), projected using an Albers equal area coordinate system and aggregated to 100 km cells. (Phylogenetic
data from Bininda-Emonds, O.R.P. et al., Nature, 446, 507, 2007.)

A further step that can be applied to diversity analyses is to compare them against distributions
generated using null models. In the simplest case, one can assume a process of complete spatial
randomness (Diggle, 2003) at the cell level. Typically a systematic grid-based equivalent of some
random point pattern process mixing operation is applied, such that the species in each cell are ran-
domly reassigned to some other cell in the data set. This method of spatial disorganisation is a stan-
dard procedure that is used in most randomisation schemes in GC. However, improved null models
can be generated that mimic some aspect of the geographic structure of the distributions, applying
a more realistic and generally more conservative null model. For example, Laffan and Crisp (2003)
applied three randomisations. In the first model, the species were allowed to occur anywhere on the
landscape (i.e. a random distribution model). The second model applied the additional constraint
that the SR of each cell in the null distribution was forced to match that of the original data set
exactly. In the third model, the species distributions were further constrained to occur in a circular
distribution around a randomly selected seed point. The second and third models both required the
addition of an optimisation function to achieve the richness targets, in the form of an iterative swap-
ping algorithm. Other models, such as random walks or where species disperse analogously to a
drop of water on a sheet of paper (Jetz and Rahbek, 2001), can be implemented as functions of geo-
graphic proximity. Greater biological complexity can be incorporated using stochastic geographic
evolution models (Tello and Stevens, 2012), where species distributions are generated by stochastic
processes of lineage divergence, extinction and geographic range shifts. Such increasingly biologi-
cally realistic models are possible within tools like Biodiverse (Laffan et al., 2010).

6.3.2 Generalised Dissimilarity Modelling


Diversity analyses require good-quality survey data. However, it not possible to conduct detailed
surveys everywhere (Rondinini et al., 2006). We can, however, attempt to predict the rate of change
134 GeoComputation

of species as a function of environmental change and with geographic distance. For unsampled loca-
tions, this allows one to predict, if not the actual species, at least how many there are likely to be.
This is a computationally involved process requiring a combination of approaches with application
to, or parallels in, GC.
Biodiversity itself can be partitioned into three interdependent components referred to as α-,
β- and γ-diversity (Whittaker, 1960). Each component operates at different scales (see Tuomisto,
2010), with γ-diversity being the total effective number of species in a study area. This can then be
partitioned into α-diversity, the mean effective number of species per subunit (mean SR; Equation
6.1), and β-diversity, the rate of change of diversity between spatial units. β-diversity is more gener-
ally referred to as compositional turnover, as many of the indices devised to measure it do not fol-
low the strict definition (Tuomisto, 2010). Such compositional turnover is typically measured along
geographic gradients but can also be assessed for environmental gradients.
One can potentially derive species composition across regions using species distribution models
applied to multiple species, with α, β and γ calculated from these surfaces. However, the fact that
the observation data are typically sparsely distributed geographically, and frequently biased, makes
such models difficult to calibrate for individual species across the entire regions (Newbold, 2010).
Predictive modelling of SR has proven effective (e.g. Bickford and Laffan, 2006), but rates of turn-
over cannot be estimated from these predictions. For example, two locations might have the same
predicted number of species, but one cannot infer how many species are common to both locations.
One recent approach is to model the turnover component of diversity patterns (Ferrier et al.,
2007) by assessing the relationship between biological and environmental turnover, an approach
termed GDM. In this approach, one does not obtain an estimate of which species are occurring
where. Instead one obtains an estimate of the rate of change of species between any pair of locations
as a function of the environmental change occurring (Figure 6.3).
GDM is essentially a combination of generalised linear models, non-linear matrix regressions
and generalised additive models with monotone regression splines (Ferrier et al., 2007). In the
GDM approach, one constructs a site-by-site matrix of turnover scores as dissimilarities. This turn-
over is then compared with the relative turnover of environmental conditions for the same site-pair
locations. This environmental turnover is a function of the absolute difference of the environmental
values between each site pair, but where the original environmental layers have been first trans-
formed using an I-spline basis function (Ferrier et al., 2007).
The choice of turnover metric can be an important consideration in a GDM, with a plethora of
indices available (see Tuomisto, 2010). Most GDM research to date has applied species-based turn-
over metrics. However, these have the potential issue that the differences between locations can rap-
idly become saturated, losing the ability to differentiate between certain types of biome (Rosauer
et al., 2014). For example, a rainforest site (site 1) might have no species in common with a second
rainforest site some distance away (site 2). Equally, it will have no species in common with a desert
site (site 3). There will be complete species turnover from site 1 to each of sites 2 and 3, a difference
that could be important in model calibration and particularly interpretation. In such cases, one can
begin to explore indices of phylogenetic turnover (e.g. Rosauer et al., 2014). A tree-based turnover
measure is simply a function of the branch lengths shared between two sites, such that sites 1 and
2 of the previous example will share some phylogenetic material, while very little will be shared
with site 3.
GDM is a method with considerable potential but also with many open research questions. Three
examples related to GC are considered here.
First, in most investigations, the available environmental layers are available at a finer resolution
than that used for the analyses. In these cases, the values are aggregated to the analysis resolution
by taking the mean of observations within the coarser resolution. As with any aggregation process,
details can be lost about the statistical spread of the data values. There is some potential in analysing
the turnover of quantiles of these aggregated values, analogous to the quantile regression process
(Cade and Noon, 2003).
Applications in Biology 135

1.00

0.80 1.50

Observed turnover
0.60

f(evapim)
1.00
0.40
0.50
0.20

0.00 0.00
2 4 6 8 50 100 150
Predicted ecological distance Evapim (mm)
2
0.4
1.6
Relative contribution

0.2
1.2

Residuals
0.0

0.8 –0.2
–0.4
0.4
–0.6
0
m

gm
im

im
tx

in
ap

in

ea
ax

cm
Ra
Ev

ng
M

re

llr
Rp

eo
G

FIGURE 6.3  GDM relates the degree of biotic turnover with the associated environmental turnover. Map
panel represents a set of cells used to calibrate the model. The scatterplot is the model residuals with the
line representing the modelled species turnover. The lower left plot is the relative contribution of the top five
most important correlates of turnover. The upper right panel is the I-spline transformed function for the best
environmental correlate. The lower right panel is a boxplot of the model residuals. (From Burley, H.M. et al.,
Int. J. Geogr. Inf. Sci., 26(11), 2065, 2012.)

Second, the GDM approach has been applied as a spatially global model. It is therefore affected
by the same issues of spatial scale, non-stationarity and anisotropy that affect all spatial models.
Initial research shows this is the case (Burley et al., 2012), but more research is needed.
Third, while an extremely complex process, it is also possible to infer the species composition
at unsampled locations (Mokany et al., 2011). This is a problem of high complexity due to the
enormous number of possible permutations that need to be assessed. This means there will be huge
uncertainties associated with such an approach, but it does have the potential benefit of informing
field surveys as to what species might be expected and thus what to look for.

6.3.3 Reserve Design
Reserve systems are a critical component of the conservation of biodiversity. However, their design
is a computationally challenging process for which GC methods can be relevant.
Reserve boundaries are typically determined through a combination of conservation, economic
and political pressures, with expert opinion and qualitative assessments used to help prioritise sites
(Prendergast et al., 1999). Large reserve systems are almost always developed incrementally and
are often comprised of areas with different land use and tenure histories, and these increments have
historically been selected opportunistically (Pressey, 1994).
A key aim of reserve design is to minimise the set of sites included in the reserve, thus minimis-
ing the cost of land acquisition and maintenance, while also maximising the number of species
136 GeoComputation

represented within the reserve system. This latter optimisation criterion is summarised in the con-
cept of complementarity, such that a site will be added to a reserve if it increases the total SR of the
reserve as a whole (thus increasing the species complement or complementing that which is already
represented). The addition of a site containing only species already found in the reserve represents a
suboptimal solution. A third criterion that is often used is compactness, where the perimeter of the
reserve is minimised. It is easier to manage a spatially compact reserve than one of similar area but
which is elongated or perhaps comprises several disconnected areas.
Even with only three optimisation constraints, reserve design represents a potentially complex
optimisation space with numerous near-optimal solutions. This is particularly the case when large
areas comprising many different taxa are being assessed. Reserve design algorithms have been
developed to both aid in and improve this task.
Linear programming solutions for reserve design have been developed (Önal and Briers, 2005;
Vanderkam et al., 2007). However, computational limits mean that these are normally best applied
to comparatively small problems. An alternative approach that has received much attention is simu-
lated annealing (Ball et al., 2009; Zhang et al., 2011a), where a large number of potential solutions
are generated, each of which satisfies the optimisation criteria specified (e.g. Figure 6.4). The final
reserve solution is a combination of these solutions. It will inevitably incorporate political and eco-
nomic pressures but will also, at least initially, have been based on a quantitative and repeatable
approach.
Several GC research opportunities exist in this area. First, there is the incorporation of additional
criteria into the optimisation system. One example includes distance of candidate land parcels from
the existing reserve system (Zhang et al., 2011a), and progress has been made in this regard using

(a) (b) (c)

(d) (e) (f)

FIGURE 6.4  A set of alternative reserve design solutions (black cells) for the additions to Greater Blue
Mountains World Heritage Area, New South Wales, Australia (light grey cells) (Zhang et al., 2011a). Solutions
were generated using a simulated annealing approach, with optimisation targets of complementarity, spatial
compactness and proximity to existing reserve parcels. The panels (a–f) represent solutions with an increasing
optimisation weighting of proximity.
Applications in Biology 137

alternate search heuristics (Ciarleglio et al., 2009). Second, one can include alternate weightings of
the taxa considered, for example, weighting by the inverse of a taxon’s range such that endemic taxa
contribute more to the complementarity than widespread species (this is directly analogous to the
WE metric of Equation 6.2). One can also include phylogenetic weightings. The reason these have
not been explored is simply due to the fact that the majority of commonly used software packages do
not support extensions. Of course, this should not stop a good GC researcher developing their own
solution, and developing such solutions has been one of the drivers behind GC research.

6.3.4 Disease Spread
The spread of disease through populations, particularly those involving uncontrolled animal species
such as feral animals and unfenced livestock, is something that must often be understood from a
paucity of available data. It is in these circumstances that spatio-temporal simulation modelling, an
important research area of GC, is often the only recourse to assess the potential impact of a disease
or virus incursion and therefore the development of response plans and policy Ward et al. (2007).
Disease outbreaks are spatio-temporal phenomena. Artificial life models, such as geographic
automata, therefore represent an important modelling approach. Geographic automata models
are simply extensions of cellular automata (see also Batty and Longley, 2014) that work with non-
symmetric geographic units. Fundamentally they treat space and time as discrete units and allow
interactions to occur between local neighbours using a set of simple rules (Doran and Laffan, 2005;
Ward et al., 2007; Laffan et al., 2011). Models developed for epidemiology typically also use a state-
based approach, where an individual or group can be in one of four states at any one time step –
susceptible, latent (infected), infectious and recovered/removed. The complex behaviour of epidemics
and their evolution over time (Figure 6.5) is simulated by the repetitive application of the rules con-
trolling transmission of the disease and temporal transition between sequential individual states.
Such automata approaches are extremely flexible and have the potential to be applied to any sys-
tem where the interactions are predominantly local. Where interactions are essentially non-local,
such as long-distance human travel networks, they become less applicable and other epidemiologi-
cal approaches are needed.
Beyond simulation modelling, one can visualise the spatio-temporal spread of diseases as they
evolve. A good example of this is the tracing of outbreaks of disease as the virus or bacterium
mutates. For example, Perez et al. (2010) traced the development of an outbreak of vesicular stoma-
titis in the United States over a 2-year period using scan statistics and space–time visualisation of
the phylogenetic change in this disease as the outbreak spread.

6.3.5  Movement Analyses


One part of biology that represents a broad and interesting arena for GC research is animal move-
ment. Developments in GPS, radar and other tracking technologies are making it possible to col-
lect vast amounts of data about the movements of animals as small as insects (Riley et al., 1996),
with sensors mounted on orbital platforms such as the International Space Station being planned
(Pennisi, 2011). Indeed, as more technology is developed, not only will we get more data but the
data sets that are available for analysis will also undoubtedly become more complex. The analysis
of such data can be linked to the environments that the animals prefer to utilise (Zhang et al., 2011b)
or, for detailed data sets, to which other animals they are interacting with. Many applications use
simple kernel density analyses (Taylor et al., 2006), but it is clear that research developments in
space–time geography (Miller, 1991; Demšar and Virrantaus, 2010; Laube and Purves, 2011) and
agent-based modelling (Benenson, 2014) are directly relevant.
Of particular promise are radar analyses, although in terms of animal movements, the scientific
application of this technology has largely so far been restricted to tracking insects (Riley et al.,
1996). However, more recent developments in the use of PTT and RFID tagging have also enabled
138 GeoComputation

Pigs Cattle Iteration infected N


>40 >10
0–50
51–75
76–90 0 10 20 30 40 km
0 0 91–100
(a)

Latent Infectious Recovered


250 350
200 1000
250
150
Cattle

100 150 600


50 50 200
0 0 0
0 20 40 60 80 100 0 20 40 60 80 100 0 20 40 60 80 100
Time step Time step Time step
Recovered
250 350
200 1000
250
150
Pigs

100 150 600


50 50 200
0 0 0
0 20 40 60 80 100 0 20 40 60 80 100 0 20 40 60 80 100
Time step Time step Time step
(b)

FIGURE 6.5  Disease spread modelled using a geographic automata model through a population of cattle
and feral pigs in Texas, United States. Disease was initiated in pigs and allowed to spread through and between
both the pig and cattle populations. The background surfaces are the number of individuals per cell, represent-
ing a herd of animals. The geographic distributions (a) represent the model time step at which each location
became infectious, while the graphs (b) show the epidemic curves (as boxplots) for 100 model repetitions from
the same starting location. (Data from Laffan, S.W. et al., Prev. Vet. Med., 102, 218, 2011.)

researchers to identify and distinguish between different animals under study, permitting tracking
and behaviour analysis at the level of an individual, instead of studying broader patterns relating
to groups or species (http://www.bto.org/cuckoos). This will empower researchers to ask far more
refined questions about their subjects. Britain, for example, has lost over half of its breeding cuckoos
during the last 25 years. Clearly it is important to understand all aspects of the cuckoo’s annual cycle
before one can begin to suggest what might be driving such a decline. The cuckoo has been well
studied during its breeding season in the United Kingdom. Yet once such birds head off on their
Applications in Biology 139

annual migration, very little is known about the routes they take or, indeed, where in Africa they
spend the winter months. If scientists can pinpoint areas of geographical importance, then one can
start to look at whether or not there are ecological pressures at such places which might explain their
subsequent observed losses in Britain.

6.4 CONCLUSIONS
For GC, many application areas in biology require no more than the application of existing methods
to data sets that happen to represent biological phenomena. However, the data explosion in biology
and the nature of the available data opens up many avenues for the development of GC methods.
These use non-standard (for GIS software) data structures such as trees and matrices, representing
phenomena such as phylogenies and genetic similarities.
The topics covered in this chapter demonstrate how biological applications espouse the core
organising concepts and techniques of GC and that computationally intensive modelling of biologi-
cal systems is very much at the cutting edge of biology research. Much biologically oriented GC
research has already begun, but there remains a wealth of opportunity for researchers in GC to
utilise and explore biological data and applications.

REFERENCES
Ball, I.R., Possingham, H.P., and Watts, M. 2009. Marxan and relatives: Software for spatial conservation
prioritisation. Spatial Conservation Prioritisation: Quantitative Methods and Computational Tools, eds.
A. Moilanen, K.A. Wilson, and H.P. Possingham. Oxford, U.K.: Oxford University Press.
Batty, M. and Longley, P. 2014. Modelling spatial morphologies: Fractal patterns from cellular automata. In
GeoComputation, 2nd edn., eds. R.J. Abrahart and L. See, pp. 23–48. Boca Raton, FL: Taylor & Francis.
Benenson, I. 2014. Agent-based modelling. In GeoComputation, 2nd edn., eds. R.J. Abrahart and L. See,
pp. 203–240. Boca Raton, FL: Taylor & Francis.
Benson, D.A., Karsch-Mizrachi, I., Clark, K., Lipman, D.J., Ostell, J., and Sayers, E.W. 2012. GenBank.
Nucleic Acids Research 40: D48–D53.
Bickford, S.A. and Laffan, S.W. 2006. Multi-extent analysis of the relationship between pteridophyte species
richness and climate. Global Ecology and Biogeography 15: 588–601.
Bickford, S.A., Laffan, S.W., de Kok, R., and Orthia, L. 2004. Spatial analysis of taxonomic and genetic patterns
and their potential for understanding evolutionary histories. Journal of Biogeography 31: 1715–1733.
Bielejec, F., Rambaut, A., Suchard, M.A., and Lemey, P. 2011. SPREAD: Spatial phylogenetic reconstruction
of evolutionary dynamics. Bioinformatics 27: 2910–2912.
Bininda-Emonds, O.R.P., Cardillo, M., Jones, K.E., MacPhee, R.D.E., Beck, R.M.D., Grenyer, R., Price, S.A.,
Vos, R.A., Gittleman, J.L., and Purvis, A. 2007. The delayed rise of present-day mammals. Nature 446:
507–512.
Bisby, F.A., Roskov, Y.R., Orrell, T.M., Nicolson, D., Paglinawan, L.E., Bailly, N., Kirk, P.M., Bourgoin, T.,
Baillargeon, G., and Ouvrard, D. 2011. Species 2000 and ITIS Catalogue of Life: 2011 Annual Checklist.
Digital resource at www.catalogueoflife.org/annual-checklist/2011/. Reading, U.K.: Species 2000.
Bivand, R.S. 2014. Geocomputation and open source software: Components and software stacks. In
GeoComputation, 2nd edn., eds. R.J. Abrahart and L. See, pp. 329–356. Boca Raton, FL: Taylor &
Francis Group.
Bonser, S.P., Ladd, B., Monro, K., Hall, M.D., and Forster, M.A. 2010. The adaptive value of functional and
life-history traits across fertility treatments in an annual plant. Annals of Botany 106: 979–988.
Burley, H.M., Laffan, S.W., and Williams, K.J. 2012 Spatial non-stationarity and anisotropy of compositional
turnover in eastern Australian Myrtaceae species. International Journal of Geographical Information
Science 26(11): 2065–2081.
Cade, B.S. and Noon, B.R. 2003. A gentle introduction to quantile regression for ecologists. Frontiers in
Ecology and the Environment 1: 412–420.
Chapman, S.J. 2009. Multiscale mathematical modelling in medicine and biology. In 18th World Imacs
Congress and Modsim09 International Congress on Modelling and Simulation: Interfacing Modelling
and Simulation with Mathematical and Computational Sciences, eds. R.S. Anderssen, R.D. Braddock,
and L.T.H. Newham, pp. 13–22. Nedlands, Western Australia, Australia: University of Western Australia.
140 GeoComputation

Chapman, S.J., Shipley, R.J., and Jawad, R. 2008. Multiscale modeling of fluid transport in tumors. Bulletin of
Mathematical Biology 70: 2334–2357.
Cheshire, J.A. and Longley, P.A. 2012. Identifying spatial concentrations of surnames. International Journal of
Geographical Information Science 26: 309–325.
Ciarleglio, M., Wesley Barnes, J., and Sarkar, S. 2009. ConsNet: New software for the selection of conservation
area networks with spatial and multi-criteria analyses. Ecography 32: 205–209.
Crisp, M.D., Laffan, S., Linder, P., and Monro, A. 2001. Endemism in the Australian flora. Journal of
Biogeography 28: 183–198.
Demšar, U. and Virrantaus, K. 2010. Space–time density of trajectories: Exploring spatio-temporal patterns in
movement data. International Journal of Geographical Information Science 24: 1527–1542.
Di Virgilio, G., Laffan, S.W., and Ebach, M.C. 2012. Fine scale quantification of floral and faunal breaks
and their geographic correlates, with an example from south-eastern Australia. Journal of Biogeography
39(10): 1862–1876.
Diggle, P.J. 2003. Statistical Analysis of Spatial Point Patterns, 2nd edn., New York: Academic Press.
Doran, R.J. and Laffan, S.W. 2005. Simulating the spatial dynamics of foot and mouth disease outbreaks
in feral pigs and livestock in Queensland, Australia, using a susceptible-infected-recovered cellular
automata model. Preventive Veterinary Medicine 70: 133–152.
Egan, A.N., Schlueter, J., and Spooner, D.M. 2012. Applications of next-generation sequencing in plant
biology. American Journal of Botany 99(2): 175–185.
Faith, D.P. 1994. Phylogenetic pattern and the quantification of organismal biodiversity. Philosophical
Transactions of the Royal Society of London Series B: Biological Sciences 345: 45–58.
Ferrier, S., Manion, G., Elith, J., and Richardson, K. 2007. Using generalized dissimilarity modelling to analyse
and predict patterns of beta diversity in regional biodiversity assessment. Diversity and Distributions 13:
252–264.
Fischer, M.M. and Abrahart, R.J. 2014. Neurocomputing for GeoComputation. In GeoComputation, 2nd
edn., eds. R.J. Abrahart and L. See, pp. 307–328. Boca Raton, FL: Taylor & Francis Group.
Fortin, M.J. and Dale, M.R.T. 2005. Spatial Analysis: A Guide for Ecologists, Cambridge, U.K.: Cambridge
University Press.
Franklin, J. 2010. Mapping Species Distributions: Spatial Inference and Prediction, Cambridge, U.K.:
Cambridge University Press.
Gahegan, M. 2014. Geovisualisation as an analytical toolbox for discovery. In GeoComputation, 2nd edn., eds.
R.J. Abrahart and L. See, pp. 97–124. Boca Raton, FL: Taylor & Francis Group.
Gittleman, J.L. and Kot, M. 1990. Adaptation: Statistics and a null model for estimating phylogenetic effects.
Systematic Biology 39: 227–241.
Gonzales-Orozco, C., Laffan, S.W., and Miller, J. 2011. Patterns of endemism in the Australian Acacia.
Australian Journal of Botany 59: 600–608.
Heppenstall, A.J. and Harland, K. 2014. Evolutionary algorithms. In GeoComputation, 2nd edn., eds.
R.J. Abrahart and L. See, pp. 143–168. Boca Raton, FL: Taylor & Francis Group.
Hill, A.W. and Guralnick, R.P. 2010. GeoPhylo: An online tool for developing visualizations of phylogenetic
trees in geographic space. Ecography 33: 633–636.
Jensen, L.J. and Bateman, A. 2011. The rise and fall of supervised machine learning techniques. Bioinformatics
27: 3331–3332.
Jetz, W. and Rahbek, C. 2001. Geometric constraints explain much of the species richness pattern in African
birds. Proceedings of the National Academy of Sciences 98: 5661–5666.
Kooyman, R., Rossetto, M., and Laffan, S.W. 2012 Cleaning and reconciling Australian Virtual Herbarium
records for the ‘woody’ Australian rain forest vegetation: A test case. Are the error bars larger than the
mountains? Cunninghamia 12(3): 177–180.
Kulheim, C., Yeoh, S.-H., Wallis, I.R., Laffan, S.W., Moran, G., and Foley, W. 2011. The molecular basis
of quantitative variation in foliar secondary metabolites in Eucalyptus globulus. New Phytologist 191:
1041–1053.
Laffan, S.W. 2002. Using process models to improve spatial analysis. International Journal of Geographical
Information Science 16: 245–257.
Laffan, S.W. 2006. Assessing regional scale weed distributions, with an Australian example using Nassella
trichotoma. Weed Research 46: 194–206.
Laffan, S.W. 2011. Spatial non-stationarity, anisotropy and scale: The interactive visualisation of spatial
turnover. In MODSIM11 International Congress on Modelling and Simulation. Modelling and Simulation
Society of Australia and New Zealand, Perth, Western Australia, Australia.
Applications in Biology 141

Laffan, S.W. and Crisp, M.D. 2003. Assessing endemism at multiple spatial scales, with an example from the
Australian vascular flora. Journal of Biogeography 30: 511–520.
Laffan, S.W., Lubarsky, E., and Rosauer, D.F. 2010. Biodiverse: A tool for the spatial analysis of biological and
other diversity. Ecography 33: 643–647.
Laffan, S.W., Wang, Z., and Ward, M.P. 2011. The effect of neighbourhood definitions on spatio-temporal
models of disease outbreaks: Separation distance versus range overlap. Preventive Veterinary Medicine
102: 218–229.
Laube, P. and Purves, R.S. 2011. How fast is a cow? Cross-scale analysis of movement data. Transactions in
GIS 15: 401–418.
Legendre, P. and Legendre, L. 2000. Numerical Ecology, Vol. 20, 2nd English edn., Amsterdam, the Netherlands:
Elsevier Science BV.
Longley, P.A., Cheshire, J.A., and Mateos, P. 2011. Creating a regional geography of Britain through the spatial
analysis of surnames. Geoforum 42: 506–516.
Longley, P.A., Goodchild, M.F., Maguire, D.J., and Rhind, D.W. 2010. Geographic Information Systems and
Science. Hoboken, NJ: John Wiley & Sons.
Maddison, D.R. and Schulz, K.-S. 2007. The tree of life web project. http://tolweb.org. (accessed 29 September
2011).
Mayr, E. 1944. Wallace’s line in the light of recent zoogeographic studies. Quarterly Review of Biology 19:
1–14.
Miller, H.J. 1991. Modelling accessibility using space-time prism concepts within geographical information
systems. International Journal of Geographical Information Systems 5: 287–301.
Miller, J., Franklin, J., and Aspinall, R. 2007. Incorporating spatial dependence in predictive vegetation models.
Ecological Modelling 202: 225–242.
Miller, J.T., Murphy, D.J., Brown, G.K., Richardson, D.M., and González-Orozco, C.E. 2011. The evolu-
tion and phylogenetic placement of invasive Australian Acacia species. Diversity and Distributions 17:
848–860.
Mokany, K., Harwood, T.D., Overton, J.M., Barker, G.M., and Ferrier, S. 2011. Combining α- and β-diversity
models to fill gaps in our knowledge of biodiversity. Ecology Letters 14: 1043–1051.
Moles, A.T., Ackerly, D.D., Tweddle, J.C., Dickie, J.B., Smith, R., Leishman, M.R., Mayfield, M.M., Pitman, A.,
Wood, J.T., and Westoby, M. 2007. Global patterns in seed size. Global Ecology and Biogeography 16:
109–116.
Moles, A.T., Warton, D.I., Warman, L., Swenson, N.G., Laffan, S.W., Zanne, A.E., Pitman, A., Hemmings,
F.A., and Leishman, M.R. 2009. Global patterns in plant height. Journal of Ecology 97: 923–932.
Newbold, T. 2010. Applications and limitations of museum data for conservation and ecology, with particular
attention to species distribution models. Progress in Physical Geography 34: 3–22.
Okabe, A., Okunuki, K.-I., and Shiode, S. 2006. SANET: A toolbox for spatial analysis on a network.
Geographical Analysis 38: 57–66.
Önal, H. and Briers, R. 2005. Designing a conservation reserve network with minimal fragmentation: A linear
integer programming approach. Environmental Modeling and Assessment 10: 193–202.
Openshaw, S. 1983. The Modifiable Areal Unit Problem, Norwich, U.K.: Geo Books.
Openshaw, S. 1999. Geographical data mining: Key design issues. In Geocomputation 99, eds. J. Diaz, R. Tynes,
D. Caldwell, and J. Ehlen. Fredericksburg, VA.
Pennisi, E. 2011. Global tracking of small animals gains momentum. Science 334: 1042.
Perez, A.M., Pauszek, S.J., Jimenez, D., Kelley, W.N., Whedbee, Z., and Rodriguez, L.L. 2010. Spatial and phy-
logenetic analysis of vesicular stomatitis virus over-wintering in the United States. Preventive Veterinary
Medicine 93: 258–264.
Prendergast, J.R., Quinn, R.M., and Lawton, J.H. 1999. The gaps between theory and practice in selecting
nature reserves. Conservation Biology 13: 484–492.
Pressey, R.L. 1994. Ad hoc reservations—Forward or backward steps in developing representative reserve
systems. Conservation Biology 8: 662–668.
Riley, J.R., Smith, A.D., Reynolds, D.R., Edwards, A.S., Osborne, J.L., Williams, I.H., Carreck, N.L., and
Poppy, G.M. 1996. Tracking bees with harmonic radar. Nature 379: 29–30.
Rondinini, C., Wilson, K.A., Boitani, L., Grantham, H., and Possingham, H.P. 2006. Tradeoffs of different types
of species occurrence data for use in systematic conservation planning. Ecology Letters 9: 1136–1145.
Rosauer, D.F., Ferrier, S., Williams, K.J., Manion, G, Keogh, S, and Laffan, S.W. 2014. Phylogenetic
Generalised Dissimilarity Modelling: a new approach to analysing and predicting spatial turnover in the
phylogenetic composition of communities. Ecography 37: 21–32.
142 GeoComputation

Savolainen, V., Cowan, R.S., Vogler, A.P., Roderick, G.K., and Lane, R. 2005. Towards writing the
encyclopaedia of life: An introduction to DNA barcoding. Philosophical Transactions of the Royal
Society B: Biological Sciences 360: 1805–1811.
See, L. 2014. Limits to GeoComputation. In GeoComputation, 2nd edn., eds. R.J. Abrahart and L. See,
pp. 417–428. Boca Raton, FL: Taylor & Francis Group.
Sherwin, W.B. 2010. Entropy and information approaches to genetic diversity and its expression: Genomic
geography. Entropy 12: 1765–1798.
Stearns, J.C., Lynch, M.D.J., Senadheera, D.B., Tenenbaum, H.C., Goldberg, M.B., Cvitkovitch, D.G., Croitoru,
K., Moreno-Hagelsieb, G., and Neufeld, J.D. 2011. Bacterial biogeography of the human digestive tract.
Scientific Reports 1: 170.
Taylor, M.D., Laffan, S.D., Fielder, S., and Suthers, I.M. 2006. Key habitat and home range of hatchery-reared
and wild sub-adult mulloway (Argyrosomus japonicus) in a south-east Australian estuary: Finding the
estuarine niche to optimise stocking. Marine Ecology-Progress Series 328: 237–247.
Tello, J.S. and Stevens, R.D. 2012. Can stochastic geographical evolution re-create macroecological richness–
environment correlations? Global Ecology and Biogeography 21: 212–223.
Tobler, W. 1970. A computer movie simulating urban growth in the Detroit region. Economic Geography 46:
234–240.
Tuomisto, H. 2010. A diversity of beta diversities: Straightening up a concept gone awry. Part 1. Defining beta
diversity as a function of alpha and gamma diversity. Ecography 33: 2–22.
Vanderkam, R.P.D., Wiersma, Y.F., and King, D.J. 2007. Heuristic algorithms vs. linear programs for design-
ing efficient conservation reserve networks: Evaluation of solution optimality and processing time.
Biological Conservation 137: 349–358.
Venter, J.C., Remington, K., Heidelberg, J.F., Halpern, A.L., Rusch, D., Eisen, J.A., Wu, D. et al. 2004.
Environmental genome shotgun sequencing of the Sargasso Sea. Science 304: 66–74.
Visser, M.E. and Both, C. 2005. Shifts in phenology due to global climate change: The need for a yardstick.
Proceedings of the Royal Society B: Biological Sciences 272: 2561–2569.
Ward, M.P. and Carpenter, T.E. 2000. Techniques for analysis of disease clustering in space and in time in
veterinary epidemiology. Preventive Veterinary Medicine 45: 257–284.
Ward, M.P., Laffan, S.W., and Highfield, L.D. 2007. The potential role of wild and feral animals as reservoirs
of foot-and-mouth disease. Preventive Veterinary Medicine 80: 9–23.
Whittaker, R.H. 1960. Vegetation of the Siskiyou mountains, Oregon and California. Ecological Monographs
30: 279–338.
Winney, B., Boumertit, A., Day, T., Davison, D., Echeta, C., Evseeva, I., Hutnik, K. et al. 2012. People of the
British Isles: Preliminary analysis of genotypes and surnames in a UK-control population. European
Journal of Human Genetics 20: 203–210.
Zhang, K., Laffan, S.W., Ramp, D., and Webster, E. 2011a. Incorporating a distance cost in systematic reserve
design. International Journal of Geographical Information Science 25: 393–404.
Zhang, K., Laffan, S.W., and Zhang, S. 2010. A spatial approach to select pilot counties for programs to
correct the biased sex ratio at birth in Shandong province, China. International Journal of Geographical
Information Science 24: 403–416.
Zhang, Y., Hao, M., Takekawa, J.Y., Lei, F., Yan, B., Prosser, D.J., Douglas, D.C., Xing, Z., and Newman, S.H.
2011b. Tracking the autumn migration of the bar-headed goose (Anser indicus) with satellite telemetry
and relationship to environmental conditions. International Journal of Zoology 2011:10, Article ID
323847., doi:10.1155/2011/323847.
7 Evolutionary Algorithms
Alison Heppenstall and Kirk Harland

CONTENTS
Abstract........................................................................................................................................... 143
7.1 Introduction........................................................................................................................... 144
7.2 Brief History of EAs.............................................................................................................. 144
7.3 EA Family.............................................................................................................................. 145
7.4 Building Blocks of EAs......................................................................................................... 146
7.4.1 Initial Populations...................................................................................................... 146
7.4.2 Fitness Function......................................................................................................... 147
7.4.3 Selection..................................................................................................................... 147
7.4.4 Recombination/Crossover.......................................................................................... 148
7.4.5 Mutation..................................................................................................................... 148
7.4.6 Single- versus Multiple-Objective Optimisation....................................................... 149
7.5 EA Resources and Software.................................................................................................. 149
7.6 Applications of EAs in Geography........................................................................................ 150
7.7 Example 1: Optimising Model Parameters............................................................................ 151
7.7.1 Model......................................................................................................................... 151
7.7.2 Rule Sets.................................................................................................................... 151
7.7.3 Parameters to Be Optimised...................................................................................... 152
7.7.4 Optimal Solution Space............................................................................................. 152
7.7.5 Statistical Measure of Fitness.................................................................................... 152
7.7.6 Comparison of Parameter Values.............................................................................. 153
7.8 Example 2: Breeding Model Equations................................................................................. 157
7.8.1 Breeding SI Models for the Education Sector........................................................... 157
7.8.2 Simplifying the SI Model Equations......................................................................... 157
7.8.3 Representing the Equations....................................................................................... 158
7.8.4 Calibrating the SI Model Equations.......................................................................... 159
7.8.5 Results........................................................................................................................ 160
7.8.6 Impact of GA Calibration on the SEM...................................................................... 160
7.9 Discussion and Conclusions................................................................................................... 161
References....................................................................................................................................... 163

ABSTRACT
This chapter presents evolutionary algorithms (EAs) with an emphasis on genetic algorithms
(GAs) and their ability to search large areas of a solution space for finding optimal parameters.
EAs can also be used to build models by breeding model equations. We present the building
blocks of EAs followed by a review of EA applications in geography. Two illustrative case stud-
ies are then provided which demonstrate how GAs can be applied to find optimal parameters in
an agent-based model of retail and in breeding spatial interaction models for use in education.
We end with a general discussion on the utility of GAs and, more broadly, EAs in geography and
GeoComputation.

143
144 GeoComputation

7.1 INTRODUCTION
The goal of science is to build better mousetraps. The goal of nature is to build better mice.
Anonymous

Geographers are now building more detailed and complex models that attempt to capture com-
plexity in social and physical systems. However, these models have issues related to parsimony,
that is, they contain a potentially large number of parameters. Some parameters can be deter-
mined through expert knowledge or can be derived from field measurements or social surveys.
However, many others are unknown and therefore require a method to determine their values
through a process of calibration. Finding these parameters via calibration involves the applica-
tion of search or optimisation algorithms. There are numerous classical search methods avail-
able that involve solving continuous or differential functions, for example, Newton’s method or
different linear programming approaches (Zelinka and Snášel 2012). However, these methods
are not effective in solving non-linear, complex problems with large search spaces and many
conflicting objectives. Moreover, convergence to an optimal solution is heavily dependent on
the initial solution, they are not efficient for solving problems with discrete search spaces and,
because they take a single search path through the solution space, they cannot be parallelised
efficiently. For this reason, methods such as evolutionary algorithms (EAs) have been devel-
oped, which are part of the broader field of artificial intelligence (AI). As with other techniques
within AI, EAs have some analogy in biological sciences, in particular in the areas of natural
selection and genetics. This chapter provides a brief overview of EAs, where genetic algorithms
(GAs) in particular have become a valuable part of the GeoComputation (GC) toolkit. In the
first edition of the book, the only chapter in the area of EAs was by Diplock (2000) on the use
of genetic programming (GP) to breed model equations. However, GAs are much more com-
monly used both in geography and other disciplines and therefore warrant a complete chapter in
this second edition. We first provide a brief history of EAs and then present an overview of the
methods that comprise the EA family. Following this, details of the generic parameters of EAs
are provided along with an overview of EA use in geography. The focus then turns to GAs with
the presentation of two case studies from human geography (in the areas of retail and education)
to demonstrate how GAs can be used for optimal calibration of model parameters and for the
breeding of model equations. Finally, we conclude with a broader discussion of the usefulness of
GAs and EAs in geography and GC.

7.2  BRIEF HISTORY OF EAs


The idea of viewing evolution as a computational process was first formed early in the twentieth
century (Wright 1932). However, it was the emergence of both digital computing and the research
of three prominent groups in the 1960s that catalysed the development of EAs, which has shaped
the modern field (De Jong 2006). In the 1960s, at the Technical University of Berlin, Rechenberg
and Schwefel began developing evolutionary processes to solve real-valued parameter optimisa-
tion problems (Rechenberg 1965). From this, a family of algorithms called evolutionary strategies
(ESs) emerged. Concurrently, at University of California, Los Angeles (UCLA), Fogel et al. (1966)
developed the idea of intelligent agents represented as finite state machines within a framework
they called evolutionary programming (EP). Against the backdrop of this work, John Holland and
his team at the University of Michigan viewed evolutionary processes as a crucial component in the
design and implementation of systems that are adaptive and robust, that is, able to cope with envi-
ronments subject to uncertainty and change (Holland 1962; De Jong 2006). Holland’s view empha-
sised the need for systems that self-adapt over time as a function of feedback obtained through
interaction with the environment in which they operate: this led to a family of reproductive plans
which formed the basis for current GAs.
Evolutionary Algorithms 145

The 1970s and 1980s saw EAs moving towards both application to more complex problems and
to the development of new EA-based problem solvers for other problem domains. With the 1990s
witnessing a closer bringing together of the field, the term evolutionary computation made its
first appearance. This period was also characterised by a cross-fertilisation of ideas giving rise to
methods such as GENITOR (Whitley et al. 1988), GP (see Beriro et al. 2014 for a full chapter on
the subject), messy GAs and hybrid methods, that is, the integration of EAs with other technologies
such as neural networks and fuzzy logic in the form of soft computing (Pratihar 2008). Today, the
discipline is still evolving, with issues such as self-adapting systems (Meyer-Nieberg and Beyer
2006), coevolutionary systems (Bull 2001), agent-orientated models (Kisiel-Dorohinicki 2002) and
GA hybridisation with tools from artificial life such as swarm intelligence (Iba and Noman 2012)
amongst those being explored. EAs are now commonly used in many different areas including
engineering (Annicchiarico 2005), biology (Fogel and Corne 2003), financial forecasting (Iba and
Aranha 2012), operations research and the social sciences (Brandl 2007). For a detailed overview of
the early development of EAs, Fogel (1998) provides an excellent introductory reference.

7.3  EA FAMILY
An EA is a stochastic iterative procedure for generating a set of possible solutions for a problem
that draws heavily on evolutionary processes. There are many different variants of EAs; however,
the underlying principle behind each technique is universal. Initially, the population, which is com-
prised of a set of individuals, is generated at random or by means of a heuristic seeding process.
Each individual, which comprises one or more chromosomes, is then assigned a fitness value: this
is a measure of how good the solution is for the problem being considered. All individual solutions
are evaluated; those with high fitness values have an increased probability of being selected as
parents for the next generation of individual solutions. This occurs through recombination methods.
New solutions are added into the population through mutation. These processes continue until a
termination criterion is met, such as reaching the maximum number of generations. Figure 7.1a pro-
vides a diagrammatic overview of an EA, with pseudocode representing the process in Figure 7.1b.
At the end of the 1960s, there were three main families of EAs: ES, EP and GAs. However,
with subsequent research, new branches have developed. These branches of the EA family tree are
presented in the list below. Detailed overviews of EAs can be found in Davis (1991), Michalewicz
(1996), Bäck and Schwefel (1993), Mitchell (1998), Eiben and Smith (2003), Ahn (2006), Fogel
(2006), Yu and Gen (2010) and Goldberg (2013), while other key references are supplied below with
each branch:

GAs: GAs seek the solution of a problem in the form of strings of numbers (or arrays of other
elementary types) by applying operators such as recombination and mutation (Holland
1975). The solution is in the form of optimised individual or multiple values, normally
parameter values. This type of EA is often used in optimisation problems.
EP: EPs differ from GAs in that they focus on the adaption of individuals rather than on the
evolution of their genetic information (Fogel et al. 1966). The structure of the program is
to be optimised, while its numerical parameters are allowed to evolve. EPs do not follow
the main genetic operators found in GAs as closely; for example, crossover is not used and
mutation takes a different form.
ESs: This branch is similar to EP, but with selections and mutations made differently. These
techniques are characterised by manipulating arrays of floating-point numbers. As Alba
and Cotta (2006) state, ‘a very important feature of ES is the utilisation of self-adaptive
mechanisms for controlling the application of mutation’. Some key references include the
works of Schwefel (1995) and Rechenberg (2000).
GP: GPs evolve whole programs to solve problems. They are similar to GAs, but use program
fragments instead of strings. Functions are represented as parse trees where leaves are
146 GeoComputation

Calculate the
Initialise Assess the
objective values
population fitness of each
of the
individual
individuals

Creation of new Selection of


individuals via the fittest
crossover and individuals for
mutation reproduction

(a)

(b)

FIGURE 7.1  (a) Basic operation of EAs. (b) Pseudocode representing the basic process.

operands and internal nodes are branches. Programs are then bred by branches of the parse
trees being swapped (and often implemented through the Lisp programming language)
(Koza 1992). See Beriro et al. (2014) for further applications of GP in geography and GC.
Classifier systems: This approach combines many methods of adaption into a single form that
possesses different types of learning and evolution (Urbanowicz and Moore 2009).
Gene expression programming (GEP): This approach is used to learn about the relation-
ships between variables in data sets and builds models to try to explain these relationships
(Ferreira 2001; Zhou et al. 2003; Beriro et al. 2013).
Computational evolution: Banzhaf et al. (2006) proposed a new field called computational
evolution in 2006, which could solve more complex problems including more open-ended
ones than current EAs. These approaches would draw upon more complex concepts in bio-
logical evolution across a range of scales from molecular to ecosystem incorporating ideas
such as feedback, self-regulation and tuning. Although still largely in the concept stage,
these approaches may benefit geographical problems in the future.

7.4  BUILDING BLOCKS OF EAs


7.4.1 Initial Populations
The first stage in the operation of an EA is the initialisation or creation of a population. This ini-
tial population is simply a pool of potential solutions that have been generated either randomly or
Evolutionary Algorithms 147

by seeding. Randomly generated solutions are the preferred method for problems about which no
a priori knowledge exists or for assessing the performance of an algorithm. However, there is the
danger that the initial population does not adequately cover all of the search space; in these cases,
researchers tend to use systematic initialisation procedures. Random initialisation of the population
can be complemented by inclusion of heuristic solutions in the initial population. This allows the
EA to use solutions provided by other algorithms. This is termed seeding and has been found to
benefit the algorithm in terms of both speed and the quality of the final solution found (Ponterosso
and Fox 1999; Alba and Cotta 2006).
The second method uses a priori knowledge about the problem. In these cases, the EA starts the
optimisation with a set of approximately known solutions and will therefore converge to an optimal
solution faster than starting with the randomly chosen initial population of solutions.

7.4.2 Fitness Function
One of the most important components of building a successful EA is the fitness function. As
Alba and Cotta (2006) state, it is ‘the unique point of interaction with the problem that is intended
to be solved’. The fitness function quantifies how well the proposed solution performs for a prob-
lem. This function could be a set of criteria that needs to be fulfilled; for example, Xiao (2008)
used population equality as the fitness function in the application of political redistricting prob-
lems or simply a goodness of fit statistic such as standardised root mean square error (SRMSE)
(Heppenstall et al. 2007a).

7.4.3  Selection
In order to evolve better performing solutions, a sample of the fittest individuals of the popula-
tion are selected and randomly exposed to mutation and recombination. Individuals are nor-
mally selected through fitness-proportionate methods (see Table 7.1). This produces offspring
or what are the solutions for the next generation. The least fit solutions die out through natural
selection as they are replaced by new recombined, fitter, individuals. Evaluation of the fitness
values of the individuals involves some form of comparison between observed and model data or
a test to see if a particular solution meets a predefined criterion or constraint. For further details
on these selection types, see Whitley (2001), Bickle and Thiele (1995), Cantú-Paz (2002) and
Goldberg and Deb (1991).

TABLE 7.1
Description of Several of the Most Common Forms of Parental Selection
Selection Type Description
Ranking The population of individual solutions is sorted from best to worst (based on the fitness metric).
The number of copies that an individual solution receives is given by an assignment function and is
proportional to the rank assignment of an individual. This method avoids the appearance of
superindividuals (an individual whose fitness is much better than that of the remaining individuals).
Tournament A random number of individuals are selected from the population. The best individual from this group
is chosen as a parent for the next generation. This process is repeated until the mating pool is filled.
Roulette wheel Individuals are mapped to contiguous segments of a line, such that each individual’s segment is equal in
size to its fitness. A random number is generated and the individual whose segment spans the random
number is selected. This process is repeated until the desired number of individuals is obtained.
Truncation Truncation sorts individuals according to their fitness (from best to worst). Only the best individuals are
selected to be parents.
148 GeoComputation

0ô0 0ôô 0ô0ôô0ô0 0Ù00Ùô0Ù0ôô0Ù0


ôô0ôô0 ô0 0ô0 0ôô
Parents
ôô0Ùô0 ô00Ù00ôÙ

0ô0 0ôô ô0 0ô0 0ôô Descendant 0ô0ôô00ô0ô00ôô

Cut point
(a) (b)

FIGURE 7.2  Two examples of recombination on bitstrings: (a) single-point crossover and (b) uniform
crossover.

7.4.4 Recombination/Crossover
Recombination is the process by which new individuals (offspring) are created through combining
information from both parents. The resulting offspring inherits components from both parents. This
allows the EA to explore new areas of solutions in the search space. Without recombination, the
offspring are simply duplicates of the parents. This does not give any opportunity for improving the
fitness of the population.
Figure 7.2 shows the classic operators that are used in GA: single-point crossover and uniform
crossover. It is important to note that the choice of operator must match the representation of the
solution chosen. For example, representation in GAs is often binary, and hence operators such as
single-point and uniform crossover should be used. This would not be appropriate for GP where
representation is through trees.

7.4.5  Mutation
The main challenge in finding the global solution lies with the presence of multiple local minima,
that is, there are potentially many different solutions available for the problem. Graphically, this
can be represented by a series of mountains and valleys (see Figure 7.3). Finding the lowest point in
a particular valley is relatively easy; a simple progression down the slope will often give the local
minimum. However, locating the global minimum is a more challenging problem; there is no cer-
tain way of knowing which valley it is located within, or even how many valleys there are, without
fully searching the whole of the parameter space.

C
A D

FIGURE 7.3  Example of a function containing multiple maxima and minima to demonstrate the difference
between local and global extrema. A and C represent local maxima; D and E are two of four local minima; F
is the global minimum.
Evolutionary Algorithms 149

FIGURE 7.4  Example of mutation in an EA.

However, introduction of the process of mutation can push EAs towards a global solution.
Through the alteration of one or more parts of the chromosome, mutation introduces diversity into
the selected population that can potentially breed fitter solutions and allow the EA to find the global
solution. Figure 7.4 presents an example of a bitstring that is typical of use in EAs. However, other
data representations require different mutation operators; see Michalewicz (1996) for more details.
In practice, the mutation rate is generally a probability that has been determined by initial exper-
imentation. Too high a mutation rate will introduce too much variability, although this can produce
good results quickly. Too low a rate may be insufficient for breeding a fit solution unless the indi-
vidual is already well adapted.

7.4.6  Single- versus Multiple-Objective Optimisation


As mentioned previously, EAs are often used to calibrate models by searching for optimal model
parameters. If the model performance is determined through a single goodness of fit measure, then
these are called single-objective optimisation problems. However, in many situations, a single per-
formance measure is not sufficient, and model performance is judged by multiple criteria which
may reflect conflicting objectives. These are termed multi-objective optimisation problems, and there
is no unique solution that simultaneously optimises all objectives. Thus, the resulting outcome is
a set of optimal solutions that have varying degrees of trade-off between the different objectives.
Graphically, these optimal solutions lie on a curve called the Pareto-optimal front (Deb 2009). These
are also referred to as non-dominated solutions because all of the solutions on the front are equally
optimal. One of the most common ways of handling multi-objective optimisation is to apply a weight
to each individual objective function and to then combine them in an additive approach thereby
transforming the problem into a single-objective optimisation problem. More information on solving
multi-objective optimisation problems can be found in Abraham et al. (2006) and Deb (2009).

7.5  EA RESOURCES AND SOFTWARE


There are large amounts of information available via online resources, academic journals and ref-
erence books (see the reference list) for learning more about EAs and for writing your own code
or high-level programs. A basic introduction to GAs with interactive Java applets can be found at
http://www.obitko.com/tutorials/genetic-algorithms/ (Obitko 1998), while a field guide to GP, which
contains useful information and links, can be found at http://dces.essex.ac.uk/staff/rpoli/gp-field-
guide/ (Poli et al. 2008). There are freely available off-the-shelf packages such as the Java Genetic
Algorithm platform (JGAP) (Meffert and Rotstan 2012), or for those interested in programming, a
useful starting point is http://sourceforge.net/directory/development/algorithms/genetic-algorithms/
(SOURCEFORGE 2014), which provides a list of programs in different coding environments. Open-
source Java software for assessing EA algorithms with a focus on data mining can be found at http://
www.keel.es<http://www.keel.es/ (KEEL 2004), while an object-orientated platform (in Java) for
implementing EA algorithms can be found at http://watchmaker.uncommons.org<http://watchmaker.
uncommons.org/ (Dyer 2006). If you are fluent in MATLAB, a GA toolbox has been developed by
the University of Sheffield – http://codem.group.shef.ac.uk/index.php/ga-toolbox (CoDeM 2013) –
while there is also a GA package available for R (Scrucca 2013). Finally, the JNEAT (NeuroEvolution
of Augmenting Topologies) modelling platform is freely available to download from http://www.
cs.utexas.edu/users/ai-lab/?jneat (Stanley and Vierucci 2002), which can be used to evolve neural
networks using EAs.
150 GeoComputation

7.6  APPLICATIONS OF EAs IN GEOGRAPHY


Within the geographical literature, the use of EAs has primarily been limited to the application
of GAs across a range of different areas. The first main area is model calibration, which was also
one of the first applications of GAs in geographical research, that is, to determine the parameters
of a spatial interaction (SI) model (Diplock and Openshaw 1996; Openshaw 1998). More recently,
GAs have been used to successfully calibrate the parameters of cellular automata (CA) models
of urban growth, land use and the spread of forest fires (Li et al. 2007, 2013; Shan et al. 2008;
Al-Ahmadi et al. 2009; Vahidnia et al. 2013) where GAs have often been shown to be superior to
other search methods.
In the past, some limited work has been undertaken in the area of cartography, for example,
using GAs for automatic cartographic label placement, map generalisation, line simplification and
in the specification of optimal class intervals for choropleth maps (Dijk et al. 2002; Yamamoto et al.
2002; Armstrong et al. 2003).
Another main area where GAs have been applied is to multi-criteria evaluation, that is, to opti-
mise the weights of different factors and/or to choose optimal scenarios for land use planning, suit-
ability analyses and route planning. For example, Huang et al. (2004) used a GA to determine the
weights of different factors including safety, costs and security to calculate the suitability of routes
for transporting hazardous materials in Singapore, while Tsou (2010) used a GA for both the initial
population determination and route planning for safety. Other examples include shortest path opti-
misation (Mooney and Winstanley 2006), optimisation of a tourist sightseeing route (Huang et al.
2006) and rail line optimisation (Jha et al. 2007). GAs have also been used for allocating services
optimally, for example, the location and number of ambulance stations (Sasaki et al. 2010; Comber
et al. 2011) and medical centres (Aghamohammadi et al. 2013) as well as the recent work on land use
allocation framed as a multi-objective optimisation problem (Chandramouli et al. 2009; Neema and
Ohgai 2010, 2013; Cao et al. 2011, 2012; Haque and Asami 2011; Fotakis and Sidiropoulos 2012;
Gong et al. 2012).
Other miscellaneous areas of GA application include the design of electoral zones, land
parcels and other redistricting problems (Bacao et al. 2005; Datta et al. 2012; Joshi et al. 2012;
Demetriou et al. 2013), the creation of synthetic spatial data (Hermes and Poulsen 2012), the
identification of crime hot spots and other classification problems (Oyana and Dai 2010; Wu and
Grubesic 2010) and the estimation of missing urban areas in OpenStreetMap (Hagenauer and
Helbich 2012).
Although the majority of applications fall within the scope of human geography, there are also
examples within physical geography. These include the optimisation of a neural network model con-
figuration for prediction of suspended sediment (Heppenstall et al. 2007b), the estimation of land
surface biogeophysical variables (Liang 2007), the calibration of fuzzy membership functions for
an air pollution model of Tehran (Shad et al. 2009), the optimal design of a water quality network
(Park et al. 2006) and the assessment of groundwater pollution vulnerability in a Korean aquifer
(Ahn et al. 2011). There is also a very extensive literature on the use of EAs for the calibration of
hydrological models and in water resource planning and management (e.g. see Jain and Srinivasulu
2008 and Nicklow et al. 2010 for comprehensive reviews).
Other types of EAs have also been applied to geographical problems. Early work includes the use
of GP for breeding SI models (Diplock 1998) and the more recent application of GP in combination
with GAs to create gridded populations of urban and rural areas (Liao et al. 2010). As GEP is a more
recent development, applications have only more recently appeared in geography, for example, in
multisite land use allocation (Eldrandaly 2010) and in modelling evaporation and other hydrological
problems (Beriro et al. 2013, 2014).
In the next two sections, we present examples of GAs applied to optimising model parameters
and to breeding model equations.
Evolutionary Algorithms 151

7.7  EXAMPLE 1: OPTIMISING MODEL PARAMETERS


In this section, a simple optimisation problem is presented, that is, how can we find the fittest
(optimal) values for the set of parameters that are used within a simple rule set operated by an
agent-based model (ABM)? The parameters that form the core of the rule set (and as such produce
fit solutions) can be determined through experimentation, analysis of existing data or recommenda-
tions from the literature. However, these approaches all contain a degree of subjectivity. Using a GA
allows both a vast number of potential parameter combinations to be searched and it lends some
objectivity to the final choice of parameters.

7.7.1  Model
An ABM was developed to simulate the spatial and temporal variations in petrol prices observed
over Yorkshire in northern England, where each agent in the model is a petrol station. Underlying
the ABM is an SI model which is comprised of two parts:

Sˆijm = δmj exp  −β dij − λp mj  (1 + ε) (7.1)


Sˆijm
Sijm = Hi F m

j
ˆ
Sijm (7.2)

where
Sijm is the amount of fuel m sold by garage j to ward i
δmj is 1 where garage j sells fuel m and 0 otherwise
dij is the distance between ward i and garage j
p mj is the price of fuel m at garage j
Hi is the number of households within the ward i
Fm is the amount of fuel of type m required per car per day
ε is a stochastic term

Equation 7.1 calculates the relative amount of fuel sold by each petrol station to the population
of each ward (UK census area of ~100–30,000 people). The amount sold to a given ward decays
exponentially with the distance between the ward centroid and the station and also with a rise
in price. This exponential fall-off is traditional in SI models and well matched in many retailing
examples (Birkin et al. 1996). Equation 7.2 ensures that the total volume of fuel sold to each
ward equals the demand HiFm and gives the actual amount of fuel sold in each ward. Note
that in this example, m was limited to one fuel type, that is, unleaded petrol. The two coefficients,
λ and β, are usually determined by calibrating the model with real data. More details of the
ABM and the calibration process can be found in Heppenstall (2004) and Heppenstall et al.
(2005, 2006).

7.7.2 Rule Sets
An individual petrol station was represented using the object-orientated language of Java. Each petrol
station agent was supplied with knowledge of the price of petrol at all other stations. Other variables
supplied to the petrol station agents included production costs and the number of customers within
their neighbourhood, defined as a fixed-radius circular-distance around the petrol station. Each
petrol station agent was able to view the prices of neighbouring stations (thus sharing information),
152 GeoComputation

and each applied a common series of rules to adjust its own prices. In the main, these rules involve
the implementation of behaviour based on the price set by the neighbouring stations and their dis-
tance away. A typical rule might be if my price is X pence cheaper or X pence more expensive than
my nearest neighbour, set my price to my neighbour’s price. The overall aim of the simulation was
to evolve a solution that resembled the processes occurring in the real system. Thus, the optimisa-
tion is not aimed at solving an equation; instead, we are interested in emerging behaviour through
exploitation of the ABM paradigm.

7.7.3  Parameters to Be Optimised


The rules operated by each petrol station agent are based on industry knowledge and implemented
after experimentation with different parameters (listed in Table 7.2). It is these eight parameters (or
what are referred to as genes in GA terminology) that the GA will optimise. These are β, λ, costTo-
Produce, neighbourhood, fixedCosts, overprice, changeInProfit and undercut. Early experimenta-
tion revealed that all of these parameters exert some influence over the performance of the model.
The values associated with each parameter are continuous, and a range of allowed values will be
assigned to each parameter based on values obtained through prior experimentation. Clearly, the
ranges have to be sensible if the GA is to operate successfully since the populations will be ini-
tialised and reproduce using the values within these ranges. The range of values that will be used is
summarised in Table 7.2.

7.7.4 Optimal Solution Space


One of the key factors in the success of GAs is finding the correct balance between the amount of
exploration and exploitation needed (Flake 2001). Several studies have concentrated on developing
optimal parameter settings for GAs (see De Jong 1975; Grefenstette 1986; Schaffer et al. 1989).
Each study presents a different set of optimal parameters showing that these optimal values vary
for the problem under consideration. For example, suggested values for population size range from
50 to 100 (De Jong 1975), 20 to 30 (Schaffer et al. 1989) and 30 (Grefenstette 1986). These values
are obviously dependent on the problem under investigation. Selection, mutation and recombination
methods were selected after reviewing the literature and initial experimentation using the model.
The methods selected are summarised in Table 7.3.

7.7.5  Statistical Measure of Fitness


The SRMSE was used to determine the fitness of each string of variables or chromosomes. Originally
put forward by Knudsen and Fotheringham (1986), it is given by

TABLE 7.2
Definition and Range of Allowed Values Assigned to Each Parameter in the GA
Variable Meaning Range of Values
β Coefficient controlling distance 0.000003–0.003
λ Coefficient controlling price 0.001–1.5
costToProduce The amount per litre that it costs the station to produce and sell the petrol 60.0–70.0 p
FixedCosts The amount the petrol station has to pay per day to keep running 100–10,000.0 p
ChangeInProfit The level of profit under which the station will not change its strategy 2,000–5,000 p
Undercut The amount by which a station can be cheaper than its neighbour 0.1–5.0 p
Overprice The amount by which a station can be more expensive than its neighbour 0.1–5.0 p
Neighbourhood The distance that petrol stations treat as their neighbourhood 1,000–10,000 m
Evolutionary Algorithms 153

TABLE 7.3
Summary of the Methods and Parameters Used within the GA
Parameter/Method Value Selected on the Basis of
Population initialisation Random Literature
Number of generations 100 Experimentation
Population size 100 Experimentation
Selection Linear ranking Literature
Selection pressure 2.0 Literature
Recombination Intermediate recombination Literature
Recombination value 0.25 Literature
Mutation Chance of mutation 1/8 (since there Literature
are 8 parameters to optimise)
Number of mutations per generation 3.0 Experimentation
Convergence factor 0.99 Experimentation

∑( y − y ) /n (7.3)
t
i i
2

where
yit is the predicted value of the dependent variable at petrol station i
yi is the measured value at station i
n is the total number of stations
y is the mean value of the yi

While yit and yi could be compared at each time step during the simulation, in this example, they are
only calculated on the last day of the simulation.

7.7.6 Comparison of Parameter Values


Table 7.4 details the optimal parameters derived by modeller-driven experimentation (based on
early experimentation and numerical exploration) and the optimal parameters suggested by the GA.
The GA was run five times to give an indication of the spread of values produced. Figure 7.5 shows
this spread as a function of the SRMSE for each parameter.
The GA values for β and λ were both reasonably close to the parameters derived by modeller-
driven experimentation. As evident from Figure 7.5a and b, neither of these values produced definite
clusters; this is supported by the standard deviation (SD) in Table 7.4. This implies that reason-
able solutions can be produced from a wide range of values and do not exert influence on the
other variables.
The GA gave the neighbourhood parameter a slightly smaller value than the modeller-derived
values (Figure 7.5h). The overprice parameter was well clustered and in good agreement with the
modeller-derived value (Figure 7.5g). The undercut value (Figure 7.5h) was also quite tightly clus-
tered. There is a large difference between the GA predicted value (£1) and the modeller-derived
value (£40) for the changeInProfit (Figure 7.5e). There is also a very large SD (£22.80) for the
parameter indicating a large degree of uncertainty in the optimal value. The system modelled here
is highly complex with many non-linear processes contributing to price setting at each station. One
of the interesting findings here was the control over the stability of the system that this parameter
appeared to exert.
154 GeoComputation

TABLE 7.4
Comparison of Parameter Values Derived Using
Modeller-Driven Experimentation and the GA
Parameter Modeller-Derived Value GA Value SD (5 GA Runs)
β 0.0003 0.0002 2.04 × 10−4
λ 0.7 0.4 0.176
fixedCosts (£) 80.00 12.73 15.9
costToProduce (p) 66.00 65.75 2.27
changeInProfit (p) 40.00 1.0 22.8
Overprice (p) 5 4.4 0.73
Undercut (p) 1 0.8 1.12
Neighbourhood (km) 5.0 3.6 1.21

Note: SD is standard deviation.

The costToProduce and fixedCosts parameters are closely linked. Profit will decrease as a result
of an increase in either or both of these parameters. The GA optimal value for costToProduce
almost matched the modeller-derived value. However, the GA values were not tightly clustered
(Figure 7.5d) with an SD of 2.27 p, again suggesting that a reasonable solution can be obtained from
a range of values. The GA predicted value for fixedCosts (£12.73) is considerably smaller than the
value derived by the modeller (£80). However, in Figure 7.5c, the best solutions for the fixedCosts
are not tightly clustered – they span a £20 range. This suggests that this parameter does not have as
great an effect on the overall solution.
The application of a GA provides interesting insights into the system under consideration. The
parameters produced by the GA are not constrained to agree with the modeller-driven parameters;
they are merely chosen to minimise the SRMSE of the model. The results provide reassurance that
the model is behaving in a realistic manner and the assumptions made in deriving the parameter
values were reasonable. Overall, the GA parameters produced a lower error than the modeller-
derived parameters. Some of the parameters produced tight clusters suggesting that the GA found
the optimal values (e.g. costToProduce). However, the results of other parameters were rather
more dispersed; this suggests that potentially there is more than one high-quality solution or
there are two similar minima. Overall, the GA provides an excellent methodology for refining the
model parameters.
It is encouraging that the modeller-derived and GA-derived parameters are closely aligned.
However, these numbers do not give any idea of whether the rule set that each petrol station agent
operates reproduces spatial variations observed within the real system. Figure 7.6 presents a
comparison of the prices produced at the end of the experimental period with the modeller-driven
and GA-parameterised model both initialised with all the stations at 71 p. Figure 7.6c shows that
the GA parameter values are recreating the rural–urban divide seen in the real data (Figure 7.6a).
For example, the petrol stations within the predominantly rural area of North Yorkshire are sus-
taining higher prices than West or South Yorkshire. The main difference lies in the magnitude
of the prices. On average, the prices produced by the GA are approximately 1–2 p lower than the
real data. This probably reflects a mild disequilibrium in the real prices, for example, as the result
of crude oil price changes.
The solution produced by the GA parameter values has improved on the model by reproducing
(through interplay of the rules) the lower prices surrounding Scarborough and Harrogate
(Figure 7.6b and c). It has also successfully identified the lower-priced areas, which are in fact
cities, within West and South Yorkshire, and the area of higher prices between Wakefield and
Barnsley.
Evolutionary Algorithms 155

0.001 0.8
Default Default
0.7
0.0008
0.6

0.0006 0.5
0.4

λ
β

0.0004 0.3
0.2
0.0002
0.1
0 0
0.008 0.009 0.01 0.011 0.012 0.013 0.014 0.015 0.008 0.009 0.01 0.011 0.012 0.013 0.014 0.015
(a) SRMSE (b) SRMSE

40 70
Default Default
35 69
30 68

CostToProduce (p)
FixedCost (£)

25 67
20 66
15 65
10 64
5 63
0 62
0.008 0.009 0.01 0.011 0.012 0.013 0.014 0.015 0.008 0.009 0.01 0.011 0.012 0.013 0.014 0.015
(c) SRMSE (d) SRMSE

5000 3.5
Default
3
4000
No change profit (p)

2.5
Max. undercut (p)

3000 2

2000 1.5

1
1000
0.5
Default
0 0
0.008 0.009 0.01 0.011 0.012 0.013 0.014 0.015 0.008 0.009 0.01 0.011 0.012 0.013 0.014 0.015
(e) SRMSE (f) SRMSE

5 10,000
Default

4 8,000
Max. overprice (p)

Distance scale (m)

3 6,000

2 4,000

1 2,000
Default
0 0
0.008 0.009 0.01 0.011 0.012 0.013 0.014 0.015
0.008 0.009 0.01 0.011 0.012 0.013 0.014 0.015
(g) SRMSE (h) SRMSE

FIGURE 7.5  Variation in model parameters plotted against SRMSE for simulations with different
GA control parameters. (a) β, (b) λ, (c) fixedCosts, (d) costToProduce, (e) changeInProfit, (f) Undercut,
(g) Overprice, (h) Neighbourhood. (From Heppenstall, A.J. et al., Environ. Plann. B, 34(6): 1051, Pion,
p. 1064, Figure 6, 2007a.)
156 GeoComputation

Harrogate
York
Bradford Leeds
Hudders-
field Wakefield
Barnsley Doncaster
Sheffield

(a)

North
Yorkshire Scarborough

West Yorkshire

South Yorkshire

(b)

Scarborough

(c)

County boundary Price (p) N


Yorks region 74.89
Petrol station 40 20 0 40
City 67.90
km

FIGURE 7.6  Comparison of the model results for Yorkshire using (b) the modeller-derived parameters and
(c) the optimal parameters from the GA using data from West Yorkshire. In each run, the stations were
initialised with a constant price of 71 p. Also shown (a) are the real data for 27 July. (From Heppenstall, A.J.
et al., Environ. Plann. B, 34(6), 1051, Pion, p. 1067, Figure 8, 2007a.)
Evolutionary Algorithms 157

TABLE 7.5
Classification of Super Group Categories in the NCCOA with the Origin of
Students Expressed as a Percentage in Each Super Group
Group Name Key Characteristics % of Pupils
1 Blue collar communities Terraced housing/routine, semi-routine employment 20.2
2 City living Born outside the United Kingdom/no central heating 2.6
3 Countryside 2+ cars/work from home/detached housing 2.1
4 Prospering suburbs 2+ cars/detached housing 22.3
5 Constrained by All flats/lone parent households/routine, semi-routine 17.4
circumstance employment/unemployment/public renting
6 Typical traits Terraced housing/work part-time 21.2
7 Multicultural Born outside the United Kingdom/public transport to 14.2
work/students/no central heating/ethnic minority groups

7.8  EXAMPLE 2: BREEDING MODEL EQUATIONS


The example earlier presented a GA that was utilised to optimise the parameters in a rule set
operated by petrol station agents where the ultimate aim of this model was profit maximisation.
The work presented in this section uses classic SI models applied to journey-to-school data. In
particular, we are interested in using GAs to search a variety of possible SI models with the aim
of producing optimal model equations. Here, the SI models are concerned with representing
students from different socioeconomic classes (based on the National Census Classification of
Super Output Areas [NCCOA] – see Table 7.5). Once calibrated by the GA, these SI models (or
layers representing different groups of pupils) are then incorporated into a larger spatial educa-
tion model (SEM). The ultimate aim of this modelling framework was to provide a robust school
network planning tool that could be used to support planning and decision making through the
simulation of supply and demand interactions. A full description of the SEM can be found in
Harland (2008).

7.8.1  Breeding SI Models for the Education Sector


Creating an SI model that meets the particular requirements of the education supply and demand
sector is a challenging area. For example, SI models need to be able to account for factors such as
school capacities, admission criteria, school selection behaviour and boundary effects; for further
details, see Harland and Stillwell (2010). Developing an equation to give the best solution for all of
these factors requires a method that can quickly search multiple solutions; this makes this problem
an area ripe for the application of GAs. As mentioned earlier, the model equations that will be opti-
mised form part of the larger SEM. Within this example, a GA was used to optimise SI equations
that formed an important aspect of the broader calibration process.

7.8.2  Simplifying the SI Model Equations


Diplock (1998) and Diplock and Openshaw (1996) provide guidance on implementing GAs in SI mod-
els by advising that the SI model equation should first be simplified. We follow the recommendation
of Openshaw (1998) by separating the model equation and the model constraint. Consider the fol-
lowing example using a typical origin-constrained SI model:
158 GeoComputation

Tij = Oi AiW j exp(−βdij ) (7.4)



where
Tij is the simulated flow between origin i and destination j
Oi is the known origin mass (i.e. the pupil population in this case study)
Ai is the balancing factor to constrain the model, ensuring all origin masses are consistent with
those observed
Wj is the destination attractiveness (i.e. the average point score for the school in this case)

Parameter β is calibrated and Ai is calculated using the following equation:

1
Ai =
∑ W exp(−βd ) (7.5)
j
j ij

This origin-constrained model equation can be reordered into Equations 7.6 and 7.7
(Openshaw 1998):

Tij* = Wj exp(−β dij ) (7.6)


Oi
Tij = Tij*

j
Tij (7.7)

This resulting simplification of the model calculation separates the constraint from the model equa-
tion. Therefore, the constraint can be applied to different model forms without altering the con-
straint calculation. Here, beta is a parameter to be optimised controlling the relative flow (Tij*)
between i and j as a function of distance. It does not depend at all on the absolute values of the flow
and hence is independent of the constraints Oi.

7.8.3 Representing the Equations


As with the previous case study, a crucial step is to formalise the model (or parameters) to be opti-
mised in a way that is consistent with the structure of a GA. Within this example, each equation (or
layer representing different groups of pupils) can be represented as a chromosome that is made up
of different genes. Here, genes are composed of four separate components: a data item, a parameter,
a function and an operator. Following the advice of Openshaw (1998), the component parts of the
gene can be encoded into strings that can be manipulated and decoded to form valid equations. To
encode and decode the genes, the lookup tables shown together as Table 7.6 were used.
If we were to take a typical representation of an SI model,

Tij = kOi D j f (dij ) (7.8)


and encode the different components, the codes in Table 7.7 would be produced. For valid
equations to be built, each gene must contain one of the four component parts discussed earlier.
However, the final gene in the SI model used in this example has no operator in the equation.
Therefore, the same operator, that is, 3, is encoded for this component of each gene, and when
the equation is resolved, the final operator in the equation is ignored. Concatenating these three
Evolutionary Algorithms 159

TABLE 7.6
Lookup Tables for Encoding the Four Components of Each Equation
Data Code Parameter Code Function Code Operator Code
Oi 1 None 0 None 0 + 1
Dj 2 Parameter 1 exp 1 – 2
dij 3 Constant 2 log 2 × 3
∑Oi 4 1 3 ln 3 ÷ 4
∑Dj 5 –1 4 1/x 4

∑dj
ij
6 x2 5

∑di
ij
7 x 6

∑∑d
i j
ij
8 xy 7

Source: Harland, K. and Stillwell, J., Commuting to school: A new spatial interaction
modelling framework, in Technologies for Migration and Population Analysis:
Spatial Interaction Data Applications, eds. Stillwell, J.C.H., Duke-Williams, O.,
and Dennett, A., IGI Global Snippet, 2010.

TABLE 7.7
Encoded Equation for
a Typical SI Model
Gene Code
kOi 1,2,0,3
Dj 2,0,0,3
exp (−1dij ) 3,4,1,3

encoded genes together in the order that they would be encountered produces the following
encoded equation: 1,2,0,3,2,0,0,3,3,4,1,3.
One final note on encoding is as follows: many equations contain parentheses that must be
accounted for. Encoding these is simple where each opening and closing parenthesis is assigned a
specific code. However, the following rules must be followed: the gene cannot be altered and they
must form pairs.

7.8.4 Calibrating the SI Model Equations


Each form of an equation is calibrated using the GA as an independent calibration process with
specified upper and lower limits for the parameters, but no limit is placed on the number of possible
parameters in an equation. The GA is run to optimise the fit on each model form by adjusting the
parameter values. The optimised fitness values are compared, and the fittest equations are bred
together to create new forms of the equation with genes mutated to a specified rate. The new equa-
tion forms are subsequently calibrated to assess the model fitness. This process of calibration and
equation generation is repeated until an equation is generated that surpasses a predefined fitness
threshold or the equation generation GA reaches a maximum number of generations.
160 GeoComputation

As with the retail example, the SRMSE is used as the calibration statistic, and the absolute
entropy difference (AED) and R2 are utilised as additional goodness of fit measures; see Knudsen
and Fotheringham (1986) for a further discussion of these measures.

7.8.5 Results
The results presented here focus on the equation generation and calibration process to identify
appropriate SI model equations to represent the different categories of pupils based on the NCCOA
for the city of Leeds in the United Kingdom (see Table 7.5). Ultimately, each of the categories will
form a layer within the final model. One of the interesting findings from the GA was the breed-
ing of an alternative distance deterrence function to the standard negative exponential: a modified
gamma Tanner’s function. As Openshaw (1998) notes, Tanner’s distance deterrence function is
capable of representing more complex distance deterrence profiles than the smooth decreasing pro-
file produced by a negative exponential or power function. Both the standard negative exponential
and Tanner distance deterrence functions have been applied to Euclidean and network distances to
see which produces the optimal solution for this research problem. The final model configuration
and calibrations for the seven model equations bred by the GA for representing the pupils in each
NCCOA group are shown in Table 7.8.
An obvious point of note is that the SRMSE values for each of the SI model layers are greater
than one. This is due to (1) the size of the underlying origin–destination matrix and (2) the high
number of zero values within it. For example, in the 2004/2005 data, there were 2504 possible ori-
gin output areas (OAs) and 41 possible destination schools; this gives a matrix size of 102,664 cells
with 8,953 pupils. In 2005/2006, there were 2,411 possible origin OAs and 40 possible destination
schools resulting in a matrix size of 96,440 cells with 8,094 pupils. This led to the resulting interac-
tion matrices being sparse and produced high values of SRMSE.

7.8.6 Impact of GA Calibration on the SEM


The layers calibrated by the GA were input into the SEM; layer order was determined by the pro-
portion of pupils from each NCCOA group allocated to attend the school they expressed as their

TABLE 7.8
Summary of the Final Model Layer Configuration and Calibration
Calibration Parameters Goodness of Fit Statistics
NCCOA
Group Equation dij par1 par2 par3 SRMSE R2 AED
1 exp( D j par1 ) exp(dij par2 ) Euc 1.01 –1.40 — 3.07 0.69 0.03
2 D j par1 exp(dij par2 ) Euc 0.45 –0.67 — 5.22 0.28 0.22
3 exp( D j par1 ) exp(dij par2 )d par3
ij Euc 1.59 –0.60 –2.15 2.92 0.81 0.03
4 exp( D j par1 ) exp(dij par2 ) Euc 0.84 –1.13 — 3.36 0.69 0.07
5 exp( D j par1 ) exp(dij par2 )d par3
ij Net 0.96 –1.10 0.43 3.52 0.58 0.08
6 exp( D j par1 ) exp(dij par2 ) Euc 0.99 –1.28 — 3.71 0.63 0.06
7 exp( D j par1 ) exp(dij par2 )d par3
ij Euc 0.70 –1.91 –1.33 3.58 0.50 0.25

Source: Harland, K. and Stillwell, J., Commuting to school: A new spatial interaction modelling framework, in
Technologies for Migration and Population Analysis: Spatial Interaction Data Applications, eds.
Stillwell, J.C.H., Duke-Williams, O., and Dennett, A., IGI Global Snippet, 2010.
Evolutionary Algorithms 161

TABLE 7.9
Goodness of Fit Statistics for the Initial SEM
2004/2005 2005/2006
Layer (NCCOA Group) SRMSE R 2 AED SRMSE R2 AED

Overall SEM performance


All years 3.09 0.69 0.02 3.05 0.69 0.02

Performance of individual layers


3, countryside 3.40 0.76 0.29 3.48 0.77 0.32
6, typical traits 2.98 0.71 0.21 2.94 0.72 0.22
4, prospering suburbs 2.70 0.79 0.17 2.65 0.79 0.17
1, blue collar communities 2.55 0.74 0.06 2.51 0.75 0.06
2, city living 4.13 0.51 0.02 4.02 0.53 0.00
5, constrained by circumstance 3.08 0.66 0.17 3.06 0.65 0.15
7, multicultural 3.88 0.45 0.40 3.81 0.48 0.41

Source: Harland, K. and Stillwell, J., Commuting to school: A new spatial interaction
modelling framework, in Technologies for Migration and Population Analysis:
Spatial Interaction Data Applications, eds. Stillwell, J.C.H., Duke-Williams, O.,
and Dennett, A., IGI Global Snippet, 2010.

first preference. Table 7.9 shows the results from the initial run of the SEM for 2004/2005 and
2005/2006. The overall results for the SEM outputs are good with SRMSE values of 3.09 and 3.05,
respectively, and R2 of 0.69 and AED 0.02 for both years. This indicates a good overall model fit.
Each layer in the SEM shows an increase in performance against the calibration statistics (shown
previously in Table 7.8), except for the first layer to execute, NCCOA group three, and the last layer
to execute, NCCOA group seven. These two layers show degraded performance in all goodness of
fit statistics with respect to the calibration statistics.
The research presented here has demonstrated that GAs can be successfully applied to the
exploration and construction of optimal SI model equations. This is particularly advantageous for
calibrating complex models that contain multiple parameters and have a potentially large solu-
tion space. Following the previous work of Diplock (1998), Diplock and Openshaw (1996) and
Openshaw (1998), we recommend that an SI model equation and constraint equation can be, and
indeed should be, considered as two distinct stages. Initial exploration has shown that the incorpora-
tion of the calibrated layers improved the overall fit of the model.

7.9  DISCUSSION AND CONCLUSIONS


The aim of this chapter has been to examine the use of EAs for the optimisation of geographi-
cal model parameters and the development of geographical models. A brief overview of the core
building blocks of EAs and the mechanisms by which they operate was provided followed by
two case studies, which demonstrated that GAs can be used to derive optimal parameters for an
ABM of a spatially driven retail market and to breed SI model equations in the area of education.
The purpose of presenting these applications was twofold: first, to show how to construct a GA
and second, to show how readily this approach can be linked to other techniques, in this case, an
ABM and an SI model.
The research domain of EAs is considerable and continually growing; however, uptake within
geography still remains slow in comparison to other disciplines. The use of EAs other than GAs
is also still at an early stage. The original chapter was written at a time when the scope for the
162 GeoComputation

application of EAs was unlimited and largely untapped (Diplock 2000). It is clear from review-
ing the literature over the last 10 years that the potential of EAs has not yet been realised within
GC. Why is this? EAs have the advantage over other optimisation methods in that they are black
box, few assumptions are made about the underlying objective functions and they do not require
insight into the nature of the problem. Could the lack of uptake be due to the limitations and
technical difficulties or problems that arise from the implementation of EAs? For example, one
major issue with the GA approach that has emerged from related work is the large amount of
computational time that can be required to run the model. Malleson et al. (2013) developed an
ABM linked to a GA for optimising parameters in a crime model, specifically the operation of
behavioural rule sets of burglars. Even after some simplifications from the original configura-
tion (Malleson et al. 2010), a single model run still required approximately 10 h to complete on a
normal desktop machine. Malleson et al. (2013) used a 16-core virtual machine provided through
Amazon Web Services (Expósito et al. 2013) to generate their results, but even with this hard-
ware, each GA iteration – with a population of only 20 chromosomes – required approximately
20 h to complete. An associated side effect of the computation time is that it is not feasible to run
each individual model configuration multiple times, which would be preferable to give a more
comprehensive assessment of the model error (especially if the simulation is probabilistic so each
run will lead to slightly different results). More powerful computer systems are required if this
GA is to be run with a larger population for a larger number of iterations and with multiple runs
per model configuration.
In addition to the computational time required, when constructing an EA, there is a time invest-
ment in the general setup. Although there are freely available off-the-shelf packages as mentioned
previously, most researchers tend to use a programming language or modelling environment to
build their own programs. Careful consideration must be given to the way in which parameters
are represented, and an appropriate fitness function must be chosen for evaluating if the solution is
successful: if these criteria are poorly defined, then the EA may be unable to find a solution to the
problem or may end up solving the wrong problem! Initial experimentation is also required to find
the appropriate values for general EA parameters such as mutation rate, recombination method and
size of population, although the literature can provide some guidance.
The hybridisation of EAs with other established methodologies in GC for model calibration is an
area that shows the greatest potential for the uptake of this approach. There has already been consid-
erable work in linking together neural networks with GAs (Abrahart et al. 2007; Heppenstall et al.
2007b) to improve the accuracy of forecasting in rainfall–runoff modelling. The work of Fischer
and Leung (1998) is illustrative of a similar vein of research in modelling SI data; see also Reggiani,
Nijkamp and Sabella (2001).
Another developing area of EAs that can potentially offer a new methodological avenue for
researchers is the use of EAs for optimising model structure. This approach is of particular use,
for example, in finding solutions for difficult open-ended problems. Here, an automated method
is required that can estimate the right number of dimensions for a particular solution regardless of
the spaces within which it exists. For example, the structural complexities within a neural network
model are often related to the data sets used in the model development. The standard approach
to building a neural network requires a structure to be selected a priori and thereafter trained;
the usual format comprises a single layer of hidden units, with each hidden unit in that hidden
layer being connected to each unit in the input and output layers. Thus, the goal of networks with
fixed topologies is to optimise the connection weights that determine the overall network function.
However, their structure will also influence their behaviour, and topology is important because it
determines the size of the solution and therefore the size of the space in which that solution can
be found. There are no guidelines that relate network topology to particular problems or solutions.
This is an area that is still in early development but clearly using EAs (such as the JNeat package:
http://www.cs.utexas.edu/users/ai-lab/?jneat) could potentially produce models with both optimal
structures and parameters.
Evolutionary Algorithms 163

Methodologically speaking, one of the greatest success stories of the past 10 years in GC has
been the appearance and establishment of high-resolution geographical modelling, for example,
ABM (see Benenson 2014). One could speculate that this has been to the detriment of research
into EAs, that is, researchers have shifted their attention into the design and construction of these
models. These new geographical models are allowing researchers to construct complicated models
at an individual level from the bottom up. However, we cannot be completely sure that we have the
workings correctly designed (correct parameter values or rules) until we run the models. These
methodologies are now reaching a point of maturity when in-depth work is being undertaken into
important areas such as understanding how error propagates in these systems (Evans 2012) and how
best to calibrate and validate these increasingly complicated models (see Heppenstall et al. 2012).
EAs potentially hold the key to allowing researchers to optimise and breed better solutions and rules
for these models. As Diplock commented in 2000, ‘There is much to gain from the adoption of new
and innovative approaches to geographical research, and little to lose’ (p. 250).

REFERENCES
Abraham, A., L.C. Jain, and R. Goldberg. 2006. Evolutionary Multiobjective Optimization: Theoretical
Advances and Applications. New York: Springer.
Abrahart, R.J., D.P. Solomatine, and L.M. See. 2007. Hydroinformatics in Practice: Computational Intelligence
and Technological Developments in Water Applications. Berlin Heidelberg: Springer-Verlag.
Aghamohammadi, H., M. Saadi Mesgari, D. Molaei, and H. Aghamohammadi. January1, 2013. Development
a heuristic method to locate and allocate the medical centers to minimize the earthquake relief operation
time. Iranian Journal of Public Health 42(1): 63–71.
Ahn, C.W. 2006. Advances in Evolutionary Algorithms: Theory, Design and Practice. Berlin, Germany: Springer.
Ahn, J.J., Y.M. Kim, K. Yoo, J. Park, and K.J. Oh. November 29, 2011. Using GA-ridge regression to select
hydro-geological parameters influencing groundwater pollution vulnerability. Environmental Monitoring
and Assessment 184(11): 6637–6645.
Al-Ahmadi, K., L. See, A. Heppenstall, and J. Hogg. June 2009. Calibration of a fuzzy cellular automata model
of urban dynamics in Saudi Arabia. Ecological Complexity 6(2): 80–101.
Alba, E. and C. Cotta. 2006. Evolutionary algorithms. In Handbook of Bioinspired Algorithms and Applications,
eds. S. Olariu and A.Y. Zomaya. Boca Raton, FL: Chapman & Hall/CRC. http://www.crcnetbase.com/
isbn/9781584884750.
Annicchiarico, W. 2005. Evolutionary Algorithms and Intelligent Tools in Engineering Optimization. Barcelona,
Spain: CIMNE.
Armstrong, M.P., N. Xiao, and D.A. Bennett. September 2003. Using genetic algorithms to create multicriteria
class intervals for choropleth maps. Annals of the Association of American Geographers 93(3): 595–623.
Bacao, F., V. Lobo, and M. Painho. May 2005. Applying genetic algorithms to zone design. Soft Computing
9(5): 341–348.
Bäck, T. and H.-P. Schwefel. March 1993. An overview of evolutionary algorithms for parameter optimization.
Evolutionary Computation 1(1): 1–23.
Banzhaf, W., G. Beslon, S. Christensen, J.A. Foster, F. Képès, V. Lefort, J.F. Miller, M. Radman, and
J.J. Ramsden. September 2006. Guidelines: From artificial evolution to computational evolution: A
research agenda. Nature Reviews Genetics 7(9): 729–735.
Benenson, I. 2014. Agent-based modeling. In Geocomputation, pp. 203–240, eds. R.J. Abrahart and L.M. See,
2nd edn. Boca Raton, FL: Taylor & Francis Group.
Beriro, D.J., R.J. Abrahart, and G. Diplock. 2014. Genetic programming: Magic bullet, poisoned chalice or
two headed monster? In Geocomputation, pp. 169–202, eds. R.J. Abrahart and L.M. See, 2nd edn. Boca
Raton, FL: Taylor & Francis Group.
Beriro, D.J., R.J. Abrahart, C.P. Nathanail, J. Moreno, and A.S. Bawazir. September 2013. A typology of
different development and testing options for symbolic regression modelling of measured and calculated
datasets. Environmental Modelling and Software 47: 29–41.
Bickle, T. and L. Thiele. 1995. A mathematical analysis of tournament selection. In Proceedings of the
Sixth International Conference on Genetic Algorithms, ed. L.J. Eschelman, pp. 9–16. San Mateo, CA:
Morgan Kaufmann.
Birkin, M., Clarke, G., Clarke, M. and Wilson, A. 1996. Intelligent GIS: Location Decisions and Strategic
Planning. Cambridge: GeoInformation International.
164 GeoComputation

Brandl, B. 2007. Automated modelling in empirical social sciences using a genetic algorithm—Research
database, The University of York. In Computer Aided Systems Theory—EUROCAST 2007, eds.
R.M. Diaz, F. Pichler, and A.Q. Arencibia, pp. 912–919. Berlin, Germany: Springer-Verlag. https://
pure.york.ac.uk/portal/en/publications/automated-modelling-in-empirical-social-sciences-using-a-
genetic-algorithm(a5d0f2b6-5e5d-4777-8025-0221c2780397)/export.html.
Bull, L. March 1, 2001. Simple models of coevolutionary genetic algorithms. Artificial Life and Robotics 5(1):
58–66.
Cantú-Paz, E. April 15, 2002. Order statistics and selection methods of evolutionary algorithms. Information
Processing Letters 82(1): 15–22.
Cao, K., M. Batty, B. Huang, Y. Liu, L. Yu, and J. Chen. December 2011. Spatial multi-objective land use
optimization: Extensions to the non-dominated sorting genetic algorithm-II. International Journal of
Geographical Information Science 25(12): 1949–1969.
Cao, K., B. Huang, S. Wang, and H. Lin. May 2012. Sustainable land use optimization using boundary-based
fast genetic algorithm. Computers, Environment and Urban Systems 36(3): 257–269.
Chandramouli, M., B. Huang, and L. Xue. 2009. Spatial change optimization: Integrating GA with Visualization
for 3D scenario generation. Photogrammetric Engineering and Remote Sensing 75(8): 1015–1022.
CODeM. 2013. Complex Optimization and Decision-Making Laboratory: Genetic Algorithms Toolbox.
http://codem.group.shef.ac.uk/index.php/ga-toolbox [Date accessed 10/02/2014].
Comber, A.J., S. Sasaki, H. Suzuki, and C. Brunsdon. May 2011. A modified grouping genetic algorithm
to select ambulance site locations. International Journal of Geographical Information Science
25(5): 807–823.
Datta, D., J. Malczewski, and J.R. Figueira. 2012. Spatial aggregation and compactness of census areas with a
multiobjective genetic algorithm: A case study in Canada. Environment and Planning B: Planning and
Design 39(2): 376–392.
Davis, L. 1991. Handbook of Genetic Algorithms. New York: Van Nostrand Reinhold.
De Jong, K.A. 1975. Analysis of the behaviour of a class of genetic adaptive system. PhD thesis, Ann Arbor,
MI: University of Michigan.
De Jong, K.A. 2006. Evolutionary Computation: A Unified Approach. Cambridge, MA: MIT Press.
Deb, K. 2009. Multi-Objective Optimization Using Evolutionary Algorithms. Chichester, U.K.: Wiley.
Demetriou, D., See, L., and Stillwell, J. 2013. A spatial genetic algorithm for automating land partitioning.
International Journal of Geographical Information Science 27(12): 2391–2409.
Diplock, G. 1998. Building new spatial interaction models by using genetic programming and a supercomputer.
Environment and Planning A 30(10): 1893–1904.
Diplock, G. 2000. A new approach to spatial model building. In Geocomputation, eds. S. Openshaw and R.J.
Abrahart, pp. 219–252. London, U.K.: Taylor & Francis.
Diplock, G. and S. Openshaw. 1996. Using simple genetic algorithms to calibrate spatial interaction models.
Geographical Analysis 28(3): 262–279.
Dyer, D.W. 2006. Watchmaker Framework for Evolutionary Computation. http://watchmaker.uncommons.
org<http://watchmaker.uncommons.org/ [Date accessed 10/02/2014].
Eiben, A.E. and J.E. Smith. 2003. Introduction to Evolutionary Computing. New York: Springer.
Eldrandaly, K. June 2010. A GEP-based spatial decision support system for multisite land use allocation.
Applied Soft Computing 10(3): 694–702.
Evans, A.J. 2012. Uncertainty and error. In Agent-Based Models of Geographical Systems, eds. A.J. Heppenstall,
A.T. Crooks, L.M. See, and M. Batty, pp. 309–347. Dordrecht, the Netherlands: Springer.
Expósito, R.R., G.L. Taboada, S. Ramos, J. Touriño, and R. Doallo. January 2013. Performance analysis of
HPC applications in the cloud. Future Generation Computer Systems 29(1): 218–229.
Ferreira, C. 2001. Gene expression programming: A new adaptive algorithm for solving problems. Complex
Systems 13(2): 1–22.
Fischer, M.M. and Y. Leung. August 1, 1998. A genetic-algorithms based evolutionary computational neural
network for modelling spatial interaction data neural network for modelling spatial interaction data. The
Annals of Regional Science 32(3): 437–458.
Flake, G.W. 2001. The Computational Beauty of Nature: Computer Explorations of Fractals, Chaos, Complex
Systems, and Adaptations, 4th edn. Cambridge, MA: MIT Press.
Fogel, D.B. 1998. Evolutionary Computation: The Fossil Record. New York: IEEE Press.
Fogel, D.B. 2006. Evolutionary Computation: Toward a New Philosophy of Machine Intelligence. Hoboken,
NJ: John Wiley & Sons.
Fogel, G.B. and D.W. Corne. 2003. Evolutionary Computation in Bioinformatics. Amsterdam, the Netherlands:
Morgan Kaufmann.
Evolutionary Algorithms 165

Fogel, L.J., A.J. Owens, and M.J. Walsh. 1966. Artificial Intelligence through Simulated Evolution. New York:
John Wiley & Sons.
Fotakis, D. and E. Sidiropoulos. January 2012. A new multi-objective self-organizing optimization algorithm
(MOSOA) for spatial optimization problems. Applied Mathematics and Computation 218(9): 5168–5180.
Goldberg, D. 2013. Genetic Algorithms in Search, Optimization & Machine Learning. Boston, MA: Pearson
Education.
Goldberg, D.E. and K. Deb. 1991. A comparative analysis of selection schemes used in genetic algorithms.
In Foundations of Genetic Algorithms, ed. G.J.E. Rawlins, pp. 69–93. San Francisco, CA: Elsevier
Science & Tech.
Gong, J., Y. Liu, and W. Chen. January 4, 2012. Optimal land use allocation of urban fringe in Guangzhou.
Journal of Geographical Sciences 22(1): 179–191.
Grefenstette, J. January 1986. Optimization of control parameters for genetic algorithms. IEEE Transactions on
Systems, Man, and Cybernetics 16(1): 122–128.
Hagenauer, J. and M. Helbich. June 2012. Mining urban land-use patterns from volunteered geographic
information by means of genetic algorithms and artificial neural networks. International Journal of
Geographical Information Science 26(6): 963–982.
Haque, A. and Y. Asami. 2011. Optimizing urban land-use allocation: Case study of Dhanmondi residential
area, Dhaka, Bangladesh. Environment and Planning B: Planning and Design 38(3): 388–410.
Harland, K. 2008. Journey to learn. PhD thesis, Leeds, U.K.: School of Geography, University of Leeds.
Harland, K. and J. Stillwell. 2010. Commuting to school: A new spatial interaction modelling framework. In
Technologies for Migration and Population Analysis: Spatial Interaction Data Applications, eds. J.C.H.
Stillwell, O. Duke-Williams, and A. Dennett. Hershey, PA: IGI Global Snippet.
Heppenstall, A.J. 2004. Application of hybrid intelligent agents to modelling a dynamic locally interacting
retail market. PhD, Leeds, U.K.: University of Leeds.
Heppenstall, A.J., A.T. Crooks, L.M. See, and M. Batty. 2012. Agent-Based Models of Geographical Systems.
Dordrecht, the Netherlands: Springer.
Heppenstall, A.J., A.J. Evans, and M.H. Birkin. January 2005. A hybrid multi-agent/spatial interaction model
system for petrol price setting. Transactions in GIS 9(1): 35–51.
Heppenstall, A.J., A.J. Evans, and M.H. Birkin. 2006. Using hybrid agent-based systems to model spatially-
influenced retail markets. Journal of Artificial Societies and Social Simulation 9(3). http://jasss.soc.
surrey.ac.uk/9/3/2.html.
Heppenstall, A.J., A.J. Evans, and M.H. Birkin. 2007a. Genetic algorithm optimisation of an agent-based model
for simulating a retail market. Environment and Planning B: Planning and Design 34(6): 1051–1070.
Heppenstall, A.J., L.M. See, and R.J. Abrahart. 2007b. Advances in neural network hydrological modelling:
An adaptive co-evolutionary approach. In Hydroinformatics in Practice: Computational Intelligence and
Technological Developments in Water Applications, eds. R.J. Abrahart, D.P. Solomatine, and L.M. See.
Berlin Heidelberg: Springer Verlag.
Hermes, K. and M. Poulsen. July 2012. A review of current methods to generate synthetic spatial microdata
using reweighting and future directions. Computers, Environment and Urban Systems 36(4): 281–290.
Holland, J.H. July 1, 1962. Outline for a logical theory of adaptive systems. Journal of the ACM 9(3): 297–314.
Holland, J.H. 1975. Adaptation in Natural and Artificial Systems. Ann Arbor, MI: The University of
Michigan Press.
Huang, B., R.L. Cheu, and Y.S. Liew. December 2004. GIS and genetic algorithms for HAZMAT route planning
with security considerations. International Journal of Geographical Information Science 18(8): 769–787.
Huang, B., L. Yao, and K. Raguraman. April 2006. Bi-level GA and GIS for multi-objective TSP route plan-
ning. Transportation Planning and Technology 29(2): 105–124.
Iba, H. and C.C. Aranha. 2012. Practical Applications of Evolutionary Computation to Financial Engineering:
Robust Techniques for Forecasting, Trading and Hedging. Berlin, Germany: Springer.
Iba, H. and N. Noman. 2012. New Frontier in Evolutionary Algorithms: Theory and Applications. London,
U.K.: Imperial College Press.
Jain, A. and S. Srinivasulu. 2008. Hydrologic model calibration using evolutionary optimisation. In
Practical Hydroinformatics, eds. R.J. Abrahart, L.M. See, and D.P. Solomatine, pp. 291–301.
Water Science and Technology Library 68. Berlin, Germany: Springer. http://link.springer.com/
chapter/10.1007/978-3-540-79881-1_21.
Jha, M., P. Schonfeld, and S. Samanta. 2007. Optimizing rail transit routes with genetic algorithms and
geographic information system. Journal of Urban Planning and Development 133(3): 161–171.
Joshi, D., L.-K. Soh, and A. Samal. November 2012. Redistricting using constrained polygonal clustering.
IEEE Transactions on Knowledge and Data Engineering 24(11): 2065–2079.
166 GeoComputation

KEEL. 2004. Knowledge Extraction Based on Evolutionary Learning. http://www.keel.es<http://www.keel.es/


[Date accessed 10/02/2014].
Kisiel-Dorohinicki, M. 2002. Agent-oriented model of simulated evolution. In SOFSEM 2002: Theory and
Practice of Informatics, eds. W.I. Grosky and F. Plášil, pp. 253–261. Lecture Notes in Computer Science
2540. Berlin, Germany: Springer. http://link.springer.com/chapter/10.1007/3-540-36137-5_19.
Knudsen, D.C. and A.S. Fotheringham. August 1, 1986. Matrix comparison, goodness-of-fit, and spatial
interaction modeling. International Regional Science Review 10(2): 127–147.
Koza, J.R. 1992. Genetic Programming: On the Programming of Computers by Means of Natural Selection,
Vol. 1. Cambridge, MA: MIT Press.
Li, X., J. Lin, Y. Chen, X. Liu, and B. Ai. March 2013. Calibrating cellular automata based on landscape metrics
by using genetic algorithms. International Journal of Geographical Information Science 27(3): 594–613.
Li, X., Q. Yang, and X. Liu. December 2007. Genetic algorithms for determining the parameters of cellular
automata in urban simulation. Science in China Series D: Earth Sciences 50(12): 1857–1866.
Liang, S. October 1, 2007. Recent developments in estimating land surface biogeophysical variables from
optical remote sensing. Progress in Physical Geography 31(5): 501–516.
Liao, Y., J. Wang, B. Meng, and X. Li. January 2010. Integration of GP and GA for mapping population
distribution. International Journal of Geographical Information Science 24(1): 47–67.
Malleson, N., A. Heppenstall, L. See, and A.J. Evans. May 2010. Crime reduction through simulation: An
agent-based model of burglary. Computers, Environment and Urban Systems 34(3): 236–250.
Malleson, N., L. See, A.J. Evans, and A.J. Heppenstall. 2013. Optimising an agent-based model to explore the
behaviour of simulated burglars. In Modelling and Simulation of Complex Social Systems, eds. V. Mago
and V. Daggabian. pp. 179–204. Berlin, Heidelberg: Springer-Verlag.
Meffert, K. and N. Rotstan. 2012. JGAP: Java genetic algorithm platform. http://jgap.sourceforge.net/.
Accessed on 01/09/2013.
Meyer-Nieberg, S. and H. Beyer. 2006. Self-adaptation in evolutionary algorithms. In Parameter Setting in
Evolutionary Algorithm, pp. 47–76. Berlin: Springer.
Michalewicz, Z. 1996. Genetic Algorithms + Data Structures = Evolution Programs. Berlin, Germany:
Springer.
Mitchell, M. 1998. An Introduction to Genetic Algorithms [Electronic Resource]. Cambridge, MA: MIT Press.
Mooney, P. and A. Winstanley. April 2006. An evolutionary algorithm for multicriteria path optimization
problems. International Journal of Geographical Information Science 20(4): 401–423.
Neema, M.N. and A. Ohgai. August 2010. Multi-objective location modeling of urban parks and open spaces:
Continuous optimization. Computers, Environment and Urban Systems 34(5): 359–376.
Neema, M.N. and A. Ohgai. 2013. Multitype green-space modeling for urban planning using GA and GIS.
Environment and Planning B: Planning and Design 40(3): 447–473.
Nicklow, J., P. Reed, D. Savic, T. Dessalegne, L. Harrell, A. Chan-Hilton, M. Karamouz et al. 2010. State of
the art for genetic algorithms and beyond in water resources planning and management. Journal of Water
Resources Planning and Management 136(4): 412–432.
Obitko, M. 1998. Introduction to Genetic Algorithms. http://www.obitko.com/tutorials/genetic-algorithms/
[Date accessed 10/02/2014].
Openshaw, S. 1998. Neural network, genetic, and fuzzy logic models of spatial interaction. Environment and
Planning A 30(10): 1857–1872.
Oyana, T.J. and D. Dai. February 2010. Automatic cluster identification for environmental applications using
the self-organizing maps and a new genetic algorithm. Geocarto International 25(1): 53–69.
Park, S.-Y., J.H. Choi, S. Wang, and S.S. Park. December 2006. Design of a water quality monitoring network
in a large river system using the genetic algorithm. Ecological Modelling 199(3): 289–297.
Poli, R., W.B. Langdon, N.F. McPhee, and J.R. Koza. 2008. A Field Guide to Genetic Programming. http://
dces.essex.ac.uk/staff/rpoli/gp-field-guide/ [Date accessed 10/02/2014].
Ponterosso, P. and D.S.J. Fox. December 1, 1999. Heuristically seeded genetic algorithms applied to truss
optimisation. Engineering with Computers 15(4): 345–355.
Pratihar, D.K. 2008. Soft Computing. Oxford, U.K.: Alpha Science International Limited.
Rechenberg, I. 1965. Cybernetic Solution Path of an Experimental Problem. Translation No. 12. Farnborough,
Hants, U.K.: Royal Aircraft Establishment.
Rechenberg, I. (2000). Case Studies in evolutionary experimentation and computation. Computer Methods in
Applied Mechanics and Engineering 186(2–4): 125–140.
Reggiani, A., P. Nijkamp, and E. Sabella. January 16, 2001. New advances in spatial network modelling:
Towards evolutionary algorithms. European Journal of Operational Research 128(2): 385–401.
Evolutionary Algorithms 167

Sasaki, S., A.J. Comber, H. Suzuki, and C. Brunsdon. 2010. Using genetic algorithms to optimise current
and future health planning—The example of ambulance locations. International Journal of Health
Geographics 9(1): 4.
Schaffer, J.D., R. Caruana, L.J. Eshelman, and R. Das. 1989. Combinatorial optimisation by genetic algorithms.
In Proceedings of the Third International Conference on Genetic Algorithms, ed. J.D. Schaffer, pp. 51–60.
San Mateo, CA: Morgan Kaufmann.
Schwefel, H.-P. 1995. Evolution and Optimum Seeking. New York: Wiley.
Scrucca, L. 2013. GA: A package for genetic algorithms in R. Journal of Statistical Software 53(4): 1–37.
Shad, R., M.S. Mesgari, A. Abkar, and A. Shad. November 2009. Predicting air pollution using fuzzy genetic
linear membership kriging in GIS. Computers, Environment and Urban Systems 33(6): 472–481.
Shan, J., S. Alkheder, and J. Wang. 2008. Genetic algorithms for the calibration of cellular automata urban
growth modeling. Photogrammetric Engineering and Remote Sensing 74(10): 1267–1277.
SOURCEFORGE. 2014. Sourceforge. http://sourceforge.net/directory/development/algorithms/genetic-
algorithms/ [Date accessed 10/02/2014].
Stanley, K.O. and Vierucci, U. 2002. UTCS Artificial Intelligence. http://www.cs.utexas.edu/users/ai-lab/?jneat
[Date accessed 10/02/2014].
Tsou, M.-C. February 23, 2010. Integration of a geographic information system and evolutionary computation
for automatic routing in coastal navigation. Journal of Navigation 63(02): 323.
Urbanowicz, R.J. and J.H. Moore. 2009. Learning classifier systems: A complete introduction, review, and
roadmap. Journal of Artificial Evolution and Applications 2009: 1–25.
Vahidnia, M.H., A.A. Alesheikh, S. Behzadi, and S. Salehi. January 2013. Modeling the spread of spatio-
temporal phenomena through the incorporation of ANFIS and genetically controlled cellular automata:
A case study on forest fire. International Journal of Digital Earth 6(1): 51–75.
van Dijk, S., D. Thierens, and M. de Berg. December 1, 2002. Using genetic algorithms for solving hard
problems in GIS. GeoInformatica 6(4): 381–413.
Whitley, D. December 15, 2001. An overview of evolutionary algorithms: Practical issues and common pitfalls.
Information and Software Technology 43(14): 817–831.
Whitley, D., J. Kauth, and CSU Department of Computer Science. 1988. GENITOR: A Different Genetic
Algorithm. Fort Collins, CO: Colorado State University, Department of Computer Science.
Wright, S. 1932. The roles of mutation, inbreeding, crossbreeding and selection in evolution. In Proceedings
of the Sixth International Congress on Genetics, Ithaca, New York. ed. D.F. Jones, Vol. 1, pp. 356–366.
Wu, X. and T.H. Grubesic. December 1, 2010. Identifying irregularly shaped crime hot-spots using a
multiobjective evolutionary algorithm. Journal of Geographical Systems 12(4): 409–433.
Xiao, N. 2008. A unified conceptual framework for geographical optimization using evolutionary algorithms.
Annals of the Association of American Geographers 98(4): 795–817.
Yamamoto, M., G. Camara, and L.A.N. Lorena. March 2002. Tabu search heuristic for point-feature cartographic
label placement. Geoinformatica 6(1): 77–90.
Yu, X. and M. Gen. 2010. Introduction to Evolutionary Algorithms. London, U.K.: Springer.
Zelinka, I. and V. Snášel. 2012. Handbook of Optimization: From Classical to Modern Approach. New York,
NY: Springer.
Zhou, C., W. Xiao, T.M. Tirpak, and P.C. Nelson. 2003. Evolving accurate and compact classification rules with
gene expression programming. IEEE Transactions on Evolutionary Computation 7(6): 519–531.
8 Magic Bullet, Poisoned Chalice
Genetic Programming

or Two-Headed Monster?
Darren J. Beriro, Robert J. Abrahart and Gary Diplock

CONTENTS
Abstract........................................................................................................................................... 169
8.1 Key Facts on Genetic Programming..................................................................................... 170
8.2 Symbolic Regression............................................................................................................. 173
8.3 Getting the Modelling Right................................................................................................. 174
8.3.1 Stage 1 Study Site Selection...................................................................................... 175
8.3.2 Stage 2 Data Preparation........................................................................................... 175
8.3.3 Stage 3 Model Development...................................................................................... 176
8.3.4 Stage 4 Rejecting and Accepting Models.................................................................. 181
8.3.5 Stage 5 Model Testing and Evaluation...................................................................... 182
8.4 Case Studies........................................................................................................................... 182
8.4.1 Estimating Pan Evaporation...................................................................................... 182
8.4.2 Rainfall-Runoff Modelling........................................................................................ 185
8.4.3 Building a Spatial Interaction Model........................................................................ 191
8.5 Future Directions................................................................................................................... 194
8.5.1 Is It Important How Things Are Modelled?.............................................................. 195
8.5.2 Should Models Be Complex?..................................................................................... 196
8.5.3 Does It Matter What You Model?.............................................................................. 196
8.5.4 Here Be Dragons?...................................................................................................... 197
References....................................................................................................................................... 198

ABSTRACT
Is genetic programming (GP) a magic bullet, poisoned chalice or two-headed monster? This chapter
unpacks these questions by equipping readers with the necessary information to both productively
utilise this powerful data-driven modelling tool and to formulate some answers for themselves.
Nevertheless, navigating the GP road map can be tricky, not least because at its heart, there are
some weighty computational concepts that require suitable analogies and metaphors to make them
more easily understood – for this, its inventors piggyback onto the field of biological evolution. The
large number of borrowed terms and associated synonyms involved, however, should not in any
way discourage the discerning scientist, since GP permits fresh and novel solutions to be evolved
for resolving complex scientific problems. This chapter builds on an earlier account of GP presented
in the first edition of this book by discussing recent major improvements to the accessibility of the
technique, which is mainly driven by advances in computing technology and software innovation.
The first section of the current chapter provides some background to GP and its key concepts.
The central section provides a general framework for performing GP experiments, with symbolic
regression being selected as the common thread from which we weave our story. This is followed

169
170 GeoComputation

by three simple case studies are presented with the intention of inspiring readers to develop and
test their own ideas about what GP can be used for. Finally, a short discussion on the future direc-
tions of GP helps steer some searching philosophical questions for the reader to consider. One of
the key messages from the first edition version of this chapter remains suitably apt – ‘if in doubt,
experiment’! It is hoped that both newcomers and experienced users will use this chapter to enhance
their understanding of GP and at the same time recognise and absorb what is on offer as a powerful,
rewarding, data-driven modelling tool.

8.1  KEY FACTS ON GENETIC PROGRAMMING


You have to kiss a lot of frogs before you find your handsome prince
Popular Saying*

This chapter has been written for aspiring practitioners with little or no knowledge of genetic pro-
gramming (GP) but with a strong interest in using the technique to discover solutions to difficult
geographical problems. It provides an outline of the underlying concepts of GP which is reinforced
by a description of a general framework for the methodological stages that are associated with its
implementation. Three case studies are presented to give an idea of the kind of applications that
GP is demonstrably good at (1) estimating pan evaporation estimation at Elephant Butte Reservoir,
United States; (2) rainfall–runoff modelling of the Annapolis River, Canada; and (3) building a
spatial interaction model for County Durham, United Kingdom. The chapter concludes with a short
discussion which is characterised by some searching, potentially contentious, philosophical ques-
tions about the future of GP. In doing so, it builds on earlier prophecies made in the first edition of
this book. Interested readers would benefit from re-reading that material (Diplock, 2000).
From a historical perspective, vast technological leaps in computing have been made since the
original version of this chapter was written and published. Computers are faster and more com-
pact, modelling takes minutes or hours, rather than days or weeks, and the advent of proprietary
software means that users are freed from the arduous and perhaps largely off-putting task of soft-
ware development and coding. Other tools which have sped up modelling operations are multiple-
core and cloud-based processing technologies, giving widespread access to much faster and more
powerful evolutionary options. The reader is also encouraged to take advantage of a complemen-
tary chapter contained in this second edition, on the potential benefits of parallel computing (PC)
(Adnan et al., 2014) approaches for performing GeoComputation (GC). Another huge improvement
is the availability of specialist user-friendly software packages, such as Discipulus (http://rmltech.
com/), Eureqa (http://creativemachines.cornell.edu/eureqa/) and GeneXproTools (http://www.
gepsoft.com/), each of which avoids the need to design or code your own GP program. These or
similar packages have low-cost, free or demonstration versions which permit both experimentation
and familiarisation with particular software environments. For those with a strong preference for
command-line programming, options exist for the implementation of GP in R (http://r-project.org/)
and MATLAB® (http://mathworks.com/), in addition to more traditional programming languages
such as Fortran.
GP is all about breeding equations. Simply put, it works by applying an algorithm that is itself
embedded into a piece of software, which, when run, concurrently delivers multiple solutions
fitted to a particular dataset. These equations are checked automatically by the software to see
how well they perform. Then, small quasi-random alterations are made to create a new set of
solutions, whereafter performance is again checked. This is an iterative process that continues
until it is brought to an end by the user. The Frog King analogy at the start of this chapter is
apposite because to evolve a solution that the user is happy with requires a lot of patience and

* In the original Frog King (Grimm and Grimm, 1812) fairy tale, a spoiled princess reluctantly befriends a frog. In modern
versions of that tale, the frog is magically transformed into a handsome prince after the princess kisses it.
Genetic Programming 171

experimentation and involves a considerable amount of trial and error testing. The operational
controls of GP are akin to biological evolution, that is, creation of populations, intergenerational
evolution controlled by genetic operators and survival of the fittest. As a result, the terminology
used in this chapter, and to a much greater extent in more technical texts, is heavily reflective of
that used to describe Darwinian evolution. The evolved equations are usually represented/stored
in the form of one or more hierarchically coded lines of computer code, which function as small
computer programs that can be executed using appropriate software. This mix of biological and
computational analogies gives rise to the term GP, in which genetic and evolutionary procedures
are used to develop problem-solving programs.
The GP paradigm was first elucidated by Koza (1990) in a report he produced while at Stanford
University. The importance of his work is far reaching, not least for the range of example applica-
tions it included. Koza importantly unified the purpose of GP by stating:

…the underlying common problem is discovery of a computer program that produces some desired
output when presented with particular inputs. (Koza, 1990: 1)

Koza subsequently reported a range of example problems that required the discovery of such a
computer program, which, among others, included machine learning, process planning in artificial
intelligence and robotics, symbolic function identification (time-series induction), symbolic regres-
sion, empirical discovery, solving of functional equations, pattern recognition, game playing and
neural network design (Koza, 1990).
GP presently offers one of the best effort/reward data-driven modelling opportunities available
to researchers. It does so because difficult non-linear problems may be modelled without any a
priori assumptions being made about the mathematical form that a solution should take and, in
certain cases, the kind of relationship expected from the data. The role of each user in the evolution
of solutions, however, is not totally akin to that of a disinterested player or passive bystander – since
important decisions must be made about the initial scope and content of potential model drivers
(i.e. some specified set of input variables is selected), functional operators (i.e. some specified set
of mathematical symbols is used) and software settings. GP is thus seen to present something of a
scientific conundrum requiring very careful application: on the one hand, it is analogous to a magic
bullet that seemingly offers rapid, powerful and transparent delivery of non-linear problem-solving
equations. The development and reporting of novel and interesting solutions in an open and trans-
parent way is surely good. Yet, on the other hand as per the title of this chapter, perhaps it is a poi-
soned chalice, since it can simultaneously deliver an exposed solution, one that is open to third party
inspection, testing and potential disapproval. Indeed, luring the unwary, it can sometimes deliver
unexpectedly misleading, irrational or overly complex solutions that might otherwise normally be
rejected but unfortunately possess a high level of fit. This chapter will equip you with the necessary
tools and wisdom to identify potential deficiencies in each resultant program and help you decide
how and whether or not to reject poorer quality models. By resolving this dichotomy, you will be left
with an exciting and, thanks to recent software developments, an extremely easy to use data-driven
modelling tool, which evolves user-friendly solutions that can be transposed into any spreadsheet or
statistical computing package for further evaluation and application.
GP is an evolutionary algorithm (Heppenstall and Harland, 2014): a generic population-based
metaheuristic optimisation mechanism, that is, a general-purpose algorithmic framework, that
can be applied to different optimisation problems, but which needs relatively few modifications to
adapt it to a specific problem. It is also a member of an important sub-group, called evolutionary
program-induction algorithms (EPIA) (Graff and Poli, 2010). EPIAs are designed to evolve small
computer programs, comprising executable code, that can be used to solve problems of a similar
nature to the one used during their development. The membership of this group includes several
other popular algorithms: genetic algorithm (GA) (Holland, 1975; Miller and Thompson, 2000),
grammatical evolution (GE) (Ryan et al., 1998), linear genetic programming (LGP) (Brameier and
172 GeoComputation

Banzhaf, 2001, 2007) and gene expression programming (GEP) (Ferreira, 2001). The common
theme in each technique is that they derive transparent solutions are derived using principles bor-
rowed from biological evolutionary science and evolve models that can be easily evaluated. From
a modelling viewpoint, GP outputs should not be classed as black-box models, that is, the inner
workings of the model are not transparent, and physical interpretation of its behaviour is therefore
difficult. Unfortunately, in many cases, GP modelling is incorrectly treated as a black-box tool.
This is perhaps because the modelling process itself is highly automated and contains a large
number of operational parameter settings, is perceived to be shrouded in mystery – an unfortunate
misconception that this chapter intends to address.
EPIAs have become established tools and provide widely accepted norms for resolving complex
non-linear problems, including different types of modelling required by geographers. Keyword
searches performed using the bibliographic database, Scopus (www.scopus.com), revealed over
95,000 hits for ‘genetic algorithm*’, over 6,000 hits for ‘genetic programming’ and over 500 hits
for ‘gene expression programming’. In each case, results showed mostly incremental growth since
2000 (Scopus Sciverse, 2013). These records indicate that a model breeding approach to resolv-
ing scientific problems is popular in many sectors of the international research community. In the
late 1990s, spatial data rapidly became much more widely available which stimulated GP-based
spatial analysis (Diplock and Openshaw, 1996). Most of this body of work understandably rests
within the disciplines of computer science, engineering and mathematics – around 5% relates to
the geographical domain. However, more recently, the world has witnessed the proliferation of
global climatological and hydrological data – so-called Spatial Big Data (Sui, 2014) – in response
to an international requirement to better understand global environmental issues, as well as a
desire to find fresh ways to help resolve old problems, such as pan evaporation (e.g. Guven and
Kisi, 2010). GP applications in geography have recently expanded from their initial role in per-
forming spatial analysis operations (e.g. Diplock, 1998; Litschert, 2004; Parasuraman et al., 2007;
Sheeren et al., 2006) into modelling environmental processes: reported fields of enquiry include
rainfall forecasting (e.g. Hashmi et al., 2011; Kashid and Maity, 2012; Mondal and Mujumdar,
2012), river flow forecasting (e.g. Azamathulla and Zahiri, 2012; Maheswaran and Khosa, 2011;
Mondal and Mujumdar, 2012; Sivapragasam et al., 2011). sediment transport (e.g. Ab Ghani and
Azamathulla, 2011, 2012), soil mechanics (Mollahasani et al., 2011; Padarian et al., 2012) and eco-
logical applications (Jeong et al., 2011; Wang et al., 2012), For a more general and extensive source
of information, the reader is encouraged to consult the genetic programming bibliography hosted
by the University of Birmingham, United Kingdom (http://www.cs.bham.ac.uk/~wbl/biblio/).
Not all GP studies approach the problem they are designed to examine in the same way. It is
important to distinguish between different types of study. One way is to look at the type of data
being used in model development and testing. For example, there are two principal data types that
may be selected as input/output variables: one is observed data and the other is calculated data
(i.e. values derived from a specified equation). Each type will produce a different kind of model:
(1) a simulator which resolves natural processes using observed data or (2) an emulator which is a
model of the predictions or estimations made by an existing equation or set of equations and is usu-
ally intended to reduce model complexity (Abrahart et al., 2012; Beriro et al., 2013).
Another important difference between GP studies is the way in which authors tackle model
evaluation. A large number of GP explorations compare their model outputs with counterpart data-
driven modelling outputs, using the results to select a preferred solution. This approach tends to
focus on comparing the goodness-of-fit statistics of derived solutions instead of exploring the poten-
tial for meaningful knowledge discovery on offer from the GP solution using techniques such as
sensitivity analysis.
GP can also be used to perform conjunction modelling (e.g. serial operation, in which output
from Model A is fed into Model B) or to develop multimodel combinations (e.g. parallel operation,

* Wildcard
Genetic Programming 173

in which output from Model A is combined with output from Model B) and more recently for the
explicit purposes of developing multimodel combinations (e.g. Fernando et al., 2012; Kisi and
Shiri, 2011; Mostafavi et al., 2013; Nourani et al., 2012). In each case, the univariate output derived
from the GP equation can be used in subsequent data-driven modelling operations. Conversely, con-
junction modelling may also encompass some form of preliminary data transformation tool, such as
wavelet analysis or principal component analysis, which is first applied to the raw data, prior to any
exploring or modelling using GP.

8.2  SYMBOLIC REGRESSION


GP is most commonly used in a geographical setting to derive predictive models for a particular
problem by means of symbolic regression, with applications ranging from modelling the intricacies
of a climatic process (e.g. Stanislawska et al., 2012) to analysing remote sensing data (Momm and
Easson, 2011). This chapter, consequently, focuses on symbolic regression. It should nevertheless
be stressed that GP can also be used to model other things such as formal logic or source code.
For completeness, other geographical/environmental GP applications include classification (e.g.
Padarian et al., 2012), decision trees (e.g. Wang et al., 2006) and logistic regression (e.g. Seckin and
Guven, 2012).
At this point, you may be asking: (1) What is symbolic regression? and (2) Why not use existing
linear, quadratic or polynomial regression techniques for my analysis? The answer to the second
question is simple – if it works, then you probably should, especially if the problem is of a known
form, such as, linear, near linear or another standard function. The answer to the first requires a
little more explanation. Conventional regression is deterministic, resulting in the same model or
answer every time you apply the analysis. Such as, the form of linear regression functions is fixed,
as are the variables used to examine the problem; the only parts determined by the regression of Y
on X1 and X2 are the coefficients a, b and c as depicted in the following equation:

Y = a + bX1 + cX2 (8.1)


In contrast, by way of a simple definition, Koza (1990, p. 2) suggests that symbolic regression:

…requires finding a function, in symbolic form, that fits a given sampling of values of the dependent
variable associated with particular given values of the independent variable(s).

In other words, conventional regression is about function fitting, whereas symbolic regression is
about function discovery and fitting. Symbolic regression, as with all GP, is stochastic, in which the
final answer will in most cases be slightly different at the end of each model run. All variables are
treated as quasi-random elements, in which their use is dependent on the software settings selected
by the user and on any limitations imposed by the technique – that is, there is no need for any a
priori assumptions to be made about the data or form of the solution.
The success of symbolic regression is at least in part due to its data-driven nature, where knowl-
edge of the natural system or functional form of the solution is not an imperative, and solutions
are quasi-randomly evolved using a data set that describes the problem which is to be investigated.
In this way, the technique is able to overcome some of the assumptions that bind statistical or
mechanistic modelling, as well as some of the limitations associated with polynomial or para-
metric regression and/or black-box modelling (Schmidt et al., 2011). That said, the idea that one
should remain ignorant as to the provenance of the data or problem is somewhat absurd. A simple
symbolic regression example follows which is based on a small artificial data set from which a
perfect solution could be derived (Table 8.1). The problem was examined using GeneXproTools 4.0
in which different combinations of input symbols (D0–D5) and mathematical functions (+, −, /, *)
were manipulated by the software such that the dependent variable could be predicted from our
independent inputs with a high degree of accuracy.
174 GeoComputation

TABLE 8.1
Data Set Used for Developing Solutions 1 and 2
Independent Variables
Dependent
Record D0 D1 D2 D3 D4 Variable (V)
1 4 6 8 0 2 3.0
2 6 4 2 7 9 75.0
3 2 5 8 2 6 13.2
4 9 5 2 5 8 62.5
5 3 6 4 7 8 60.5
6 1 5 3 7 9 64.6
7 5 3 6 7 5 37.5
8 2 5 4 6 8 50.5
9 2 5 3 7 8 59.3

Solution 1:
V = (D1 – D1) + (D4 * D3) + ((D1 * D0)/D2) (8.2)
Solution 2:

 D3 

V = ( D 4 * D3 ) +  +
 D2 
(((( D1* D0 ) − D3) − ( D4 − D4)) D2 ) (8.3)
Note that with some simple rearranging and/or removal of redundant components, the solutions are
identical. This is a feature of the simplicity of the problem and may or may not occur when problem
complexity increases:
V = (D4 × D3) + (D1 × D0)/D2 (8.4)
For more complex problems, the fundamentals of symbolic regression remain the same in that a
multivariate and multifunctional solution is evolved from a data set using a mix of default and user-
defined software settings. Some further examples of software that can be downloaded and used to
experiment with include

• Eureqa (http://creativemachines.cornell.edu/eureqa)
• Open BEAGLE (http://code.google.com/p/beagle/)
• DEAP (http://code.google.com/p/deap/)
• ECF (http://gp.zemris.fer.hr/ecf/)
• ECJ (http://www.cs.gmu.edu/~eclab/projects/ecj/)
• EpochX (http://www.epochx.org/)
• GenetiK (http://code.google.com/p/genetik/)
• GPLAB (http://gplab.sourceforge.net/)

8.3  GETTING THE MODELLING RIGHT


Despite the prominence of GP, guidelines for the parameterisation and customisation of its models
have only just started to be published (Graff and Poli, 2010). The consequence of not having a com-
mon methodological framework is that some of the key assumptions for applying GP to a problem
are being ignored. For example, before being accepted as valid, potential solutions should be judged
Genetic Programming 175

in terms of being meaningful and representative with regard to the system that they are intended to
model. That said, there are many people who are very comfortable with GP as a black-box model-
ling technique. However, in keeping with the many arguments that are presented throughout this
chapter, the current authors clearly believe that GP has far greater potential than is currently being
exploited. This section provides the reader with a relevant and practical guide for applying GP to
geographical and environmental enquiries. It includes several ideas on the evaluation of GP solu-
tions, in part inspired by the work of others on environmental modelling (e.g. Alexandrov et al.,
2011; Bennett et al., 2012; Jakeman et al., 2006). A summary flow diagram of the five key stages
applicable to any GP experiment is shown in Figure 8.1 – each stage is then explained in detail.

8.3.1  Stage 1 Study Site Selection


Selecting a good study site is the first stage of any GP experiment. The site and problem should
be characterised by an appropriate amount of data, sufficiently supporting the research questions
being examined. There is no easy answer to how much data is enough, only to say that there should
not be less than that considered necessary to allow for the conceptual underpinnings of the system
to be understood. For a process such as the flow or level of groundwater in an aquifer, this may
necessitate catchment rainfall, depth to groundwater, topography, physical aquifer properties and/or
other meaningful local or regional factors identified in previously published reports. It would also
be advantageous if the selected data were publicly available since this would support a re-analysis
of the experiment by any interested parties at a later date.

8.3.2  Stage 2 Data Preparation


Understanding how your data reflects the conceptual underpinnings of each problem being investi-
gated is an important part of data-driven modelling, even if in order to produce the model, a priori
knowledge about the system or form of the solution is not essential (Beriro et al., 2012b; Mount et
al., 2012). This is generally achieved by asking informative questions pertaining to the quality and
usefulness of the data, such as the following: What is the provenance of the data? How and why
were the data collected? What are its shortcomings, for example, systematic/random errors? What
processes are the data describing? Quantitative descriptions and analyses of the data should also be
made using appropriate statistics such as measures of central tendency, variance, determination of
outliers, cross-correlations and distributions. As well as providing background information on the
problem, a descriptive analysis helps to inform whether pre-processing would be useful. For further
information, Abrahart et al. (2010) present a helpful seven-point checklist that you may also wish to
consult in support of your own data preparation framework.
Many data processing operations such as normalisation and/or transformation are available to
researchers – each of which could be applied to raw data prior to GP modelling. Specific examples
of such operations include linear rescaling (Alavi and Gandomi, 2011; Mollahasani et al., 2011)
and discrete wavelet transformation (Kisi and Shiri, 2011). Truncating data is another option that is
also open to modellers, where the removal or smoothing of undesirable features, such as outliers,
can be completed automatically – in an option that is available in both Eureqa (Cornell University,
2013) and GeneXpro Tools (Version 5.0) (Ferreira, 2013). The potential benefits of such techniques
for GP modelling currently remain unclear. This issue is important, because in principle, GP
has the capability to perform many of these operations automatically, as an integrated part of its
numerical search procedure. Factual reporting by researchers however does not yet contain suffi-
cient detail to enable good comparisons to be made between modelling based on transformed and/
or non-transformed model inputs and/or outputs (Beriro et al., 2012b). To overcome this uncer-
tainty, subsequent users are encouraged to experiment with different options, so as to find out
which type of solution is best for the problem being examined and, where possible, reporting the
results of such explorations.
176 GeoComputation

Stage 1 Select study site


Study site selection

Describe study
area

Stage 2
Appraise raw data
Data preparation

Filter data

Describe final
filtered data

Create development and testing


data divisions

Stage 3 Evolve models, e.g. n = 10


Model development

Using development period dataset


Stage 4
Assess model
Reject irrational models
accuracy

Sensitivity analysis

? Fail

Pass

Stage 5
Model testing and evaluation Test models
Using test period dataset

Assess model
accuracy

Select
preferred Rejected
model models

Preferred model

FIGURE 8.1  Five key stages in a GP experiment.

8.3.3  Stage 3 Model Development


A simple flowchart summarising how GP solutions are evolved is presented in Figure 8.2.
The first step, which is automated by the software, is the quasi-random production of an initial
population of potential solutions called chromosomes. The chromosomes are different to those used
Genetic Programming 177

Evolve initial
population of
chromosomes

New generation Adaptions


Execute each
of using genetic
program
chromosomes operators

Evaluate fitness Select cohort of


of individuals individuals

Termination NO
Perfect fitness NO
criteria satisfied

YES YES Key

Decision

Action
STOP

End of process

FIGURE 8.2  Flowchart of GP process.

in a GA, which are linear and binary representations. GP chromosomes are coded and processed in a
language that is specific to the software that each program is written in, for example, be that Fortran
(Diplock, 2000), Karva (Ferreira, 2001) or LISP (Koza, 1990). Structurally, chromosomes comprise
a mix of (1) independent variables; (2) mathematical; and/or (3) logic functions and/or numerical
constants. Each item is schematically represented in a tree-like format, called either a parse tree (PT)
or an expression tree (ET). These have a hierarchical structure which is ultimately processed by the
software as lines of computer code. A diagram of some different types and forms of chromosome
is provided in Figure 8.3. GP chromosomes are usually singular entities. However, in GEP, they are
more commonly evolved and expressed in groups of two or more, forming a multi-genetic solution, in
which each sub-expression tree (Sub-ET) is able to code for a particular facet of the problem and in
which each individual component is subsequently joined together by means of a simple linking func-
tion (+, −, *, \) (Ferreira, 2001), for example, V = ET, in which ET = Sub-ET1 + Sub-ET2 + Sub-ET3.
178 GeoComputation

Arithmetic program
Parse tree format
+
. –

2 ∏ + /

x 3 y +

5 1
Equivalent expression
2 ∏ + ((x + 3) – (y/(5 + 1))

Logic program
Parse tree format

^
^
^
x true

x y z ^

x y
Equivalent expression
(x true) ((x y) (z (x y)))
>
>
>

>

Coding program
Parse tree format
;

= while

i 1 < =

+
i 20 i

Equivalent expression i 1
i = 1;
while (i < 20)
{

FIGURE 8.3  Equivalent formats for different types of program: arithmetic, logic and coding.

There are four key decisions that need to be made by a user prior to undertaking GP modelling:
(1) selection of independent variables, (2) determination of a suitable function set, (3) selection of
software settings and (4) selection of a stopping point, also called the termination criterion. Choosing
which independent variables to model should be based on an understanding of the problem, gained
during the site selection and data preparation stage of the experimental design process, but could
equally be somewhat arbitrary. The functions used may be mathematical or trigonometric (e.g. +, −, *,
/, sqrt, sine, cosine) or Boolean (e.g. IF, NOT, AND). Software settings pertain to chromosome dimen-
sions, population size, probability of using a particular genetic operator, constant creation, measures
of fitness/error, stopping point, data pre-processing operations, etc. With the exception of the inde-
pendent and dependent variables, parameters may be left to default software settings, although it is
strongly recommended that modelling includes a simple sensitivity analysis to optimise such controls
by varying population size or increasing or decreasing the probability of a particular genetic operator
Genetic Programming 179

being selected. The effect of poorly optimised software settings will most likely be the production of
an inadequate solution – at this point, it is worthwhile remembering the Frog King analogy presented
at the start of the chapter in that evolving a good solution can require a lot of time and effort.
Once an initial population of chromosomes is produced, the next step is an automated assessment
by the software of how well each existing solution can predict the dependent variable. This is done by
applying an evaluation measure or objective function equation which in most cases is used to calcu-
late either absolute error, root mean squared error (RMSE), R-squared, or Pearson’s product moment
correlation coefficient (see Dawson et al., 2007) or perhaps a pertinent relative error metric (Ferreira,
2006b). For more information on these statistics, see Abrahart et al. (2011) or Bellocchi et al. (2010).
A further measure called fitness is similarly determined. This fitness metric is a dimensionless output
calculated using a separate equation, which is usually displayed as a summary of the best individual
in a given generation to assist user evaluation of the progress of solution development during a GP run.
Following assessment, before any intergenerational adaptations to chromosomes are made, a cohort
is selected from the initial (and, thereafter, from a subsequent) population of potential solutions. The
most common selection methods include tournament selection, fitness proportionate selection and rou-
lette wheel selection with elitism (Ferreira, 2001; Poli et al., 2008). In tournament selection, a cohort
is randomly selected. Individuals are thereafter put into pairs and the fitness of each member com-
puted and compared. Each individual possessing a higher fitness is thereafter identified and adapted.
Roulette wheel selection involves ranking the fitness of individuals and, subsequently, using a roulette
wheel approach to sampling and selection, in which a greater proportion of the wheel is allocated to
the fittest individuals. This means that chromosomes with a higher fitness will have a greater chance
of being selected, in contrast to ones with a lower fitness. In GEP, clones are also made of the fittest
individuals, to ensure that good traits are not lost as a result of the selection process (Ferreira, 2001). In
some cases, intergenerational domination by a small number of individuals can manifest itself, mean-
ing the search process can get trapped in a local optimum. Most popular software packages, however,
have introduced specific ways and means for addressing such a problem. By performing a succession
of runs, it is also possible to exploit the stochastic nature of GP and so help avoid such situations.
Adaptations made to the selected chromosomes are controlled probabilistically using special
functions called genetic operators. These operators behave in a similar way to the modifications
made to the DNA of biological organisms during breeding. The main genetic operators are cross-
over, mutation, inversion and transposition – with the dominant types being crossover and mutation.
In each case, part of the chromosome is selected and altered by some kind of cutting and replac-
ing routine. Simple schematic diagrams of these operations are shown in Figure 8.4. In crossover
(called recombination in GEP), two chromosomes are selected as the parents for two offspring.
Then one or more randomly selected fragments of each chromosome are selected, cut and replaced
by their respective counterparts. In mutation, randomly selected fragments of individual chromo-
somes are selected and substituted with randomly evolved replacements. Fragments can comprise
individual mathematical functions, constants or variables, or indeed a larger composition of any
such components. In inversion, components residing inside a randomly selected fragment, consist-
ing of mathematical functions, constants and/or variables, are simply swapped around – sometimes
having a neutral effect depending on the functions involved. Transposition involves selecting one
part of a chromosome and, thereafter, moving that component to a different position in the same
chromosome. Note, however, that duplication is permitted, such that the original component might
remain intact, and that as a result of insertion, other parts of a potential solution could end up being
obliterated and lost for good. This process is implemented in GEP, as a mechanism that is used for
identifying an inactive part of a chromosome, which is subsequently moved to an active position.
The operators described here outline some of the concepts which underpin evolutionary and gen-
erational changes made to chromosomes in GP. Detailed technical descriptions of these and other
operators can be found in relevant core texts (Ferreira, 2006; Goldberg, 1989; Koza, 1990).
The cycle of selection and optimisation typically continues for 1000+ generations until a desired
fitness is reached or the predefined stopping point is satisfied. The stopping point is a user-defined
180 GeoComputation

Key
Two parent chromosomes, resulting from tournament selection
modified
Chromosome A Chromosome B chromosome
+ * segment

Source material
* / - Z

A B D E X Y

Crossover
+ *

Two parent - /
offspring
* Z

X Y D E A B

Mutation
+

* *

A B G H

Note that when mutation occurs at a ‘head’ it can be mutated to a


variable or function, but if mutation occurs at the tail then
only a variable can be palced at that point.
Inversion
+

One parent * /
offspring
B A D E

Note that in some cases inversion may make no difference to the


solution, i.e. Chromosome A

Transposition
+

* /

A / D E

D E
Note that transposition may involve a simple repositioning of parts of
the solution or as in this example duplication and insertion

FIGURE 8.4  Illustrated examples of crossover, mutation, inversion and transposition.

instruction to the GP software to stop the evolution process, usually based on the generation number
or fitness as determined by the raw fitness function. The final solution can then be evaluated by the
user using any number of additional goodness-of-fit metrics or other appropriate tools.
GP is a stochastic process meaning that each GP run will be different to the next, even when
input parameters remain constant – GP can be expected to identify and utilise important input
variables but it will do so differently each time. Thus, 10 runs will probably provide 10 different
solutions. Multiple runs, for example, 10–20, should be completed because even if evolved models
Genetic Programming 181

appear reasonable in terms of goodness-of-fit statistics, it has been shown that not all of them will
necessarily make physical sense, that is, represent the conceptual underpinnings of the natural
system being examined (Beriro et al., 2012b, 2013). Depending on the problem being investigated,
the computational effort required to run multiple models can be time consuming, exceeding the
resources available for a project. If this is the case, then the reader is encouraged to consider PC
(Adnan et al., 2014) as an option rather than to omit this step from their experimental design as this
process can be used to simultaneously perform multiple runs at once.
Further details and more technical information on the mechanics of GP can be found in a variety
of sources (e.g. Ferreira, 2006a; Koza, 1990; Poli et al., 2008; Schmidt et al., 2011).

8.3.4  Stage 4 Rejecting and Accepting Models


The decision to accept or reject a model is based on an evaluation of both its reasonableness and
its rationality. Reasonableness can be tested quantitatively by calculating the error exhibited by
a solution using goodness-of-fit metrics or by presenting scatterplots that depict model accuracy.
Rationality can be investigated using sensitivity analysis. What is advocated here is that rather than
choosing one tool to decide whether or not to accept or reject a model, multiple lines-of-evidence
should be obtained, gathered from a variety of sources, or acquired by means of different options.
Quantitative analysis of model accuracy is undertaken as a validation exercise using goodness-
of-fit metrics. You will find that the equations used for this calculation are often the same as the error
metrics used to select individual chromosomes for optimisation during model development. Their
application here, however, serves a different purpose, that is, one of model acceptance or rejection.
In any case, choosing which measure to use should be informed in part by the problem being exam-
ined. Some metrics like R-squared are dimensionless, while others, like RMSE, are expressed in
identical units to that of the dependent variable. When solutions represent non-linear problems, as
is often the case in GP investigations, R-squared may actually be an inappropriate metric (Kvalseth,
1985). Moreover, statistical measures deliver crisp numerical descriptors, while the acceptance cri-
teria adopted by a modeller is often somewhat more arbitrary and subjective. For example, some
researchers might consider an R-squared value of 0.8 to represent a good model, while others might
prefer 0.7. An alternative/complementary approach is to benchmark the performance evolved mod-
els against similar data-driven models, often created as part of the same study but developed using
different techniques. As a result, it is common to see more than one data-driven model being used
in a study and the best or winning model selected using goodness-of-fit statistics only. The underly-
ing principle in either case is to provide a summary statistic of the difference occurring between a
predefined set of observed measurement records and their corresponding model predicted outputs.
Scatterplots provide a good visual snapshot of the performance of a model where observed val-
ues are plotted against modelled ones; better models exhibit a straighter linear relationship of points
and a greater conformance to a one-to-one line inserted on the plot. Another useful tool, which is
more commonly used in time-series modelling, is residual analysis. This is where the difference
between observed and modelled values is plotted and reviewed for obvious patterns, the ideal solu-
tion providing no discernible pattern in the scatter cloud.
One-at-a-time response function sensitivity analysis is a tool that can be used to determine
whether an evolved solution is a rational representation of the system being studied (Beriro et al.,
2013). One of the advantages of this approach is expediency, as has been shown on a number of
occasions (e.g. Alkroosh and Nikraz, 2011; Kayadelen et al., 2009; Luan et al., 2008; Taskiran,
2010). The analysis is usually completed by creating a series of artificial datasets, one for each
independent variable expressed in the model. Each data set differs from the next in terms of the
variable under test, which is a range calculated using increments between its maximum and mini-
mum values; all other variables remain at their mean. The model is then applied to each data set
and the calculated outputs plotted as response function curves which are then compared to cross-
correlations derived from the original data. If the plots for each variable reveal a similar strength
182 GeoComputation

and direction of relationship to that found in the original dataset, then the model can be considered
to pass the sensitivity analysis test and may be classified as a rational model. The limitation with this
technique is that it does not examine multiple-variable effects on the predicted values. One tech-
nique that may be considered for such analyses is the generalised likelihood uncertainty estimation
approach (Beven and Binley, 1992).

8.3.5  Stage 5 Model Testing and Evaluation


Traditionally, data-driven modelling involves using a cross-validation data set that is run in paral-
lel with model development. Doing so determines the stopping point and means that models are
tested at the same time as they are developed (c.f. neural networks). This approach is not required
in GP, since evolutionary procedures and convergence usually result in a reasonable sub-optimal
solution that is less likely to be overfitted (Abrahart et al., 1999). However, this cannot be guaran-
teed (Fernando et al., 2009) and users should remain wary of such possibilities. GP model testing
is the application of evolved models to out-of-sample test period data (often termed unseen data)
after they have been developed. The results are then used to evaluate model performance, using
the same methods as were used for the development period data, but excluding sensitivity analysis
procedures, since the model structure itself remains unchanged.
The model evaluation completed for both development and test period data should then be
assembled to form lines of evidence that can then be evaluated and reported in support of the deci-
sion to accept or reject any proposed solution – and, finally, used to select a single preferred or
recommended model.

8.4  CASE STUDIES


Three GP case studies are summarised to show different ways in which symbolic regression can
be employed in, and contribute to, geographical enquiry. GeneXproTools software is used in the
first study. It provides a GEP exploration of pan evaporation in New Mexico, United States. Unique
to GEP is the use of Sub-ETs in the evolved solutions. This case study will show how these units
function both individually and as a whole. The second case study uses Eureqa software to perform
rainfall-runoff modelling for the Annapolis River in Nova Scotia, Canada. Eureqa ranks model per-
formance by measuring the complexity of each solution which means that the user can select which
model is preferred based on complexity as well as accuracy. The third case study is a summary of a
spatial interaction model that was originally presented in the first edition of this chapter. It is retained
because it facilitates a comparison between an early example of GP, programmed using Fortran, and
more contemporary GP explorations using proprietary software packages. Additionally, the final
case study involves a spatial analysis problem in human geography, in direct contrast to our more
recent meteorological and hydrological modelling examples, which form part of physical geography.

8.4.1 Estimating Pan Evaporation


Evaporation is a natural process that occurs on the surface of a water body due to the synergistic
effects of temperature, relative humidity, wind speed and solar radiation (Fu et al., 2009). Pan
evaporation is an estimate of evaporation made using a purpose built pan installed to measure
evaporative losses (EPAN) (World Meteorological Organization, 2008).
The study site was Elephant Butte Reservoir, situated within the southern reaches of the Rio Grande
Valley, in Sierra County, New Mexico, United States (Figure 8.5). This 14,500 ha reservoir has a north–
south axis and holds ~2.5 × 109 m3 of water at full capacity. It is situated at ~1345 m above mean sea level.
Two weather stations are positioned near the reservoir where standard meteorological measurements
and EPAN data are recorded daily: North Lake Weather Station (NLWS) (33°17′50″N, 107°11′38″W)
and South Lake Weather Station (SLWS) (33°8′45.52″N, 107°11′3.44″W). NLWS is located ~1.7 km
Genetic Programming 183

United States

Mexico

NLWS

Tularosa
Truth or La Luz
Consequences
Alamogordo
Hatch

Ri
oG
ran
de
Las Cruces

Anthony

Legend
Weather station
SLWS
Elephant Butte Reservoir

New Mexico

0 2 4 8 km

FIGURE 8.5  Location of Elephant Butte Reservoir and NLWS, New Mexico, United States used for the
estimating pan evaporation case study. (From Beriro, D.J. et al., Environ. Model. Soft., 47, 29, 2013.)

west of the reservoir at an elevation of ~1345 m. SLWS is located by the Elephant Butte Dam ~0.4 km
south of the reservoir at an elevation of ~1378 m. Both weather stations have been used in previous
daily pan evaporation studies (Abudu et al., 2011; Moreno et al., 2010). The weather in Sierra County is
seasonal, characterised by hot summers and cool winters. The region has a typical, semi-arid climate
with maximum temperatures ranging from 36°C to 41°C, minimum temperatures ranging from −8°C
to −21°C and an average annual precipitation of 22 cm (Williams, 1986). The frost period is short and
the reservoir does not freeze over. The prevailing wind blows from the west and southwest with peak
winds occurring during spring and early summer.
Six years (2002–2007) of daily data were modelled for NLWS. Eight standard meteorological
variables had been recorded, using appropriate equipment and, additionally, EPAN had been logged
184 GeoComputation

TABLE 8.2
Input–Output Variables Used in GEP
Estimating of Pan Evaporation
Symbol Units Description
Tmax °C Daily maximum temperature
Tmin °C Daily minimum temperature
Tavg % Average daily temperature
RHmax % Maximum daily relative humidity
RHmin % Minimum daily relative humidity
RHavg % Average daily relative humidity
Rs MJ m−2 Daily solar radiation
Uavg m s−1 Average daily wind speed
EPAN mm day−1 Daily measured pan evaporation

automatically using a Class A Pan. Further details on our data set are provided in Table 8.2. NLWS
records are used principally because the data that were available for this particular monitoring
station covered a longer period of observation. In addition, EPAN data were logged automatically at
NLWS, reducing the potential error that sometimes occurs with manual logging.
The GEP algorithm implemented in GeneXproTools 4.0 was used to predict EPAN from daily
meteorological data (Beriro et al., 2013). Software settings are shown in Table 8.3. Ten independent
solutions were evolved. The preferred model was selected using testing values for R-squared (0.77),
mean absolute error (1.44), RMSE (2.00) and a one-at-a-time response function sensitivity analysis
of the evolved solutions (Beriro et al., 2013). The goodness-of-fit statistics are summarised in
Table 8.4. The preferred GEP model is shown in Equation 8.5 and scatterplots comparing observed
EPAN with modelled values are provided in Figure 8.6.
Of particular interest in this study is that only 40% of models passed their respective sensitivity
analysis – meaning there was a 60% model redundancy rate (see Section 8.5.4 for a description of
how the sensitivity analysis was undertaken). Model redundancy is therefore a real issue – assuming
that is – that it is important for an evolved model to accurately reflect the conceptual underpin-
nings of its associated natural system. Results show that the performance of the preferred model
compared well to other published studies (Abudu et al., 2011; Moreno et al., 2010) supporting the
conclusion that GEP is able to produce a good predictive model for EPAN:

ÊPAN = Sub-ET1 + Sub-ET 2 + Sub-ET3 (8.5)

2
  2 
 
Sub-ET1 =   A tan
(
(Tmax − RHmin ) − Tmax ( Rs ) )   
 (8.5a)

  −7.488647 ( RH min )   
 
 

Sub-ET 2 = Uavg (8.5b)



2
 2 
 
Sub-ET3 =   A tan
( )(
Uavg (Tavg ) 0.286712 (Tmin ) )   
 (8.5c)
  RHavg + 8.177459   
 
 

in which ÊPAN represents our calculated estimate of measured EPAN.


Genetic Programming 185

TABLE 8.3
Software Settings Used in GEP Estimation of Pan Evaporation
Variable Setting
Number of chromosomes 30
Head size 8
Number of genes 3
Linking function Addition
Fitness function Relative root squared error
Generation 10,000 (user defined based on previous experience of when a
good generalisation is achieved)
Mathematical Default functions: addition, subtraction, multiplication, division,
square root, exponential, natural logarithm, x to the power of 2, x
to the power of 3, cube root, sine, cosine, arctangent
With parsimony pressure No
Enable complexity increase No
Mutation 0.044
Inversion 0.1
IS transposition 0.1
RIS transposition 0.1
One-point recombination 0.3
Two-point recombination 0.3
Gene recombination 0.1
Gene transposition 0.1

Numerical constants
Constants per gene 2
Lower bound −10
Upper bound 10
Data type Floating point
RNC mutation 0.01
Dc mutation 0.044
Dc inversion 0.1
Dc IS transposition 0.1

Figure 8.6 presents the results of an analysis of the solutions of how each Sub-ET functions in
relation to the overall EPAN solution. For this particular model, it can be seen that each Sub-ET
has a valuable role to play, suggesting sub-model redundancy is minimal. The diagram supports
the claim made by Ferreira (2001) that GEP utilises sub-solutions, which specifically offer their
own individual returns, in addition to that supplied by the collective sum of numerous internal
components. Useful future research might focus on determining whether each sub-ET is solving
a particular facet of a problem and how these sub-models relate to the physical processes that
control EPAN.

8.4.2 Rainfall-Runoff Modelling
Flood forecasting is an important aspect of applied hydrological sciences because of how it con-
tributes to the assessment and estimation of the hazards associated with rainfall, lake levels, river
levels and potential drought or flooding. This case study shows how GP can be used rainfall-runoff
modelling for the Annapolis River in Nova Scotia, Canada, using standard meteorological and
hydrological records. The location of the catchment is shown in Figure 8.7.
186 GeoComputation

TABLE 8.4
Evaluation of Sensitivity Analysis and Goodness-of-Fit Statistics for
Estimating Pan Evaporation Using GEP
Model Number
1 2 3 4 5 6 7 8 9 10

Development period goodness-of-fit statistics


R-squared 0.90 0.85 0.86 0.90 0.88 0.89 0.89 0.90 0.90 0.87
RMSE 1.39 2.97 1.72 1.39 1.64 1.47 1.45 1.45 1.43 1.58
MAE 1.03 2.48 1.32 1.05 1.23 1.11 1.08 1.08 1.09 1.21
ME (bias) −0.01 −2.36 0.12 0.11 −0.18 0.02 −0.03 −0.17 0.69 0.01

Sensitivity analysis
Tmax (D0) ✓ – × – ✓ – ✓ ✓ × –
Tmin (D1) ✓ ✓ × × ✓ ✓ ✓ ✓ ✓ ✓
Tavg (D2) × – ✓ ✓ ✓ – – ✓ – –
RHmax (D3) – – – – – – ✓ – – –
RHmin (D4) ✓ ✓ × × ✓ × – ✓ ✓ ×
RHavg (D5) – – – ✓ ✓ ✓ ✓ ✓ ✓ –
Rs (D6) ✓ ✓ × × ✓ ✓ ✓ ✓ ✓ ✓
U (D7) ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓

Test period goodness-of-fit statistics


Pass/Fail Fail Pass Fail Fail Pass Fail Pass Pass* Fail Fail
R-squared 0.67 0.74 0.75 0.77
RMSE 2.69 2.08 2.09 2.00
na na na na na na
MAE 2.09 1.49 1.47 1.44
ME (bias) −1.46 0.62 0.69 0.63

Note: ✓ represents a response consistent with predetermined intervariable correlation coefficients,


× represents an inconsistent response, – represents absence of variable in GEP model, d# refers
to the GEP model variable name, * indicates preferred model and na means not applicable.
Bold text indicates the goodness-of-fit statistics for the preferred model.

The Annapolis River is located within the Humid Continental Zone according to the Köppen
Climate Classification. This river flows 120 km, through rolling hills before reaching the Bay
of Fundy. It has a total catchment area of about 2000 km 2, with the highest ranges reaching
up to 230 m above sea level. The Annapolis catchment is interesting from a modelling point
of view due to its climate conditions. Precipitation occurs throughout the whole year, being
slightly lower during summer. Snowfall is common from November until April with rare hur-
ricane weather in autumn. Although the average maximum temperature is below 0°C in January
and February, significant variation in temperature may result in milder weather and snowmelt
throughout the winter. Moreover, as average minimum temperature is below 0°C during half of
the year, freezing and melting occur frequently meaning that on account of daily variations and
seasonal changes in temperature, snowfall and snow retention pose a real challenge for hydro-
logical modellers.
The hydrometeorological data employed in this study comprised 3649 daily records span-
ning a 10-year period (2000–2010). Twelve lagged input predictors, covering t − 1 and t − 2, and
a single output predictand [Q(t)], provided a model development data set (Table 8.5). The river
discharge data were obtained from the Water Survey of Canada, for Wilmot settlement, located
at 44°56′57″, 65°01′45″W (Station Number 01DC005, Annapolis River at Wilmot, Nova Scotia:
Genetic Programming 187

Sub-ET1 Sub-ET2

16 16
ÊPAN (mm day–1) 14 14

ÊPAN (mm day–1)


12 12
10 10
8 8
6 6
4 4
2 2

2 4 6 8 10 12 14 16 2 4 6 8 10 12 14 16
(a) EPAN (mm day–1) (b) EPAN (mm day–1)

Sub-ET3 ET = Sub-ET1 + Sub-ET2 + Sub-ET3

16 16
14 14
ÊPAN (mm day–1)

ÊPAN (mm day–1)

12 12
10 10
8 8
6 6
R2 = 0.77
4 4
2 2

2 4 6 8 10 12 14 16 2 4 6 8 10 12 14 16
(c) EPAN (mm day–1) (d) EPAN (mm day–1)

FIGURE 8.6  Individual (a–c) and combined (d) test period outputs produced from Sub-ETs in preferred EPAN
solution for estimating pan evaporation at NLWS.

http://www.ec.gc.ca/rhc-wsc/). The meteorological data were obtained from Canada’s National


Climate Data and Information Archive and are for Greenwood Airfield (44°58′40″N, 64°55′33″W),
situated almost 10 km east from Wilmot gauging station (http://climate.weatheroffice.gc.ca/).
Eureqa (Cornell University, 2013) was used to perform GP modelling. The software package
supports a number of basic data cleansing operations, including smoothing, normalisation and out-
lier removal – but in this study, they were not applied. Eureqa automatically ranks each solution in
terms of its complexity; this is calculated from the number of nodes present in the solution, that is,
size of solution. Collectively, these features mean the potential effects of data pre-processing and
model complexity operations can be easily evaluated. The mathematical functions selected for the
Annapolis experiment are shown in Table 8.6 and other settings in Table 8.7. Goodness-of-fit met-
rics for the developed models were calculated using HydroTest, a standardised, open access website
that performs the required numerical calculations (Dawson et al., 2007).
Eureqa modelling of daily discharge for the Annapolis River produced a range of solutions
of varying complexity. The principal rainfall–runoff drivers are found to be lagged discharge
and lagged precipitation, as expected. The complexity–accuracy trade-off is nevertheless found
to exhibit threshold behaviour, in which snow cover is eventually included at higher levels of
complexity to account for multifaceted cold season processes. Figure 8.8 illustrates that fitness
was generally poorer for models that did not include a snow-related factor, which first appeared
in model size 25.
188

FIGURE 8.7  Location of the Annapolis River, Nova Scotia, Canada used for rainfall-runoff modelling. (From Piotrowski, A.P. and Napiorkowski, J.J., J. Hydrol., 407,
12, 2011; Natural Resources Canada, The Atlas of Canada, 6th edn., 1999–2009.)
GeoComputation
Genetic Programming 189

TABLE 8.5
Input Variables and Notation Used in Eureqa Rainfall-Runoff
Modelling for Annapolis River at Wilmot
Input Predictor
Symbol Output Lag 1 Lag 2
Daily discharge (m /s)
3 Q Q(t) Q(t − 1) Q(t − 2)
Total daily rainfall (excluding snowfall) (mm) RF RF(t − 1) RF(t − 2)
Minimum daily temperature (°C) LT LT(t − 1) LT(t − 2)
Maximum daily temperature (°C) UT UT(t − 1) UT(t − 2)
Total daily snowfall (mm) SF SF(t − 1) SF(t − 2)
Thickness of daily snow cover (cm) SC SC(t − 1) SC(t − 2)

TABLE 8.6
Mathematical Functions Used in
Eureqa Rainfall-Runoff Modelling
for Annapolis River at Wilmot
Symbol Description
+ Addition
− Subtraction
* Multiplication
/ Division
sin Sine
cos Cosine
C Constant

TABLE 8.7
Other Settings Used in Eureqa Rainfall-Runoff Modelling for Annapolis River at Wilmot
Setting Description
Error metric Squared error
Relative weight assigned to variables None
Data splitting Treat all points equally (50:50, training/testing)
Data pre-processing options (e.g. removal of outliers) None
Stopping point Not defined

Our knowledge of the climatic conditions in the catchment area supports the logical
assumption that snow melt in a hydrological model for river flow is potentially important.
More detailed analysis of the error using a variety of goodness-of-fit statistics is presented in
Figure 8.9. That particular graphic shows that the model with a complexity value of 25 is one of
the most accurate solutions. It also confirms that similar levels of fitness can be achieved, using
even simpler models, perhaps ones that were evolved at earlier stages in the model development
process. However, simpler solutions could have been developed at any point during the overall
search process. The variables used in such models did not include snow melt and so could be
rejected. By using multiple lines of evidence (complexity, goodness-of-fit, utilised variables), we
190 GeoComputation

60
Key
Frontier
50 Solutions
Mean squared error
40 Preferred solution

30

20

10
0 5 10 15 20 25 30 35 40
Complexity

FIGURE 8.8  Eureqa: accuracy–complexity trade-off for rainfall-runoff modelling of Annapolis River.

Preferred solution
120
Key
AME (m3 s–1)
100
MSDE (dimensionless)
PDIF (m3 s–1)
80
RMSE (m3 s–1)

60
Error

40

20

–20
0 5 10 15 20 25 30 35 40
Complexity

FIGURE 8.9  Eureqa: model complexity plotted against different measures of fit for rainfall-runoff modelling
of Annapolis River. Notes: AME, absolute maximum error; PDIF, peak difference; RMSE, root mean squared
derivative error; MSDE, mean squared derivative error.

can determine a prferrred model, that is, one that is a selected over others. The least complex
solution is, as might indeed be expected, a naïve/persistence model that has a complexity of 1
(Equation 8.6). The preferred complexity–accuracy solution is presented in Equation 8.7 (com-
plexity = 25). This represents the simplest model that included a snow-related factor, in which
depth of snow cover, not daily snow fall or maximum daily temperature, appears to be a primary
indicator of snow melt.
Simplest model:

Q(t) = Q(t − 1) (8.6)


Genetic Programming 191

Simplest model that included a snow-related factor:

Q (t ) =
( 250.17 × Q ( t − 1) + 12.88 × RF ( t − 1) × Q ( t − 1)) (8.7)

( 257.05 + Q ( t − 1) + 3.25 × RF (t − 1) × cos ( SC ( t − 1)) − UT ( t − 1))
8.4.3  Building a Spatial Interaction Model
Spatial analysis is used as a tool to describe the flow of people, goods or services from one place to
another (Thomas and Hugget, 1980). One of the tools for this type of analysis is spatial interaction
models. These can be used in transport planning, land-use planning, retail decision support and
other similar applications. Commuting and travel behaviour by individuals is particularly relevant
and is a popular application of spatial interaction modelling (see O’Kelly et al., 2012; Openshaw
and Turton, 1994; Salas-Olmedo and Nogués, 2012; Wilson, 1969), in which conventional spatial
interaction models include entropy-based solutions for estimating the flow (Tij) between origin
(i) and destination (j) (O’Kelly, 2010; Openshaw, 1976) and an entropy-based model has been
developed using GP (Diplock and Openshaw, 1996). Problems are often represented as a matrix
categorised by the predictor used in each study (e.g. number, cost or distance of trips), spatial
reference point (e.g. town or parish) and a set of independent variables (e.g. demographics, eth-
nicity, class) which can thereafter be modelled using traditional statistical techniques or novel
data-driven ones such as GP.
The following spatial interaction model was originally presented in the first edition of this book
(Diplock, 2000). It is a useful case study because not only does it show how GP can be used to build
spatial interaction models but also because it is able to demonstrate some of the features of GP that
were typical in the late 1990s. The example is a study of journey-to-work data in which the number
of trips to work is predicted from data collected for Durham County as part of the UK Census in
1966. The GP source code and search algorithm used for the Durham journey-to-work analysis was
programmed almost entirely from scratch in Fortran (Diplock, 2000). Nowadays, command-line
programming is seldom necessary thanks to the availability of GP software. Indeed, we are now
in the age of powerful desktop computers and user-friendly packages such as GeneXproTools and
Eureqa, meaning that GP modelling requires comparatively little effort in terms of software coding
and parameterisation, and run times have been reduced to as little as 30 min, depending on the size
of the data set and the power of your computer.
Input data for the County Durham journey-to-work example comprised 5329 records pre-
sented in a 73 × 73 matrix. Two model types were developed and tested using different types
of journey flow data: (1) volume based and (2) probability based. The volume-based models
calculate predicted flows, that is, the number of workers moving between zones, which add up
to the total number of flows. The probability-based model takes the number of workers and flow
and calculates each flow as a percentage of the total and then predicts an output based on these
units, which add up to 1. In each case, the models were evolved to predict flow (Tij), measured by
the number of journeys to work to and from the 73 census zones. Seven independent variables
were used to evolve the GP model, which are described in Table 8.8. The mathematical functions
used for model development and validation are shown in Table 8.9. The goodness-of-fit measure
selected for model evaluation was the sum-of-squares error (SoS). The probability model outputs
were subsequently converted back to volumes, for error calculation purposes so that both sets of
results could be compared.
The two preferred solutions are rather large and cumbersome, as can be seen in Equations 8.8
and 8.9. To help make the GP outputs simpler and easier to work with, they were simplified using
a piece of software capable of resolving and simplifying equations called Maple V (release 3), the
outputs of which are shown in Equations 8.10 and 8.11.
192 GeoComputation

TABLE 8.8
Input Variables and Notation for Durham Spatial Interaction Model
Symbol Notation Description
V1 Oi Origin flow total
V2 Di Destination flow total
V3 Oj Inverse destination flow total
V4 Dj Inverse origin flow total
V5 Cij Distance measure
V6 Xij Intervening opportunity which is the percentage of intervening
destinations between each trip pair
V7 Zij Competing destination which is the sum of Dj divided by
distance from alternative destinations
V8 Iij Intrazonal trip flag identifies when a trip starts and finishes in the
same zone

TABLE 8.9
Mathematical Functions for
Durham Spatial Interaction Model
Symbol Description
+ Addition
− Subtraction
* Multiplication
/ Division
^ Power
abs Absolute
sqrt Square root
log Natural logarithm
exp Exponential
< Less than
> Great than
sin Sine
cos Cosine

Equation 8.8 – Initial volume-based GP solution

−V5
  V V −1.82  
T = V2  12V1V2V61.82V21.82 + 3.34 + 2V1 − V1V5−1.82 + V1V41.82 + 6 5 
  V2  
−V5
 V V −1.82 
× V2 + V6 + 3.34 + 6 5
 V2
 (
V2 log 1.67 + V61.67 − 3V61.82 )
 

 V2 
 ( )
× V61.67 − 2V6 + V1 log V41.82V5−1.39 + V1V5−1.82 + V2   V2 +
 2V2 2V5 
(8.8)

Genetic Programming 193

Equation 8.9 – Initial probabilistic-based GP solution


V2V6 log (V1 )
V6−1.7 + V6V2V6 log(V1 )V6
Tij = V2 log (V1 )
V2


(
+V1 log  V12V6−1.2 V2 + V2V8 + V2V6log(V1 )  log (V2 ) + V1V2V6 log (V2 ) V21.5V6−1.7 (V6 + V8 )
 
)
−1.4
) 
 V V V V +V log (V1 ) V22 + V8  
 2 6 1.31 + 2 6 8 3.2 + V6  V +V 
V5 V6  21.17 8 
+  (8.9)


(
V2 log V22 log (V2 ) (V6 + V8 ) )  V5



  

Equation 8.10 – Simplified volume-based equation

 
 
V2
Tij = V1  
  −31.40 + †V5−0.008
 
 −2.97 exp  V8 +

  V4 
(
− 4.63V6  − 0.78 − V6 ) 

 
 
1
× + V8   (8.10)
  V8 + 20.23  
 exp  −9.41V5 +  + V8 
  V2  

Equation 8.11 – Simplified probabilistic-based equation

V22 exp ( −0.05V5 )


Tij = (8.11)
V61.2

SoS values calculated for the GP models are provided in Table 8.10. The results are also compared
and contrasted against a conventional spatial interaction model. The standard model was specified as

Tij = Ai ⋅ Oi ⋅ W jα ⋅ exp ( −β ⋅ Cij ) (8.12)



where
i is the origin
j is the destination
T is a trip
O is the size of the origin
W is the attractiveness of the destination
C is a distance or cost measure
the β parameter controls the willingness to travel
A is a balancing factor, so that the origin totals match, defined as
−1
 n 
Ai = 
 ∑ j =1
W j ⋅ exp ( −β ⋅ Cij )  (8.13)


The parameters α and β are optimised according to an error function.
194 GeoComputation

TABLE 8.10
Summary of Sum of Squares Error for Spatial Interaction Models
Conventional Spatial
Interaction Model Initial GP Model Simplified Model
Development Testing Model Type Development Testing Development Testing
Volume 156 (Equation 8.8) 25 205 (Equation 8.10) 28
261 8
Probabilistic 137 (Equation 8.9) 15 126 (Equation 8.11) 8

The Durham journey-to-work case study shows that GP is capable of evolving a spatial interac-
tion model. Importantly, the probabilistic GP model did better than the volume GP model, and
neither model performed better than the conventional model on the test data set – suggesting no
overall gains from the use of GP. Simplification of the GP volume model, unfortunately, in all cases
produced an even poorer fit, confirming that the far more complicated original version was actually
a superior product. Simplification of the probabilistic GP model, in contrast, produced an improved
generalisation in all cases suggesting that the far more complicated original product was in some
way overfitted. These, nevertheless, were early demonstration runs, which were designed to test and
explore the potential benefits on offer from GP. There was a steep learning curve involved and, as
ever, it would have benefitted from further refinement. The author of this original pioneering case
study, many years ago, clearly recognised and accepted that additional investigations were subse-
quently required in order to extend the initial findings and develop a truly global model, one that
was superior to conventional methodologies, and also performed well on out-of-sample test data
(Diplock, 1998). Finally, it is also clear from such initial GP solutions (Equations 8.8 and 8.9) that
raw equations derived from GP modelling in the mid-late 1990s were especially large, complex and
cumbersome products, making them difficult to rationalise and interpret. The requirement to code
the GP program from scratch, coupled with the necessary computing resources that were required
to run it effectively, made the technique more accessible to computer scientists and mathematicians
than the discerning geographer.

8.5  FUTURE DIRECTIONS


The first edition of this chapter succeeded in drawing a line in the sand which marked the end of the
first development era for GP. In the first edition, Diplock (2000) discussed the technical background
and implementation issues associated with coding a GP in Fortran. He successfully showed how
GP can be implemented and he speculated about the direction of research for the following decade.
Problems highlighted with processing speed have since been resolved with the advent of new com-
puting technology, which itself has been accompanied by accessible innovations in software, such
that one can now expect to use GP to analyse a data set on a home computer within a few hours of
data acquisition. Research papers are regularly reporting that GP solutions perform better than tra-
ditional statistical techniques, at least in terms of goodness-of-fit metrics. Arguably, the question of
whether GP actually works has been answered and we should now be focusing on how well it works,
stimulating a debate about whether GP is now coming of age.
This leads us towards ever-deeper philosophical questions and, by analogy, to the concept of a
scary two-headed monster: something that will need to be battled against over the next 10 years!
Two major challenges face GP – and, like Orthus, in Greek mythology, a two-headed hellhound,
serpent-tailed dog, with sharp edged teeth that was slain by Heracles – both must be defeated simul-
taneously. Indeed, defeating one or other head or factor, in isolation, is clearly insufficient since it
will not on its own deliver that which is required, and it is difficult to know where to start and/or how
to progress since they appear to operate in conjunction with each other and support one another!
Genetic Programming 195

Head 1: Perhaps, the scientific community should focus on simply accepting GP solely for its
ability to fit good curves to our hard-earned datasets. This approach can deliver promising results
but, unfortunately, offers no explanation of the underlying the physical processes involved or, indeed,
of the process by which any such discoveries are arrived at. It is a directed search. Nothing more.
Nothing less. Thus, how can any related findings or discoveries be trusted, and how can one be
assured that it is not producing an apparently right answer, for potentially the wrong reasons. Indeed,
distinguishing between serious scientific investigations and coincidence hunting activities is essential.
Head 2: Perhaps, the scientific community should focus on better exploiting the transparency of
GP. However, since each solution is completely transparent, other people can easily test it for logic
and physical rationality… perhaps exposing nonsense in your work! Clearly, you should have tested
it yourself and at least in some studies, input and/or output parameter sensitivity analysis is being
reported, allowing readers to get to grips with the effect of input and output model parameterisation.
The flip side of the coin is that such explorations take much longer to plan and execute.
This chapter refers a lot to the transparency of GP solutions and how this feature should be
exploited to show how evolved solutions might relate to the natural systems being modelled. A sug-
gested tool for this is a simple one-at-a-time response function sensitivity analysis. This point is con-
sidered important because GP produces equations that describe environmental, social and economic
data, which if modelled properly have the potential to improve our management of natural resources.
There is an implicit assumption by many authors that GP serves as a tool for experimentation and
hypothesis falsification rather than as a standalone tool for pattern identification and discovery. We
need to start to envisage GP as a computer-based laboratory where in silico techniques complement
more traditional approaches such as field work and associated observation. This would mean making
methods, results and model evaluation considerably more repeatable, understandable and transparent
than they are currently. Conversely, GP is a data-driven modelling tool, which unlike mechanistic
models does not necessarily require a priori assumptions to be made about the problem or the form
that a solution should take, except, as mentioned earlier, for user-defined decisions and/or restrictions
regarding model inputs, mathematical operators and software settings. This approach carries with it
the risk that researchers bury their heads in the sand and avoid addressing questions that are difficult
to answer. A significant number of peer-reviewed papers fail to go beyond using goodness-of-fit statis-
tics and offer simple intermodel competition as justification for model acceptance and approval. If we
do not act, this could become the norm, adversely affecting the wider acceptance of GP as a tool that
can be used for knowledge discovery, which when used appropriately, could ably assist policy makers,
practical decision makers and natural resource planners. The following sections pose three simple
questions that should be considered before embarking on a GP modelling challenge. If nothing else,
they serve to manage operator as well as end-user expectations, and help prevent modellers from tak-
ing routes through the GP maze, that could lead to the production and/or winning of a poisoned chal-
ice, meaning something nasty arising from poor or unfinished scientific scholarship. In most cases,
it simply requires one to steer clear of undertaking fruitless and unnecessary modelling expeditions.

8.5.1 Is It Important How Things Are Modelled?


We have seen how GEP places importance on the way in which things are modelled by including
Sub-ETs in modelling operations and outputs. However, exactly what role these sub-models play is not
certain. In the absence of solid research, we need to take a step back and ask some higher-level ques-
tions. For example, which is better: a model that shows RMSE of 2.50 or one with a value of 2.00? If
your answer is that 2.00 is of course better, then perhaps you do not believe that it matters how things
are modelled. Alternatively, if you asked what does the model look like and does it make any physical
sense, then you probably support a different philosophical standpoint. But should such factors be so
clearly separated? Indeed, surely accuracy, sensitivity, rationality and common sense can and should
all be used to help elucidate model functionality – leading to an informed decision on model selection
(Beriro et al., 2013).
196 GeoComputation

Beriro et al. (2012b) recently performed an evaluation of a published GEP model by using a
simple one-at-a-time response function sensitivity analysis. Their results showed that the equation,
evolved to predict the secant soil modulus, did not respond as expected to increases in moisture con-
tent, suggesting that this variable could be omitted from the model without consequence – a coun-
terintuitive assumption given our knowledge of the role of moisture in determining the geotechnical
properties of soil. The goodness-of-fit metrics in the original study were acceptable and the scatter
plots looked good so what was the problem? Adopting a descriptive statistical technique for model
evaluation without any other form of assessment carries the risk of glossing over the intricacies of
the model itself – which, in the case of the secant soil modulus study, led to spurious claims that
the reported model had some practical value beyond the data set upon which it was developed. The
discussers argued that determining model rationality is critical. However, some may believe that
providing a model makes good predictions, it doesn’t really matter what goes on inside it. Such a
view represents a black-box approach to GP that has permeated current environmental applications,
contaminating many potentially valuable studies. Improved model evaluation should be expected
by journal editors and has itself been shown to greatly improve the practical benefits of using GP to
explain complex systems.

8.5.2  Should Models Be Complex?


GP software such as Eureqa and GeneXproTools offer measures of complexity as part of their model
evaluation. Part of the reason for this is to avoid overfitting or convergence where models only per-
form well on development period rather than test period datasets. Another reason is because overly
complex models can be cumbersome and confusing. It is important that the complexity of a model
is reflective of the problem being evaluated. It is assumed here that model parsimony is a good
thing – the ability to explain a problem as simply as possible generally makes the communication and
deployment of a descriptive model much easier. Consider an example of a shallow groundwater sys-
tem in a temperate region of the world that experiences minimal daily fluctuations and large seasonal
changes in the depth of the water table. Assuming that the only data available are represented as a
time series of daily groundwater levels, we could form two viewpoints, each leading to a null hypoth-
esis about predicting daily groundwater levels one or a few steps ahead: (1) GP is unable to model
one-day-ahead fluctuations in the depth to groundwater or (2) one-day-ahead fluctuations in the
depth to groundwater cannot be meaningfully modelled. Each would require a different approach.
The first would probably only require available data to be plugged into GP software and a model
evolved with reasonable goodness of fit. The second would require an understanding of the ground-
water system to be established where the relationship between daily fluctuations could be described
and a suitable modelling technique assigned. Beriro et al. (2012a) showed that in such cases, the rela-
tionship between groundwater level at present time (T) and one-day-ahead time (T+1) for a particular
aquifer was almost linear. To test the simplicity of this system, they developed a PERSIST model
where T+1 = T. It was shown that the performance of the PERSIST model was almost identical to a
more complex published GEP model. The adage less is better prevails for this example.

8.5.3 Does It Matter What You Model?


Choosing which variables to evaluate is critical in GP modelling. Imagine an experiment where you
used government data for your modelling but failed to read the caveats on how and why that data
had been collected. In the case of pan evaporation data (EPAN) published by the US Environmental
Protection Agency, when observed data are unavailable, they are calculated using an empirical
equation (ECAL: Burns et al., 2007). This means that downloaded data could reasonably contain
a mix of observed and calculated values or indeed be comprised exclusively of one or the other.
Assuming you modelled observed EPAN, you may expect an output accuracy of 70%, whereas if you
modelled previously calculated values, ECAL, then you would probably achieve an output accuracy
Genetic Programming 197

of around 90% (Beriro et al., 2013; Moreno et al., 2010). Without knowing that you are modelling
calculated data you may conclude, like Shiri and Kişi (2014), that an evolved GP program outper-
forms traditional EPAN models by a specified amount and should therefore be employed in water
resources planning. The right answer for the wrong reason? Another good illustration of the rel-
evance of what is being modelled can be found in Beriro et al. (2013). They concluded that the
quality of the testing data can be more influential in terms of discriminating between models than
the quality of the original data that was used to develop such models, notwithstanding the fact that
development data must contain sufficient information about the natural system in the first instant.
The key message in such examples is that close attention should be paid to what is being modelled
as it has a direct relationship with what we might reasonably expect in return from our investment
in model development and testing.

8.5.4 Here Be Dragons?
Here be dragons refers to dangerous or unexplored territories, in imitation of the medieval carto-
graphic practice of putting dragons, sea serpents and other mythological creatures in uncharted
areas of maps. Such geographical phrasing nicely extends our earlier concept of a two-headed mon-
ster, and such an analogy may be well suited to describe what is actually happening in the field.
GP is a well-established data-driven modelling tool that over the past 10 years has been used suc-
cessfully by geographers and environmental scientists alike. Truly practical applications are still
few and far between, despite the fact that many papers purport to having evolved new and excit-
ing equations. Why is this? Perhaps it is because authors fail to provide the missing link between
the evolved models and the conceptual model of the system being examined. This might be true.
However, another reason that the current authors feel prevails among potential users is that GP
is scary: an unknown entity, which is apparently so complicated, that it is feared. Likewise, this
may also be the reason why some existing users fail to go beyond using goodness-of-fit statistics
to select a preferred model. Is this happening because GP is too high tech? Is it too challenging? Is
artificial intelligence something that electrical and computer engineers can use to design new wash-
ing machines, as opposed to a tool that is readily accessible to modern graduates of GC? Indeed,
unless we bridge the gap between theory and practice, GP may well end up being a slightly esoteric
choice for modelling studies, one that fails to properly link in with current environmental policy and
decision-making activities.
We should also consider whether GP is being used as a toy or a useful tool. Looking at some
recently published research suggests the former. For complex hydrological problems, it has certainly
been used extensively, and to a lesser extent, in spatial analysis, but this does not really allowing
us to manoeuvre it towards mainstream applications or deeper scientific enquiry. Computer tech-
nology and software is such that complicated modelling operations can now be performed on a
home computer by researchers with little to no background in computer science, programming or
environmental modelling, but how are we responding to this? Recent literature reflects two distinct
lines of enquiry: (1) GP is a curve fitting black-box data-driven modelling tool where findings are
heavily weighted on goodness-of-fit statistics and intermodel competition; and (2) GP is a novel in
silico laboratory method able to generate evidence that can be used to test known relationships or
derive new knowledge. If the second, and if GP is as prevalent as Scopus literature searches sug-
gests, then should we not be seeing it used by the masses, in a similar way to traditional statistical
techniques, or taught regularly in undergraduate classes? After 15 years of progressive develop-
ment, one might expect so. Are people really too afraid to use it or is it not as great as its propo-
nents suggest? Is it really a two-headed monster or scary dragon? The authors of this chapter are
strong proponents of the technique, and we urge you towards experimentation and discovery, and
to bravely go where others fear to tread!
One of the reasons for writing this chapter was an attempt to demystify GP and present it as a
simple and accessible tool that provides an exciting and novel way of examining geographically
198 GeoComputation

based research problems. By adopting the general framework provided in Section 8.3, you should be
able to carefully secure transparent and repeatable research, moving well on your way to discover-
ing new and useful solutions. If in doubt, then the only answer is of course to take GP out for a test
drive, treating it neither as a toy nor permitting it to conjure up images of scary dragons or whatever,
but rather as a practical knowledge discovery and problem-solving tool that is calling out to you, and
your geographical science-based research, with an open invitation to gain skills and proficiency in
what is on offer and begin the process of becoming more fully engaged!

REFERENCES
Ab Ghani, A. and Azamathulla, H. M. 2011. Gene-expression programming for sediment transport in sewer
pipe systems. Journal of Pipeline Systems Engineering and Practice 2: 102–106.
Ab Ghani, A. and Azamathulla, H. M. 2012. Development of GEP-based functional relationship for sediment
transport in tropical rivers. Neural Computing and Applications 24(2): 271–276.
Abrahart, R. J., Dawson, C. W., See, L. M., Mount, N. J. and Shamseldin, A. Y. 2010. Discussion of
“Evapotranspiration modelling using support vector machines”. Hydrological Sciences Journal 55:
1442–1450.
Abrahart, R. J., Mount, N. J., Ab Ghani, N., Clifford, N. J. and Dawson, C. W. 2011. DAMP: A protocol
for contextualising goodness-of-fit statistics in sediment-discharge data-driven modelling. Journal of
Hydrology 409: 596–611.
Abrahart, R. J., Mount, N. J. and Shamseldin, A.Y. 2012. Neuroemulation: Definition and key benefits for water
resources research. Hydrological Sciences Journal 3: 407–423.
Abrahart, R. J., See, L. M. and Kneale, P. E. 1999. Using pruning algorithms and genetic algorithms to opti-
mise network architectures and forecasting inputs in a neural network rainfall-runoff model. Journal of
Hydroinformatics 1: 103–114.
Abudu, S., Cui, C., King, J. P., Moreno, J. and Bawazir, A. S. 2011. Modeling of daily pan evaporation using
partial least squares regression. Science China Technological Sciences 54: 163–174.
Adnan, M., Longley, P., Singleton, A. and Turton, I. 2014. Parallel computing in geography. In GeoComputation,
2nd edn., eds. R.J. Abrahart and L. M. See, pp. 49–68. Boca Raton, FL: Taylor & Francis Group.
Alavi, A. H. and Gandomi, A. H. 2011. A robust data mining approach for formulation of geotechnical
engineering systems. Engineering Computations 28: 242–274.
Alexandrov, G. A., Ames, D., Bellocchi, G., Bruen, M., Crout, N., Erechtchoukova, M., Hildebrandt, A. et al.
2011. Technical assessment and evaluation of environmental models and software: Letter to the editor.
Environmental Modelling and Software 26: 328–336.
Alkroosh, I. and Nikraz, H. 2011. Correlation of pile axial capacity and CPT data using gene expression pro-
gramming. Geotechnical and Geological Engineering 29: 725–748.
Azamathulla, H. M. and Zahiri, A. 2012. Flow discharge prediction in compound channels using linear genetic
programming. Journal of Hydrology 454–455: 203–207.
Bellocchi, G., Rivington, M., Donatelli, M. and Matthews, K. 2010. Validation of biophysical models: Issues
and methodologies. A review. Agronomy for Sustainable Development 30: 109–130.
Bennett, N. D., Croke, B. F.L. W., Guariso, G., Guillaume, J. H.L. A., Hamilton, S. H., Jakeman, A. J., Marsili-
Libelli, S. 2012. Characterising performance of environmental models. Environmental Modelling and
Software 40: 1–20.
Beriro, D. J., Abrahart, R. J., Mount, N. J. and Nathanail, C. P. 2012a. Letter to the Editor on “Precipitation
Forecasting Using Wavelet-Genetic Programming and Wavelet-Neuro- Fuzzy Conjunction
Models” by Ozgur Kisi & Jalal Shiri [Water Resources Management 25 (2011) 3135–3152]. Water
Resources Management 26(12): 3653–3662.
Beriro, D. J., Abrahart, R. J. and Nathanail, C. P. 2012b. Comments on “Empirical modelling of plate load test
moduli of soil via gene expression programming” by Ali Mollahasani, Amir Hossein Alavi and Amir Hossein
Gandomi [Computers and Geotechnics 38 (2011) 281–286]. Computers and Geotechnics 39: 75–78.
Beriro, D. J., Abrahart, R. J., Nathanail, C. P., Moreno, J. and Bawazir, A. S. 2013. A typology of different
development and testing options for symbolic regression modelling of measured and calculated datasets.
Environmental Modelling and Software 47: 29–41.
Beven, K. and Binley, A. 1992. The future of distributed models: Model calibration and uncertainty prediction.
Hydrological Processes 6: 279–298.
Brameier, M. and Banzhaf, W. 2001. A comparison of linear genetic programming and neural networks in
medical data mining. IEEE Transactions on Evolutionary Computation 5: 17–26.
Genetic Programming 199

Brameier, M. and Banzhaf, W. 2007. Linear Genetic Programming. New York: Springer Science, Business
Media.
Burns, L. A., Suárez, L. A. and Prieto, L. M. 2007. United States Meteorological Data Daily and Hourly Files
to Support Predictive Exposure Modeling. Washington, DC: U.S.E.P.A.
Cornell University. 2013. Cornell Creative Machines Lab (Online). Ithaca, NY: Cornell University. Available:
http://creativemachines.cornell.edu/eureqa (Accessed 28 June 2013).
Dawson, C. W., Abrahart, R. J. and See, L. M. 2007. HydroTest: A web-based toolbox of evaluation metrics
for the standardised assessment of hydrological forecasts. Environmental Modelling and Software 22:
1034–1052.
Diplock, G. 1998. Building new spatial interaction models by using genetic programming and a supercomputer.
Environment and Planning A 30: 1893–1904.
Diplock, G. 2000. Genetic programming: A new approach to spatial model building. In GeoComputation, eds.
S. Openshaw and R.J. Abrahart, pp. 222–257. London, U.K.: Taylor & Francis Group.
Diplock, G. and Openshaw, S. 1996. Using simple genetic algorithms to calibrate spatial interaction models.
Geographical Analysis 28: 262–279.
Fernando, A., Shamseldin, A. Y. and Abrahart, R. 2012. Use of gene expression programming for multimodel
combination of rainfall-runoff models. Journal of Hydrologic Engineering 17: 975–985.
Fernando, D., Shamseldin, A. Y. and Abrahart, R. J. 2009. Using gene expression programming to develop a
combined runoff estimate model from conventional rainfall-runoff model outputs. In 18th World IMACS/
MODSIM Congress. Cairns, Australia.
Ferreira, C. 2001. Gene expression programming: A new adaptive algorithm for solving problems. Complex
Systems 13: 87–129.
Ferreira, C. 2006a. Automatically defined functions in gene expression programming. In Genetic Systems
Programming: Theory and Experiences, eds. N. Nedjah, L. de M. Mourelle and A. Abraham, pp. 21–56.
Dordrecht, the Netherlands: Springer-Verlag.
Ferreira, C. 2006b. Gene Expression Programming: Mathematical Modeling by Artificial Intelligence.
Dordrecht, the Netherlands: Springer.
Ferreira, C. 2013. GEPSoft (Online). Available: http://www.gepsoft.com/ (Accessed 28 June 2013).
Fu, G., Charles, S. P. and Yu, J. 2009. A critical overview of pan evaporation trends over the last 50 years.
Climatic Change 97: 193–214.
Goldberg, D. E. 1989. Genetic Algorithms in Search, Optimization, and Machine Learning. Boston, MA:
Addison-Wesley Longman Publishing Co., Inc.
Graff, M. and Poli, R. 2010. Practical performance models of algorithms in evolutionary program induction and
other domains. Artificial Intelligence 174: 1254–1276.
Grimm, J. and Grimm, W. 1812. Der Froschkönig oder der eiserne Heinrich. In Kinder- und Hausmärchen,
1st edn., vol. 1, pp. 1–5. Berlin, Germany: In der Realschulbuchhandlung.
Guven, A. and Kisi, O. 2010. Daily pan evaporation modeling using linear genetic programming technique.
Irrigation Science 29.
Hashmi, M. Z., Shamseldin, A. Y. and Melville, B. W. 2011. Statistical downscaling of watershed pre-
cipitation using Gene Expression Programming (GEP). Environmental Modelling and Software 26:
1639–1646.
Heppenstall, A. J. and Harland, K. 2014. Evolutionary algorithms. In GeoComputation, 2nd edn., eds.
R.J. Abrahart and L.M. See, pp. 143–168. Boca Raton, FL: Taylor & Francis Group.
Holland, J. H. 1975. Adaptation in Natural and Artificial Systems: An Introductory Analysis with
Applications to Biology, Control, and Artificial Intelligence. Cambridge, MA: Massachusetts Institute
of Technology.
Jakeman, A. J., Letcher, R. A. and Norton, J. P. 2006. Ten iterative steps in development and evaluation of
environmental models. Environmental Modelling and Software 21: 602–614.
Jeong, K. S., Jang, J. D., Kim, D. K. and Joo, G. J. 2011. Waterfowls habitat modeling: Simulation of nest site
selection for the migratory Little Tern (Sterna albifrons) in the Nakdong estuary. Ecological Modelling
222: 3149–3156.
Kashid, S. S. and Maity, R. 2012. Prediction of monthly rainfall on homogeneous monsoon regions of India
based on large scale circulation patterns using Genetic Programming. Journal of Hydrology 454–455:
26–41.
Kayadelen, C., Günaydin, O., Fener, M., Demir, A. and Özvan, A. 2009. Modeling of the angle of shearing
resistance of soils using soft computing systems. Expert Systems with Applications 36: 11814–11826.
Kisi, O. and Shiri, J. 2011. Precipitation forecasting using wavelet-genetic programming and wavelet-neuro-
fuzzy conjunction models. Water Resources Management 25: 3135–3152.
200 GeoComputation

Koza, J. R. 1990. Genetic programming: A paradigm for genetically breeding populations of computer pro-
grams to solve problems. Technical Report STAN-CS-90-1314. Stanford University, Stanford, CA.
Kvalseth, T. O. 1985. Cautionary note about R2. The American Statistician 31: 279–285.
Litschert, S. 2004. Landslide hazard zoning using genetic programming. Physical Geography 25: 130–151.
Luan, F., Si, H. Z., Liu, H. T., Wen, Y. Y. and Zhang, X. Y. 2008. Prediction of atmospheric degradation data
for POPs by gene expression programming. SAR and QSAR in Environmental Research 19: 465–479.
Maheswaran, R. and Khosa, R. 2011. Multi resolution genetic programming approach for stream flow
forecasting. In SEMCCO 2011. Visakhapatnam, Andhra Pradesh, India.
Miller, J. F. and Thompson, P. 2000. Cartesian genetic programming. Lecture Notes in Computer Science 1802:
121–132.
Mollahasani, A., Alavi, A. H. and Gandomi, A. H. 2011. Empirical modeling of plate load test moduli of soil
via gene expression programming. Computers and Geotechnics 38: 281–286.
Momm, H. and Easson, G. 2011. Evolving spectral transformations for multitemporal information extrac-
tion using evolutionary computation. Journal of Applied Remote Sensing 5(1): 053564.
Mondal, A. and Mujumdar, P. P. 2012. On the basin-scale detection and attribution of human-induced cli-
mate change in monsoon precipitation and streamflow. Water Resources Research 48: W10520.
doi:10.1029/2011WR011468.
Moreno, J., Abudu, S., Bawazir, A. S. and King, J. P. 2010. Comment on ’Kişi Ö. 2009. Daily pan evaporation
modelling using multi-layer perceptrons and radial basis neural networks. Hydrological Processes
23: 213–223; 24: Hydrological processes 3115–3118.
Mostafavi, E. S., Ramiyani, S. S., Sarvar, R., Moud, H. I. and Mousavi, S. M. 2013. A hybrid computational
approach to estimate solar global radiation: An empirical evidence from Iran. Energy 49: 204–210.
Mount, N. J., Abrahart, R. J., Dawson, C. W. and Ab Ghani, N. 2012. The need for operational reasoning in
data-driven rating curve prediction of suspended sediment. Hydrological Processes 26: 3982–4000.
Nourani, V., Komasi, M. and Alami, M. T. 2012. Hybrid wavelet-genetic programming approach to optimize
ANN modeling of rainfall-runoff process. Journal of Hydrologic Engineering 17: 724–741.
O’Kelly, M. E. 2010. Entropy-based spatial interaction models for trip distribution. Geographical Analysis
42: 472–487.
O’Kelly, M. E., Niedzielski, M. A. and Gleeson, J. 2012. Spatial interaction models from Irish commuting
data: Variations in trip length by occupation and gender. Journal of Geographical Systems 14: 357–387.
Openshaw, S. 1976. An empirical study of some spatial interaction models. Environment and Planning A 8: 23–41.
Openshaw, S. and Turton, I. 1994. Building new spatial interaction models using genetic programming. In
Lecture Notes in Computer Science, ed. T.C. Fogarty. Leeds, U.K.: Springer-Verlag.
Padarian, J., Minasny, B. and Mcbratney, A. 2012. Using genetic programming to transform from Australian to
USDA/FAO soil particle-size classification system. Soil Research 50: 443–446.
Parasuraman, K., Elshorbagy, A. and Bing, C. S. 2007. Estimating saturated hydraulic conductivity using
genetic programming. Soil Science Society of America Journal 71: 1676–1684.
Ryan, C., Collins, J. J. and O’Neill, M. 1998. Grammatical evolution: Evolving programs for an arbitrary
language. Lecture Notes in Computer Science 1391: 83–96.
Salas-Olmedo, M. H. and Nogués, S. 2012. Analysis of commuting needs using graph theory and census data:
A comparison between two medium-sized cities in the UK. Applied Geography 35: 132–141.
Schmidt, M. D., Vallabhajosyula, R. R., Jenkins, J. W., Hood, J. E., Soni, A. S., Wikswo, J. P. and Lipson,
H. 2011. Automated refinement and inference of analytical models for metabolic networks. Physical
Biology 8: 055011. doi:10.1088/1478–3975/8/5/055011.
Scopus Sciverse. 2013. Searches performed for: 1) “genetic algorithm*”; 2) “genetic programming”; 3) “gene
expression programming” (Online). Available: http://www.scopus.com/ (Accessed 18 March 2013).
Seckin, N. and Guven, A. 2012. Estimation of peak flood discharges at ungauged sites across Turkey. Water
Resources Management 26: 2569–2581.
Sheeren, D., Quirin, A., Puissant, A., Gançarski, P. and Weber, C. 2006. Discovering rules with genetic
algorithms to classify remotely sensed data. In Proceedings of the IEEE International Geoscience and
Remote Sensing Symposium (IGARSS’06), pp. 3919–3922. Denver, CO.
Shiri, J. and Kişi, Ö. 2011. Application of artificial intelligence to estimate daily pan evaporation using available
and estimated climatic data in the Khozestan Province (South Western Iran). Journal of Irrigation and
Drainage Engineering 137: 412–425.
Sivapragasam, C., Muttil, N. and Arun, V. M. 2011. Long term flow forecasting for water resources planning
in a river basin. In Proceedings of the 19th International Congress on Modelling and Simulation, eds.
F. Chan, D. Marinova and R.S. Anderssen, pp. 4078–4084. Perth, Western Australia, Australia: Modelling
and Simulation Society of Australia and New Zealand.
Genetic Programming 201

Stanislawska, K., Krawiec, K. and Kundzewicz, Z. W. 2012. Modeling global temperature changes with genetic
programming. Computers and Mathematics with Applications 64: 3717–3728.
Sui, D. 2014. Ubiquitous computing, spatial big data, and open GeoComputation. In GeoComputation, 2nd
edn., eds. R.J. Abrahart and L.M. See, pp. 377–396. Boca Raton, FL: Taylor & Francis Group.
Taskiran, T. 2010. Prediction of California bearing ratio (CBR) of fine grained soils by AI methods. Advances
in Engineering Software 41: 886–892.
Thomas, R. W. and Hugget, R. J. 1980. Modelling in Geography. London, U.K.: Harper & Row Publishers.
Wang, J. N., Li, C., Duan, X. B. and Liao, W. G. 2012. Identification of significant environmental factors
affecting fish abundance by genetic programming. Shuili Xuebao/Journal of Hydraulic Engineering
43: 860–868.
Wang, X. Z., Buontempo, F. V., Young, A. and Osborn, D. 2006. Induction of decision trees using genetic
programming for modelling ecotoxicity data: Adaptive discretization of real-valued endpoints. SAR and
QSAR in Environmental Research 17: 451–471.
Williams, J. L. 1986. New Mexico in Maps - 2nd edn. Albuquerque, NM: University of New Mexico Press.
Wilson, A. G. 1969. The use of entropy maximising models in the theory of trip distribution, mode split and
route split. Journal of Transport Economics and Policy 3: 108–126.
World Meteorological Organization. 2008. Guide to Meteorological Instruments and Methods of Observation,
WMO-No. 8. Geneva, Switzerland: World Meteorological Organization.
9 Agent-Based Modelling
Itzhak Benenson

CONTENTS
Abstract...........................................................................................................................................204
9.1 Animated Agents and Non-Animated Objects: The Pillars of Geographic Systems............204
9.1.1 Geographic Systems.................................................................................................. 205
9.1.2 Agent-Based View of a Geographic System: An Informal Example........................ 205
9.1.3 Geographic Systems Are Composed of Spatial Entities: Features............................206
9.1.4 Features and Their Attributes Change over Time.....................................................206
9.1.5 Agent as a Proxy for a Human Decision Maker........................................................207
9.1.6 Multi-Agent Systems as Human-Driven Cellular Automata.....................................208
9.1.7 Two Examples: Ethnic Residential Dynamics and Parking Search..........................209
9.2 Assigning Properties, Relationships and Behaviours to Agents............................................209
9.2.1 Agents and Agent Properties Reflect a Modeller’s View of Reality.......................... 210
9.2.2 Relationships between Agents and Objects............................................................... 210
9.2.3 Rules of Agent Behaviour.......................................................................................... 211
9.2.4 Temporal Resolution of Agent Behaviour................................................................. 213
9.2.5 Spatial Resolution of the AB Model.......................................................................... 214
9.2.6 Recognition of Collective Properties and Emergence............................................... 214
9.2.7 As with Every Model, ABM, Eventually, Reaches the Stage of Validation.............. 215
9.2.8 Choice of the Software Environment........................................................................ 215
9.3 Example of Exploratory AB Modelling: Schelling Model of Ethnic
Residential Dynamics.....................................................................................................216
9.3.1 Agents, Objects and Relationships............................................................................ 216
9.3.2 Behavioural Rules...................................................................................................... 216
9.3.3 Temporal and Spatial Resolution and the Order of Updating................................... 217
9.3.4 Qualitative View of the Schelling Model Dynamics and Collective Phenomena........218
9.3.5 Real-World Schelling-Like Simulation...................................................................... 219
9.3.6 Lessons from the Schelling Model............................................................................ 221
9.4 Example of Predictive AB Modelling: The PARKAGENT Model of Parking Search
and Parking in the City.......................................................................................................... 223
9.4.1 Agents, Objects and Relationships............................................................................ 223
9.4.2 Agent and Object Properties......................................................................................224
9.4.3 Time and Updating in the PARKAGENT Model.....................................................224
9.4.4 Behavioural Rules of the Drivers..............................................................................224
9.4.4.1 Initialisation of Drivers and Driving towards the Destination................... 225
9.4.4.2 To Park or to Continue Driving to the Destination?................................... 225
9.4.4.3 Driving and Parking after the Destination Is Missed................................. 225
9.4.5 Behavioural Rules of the Inspectors.......................................................................... 226
9.4.6 PARKAGENT Model Validation and Analysis of the Collective
Parking Phenomena................................................................................................... 226
9.4.7 Studying Real-World Parking with the PARKAGENT Model................................. 227
9.5 Recent Trends in AB Geographic Modelling........................................................................ 228

203
204 GeoComputation

9.6 Guidance for Students of AB Modelling............................................................................... 228


9.6.1 Before Starting Development of the Long-Living Version of Your Model............... 228
9.6.2 When Developing and Coding the Simulation.......................................................... 228
9.6.3 When Investigating Your Model Theoretically......................................................... 229
9.6.4 When Applying Your Model to the Real World........................................................ 230
9.7 Conclusions............................................................................................................................ 230
Appendix 9A  Popular Topics in AB Modelling........................................................................... 231
References....................................................................................................................................... 233

ABSTRACT
Agent-based (AB) modelling is a leading methodology of dynamic GeoComputation that aims at
making a direct connection between the knowledge on human behaviour and decision making and
the dynamics of geographic systems. An AB model implements spatial and non-spatial aspects of
the behaviour of individuals and institutions within an explicitly represented geographic environ-
ment. In this way, it enables investigation of the dynamics and evolution of geographic systems as
driven by humans. An AB model is a sort of a virtual world populated by avatars whose behaviour
reflects decades of scientific research in social and physical geography, economics and behavioural
science. In this way, researchers can directly study if and how humans can change themselves,
nature and society.
This chapter presents a methodology for AB modelling and focuses on operational issues: the
choice of agents, the representation of relationships between them, the formulation and formalisa-
tion of the agent behavioural rules, a study of the AB model dynamics and an application of the
AB models to real-world problems. The approach is illustrated with the help of two AB models:
the famous Schelling model of ethnic residential dynamics and PARKAGENT, a model of parking
search in the city. The chapter finishes with a list of recent developments in the field of AB model-
ling and a set of guidelines aimed at students wanting to adopt an AB modelling approach.

9.1 ANIMATED AGENTS AND NON-ANIMATED OBJECTS:


THE PILLARS OF GEOGRAPHIC SYSTEMS
We live in a 4D spatio-temporal world and GeoComputation (GC) captures the pieces of this world at
certain geographical resolutions, which start at the level of a single human and reach up to encompass
the entire Earth. The essence of GC is a quantitative analysis of these pieces. Often, we are interested
in understanding an averaged image of the world. In this case, we apply static methods of analysis
that account for the spatial dimensions of the phenomenon but ignore their dynamics. However,
when our interest lies in modelling the dynamics of spatial phenomena, then such static analyses
become inadequate. This chapter presents Agent-Based (AB) modelling* as a natural framework
for investigating the spatio-temporal dynamics of geographic systems. Among other approaches
to modelling natural phenomena, geographical AB modelling is unique in one respect: the agents
in an AB model represent, explicitly or implicitly, human individuals and institutions who imitate
the decision-making behaviour of humans. In this way, geographical AB modelling considers the
dynamics of geographic systems as driven by humans and their decisions. The agents in ecological
AB models can reflect animals and animal behaviour, while in computer science, the software agents
are autonomous computer programs. Geographical AB modelling focuses on human-driven systems.
This chapter focuses on AB modelling as an increasingly popular GC approach to formalis-
ing and studying complex geographic systems. The reader is assumed to be a regular user of GIS
(geographic information systems) and to have some knowledge of relational databases and object-
oriented programming.

* Here and in the following, we use italics when presenting a notion for the first time.
Agent-Based Modelling 205

9.1.1 Geographic Systems
Geographers easily agree on whether a certain part of the world can, or cannot, be called a geo-
graphic system. It is hardly possible, however, to provide an operational definition of this notion,
and the problem arises from the second part of this term, that is, system. Expressed in a general way,
a system is ‘a set of components together with the relations connecting them to form a whole unity’.*
Ludwig von Bertalanffy (1968) popularised the notion of a system, beyond the world of physics,
stressing the importance of open and self-organising systems that exchange matter and energy
with the outer world and change their internal organisation by themselves. When formulating his
approach, Bertalanffy had biological and ecological systems in mind, but the basic notion behind a
theory of systems also applies to geographic systems.
The goal of GC, in the broadest sense, is to understand quantitatively the structure and dynam-
ics of geographic systems. General systems theory helps us to establish an epistemological frame-
work for this purpose. According to Bertalanffy (1968), to specify a geographic system, we should
(1) define the objective of the study, (2) outline the components of the system and the interactions
between them and (3) define the laws governing the system’s dynamics. For geographic systems,
the second requirement is concerned with specification of the spatial and temporal resolution of the
system and defining the rules for locating the components of the system in space, while the third
with the laws governing relocation of system components and locating emerging components of the
system. Often, we are interested in the dynamics of a geographic system that is dependent upon
external, control, parameters (Haken, 1983).

9.1.2 Agent-Based View of a Geographic System: An Informal Example


To move from a general to an operational view of AB systems and models, let us consider the
dynamics of horticulture in the African savannah, where the stable production of food is a major
problem. This example originates from the recent USAID project in the Kita administrative area
(25 × 25 km), Mali (Kidron et al., 2010; Grinblat et al., 2014). The goal of the project is to assess
if Mali’s traditional agriculture will be able to supply, during the next decade, enough food for the
growing population of the country.
To describe the horticultural dynamics in Kita, four system components are necessary: (1) lands
that can be potentially used for agriculture, represented by fields; (2) farmers who decide on the use
of these fields; (3) crops; and (4) the regulator, who issues land-use permissions and is responsible
for the price of fertilisers. Two interactions are important for understanding the functioning of the
system – between the farmers and their fields and between the regulator and the farmers.
The laws governing the dynamics of this system are simple. Every year, the farmer decides to
extend or reduce the amount of cultivated area and selects the crops that will be cultivated in each
of the fields, taking market demand into account. The yield of the chosen crop is a function of the
properties of the soil, the use of fertilisers and the weather. The regulator forces the farmers to
cultivate or restricts the activities of farmers through the provision of land-use permissions and the
fixing of fertiliser prices. The dynamics of the system are defined by the decision-making rules of
the farmers, by the laws of soil dynamics, by the constraints imposed by the regulator and by two
multi-dimensional control parameters, that is, the climate conditions and the demand for the crops
in the marketplace.
To understand the dynamics of Kita’s horticultural system, we must formally represent the
decision-making rules of the farmers and the regulator as well as the laws of soil dynamics. We
may then investigate the dynamics of crops, yields and soil fertility as dependent upon farmers’
and regulator’s decisions and the control parameters. The model outcomes at the level of the entire
province are total and per farmer crop production, the fraction of the fertile fields and the fraction of

* http://pespmc1.vub.ac.be/ASC/SYSTEM.html.
206 GeoComputation

farmers whose production is insufficient for surviving the year (Grinblat et al., 2014). The detailed
output includes a field layer, where every field is characterised, for every year of the investigated
period, by the land productivity, crop and crop yield. These spatial data could serve to estimate
wealthy areas and areas of starvation within the province.
To investigate and compare AB or any other models, we have to define them formally. Let us thus
follow Bertalanffy’s definition explicitly with respect to AB modelling.

9.1.3 Geographic Systems Are Composed of Spatial Entities: Features


To present the components of a geographic system, including humans, we use the terminology
derived from Geographic Information Science (GISci). GISci considers geographic systems as con-
sisting of discrete spatially located entities, that is, different kinds of ‘things that can be uniquely
identified’ (Howe, 2001, p. 92). GISci implements this view through a GIS, which is a spatially
enabled extension of a relational database. The theory of relational databases deals with entities and
relationships between entities (Howe, 2001). In terms of database theory, GIS deals with spatial
entities or features.
Land parcels, street segments, buildings, cars, householders, pedestrians, farmers and land
developers are all entities. Entities, regardless of whether they are spatial or not, are characterised
by an identifier and an arbitrary number of attributes. Spatial entities are additionally characterised
by their location.
All real-world entities are located in space, but location information on some of them may be
irrelevant for studying geographic systems. In our example of the savannah horticulture, the loca-
tion of the land-use regulator is irrelevant for understanding the horticultural dynamics of this
system. Important is the location of the farmers and farmers’ fields; the further away a farmer is
from his or her field(s), the longer it will take for the farmer to get there, which lowers the chance
that fertiliser will be applied.
It is important to note that a system view of geographic reality includes continuous spatial phe-
nomena, such as the height of the land surface or the concentration of nitrogen in the soil. GISci
and GIS employ grids of artificial cells to represent these phenomena. When defined, however,
the cells of these grids can be considered as standard GIS features (polygons), characterised by
location and non-spatial properties (e.g., the altitude, land use and land cover). Any other poly-
gon coverage can be employed for representing continuous phenomenon, for example, Delaunay
triangles or Voronoi polygons, and GISci provides a series of methods to analyse continuous data
with respect to the chosen partition of space into elementary units (Banerjee et al., 2003; Fischer
and Getis, 2010).

9.1.4 Features and Their Attributes Change over Time


Parameters of geographic features, including the locations of these features, may change over time.
Existing features can disappear and new features can emerge. The incentive for change can come
from the feature itself, as in the case of a moving car, or from the other features, as in the case of
an agricultural parcel sold for the purpose of constructing dwellings. In geographic systems, the
interactions between features strongly depend upon the distance between them. Waldo Tobler’s
First Law of Geography: ‘Everything is related to everything else, but near things are more related
than distant things’ (Tobler, 1970, p. 236) is actually the first law of complex geographic systems
theory. In order to estimate distances and to describe interactions between features as a function of
distance, Tobler’s law demands a high-resolution view of systems. Geographic AB modelling builds
on this high-resolution representation. A typical AB geographic model considers spatial and non-
spatial behaviour and decision making of humans or human institutions that influence themselves
and non-animated geographic features; the goal of developing the model is to study the dynamics of
the system, which is driven by the behaviour of the agents.
Agent-Based Modelling 207

9.1.5 Agent as a Proxy for a Human Decision Maker


Agents are animated entities that behave in a particular way, that is, they make decisions about their
properties and the properties of other agents. Spatial agents are located in space and can make deci-
sions regarding their location. Agents exist in the world of other animated and non-animated entities
and interact with them (Benenson and Torrens, 2004). Decision making is critical for identifying
agents among all spatial entities. In this sense, land parcels are not agents even though agents such
as planners, landowners or developers will decide upon their changes and use.
The notions of agent and AB modelling have come from computer science. A classic paper by
Franklin and Graesser (1996) specifies an autonomous agent as (1) a system situated within and part
of an environment that (2) senses that environment and acts on it, over time, (3) in pursuit of its own
agenda, so as (4) to affect what it senses in the future. Franklin and Graesser (1996) further define
specific aspects of the behaviour of agents as outlined in Table 9.1.
A geographic modeller may remain sceptical with regard to the notions of Franklin and
Graesser (1996) and similar definitions found in the literature (Hayes-Roth, 1995; Maes, 1995a,b;
Russell and Norvig, 1995; Wooldridge and Jennings, 1995; Ferber, 1999). The reason is that none
of the characteristics of an agent as listed in Table 9.1 can be formally established and tested.
Apart from mobility, they are all a matter of agreement. However, such a non-operational view
of agents as derived from computer science does not pose any significant problem when the
real-world geographic phenomena are investigated. The GC view of reality is shaped by the
real-world phenomena moulded by human decision makers, who make decisions regarding their
own properties, their relations with other agents and their locations, now and in the future. That
is why geographic agents possess most of the properties listed in Table 9.1. They are reactive,
autonomous, communicative and goal oriented since we see the importance of these properties
for representing human social phenomena. Human geographic agents can also learn and even
have personality, in case we consider these properties important for the socio-geographic system
under investigation.
The ability to behave and make decisions is a critical property of agents. The majority of geo-
graphic features cannot be associated with agents because they only passively change their proper-
ties with respect to external influences. The examples of geographic features that are not agents
are numerous – infrastructure elements such as street segments, foundations of buildings and land
parcels, or the units of the coverage employed for representing continuous phenomena such as the
triangles of a TIN representing a land surface. Following the terminology of Benenson and Torrens
(2004), I refer to these non-agent features as objects. Thus, geographic systems consist of animated,
decision-making agents and non-animated, passive objects.
AB modelling has entered GC as an ancestor of cellular automata (CA). Let us follow this
line too.

TABLE 9.1
Basic Properties of Agent Behaviour according to Franklin
and Graesser (1996)
An Agent Is... Meaning
Reactive Responds in a timely fashion to changes in the environment
Mobile Able to transport itself from one location to another
Autonomous Exercises control over its own actions
Communicative Communicates with other agents
Goal oriented Does not simply act in response to the environment
Learning Changes its behaviour based on its previous experience
Character Believable personality and emotional state
208 GeoComputation

9.1.6  Multi-Agent Systems as Human-Driven Cellular Automata


CA were adopted by GC soon after their introduction in the field of computer science in the early
1950s (von Neumann, 1951). As described by Batty and Longley (2014), geographic features are rep-
resented in CA by the cells of a grid. The CA cells are characterised by states. To describe CA dynam-
ics, transition rules define, for every cell c of the CA, its state at a time step t + 1 as a function of (1) the
state of c and (2) the states of the cells that are the neighbours of c at a time step t. Thus, the definition
of a CA consists of the definition of cell states, cell neighbourhood and transition rules (Batty and
Longley, 2014). Note that according to the terminology of AB modelling, CA cells are objects.
Geographic applications of CA are primarily concerned with land-use/land-cover dynamics
(Batty and Longley, 2014). These applications are based on essentially wider than von Neumann’s
specification of the CA:

• A square grid of cells is often substituted by any partition of a 2D space into polygons,
including the real-world coverage of land parcels.
• The state of a cell at t + 1 is dependent upon the state of cells that are far beyond the neigh-
bourhood of the cell, for example, via dependence of the cell state on the distance to a
highway or to a city centre.
• Global constraints are imposed on the location and the number of cell state changes during
the time step. For example, the amount of the land cells that can change their state from
open land to dwellings is limited to the amount permitted in the development plan.

The aforementioned generalisations do not change the basic assumptions of CA that cells are pas-
sive land units that can change their state in response to the states of their close and distant neigh-
bours. This passiveness makes CA inherently insufficient for describing the dynamics of human
systems. In reality, the developers and landowners, private or public, decide on whether to change
a land parcel’s use and construction (Figure 9.1). These decisions cannot be described as dependent
only on the state of the other parcels and objects – there are always subjective factors that influence
a decision of a developer or landowner.
CA cannot directly reflect landowners and developers’ behaviour; instead, the modeller has to
interpret their behaviour in terms of transition rules. Formally, this is easy in case of perfectly ratio-
nal behaviour. That is, the complete information on all system objects and agents, including rules

Neighbour cells, my dear,


To build? To sell?
these people force me to
change my state...

Built-up area Vegetated area


Agriculture Open spaces

FIGURE 9.1  From a standard to a human-driven CA.


Agent-Based Modelling 209

of behaviour, is available to every landowner and developer, and they estimate demand for lands,
establish land price, buy and decide on the new land uses, by pure economic reasons. In this case, a
modeller can translate the rules of agents’ behaviour into CA state transition rules.
However, the rationality of landowners and developers is never perfect. They may ignore part
of the available information, make incorrect assumptions about the importance of the factors that
influence land prices or make decisions for personal reasons, for example, I do not like the guy who
wants to purchase my land. These forms of behaviour cannot be directly translated into CA transi-
tion rules. The more we deviate from the decision maker as a perfectly rational economic creature,
the less we are able to translate agent behaviour into state transition rules.
The motto of AB modelling is simple: let us explicitly reflect human decision making in the
model. Concerning land-use modelling, instead of racking our brains regarding how to translate
the behaviour of landowners and developers into CA state transition rules, let us explicitly represent
them, together with the rules of their behaviour, in the model.
Historically, several steps can be marked on the way from CA to AB modelling in geography; I refer
the interested reader to Chapter 5 of the book by Benenson and Torrens (2004) entitled Geosimulation:
Automata Based Modeling of Urban Phenomena for further details. In this chapter, I focus on the con-
temporary geosimulation view of AB modelling and illustrate the conceptual views with two examples,
one positioned at the abstract end and one at the real-world end, of the AB model spectrum.

9.1.7 Two Examples: Ethnic Residential Dynamics and Parking Search


I illustrate a methodology for AB modelling using two models. The first is the famous Schelling–
Sakoda model of residential segregation (Sakoda, 1971; Schelling, 1971), which is usually called
just the Schelling model. Readers with some knowledge of AB will be familiar with this model,
which I exploit here for the purpose of presenting the deeper details of AB modelling capabilities.
The reader can reproduce most of the model experiments that I present in the following with the
NetLogo application developed by Dr. Erez Hatna at the Center for Advanced Modeling (CAM) in
the Social, Behavioral and Health Sciences, Johns Hopkins University, which is available at http://
erezhatna.com/SchellingModel/Model.html.* The second example is the PARKAGENT model of
searching for parking spaces and then parking in the city (Benenson et al., 2008; Levy et al., 2012).
The Schelling model investigates an abstract idea that is insufficient, in itself, for expanding
towards real-world residential distribution. The PARKAGENT model also starts with an abstract
idea but is developed as a spatially explicit planning and management tool and fully exploits the
current access to high-resolution GIS data and results from field surveys.
Both models were constructed according to a common methodology and are presented following
the standard overview, design concepts and details (ODD) protocol (Grimm and Railsback, 2012).
Let us start with defining agents and objects and assigning their properties and then define the rela-
tions between the model agents and the objects and formulate the behaviour of the agents. After the
models are defined, let us present selected results of their dynamics.

9.2  ASSIGNING PROPERTIES, RELATIONSHIPS AND BEHAVIOURS TO AGENTS


The decision about the kinds of agents in the model, and the properties, relationships and behav-
iours of the agents, are all made with respect to the aim of the model. There are numerous ways
to formalise the same geographic system, and different formalisations will result in different AB
models. Any formalisation, however, starts with the assignment of agents and agent properties and
establishes the relationships between the model agents and the objects. Technically, this process
builds on the rules of relational database theory.

* Depending on the Java version on your computer, it may be necessary to include this applet in a
list of exclusion. Open Configure Java and go to Security → Exception Site List to do this.
210 GeoComputation

9.2.1 Agents and Agent Properties Reflect a Modeller’s View of Reality


The overall goal of the PARKAGENT model is to assess the maximum number of cars that can be
permitted to enter the city area for parking search and parking. The policy maker wants to permit
as many cars to enter as possible while minimising the need to cruise an area for a free parking
space, which essentially decreases the effectiveness of the urban transportation system. For the
purpose of this chapter, let us consider minimal possible settings, in which parking is only available
along the streets and is free of charge. The specific goal of a model is to estimate the conditions
after which a significant number of drivers would cruise the area in search of a parking space for
too long. A rule of thumb from civil engineering is that in order to guarantee a short search time
and parking that is close to the destination for the majority of drivers, the fraction of occupied
places should be kept below 85%, that is, one in seven parking places should always remain free
(Shoup, 2006). Let us test this assertion and investigate the system in the situation when higher
parking occupation rates occur.
It is always worth starting with the simplest model and then extending it in case the existing ver-
sion becomes insufficient for investigating the problem. From this point of view, the minimum set
of geographic features that are necessary for representing parking dynamics in the city consists of
drivers, destinations, parking places and the street network. The street network, the destinations
and the parking places are passive geographic objects, while the drivers are agents who make deci-
sions regarding parking search and parking.
To model parking search, each driver should be assigned a destination – let us thus assume that
the driver agent knows it. The distance at which a driver agent decides to start searching for a park-
ing space can be different for different kinds of drivers. Residents of densely populated areas will
start their search well before they reach their homes based on previous negative experiences with
finding parking spaces in the past, while the first-time visitor will drive straight to their destination.
To combine these, let us assume that the driver agents start their parking search 500 m before the
destination. To search for parking, a driver should see free and occupied parking places and, for this
purpose, driver agents should be exactly located on the street. The planned duration of the parking
is another property of the driver agent.
The street network is represented in the PARKAGENT model in a standard GIS network topo-
logical format of nodes (junctions) connected by links (street segments) (Kresse et al., 2012). The
links of the street network are characterised by traffic direction – one or two way. Parking places
are represented by the points located along the street segments at a distance between each other that
equals the average car length plus an average gap between two parked cars.
Important for the model, parking places can have a common or limited use, for example, only
for use by residents in the area and can differ in price; these are two parking place attributes. The
destinations of drivers are buildings. The main property of the destination is the number of drivers
that are heading towards this location (Figure 9.2).
After all the objects, agents and properties are defined, the relationships between them should
then be specified. In geographic systems, relationships are also used for locating agents and objects
in space and the PARKAGENT model employs this approach.

9.2.2 Relationships between Agents and Objects


During the search for a parking place, a driver agent must know which parking places it passes, and of
these, how many are free. The real-world driver would simply see this so the driver agent must imitate
this ability with the help of a calculation. Relationships are very useful at this stage. Database theory
defines a relationship as an ‘association between two or more entities’ (Howe, 2001). According to
this theory, relationships and their properties are stored in tables, just as entities are.
The use of relationships is very helpful for the PARKAGENT model too. As we mentioned in
the previous section, the first set of relationships between the street segments and the junctions is
Agent-Based Modelling 211

(a) (b)

FIGURE 9.2  (a) The step from the real-world to PARKAGENT and (b) schematic representation of the
major PARKAGENT objects – streets, parking places, destinations (buildings) and parking lots (not included
in the minimal version of the model). (From Levy, N. et al., Transportmetrica, 9(9), 773, 2012.)

automatically generated when the street network is constructed (Kresse et al., 2012). These relation-
ships are necessary to simulate driving towards the destination. The relationship between street
segments and parking places (Figure 9.3a and b) is necessary for establishing a driver agent’s view
of the parking situation and simulating the driver’s ability to see if a parking place on the left or right
side of a street segment is occupied or free. A standard GIS linear referencing procedure (Brinkhoff
and Kresse, 2012) is employed for constructing this relationship in Figure 9.3b. In a similar way, the
relationship between parking places and driver agents represents which parking places are occupied
and where each driver parks (Figure 9.3c). In the full version of the PARKAGENT model, this rela-
tionship is employed for estimating a driver’s fine for illegal parking.
Two more relationships are exploited in the PARKAGENT model for representing location infor-
mation. To represent driving towards a destination, destination buildings are linearly referenced in
relation to the street network links (Figure 9.3d), while the closest parking places are related to the
destination (Figure 9.3e). Note that the destination can have several entrances (dark grey triangles in
Figure 9.3a) and should be related, in this case, to several parking places (Figure 9.3e).
Four entities – street segment, parking place, building (destinations) and car and the relationships
between them – are expressed by the entity-relationship diagram in Figure 9.4.
Note that the relationships between street segments and between parking places and destination
buildings, and the relationship between parking places and destination entrances, reflect the infra-
structure of the street network and of the parking space and are static. When driving to a destina-
tion, driver agents will retrieve parking places along the segments and estimate when they should
park or when they can still drive closer to the destination. In contrast, the relationship between
parking places and drivers is dynamic, and the modeller has to update the relationship table every
time a driver occupies or leaves any parking place.

9.2.3 Rules of Agent Behaviour


Formally, the rules of agent behaviour describe how the properties and relationships of agents
change over time, including changes to the locations of the agents. The behavioural rules are the
most important part of every AB model, which enable the emergence of properties, patterns and
structures to form at a level above the individual. At the same time, the behavioural rules are inher-
ently model specific. Modellers appear to agree easily on agents, objects and relationships but differ
212 GeoComputation

(a)

(b) (c)

(d) (e)

FIGURE 9.3  (a) PARKAGENT model objects and agents (cars) with their identities shown as labels.
(b) LinkPP between street link (identified by LINKID) and parking place at the left and at the right side of a
link (identified by L_PPID, R_PPID). The side is defined with respect to the drawing direction of the link, and
the coordinates of the parking places (L_POS, R_POS) are defined according to their distance, in percentage
of the link length, from the link starting node. (c) Relationship ParkCar, between the parking place (identified
by PPID) and the car (identified by CARID) that occupies this parking place, has two attributes – time when
the car entered (ENTER) and time the car left the place (LEFT), LEFT = NULL for a car that still parks at the
parking place. (d) The relationship BldgLink between buildings and links is used for driving to destinations.
LinkID and BLDGID identify link and building, StreetSide denotes the side of the link with respect to the
link drawing direction, and BLDG_POS defines the location of the building according to its distance, in per-
centage of the link length, from the link starting node. (e) The relationship BldgPP between the building and
the parking place specifies parking places closest to the building entrances. BLDGID and PPID identify the
destination building and parking place, while DistM represents the distance, in meters, between the parking
place and the destination entrance.

0...1 1 Parking 0...n 1 Street 1 0...n


Car Building
place segment

0...n 0...1

FIGURE 9.4  Entity-relationship diagram for four entities – street segment, parking place, building and car
that are considered in the PARKAGENT model.
Agent-Based Modelling 213

in their view of the behavioural rules of the agents. This is because minor differences in the rules
can have far-reaching consequences at the system level. In Section 9.3.4, I illustrate sensitivity of the
model’s dynamics to variation in agents’ behavioural rules with the Schelling model.
Now, the hard part – the rules of agent behaviour in a great majority of the AB models reflect
the personal view of the model developer. Very often, readers easily accept these rules just because
they have nothing to suggest instead. I am not aware of an AB modelling paper (including my own)
in which all behavioural rules are based on observations and/or laboratory experiments. Can we
rely on the researcher’s imagination, then? A sceptical positivist would, in addition, recall Lee’s
seminal requiem (Lee, 1973) and argue that the variety of a system’s dynamics is huge, and until
we impose some empirically justified limitations on every agents’ behavioural rules, we would just
obtain varying immeasurable aspects of agents’ behaviour, along an arbitrarily wide spectrum of
model dynamics.
The aforementioned discussion is often cited as a conflict between exploratory and predictive
modelling (Batty et al., 2012), where a wider and deeper view of it can be found in Edmonds and
Moss (2005) and in several papers of the recently edited volume on AB modelling in geographical
systems (Batty, 2012; Batty et al., 2012; O’Sullivan et al., 2012). My view is that we have to delay this
discussion until the theories and experimental results of behavioural science are fully incorporated
into geographic AB modelling. The paper of Kennedy (2012) in the aforementioned volume, as well
as the recently edited volume on heuristics (Gigerenzer et al., 2011), can be starting points for those
students of AB modelling that are interested in a tight connection between AB modelling and behav-
ioural science. For now, our knowledge of the quantitative aspects of human behaviour is limited,
and a model as a tool for studying the consequences of possible human and institution behaviours on
the socio-spatial dynamics of the systems is, often, the only way to quantify these dynamics.

9.2.4 Temporal Resolution of Agent Behaviour


Intuitively, the developers of every GC model start with the discrete time view: time in the model
is advancing by some constant interval – year, month, day or hour (Benenson and Torrens, 2004,
Chapter 5), and at each time step, some of the agents make decisions that influence other agents
and objects at the same or future time steps. Conceptually, this intuitive view does not fit the AB
approach; the latter, by definition, aims at registering every decision of every model agent, as and
when that decision is made. Computer science resolves this contradictory problem by the event-
driven approach to model development (Faison, 2006). The essence of this view is in managing
time as a continuous variable. The agent performs an action depending on the time that has passed
from the moment of the previous or anticipated agent’s action or, more generally, any system events.
For example, a driver cancels parking search and drives to a paid lot 2 min before the start of the
business meeting.
In case the modeller can decide on the minimal time interval between system events, the event-
driven approach can be easily implemented with the standard discrete time scheme. Usually, the
minimal model time interval, as dictated by the rules of agent behaviour, is short relative to the dura-
tion of the period of time during which the modeller wants to observe the dynamics of the system.
AB models where agents relocate in space over short time intervals demand a high spatial resolu-
tion. Let us consider the PARKAGENT model as an example. A driver agent in the PARKAGENT
model must recognise whether a parking place is free or occupied. A time interval during which
the driver passes the parking place may thus be a natural time step for the PARKAGENT model.
Field research provides an estimate of the typical speed of the driver that searches for parking –
10–15 km/h, that is, 3–5 m/s (Benenson et al., 2008). The length of the parking place is about 5 m,
and, therefore, a time step of 1 s is sufficient for an unambiguous description of the parking agent
behaviour. For the aforementioned example of horticulture in the African savannah, the natural
time step is a year: a farmer decides on the use of the field and on the future crop once a year regard-
less of whether the decision is made a week before or later.
214 GeoComputation

The problems with a high temporal and spatial resolution are many. Besides potentially low
performance of the model, agents should be precisely located in space, their decisions should be
precisely located in time and the modeller has to decide which agents and when would become
aware of other agents’ decisions. At the same time, the problems entailed by high spatial and
temporal resolution encourage the modeller to be precise when formulating agent behaviour and
interactions.
A low temporal resolution has its own problems, the most important being the problem of
parallel versus sequential updating. Let several interacting agents make decisions during the
single (and extended in time) time step: What should be the order of implementing these deci-
sions? Parallel (synchronous) updating means that each agent decides what to do depending on
the system state at the end of the previous time step, without any knowledge of what happened at
the current time step. Sequential (asynchronous) updating, which has many forms, assumes that
during the same time step, agents make decisions in order and an agent may know the decisions
of other agents.
A good example of parallel versus sequential updating can be illustrated with the game of life,
and I like its presentation on http://www.math.com/students/wonders/life/life.html best of all. As
one can see at that and many other sites, the standard Game of Life employs parallel updating and
produces gliders and other nice creatures. However, all of them disappear when parallel updating is
substituted by sequential (Blok and Bergersen, 1999). The importance of model updating requires
a much longer discussion than is possible here. However, I conclude this section by claiming that
sequential updating in which agents and objects are chosen randomly at each time step is the sim-
plest and often a sufficient choice for AB model updating.

9.2.5  Spatial Resolution of the AB Model


The decision about the spatial resolution of the model depends on what types of geographic
features are used to represent the agents, the behavioural rules of the agents and the temporal
resolution of the model. The AB modeller has to decide on the meaning of the statement two
agents or objects are at the same location. For the PARKAGENT model, a driver agent must
distinguish between the states of the parking places, and, thus, 5 m is an inherent spatial reso-
lution for this model. For the hypothetical example of Mali horticultural dynamics, the spatial
resolution is determined by the size of the farmer’s field, which varies between 0.5 and 1.0 ha.
That is, either we should implement a model over a polygon layer of Kita agriculture fields or, if
such a map is unavailable, consider agricultural space as consisting of 50 × 50–100 × 100 m cells
each representing a field.
As already mentioned earlier, the inherent spatial and/or temporal resolutions of the modelled
phenomenon can be too high and result in a low performance in the model. My advice here is to
apply the model to a smaller area, with a minimum possible number of agents and objects, and
investigate the model dynamics at an inherent and at a lower spatio-temporal resolution. Comparing
these dynamics, the modeller could decide whether and when the model for the larger area can be
considered at the lower spatial and temporal resolution. Note that the difference between the model
dynamics in the case of parallel and sequential updating can be of fundamental importance for such
a comparison (Benenson, 2007).

9.2.6 Recognition of Collective Properties and Emergence


An investigation of the system dynamics, that is, the changes that affect the entire system, is an
ultimate goal of every model of a complex system. Collective patterns, spatial and non-spatial, can
emerge, evolve and disappear. Excellent books on complex systems theory explain these processes
and present intriguing examples of collective dynamics (Flake, 1998). To recognise collective spa-
tial patterns, any method of spatial data mining may be applied; see the 2009 special issue of
Agent-Based Modelling 215

Computers, Environment and Urban Systems (Guo and Mennis, 2009) for more papers on this
subject. When a collective pattern can be recognised during a simulation, an agent’s reaction to the
emerging pattern can then be considered as a component of the behavioural rules. For this reason,
my advice to AB modellers is to carefully check the performance of the data mining procedures
used and to invest in fast methods of pattern and cluster recognition.

9.2.7 As with Every Model, ABM, Eventually, Reaches the Stage of Validation
Students of natural science are brought up in an atmosphere of validation: any model of real-world
phenomena remains just an intellectual exercise until it is validated. Numerous aspects of valida-
tion express different views regarding the comparison of a model’s forecast to the real phenom-
enon. Here, I just mention, according to Sargent (2013), the main stages of validation as commonly
accepted in the recent literature on the subject:

Face validation is a kind of a Turing test (Turing, 1950): Experts (usually yourself) watch the
behaviour of the agents in the model and decide if it is reasonable.
Historical data validation: This is what physicists call validation – use some of the data for
estimating model parameters and compare the remaining data with the model outputs.
Parameter variability – sensitivity analysis: Vary the input and internal parameters of a
model and estimate the effect of this variation on the model’s dynamics.
Predictive validation: Forecast the system’s dynamics and compare with real data. This lux-
ury is rarely possible in geographic AB models.

An excellent review of validation approaches with regard to AB modelling was undertaken by Ngo
and See (2012), who also present a comprehensive list of references.

9.2.8 Choice of the Software Environment


Should an AB modeller use specialised AB software? The question is especially important when
you make your first AB experiments, and the answer depends on your programming experience.
The experienced programmer does not need my advice. To my students who usually (1) are not
afraid of installing and activating Microsoft Visual Studio or some Java environment, (2) can code
and execute the Game of Life in an hour+ and (3) do not need a tutor for writing macros in Excel,
I suggest starting with NetLogo. NetLogo’s critical advantage is fast prototyping. Its programming
language is easy to learn, the model library contains numerous examples of simple models and con-
venient controls enable you to build your own version of the Game of Life during the first 2 h. Erez
Hatna’s web version of the Schelling model, referred to in Section 9.1.7, is an excellent example of
what can be done with NetLogo.
The simplicity of the environment turns into a disadvantage when you aim to build a larger
model, such as the PARKAGENT model described previously. The NetLogo programming lan-
guage is a procedural and not an object-oriented, programming environment, which is intentionally
thin, differs greatly from the standards of Java, C# or C++, and is not able to communicate with
databases. All these disadvantages will become important in a couple of months, once you have
spent time altering the behavioural rules of the agents every other morning. After you roughly
decide on the agents, the relationships, attributes and, most importantly, the behavioural rules of
the agents, reconsider your choice of programming environment. Recent reviews of AB modelling
software will help you to choose between specialised programming environments and common
programming languages (Crooks and Castle, 2012).
Let us now illustrate the process of AB model development and investigation with the Schelling
and PARKAGENT models. I have already used these models for presenting general aspects of AB
modelling given earlier.
216 GeoComputation

9.3 EXAMPLE OF EXPLORATORY AB MODELLING: SCHELLING


MODEL OF ETHNIC RESIDENTIAL DYNAMICS
The objective of the Schelling model is to explain ethnic segregation in a city. The model population
consists of two ethnic groups of householders (householder agents), whose members seek residence
in a city of one-family dwellings represented by the cells of a rectangular grid. Householders pre-
fer residing within neighbourhoods of similar ethnic makeup, where the fraction of the members
of their group, referred to by Schelling (1971) as friends, is sufficiently high and a householder is
happy. Formally, this means that the fraction f of friends within the neighbourhood around the
agent’s location is above a certain threshold value F, f > F. The traditional approach is to consider F
as a control parameter and investigate the model dynamics as depending upon F.
Well-known results from previous model studies are as follows: there exists a critical value
of F = Fcrit such that when F < Fcrit, the spatial distribution of the members of the two groups will
become random over time, regardless of the initial distribution in the city; an example is shown in
Figure 9.5a. When F ≥ Fcrit, the agents’ residential pattern converges, in time, to segregation irre-
spective of the initial pattern, as shown in Figure 9.5b. The value of Fcrit varies between 0.25 and
0.30, depending upon the model details.

9.3.1 Agents, Objects and Relationships


The set of entities in the Schelling model consists of cells, that is, one-family dwellings, and house-
holder agents. Cell objects have no properties other than their location, while householder agents
have Boolean ethnicity. The location and neighbourhoods of the agents in the Schelling model are
defined using relationships. The latter makes it possible to develop a Schelling model irrespective of
the partitioning of space into dwellings (Figure 9.6).

9.3.2  Behavioural Rules


The way in which a Schelling agent makes residential decisions can be implemented in several
ways although it is not possible to provide all the details here. An agent has to decide if it wants to
reside, if there are vacant locations to reside in, if one or more of these locations are good enough
to move to and, if so, which of them to choose. The student of the Schelling model has to decide on
the following:

(a) (b)

FIGURE 9.5  Persistent residential patterns of the Schelling model for two equal groups, where the total
density of agents is 98%: (a) F = 0.2, random pattern; (b) F = 0.8, segregated pattern. (From Benenson, I. and
Hatna, E., Geogr. Anal., 43, 287, 2011.)
Agent-Based Modelling 217

(a) (b)

FIGURE 9.6  The use of relationships for defining the neighbourhood of buildings based on Voronoi parti-
tioning showing (a) the spatial view and (b) the relationship table.

1. How does an agent account for empty cells within the neighbourhood and for itself?
2. How does an agent located within an unfriendly neighbourhood behave in cases where all
vacant places are even worse?
3. Does an agent know about the state of all or only sufficiently close cells?
4. Does the choice of cell to relocate to depend on the distance between cells?
5. Does an agent move into a cell if the fraction of friends within the neighbourhood of the
vacant cell is the same as or higher than the current neighbourhood but still lower than F?
6. Are random (independent of the state of the neighbourhood) migrations possible?
7. How does an agent choose one of several vacant cells, if the number of friends is sufficiently
high for each of them? Is an agent a satisficer or maximiser (Simon, 1969)?
8. Is information about an agent’s move immediately available to the other agents?
9. Does an agent react to vacant cells only? Do agents swap their locations?

These and many other factors such as the form of the city or the ratio of the numbers in each group
may influence Schelling model dynamics. The study of the model (Benenson and Hatna, 2011;
Hatna and Benenson, 2012) shows that externally minor variations in conceptual and technical
aspects of the behavioural rules can essentially influence Schelling model dynamics. Surprisingly,
the majority of variations of the behavioural rules of Schelling have not yet been investigated.

9.3.3 Temporal and Spatial Resolution and the Order of Updating


An abstract view of residential behaviour makes the choice of spatial and temporal resolution for the
Schelling model relatively simple. Spatially, a cell symbolises a one-family building; temporally, it
is convenient to consider that the residential decision is done by the householder, most frequently,
once every few months. With regard to the neighbourhood size, it makes sense to consider the
reactions of the agent to the neighbours within 3 × 3, 5 × 5 or 7 × 7 neighbourhoods, but the modeller
should stop at some reasonable size of the neighbourhood: Schelling’s idea is that a householder
reacts to the fraction of friends among immediate neighbours. Note that a major parameter in the
Schelling model, that is, the desirable fraction of friends F, does not depend on the time step of
the model. The temporal resolution of the model is thus only important for establishing the rate of
occasional migration if the latter is included in the model. Assuming that urban residents migrate,
218 GeoComputation

on average, once every few years, a reasonable rate of occasional migration for a time step of several
months, should be at a level of 0.01–0.03 per time step.
Thomas Schelling investigated his model with 23 white and 22 black agents on a standard
8 × 8 chessboard and employed sequential updating (Schelling, 1971). In the following, we will
also follow a sequential updating approach and assume that an agent moves immediately after
the decision is made and all other agents become immediately aware of its move. The order of
updating is random in all examples and established anew at every time step. The probability
of occasional migration m is 0.01. An agent observes the entire urban space and decides on its
future location before moving to it, independently of the distance between the current and future
location.

9.3.4 Qualitative View of the Schelling Model Dynamics and Collective Phenomena


The goal of the Schelling model is to explain urban segregation patterns based on an individual’s ten-
dency to reside among friends. As Schelling discovered in 1971, the initial random pattern remains
random (Figure 9.5a) over time if the agents can be satisfied with two friends within a 3 × 3 neigh-
bourhood. However, if agents search for neighbourhoods with three or more friends, then the city
residential pattern becomes clustered over time (Figure 9.5b). That is, in Schelling’s experiments,
Fcrit is between 2/8 = 0.25 and 3/8 = 0.375. Thomas Schelling recognised this emergent phenomenon
by eye, playing with the pawns on a chessboard. Visual inspection, however, is insufficient for the
systematic study of the model patterns. Segregation indices, for example, Moran’s I, a measure of
spatial autocorrelation, may be useful here (Hatna and Benenson, 2011).
Real-world residential patterns cannot be limited to only random or segregated. Figure 9.7 pres-
ents residential patterns of Jews and Arabs in the Yaffo area of Tel Aviv and their abstract counter-
parts. Is the Schelling model able to generate these patterns? In the following, we will demonstrate
that the answer to this question is affirmative and that Schelling model dynamics are much richer
than simple convergence to pure integrated or segregated patterns.

FIGURE 9.7  Three residential patterns of Arab–Jews in the Yaffo residential area of Tel Aviv and their
abstract counterparts. (From Hatna, E. and Benenson, I., Geosimulation of income-based urban residen-
tial patterns, in: Advanced Geosimulation Models, Marceau, D. J. and Benenson I., eds., Bentham Science
Publishers, Hilversum, the Netherlands, pp. 111–125, 2011.)
Agent-Based Modelling 219

As the complexity of the model dynamics increases, the recognition and characterisation of col-
lective phenomena also becomes more complicated. The three different types of patterns in Figure 9.7
cannot be fully distinguished with one segregation index; recognition of their homogeneous and het-
erogeneous parts (if they exist) demands special algorithms (Hatna and Benenson, 2011).
The Schelling model is more than 40 years old. Intensive studies with this model, however,
have only been undertaken during the last decade. Before then, researchers followed the scheme
of Thomas Schelling’s chessboard experiments: that is, equal numbers of agents of two groups,
equal demand of agents of both types for friends and always sufficient number of vacant cells for
relocation (Schelling, 1969, 1971). What is the importance of a modeller’s decision regarding the
behavioural rules of the residential agents as posed in Section 9.3.2? What would be the model
dynamics if Schelling’s population consisted of a minority and a majority? What would happen in
an asymmetric situation where members of one group demand fewer friends within the neighbour-
hood than the members of the other group? Most of these questions have been posed only recently
and Table 9.2 presents some of the answers. These answers confirm the general property of the AB
models – light variation in the model rules and parameters can result in essentially different model
dynamics. I remind the reader that they can reproduce these results and make their own investi-
gations using the online version of the Schelling model at http://erezhatna.com/SchellingModel/
Model.html.
Note that some of the model versions in Table 9.2 consider satisficer and maximiser agents that
reflect important differences between the views of human behaviour typical for economics and
behavioural science (Simon, 1969). It is impossible to discuss this difference in this review paper
and I have already recommended Kennedy (2012) and Gigerenzer et al. (2011) for further reading.
With respect to the Schelling model, for a satisficer agent, all locations for which f > F holds are
equally good, while a maximiser agent will always choose the location with the maximum fraction
of friends.
Several qualitative extensions of the Schelling model are also considered. Just to mention a few:
In the model of Portugali and Benenson (1997), the population consists of agents who belong to
several ethnic groups. In Bruch and Mare (2006), the agents prefer neighbourhoods with some pres-
ence of strangers compared to neighbourhoods consisting of friends only. Agents can react not only
to their immediate neighbourhood but also to the ethnic structure of the residential block or larger
area (Fossett and Waren, 2005; Fossett, 2006a,b). Residential agents can communicate between
themselves and swap locations instead of searching for a residence over the common pool of vacan-
cies (Zhang, 2004). Furthermore, the majority of residential decisions are made in situations where
the ethnic factors are marginal and the residential decisions of families are determined by economic
factors. The step from an ethnic to an economic-based residential behaviour requires an essential
alteration of the Schelling model (Benenson et al., 2009) and would take us far beyond the illustra-
tion of an AB modelling approach.

9.3.5 Real-World Schelling-Like Simulation


As discussed earlier, a properly constructed AB model should only be loosely connected to the
spatial representation of the non-animated objects. The Schelling model, in particular, has to be
developed independently from the partitioning of space into residential locations, and the latter can
be easily achieved as presented in Figure 9.6. An arbitrary partitioning of space enables us to apply
Schelling’s ideas to a real-world area populated by members of two population groups for which
ethnic-like preferences can be important. Our model of the Jew–Arab segregation in Yaffo, which
is a mixed Tel Aviv neighbourhood with a population of about 30,000 (Figure 9.8), can serve as an
example of such development (Benenson et al., 2002) and as a proof of concept that AB models can
imitate the real-world residential dynamics. Recent attempts of applying the Schelling model to
real-world settings include Jordan et al. (2012) and Moreno et al. (2009).
220 GeoComputation

TABLE 9.2
Study of Schelling Model Dynamics according to Benenson and Hatna (2011) Including
the Model Settings and Parameters
The city is a 50 × 50 torus and the city population consists of dark and light grey residential agents.
Fraction of dark grey among all agents. β
Fraction of free cells in the city. d
Neighbourhood size. R × R
Fraction of agents who reside among friends but nonetheless try to reside. m
Fraction of friends in the neighbour that a dark/light grey agent is seeking. FB, FG

The Name of the Model Version, Qualitative View of Model Dynamics


Basic: Satisficer agents; equal number of dark and light greys; high density of occupied cells; non-zero random migration.
Dynamics: For any initial conditions, the city patterns converge to a random-like pattern for F < Fcrit and to a segregated
pattern for F ≥ Fcrit, where Fcrit ≈ 0.25.

Parameters Persistent Patterns


β = 0.5
d = 0.02
R = 3
m = 0.01

FB = FG = F F = 3/16 F = 5/16 F = 9/16 F = 13/16


Maximisers: Maximiser agents; equal number of dark and light greys; high density of occupied cells; low rate of
random migration.
Dynamics: The pattern segregates for any F and always stalls in a state where some of the agents remain unhappy
because there are no vacant cells of higher utility in which to reside.

Parameters Persistent Patterns


β = 0.5
d = 0.02
R = 3
m = 0.01

FB = FG = F F = 5/16 F = 9/16


No random migration: Satisficer agents; equal number of dark and light greys; high density of occupied cells.
Dynamics: For F ≥ Fcrit, the patterns evolve towards segregation but stall in a state for which the segregation is lower
than in the basic version. Some of the agents remain unhappy because there are no vacant cells of higher utility in
which to reside.

Parameters Persistent Patterns


β = 0.5
R = 3
m = 0
F = 5/8

d d = 0.7 d = 0.9 d = 0.98


Agent-Based Modelling 221

TABLE 9.2 (continued)


Study of Schelling Model Dynamics according to Benenson and Hatna (2011) Including
the Model Settings and Parameters
Minority–Majority: Satisficer agents; different numbers of dark and light greys; high density of occupied cells; low rate
of random migration.
Dynamics: For the F values within a certain interval that depends on the ratio of dark and light greys, the pattern is
neither random nor segregated, but mixed. It consists of the segregated part occupied by the majority and an integrated
part randomly occupied by members of two groups.

Parameters Persistent Patterns


β = 0.25
d = 0.02
R = 5
m = 0.01

FB = FG = F F = 5/48 F = 7/48 F = 11/48 F = 13/48


Asymmetric Demand: Satisficer agents; different numbers of dark and light greys; high density of occupied cells; low
rate of random migration.
Different values of F for the dark greys (FB) and for the light greys (FG), FB ≠ FG.
Dynamics: For values of FB and FG within certain intervals that depend on the ratio of dark and light greys and the
values of FB and FG, mixed patterns of the kind that are different from those emerging in the minority–majority case
are emerging here.

Parameters Persistent Patterns


β = 0.3
d = 0.02
R = 5
m = 0.02
FG = 0

FB FB = 17/48 FB = 19/48 FB = 23/48 FB = 27/48 FB = 29/48

9.3.6 Lessons from the Schelling Model


The Schelling model deals with popular dynamic phenomena and is undoubtedly the most studied
theoretical AB model in geography. What can we learn from this forerunner? The major lesson is
clearly in the importance of model details, and the examples in Section 9.3.4 demonstrate this with
regard to the ratio of the group numbers and the formalisation of the behaviour of the agents as
satisfiers versus maximisers. For the AB modeller, this conclusion is quite ambiguous. On the one
hand, it confirms the adequateness of the approach, that is, the variety of abstractions of residential
behaviour is essentially meaningful, and different views result in different outcomes. On the other
hand, it provokes essential scepticism – is it possible to specify these details based on common sense
or is never-ending experimental and/or field research required?
Following the sceptical line, it is hardly possible to decide whether real-world householders are
satisficers or maximisers and whether they tend to improve their residential conditions step by step
or whether they would delay moving until they find a residence that perfectly fits their needs for the
next decade at least. Different householders can behave differently and the same person can employ
different tactics in different situations.
222

T = 40
Yaffo, 1995

Ethnic groups Ethnic groups


in a house in a house
75 75
37.5 37.5
7.5 7.5
Jews Jews
Muslims Muslims
Christians Christians
Empty Empty

(a) (b)

FIGURE 9.8  The initial pattern of Arabs and Jews in Yaffo in 1965 (smaller figure in the center) and the model (a) and the real-world patterns of the Arab and Jewish
families (b) in Yaffo in 1995. (From Benenson, I. et al., Environ. Plan. B, 29, 491, 2002, Pion Ltd., London, U.K., http://www.pion.co.uk. http://www.envplan.com.)
GeoComputation
Agent-Based Modelling 223

My view is that AB modelling changes the view on what is a model. The tradition of physical
science demands establishing a model’s structure by means of equations or a computer program and
then studying the model’s dynamics as dependent on parameters. In terms of physical science, dif-
ferent sets of behavioural rules of the Schelling residential agents define different models. Each of
these models has its own set of parameters, and until they are fully investigated, it is impossible to
know whether these models generate similar or different dynamics. However, from the geographic
point of view, different formalisations of the Schelling model presented in Section 9.3.4 express the
same idea of staying among friends. In this respect, all our examples are different versions of the
Schelling model. The situation may be compared to the models of species interaction in popula-
tion ecology. Just as in the Lotka–Volterra predator–prey model (Benenson and Torrens, 2004,
Chapter 3), the original assumptions of the Schelling model serve as a starting point and there are
numerous ways to formulate the model’s assumptions and demonstrate non-trivial consequences of
the basic idea. How productive is this view? A search for the predator–prey model within scirus.
com, conducted on 7 January 2013, resulted in 13,268 hits, of which 3,585 are research papers,
while the search for the Schelling model is far behind – 842 hits and 69 papers. To me, this just
demonstrates the amount of potential work for future students of GC!
An advantage of AB modelling is the possibility of representing the behaviour of householders
explicitly; the latter cannot be done with models that are formulated in terms of aggregate param-
eters, for example, with the total numbers of households in different ethnic groups for the Schelling
model. This is critically advantageous for GC since AB modelling breaks the conceptual barrier
between informal and formal geographic knowledge. As far as a new view of possible household
behaviour is established, a new AB model can be constructed or even better, an existing model
can be modified to study whether this new view brings new consequences. I would thus conclude
optimistically: the Schelling model is a forerunner in the development of abstract AB modelling as
a long-awaited framework for quantitative social geography.
The direct interpretation of human and institutional behaviour makes AB modelling especially
attractive for applied simulation. I illustrate this point with the PARKAGENT model, which was
initially constructed as a tool for spatially explicit policymaking. I have exploited the PARKAGENT
model for presenting the basic ideas of geosimulation in Sections 9.2.1 and 9.2.2 of this chapter,
and in what follows, I exploit it for illustrating the applied abilities of AB modelling. As should be
expected, the presentation of a real-world application of an AB model demands essentially more
details than the abstract Schelling model.

9.4 EXAMPLE OF PREDICTIVE AB MODELLING: THE PARKAGENT


MODEL OF PARKING SEARCH AND PARKING IN THE CITY
Citizens of every large city in the world suffer from a lack of parking spaces. Municipalities are
aware of numerous ways to improve the situation, for example, restrict car entrance to the city
centre, increase parking fees and fines, forbid parking along the main streets and restrain parking
within residential areas. However, drivers comprise the majority of the voters and thus municipali-
ties implement parking policies with great care. A tool that would serve to assess the consequences
of parking policies would really help the decision maker. PARKAGENT, an AB model of parking
search and parking in the city, was developed for this purpose. Let us present the features of the
PARKAGENT model according to Benenson et al. (2008) and Levy et al. (2012).

9.4.1 Agents, Objects and Relationships


PARKAGENT model agents and objects were already introduced in Section 9.2.1 and used as an
example of AB model development. These were driver agents, and objects of different kinds –
destinations, parking places, and the street network. The full version of the PARKAGENT model
224 GeoComputation

contains one more type of agent and one more type of object: parking inspectors, which are intro-
duced in order to investigate different forms of parking control, and parking lots.

9.4.2 Agent and Object Properties


The full version of the PARKAGENT model distinguishes between driver agents of four types,
each characterised by specific parking behaviour: residents, visitors, workers and daily commuters.
Parking inspector agents are of three types, depending on whether they move during inspection by
foot, by bike or by motorbike. Parking lot is a new type of object.
On-street parking permissions and prices are specified in the full version of the PARKAGENT
model by hours of the day and days of the week. Parking lots are characterised by their capacity
and prices, where the latter is also at a resolution of hours of the day and days of the week. Note that
all these data are part of a modern municipality GIS, while their availability varies between cities.
A loose connection between the PARKAGENT model GIS database and the model is especially
useful for seamless substitution of datasets. In this way, the same model of agent behaviour can be
applied to different cities and under different parking policies (Figure 9.9).

9.4.3 Time and Updating in the PARKAGENT Model


As discussed in Section 9.2.4, the time step in the PARKAGENT model is 1 s, which is sufficient for
simulating a driver’s reaction to an occupied or vacant parking place. The model employs sequential
updating and all moving cars are considered in a random order, established anew at every time step.

9.4.4  Behavioural Rules of the Drivers


Parking search behaviour depends on a driver’s knowledge of the parking supply, parking limitations
and pricing. In European and North American cities, these three components are always balanced
by the city parking policy. Most of the drivers are local residents and have essential experience of
parking in their city; their behaviour is adapted to the city’s parking policy. Four implementations

(a) (b)

FIGURE 9.9  A PARKAGENT model view of (a) the area in the centre of Tel Aviv and (b) an abstract rect-
angular city. Traffic directions are shown by the small points on the centre line for a one-way street (see lower
zoomed in area in [a]) or by parallel lines of small points on both sides of the centre line for a two-way street
(see zoomed in area in [b]). Two outer rows of larger points represent the parking places; the parking inspector
agent is presented in the upper zoomed in area in (a). (From Levy, N. et al., Transportmetrica, 9(9), 773, 2012.)
Agent-Based Modelling 225

of the PARKAGENT model that are done until now are evidently insufficient to cover possible
differences between drivers’ behaviours and parking policies. In what follows, I thus limit the pre-
sentation of drivers’ behavioural rules to the Tel Aviv situation, where on-street parking is free for
residents. These rules are established based on experimental trips with the drivers and an analysis
of the drivers’ GPS records (Benenson et al., 2008; Levy et al., 2012).
The agents in the PARKAGENT model aim at imitating the behaviour of real-world drivers and
parking inspectors. As presented in Sections 9.2.1 and 9.2.2, each driver agent is assigned a desti-
nation and the rules of driving and parking behaviour distinguish between: (1) driving towards the
destination before searching for parking actually commences, (2) parking search and choice close
to the destination before reaching it, (3) parking search and choice after the destination is missed,
(4) parking and (5) driving out.

9.4.4.1  Initialisation of Drivers and Driving towards the Destination


The initiation of a driver agent in the PARKAGENT model begins with assigning a destination and
a desired parking duration. Then the driver agent enters the model by landing randomly at one of
the street segments at a driving distance of 500 m from the destination, in proportion to the data on
the intensity of traffic on the street segments. From this initial position, the driver agent’s car drives
towards the destination at a speed of 12 km/h and searches for a parking place.
The PARKAGENT model enables two algorithms for finding the way to a destination. According
to the first heuristic algorithm, at each junction, the driver agent chooses the street segment that takes
it to the junction closest to the destination (Benenson et al., 2008). The second is just a shortest-
distance path algorithm between the current driver agent’s location and the destination. A salient
feature of the PARKAGENT model is an agent’s reaction to congestion. Before advancing, a driver
agent checks if the street ahead is not occupied by another car. If yes, the driver agent does not
advance during the time step.

9.4.4.2  To Park or to Continue Driving to the Destination?


During driving, the driver agent has to decide whether to park or to continue driving in order to park
closer to the destination. To decide, an agent constantly re-estimates the distance to the destination
and the chance of finding a parking place closer to it. To estimate this chance, a driver agent reflects
on free and occupied parking places and, depending on the distance to the destination, estimates the
expected number, H, of free parking places on the remaining route. Based on H, when passing a free
parking place, the driver agent decides whether to park or continue driving towards the destination
in order to park closer to it. The assumption in the PARKAGENT model (Benenson et al., 2008) is
that the decision depends on the value of H as follows:

Continue driving towards the destination if H > H2.


Park immediately if H < H1.
Continue driving with probability p = (H − H1)/(H2 − H1) if H1 ≤ H ≤ H2.

Currently, the model employs the values of H1 = 1 and H2 = 3 in all applications.

9.4.4.3  Driving and Parking after the Destination Is Missed


The driver agent who has passed his/her destination cancels the decision rule employed at the stage
of driving towards the destination and is ready to park anywhere as long as it is not too far from the
destination. The PARKAGENT model assumes that after passing the destination, the driver agent
aims to park within an appropriate parking area – a circle of a certain radius with the destination at
its centre. The initial radius of the appropriate area is 100 m and it is assumed to grow linearly at a
rate of 30 m/min up to a 400 m Euclidean distance from the destination, thus reaching its maximum
in 10 min. Reaching a junction, the driver agent will choose the street that would take them to a
random junction within the appropriate parking area (Benenson et al., 2008).
226 GeoComputation

9.4.5  Behavioural Rules of the Inspectors


Different from driver agents, the rules of inspector agent behaviour in the PARKAGENT model
are very simple just because they are established by the municipality. An inspector agent advances
along its inspector path, which is constructed from the segments of the street network at a walking,
biking or motorbike speed. An inspector agent observes parked cars on both sides of the path and
compares the properties of the car with the permissions of a parking place. In the situation where
the parking rule is violated, the inspector agent remains at a place for the time needed to issue a fine,
where the latter depends on the type of violation.

9.4.6 PARKAGENT Model Validation and Analysis of


the Collective Parking Phenomena

An urban planner is usually interested in the fraction of drivers who search for parking for too long
and/or park too far away from the destination; these people can vote differently in the next election.
Drivers who park at a distance can also change their mode of travel to public transport, while the
low speed of the cars that cruise for parking contributes to traffic congestion. The PARKAGENT
model output includes two basic distributions that supply this information: the drivers’ search time
and the distance between the parking place and the destination. These distributions reflect the bal-
ance between arrivals to and departures from the area, the spatial pattern of destinations and the
amount of parking places (Levy et al., 2012).
Importantly, the distribution of the distance between the residents’ night parking and the
residence can be estimated based on field observations at night and the data on the drivers’
addresses and can thus be used for model validation. In Levy et al. (2012), the distribution of
the distances generated by the model is compared to the one constructed in the field survey, for
900 cars for the densely populated Basel residential area in Tel Aviv, where the number of park-
ing places is about 9,000 and the number of registered cars is about 10,000. As can be seen in
Figure 9.10, the correspondence is very good. The same should be done in every city in which
the model is applied.

35

30

Field observations
25
PARKAGENT, Tel Aviv road
Frequency, %

network
20

15

10

0
30 60 90 150 180 210 240 270 300 330 360 390 420+
Distance from destination

FIGURE 9.10  Distributions of the distance between the residents’ parking place at night and the residence as
estimated during a survey in the Basel residential area, Tel Aviv, and generated by the PARKAGENT model.
(From Levy, N. et al., Transportmetrica, 9(9), 773, 2012.)
Agent-Based Modelling 227

Analysis of the PARKAGENT model confirms that the structure of the street network weakly
influences the parking dynamics in the area and the dynamics of the system can thus be character-
ised by aggregate parameters. The most important element for the parking dynamics is the aver-
age fraction of free places that guarantees that the parking search will not take more than 1–2 min.
An engineering rule of thumb is that this fraction should be below 85% (Shoup, 2006). The analy-
sis using the PARKAGENT model shows that this fraction can be increased to 92%–93%, that
is, the number of parking permissions in the area can be essentially increased. An important
theoretical result is that cruising for parking in the circumstances of an increasing occupation rate
(residents’ cruising at the end of the working day) results in the essential aggregation of the yet
free parking places. The majority of drivers will cruise over the areas of 100% occupation; the
remaining places are for the lucky drivers who, by chance, get close to the emerging clusters of
free parking places.

9.4.7  Studying Real-World Parking with the PARKAGENT Model


Real-world applications of the PARKAGENT model are, currently, of two kinds. The first regards
the establishment of new and removing of old parking facilities and the influence of these changes
on the parking situation in the surrounding area. The second focuses on the parking situation in
the city in the future based on scenarios of urban development and population growth. Examples
of the first kind include establishing a new parking garage of up to 900 places at the margin of the
relatively isolated business centre (1.5 × 0.7 km, 20,000 workers) in Ramat Gan, one of Tel Aviv’s
metropolitan cities, and closing Antwerp central city park (5000 places) along the Scheldt River that
would be turned into a walking embankment (Figure 9.11). An example of the second kind is the
use of the PARKAGENT model for estimating the scenarios of transportation development of the
Tel Aviv metropolitan city of Bat Yam.
In Ramat Gan, the improvement in cruising time and the distance to the destination were esti-
mated for different capacities of a new parking garage (300, 600 or 900 places) and different sce-
narios of the area development until 2020 that all include constructions on the on-surface parking
lots in this area. From the owner’s point of view, the larger the garage, the higher the expected profit,
but the problem is whether drivers would park there. The PARKAGENT model analysis provides
estimates of the number of drivers that will use the new garage for each development scenario.
Unexpectedly, the model study points to the critical importance of the signage system that informs
drivers which of the parking lots have vacant places at a given moment. With such a system, the
garage of 900 places is profitable and will be fully used, despite an average longer walk from the
garage to the office. Without the signage system, an essential fraction of drivers will cruise for too
long, 10 min and longer.

FIGURE 9.11  A general view of the Ramat Gan and Antwerp projects. (Middle figure: Courtesy of Dr. Karel
Martens, Radboud University, Nijmegen, the Netherlands.)
228 GeoComputation

9.5  RECENT TRENDS IN AB GEOGRAPHIC MODELLING


During the last decade, the popularity of AB modelling has grown steadily, and more and more
geographic phenomena are being investigated in this way. This includes recent books (Marceau
and Benenson, 2011; Helbing, 2012; Heppenstall et al., 2012; Zhang, 2012) and numerous papers.
References to these papers, organised by major modelling topics, are provided in Appendix 9A.

9.6  GUIDANCE FOR STUDENTS OF AB MODELLING


The objective of geographic modelling is to understand, explain and forecast geographic phenom-
ena. Usually, there are no reasons to prefer a certain model to another one since most models
deal with different aspects of the system. This section considers operational problems that I have
encountered and resolved in my AB modelling exercises as well as operational problems raised by
my students. I focus on problems encountered at the second stage of development, when you have
already built some model prototype, formulated an initial view of the system and now aim to inves-
tigate the model in depth.

9.6.1  Before Starting Development of the Long-Living Version of Your Model


Think in terms of object-oriented programming: An object-oriented view of the system is nec-
essary for proper software architecture and guarantees ease of modification to the never-
ending changes in the behavioural rules of the agents.
Think in terms of an entity-relationship database model and GIS: A database/GIS approach
to information management enables loose coupling between the model and the data and
makes it easy to substitute one dataset with the other. In geographic modelling, an entity-
relationship model works hand in hand with object-oriented programming and facilitates
the location of agents and objects by relating them to other objects.
Specify the goal of your modelling exercise: The world around us is infinitely complex but you
are interested in very specific aspects of this complexity. Formulate these aspects before
you build the model. Plan your model experiments before you start development. During
the development, you will see numerous ways of defining every piece of the model. Your
Occam’s razor should be ready.

9.6.2 When Developing and Coding the Simulation


Start with the minimal model: Start with the minimal version of the model that you are able
to specify and code quickly, and study it in depth. Only then decide on the level of realism
and the amount of the details that you would incorporate and investigate in the future.
Define agents, objects and relationships before you define behaviours: A database view
of the AB model enables you to define the model agents, objects and the relationships
between them before deciding on their attributes and behaviours. Do not forget that you
can locate geographic objects by relationship. Therefore, decide which of the agents and
objects should be located explicitly and become geographic features and which should be
located implicitly, using relationships. The fewer geographic features the better; GIS layers
demand essentially more work than just tables.
Programming style 1: Development and debugging of the time-driven model is always sim-
pler than that of the event-driven so start with the time-driven version. Event-driven model-
ling demands essential programming experience.
Programming style 2: Start with sequential (asynchronous) updating and do not forget to
randomise the order of considering agents at every time step. If you deal with the agents
of two or more types, be very careful regarding the order of updating of the agents of dif-
ferent types. Consider several options, starting from the random mixing of the agent lists and
Agent-Based Modelling 229

investigate if the order of updating influences model output. You rarely know the temporal
details of agent behaviour and interactions so avoid making your model dependent on this
unknown.
Programming style 3: Guarantee easy substitution of the GIS layers, including the abstract
and real-world versions.
Programming style 4: Start with the natural (usually, very high) spatial and temporal
resolution of the model and make a full log of the model dynamics, that is, store every
move of every agent. Your initial decision on the model’s aggregate outputs may be
inefficient and you can obtain better understanding of the model’s dynamics by ana-
lysing this log and building additional aggregate outputs. After several attempts, you
could decide better which of the aggregate outputs should be directly built during the
simulation. Do not activate the log option when studying model sensitivity and other
computationally intensive issues, but reactivate it when you qualitatively change the
model and, especially, the behavioural rules of the agents. Do not forget that aggregate
output can mask qualitative features of system dynamics – bifurcations, catastrophes,
multi-stability, etc.
Programming style 5: Guarantee easy recognition of the infrastructure objects and agents
at the boundary of the modelled area. Uncontrolled influence of the boundary can cause
artificial and fake effects.
Programming style 6: Think about emerging patterns that you are interested in revealing
and therefore the necessary computational algorithms for recognising these patterns. Start
with implementing these algorithms and investigating their effectiveness outside of your
simulation. This is not often easy.
Agent behaviour 1: There are numerous ways of formally representing agent behaviour, and
the more we investigate the model, the more variants come to mind. Prefer rules where the
parameters can be established once and forever. The maximum number of model param-
eters that can be investigated in depth is three.
Agent behaviour 2: Try to formulate agents’ behaviour in terms of behavioural science.
Carefully check whether your agents have perfect or bounded rationality. Intuitively, we
prefer bounded rational agents and fast and frugal behavioural heuristics. Connection to
behavioural theory will make your model experiments fundamentally better defined.
Agent behaviour 3: It is easier to think of agent behaviour as a sequence of acts performed one
after the other, rather than one-time multi-parametric decisions, for example, according to
the logit model. The likelihood of agent decisions is important for understanding the dynam-
ics of the model and a sequence of elementary steps has evident advantages in this respect.
Agent behaviour 4: Agents can be enabled to remember the past, to learn and even to foresee
the future. Any of these abilities essentially complicates the collective dynamics of the
system. If your agents have these high-level human-like abilities, investigate them one by
one and preserve the option of nullifying all of them.

9.6.3 When Investigating Your Model Theoretically


Enable stochastic variation of the model parameters: Consider the behavioural parameters
of the agents as stochastic. For example, for the Schelling model, assume that the threshold
fraction f of friends is not identical for all agents, but is normally distributed with an aver-
age fm and standard deviation fSTD. Investigate the Schelling residential dynamics for zero,
low and high fSTD. The case of fm = Fcrit and non-zero fSTD is especially interesting in this
respect. For non-zero standard deviation of a model parameter, run the model 100 times
and check that you understand the distribution of the results.
Perform semantic debugging: Your code works and the simulation does not fail. Most prob-
ably, your simulation will still contain semantic bugs, that is, the code still wrongly
230 GeoComputation

represents your view of the system. It takes time to get rid of semantic bugs; often, you
find the last one after submitting your paper to a journal. The clues that can help: establish
global and/or behavioural parameters in a way that the model works in the most simplistic
and easily predictable way, and check if the model output fits to your expectations. For
example, in the Schelling model set F = 0 or F = 1; in the PARKAGENT model, build a city
of one street, establish one parking place on this street and let one, two and three drivers
enter the city. Try your best to invent as many non-realistic but predictable situations as
possible.
Pass devil’s advocate test 1: Choose minimal and convenient sets of external parameters and
of the parameters of the agent behaviour. Run the model and, in parallel, try to explain the
results by simple calculations, with pen and paper. For example, try to explain why the
Schelling model pattern should converge to a segregated one in the case of f = 0.5. If you
succeeded, repeat with several other sets of parameters. If you repeatedly succeed, aban-
don your simulation and develop an analytic model of the system.
Pass devil’s advocate test 2: Choose a parameter P of interest and divide the range of P varia-
tion into five equal intervals. Run the model five times for the values of P in the middle of
each interval and build dependencies of interesting model outcomes on P. If these depen-
dencies are linear, repeat with other sets of parameters and then add stochastic variation
of the investigated parameter. If all these changes still produce linear dependencies of
the model outcome on the average value of parameter(s), cancel model development and
explain why you get such obvious results.
Pass devil’s advocate test 3: Your model is a complex system in itself and full semantic debug-
ging can never be guaranteed. Carefully test every qualitative effect that you obtain with the
model by varying model settings that seem unimportant for this effect. Vary spatial patterns
of non-animated objects, for example. Never forget that the phenomenon may be artificial,
caused by a specific choice of parameters. It will vanish when parameters are changed.
Model effects should be statistically significant and strong: Check that the effects that you
consider as meaningful are significant for a reasonable assumption about the standard
deviation of the model parameters. Measure variation of the model outputs using the coef-
ficient of variation (CV = STD × 100%/M): CV above 20% is wonderful, CV ~ 10% is not
bad, CV = 0.5% will hardly cause a reader’s reaction.

9.6.4 When Applying Your Model to the Real World


Model validation 1: If your model has few parameters, there is a chance that you could vali-
date it, that is, compare the model results to real-world data. These data should not be used
for estimating the model parameters. Make this comparison even if you broke the latter
rule, that is, check if your model reproduces the data that you put into it, as sometimes even
this does not happen. Do not forget to mention in your paper that you used the same set of
data to estimate the model parameters and for the validation.
Model validation 2: You are allowed to choose convenient examples and fail in reproducing
some of the observed phenomena. The model is just a tool for studying reality and it is
quite a success to reproduce part of it. Try to understand and explain the failures.
Every real-world implementation demands essential work: Be proud of yourself even if you
succeeded in applying your AB model to one real situation only.

9.7 CONCLUSIONS
This chapter presented a detailed overview of AB modelling with a particular emphasis on opera-
tional decisions that an AB modeller must make, for example, the choice of agents, the representa-
tion of relationships between them, the formulation and formalisation of the agent behavioural rules
Agent-Based Modelling 231

and the study of the AB model dynamics. Two AB models, one exploratory and one predictive, were
used to illustrate the approach advocated in this chapter: the Schelling model of ethnic residential
dynamics and the PARKAGENT model to emulate parking in a city. A set of guidelines for students
interested in following an AB modelling approach as well as a list of recent developments in the
field were then presented.

APPENDIX 9A  POPULAR TOPICS IN AB MODELLING


Literature review: LGH/COM – light/comprehensive review of the literature
Model presentation: LO/HI – low/high level of details when presenting the model
Results presentation: LO/HI – low/high level of details when presenting the results

Methodological Papers
Source Paper’s Topic Lit Rev Mod Pres Res Pres
An (2012) Review of AB models as a tool for including human COM LO —
decisions into the models of natural systems
Barbati et al. (2012) Review of applications of AB models for optimisation COM LO —
problems
Bishop et al. (2009) Presentation of the AB model outputs within a virtual COM LO LO
environment as a tool for real-world multi-criteria
decision making
Bithell et al. (2008) Review that combines ecological and geographic views of COM HI HI
the AB modelling
Crooks et al. (2008) The use of AB modelling for studying system dynamics COM LO HI
Grimm et al. (2006, Protocol of the AB model formal representation that aims LGH LO LO
2010) to substitute a UML-based representation
Hammam et al. (2007) Geometric ABM with changing geometry COM HI HI
Lättilä et al. (2010) The ways of combining AB and system dynamics COM LO —
modelling approaches
Li et al. (2008) Calibration and validation, wayfinding in the city COM HI LO
Li et al. (2010) Integration of CA and AB models for spatial optimisation COM HI HI
Louie and Carley Review of validation of AB models in the social sciences COM LO LO
(2008)
Moulin et al. (2004) The formal view and implementation of the software for COM HI HI
geographic AB modelling, with examples
Parry and Evans Comparison of two methods for improving performance COM HI HI
(2008) of AB models: parallel processing versus
super-individual
Saarloos et al. (2008) AB modelling as a paradigm for planning support systems COM HI HI
Smajgl et al. (2011) Parameterisation of human behaviour in AB models COM LO LO
Thiele and Grimm Extension of NetLogo that enables use of the R statistical LGH HI LO
(2010) language for analysis of the simulation results, http://
netlogo-r-ext.berlios.de
Thompson and The use of AB modelling as an educational tool for LGH HI HI
Reimann (2010) studying system dynamics
Tobias and Hofmann Review of the software for AB modelling LGH HI —
(2004)
Tweedale et al. (2007) Computer science view of AB modelling and the COM HI LO
architecture for the BDI paradigm
Vincenot et al. (2011) Relation between AB modelling and system dynamics COM HI LO
models in ecology; a review
232 GeoComputation

Urban Transport, Car and Pedestrian Traffic, Individual Activities in the City
Source Paper’s Topic Lit Rev Mod Pres Res Pres
Alizadeh (2011) Evacuation from rooms with obstacles COM HI HI
Antonini et al. (2006) Model of pedestrian walking behaviour COM HI HI
Davidsson et al. (2005) AB transport logistics; a review COM LO —
Holmgren et al. (2012) Simulation of freight transport chains COM HI HI
Hunt and Stefan (2007) AB model of human commercial activity LGH HI HI
Jin and White (2012) Daily trip patterns as dependent on LGH HI HI
neighbourhood design
Maerivoet and De Moor (2005) Review of AB models from road traffic COM LO —
Malleson and Birkin (2012) Spatial pattern of crime activities LGH LO HI
Malleson et al. (2010) AB model of burglary COM HI HI
McDonnell and Zellner (2011) Modelling bus rapid transit use COM HI HI
Nishinari et al. (2006) AB model of ants and pedestrian behaviour LGH HI HI
Pelechano and Malkawi (2008) AB model of evacuation from buildings COM HI HI
Robin et al. (2009) Specification and validation of pedestrian COM HI HI
walking behaviour models
Schenk et al. (2007) AB model of grocery shopping behaviour LGH HI HI
Singh et al. (2009) Modelling subgroup formation and behaviour in COM HI HI
a crowd
Suma et al. (2012) Anticipation in pedestrian behaviour COM HI HI
Sun and Wang (2007) Spatial and temporal resolution are important COM HI HI
for AB modelling
Teknomo (2006) Microscopic pedestrian model (road crossing, COM HI HI
pieces of streets)
Teodorović (2008) Swarm intelligence in transportation COM HI —
engineering; a review
Wei-Guo et al. (2006) Evacuation from a room, comparison of several LGH HI HI
models
Xi and Son (2012) Pedestrian route choice COM HI HI
Zhang et al. (2008) AB model of passengers alighting and boarding COM HI HI
at a metro station

Residential Dynamics in the City


Source Paper’s Topic Lit Rev Mod Pres Res Pres
Augustijn-Beckers et al. (2011) Spatially explicit model of residential dynamics COM HI HI
in a growing neighbourhood
Chen et al. (2012) Residential behaviour based on economic COM HI HI
principles
Diappi and Bolchi (2008) Model of gentrification that is based on economic COM HI HI
principles
Torrens (2007) Residential mobility COM HI LO
Torrens and Nara (2007) Model of gentrification COM HI HI
Wu et al. (2008) AB model of Leeds LGH HI HI
Yin and Muller (2007) AB model of residential choice as a function of COM LO HI
environmental parameters
Agent-Based Modelling 233

Urban/Agriculture/Regional/Ecological LU/LC Dynamics


Source Paper’s Topic Lit Rev Mod Pres Res Pres
Bakker and van Doorn (2009) Farmer decision making on the land use and crops LGH HI HI
Barthel et al. (2008) Response to water supply change in response to COM HI HI
global change at regional level
Berger et al. (2006) AB model for simulation of development policies; COM LO LO
a review
Berger et al. (2008) AB model of competition among plants; a review COM HI —
Bithell and Brasington (2009) AB model of farming LGH HI HI
Brown et al. (2008) Complexity in AB land-use models COM LO LO
Chion et al. (2011) Human–nature interaction LGH HI HI
Doglioni et al. (2009) Integrated model of land-use and water resource COM HI HI
dynamics
Haase et al. (2012) Urban shrinkage COM LO LO
Kelley and Evans (2011) AB model of agricultural land-use dynamics that COM HI HI
follows general economic models
Konstantinos and How land-use dynamics depend on partitioning of LGH HI HI
Pijanowski (2007) lands into parcels
Lauf et al. (2012) Land-use dynamics model coupled with an AB COM HI HI
model of residential dynamics
Le et al. (2010) Mixed model for assessing scenarios of regional LGH LO HI
development
Le et al. (2012) Householders make decisions on the use of LGH HI HI
their land
Ligmann-Zielinska et al. AB modelling as a tool for developing planning COM HI HI
(2007) policies
Ligmann-Zielinska and Scenarios of land-use decision making COM HI HI
Jankowski (2010)
Ligtenberg et al. (2010) Role playing approach for validation of AB COM HI HI
land-use models
Magliocca et al. (2011) Introduce proper economic background into LU/ LGH HI LO
LC models
Monticino et al. (2007) Land-use changes in the natural system COM HI LO
Parker and Filatova (2008) Agent-driven land markets COM HI —
Schreinemachers and AB simulation of decision making in agricultural COM HI HI
Berger (2011) systems; software at https://mp-mas.uni-
hohenheim.de/
Topping et al. (2010) Development, testing and documentation of COM HI HI
complex ecological AB model
Valbuena et al. (2008) How to define types of agents in a model of COM HI HI
land-use dynamics
Valbuena et al. (2010) Individual versus group decision making LGH HI HI
Vieira Pak and Castillo The land-use game, with human participants as a LGH HI HI
Brieva (2010) tool for investigating model scenarios

REFERENCES
Alizadeh, R. 2011. A dynamic cellular automaton model for evacuation process with obstacles. Safety Science
49(2): 315–323.
An, L. 2012. Modeling human decisions in coupled human and natural systems: Review of agent-based mod-
els. Ecological Modelling 229: 25–36.
234 GeoComputation

Antonini, G., Bierlaire, M., and Weber, M. 2006. Discrete choice models of pedestrian walking behavior.
Transportation Research Part B: Methodological 40(8): 667–687.
Augustijn-Beckers, E.-W., Flacke, J., and Retsios, B. 2011. Simulating informal settlement growth in Dar Es
Salaam, Tanzania: An agent-based housing model. Computers, Environment and Urban Systems 35(2):
93–103.
Bakker, M. M. and van Doorn, A. M. 2009. Farmer-specific relationships between land use change and
landscape factors: Introducing agents in empirical land use modelling. Land Use Policy 26(3):
809–817.
Banerjee, S., Carlin, B. P., and Gelfand, A. E. 2003. Hierarchical Modeling and Analysis for Spatial Data.
London, U.K.: Chapman & Hall.
Barbati, M., Bruno, G., and Genovese, A. 2012. Applications of agent-based models for optimization problems:
A literature review. Expert Systems with Applications 39(5): 6020–6028.
Barthel, R., Janisch, S., Schwarz, N., Trifkovic, A., Nickel, D., Schulz, C., and Mauser, W. 2008. An integrated
modelling framework for simulating regional-scale actor responses to global change in the water domain.
Environmental Modelling & Software 23(9): 1095–1121.
Batty, M. 2012. A generic framework for computational spatial modelling. In Agent-Based Models of
Geographical Systems, A. J. Heppenstall, A. T. Crooks, L. M. See, and M. Batty, eds., pp. 19–50.
Heidelberg, Germany: Springer-Verlag.
Batty, M., Crooks, A. T., See, L. M., and Heppenstall, A. J. 2012. Perspectives on agent-based models and
geographical systems. In Agent-Based Models of Geographical Systems, A. J. Heppenstall, A. T. Crooks,
L. M. See, and M. Batty, eds., pp. 1–15. Heidelberg, Germany: Springer-Verlag.
Batty, M. and Longley, P. 2014. Modelling spatial morphologies: Fractal patterns from cellular automata.
In GeoComputation, 2nd edn., eds. R.J. Abrahart and L. See, pp. 23–48. Boca Raton, FL: Taylor &
Francis.
Benenson, I. 2007. Warning! The scale of the cellular automata is changed. Computers, Environment and
Urban Systems 31: 107–113.
Benenson, I. and Hatna, E. 2011. Minority–majority relations within the Schelling model of residential dynam-
ics. Geographical Analysis 43: 287–305.
Benenson, I., Hatna, E., and Or, E. 2009. From Schelling to spatially explicit modeling of urban ethnic and
economic residential dynamics. Sociological Methods and Research 37: 463–497.
Benenson, I., Martens, K., and Birfir, S. 2008. PARKAGENT: An agent-based model of parking in the city.
Computers, Environment and Urban Systems 32(6): 431–439.
Benenson, I., Omer, I., and Hatna, E. 2002. Entity-based modeling of urban residential dynamics—The case of
Yaffo, Tel-Aviv. Environment and Planning B 29: 491–512.
Benenson, I. and Torrens, P. M. 2004. Geosimulation: Automata-Based Modeling of Urban Phenomena.
London, U.K.: Wiley.
Berger, T., Schreinemachers, P., and Woelcke, J. 2006. Multi-agent simulation for the targeting of development
policies in less-favored areas. Agricultural Systems 88(1): 28–43.
Berger, U., Piou, C., Schiffers, K., and Grimm, V. 2008. Competition among plants: Concepts, individual-
based modelling approaches, and a proposal for a future research strategy. Perspectives in Plant Ecology,
Evolution and Systematics 9(3–4): 121–135.
Bishop, I. D., Stock, C., and Williams, K. J. 2009. Using virtual environments and agent models in multi-
criteria decision-making. Land Use Policy 26(1): 87–94.
Bithell, M. and Brasington, J. 2009. Coupling agent-based models of subsistence farming with individual-
based forest models and dynamic models of water distribution. Environmental Modelling & Software
24(2): 173–190.
Bithell, M., Brasington, J., and Richards, K. 2008. Discrete-element, individual-based and agent-based models:
Tools for interdisciplinary enquiry in geography? Geoforum 39(2): 625–642.
Blok, H. J. and Bergersen, B. 1999. Synchronous versus asynchronous updating in the ‘Game of Life’. Physical
Review E 59: 3876–3879.
Brinkhoff, T. and Kresse, D. 2012. Databases. In Springer Handbook of Geographic Information, W. Kresse
and D. M. Danko, eds., pp. 61–107. Heidelberg, Germany: Springer-Verlag.
Brown, D. G., Robinson, D. T., An, L., Nassauer, J. I., Zellner, M., Rand, W., Riolo, R., Page, S. E., Low, B.,
and Wang, Z. 2008. Exurbia from the bottom-up: Confronting empirical challenges to characterizing a
complex system. Geoforum 39(2): 805–818.
Bruch, E. E. and Mare, R. D. 2006. Neighborhood choice and neighborhood change. American Journal of
Sociology 112: 667–709.
Agent-Based Modelling 235

Chen, Y., Li, X., Wang, S., and Lu, X. 2012. Defining agents’ behaviour based on urban economic theory
to simulate complex urban residential dynamics. International Journal of Geographical Information
Science 26(7): 1155–1172.
Chion, C., Lamontagne, P., Turgeon, S., Parrott, L., Landry, J.-A., Marceau, D. J., Martins, C. C. A. et al.
2011. Eliciting cognitive processes underlying patterns of human–wildlife interactions for agent-based
modelling. Ecological Modelling 222(14): 2213–2226.
Crooks, A., Castle, C., and Batty, M. 2008. Key challenges in agent-based modelling for geo-spatial simulation.
Computers, Environment and Urban Systems 32(6): 417–430.
Crooks, A. T. and Castle, C. 2012. The integration of agent-based modelling and geographical information for
geospatial simulation. In Agent-Based Models of Geographical Systems, A. J. Heppenstall, A. T. Crooks,
L. M. See, and M. Batty, eds., pp. 219–252. Heidelberg, Germany: Springer-Verlag.
Davidsson, P., Henesey, L., Ramstedt, L., Törnquist, J., and Wernstedt, F. 2005. An analysis of agent-based
approaches to transport logistics. Transportation Research Part C: Emerging Technologies 13(4):
255–271.
Diappi, L. and Bolchi, P. 2008. Smith’s Rent gap theory and local real estate dynamics: A multi-agent model.
Computers, Environment and Urban Systems 32(1): 6–18.
Doglioni, A., Primativo, F., Laucelli, D., Monno, V., Khu, S.-T., and Giustolisi, O. 2009. An integrated model-
ling approach for the assessment of land use change effects on wastewater infrastructures. Environmental
Modelling & Software 24(12): 1522–1528.
Edmonds, B. and Moss, S. 2005. From KISS to KIDS: An ‘anti-simplistic’ modelling approach. In Multi
Agent Based Simulation 2004, Lecture Notes in Artificial Intelligence, P. Davidsson, B. Logan, and K.
Takadama, eds., pp. 130–144. Heidelberg, Germany: Springer-Verlag.
Faison, T. 2006. Event-Based Programming: Taking Events to the Limit. Berkeley, CA: Apress.
Ferber, J. 1999. Multi-Agent Systems: An Introduction to Distributed Artificial Intelligence. Harlow,
U.K.: Addison-Wesley.
Fischer, M. M. and Getis, A. 2010. Handbook of Applied Spatial Analysis: Software Tools, Methods and
Applications. Heidelberg, Germany: Springer-Verlag.
Flake, G. W. 1998. The Computational Beauty of Nature: Computer Explorations of Fractals, Chaos, Complex
Systems, and Adaptation. Chester, NJ: A Bradford Book.
Franklin, S. and Graesser, A. 1996. Is it an agent, or just a program? A taxonomy for autonomous agents. In
Intelligent Agents III: Proceedings of the Third International Workshop on Agent Theories, Architectures,
and Languages (ATAL’96), Budapest, Hungary. Heidelberg, Germany: Springer-Verlag.
Fossett, M. A. 2006a. Ethnic preferences, social distance dynamics, and residential segregation: Theoretical
explorations using simulation analysis. Mathematical Sociology 30(3–4): 185–273.
Fossett, M. A. 2006b. Including preference and social distance dynamics in multi-factor theories of segregation.
Mathematical Sociology 30(3–4): 289–298.
Fossett, M. A. and Waren, W. 2005. Overlooked implications of ethnic preferences for residential segregation
in agent-based models. Urban Studies 42(11): 1893–1917.
Gigerenzer, G., Hertwig, R., and Pachur, T. 2011. Heuristics: The Foundations of Adaptive Behavior. Oxford,
U.K.: Oxford University Press.
Grimm, V., Berger, U., Bastiansen, F., Eliassen, S., Ginot, V., Giske, J., Goss-Custard, J. et al. 2006. A standard
protocol for describing individual-based and agent-based models. Ecological Modelling 198(1–2):
115–126.
Grimm, V., Berger, U., DeAngelis, D. L., Polhill, G., Giske, J., and Railsback, S. F. 2010. The ODD protocol:
A review and first update. Ecological Modelling 221(23): 2760–2768.
Grimm, V. and Railsback, S. F. 2012. Designing, formulating and communicating agent-based models. In
Agent-Based Models of Geographical Systems, A. J. Heppenstall, A. T. Crooks, L. M. See, and M. Batty,
eds., pp. 361–377. Heidelberg, Germany: Springer-Verlag.
Grinblat, Y., Kidron, G. J., Karniel, A., and Benenson, I. 2014. The study of land-use degradation in West Africa
with an ALADYN simulation model. Journal of Arid Environments, forthcoming.
Guo, D. and Mennis, J. 2009. Special issue on spatial data mining—Methods and applications. Computers,
Environment and Urban Systems 33(6): 403–504.
Haase, D., Haase, A., Kabisch, N., Kabisch, S., and Rink, D. 2012. Actors and factors in land-use simulation:
The challenge of urban shrinkage. Environmental Modelling & Software 35: 92–103.
Haken, H. 1983. Synergetics: An Introduction. Berlin, Germany: Springer.
Hammam, Y., Moore, A., and Whigham, P. 2007. The dynamic geometry of geographical vector agents.
Computers, Environment and Urban Systems 31(5): 502–519.
236 GeoComputation

Hatna, E. and Benenson, I. 2011. Geosimulation of income-based urban residential patterns. In Advanced
Geosimulation Models, D. J. Marceau and I. Benenson, eds., pp. 111–125. Hilversum, the Netherlands:
Bentham Science Publishers.
Hatna, E. and Benenson, I. 2012. The Schelling model of ethnic residential dynamics: Beyond the
integrated–segregated dichotomy of patterns. Journal of Artificial Societies and Social Simulation
15(1): 6.
Hayes-Roth, B. 1995. An architecture for adaptive intelligent systems. Artificial Intelligence: Special Issue on
Agents and Interactivity 72: 329–365.
Helbing, D. 2012. Social Self-Organization: Agent-Based Simulations and Experiments to Study Emergent
Social Behavior (Understanding Complex Systems). Heidelberg, Germany: Springer-Verlag.
Heppenstall, A. J., Crooks, A. T., See, L. M., and Batty, M. 2012. Agent-Based Models of Geographical Systems.
Heidelberg, Germany: Springer-Verlag.
Holmgren, J., Davidsson, P., Persson, J. A., and Ramstedt, L. 2012. TAPAS: A multi-agent-based model for
simulation of transport chains. Simulation Modelling Practice and Theory 23: 1–18.
Howe, D. R. 2001. Data Analysis for Data Base Design. Woburn, MA: Butterworth-Heinemann.
Hunt, J. D. and Stefan, K. J. 2007. Tour-based microsimulation of urban commercial movements. Transportation
Research Part B: Methodological 41(9): 981–1013.
Jin, X. and White, R. 2012. An agent-based model of the influence of neighbourhood design on daily trip pat-
terns. Computers, Environment and Urban Systems 36(5): 398–411.
Jordan, R., Birkin, M., and Evans, A. 2012. Agent-based modelling of residential mobility, housing choice and
regeneration. In Agent-Based Models of Geographical Systems, A. J. Heppenstall, A. T. Crooks, L. M.
See, and M. Batty, eds., pp. 511–524. Heidelberg, Germany: Springer-Verlag.
Kelley, H. and Evans, T. 2011. The relative influences of land-owner and landscape heterogeneity in an agent-
based model of land-use. Ecological Economics 70(6): 1075–1087.
Kennedy, W. G. 2012. Modelling human behaviour in agent-based models. In Agent-Based Models of
Geographical Systems, A. J. Heppenstall, A. T. Crooks, L. M. See, and M. Batty, eds., pp. 167–179.
Heidelberg, Germany: Springer-Verlag.
Kidron, G. J., Karnieli, A., and Benenson, I. 2010. Degradation of soil fertility following cycles of cotton-cereal
cultivation in Mali, West Africa: A first approximation to the problem. Soil and Tillage Research 106(2):
254–262.
Konstantinos, A. and Pijanowski, B. C. 2007. Assessing multiagent parcelization performance in the Mabel
simulation model using Monte Carlo replication experiments. Environment and Planning B: Planning
and Design 34: 223–244.
Kresse, W., Danko, D. M., and Fadaie, K. 2012. Standardization. In Springer Handbook of Geographic
Information, W. Kresse, and D. M. Danko, eds., pp. 393–566. Heidelberg, Germany: Springer-Verlag.
Lättilä, L., Hilletofth, P., and Lin, B. 2010. Hybrid simulation models—When, why, how? Expert Systems with
Applications 37(12): 7969–7975.
Lauf, S., Haase, D., Hostert, P., Lakes, T., and Kleinschmit, B. 2012. Uncovering land-use dynamics driven by
human decision-making—A combined model approach using cellular automata and system dynamics.
Environmental Modelling & Software 27–28: 71–82.
Le, Q. B., Park, S. J., and Vlek, P. L. G. 2010. Land Use Dynamic Simulator (LUDAS): A multi-agent system
model for simulating spatio-temporal dynamics of coupled human–landscape system: 2. Scenario-based
application for impact assessment of land-use policies. Ecological Informatics 5(3): 203–221.
Le, Q. B., Seidl, R., and Scholz, R. W. 2012. Feedback loops and types of adaptation in the modelling of land-
use decisions in an agent-based simulation. Environmental Modelling & Software 27–28: 83–96.
Lee, D. B. 1973. A requiem for large scale modeling. Journal of the American Institute of Planners 39(3):
163–178.
Levy, N., Martens, K., and Benenson, I. 2012. Exploring cruising using agent-based and analytical models of
parking. Transportmetrica 9(9): 773–797, doi:10.1080/18128602.2012.664575.
Li, X., Chen, Y., Liu, X., Li, D., and He, J. 2010. Concepts, methodologies, and tools of an integrated geograph-
ical simulation and optimization system. International Journal of Geographical Information Science
25(4): 633–655.
Li, Y., Brimicombe, A. J., and Li, C. 2008. Agent-based services for the validation and calibration of multi-
agent models. Computers, Environment and Urban Systems 32(6): 464–473.
Ligmann-Zielinska, A. and Jankowski, P. 2007. Agent-based models as laboratories for spatially explicit plan-
ning policies. Environment and Planning B 34: 316–335.
Ligmann-Zielinska, A. and Jankowski, P. 2010. Exploring normative scenarios of land use development decisions
with an agent-based simulation laboratory. Computers, Environment and Urban Systems 34(5): 409–423.
Agent-Based Modelling 237

Ligtenberg, A., van Lammeren, R. J. A., Bregt, A. K., and Beulens, A. J. M. 2010. Validation of an agent-based
model for spatial planning: A role-playing approach. Computers, Environment and Urban Systems 34(5):
424–434.
Louie, M. A. and Carley, K. M. 2008. Balancing the criticisms: Validating multi-agent models of social systems.
Simulation Modelling Practice and Theory 16(2): 242–256.
Maerivoet, S. and De Moor, B. 2005. Cellular automata models of road traffic. Physics Reports 419(1):
1–64.
Maes, P. 1995a. Artificial life meets entertainment: Life like autonomous agents. Communications of the ACM
38(11): 108–114.
Maes, P. 1995b. Modeling adaptive autonomous agents. In Artificial Life: An Overview, C. G. Langton, ed.,
pp. 135–263. Cambridge, MA: MIT Press.
Magliocca, N., Safirova, E., McConnell, V., and Walls, M. 2011. An economic agent-based model of
coupled housing and land markets (CHALMS). Computers, Environment and Urban Systems 35(3):
183–191.
Malleson, N. and Birkin, M. 2012. Analysis of crime patterns through the integration of an agent-based model
and a population microsimulation. Computers, Environment and Urban Systems 36(6): 551–561.
Malleson, N., Heppenstall, A., See, L., and Evans, A. 2010. Crime reduction through simulation: An agent-
based model of burglary. Computers, Environment and Urban Systems 34(3): 236–250.
Marceau, D. J. and Benenson, I. 2011. Advanced Geosimulation Models. Hilversum, the Netherlands: Bentham
Science Publishers.
McDonnell, S. and Zellner, M. 2011. Exploring the effectiveness of bus rapid transit a prototype agent-based
model of commuting behavior. Transport Policy 18(6): 825–835.
Monticino, M., Acevedo, M., Callicott, B., Cogdill, T., and Lindquist, C. 2007. Coupled human and natural
systems: A multi-agent-based approach. Environmental Modelling & Software 22(5): 656–663.
Moreno, D., Badariotti, D., and Banos, A. 2009. Integrating morphology in urban simulation through reticu-
lar automata: Schelling’s model of segregation as used with Remus. In Handbook of Theoretical and
Quantitative Geography, F. Bavaud and C. Mager, eds., pp. 261–309. Lausanne, Switzerland: University
of Lausanne.
Moulin, B., Chaker, W., and Gancet, J. 2004. PADI-Simul: An agent-based geosimulation software supporting
the design of geographic spaces. Computers, Environment and Urban Systems 28(4): 387–420.
Ngo, T. N. and See, L. M. 2012. Calibration and validation of agent-based models of land cover change. In
Agent-Based Models of Geographical Systems, A. J. Heppenstall, A. T. Crooks, L. M. See, and M. Batty,
eds., pp. 181–196. Heidelberg, Germany: Springer-Verlag.
Nishinari, K., Sugawara, K., Kazama, T., Schadschneider, A., and Chowdhury, D. 2006. Modelling of self-
driven particles: Foraging ants and pedestrians. Physica A: Statistical Mechanics and Its Applications
372(1): 132–141.
O’Sullivan, D., Millington, J., Perry, G., and Wainwright, J. 2012. Agent-based models—Because they’re worth
it? In Agent-Based Models of Geographical Systems, A. J. Heppenstall, A. T. Crooks, L. M. See, and
M. Batty, eds., pp. 109–123. Heidelberg, Germany: Springer-Verlag.
Parker, D. C. and Filatova, T. 2008. A conceptual design for a bilateral agent-based land market with heteroge-
neous economic agents. Computers, Environment and Urban Systems 32(6): 454–463.
Parry, H. R. and Evans, A. J. 2008. A comparative analysis of parallel processing and super-individual methods
for improving the computational performance of a large individual-based model. Ecological Modelling
214(2–4): 141–152.
Pelechano, N. and Malkawi, A. 2008. Evacuation simulation models: Challenges in modeling high rise building
evacuation with cellular automata approaches. Automation in Construction 17(4): 377–385.
Portugali, J. and Benenson, I. 1997. Human agents between local and global forces in a self-organizing city. In
Self-Organization of Complex Structures: From Individual to Collective Dynamics, F. Schweitzer, ed.,
pp. 537–546. London, U.K.: Gordon & Breach.
Robin, T., Antonini, G., Bierlaire, M., and Cruz, J. 2009. Specification, estimation and validation of a pedes-
trian walking behavior model. Transportation Research Part B: Methodological 43(1): 36–56.
Russell, S. J. and Norvig, P. 1995. Artificial Intelligence: A Modern Approach. Englewood Cliffs, NJ: Prentice
Hall.
Saarloos, D. J. M., Arentze, T. A., Borgers, A. W. J., and Timmermans, H. J. P. 2008. A multi-agent paradigm as
structuring principle for planning support systems. Computers, Environment and Urban Systems 32(1):
29–40.
Sakoda, J. M. 1971. The checkerboard model of social interaction. Journal of Mathematical Sociology 1:
119–132.
238 GeoComputation

Sargent, R. G. 2013. Verification and validation of simulation models. Journal of Simulation 7(1): 12–24.
Schelling, T. C. 1969. Models of segregation. American Economic Review 59(2): 488–493.
Schelling, T. C. 1971. Dynamic models of segregation. Journal of Mathematical Sociology 1(2): 143–186.
Schenk, T. A., Löffler, G., and Rauh, J. 2007. Agent-based simulation of consumer behavior in grocery
shopping on a regional level. Journal of Business Research 60(8): 894–903.
Schreinemachers, P. and Berger, T. 2011. An agent-based simulation model of human–environment interactions
in agricultural systems. Environmental Modelling & Software 26(7): 845–859.
Shoup, D. C. 2006. Cruising for parking. Transport Policy 13(6): 479–486.
Simon, H. A. 1969. The Sciences of the Artificial. Cambridge, MA: MIT Press.
Singh, H., Arter, R., Dodd, L., Langston, P., Lester, E., and Drury, J. 2009. Modelling subgroup behaviour in
crowd dynamics DEM simulation. Applied Mathematical Modelling 33(12): 4408–4423.
Smajgl, A., Brown, D. G., Valbuena, D., and Huigen, M. G. A. 2011. Empirical characterisation of agent behav-
iours in socio-ecological systems. Environmental Modelling & Software 26(7): 837–844.
Suma, Y., Yanagisawa, D., and Nishinari, K. 2012. Anticipation effect in pedestrian dynamics: Modeling and
experiments. Physica A: Statistical Mechanics and Its Applications 391(1–2): 248–263.
Sun, T. and Wang, J. 2007. A traffic cellular automata model based on road network grids and its spatial and tem-
poral resolution’s influences on simulation. Simulation Modelling Practice and Theory 15(7): 864–878.
Teknomo, K. 2006. Application of microscopic pedestrian simulation model. Transportation Research Part F:
Traffic Psychology and Behaviour 9(1): 15–27.
Teodorović, D. 2008. Swarm intelligence systems for transportation engineering: Principles and applications.
Transportation Research Part C: Emerging Technologies 16(6): 651–667.
Thiele, J. C. and Grimm, V. 2010. NetLogo meets R: Linking agent-based models with a toolbox for their
analysis. Environmental Modelling & Software 25(8): 972–974.
Thompson, K. and Reimann, P. 2010. Patterns of use of an agent-based model and a system dynamics model:
The application of patterns of use and the impacts on learning outcomes. Computers & Education 54(2):
392–403.
Tobias, R. and Hofmann, C. 2004. Evaluation of free Java-libraries for social-scientific agent based simulation.
Journal of Artificial Societies and Social Simulation 7(1): 6pp.
Tobler, W. 1970. A computer movie simulating urban growth in the Detroit region. Economic Geography 46(2):
234–240.
Topping, C. J., Høye, T. T., and Olesen, C. R. 2010. Opening the black box—Development, testing and
documentation of a mechanistically rich agent-based model. Ecological Modelling 221(2): 245–255.
Torrens, P. M. 2007. A geographic automata model of residential mobility. Environment and Planning B 34:
200–222.
Torrens, P. M. and Nara, A. 2007. Modeling gentrification dynamics: A hybrid approach. Computers,
Environment and Urban Systems 31(3): 337–361.
Turing, A. M. 1950. Computing machinery and intelligence. Mind 59(236): 433–460.
Tweedale, J., Ichalkaranje, N., Sioutis, C., Jarvis, B., Consoli, A., and Phillips-Wren, G. 2007. Innovations in
multi-agent systems. Journal of Network and Computer Applications 30(3): 1089–1115.
Valbuena, D., Verburg, P. H., and Bregt, A. K. 2008. A method to define a typology for agent-based analysis in
regional land-use research. Agriculture, Ecosystems & Environment 128(1–2): 27–36.
Valbuena, D., Verburg, P. H., Veldkamp, A., Bregt, A. K., and Ligtenberg, A. 2010. Effects of farmers’ deci-
sions on the landscape structure of a Dutch rural region: An agent-based approach. Landscape and Urban
Planning 97(2): 98–110.
Vieira Pak, M. and Brieva, D. C. 2010. Designing and implementing a role-playing game: A tool to explain
factors, decision making and landscape transformation. Environmental Modelling & Software 25(11):
1322–1333.
Vincenot, C. E., Giannino, F., Rietkerk, M., Moriya, K., and Mazzoleni, S. 2011. Theoretical considerations on
the combined use of system dynamics and individual-based modeling in ecology. Ecological Modelling
222(1): 210–218.
von Bertalanffy, L. 1968. General System Theory: Foundations, Development, Applications. NewYork: George
Braziller.
von Neumann, J. 1951. The general and logical theory of automata. In Cerebral Mechanisms in Behavior,
L. A. Jeffress, ed., pp. 1–41. New York: Wiley.
Wei-Guo, S., Yan-Fei, Y., Bing-Hong, W., and Wei-Cheng, F. 2006. Evacuation behaviors at exit in CA model
with force essentials: A comparison with social force model. Physica A: Statistical Mechanics and Its
Applications 371(2): 658–666.
Agent-Based Modelling 239

Wooldridge, M. J. and Jennings, N. R. 1995. Intelligent agents: Theory and practice. Knowledge Engineering
Review 10(2): 115–152.
Wu, B. M., Birkin, M. H., and Rees, P. H. 2008. A spatial microsimulation model with student agents.
Computers, Environment and Urban Systems 32(6): 440–453.
Xi, H. and Son, Y.-J. 2012. Two-level modeling framework for pedestrian route choice and walking behaviors.
Simulation Modelling Practice and Theory 22: 28–46.
Yin, L. and Muller, B. 2007. Residential location and the biophysical environment: Exurban development
agents in a heterogeneous landscape. Environment and Planning B 34: 279–295.
Zhang, J. 2004. Residential segregation in an all-integrationist world. Journal of Economic Behavior and
Organization 54: 533–550.
Zhang, Q., Han, B., and Li, D. 2008. Modeling and simulation of passenger alighting and boarding movement
in Beijing metro stations. Transportation Research Part C: Emerging Technologies 16(5): 635–649.
Zhang, Y. 2012. Theoretical and Practical Frameworks for Agent-Based Systems. Hershey, PA: IGI Global.
10 E-Research and
GeoComputation
Mark Birkin and Nick Malleson

CONTENTS
Abstract........................................................................................................................................... 241
10.1 Introduction......................................................................................................................... 241
10.2 E-Research Capabilities and Infrastructure........................................................................ 242
10.3 National E-Infrastructure for Social Simulation.................................................................244
10.4 E-Research Applications and Uses...................................................................................... 245
10.5 Towards a Decision Support Tool........................................................................................246
10.6 New Computational Dimensions.........................................................................................248
10.7 E-Research and GeoComputation....................................................................................... 251
10.8 From the Aggregate to the Individual................................................................................. 251
10.9 Movement from the Deductive to the Inductive.................................................................. 252
10.10 From the Strategic to the Immediate................................................................................... 255
10.11 Multidimensional Visualisation........................................................................................... 256
10.12 Conclusions.......................................................................................................................... 256
References....................................................................................................................................... 256

ABSTRACT
Recent developments such as grid and cloud computing have led to much more than increased pro-
cessing capability. In the natural and biological sciences, researchers have looked to exploit these
new capabilities by working towards a more collaborative approach to the extraction of value from
large data sets, using experimental methods which can be shared and reproduced. In this chapter,
the features of this new approach to e-Research will be discussed with the use of suitable exam-
ples. It will be argued that similar strategies can be of benefit in a geospatial context. A prototype
e-Research infrastructure will be described and example applications of this infrastructure will be
introduced. The final part of the chapter explores ways in which GeoComputation can be enhanced
and extended with the increasing availability of powerful e-Research tools.

10.1 INTRODUCTION
This book presents an update on progress in the domain of GeoComputation (GC) since the pub-
lication of an earlier collection in 2000. In that time, computer processors have become progres-
sively more powerful, both individually and when combined together (see Adnan et al. (2014)).
This progression has been supported by new paradigms of grid and cloud computing, although
the notion of the grid can easily be traced back to more than a decade ago – see Foster et al.
(2001). However, changes in the computational environment have done much more than simply to
create bigger and faster machines. In this chapter, we will suggest that an umbrella term such as
e-Science or e-Research is a better way to conceptualise the technological components that underpin

241
242 GeoComputation

contemporary computational infrastructures and explain how exciting new approaches to GC are
beginning to emerge at this new research frontier.
E-Science will always be an evocative term for computer scientists in the United Kingdom and
elsewhere, not least for its ability to unlock the vaults of research funding to an unprecedented
degree. The major push to development was in the years 2001–2004, in which UK Research Councils
provided no less than £340 million of e-Science funding to universities and research institutes.
On the back of this funding, a number of impressive applications were produced, most prominently
in the physical sciences. AstroGrid, for example, is a multi-institutional project led by researchers
at the University of Edinburgh aiming to create a ‘Virtual Observatory… (for)… the world’s astro-
nomical data’ (astrogrid.org) which embraces one of the key themes for e-Science of data-driven,
inductive research (Bell et al., 2009). Traditional research is hypothesis-driven, so the argument
goes. Thus, if a researcher wishes to find, say, a black hole in space, then some reasoned argument
for its location is formulated, a telescope is pointed in that direction, and tests are undertaken to
confirm the presence of that object. According to the latest paradigm of data-intensive research
(Bell et al., 2009), it is assumed that if enough data of the right kind can be provided, then the right
hypotheses will follow later. Thus, the challenge now is to map out the whole sky with telescopes
and then to trawl through the data searching for interesting things. It is an argument that is mirrored
in fields such as bioinformatics, where it is argued that computational infrastructures for designing,
sharing and reproducing numerical experiments with bioinformatic data are now the key facilitator
for new knowledge generation and are making classical experiments in wet laboratories increas-
ingly redundant (Stevens et al., 2003; see also Laffan, 2014).
It is useful to note that although geography and spatial analysis have come relatively late to
the e-Science party, nevertheless, a data-intensive approach to spatial analysis has been strongly
advocated by Stan Openshaw (one of the editors of the first edition of this book) in a series of
papers in the late 1980s and 1990s referring to concepts such as the geographical analysis machine
(Openshaw et al., 1988) and geographical explanation machine (Openshaw and Turton, 2001). In the
third part of this chapter, we will discuss examples of the e-Science concept in relation to human
systems and regional science, the environment and physical geography, using examples from Leeds
and elsewhere. The implications of the latest developments, current directions and future possibili-
ties will all be considered in the concluding section.

10.2  E-RESEARCH CAPABILITIES AND INFRASTRUCTURE


A simple view of grid computing is that by linking together processing resources on a huge scale,
it is possible to perform complex transformations on data sets of an ever-increasing size and vari-
ety. The benefits of this can be seen in the cyberspace applications which are now a commonplace
of everyday life – for example, video-sharing sites (YouTube), search engines (Google) and social
media (Facebook) are all reliant on massive processor farms to handle and distribute data at diz-
zying speed (e.g. http://highscalability.com/google-architecture). In this view, the grid concept is
analogous to a power grid in which, whenever an application is plugged in to the grid, the compu-
tational power required to execute the application is automatically and seamlessly available – just
as one would switch on a light or boil a kettle. Although this vision has not yet been fully realised,
some technologies and services are emerging under the name cloud computing that come close to
the pervasive, seamless and invisible computing that grid technologies aspire to (which are dis-
cussed in more detail in Section 10.6). To facilitate the flexible deployment of application codes
across a variety of hardware platforms, grid middleware technologies are being developed. There
is no doubt that this computational resource perspective is important – not least for spatial analysis
and applications of GC including simulation modelling and geovisualisation – as we will show later.
However, to present the grid in such a limited way is largely to misunderstand the significance
of these developments in hardware and software engineering. A far more relevant view is to under-
stand grid computing as the provider of services which underpin a virtual organisation. As the
E-Research and GeoComputation 243

Discover Produce

Publish

FIGURE 10.1  Fundamental components of the e-Research process.

name implies, the virtual organisation comprises a set of activities which can be linked together in
a distributed way with some underlying corporate purpose, which could be to generate commercial
value or deliver effective planning, most likely to pursue a research project or programme in an
academic context. It is not coincidental that AstroGrid characterises itself as a virtual observatory
or the myGrid BioInformatics product suite as a virtual laboratory.
It is largely for this reason that in the remainder of the chapter, we will prefer the more flexible
term e-Research to grid computing (or indeed alternatives such as the cloud which we will come
to later). Through analogy with e-Business, the term e-Research is intended to convey the idea of
emergent information environments in which virtual projects and research collaborations are dis-
tributed flexibly in (hyper-)space.
Some fundamental components of the e-Research process are shown in Figure 10.1. The process
of discovery through research is shown as a cycle, in which the most natural starting point is prob-
ably resource discovery at the top left of the figure. In this phase of the cycle, existing literature and
experimental results might be sifted and evaluated and the goals and objectives of a new investiga-
tion specified. This process would also include the identification and evaluation of existing data
resources. Moving into the next phase of resource production, new computational experiments
are created, executed and enhanced for the purpose of the investigation. Once these are judged to
be successful, or at least novel and interesting, then the results can be (electronically) published.
If managed correctly, these results can then be discovered and form the inputs to new scientific
investigations.
The chain of activities shown in Figure 10.1 is frequently referred to as a model of the research
life cycle (e.g. Microsoft Research, 2009) and is clearly similar to conventional approaches to
research in the social and natural sciences (including both human and physical geography and the
environmental sciences), for example, in the design of social surveys, or in laboratory investigations
of soil cores or hydrological samples. However, a number of features of this model probably bear
further emphasis. It presents a strikingly open view of research. The focus on publication is enor-
mously strong. Ardent supporters of e-Research would probably argue that the power of the virtual
organisation lies even more in its ability to bring together whole networks of scholarly endeav-
our (sometimes referred to as communities of practice) than simply the sharing of computational
resources. Note that the publication stage of the e-Research life cycle provides the context in which
procedures can be annotated, documented and ultimately reproduced. As Brunsdon (2014) argues
convincingly elsewhere in this book, the reproducibility of computational experiments is crucial if
they are to be shared freely and effectively.
Semantic integration of resources is also crucial, as effective categorisation provides the under-
pinning for resource discovery which must become increasingly effective as knowledge proliferates.
This view of the research life cycle does not overly concern itself with data generation. One can
presume that new observational evidence is introduced into the cycle at an appropriate point, but in
general, secondary data are important here, and one gets the idea that data themselves beget data
and that applications could quite legitimately build on sources of information which have them-
selves already been refined through several phases of computational experiments.
244 GeoComputation

Finally, note that in order to promote reproducibility, the e-Research community has adopted the
concept of a workflow as a sequence of computational steps which can be repeated, refined, updated
or perturbed. Further examples of GC workflows will be provided in Section 10.3. Workflows pro-
vide a powerful means not just for preserving and repeating experiments as a foundation for sharing
knowledge but as a means for sharing the very means by which that knowledge was created in the
first place. They are a tangible manifestation of the argument that computation now lies at the heart
of scientific scholarship (cf. Donoho et al., 2011, quoted by Brunsdon, 2014).

10.3 NATIONAL E-INFRASTRUCTURE FOR SOCIAL SIMULATION


In a recent project funded by JISC through its information environment programme, we have set
about articulating the components of a virtual organisation for spatial analysis and geosimulation
and have begun to connect specific software and hardware components for the exercise. In sympathy
with scientific views of a virtual laboratory or virtual observatory, it is argued that data-intensive
research architectures are potentially crucial tools for social research and applied problem-solving.
A slightly simplistic but evocative representation of this is in the idea of a SimCity for Real. Is it
possible to characterise the development of a city not in the abstract as a game but as either a peda-
gogic device which reveals important truths about urban processes and structure or even as a what
if modelling device which is capable of assisting in the impact evaluation of various policies or
planning options? Although the National e-Infrastructure for Social Simulation (NeISS) (see next
paragraph) is perhaps the first project to characterise this class of problems in e-Research terms,
the challenge is by no means completely novel or unique. For example, work on the UrbanSim
project (http://www.urbansim.org) over many years has striven to create a reusable architecture for
urban planning and design, which indeed has many collaborative elements including applications in
64 countries across 6 continents and software contributions from many participating organisations.
The fruits of our own endeavours are characterised as a NeISS (http://www.neiss.org). As in the
model of the research life cycle presented in Figure 10.1, the architecture for NeISS comprises not
just computation but also data, analysis, publication and preservation and ultimately uptake and util-
isation. A series of simulation services provide the foundations of the approach. Indeed, the notion
of social models is right at the heart of the whole exercise, as may already be clear. For example, we
will introduce below (Figure 10.4 in Section 10.5) a use case of this technology which centres on the
relation between congestion charging and transport behaviour in a major city. This modelling tool is
fed by data inputs and outputs from these procedures, which need to be represented and interpreted
through a process that is rendered here as visualisation.
The Taverna scientific workflow management system (Oinn et al., 2004) has been developed by
bioinformaticians as a software suite for designing and implementing data-intensive workflows.
The application of workflows in the NeISS architecture facilitates the linkage of data, models and
visualisations to address specific research challenges and applied problems. As well as technical
integration, some form of social curation of experiments is needed if they are to be shared and
reused. For this reason, wikis, blogs and other mechanisms and platforms were provided through
which researchers can annotate, discuss and combine intelligence about scientific knowledge and
experiments. For bioinformatic applications, a virtual research environment (VRE) called myEx-
periment has been created to facilitate the publication of scientific workflows and the associated
numerical experiments. The more conventional notion of publishing is a reasonable way to describe
this activity in everyday terms – the objective is to make available individual services (data, models,
visualisation) or composites (i.e. workflows) to collaborators seeking to repurpose, extend, verify or
otherwise embellish these research elements.
An exchange of workflows could easily be the preferred method for sharing of resources between
experienced or specialised research users of a simulation e-infrastructure. In everyday experience,
such users would be comfortable with designing, writing or editing software codes, with complex
data manipulation or with addressing difficult questions using statistical packages (e.g. Statistical
E-Research and GeoComputation 245

Package for the Social Sciences [SPSS]), Geographic Information Systems (GIS) (e.g. ArcGIS) or
modelling frameworks (e.g. Repast). For less experienced users, the workflow might be rather less
desirable. Such users might include policymakers, visitors from external academic disciplines or
early career researchers. For any or all members of this diverse group, a much more readily digest-
ible means of access to social simulation technologies would almost certainly promote their uptake
and usage. A major component of the architecture layer of the NeISS is therefore a further level of
integration which provides combinations of services in the form of a portal rather than as individual
workflows. In view of the combination of services which it entails, the portal can perhaps best be
likened to a web-based spatial decision support system, by making maps, models, software and
data available to users as ready-processed intelligence or even knowledge, relating to the underlying
system (cf. Geertman and Stillwell, 2003). In effect, such portals provide the means to configure
applications for the needs of specific user communities, which is effectively what we mean by the
term virtual organisation in our earlier discussion.
Other important activities at this stage of the process are security and access to computation. In
respect of the former, the key challenge is to regulate access to simulation services – this will be
particularly important if access involves issues relating to copyright, ethics or commercial licences
relating to data, software or models. In relation to the latter, a key feature of simulation is resource
intensity in any of the key phases of data processing, model execution or visualisation. The provision
of seamless access to the necessary resources remains an important requirement, even though it is
by no means the sole or dominant rationale for e-Research, as we have been at pains to argue earlier.
The top layer of the NeISS infrastructure brings the important perspective of end users into
the picture, emphasising again the fact that the e-Research perspective is concerned with a loose
coupling of technology components. Thus, users’ interactions with the infrastructure are part of a
bigger life cycle picture in which the needs and experiences of users are a key part of the feedback
mechanism which stimulates the ongoing development and evolution of research capabilities.

10.4  E-RESEARCH APPLICATIONS AND USES


The most important application domain for the NeISS infrastructure is clearly to support academic
research. A key principle to note here is that this constituency is by no means limited to geographers.
Indeed, one might argue that while (some) geographers may themselves have the skills to bring
together data, analysis, models and visualisation as a means to address difficult research ques-
tions, this capability is substantially less likely within other social science disciplines which may
nevertheless share an interest in many similar problems. For example, Malleson and Birkin (2011)
have demonstrated how the infrastructure may be configured to support the integration of micro-
simulation with agent-based modelling approaches to the study of crime. A major benefit of this
approach is that it allows a balance to be struck between the roles of both criminal and victim. Thus,
engagement with new forms of data, including volunteered sources (e.g. OpenStreetMap) as well
as property gazetteers, land use data and high-resolution mapping of buildings, road networks and
accessibility surfaces, provides a rich backdrop for models of criminal opportunity and behaviour.
Teaching is another major application space of interest to the academic community. A simple
portal has been developed for students at the University of Leeds in which small area populations
of the city are projected 30 years into the future, and these simulations are then perturbed under
the influence of various scenarios for changing delivery of health care, housing and transporta-
tion. In effect, therefore, this activity combines a series of workflows as shown in Figure 10.2. In
the baseline, census data feed a microsimulation model (MSM) of small area populations, which
are then projected forward in time through a dynamic model. The dynamic model in turn feeds
a group of sector-specific spatial interaction models (SIMs), each of which is encapsulated as a
range of analytical performance indicators. The outcomes can then be generated as maps and
tables. Different scenarios can be produced by plugging in alternative distributions of supply
(i.e. the provision of health care, housing or transport) into the simulation workflow. Although this
246 GeoComputation

Scenario
Data

Micro Dynamic Spatial


Performance
simulation simulation interaction
indicators
model model

Maps Tables

FIGURE 10.2  An example NeISS workflow.

procedure is conceptually straightforward, the SIMs are reasonably complex. A fuller descrip-
tion is not relevant here, but we can make the general point that these workflows are themselves
typically hierarchical. For example, each of the SIMs is in itself a package of modelling services,
while the Dynamic Simulation Model (DSM) comprises a bundle of nine interlinked simulation
modules (see Birkin et al., 2009, for more discussion).
Illustrations of the teaching portal are shown in Figure 10.3. Here, we show how overcrowding
changes over the 30-year time frame of the simulation, with a detailed trend for one particular census
ward. Harehills is a low social status inner city area to the east of Leeds city centre. The introduc-
tion of a policy of a programme of housing investment in the East and South East Leeds (EASEL)
area allows much greater control to be exerted in relation to the overcrowding problem. Additional
investment in the EASEL region is one of eleven policy scenarios allowed in the simulator where
the policies are for health care, increased number of family doctors, hospital beds or social care for
the elderly; for housing, allowing greenbelt development, regeneration of urban (brownfield) sites,
balanced redevelopment or focused investment in the EASEL area; and for transport, introduction
of a supertram, congestion charge, road pricing or the combination of both a congestion charge and
a supertram. However, in principle, a much wider variety of options could quite easily be included.

10.5  TOWARDS A DECISION SUPPORT TOOL


It takes a relatively small leap of imagination to see how the teaching simulator could be extended as
a decision support tool for policy analysis in the real world. Suppose a planner in a British city wants
to see how much the transport network will deteriorate over the next 5/10/15 years if the population
continues to grow and nothing is done to control traffic problems.
At the beginning of the process (Step 1), baseline demographic data for the city are accessed.
This exploits the first modelling component of the architecture, a population reconstruction model
(PRM) which allows neighbourhood populations to be synthesised from a combination of individual
data and census small area statistics (Birkin et al., 2006). Next (Step 2), traffic demand is generated
by combining the PRM with transport activity data, which could be derived from a specialist source
like the National Travel Survey (Department for Transport, 2011). In the core application of NeISS,
the British Household Panel Survey (BHPS, now Understanding Society) is preferred in view of its
variety. Some relevant topics (amongst many) covered by the BHPS include main means of transport
to work, time spent travelling to work, children attending school outside the local catchment area
and how often respondents walk/swim/play sport or enjoy social and recreational activities such as
eating out and visiting the cinema. By implementing a single linkage mechanism between the PRM
and the BHPS, it is possible to mirror the whole variety of this panel survey at a small area level,
including financial and political attitudes, lifestyle data and social behaviour.
E-Research and GeoComputation 247

(a)

(b)

FIGURE 10.3  The teaching portal. (a) Future variations in a performance indicator (overcrowding) for a
new house building scenario. (b) Future variations in a performance indicator (overcrowding) for the baseline,
business-as-usual.

At Step 3, a SIM is executed to allocate traffic to the local road network, which balances traffic
demand with the distribution of employment destinations throughout the city. At this stage, a single
journey type from home to work is accommodated, and the transport mode is a simple trade-off
between private and public transport. A retail version of the SIM has also been implemented in
NeISS. This simulation model generates key outputs (performance indicators) at a neighbourhood
level and a city level. Major indicators include estimates of the number of road accidents, average
journey times and pollution levels. The workflow architecture now enables these outputs to be visu-
alised (Step 4) through an interface to the MapTube service (Batty et al., 2011). In essence, this com-
ponent simply accepts data about a series of neighbourhoods that it can recognise, displays these
data as a Google Map overlay and allows for certain fundamental mapping operations (definition of
legends and scales, pan, zoom and so on) before returning control to the main part of the simulation
at the request of the user.
248 GeoComputation

In the next stage of the process (Step 5), the most complex piece of modelling technology is intro-
duced in the form of a dynamic simulation of the demographics of the city over the time horizon
of the projections. In the exemplar described here, up to 15 years has been specified, although this
model is now generically available for British cities and regions on a time frame of up to 30 years.
The model components are described elsewhere (Wu et al., 2010). Longer timescales are now also
under consideration as part of a project to model future demand for infrastructures, including but
not limited to transport, albeit at a somewhat more aggregated geographical scale (local authority
districts with typical populations in the order of 100,000 rather than much smaller census wards)
(Birkin and Malleson, 2012).
At this point, two significant features of the workflow process are noteworthy. First, the con-
cept provides a simple structure in which the baseline model actions (i.e. estimate demand, allo-
cate demand, generate indicators, map indicators) can be executed repeatedly on any subsequent
model projection. These projections can be perturbed if necessary, for example, to assume a steady
increase in the rate of trip generation. Second, the workflow components are structured hierarchi-
cally. Thus, within the simulation workflow as it has been described here, individual components
including the PRM, the dynamic simulation model and the MapTube visualisation engine are all
workflows in their own right.
Once simulation results from years 0, 5, 10 and 15 have been generated, they can be published
to an area of the portal (Step 6) so that planners or members of the public can see how much the
local transport system could deteriorate without further intervention or behavioural change. In
an ideal world, members of the general public might even be invited to view these simulations
(Step 7), and some work has been undertaken on the specification of a virtual exhibition space in
which these results could be explored and displayed (Batty and Hudson-Smith, 2007). Perhaps the
local residents could be encouraged to experiment with solutions, for example, would it be a good
idea to leave their cars at home and get the bus to work every other Thursday?! At the moment,
the public interface to NeISS is not fully enabled. However, substantial progress has been made
with a tool that does allow the world at large to express their views about future transport poli-
cies, simulation outputs or any of a variety of social and political questions and items of general
interest. The components of the NeISS infrastructure and their linkage to solve a practical prob-
lem have been illustrated in a demonstrator for the Greater Manchester congestion charge, as
discussed in Section 10.9.
Finally (Step 8), the workflow architecture permits the straightforward re-enactment of entire
sets of simulations that may be regenerated under alternative scenarios relating to external pol-
icy shifts or behavioural change. For example, what happens with reduced traffic demand, for
example, assuming that x% of the population is willing to leave their cars at home on y days per
month?
For the purpose of the demonstrator, we modified a transport component to the simulation using
a customised version of a generalised SIM which has also been applied to migration flows (in the
demographic models) and to retail flows in the NeISS. We defined bespoke indicators for illumi-
nation of the simulation outputs – things like congestion (average travel times), pollution, jour-
ney types (modal split) and road accidents. Examples are shown in Figure 10.4 using model-based
indicators for the base year (2001), projection year (2011) and scenarios (2021). Figure 10.4a and
b demonstrate the spatial flexibility of the models, showing pollution estimates for three different
cities. Figure 10.4d through f show a variety of performance indicators for each city across the time
horizons of the simulation.

10.6  NEW COMPUTATIONAL DIMENSIONS


A vital factor for e-Research, which up to this point has been largely absent from our discussion,
is that of the hardware which is ultimately used to perform the necessary calculations and manage
the required data. In essence, the vision for e-Research is one where computing power and storage
E-Research and GeoComputation

(a) (b) (c)


Base indicators Projection indicators Scenario indicators
160 250 200
140 180
200 160
120 140
100 120
Leeds 150 Leeds 100 Leeds
80
Soton 100 Soton 80 Soton
60
Bristol Bristol 60 Bristol
40 50 40
20 20
0 0 0
Pollution Congestion Trip cost Road Pollution Congestion Trip cost Road Pollution Congestion Trip cost Road
accidents accidents accidents
(d) (e) (f)

FIGURE 10.4  Pollution in (a) Leeds, (b) Bristol and (c) Southampton (Soton). Indicators/externalities for the three cities: (d) baseline, (e) projection and (f) scenario.
249
250 GeoComputation

NeISS portal server Gateway machine

Simulation web
Portal web site
services

Internal model Simulation


data software

Arc1 Grid resources

FIGURE 10.5  The NeISS hardware infrastructure.

are decentralised and essentially hidden from the view of the end user. This approach stems from
the grand vision of grid computing, which is one where people receive computing resources in the
same way that they receive other services such as electricity, gas and water – they have no interest
in where (and how) the computations are performed.
This vision is already being realised in some sectors under the term cloud computing. For exam-
ple, users of Google Docs, which is a service that allows people to create and save documents using
a web browser, have no knowledge of where their documents are actually stored. Similarly, those
using Fusion Tables (another Google service) do not need to know where in the world the comput-
ers that perform any expensive database queries are actually located. Users simply access a website
using their browser as they would any other.
For e-Research, however, progress has been less forthcoming. Individual applications such as
NeISS are able to make use of grid resources, but these still submit processing jobs to predetermined
hardware. As an example of this process, part of the NeISS hardware infrastructure is illustrated
in Figure 10.5. Users access a portal website (which in this instance is located at a different site to
that which executes the models) and use this to log into and configure their simulation(s). Access
to simulations is provided through web services that, in turn, communicate with the grid hardware.
Local capacity at Leeds (the Arc1 Grid resource) is used to actually run the models. Although the
user is able to monitor the status of their simulations and receive results through the portal (via
associated web services) without being aware of where their simulations are being executed, models
will always run on the Leeds grid machine.
However, new cloud services are emerging that could render these institutional grids redun-
dant for e-Research. Amazon Web Services (http://aws.amazon.com/) and Google Computer
Engine (http://cloud.google.com/products/compute-engine.html), amongst others, offer the ability
to instantly obtain individual virtual machines or computer processors as they are required. An
e-Research application could request the resources it needs, perform calculations and then release
them dynamically. Data can be managed in the same way: additional data storage can be resourced
as required and then released afterwards. In this sense, cloud computing offers a valuable means
E-Research and GeoComputation 251

of managing the underlying computer hardware, freeing e-Research applications from being tied
to particular computer clusters. The following section will discuss how these new resources, and
e-Research in general, are changing the way that researchers conduct GC.

10.7  E-RESEARCH AND GEOCOMPUTATION


The early years of GC are largely associated with GIS and the ability to manipulate spatial data,
leading to developments in spatial statistics and multilevel modelling, systems analysis techniques,
mathematical modelling (including SIMs), geodemographics and microsimulation. Developments
in the United Kingdom were certainly stimulated by the Regional Research Laboratory (RRL) pro-
gramme of the 1980s and early 1990s, paralleled by the National Center for Geographic Information
and Analysis (NCGIA) in the United States. The last decade has seen the emergence of a number of
self-supporting laboratories including the Centre for Computational Geography (CCG, Leeds), the
Centre for Advanced Spatial Analysis (CASA, London), the National Centre for GeoComputation
(NCG, Maynooth, Ireland), the Spatial Simulation for Social Sciences (S4, Paris) and the Cities
Centre (Toronto). As noted earlier, these trends are spreading at least as far as China and Australia.
At the same time, a continued progression of computational capacity and e-Research capabilities
has allowed the character of this work to evolve and mature. In this section, we will consider the
major dimensions of this evolution, that is, a progression from the aggregate to the individual and
movement from the inductive to the deductive, from the strategic to the virtual and towards multi-
dimensional visualisation.

10.8  FROM THE AGGREGATE TO THE INDIVIDUAL


Individual-based analytical simulation models have been around for many years. Guy Orcutt’s pio-
neering work in economic microsimulation is now well past its 50th birthday (Baroni and Richiardi,
2007), and geospatial applications of this concept can be traced back nearly as far (Hagerstrand,
1957). Discrete choice models of individual behaviour were well understood and theorised by the
late 1970s (Domencich and MacFadden, 1975), and they were pushed out into the geographical
community by Neil Wrigley amongst others (Wrigley, 1982).
The most significant advances in individual-based modelling can almost certainly be related
to the advent of multi-agent simulations (MASs). In the most iconic of the early applications of
MAS, Thomas Schelling developed his model of housing market behaviour to demonstrate and
build an understanding of the phenomenon of segregation in cities (Schelling, 1969). Josh Epstein
and Rob Axtell took these ideas to a new level in the Sugarscape model, combining notions of
migration with epidemiology, spatial economic performance, crime and conflict and even the idea
of social and biological evolution itself (Epstein and Axtell, 1996). In all of this work, there is a
strong focus on notions such as emergence, self-organisation, path dependence and equifinality
which adds a significant new complex systems twist to conventional spatial economic and demo-
graphic models.
Nevertheless, much of the action in this early work takes place against an abstract and stylised
spatial backcloth – in Schelling’s case, a simple linear city and for Epstein and Axtell, a hardly less
developed grid-based geometry. Typically, this abstraction is justified by a concern for pedagogic
understanding and insight in preference to such unrefined and worldly considerations as predictive
power, accuracy and policy relevance. Although it may be argued that such stylised models depend
on a relatively sophisticated view of software agents, they place few demands on computational
resources and still less on data. Much more interesting, perhaps, are a number of more recent appli-
cations that bridge to more intensive real-world contexts.
For example, in the work of Ferguson et al. (2005), the population of a whole country (Thailand,
with 85 million people) is translated to an epidemic simulation in which cases of Avian bird
flu are capable of growing exponentially and diffusing across an extensive geographical area.
252 GeoComputation

The effectiveness of a variety of prophylactic and social interventions are considered against the
spread of the virus. Interestingly, Ferguson notes, in an accompanying narrative, the exceptional
computational demands of this simulation process – the processing required a computer with 20
times the memory of a typical PC and ‘ten high-powered computers in parallel, but even then the
final runs took more than a month of computer time’ (Ferguson, 2005).
Similar work has been undertaken by the EpiSims group at the Santa Fe Institute and later
the Virginia Biotech Institute (Eubank et al., 2004). This work, which was originally grounded in
transportation research (see Section 10.10), has also been extended to energy and other commodity
markets (Atkins et al., 2007), although typically limited to the urban and regional scale. At the other
extreme, Epstein has more recently attempted to trump the parochial aspirations of national scale
modelling with a global model of billions of agents (Epstein, 2009). Whether such an ambitious
project is capable of yielding valuable results is a matter of conjecture; nevertheless, it is clear that
the implied requirements for both data and computation are substantial, to say the least.
In our own work, we have majored on the link between MSMs and agent-based models (ABMs).
Since MSM is typically firmly grounded in empirical contexts with planning and policy objectives,
this also has the effect of scaling up ABM to a realistic, applied scale. In the work of Rene Jordan,
the adoption in the context of local housing market dynamics (Jordan et al., 2012) leads to a model
in the style of Schelling with a real-world perspective, which has also been attempted elsewhere
(Mahdavi et al., 2007). Hybrid models of MSM and ABM have also been developed in the con-
text of retail markets (Heppenstall et al., 2005), crime simulation (Malleson and Birkin, 2011) and
demographic forecasting (Wu and Birkin, 2012).
Although the movement from the aggregate to the individual is a natural and positive scientific
progression, it is one that has only been realised as new computational resources have been made
available and relies heavily on the availability of even more powerful machines in the future. Only
the most basic individual-level models, such as Thomas Schelling’s early 1D attempts, can be cal-
culated by hand. However, to make use of the most powerful resources, a researcher requires a high
degree of programming skills and often membership to a physical institution such as a university.
Hence, e-Research, which provides a platform for nonexperts to use high-performance computers
and advanced models, is essential for the wider uptake of simulation and GC. The NeISS project,
discussed previously, is an example of such a provision.

10.9  MOVEMENT FROM THE DEDUCTIVE TO THE INDUCTIVE


In recent years, the movement to data-intensive research has become significant in the physical
sciences to the extent that Bell et al. (2009) feel ready to characterise this as a fourth paradigm in
scientific inquiry (following earlier paradigms of experimental science, deductive reasoning and
simulation). Such trends have not been lost on social scientists. In particular, the contribution of
Savage and Burrows (2007) is noteworthy in challenging the dependence on social surveys, which
are limited in both their scope and size – this argument is most specifically directed towards the dis-
cipline of sociology, but clearly, the considerations are more general. Stan Openshaw’s earlier con-
tributions in this regard can be seen as typically forward-looking. For example, early applications
of the geographical analysis machine to the search for cancer clusters (Openshaw et al., 1988) are
a direct example of the data-driven approach to pattern detection. Rather than testing for abnormal
incidence of disease around candidate sites, the whole procedure is inverted so that huge numbers
of possible clusters are tested for significance and potential explanations are reserved for later. The
similarities to AstroGrid are marked, in which the sky is searched for potentially interesting phe-
nomena with no a priori view of where they might be found.
The new revolution in data-intensive science is supported by a plethora of new information
sources about the physical and social world. On the one hand, data which were formerly pro-
tected under commercial licences are now becoming much more freely available, for example, in
the United Kingdom as part of the Open Data initiative. The publication of an array of mapping
E-Research and GeoComputation 253

products by the Ordnance Survey (OS) to the general public, as well as the widespread availabil-
ity of products such as OS MasterMap to the UK academic community, is an excellent illustra-
tion of this trend. In part, this may be stimulated by the appearance of high-quality competing
products on a free-to-use basis, such as Google Maps and Google Earth. A third dimension
to this trend is the advance of mapping products from the bottom up: a couple of years ago,
OpenStreetMap was a rather sporadic patchwork of local networks varying in quality and cover-
age and contributed by a relatively small number of enthusiasts. Now it is possible to go almost
anywhere and find good coverage.
Socio-demographic data have also been impacted by the outburst of new data sources. For many
years, the census has been considered the gold standard of small area demographic data. Now the
census is complemented by sources such as hospital and patient records (particularly valuable as
a source of migration data), pupil records, housing and electoral data and even commercial and
market research sources (e.g. Acxiom’s research opinion poll – see Thompson et al., 2010). So pro-
nounced is this trend that it now seems a distinct possibility that 2011 could see the last traditional
census of the United Kingdom, to be replaced by some more imaginative combination of alternative
sources, an idea that is already established to some degree in countries such as the Netherlands and
Sweden (Ralphs and Tutton, 2011).
In a recent project, we set out to demonstrate the benefits of integrating a wide variety of
data sources for a crime analysis problem. Spatial analysis is commonly used by police forces
around the world to support the understanding of crime patterns and allocation of resources (see
Chainey and Ratcliffe, 2005). There is no doubt that geodemographic classifications can contrib-
ute something to this understanding (e.g. Ashby and Longley, 2005). However, geodemographics
fails to recognise many factors, including local patterns of exposure relating to quality of lighting
or road access, vacancies and derelictions, the layout of the transport infrastructure and the ebb
and flow of daily movements around the city region. In the Geospatial Data for Crime Analysis
(GeoCrimeData, http://geocrimedata.blogspot.co.uk/) project, we combined geodemographics and
census data with land use and building data (OS MasterMap), workplace data (from directory
sources), road network data (from OpenStreetMap) and others, in order to create an extended pack-
age of analytics for the investigation of crime patterns. It was possible to demonstrate the value of
data integration (and the associated analytic developments) to an academic audience (e.g. Birkin
et al., 2011) and also to a community of practitioners where a log of the meeting can be found
at http://geocrimedata.blogspot.co.uk/2011/09/producers-and-consumers-brainstorm.html. For
example, Figure 10.6 presents a selection of secondary data (generated as part of the project) that
illustrates some important geographical features of the physical environment which can have an
influence on the vulnerability of houses to residential burglary. Traditionally, practitioners would
have to estimate these features by hand – see, for example, the manual classification of cul-de-sacs
performed by Johnson and Bowers (2009). These risk factors can be combined to form an overall
risk profile which could be useful for practitioners working at a local level, that is, that of the indi-
vidual road or neighbourhood.
However, genuinely crowdsourced data, in which new information is generated from an online
audience, open perhaps the greatest possibilities for the future generation and analysis of original
information sources. In a recent experiment, we demonstrated the value of the NeISS e-Research
framework which was introduced in Section 10.2. In 2008, following the release of contentious
proposals for a Greater Manchester congestion charge, the group at CASA was approached by BBC
North West to conduct a web survey of attitudes to the new charge. With the assistance of local
TV and radio, it was possible to obtain 16,000 responses to this survey within a 24 h period. The
responses detailed, by postcode of residence, how people felt their choice of travel mode would be
impacted by the changes that were proposed. Online mapping of these data made for an informative
and newsworthy piece. However, by the integration of spatial modelling workflows, it was possible
to go much further. Mode preferences were obtained from the respondents which provided behav-
ioural data for calibrating the transport simulation (Figure 10.7a). We also used responses from the
254 GeoComputation

FIGURE 10.6  Examples of data generated by the GeoCrimeData project. (© Crown Copyright/database
rights 2011. An Ordnance Survey/EDINA supplied service.)

0.5
Model performance
0.45
Fitness (normalised)

0.4
Impact of the charge (stated) 0.35
Not affected by the charge 9% 0.3
No change in behaviour 14% 0.25
0.2
Travel at a different time 14% 0.15
Switch to public transport 17% 0.1
0.05
Work or shop at new location 46% 0
1 2 3 4 5 8 16 17 38 39 79 77 85 86 95 96100
Number of iterations
(a) (b)

(c) (d)

FIGURE 10.7  Calibrating a model of congestion charging using crowdsourced data. (a) Behavioural change
from the congestion charge. (b) Model goodness of fit. (c) Areas affected by the charge. (d) Modal split for
baseline and two scenarios.

survey to define a study area (Figure 10.7b). We then applied a SIM to estimate these behaviour pat-
terns, and we used a genetic algorithm (GA) to calibrate the values of the parameters in the model to
the data supplied online (Figure 10.7c). The GA required tens of thousands of runs of the embedded
modelling equations and was implemented using the Arc1 Grid system at Leeds. After calibration,
the model was able to reproduce the behaviour of the survey respondents. In this way, it was possible
E-Research and GeoComputation 255

to explore alternative what if scenarios relating to the extent and intensity of the congestion charging
proposals (Figure 10.7d). Further discussion of the simulation exercise is provided by Birkin et al.
(2011) in which links to data and model code are also provided – a tangible example of the publica-
tion and reproducibility of geosimulation experiments.

10.10  FROM THE STRATEGIC TO THE IMMEDIATE


In the past, the focus of GC has been on problems which are essentially static in their nature. The
objective has been to find patterns and statistical relationships in the data or to calibrate models as
a basis for predictive forecasting or scenario planning. Increasingly, however, the availability of
distributed computational architectures is placing the emphasis on real-time data generation and
decision-making.
Many of the most interesting developments in this domain are associated with transportation. For
some time now, sensors within cities have been able to detect the speed and movement of traffic.
It is then logical to ask the question of whether such data cannot be used as the basis of real-time
models which are capable of regulating and improving the traffic flow. Indeed, agent-based simula-
tion has been proposed as a means for the self-organisation of traffic lights which ‘could improve
traffic flow by up to 95%’ (Lämmer and Helbing, 2008), not only reducing congestion and unneces-
sary expenditure of time but improving efficiency and reducing the environmental impacts of road
traffic. Real-time data processing and modelling technologies are now increasingly promoted as
practical tools for managing the sustainability of urban traffic networks (The Climate Group, 2008).
In the future, it seems likely that similar technologies will extend to individual vehicles. Is there
any reason, for example, why individual vehicles might not calibrate their own routes based on
previous experience, the current conditions on the road and the objectives of the driver (e.g. to
minimise time or maximise fuel efficiency)? At the present time, this task is beyond the process-
ing capacity of on-board devices, but this will surely change. As an example, it is already the case
that the time it takes to drive between pairs of locations can be monitored and captured by satellite
navigation devices such as TomTom. These drive times are widely used in applications like retail
location planning, and so it is the case that where accessibility has been previously estimated on the
basis of rather unsophisticated models of road linkage and average speed, these estimates can now
be calibrated much more closely to real data.
Real-time data feeds – in association with simulation modelling and scenario planning – will be
more generally applicable to a much broader class of problems involving distributions in space and
time. For example, the air quality in cities is something else that can be remotely sensed, interpo-
lated and displayed, at the very least providing useful information for pedestrians or cyclists in plan-
ning routes or recreational activities. The mappiness project uses mobile telephones and a simple
survey form to capture mood patterns (or levels of happiness) and then attempts to relate this to
the environment and activities in which the respondent is engaged (http://www.mappiness.org.uk/).
This idea therefore starts to link crowdsourcing with real-time data analysis in a rather interesting
way. Mappiness has a user base of only some 50,000 individuals, but given that this is essentially a
survey that has been created for a PhD project, exponential growth in crowd participation in proj-
ects of this type can be anticipated. Another example is CASA’s CityDB project, which has begun
to assemble a real-time dashboard of urban life in six UK cities (http://citydashboard.org/london/).
Again, it seems only a matter of time until this kind of intelligence is augmented with model-based
reasoning for decision-making and scenario planning.
Crowdsourced data are also likely to become an important means of conducting real-time simu-
lation modelling. The variety and scope of volunteered data from the crowd are continuing to esca-
late at an incredible rate. For example, social media applications such as Twitter and Foursquare
are providing information about the movement and activity patterns of individuals on a constant
and global basis. In the city of Leeds alone (with 750,000 people), an experiment to monitor indi-
vidual behaviours through the twitter messaging service has captured over 1 million individual data
256 GeoComputation

items in less than 6 months. Such data have the potential to provide valuable fuel for many GC and
e-Research applications in the immediate future (e.g. Birkin and Malleson, 2011). In particular,
social data that have been sourced from crowds could be used to provide real-time input to social
simulation models to ensure that models remain up to date with current social trends. Real-time data
assimilation in this manner is commonplace in many hard-science fields (e.g. Collins, 2007) but is
yet to make headway in social simulation.

10.11  MULTIDIMENSIONAL VISUALISATION


One further way in which developments in computational processing have facilitated geospatial
applications is in allowing truly 4D representations of the landscape and built environment. High-
resolution images can now be constructed and resolved from multiple perspectives in order to cre-
ate the effect of movement in space and time. Current examples are largely experimental and to
some extent playful. For example, CASA has recently demonstrated a Pigeon Sim, in which users
are encouraged to emulate the local bird population in flying over and through the city’s streets.
The future applications of these technologies to architecture and city planning are potentially
wide-ranging. Indeed, it can be argued that effective visualisation of both real and simulated envi-
ronments, albeit at a more modest scale, is already an important feature of the latest e-Research
applications, as in the spatial modelling workflows of Section 10.2 earlier.
Another important application of visualisation methods is to the problem of viewsheds, in which
the objective is to simulate the visibility of different objectives in a landscape. The Wilderness
Institute at the University of Leeds has pioneered applications of this type to understand the envi-
ronmental impact of wind turbines, particularly within the Scottish countryside. What if simulations
are also constructed to gauge the impact of an expansion of wind farms which are now a feature of
UK energy policy (Carver and Washtell, 2012).

10.12 CONCLUSIONS
Developments in computational technology have given rise to new VREs which look to be influ-
encing the scope of GC in a subtle but persistent way. These new VREs are exploiting compu-
tational power in order to support simulations which are increasingly at microscopic scales and
agent-based but deployed for massive populations of individuals; they can provide access to data
sets which are remotely distributed and capture intelligence from a dazzlingly wide array of ori-
gins, in which the emergence of crowdsourced material from the bottom up is an outstandingly
important trend. They also allow real-time visualisations in space and time which can support the
interpretation of both the data and the simulations, as well as providing a potentially novel research
track in its own right.
While the early VREs were based on grid technologies, a new cloud of data and applications is
emerging. Intelligent mobile devices with the ability to capture and process data are an important
feature of this cloud. The future for GC looks to be an exciting mix of micro-scale models and
simulations, which can be calibrated and validated to massive and increasingly diverse data sets and
whose results can be easily dispersed, shared and visualised.

REFERENCES
Adnan, M., Longley, P., Singleton, A. D., and Turton, I. 2014. Parallel computing in geography. In
GeoComputation, 2nd edn., eds. R.J. Abrahart and L. See, pp. 49–68. Boca Raton, FL: Taylor & Francis
Group.
Ashby, D. and Longley, P. 2005. Geocomputation, geodemographics and resource allocation for local policing.
Transactions in GIS 9:53–72.
Atkins, K., Marathe, A. and Barrett, C. 2007. A computational approach to modeling commodity markets.
Computational Economics 30(2):125–142.
E-Research and GeoComputation 257

Baroni, E. and Richiardi, M. 2007. Orcutt’s vision, 50 years on. Laboratorio R. Revelli, Center for Employment
Studies Working Paper No. 65, Turin, Italy.
Batty, M. and Hudson-Smith, A. 2007. Imagining the recursive city: Explorations in urban simulacra. In
Societies and Cities in the Age of Instant Access, ed. H.J. Miller, pp. 39–55. Dordrecht, the Netherlands:
Springer.
Batty, M., Hudson-Smith, A., Milton, R., and Crooks, A. 2011. Map mashups, Web 2.0 and the GIS revolution.
Annals of GIS 16(1):1–13.
Bell, G., Hey, T., and Szalay, A. 2009. Beyond the data deluge. Science 323:1297–1298.
Birkin, M. and Malleson, N. 2011. Microscopic simulations of complex metropolitan dynamics. Presented at:
Complex City Workshop, 5–6 December, Amsterdam, the Netherlands. http://eprints.ncrm.ac.uk/2051/1/
complex_city_paper[1].pdf.
Birkin, M. and Malleson, N. 2012. Assessing the requirements of regional infrastructure provision in the
UK: A spatial microsimulation approach. In: Proceedings of the 52nd European Congress of the RSAI,
Bratislava, Slovakia.
Birkin, M., Malleson, N., Hudson-Smith, A., Gray, S., and Milton, R. 2011. Calibration of a spatial interaction
model with volunteered geographical information. International Journal of Geographical Information
Science 25(8):1221–1239.
Birkin, M., Turner, A., and Wu, B. 2006. A synthetic demographic model of the UK population: Progress and
problems. Paper presented at: Second International Conference on e-Social Science, Manchester, U.K.
Birkin, M., Wu, B., and Rees, P. 2009. Moses: Dynamic spatial microsimulation with demographic interac-
tions. In New frontiers in Microsimulation Modelling, eds. A. Zaidi, A. Harding, and P. Williamson,
pp. 53–78. Farnham, U.K.: Ashgate.
Brunsdon, C. 2014. Embedded GeoComputation: Publishing text, data and software in a reproducible form.
In GeoComputation, 2nd edn., eds. R.J. Abrahart and L. See, pp. 397–416. Boca Raton, FL: Taylor &
Francis Group.
Carver, S. and Washtell, J. 2012. Real-time visibility analysis and rapid viewshed calculation using a voxel-
based modeling approach. In: Proceedings of the GISrUK Conference, April 2012, Lancaster, U.K. http://
www.geos.ed.ac.uk/~gisteac/proceedingsonline/GISRUK2012/Papers/presentation-48.pdf.
Chainey, S. and Ratcliffe, J. 2005. GIS and Crime Mapping. Chichester, U.K.: John Wiley & Sons.
Collins, M. 2007. Ensembles and probabilities: A new era in the prediction of climate change. Philosophical
Transactions of the Royal Society A 365(1857):1957–1970.
Department for Transport 2011. National Travel Survey 2010. London, U.K.: HMSO.
Domencich, T. and Macfadden, D. 1975. Urban Travel Demand: A Behavioral Analysis. Amsterdam, the
Netherlands: North-Holland.
Donoho, D., Maleki, A., and Shahram, M. 2011. Wavelab. Department of Statistics, Stanford University. http://
www-stat.stanford.edu/software/wavelab/index.html. Accessed on 6 March 2014.
Epstein, J. 2009. Modelling to contain pandemics. Nature 460(7256):687.
Epstein, J. and Axtell, R. 1996. Growing Artificial Societies. New York: The Brookings Institution.
Eubank, S., Guclu, H., Anil Kumar, V., Marathe, M., Srinivasan, A., Toroczkai, Z., and Wang, N. 2004.
Modelling disease outbreaks in realistic urban social networks. Nature 429(6988):180–184.
Ferguson, N. 2005. Making the paper: What would happen if a flu pandemic arose in Asia. http://www.nature.
com/nature/journal/v437/n7056/full/7056xia.html. Accessed on 6 March 2014.
Ferguson, N., Cummings, A., Cauchemez, S., Fraser, C., Riley, S., Meeyai, A., Iamsirithaworn, S., and Burke, D.
2005. Strategies for containing an emerging influenza pandemic in Southeast Asia. Nature 437:209–214.
Foster, I., Kesselman, C., and Tuecke, S. 2001. The anatomy of the grid: Enabling scalable virtual organiza-
tions. International Journal of High Performance Computing Applications 15(3):200–222.
Geertman, S. and Stillwell, J. 2003. Planning Support Systems in Practice. Berlin, Germany: Springer.
Hagerstrand, T. 1957. Migration and area. In Migration in Sweden, eds. D. Hannerberg, T. Hagerstrand, and
B. Odeving, Lund Studies in Geography, Series B, 13, pp. 27–158. Lund, Sweden: C.W.K. Gleerup.
Heppenstall, A., Evans, A., and Birkin, M. 2005. A hybrid multi-agent/spatial interaction model system for
petrol price setting. Transactions in GIS 9(1):35–51.
Johnson, S. and Bowers, K. 2009. Permeability and burglary risk: Are cul-de-sacs safer? Journal of Quantitative
Criminology 26(1):89–111.
Jordan, R., Birkin, M., and Evans, A. 2012. Agent-based modelling of residential mobility, housing choice and
regeneration. In Spatial Agent-Based Models: Principles, Concepts and Applications, eds. A. Heppenstall,
A. Crooks, L. See, and M. Batty, pp. 511–524. Heidelberg, Germany: Springer.
Laffan, S. 2014. GeoComputation: Applications in biology. In GeoComputation, 2nd edn., eds. R.J. Abrahart
and L. See, pp. 125–142. Boca Raton, FL: Taylor & Francis Group.
258 GeoComputation

Lämmer, S. and Helbing, D. 2008. Self-control of traffic lights and vehicle flows in urban road networks. Journal
of Statistical Mechanics: Theory and Experiment P04019. doi:10.1088/1742-5468/2008/04/P04019
Mahdavi, B., O’Sullivan, D., and Davis, P. 2007. An agent-based microsimulation framework for investigat-
ing residential segregation using census data. Presented at: MODSIM 2007 International Congress on
Modelling and Simulation, 10–13 December, Christchurch, New Zealand.
Malleson, N. and Birkin, M. 2011. Towards victim-oriented crime modelling in a social science e-infrastructure.
Philosophical Transactions of the Royal Society A: Mathematical, Physical and Engineering Sciences
369(1949):3353–3371.
Microsoft Research. 2009. Facilitating semantic research, Microsoft Corporation, http://research.microsoft.
com/en-us/news/features/zentity-052009.aspx. Accessed on 6 March 2014.
Oinn, T., Addis, M., Ferris, J., Marvin, D., Senger, M., Greenwood, M., Carver, T. et al. 2004. Taverna: A tool
for the composition and enactment of bioinformatics workflows. Bioinformatics 20(17):3045–3054.
Openshaw, S., Charlton, M., Craft, A., and Birch, J. 1988. Investigation of leukaemia clusters by use of a geo-
graphical analysis machine. The Lancet 331:272–273.
Openshaw, S. and Turton, I. 2001. Using a geographical explanations machine to explore spatial factors relating
to primary school performance. Geographical & Environmental Modelling 5(1):85–101.
Ralphs, M. and Tutton, P. 2011. Beyond 2011: International models for census taking: Current trends and future
developments, Beyond 2011 Project. Titchfield, U.K.: Office for National Statistics.
Savage, M. and Burrows, R. 2007. The coming crisis of empirical sociology. Sociology 41:885–899.
Schelling, T. 1969. Models of segregation. The American Economic Review 59(2):488–493.
Stevens, R., Robinson, A., and Goble, C. 2003. myGrid: Personalized bioinformatics on the information grid.
Bioinformatics, 19(Suppl. 1):i302–i304. London, U.K.: Oxford University Press.
The Climate Group 2008. Smart 2020: Enabling the low carbon economy in the information age, IBM, The
Climate Group. http://www.smart2020.org/_assets/files/02_Smart2020Report.pdf
Thompson, C., Stillwell, J., Clarke, M., and Bradbrook, C. 2010. Understanding and validating Acxiom’s
research opinion poll data, Working Paper 10/06. Leeds, U.K.: School of Geography, University of Leeds.
Wrigley, N. 1982. Quantitative methods: Developments in discrete choice modelling. Progress in Human
Geography 6:547–559.
Wu, B. and Birkin, M. 2012. Agent-based extensions to a spatial microsimulation model of demographic
change. In Spatial Agent-Based Models: Principles, Concepts and Applications, eds. A. Heppenstall,
A. Crooks, L. See, and M. Batty, pp. 347–360. Heidelberg, Germany: Springer.
Wu, B., Birkin, M., and Rees, P. 2010. A dynamic MSM with agent elements for spatial demographic
forecasting. Social Science Computer Review 29(1):145–160.
11 Expert Systems for Planning
and Spatial Decision Support
Demetris Demetriou, Linda See and John Stillwell

CONTENTS
Abstract........................................................................................................................................... 259
11.1 Introduction...........................................................................................................................260
11.2 Conventional Systems versus ES........................................................................................... 261
11.3 When to Use an ES................................................................................................................ 262
11.4 Basic Components of an ES.................................................................................................. 262
11.5 Building an Expert System....................................................................................................264
11.5.1 System Design...........................................................................................................264
11.5.2 System Development................................................................................................. 265
11.5.3 System Evaluation......................................................................................................266
11.6 Relationship between ES and Decision Support Systems.....................................................266
11.7 Integration of GIS with ES.................................................................................................... 267
11.8 Prototype ES for Land Redistribution................................................................................... 271
11.9 Future Directions................................................................................................................... 275
References....................................................................................................................................... 276

ABSTRACT
Expert systems (ES) are a well-established technology for capturing expert knowledge and emu-
lating decision-making, stemming from early research in artificial intelligence. ES represent one
of many approaches in GeoComputation (GC) for solving ill-structured or semi-structured prob-
lems, of which there are many examples in the geospatial domain. This chapter provides a his-
torical and technical overview of ES development including when ES are appropriate methods to
use and what tools are available for their creation. Spatial ES are then considered in more detail,
focussing on their integration with geographic information systems (GIS), and an example is pro-
vided which was developed to support the process of planning for land consolidation. Here, the
ES is one component of a larger integrated planning support system that generates alternative land
redistribution plans under a range of potential scenarios. Using an actual land consolidation proj-
ect in Cyprus as a case study, the results demonstrate that the ES performs very well in relation
to a solution generated manually by land consolidation experts while taking only a fraction of the
time required. Yet while ES technology is becoming more widely used to solve geospatial prob-
lems as reported in the literature, there is still a long way to go before they can be used in more
operational settings such as in local or regional planning offices. Two further requirements are the
need for a user-friendly and efficient ES shell for integrating GIS with ES for any spatial problem
domain and further development of the ES technology itself in terms of knowledge acquisition,
representation and self-learning.

259
260 GeoComputation

11.1 INTRODUCTION
Expert systems (ES), also known as knowledge-based systems or knowledge-based ES, are one of
the earliest and most successful applications of artificial intelligence (AI) (Giarratano and Riley
2005; Padhy 2005), where AI is a branch of computer science concerned with the development of
systems that exhibit human-like intelligence (Russell and Norvig 2010). A key element of AI is the
use of heuristics, that is, procedures that involve rules of thumb, tricks, strategies, simplifications or
any other method that may facilitate the solution to a narrow domain problem. Heuristics are often
used by humans to make decisions or to solve complex problems. ES are therefore an attempt to
loosely emulate the powerful cognitive reasoning and decision-making abilities of a human expert
in implementing a specific task using encapsulated knowledge (Medsker and Liebowitz 1994;
Giarratano and Riley 2005; Negnevitsky 2005). ES are defined as computer systems that are able
to represent and reason with knowledge in order to solve specific problems that would ordinarily
require human expertise (Turban 1995; Jackson 1999). Moreover, ES have been very successful in
modelling real-world decision-making problems which conventional programming techniques are
unable to handle (Giarratano and Riley 2005). Some of the types of tasks that have been addressed
using ES include interpretation, prediction, diagnosis, design, planning, monitoring, control and
repair across many different fields including medicine, engineering and financial analysis (Liao
2005; Tyler 2007).
ES have been shown to provide a number of tangible benefits which include increased productiv-
ity since they can work faster than humans and in hazardous environments; increased quality, reli-
ability and transparency in providing solutions; the ability to capture scarce and expensive expertise
that can be easily transferred to non-experts; flexibility in terms of the range of potential application
domains of ES as long as the knowledge can be harvested; the ability to work with incomplete or
uncertain information; the ability to interpret the decisions made through the explanation facility
which can also serve as a training tool; the ability to integrate ES with other systems such as geo-
graphic information systems (GIS), which has led to the development of intelligent hybrid systems
(Goonatilake and Khebbal 1995; Birkin et al. 1996); and the ability to solve complex unstructured
or semi-structured problems (i.e. difficult problems that do not have a straightforward algorith-
mic solution) that involve single or multiple human decision-making (Turban 1995; Giarratano and
Riley 2005; Negnevitsky 2005; Padhy 2005).
The foundations of ES can be traced back to the 1960s with the development of the first ES
application called DENDRAL (Barr and Feigenbaum 1982). This system was used to determine the
chemical structure of molecules based on a series of rules derived from expert chemists in combi-
nation with mass spectrometry data and formed a framework for future ES development. The next
major advance occurred in 1970 with the development of META-DENDRAL, a data mining tool
for generating new rules relating mass spectrometry data to chemical structure, where these rules
were then fed back into DENDRAL. This system was followed by the construction of MYCIN, a
diagnosis tool for doctors, in particular for infectious diseases (Buchanan and Shortcliff 1985) and
PROSPECTOR (Duda et al. 1977), a system to aid in the discovery of mineral deposits. The 1970s
saw ES development on high-end workstations using languages such as Prolog and Lisp. However,
with a shift to personal computers in the 1980s, accessibility to ES was opened up and many ES
were then built using ES shells, which are specialised tools for the creation of ES. The success of
these systems led to increased commercial interest in ES, with a significant boom in the 1980s to
early 1990s in which the technology spread to a wide range of domains such as management, eco-
nomics, medicine, agriculture, engineering and planning. Reviews undertaken by Durkin (1996)
and Liao (2005) provide an extensive list of application domains.
Despite the positive success of ES, there have also been many critical views of this technology.
For example, Openshaw and Openshaw (1997: p.109) stated that ES are ‘a flawed technology [and]
that the idea [that] lies behind it may be of greater value than the current achievements of the tech-
nology itself’. This critical view is also acknowledged by Keyes (1989) who surveyed a large number
Expert Systems for Planning and Spatial Decision Support 261

of applications and found that only 10% of such systems were actually successful. This disappoint-
ing picture of ES was formulated in the 1990s after the initial interest in these systems began to
wane. An inherent weakness of ES is the fact that they are based on shallow knowledge, that is,
empirical and heuristic knowledge rather than deep knowledge based on the structure, function
and behaviour of objects. The system does not really have an understanding of causes and effects
and can therefore not self-adapt through a higher process of reasoning, reaching what is inherently
its natural cognitive limits (Turban 1995; Giarratano and Riley 2005). In addition, the process of
knowledge acquisition, that is, the gathering and transferring of human knowledge into the system,
is considered to be the major obstacle in building an ES since either the knowledge is not always
readily available or it can be difficult, expensive and time-consuming to extract, which is referred
to as the knowledge acquisition bottleneck (Moore 2000). Furthermore, ES tend to be focussed on
narrow problem domains so their applicability and durability are limited to small and well-defined
real-world problems (Rodriguez-Bachiller and Glasson 2004). Despite these criticisms, ES applica-
tions still continue to appear in the literature, either as separate collections (e.g. Tyler 2007) or in
relevant international journals such as ES with Applications, Knowledge-Based Systems and the
International Journal of Knowledge-Based and Intelligent Engineering Systems. The wide-ranging
applications that appear regularly in these journals clearly indicate that the field of ES is strong
across many disciplines and continues to grow.
ES can be divided into two broad categories, that is, conventional and fuzzy logic–based sys-
tems (Aly and Vrana 2006; Patel et al. 2012). Conventional ES are mainly based on classical or
Boolean logic using symbolic reasoning engines, while a fuzzy ES uses a collection of fuzzy
membership functions and rules, which is capable of handling uncertain or imprecise information
in order to reason about the data. For example, a rule within a fuzzy logic–based ES could be the
following: if x is high and y is low, then z is medium, where x and y are input variables, z is an
output variable and low, medium and high are membership functions defined for variables x, y and
z, respectively.
ES can also be characterised by the scope of the system, for example, real-time ES, web-based
ES, visual ES and spatial ES. The purpose of this chapter is to focus specifically on spatial ES, which
is one approach for problem-solving within the broader set of tools that comprise GeoComputation
(GC). We start by distinguishing between ES and more conventional computer programs and then
provide a checklist for determining when to use an ES for problem-solving. This is followed by an
outline of the basic components of an ES and a description of the basic development methodology
and tools available for building ES. A review of the integration of GIS with ES is then provided fol-
lowed by relevant interoperability mechanisms and a suggestion for an ideal spatial ES framework.
An example of a recently developed ES is then described to illustrate the application of ES to a
geospatial problem ending with an outlook of ES in the future.

11.2  CONVENTIONAL SYSTEMS VERSUS ES


ES differ from other types of computer programs or more conventional systems. Moore (2000,
originally cited in Dantzler and Scheerer, 1993) provides a list of the main differences, which can
be distinguished by the following four criteria: goals, focus, approach and output. The goal of a con-
ventional system is to run algorithms to carry out specific tasks, for example, calculate an equation
or search for an optimal parameter. The goal of an ES, on the other hand, is to encapsulate expert
knowledge and then provide others with access to this knowledge, for example, deciding on where
to mine for minerals. Another difference between conventional systems and ES is their primary
focus, where conventional systems are focussed on data while an ES is focussed on knowledge. The
structures for storing this information therefore require different representations. Relational data-
bases may work well for storing data, but other mechanisms such as object-orientated or logic-based
approaches are better suited to storing knowledge. The approach taken by conventional systems
262 GeoComputation

is largely algorithmic, involving data processing, while an ES uses heuristic reasoning and infer-
ence to solve a problem. Finally, the output from a conventional system is a result, for example,
the answer to an equation or the optimal parameter found within a search space, while an ES can
generate one or more decisions with different degrees of certainty, for example, mine mineral x in
location y with a certainty of z.

11.3  WHEN TO USE AN ES


Determining whether an ES is appropriate for a particular problem is probably the most important
question that should be asked before following such an approach. Medsker and Liebowitz (1994)
have defined 42 guidelines for selecting an appropriate problem for ES, while a simpler framework
has been provided by Giarratano and Riley (2005). The latter authors define five critical questions
that should be asked before embarking upon an ES project. These include the following:
Q1. Can the problem be solved effectively by conventional programming?
If the answer is yes, then an ES is not the best choice since ES are more suitable for situations in
which there is no efficient algorithmic solution. Such cases are ill-structured and semi-structured
problems for which reasoning may offer the only possibility for a good solution.
Q2. Is the problem domain well defined?
It is very important to have a well-bounded problem domain so that it is clear what the system is
expected to know and what its capabilities will be.
Q3. Is the problem-solving knowledge heuristic and uncertain?
The expert knowledge may be a trial-and-error approach rather than a method based on logic and
algorithms. If the problem can be solved simply by logic and algorithms, it is better to use conven-
tional programming and not an ES.
Q4. Is there a need for an ES?
When a process is complex and time-consuming and requires some automation or when transfer-
ence to a non-expert domain is required, then there is likely to be a need for an ES.
Q5. Is there at least one human expert who is willing to cooperate and are experts able to transfer
the necessary knowledge?
There must be an expert who is willing, and preferably enthusiastic, about the project who is able to
explain the knowledge in explicit terms. Not all experts are willing to have their knowledge exam-
ined for faults and then captured in a knowledge base. Even if there are multiple experts willing to
cooperate in the development of an ES, Giarratano and Riley (2005) suggest that it would be wise
to limit the number of experts involved in the development process.

11.4  BASIC COMPONENTS OF AN ES


A typical ES consists of three main components (Figure 11.1): the user interface, which is respon-
sible for the communication between the system and the user; the knowledge base, which contains
the knowledge about a problem domain, and the inference engine, which carries out the reasoning in
order to reach a solution. The user provides the system with facts, which include information regard-
ing the problem in the form of a database, and/or user preferences in the form of answers given to
the questions posed by the system. Other relevant data may be also provided to the system in the
form of databases. The inference engine (or control mechanism), which is the brain of the system,
then links the knowledge base with the supplied facts to draw conclusions. These are then sent back
as expert advice or expertise to the user via the user interface (Schnupp et al. 1989).
In addition to these basic components, an ES may also provide an explanation facility, which is
able to justify the reasoning behind a decision; and a knowledge acquisition facility, which offers
Expert Systems for Planning and Spatial Decision Support 263

User interface

Expert advice

Facts/databases

Inference engine Knowledge base

FIGURE 11.1  The basic components of an ES.

an automatic way for the user to enter knowledge into the system rather than having the knowledge
engineer explicitly code the knowledge. Knowledge (in the knowledge base) may be represented
in several ways including rules (also referred to as production rules), semantic nets, frames, script
logic, conceptual graphs (Turban 1995; Jackson 1999; Giarratano and Riley 2005) and ontologies
(Fonseca et al. 2002; Albrecht et al. 2008; Couclelis 2010). The choice of an appropriate method for
storing this knowledge depends on the nature of the problem concerned (Moore 2000). In particular,
it depends on the pre-existing format of the knowledge, the types of decision that the system will
take and the inference process used in order to make these decisions (Medsker and Liebowitz 1994).
Rules are the most popular representation technique used in ES (Medsker and Liebowitz 1994;
Giarratano and Riley 2005). This is because rules are a very simple form of representation that
is very close to the cognitive behaviour of people when they make decisions in many cases, both
simple and complex. Moreover, rules provide a flexible way of building knowledge. In particular,
knowledge can be built incrementally, that is, rules in a knowledge base can be gradually added
once a new piece of knowledge emerges. In this manner, the performance and the validity of the
system can be continually verified (Giarratano and Riley 2005). Moreover, rules facilitate inference
and explanations, modifications and maintenance as well as the incorporation of uncertainty. Since
complex problem domains may require hundreds or thousands of rules, this may create problems in
both using and maintaining the system.
An ES that uses rules is also called a rule-based or production system. Rules were developed by
Newell and Simon for their model of human cognition (Turban 1995). The basic idea is that knowl-
edge is represented in the form of condition–action pairs, for example,

IF this condition (or premise or antecedent) occurs THEN some action (or results or conclusion, or
consequence) will or should occur.

Inferencing with rules is carried out based on two search mechanisms: forward chaining and back-
ward chaining. Forward chaining is a data- or event-driven approach that is used when data or basic
ideas or events are the starting point. In other words, it is a bottom-up reasoning approach, since it rea-
sons from low-level evidence, that is, facts, to the top-level conclusions which are based on these facts.
Thus, the system does not start with any particular goal(s), but it works through the facts to arrive
at conclusions. This approach is usually used for data analysis and in the design and formulation of
concepts (Medsker and Liebowitz 1994). Moore (2000) notes that this method is appropriate for repre-
senting what if scenarios, which are a common modelling approach in geospatial planning processes.
In contrast, backward chaining is a goal-driven approach which starts with a goal (i.e. a hypotheti-
cal solution) and searches for rules that will provide the evidence to support this goal. This approach
264 GeoComputation

is appropriate when the solution to the problem concerned involves reaching a unique fact/goal
through inferencing. Forward chaining facilitates breadth-first search, which is a graph-searching
algorithm that begins the search at the root node and explores all the neighbouring nodes. Then, for
each of the nearest nodes, it explores their unexplored neighbouring nodes, and so on until it finds
what it is looking for. In contrast, backward chaining is appropriate for a depth-first search, which
is an algorithm for traversing or searching a decision tree. The search starts at the root and explores
as far as possible along each branch before backtracking (Giarratano and Riley 2005).
In a forward chaining system, the process runs as follows: Initially, the inference engine searches
the conditional part of a rule, that is, the left-hand side of a rule, to determine if the input facts are
satisfied. The most popular rule control strategies to increase the efficiency of ES in terms of search-
ing through the rules in each cycle are the algorithms of Markov and Rete (Giarratano and Riley
2005). A rule whose conditional part is satisfied is said to be activated or instantiated and will be
put in a list called an agenda. If there is more than one activated rule, then they form a conflicting
set of rules. However, the system will only select one rule for execution or firing. The process that
the inference engine uses to give priority to a rule, when there are multiple rules that are activated
at once, is called the conflict resolution strategy. Available conflict resolution approaches have been
reviewed by Padhy (2005) and Jackson (1999). The result of firing a rule is the execution of the
then part of the rule, that is, the right-hand side of the rule, which involves some actions or conclu-
sions; this may create new facts. This cycle is repeated until all of the possible information has
been extracted from the facts and the rules, and the system then reaches the final result. A similar
procedure with converse logic is followed for backward chaining.
Another popular and classic 2D AI representation technique is semantic nets (Giarratano and
Riley 2005). A semantic net uses propositional statements that are either true or false. In math-
ematical terms, a semantic net is called a directed graph that consists of nodes representing objects,
concepts or situations. Nodes are connected to each other by arcs called links which represent
relationships. Further to rules and semantic nets, frames have been also employed as a representa-
tion approach in many AI applications. Frames are very useful for representing casual knowledge
because the information is organised by cause and effect, which is in contrast to rules that are
based on unorganised causal knowledge. Frames are capable of representing either generic or spe-
cific knowledge about a narrow subject where some default knowledge already exists. Compared
to semantic nets, frames are able to handle a third dimension by allowing nodes to have structure.

11.5  BUILDING AN EXPERT SYSTEM


Several researchers have proposed various ES development methodologies, which are mainly based
on the classical waterfall model of the software life cycle (Buchanan et al. 1983; Medsker and
Liebowitz 1994; Turban 1995; Giarratano and Riley 2005; Padhy 2005). The linear model, which is
a type of life cycle model, has been used successfully in a number of ES projects (Giarratano and
Riley 2005). This type of model is usually employed in large commercial ES development projects.
For smaller, research-oriented prototype ES, not all the tasks or stages are necessary (Turban 1995;
Giarratano and Riley 2005). Thus, once a problem domain has been defined and analysed, the lin-
ear model can be condensed into the following three main stages: system design, development and
evaluation as described in the following text.

11.5.1  System Design


This stage involves defining the system and then producing a detailed system design via the follow-
ing five tasks: system definition, knowledge acquisition, knowledge representation, knowledge base
building and the definition of the following – facts (or system inputs), control processes and system
outputs. In particular, system definition involves the statement of the aims and the scope of the sys-
tem. Knowledge acquisition is the process of extracting, structuring and organising knowledge from
Expert Systems for Planning and Spatial Decision Support 265

various sources for a given problem domain in order to transfer this knowledge to a computer (Liou
1998). A variety of knowledge acquisition methods have been suggested in the past (Breuker and
Wielinga 1983; Grover 1983; Hart 1986; Kidd 1987; Jackson 1999), which tend to be a combination
of a few basic approaches. From the literature, the following four main knowledge acquisition meth-
ods are suggested: documentation (e.g. manuals, guidelines and legislation), studying past cases
(e.g. past projects) and their subsequent shortcomings, discussing cases with experts via personal
or collaborative interviews and watching/observing experts applying their knowledge to current
problems. The selection of an appropriate knowledge acquisition method depends on many factors,
namely, the problem domain, the availability of knowledge resources and the time/cost constraints.
As noted earlier, a major obstacle in building an ES is the so-called knowledge acquisition bottle-
neck. Researchers have tried to automate the knowledge acquisition process by employing specific
software (Angeli 2010), and a great variety of approaches have been proposed in the past by Gaines
and Boose (1998), Michie (1982), Boose and Bradshaw (1987), Quinlan (1986) and Clement (1992).
Other studies have focussed on employing AI techniques other than ES for knowledge acquisition
such as neural networks (Cooke 1992) and genetic algorithms (Odetayo 1995). More recent research
efforts have focussed on extending the knowledge acquisition techniques and processes to include
a wider array of participants and knowledge sources (Gale 1990; Wu et al. 2003; Chen and Rao
2008). In addition, knowledge discovery techniques, that is, data mining, can be a solution to this
problem (Yang et al. 2012) through automated mechanisms or via the introduction of technologies
for building ontologies (Breuker 2013) or through graphical representation techniques (Dong et al.
2012). Once knowledge acquisition has been carried out, a methodology is then needed to represent
this knowledge in an appropriate manner. Herein lies another crucial problem with ES and AI more
generally (Vamos 1998). Decision trees are a popular and efficient method that are frequently used
for representing the logic of the problem and the reasoning for solving it (Giarratano and Riley
2005). Building the knowledge base involves the transformation of the knowledge (e.g. the decision
trees) into a format that computers can process, for example, rules in the case of rule-based systems.
Facts and other system inputs/outputs are then defined and combined with the control processes,
namely, forward or backward chaining.
Another significant issue that may constitute a problem in designing ES is how to handle poten-
tial errors and uncertainty. Errors in ES have been classified by Giarratano and Riley (2005) into
seven basic categories: ambiguous, incomplete, incorrect, measurement, random, systematic and
reasoning, all of which may contribute to uncertainty. As a result, the final decisions may not be
the best or they may even be wrong. The most popular approaches for dealing with uncertainty are
Bayesian probability and fuzzy set theory. The concept of a fuzzy ES has already been mentioned
previously. Bayesian probability is one interpretation of the concept of probability that belongs to
the category of evidential probabilities. The Bayesian interpretation of probability is in essence an
extension of the branch of mathematical logic known as propositional logic which enables reasoning
with propositions whose truth or falseness is uncertain. To evaluate the probability of a hypothesis,
the Bayesian approach involves defining some prior probabilities, which are then updated in the
light of new, relevant data. Both the fuzzy and Bayesian methods are capable of handling inex-
act reasoning because the facts, data and/or knowledge are not known precisely. In these situa-
tions, an appropriate mechanism for reasoning under uncertainty should be chosen where the aim
is not to reach the best solution but to find a good or acceptable solution within a reasonable time
limit. Successful examples of systems operating under uncertainty are those noted earlier, namely,
MYCIN and PROSPECTOR, which are capable of reaching a solution even if these solutions cannot
be absolutely proven by the facts and the data.

11.5.2  System Development


This stage involves the selection of the appropriate development tools, definition of the implementa-
tion strategy and coding/debugging of the system. The available software for developing ES, which
266 GeoComputation

supports various representation approaches, can be divided into three main categories (Turban
1995; Durkin 1997; Jackson 1999; Giarratano and Riley 2005; Padhy 2005):

1. ES shells: An ES shell is a special purpose tool for developing an ES in an efficient and


user-friendly environment which provides the basic components of an ES (inference
engine, explanation facility, user interface, etc.), but the knowledge base must be built
by the developer. Shells are the most popular tools for developing ES. There are many
commercial (e.g. EXSYS, XpertRule) and open-source (e.g. OpenRules, Euler) ES shells
available.
2. High-level programming languages: In the context of ES, these are usually symbolic
manipulation programming languages designed for AI applications. Examples of such lan-
guages are Lisp, OPS5 and Prolog.
3. Knowledge engineering tools (or environments): These tools involve a language plus asso-
ciated utility programs to facilitate the development, debugging and delivery of knowl-
edge-based application programs. Popular tools in this category include CLIPS and KEE.

It is accepted that the easiest and most efficient way to develop an ES is to use an ES shell followed
by the knowledge engineering tools and then an AI language. Although these specialised ES shells
may be efficient for developing stand-alone applications, there are limitations in terms of flexibility
and communication when developing hybrid systems, for example, combining ES with GIS for
the development of spatial ES. As a result, the use of a conventional programming language for
developing a hybrid system may provide greater development flexibility even though it is a time-
consuming task (Lukasheh et al. 2001). It is worthwhile to note that a new application of ES for
automated computer program generation has recently been commercially introduced. Funded by
a US Air Force grant, the ES-based application called hprcARCHITECT is capable of generating
computer programs for mixed processor technology systems without the need for technical special-
ists (Feldman 2011).

11.5.3  System Evaluation


This stage involves system verification and validation using a case study. Verification is defined
by Adrion et al. (1982) as the demonstration of the consistency, completeness and correctness of
the software, that is, building the system right or correctly (O’Keefe et al. 1987). Validation, on
the other hand, is defined by Adrion et al. (1982) as determination of the correctness of the final
software in terms of user needs and requirements, that is, building the right system (O’Keefe et al.
1987). O’Keefe et al. (1987) emphasise that computer professionals concerned with the development
of the system rarely deal with more than verification and validation, the so-called V&V. However,
there are additional system quality issues such as credibility, assessment and evaluation. Credibility
is defined as the extent to which a system is believable or the user can place credence in the system
(Balci 1987). Assessment is the umbrella of issues that considers the fit between the system and the
user independently of the quality of the decisions made. Evaluation reflects the benefits in terms of
value for money to the users, to the sponsors and generally to the organisation that developed the
system. An empirical evaluation that identifies the characteristics of successful ES is provided by
Metaxiotis et al. (2006).

11.6  RELATIONSHIP BETWEEN ES AND DECISION SUPPORT SYSTEMS


Decision support systems (DSSs) are interactive systems that aid decision-makers in solving semi-
structured and ill-structured decision problems using modelling technology (Gorry and Morton
1971; Turban et al. 2005). As noted by Rodriguez-Bachiller and Glasson (2004), the term DSS
is used frequently in the literature because it has some implicit meaning and is applied to many
Expert Systems for Planning and Spatial Decision Support 267

systems that are not DSS in the truest sense. Spatial decision support systems (SDSS) add an explic-
itly spatial component through the use of geo-referenced data and have evolved in parallel with DSS
since the 1970s (Densham and Goodchild 1989). In many ways, SDSS are like GIS but with a higher
level of analytical and statistical modelling capability (Ayeni 1998), while Birkin et al. (1996) use
the term intelligent GIS to refer to a generation of enhanced GIS with statistical, mathematical
and what if modelling capabilities that are essentially SDSS. There are a plethora of SDSS devel-
oped for a wide spectrum of spatially related applications such as for land-use planning (Matthews
et al. 1999), agriculture (MicroLEIS DSS) (De la Rosa et al. 2004), environmental management
(GReenspace Assessment System [GRAS]) (Pelizaro et al. 2009), transportation (Tarantilis and
Kiranoudis 2002), sustainable development (Banai 2005), water resource management (WinBOS)
(Uran et al. 2003), aquaculture (Nath et al. 2000), forest protection (Vacik and Lexer 2001), solid
water planning (MacDonald 1996) and location planning (Daniel 1992), among others. Collections
of other applications are included in Birkin et al. (1996), Timmermans (1998), Kersten et al. (2000)
and Thomas and Humenik-Sappington (2009).
Planning support systems (PSS) are another type of DSS used in a range of planning contexts,
which date back to the 1950s (Klosterman 2001; Geertman and Stillwell 2002; Batty 2008), and
are designed to support planners in decision-making at various stages in the planning process. In
contrast to SDSS, PSS tend to focus on long-range problems and strategic issues and are often con-
structed specifically for group interaction and discussion with relevant stakeholders (Klosterman
1995; Geertman and Stillwell 2004), for example, public participation GIS and applications of web
GIS. Moreover, Sharifi et al. (2004) note that PSS are focussed on the second phase of the planning
and decision-making framework of Simon (1960), that is, the design phase, whereas SDSS are more
involved in the choice or evaluation phase.
ES differ from these DSSs (and their variants SDSS and PSS) in that they tend to be developed
to solve relatively focussed and narrowly defined problems, while DSSs refer to systems that are for
much more open-ended and interactive problem-solving. It is useful to think of DSS as providing a
problem-solving framework in which ES are embedded. DSSs are used when the solution involves
a mixture of different methods and numerous decision criteria, which are often user-defined; there
is support for individual or group decision-making; the system is user-friendly and flexible and
improves the effectiveness of decisions; the decision-maker has complete control of the process;
access is provided to a variety of data sources; it can be employed as a stand-alone tool; and the need
for support is on an ad hoc basis and not predetermined as with ES (Malczewski 1997; Rodriguez-
Bachiller and Glasson 2004; Turban et al. 2005).
Rodriguez-Bachiller and Glasson (2004) use a series of criteria to distinguish DSS from ES:
objectives, decision-maker, orientation, user and problem area. The objective of ES is to replicate
humans by taking the encapsulated knowledge and applying this to a problem, while the objec-
tive of DSS is much broader, that is, to help humans in problem-solving and decision-making.
The decision-maker in the case of an ES is the actual system, while in DSS, the user of the system
makes the decision based on the outcomes provided by the system. The user of an ES tends to be an
individual, while the stakeholders for a DSS are normally a wider group.

11.7  INTEGRATION OF GIS WITH ES


Spatial decision-making is a complex task and GIS has been the traditional tool for supporting
this process in various geographical domains such as resource and environmental management,
land infrastructure, urban and regional planning and transportation (Sharifi and Rodriguez 2002).
Although GIS has in-built information management and spatial analysis capabilities, only a few GIS
such as IDRISI and ILWIS contain explicit planning and decision-making functions. Many authors
have criticised GIS for being too generic (Batty 2008), unable to incorporate decision-makers’ pref-
erences and evaluate alternative solutions with conflicting criteria and objectives (Laaribi et al.
1996) or to adequately support systematic decision-making processes (Leung 1997; Sharifi and
268 GeoComputation

TABLE 11.1
Examples of Spatial ES Applications from the Literature from Numerous Domains
Spatial ES Applications References
Agriculture Tiangang et al. (2004); Chevalier et al. (2012)
Coastal zone management Fedra and Feoli (1998)
Environmental management Fedra et al. (1991); Geraghty (1993); Kao et al. (1996); Zhu et al. (1998); Booty et al.
(2001); Poch et al. (2004); Rodriguez-Bachiller and Glasson (2004); Booty et al.
(2009); Sikder (2009); Wang and Yu (2011); Herrero-Jiménez (2012)
Fishing Sadly et al. (2009)
Forestry Goldberg et al. (1984); Skidmore et al. (1996); Yang et al. (2006)
Geographic database management Pereira et al. (1982); Filis et al. (2003)
Groundwater modelling Sekkouri and Ouazar (2002); Shams et al. (2005)
Habitat suitability Store and Kangas (2001)
Hazard monitoring/mapping Metternicht (2001); Muthu and Petrou (2007); McCarthy et al. (2008); Genske and
Heinrich (2009); Ghosh and Bhattacharya (2010); Kuroki et al. (2010); Giordano
and Liersch (2012)
Image analysis, classification, Brooks (1983); Choi (2002); Kahya et al. (2008)
interpretation
Invasive species mapping Masocha and Skidmore (2011)
Land consolidation Buis and Vingerhoeds (1996); Cay and Iscan (2011); Demetriou et al. (2011)
Land development Chuenpichai et al. (2002); Lee et al. (2008)
Land suitability analysis Kalogirou (2002)
Land-use planning Crist et al. (2000); Witlox (2005); Wilcke et al. (2006)
Mapping/cartography Ahn and Freeman (1984); Pfefferkorn et al. (1985); Howard (2003); Choi and Usery
(2004); Eldrandaly (2006); Farnood Ahmadi and Ebadi (2010)
Site analysis and selection Jun (2000); Vlado (2002); Eldrandaly et al. (2003); Witlox (2003)
Storm water management Simonovic (1993); Jin et al. (2006)
Terrain analysis Palmer (1984)
Network design Monedero et al. (2008)
Transportation planning Wei et al. (2011); Jia (2000)
Health management Fleming et al. (2007)
Resource management Robinson et al. (1987); Loh and Rykiel (1992)

Rodriguez 2002). For these reasons, the use of ES in solving spatially related problems has focussed
on the integration of ES with GIS, the advantages of which have been recognised by several authors
(Burrough 1986; Robinson et al. 1987; Zhu and Healey 1992; Fischer 1994; Lilburne et al. 1997;
Jun 2000; Moore 2000; Lukasheh et al. 2001; Eldrandaly 2007). The need for integration has also
been pointed out by Leung (1997) who notes that any intelligent spatial-based system should pos-
sess knowledge and an inference mechanism for reaching decisions; ES have therefore remained
a powerful technology to achieve these goals. The integration of GIS and ES has also led to the
development of the broader SDSS and PSS (Geertman and Stillwell 2004), many of which are not
ES in the truest sense, as outlined in the previous section.
Table 11.1 presents a sample of applications from the literature in which ES have been devel-
oped to solve spatial problems, many of which have attempted to integrate GIS with ES. Early
attempts began in the 1980s, which was a period marked by a boom of interest in ES applica-
tions across a wide range of disciplines including the GIS community (Rodriguez-Bachiller and
Glasson 2004). This was followed by a decline of interest in the 1990s because of the ambigu-
ity of their power, especially for solving these kinds of complex spatial problems. Despite this
decline, ES are still a technology that is utilised for solving geospatial problems, and a large
Expert Systems for Planning and Spatial Decision Support 269

number of studies have continued to emerge since the first edition of this book was published in
2000 (see Table 11.1).
Although the research side of spatial ES is clearly strong, these systems have rarely or never been
used in practice (Keyes 1989; Uran and Janssen 2003). Leung (1997) argues that the limited qual-
ity of decision support provided by existing systems is due to the fact that a greater emphasis has
been placed on the technical side of development, that is, software engineering and the integration
of databases with models, rather than on the knowledge engineering side, which involves capturing
human knowledge and turning that into intelligent decision-making. As a result, the outputs may
not be reliable. These inherent limitations of ES suggest the need for improving existing knowledge
acquisition methods towards the direction of self-learning systems (Jackson 1999) and improving
representation methods to better model the complexity of real-world spatial problems. In addition,
most systems focus on the academic environment because they are research prototype products
rather than being developed in a professional environment aimed at satisfying the needs of the users.
Furthermore, the integration approach (of GIS with ES) is not efficient and user-friendly because of
a lack of appropriate tools. Many spatial planning professionals, for example, are not aware of the
prospects of integrating these technologies, that is, GIS and ES, and hence, they prefer conventional
ways of decision-making including customised computer assistance. Similarly, when spatial plan-
ning professionals are aware of these technologies, many believe that the latter could never fully
capture the expertise and deeper, tacit, knowledge used in difficult decision-making situations.
From the earlier literature, four main models of integration have emerged:

1.
Loose coupling: Where the GIS and the ES remain as two separate applications and com-
munication is facilitated through data exchange from one system to another. The advan-
tages of a loose coupling approach include improved synergy, ease of system development
and simplicity of design. However, the main disadvantages are a reduction in the speed of
operation, interoperability issues in data exchange and poor overall system maintainability.
2.
Tight coupling (or close coupling): In this model, the ES works as a shell of the GIS or
vice versa, although both systems are still separate independent modules. The main system
calls the other system and then control is returned back to the main application so there is
only virtual seamless integration. Communication is accomplished by direct parameter or
data passing. This integration model is only practical when a small number of the func-
tions from the second system or module are needed. Advantages of this approach include
improved runtime operation, retention of modularity, flexibility in design and improved
robustness. Disadvantages are increased development and maintenance complexity, redun-
dant parameters and data processing and issues of system validation and verification.
3.
Full integration: Here the ES tools are integrated as a standard GIS operation. Both sys-
tems share data and knowledge representation, offer communication via their dual struc-
ture and allow cooperative reasoning. With this integration model, interactive exchange
between system elements is done in real time and in a seamless way without user interac-
tion. Advantages include robustness and improved problem-solving potential. The system
development and the operation are contained in one common environment, which results
in better design and implementation of the overall application. Moreover, a more uniform
user interface and reduced system maintenance can be achieved. The main disadvantages
are the increased development time and complexity, validation and verification issues and
maintenance compatibility.
4.
System enhancement: This approach represents a type of full integration where any of
the two systems is enhanced with functions from the other system. In other words, the
GIS can be enhanced with rule-based system capabilities or the ES can be enhanced with
GIS operations, where the latter is more difficult than the former. The advantage of this
approach is that the user works in only one environment, but there is added development
complexity with this approach.
270 GeoComputation

The selection of an appropriate system integration model depends on the specific requirements of
the application and the resources available, that is, time, budget and skills of the user. A critical
issue of integration involves improving the interoperability between different systems. A well-
known mechanism for this task is the component object model (COM), which has been adopted
by leading commercial GIS software vendors, for example, ArcGIS provides ArcObjects. Another
example includes ArcAgents (Rozic 2006), which is a tool connecting a popular ES environ-
ment, that is, CLIPS with ArcGIS, and allows the use of the latter within the former. However,
ArcAgents is not available as freeware and it uses Visual Basic for Applications (VBA), which
has now been replaced by VB.NET in ArcGIS. Similarly, Eldrandaly et al. (2003) and Eldrandaly
(2006) have embedded an ES tool within ArcGIS using Visual Rule Studio as a commercial prod-
uct, but this is no longer available on the market. Both cases are examples of tight coupling and
hence use only one-way communication, that is, the main system, or the GIS in this case, cannot
send messages to the ES to retrieve the facts.
While the aforementioned mechanisms support rule-based, object-orientated and procedural
programming paradigms (through their integration), a promising new interoperability approach
that has gained increasing attention in computer and information science is ontologies (Eldrandaly
2007). From a computer science perspective, ontologies represent knowledge as a set of concepts
composed of a vocabulary and a taxonomy within a domain and the relationships between pairs
of these concepts. Ontologies can be utilised to model a domain and support reasoning about enti-
ties. There are currently ontology languages available (e.g. IDEF5, CycL) which are based on the
XML syntax and specific ontology engineering tools to develop ontology-based applications. For
instance, Protégé and OntoCAT are free, open-source integrated ontology editors and knowledge-
based software used by system developers and domain experts for this task. Ontologies are also
appearing as a core topic of research in GIScience (Fonseca et al. 2002; Albrecht et al. 2008;
Couclelis 2010; Smirnov et al. 2011). Recently, Li et al. (2012) developed an ontology-driven
framework and web portal for spatial decision support. In this system, the knowledge is repre-
sented by a set of ontologies that were developed by a large-scale consortium of researchers and
practitioners from various subdomains of the field. The aim is to provide a flexible conceptual
framework for classification and characterisation and is interlinked with other ontologies on the
Semantic Web.
Some authors have attempted to develop specialised ES shells for GIS applications to facilitate
the integration of technologies (Leung and Leung 1993; Vlado 2002). However, there is still a
lack of user-friendly and efficient ES shells embedded in proprietary GIS for fully integrating
GIS with ES for any spatial problem domain. An ideal framework for integrating GIS and ES is
presented in Figure 11.2. This framework involves a full integration between the two technologies
where the GIS is the accommodating platform of a typical ES under a common GUI (graphical
user interface) that, in addition to the knowledge base and the inference engine, includes a knowl-
edge acquisition facility and an explanation facility. In particular, the developer may initially
incorporate knowledge of a specific spatial problem domain through the knowledge acquisition
facility that ideally supports different knowledge representation approaches. Then the system
may permit the automated transformation of knowledge to build the knowledge base which can
be easily edited to add or remove rules or modify other components of the knowledge base. Both
the inference engine and the knowledge base will have direct access to the database and analy-
sis tools of the GIS as well as the facts. Finally, the decisions will be provided in any available
format within the GIS environment and they can be explained through the explanation facility.
The latter element is crucial for spatial planning problems in particular since several stakeholders
are normally involved in these decision-making processes. Although this framework is simple
in concept, it is harder to realise as an application. However, such a framework may drive future
research on spatial ES that could have major benefits for planning processes and other geospatial
problem domains.
Expert Systems for Planning and Spatial Decision Support 271

GIS environment

GIS
DBMS

Expert system

Knowledge base GIS


Facts analysis
Inference engine tools

Explanation Knowledge
facility acquisition facility

Interactive graphical user


interface

Decisions User Problem

FIGURE 11.2  An ideal framework for integrating GIS and ES.

11.8  PROTOTYPE ES FOR LAND REDISTRIBUTION


This section outlines an example of a recently developed ES called LandSpaCES (Demetriou
et al. 2011), which is part of a much larger PSS called LACONISS (LAnd CONsolidation
Integrated Support System for planning and decision-making) (Demetriou 2013). LACONISS
was developed to provide support for implementing land consolidation in Cyprus (Demetriou
et al. 2012c). Land consolidation is the most favoured land management approach applied to
improving fragmented landscapes of distributed agricultural holdings and involves restructur-
ing land tenure and providing appropriate infrastructure such as roads and irrigation networks.
Land consolidation has been applied for many years in many different countries around the world
(FAO 2003, 2008). It includes the process of land reallocation, which can be further subdivided
into two subprocesses of land redistribution and land partitioning. Land redistribution involves
decision-making by combining current legislation, existing land tenure structures, rules of thumb
and the experience of the planners. The output of this process is a preliminary plan that divides
the area to be consolidated into land blocks. Each land block, which is a subarea enclosed by
roads, physical boundaries and/or the external boundary of the consolidation area, contains a
set of points representing the approximate centroids of the new parcels. Each centroid has a set
of attributes including the size of the new parcel, its land value, landownership details and other
relevant information.
Land redistribution is carried out in a semi-computerised manner and hence it is a time-
consuming process in Cyprus. Land redistribution has therefore proven to be an ideal candidate for
the development of a prototype ES embedded within a GIS. Moreover, the land redistribution prob-
lem fulfils the criteria to be solved using an ES based on the five questions posed by Giarratano and
Riley (2005) as outlined in Section 11.3. For example, since land redistribution is a semi-structured
decision-making problem based on legislation, existing land tenure, rules of thumb, heuristics and
experience (Q3), this problem cannot be solved effectively by conventional programming (Q1).
272 GeoComputation

LACONISS
(Land consolidation
integrated support system
for planning and
decision making)

LandSpaCES
LandFragments
(Land spatial LandParcels
(Land fragmentation
consolidation (Land parcelling system)
system)
expert system)

Intelligence phase Design phase I Choice phase I Design II & Choice II


Land fragmentation Land redistribution Land redistribution Land partitioning
module design module evaluation module module
(GIS+MADM) (GIS+ES) (GIS+MADM) (GIS+GAs+MODM)

Alternative land Best land


redistribution redistribution Final land
plans plan reallocation plan

FIGURE 11.3  The operational framework of LACONISS. (From Demetriou, D. et al., LandSpaCES:
A spatial expert system for land consolidation, in Advancing Geoinformation Science for a Changing World,
Geertman, S., Reinhardt, W., and Toppen, F., eds., pp. 249–274, Lecture Notes in Geoinformation and
Cartography, 2011, http://www.springer.com/earth+sciences+and+geography/geographical+information+sys
tems/book/978-3-642-19788-8.)

Land redistribution is a narrow problem domain with well-defined and explicit outcomes because
it is bounded by a large number of legislative provisions and official guidelines which satisfies Q2.
Land reallocation (of which land redistribution is one part) is one of the most complex parts of
land consolidation and can be time-consuming, that is, the process can take months, if not years,
depending on the size of the scheme. For this reason, there is a need for an ES (Q4). Finally, the
system was developed by an expert with considerable experience in the area of land consolidation.
Moreover, other experts were willing to take part in the process of knowledge extraction and build-
ing the knowledge base (Q5).
A schematic of the LACONISS system is provided in Figure 11.3. The ES in this framework is
contained within the dashed rectangular box, which is part of the land redistribution design module
that automatically produces the basis of alternative land redistribution plans as an output to the next
module.
The ES emulates the decision-making ability of the land consolidation experts, where the knowl-
edge is captured as a set of if-then rules, formulated using decision tree analysis where the main
decision tree is illustrated in Figure 11.4.
After disaggregating each of the six land redistribution cases into further decision trees, 74 if-
then rules were extracted to build the knowledge base. An example of a rule from the rule base is
shown in the succeeding text:

IF [The total area OR value of a landowner’s property is less than the minimum completion limits set by
the Committee AND the examined parcel is not “exempted”] THEN [The landowner will not receive
any parcel in the new plan AND he/she will receive as pecuniary compensation the land value of the
property AND the property will be available to be distributed to other landowners]

where the committee refers to the Land Consolidation Committee that sets certain limits as part of
the Cypriot land consolidation legislation. More information about the construction of the actual ES
rule base can be found in Demetriou et al. (2010).
The landowner will not
receive property and his/her
property will be distributed
to other landowners

No

START
Does the property No Has the Allocate to the
of a landowner exceed the Yes
landowner landowner the
min land value and/or area ‘excepted’ ‘excepted’ parcels in
limits set by the parcels? the same location
committee?

Yes
1 Parcel Land redistribution
Yes Has the case 1
Allocate to the
landowner How many
landowner the Only one
‘excepted’ parcels has the
‘excepted’ parcel(s) in parcel
parcels? landowner?
the same location >1 Parcel Land redistribution
case 2

No

2 Parcels Land redistribution


Expert Systems for Planning and Spatial Decision Support

Yes case 3
What is the max no. How many
Has the landowner Up to two
of parcels which may parcels has the
enough land to parcels
receive a landowner?
receive other >2 Parcels Land redistribution
landowner?
parcels? case 4

No
3 Parcels Land redistribution
Up to How many case 5
Land distribution three parcels has the
to the parcels landowner?
landowner finished
>3 Parcels Land redistribution
case 6

FIGURE 11.4  The main decision tree for LandSpaCES design module. (From Demetriou, D. et al., LandSpaCES: A spatial expert system for land consolidation,
in Advancing Geoinformation Science for a Changing World, Geertman, S., Reinhardt, W., and Toppen, F., eds., pp. 249–274, Lecture Notes in Geoinformation and
Cartography, 2011, http://www.springer.com/earth+sciences+and+geography/geographical+information+systems/book/978-3-642-19788-8.)
273
274 GeoComputation

An integral part of automating the generation of alternative land redistribution plans is to


essentially emulate the process of meeting with each landowner so that preferences for parcels
can be specified. The ES incorporates a measure referred to as the parcel priority index (PPI)
whose role is to define two crucial land redistribution issues: the priority of each landowner–par-
cel pair in the whole project in terms of allocating a new parcel to that landowner in a certain
location and the ranking of the location preferences for each landowner’s new parcels. The PPI
also contributes to enhancing equity, transparency and standardisation of the process in terms
of the location and the allocation of the new parcels. More details can be found in Demetriou
et al. (2011).
The basic data that are provided to the ES include a cadastral map of the area and the associ-
ated database tables with information about each parcel, landowner and other ownership details.
To generate alternative land redistribution plans, the user (or the land consolidation planner in this
case) determines which factors should be considered and what weights should be applied to these
factors. The system allows the planner to try out different scenarios, for example, changing the
factors and weights as well as undertaking a sensitivity analysis. The results are a set of database
tables and maps that indicate (1) those landowners taking property in the new plan and those that
do not, (2) the total area and land value of the property that each landowner receives in the new
plan, (3) the number of parcels that each landowner receives in the new plan, (4) the area and land
value of each new parcel and (5) the approximate location (i.e. centroid) of the new parcel(s) owned
by each landowner.
The integration of ES and GIS in LandSpaCES is accomplished via the no-inference engine
theory (NIET). The basic feature of NIET, which was proposed by Hicks (2007), is that the
knowledge base and inference engine are combined into a single unit and not kept separate as in
more conventional ES. This effectively transforms the traditional inference engine into a proce-
dural solution involving a sequence of if-then statements. Thus, the rules are ordered in a logical
sequence during the development stage. Where two or more rules have at least the first condition
of their premise in common, the conflict is resolved by firing the rules with the greater number
of conditions, so that these can be tested first. This conflict resolution strategy is commonly
employed and is the default for most ES products. The prototype ES was built using VBA and
ArcObjects in ArcGIS. Although VBA development has now been phased out of the latest version
of ArcGIS, the ES will be further developed in the future using another programming language
such as Python.
The system was validated through application of the system on a real-world test case taken from
an actual land consolidation project in Cyprus. Details of the test case study area can be found in
Demetriou et al. (2010). Nine performance criteria were used to evaluate the system: number of
landowners who received property (C1), number of common landowners who received property
(C2), number of landowners who received a completed parcel (C3), number of common landowners
who received a completed parcel (C4), total number of new parcels created (C5), number of new
parcels created per owners’ group (C6), number of new parcels received by each landowner (C7),
number of new parcels received by each landowner in common blocks (C8) and number of new
parcels received by each landowner in a common location (C9). These validation criteria cover the
most important decisions made by land consolidation experts in Cyprus regarding land redistribu-
tion plans and were therefore used to evaluate the overall system performance when compared to
the solution generated by the human experts.
The results of the system (Figure 11.5) show very good performance based on these nine criteria
although there is clearly room for improvement in factors C3, C8 and C9. However, this result is
remarkable given that the system currently lacks significant data such as the landowner prefer-
ences, which were emulated using the PPI referred to earlier, the land use and the personal data
from the landowners, for example, residence, age and occupation. Moreover, there would have
been exceptions to the legislation that were applied in this case study but which could not have
Expert Systems for Planning and Spatial Decision Support 275

C9 62.55%
C8 78.65%
C7 86.56%
C6 89.42%
Criterion

C5 99.63%
C4 100%
C3 70.83%
C2 100%
C1 98.04%

0 10 20 30 40 50 60 70 80 90 100
Percentage

FIGURE 11.5  System performance against nine validation criteria. (From Demetriou, D. et al., Environ.
Plann. B, 39(4), 609, 2012b.)

been accounted for by the ES. However, they did not appear to have much effect on the overall
performance of the ES.
Although the system clearly performs well when compared to the human expert, the biggest gain
is in time. This problem would take an expert around 30 days to solve based on a survey carried
out in which 10 land consolidation experts were asked to evaluate this case study. In contrast, the
ES took 6 min to produce a single solution. In addition, it is possible to evaluate many different
alternatives, which would not be possible using the regular manual approach. Finally, as shown in
Demetriou et al. (2012a), the system produced better solutions than that of the human experts due
to its objectivity, although more experimentation and additional case studies are needed to test this
hypothesis further.

11.9  FUTURE DIRECTIONS


Although ES have become an accepted technology in many fields such as medicine and finance,
where the benefits of these systems have been clearly revealed, this is less apparent in the geospatial
sciences and GC. It is clear that the integration of GIS with ES has been used for solving a variety
of spatial problems since the 1980s with a large number of studies appearing since the last edition
of GC in 2000. However, many of the results of these studies have revealed some disappointment
in the solutions. Moreover, there are a number of outstanding issues that have hindered the develop-
ment and transfer of these tools into operational planning practice. For example, there are a number
of different ways to build a spatial ES, but there is currently a lack of appropriate and user-friendly
mechanisms (e.g. ES shells) embedded directly within proprietary GIS that would facilitate the
specification and incorporation of specific problem knowledge into a system. In addition, the lack
of self-learning capabilities in ES is an inherent weakness that limits the ability of ES to adequately
address the dynamic aspects of many real-time spatially relevant problems. Thus, the ability to add
intelligence to both GIS and ES through the addition of other AI techniques to develop self-training
ES, for example, is only possible through completely bespoke solutions. Although very substan-
tial progress in interoperability and shared ontologies (Goodchild 2009) has been made within the
GIScience and GC communities, more attention should be shifted towards developing flexible inte-
gration tools within GIS for embedding AI techniques and capturing knowledge more generally. If
these limitations can be addressed, then the next generation of spatial ES and intelligent GIS may
really help solve more complex and ill-structured spatial problems in the future.
276 GeoComputation

REFERENCES
Adrion, W.R., M.A. Branstad, and J.C. Cherniavsky. 1982. Validation, verification, and testing of computer
software. ACM Computing Surveys 14, 2 (June 1): 159–192.
Ahn, J. and H. Freeman. 1984. Part 3: The merger of computer data and thematic mapping: A program for
automatic name placement. Cartographica: The International Journal for Geographic Information and
Geovisualization 21, 2 (October 1): 101–109.
Albrecht, J., B. Derman, and L. Ramasubramanian. 2008. Geo-ontology tools: The missing link. Transactions
in GIS 12, 4: 409–424.
Aly, S. and I. Vrana. 2006. Toward efficient modeling of fuzzy expert systems: A survey. Agricultural Economics
52, 10: 456–460.
Angeli, C. 2010. Diagnostic expert systems: From expert’s knowledge to real-time systems. In Advanced
Knowledge Based Systems: Model, Applications & Research, eds. P. Sajja and R. Akerkar, Vol. 1,
pp. 50–73. Kolhapur, India: Technomathematics Research Foundation.
Ayeni, B. 1998. The design of spatial decision support systems in urban and regional planning. In Decision
Support Systems in Urban Planning, ed. H. Timmermans, pp. 2–15. London, U.K.: E&FN Spon.
Balci, O. 1987. Credibility assessment of simulation results: The state of the art. In Proceedings of the
Conference on Simulation Methodology and Validation. Orlando, FL: The Society for Computer
Simulation.
Banai, R. 2005. Land resource sustainability for urban development: Spatial decision support system prototype.
Environmental Management 36, 2 (August): 282–296.
Barr, A. and E.A. Feigenbaum. 1982. The Handbook of Artificial Intelligence, Vol. 2. Stanford, CA: HeurisTech
Press.
Batty, M. 2008. Planning support systems: Progress, predictions, and speculations on the shape of things to
come. In Planning Support Systems for Cities and Regions, ed. R.K. Brail, pp. 3–30. Cambridge, MA:
Lincoln Institute of Land Policy.
Birkin, M., G. Clarke, M. Clarke, and A. Wilson. 1996. Intelligent GIS: Location Decisions and Strategic
Planning. Cambridge, U.K.: GeoInformation International.
Boose, J.H. and J.M. Bradshaw. 1987. Expertise transfer and complex problems: Using AQUINAS as a
knowledge-acquisition workbench for knowledge-based systems. International Journal of Man-Machine
Studies 26, 1 (January): 3–28.
Booty, W.G., D.C. Lam, I.W. Wong, and P. Siconolfi. 2001. Design and implementation of an environmental
decision support system. Environmental Modelling & Software 16, 5 (July): 453–458.
Booty, W.G., I. Wong, D. Lam, and O. Resler. 2009. A decision support system for environmental effects moni-
toring. Environmental Modelling & Software 24, 8 (August): 889–900.
Breuker, J. 2013. A cognitive science perspective on knowledge acquisition. International Journal of Human
Computer Studies 71, 2 (February): 177–183.
Breuker, J. and B. Wielinga. 1983. Analysis Techniques for Knowledge-Based Systems. ESPRIT Project P12
Report 1.2. Amsterdam, the Netherlands: University of Amsterdam.
Brooks, R.A. 1983. Model-based three-dimensional interpretations of two-dimensional images. IEEE
Transactions on Pattern Analysis and Machine Intelligence, 2 (March): 140–150.
Buchanan, B.B. and E.H. Shortliffe. 1985. Rule Based Expert Systems: The Mycin Experiments of the Stanford
Heuristic Programming Project. Reading, MA: Addison-Wesley.
Buchanan, B.G., D. Barstow, R. Betchel, J. Bennett, W. Clancey, C. Kulikowski, T.M. Mitchell, and Waterman.
1983. Constructing an expert system. In Building Expert Systems, eds. F. Hayes-Roth and D.B. Lenat,
pp. 127–167. London, U.K.: Addison-Wesley Publishing Company.
Buis, A.M. and R.A. Vingerhoeds. 1996. Knowledge-based systems in the design of a new parcelling.
Knowledge-Based Systems 9, 5 (September): 307–314.
Burrough, P.A. 1986. Principles of Geographical Information Systems for Land Resources Assessment. Oxford
(Oxfordshire), U.K.: Clarendon Press.
Cay, T. and F. Iscan. 2011. Fuzzy expert system for land reallocation in land consolidation. Expert Systems with
Applications 38, 9 (September): 11055–11071.
Chen, C.-H. and Z. Rao. 2008. MRM: A matrix representation and mapping approach for knowledge acquisition.
Knowledge-Based Systems 21, 4 (May): 284–293.
Chevalier, R.F., G. Hoogenboom, R.W. McClendon, and J.O. Paz. 2012. A web-based fuzzy expert system for
frost warnings in horticultural crops. Environmental Modelling & Software 35 (July): 84–91.
Choi, J. 2002. A rule-based expert system using an interactive question-and-answer sequence. http://
www.cobblestoneconcepts.com/ucgis2summer2002/choi/choi.htm. Accessed on 25/5/2008.
Expert Systems for Planning and Spatial Decision Support 277

Choi, J.M. and E.L. Usery. 2004. System integration of GIS and a rule-based expert system for urban mapping.
Photogrammetric Engineering and Remote Sensing 70, 2 (February): 217–224.
Chuenpichai, K., S. Chuenpichai, and A. Somrang. 2002. ESRI professional papers. http://proceedings.esri.
com/library/userconf/proc02/pap0755/p0755.htm. Accessed on 22/05/2008.
Clement, R.P. 1992. Learning expert systems by being corrected. International Journal of Man-Machine
Studies 36, 4 (April): 617–637.
Cooke, N.J. 1992. Eliciting semantic relations for empirically derived networks. International Journal of Man-
Machine Studies 37, 6 (December): 721–750.
Couclelis, H. 2010. Ontologies of geographic information. International Journal of Geographical Information
Science 24, 12: 1785–1809.
Crist, P.J., T.W. Kohley, and J. Oakleaf. 2000. Assessing land-use impacts on biodiversity using an expert sys-
tems tool. Landscape Ecology 15, 1 (January 1): 47–62.
Daniel, L. 1992. SDSS for location planning, of the seat of the pants is out. GeoInfo Systems. http://www.
colorado.edu/geography/gcraft/notes/gisapps/sdss.html. Accessed on 22/05/2008.
Dantzler, H.L. and D.J. Scheerer. 1993. An expert system for describing and predicting the coastal ocean envi-
ronment. John Hopkins APL Technical Digest 14, 2: 181–192.
De la Rosa, D., F. Mayol, E. Diaz-Pereira, M. Fernandez, and D. de la Rosa Jr. 2004. A land evaluation deci-
sion support system (MicroLEIS DSS) for agricultural soil protection: With special reference to the
Mediterranean region. Environmental Modelling & Software 19, 10 (October): 929–942.
Demetriou, D. 2013. LACONISS: A land consolidation integrated support system for planning and decision
making. Journal of Geodesy, Geoinformation and Land Management 2: 119–131.
Demetriou, D., L. See, and J. Stillwell. 2012a. A spatial multi-criteria model for the evaluation of land redistri-
bution plans. ISPRS International Journal of Geo-Information 1, 3 (November 9): 272–293.
Demetriou, D., J. Stillwell, and L. See. 2010. LandSpacES: A design module for land consolidation: Method
and application. Working Paper. Leeds, U.K.: School of Geography, University of Leeds. http://www.
geog.leeds.ac.uk/research/wpapers.
Demetriou, D., J. Stillwell, and L. See. 2011. LandSpaCES: A spatial expert system for land consolidation.
In Advancing Geoinformation Science for a Changing World, eds. S. Geertman, W. Reinhardt, and
F. Toppen, pp. 249–274. Heidelberg and Berlin: Springer Verlag Lecture Notes in Geoinformation and
Cartography. http://www.springer.com/earth+sciences+and+geography/geographical+information+syst
ems/book/978-3-642-19788-8.
Demetriou, D., J. Stillwell, and L. See. 2012b. A framework for developing an integrated planning and decision
support system for land consolidation. Environment and Planning B 39(4): 609–628.
Demetriou, D., J. Stillwell, and L. See. 2012c. Land consolidation in Cyprus: Why is an integrated planning and
decision support system required? Land Use Policy 29, 1 (January): 131–142.
Densham, J. and M.F. Goodchild. 1989. Spatial decision support systems: A research agenda. In Proceedings
GIS/LIS’89, Vol. 2, pp. 707–716. Orlando, FL.
Dong, L., Q. Li, X. Shao, and C. Bai. 2012. Graphical representation technology for knowledge acquisition of
fault diagnosis system. In 2012 International Conference on Computer Science Service System (CSSS),
Nanjing, China, pp. 1627–1630.
Duda, R., P. Hart, N.J. Nilsson, R. Reboh, J. Slocum, and G. Sunderland. 1977. Development of a Computer-
Based Consultant for Mineral Exploration. Menlo Park, CA: Stanford Research Institute.
Durkin, J. 1996. Expert systems: A view of the field. IEEE Expert 11, 2 (April): 56–63.
Durkin, J. 1997. Expert system development tools. In The Handbook of Applied Expert Systems, ed. J. Liebowitz,
pp. 4–26. Boca Raton, FL: Taylor & Francis Group.
Eldrandaly, K. 2007. Expert systems, GIS and spatial decision making: Current practices and new trends. In
Expert Systems Research Trends, ed. A.R. Tyler, pp. 207–228. New York, NY: Nova Publishers.
Eldrandaly, K., N. Eldin, and D. Sui. 2003. A COM-based spatial decision support system for industrial site
selection. Journal of Geographic Information and Decision Analysis 7, 2: 72–92.
Eldrandaly, K.A. 2006. A COM-based expert system for selecting the suitable map projection in ArcGIS.
Expert Systems with Applications 31, 1 (July): 94–100.
FAO. 2003. The Design of Land Consolidation Pilot Projects in Central and Eastern Europe. Rome, Italy: Food
and Agriculture Organization of the United Nations.
FAO. 2008. Opportunities to Mainstream Land Consolidation in Rural Development Programmes of the
European Union. Rome, Italy: FAO.
Farnood Ahmadi, F. and H. Ebadi. 2010. Design and implementation of an expert interface system for integra-
tion of photogrammetric and geographic information systems for intelligent preparation and structuring
of spatial data. Expert Systems with Applications 37, 12 (December): 8006–8013.
278 GeoComputation

Fedra, K. and E. Feoli. 1998. GIS technology and spatial analysis in coastal zone management. EEZ Technology
Ed. 3: 171–179.
Fedra, K., L. Winkelbauer, and V.R. Pantulu. 1991. Expert Systems for Environmental Screening. An Application
in the Lower Mekong Basin. Laxenburg, Austria: International Institute of Applied Systems Analysis.
http://www.ess.co.at/EIA/rr00.html.
Feldman, M. 2011. HPCwire: Startup aims to transform HPC programming. http://www.hpcwire.com/hpc-
wire/2011-08-11/startup_aims_to_transform_hpc_programming.html. Accessed on 25/6/2013.
Filis, I., M. Sabrakos, C. Yialouris, A. Sideridis, and B. Mahaman. 2003. GEDAS: An integrated geographical
expert database system. Expert Systems with Applications 24, 1 (January): 25–34.
Fischer, M.M. 1994. From conventional to knowledge-based geographic information systems. Computers,
Environment and Urban Systems 18, 4 (July): 233–242.
Fleming, G., M. van der Merwe, and G. McFerren. 2007. Fuzzy expert systems and GIS for cholera health risk
prediction in Southern Africa. Environmental Modelling & Software 22, 4 (April): 442–448.
Fonseca, F.T., M.J. Egenhofer, P. Agouris, and G. Câmara. 2002. Using ontologies for integrated geographic
information systems. Transactions in GIS 6, 3: 231–257.
Gaines, B.R. and J.H. Boose. 1998. Knowledge Acquisition for Knowledge-Based Systems. London, U.K:
Academic Press.
Gale, W.A. 1990. A statistical approach to knowledge acquisition for expert systems. Annals of Mathematics
and Artificial Intelligence 2, 1–4 (March 1): 149–163.
Geertman, S. and J. Stillwell. 2002. Planning Support Systems in Practice. New York: Springer.
Geertman, S. and J. Stillwell. 2004. Planning support systems: An inventory of current practice. Computers,
Environment and Urban Systems 28, 4 (July): 291–310.
Genske, D.D. and K. Heinrich. 2009. A knowledge-based fuzzy expert system to analyse degraded terrain.
Expert Systems with Applications 36, 2, Part 1 (March): 2459–2472.
Geraghty, P.J. 1993. Environmental assessment and the application of expert systems: An overview. Journal of
Environmental Management 39, 1 (September): 27–38.
Ghosh, J.K. and D. Bhattacharya. 2010. Knowledge-based landslide susceptibility zonation system. Journal of
Computing in Civil Engineering 24, 4 (July): 325–334.
Giarratano, J.C. and G.D. Riley. 2005. Expert Systems: Principles and Programming. Boston, MA: Thomson.
Giordano, R. and S. Liersch. 2012. A fuzzy GIS-based system to integrate local and technical knowledge in soil
salinity monitoring. Environmental Modelling & Software 36 (October): 49–63.
Goldberg, M., M. Alvo, and G. Karam. 1984. The analysis of LANDSAT imagery using an expert system:
Forestry applications. In Proceedings of AUTOCARTO 6, pp. 493–503. Falls Church, VA: ACSM/
ASPRS.
Goodchild, M.F. 2009. Geographic information systems and science: Today and tomorrow. Annals of GIS 15,
1: 3–9.
Goonatilake, S. and S. Khebbal. 1995. Intelligent Hybrid Systems. Chichester, U.K.: Wiley.
Gorry, G.A. and M. Morton. 1971. A framework for management information systems. Sloan Management
Review 13: 56–70.
Grover, M.D. 1983. A pragmatic knowledge acquisition methodology. In Proceedings of the Eighth
International Joint Conference on Artificial Intelligence, IJCAI’83, Vol. 1, pp. 436–438. San Francisco,
CA: Morgan Kaufmann Publishers Inc. http://dl.acm.org/citation.cfm?id = 1623373.1623478. Accessed
on 22/05/2008.
Hart, A. 1986. Knowledge Acquisition for Expert Systems. New York: Mc Graw-Hill Book Co.
Herrero-Jiménez, C.M. 2012. An expert system for the identification of environmental impact based on a geo-
graphic information system. Expert Systems with Applications 39, 8 (June 15): 6672–6682.
Hicks, R.C. 2007. The no inference engine theory—Performing conflict resolution during development.
Decision Support Systems 43, 2 (March): 435–444.
Howard, H. 2003. Development of an expert system for cartographic design education. PhD, Department of
Geography, University of Kansas, Lawrence, KS.
Jackson, P. 1999. Introduction to Expert Systems. Reading, MA: Addison-Wesley.
Jia, X. 2000. IntelliGIS: Tool for representing and reasoning spatial knowledge. Journal of Computing in Civil
Engineering 14, 1 (January): 51–59.
Jin, Z., F. Sieker, S. Bandermann, and H. Sieker. 2006. Development of a GIS-based expert system for on-
site stormwater management. Water Practice & Technology 1, 1 (June 1). http://www.iwaponline.com/
wpt/001/wpt0010016.htm.
Jun, C. 2000. Design of an intelligent geographic information system for multi-criteria site analysis. Journal of
the Urban and Regional Information Systems Association 12, 3: 5–18.
Expert Systems for Planning and Spatial Decision Support 279

Kahya, O., B. Bayram, and S. Reis. 2008. Land cover classification with an expert system approach using
landsat ETM imagery: A case study of trabzon. Environmental Monitoring and Assessment 160, 1–4
(December 13): 431–438.
Kalogirou, S. 2002. Expert systems and GIS: An application of land suitability evaluation. Computers,
Environment and Urban Systems 26, 2–3 (March): 89–112.
Kao, J., W. Chen, H. Lin, and S. Guo. 1996. Network expert geographic information system for landfill siting.
Journal of Computing in Civil Engineering 10, 4: 307–317.
Kersten, G.E., Z. Mikolajuk, and A.G.O. Yeh. 2000. Decision Support Systems for Sustainable Development: A
Resource Book of Methods and Applications. Ottawa, ON, Canada: Kluwer Academic Publishers.
Keyes, J. 1989. Why expert systems fail. AI Expert 4, 11 (November): 50–53.
Kidd, A.L. 1987. Knowledge acquisition. In Knowledge Acquisition for Expert Systems, ed. A.L. Kidd, pp. 1–16.
Boston, MA: Springer US. http://link.springer.com/chapter/10.1007/978-1-4613-1823-1_1.
Klosterman, R.E. 1995. The appropriateness of geographic information systems for regional planning in the
developing world. Computers, Environment and Urban Systems 19, 1 (January): 1–13.
Klosterman, R.E. 2001. The what if? Planning support system. In Planning Support Systems: Integrating
Geographic Information Systems, Models, and Visualization Tools, eds. R. Brail and R. Klosterman,
pp. 263–284. Redlands, CA: ESRI, Inc.
Kuroki, Y., G.S. Young, and S.E. Haupt. 2010. UAV navigation by an expert system for contaminant mapping
with a genetic algorithm. Expert Systems with Applications 37, 6 (June): 4687–4697.
Laaribi, A., J.J. Chevallier, and J.M. Martel. 1996. A spatial decision aid: A multicriterion evaluation approach.
Computers, Environment and Urban Systems 20, 6 (November): 351–366.
Lee, T.-Z., C.-H. Wu, and H.-H. Wei. 2008. KBSLUA: A knowledge-based system applied in river land use
assessment. Expert Systems with Applications 34, 2 (February): 889–899.
Leung, Y. 1997. Intelligent Spatial Decision Support Systems. Berlin, Germany: Springer Verlag.
Leung, Y. and K.S. Leung. 1993. An intelligent expert system shell for knowledge-based geographical
information systems: 1. The tools. International Journal of Geographical Information Systems 7, 3:
189–199.
Li, N., R. Raskin, M. Goodchild, and K. Janowicz. 2012. An ontology-driven framework and web portal for
spatial decision support. Transactions in GIS 16, 3: 313–329.
Liao, S.-H. 2005. Expert system methodologies and applications—A decade review from 1995 to 2004. Expert
Systems with Applications 28, 1 (January): 93–103.
Lilburne, L., G. Benwell, and R. Buick. 1997. GIS, expert systems, and interoperability. Transactions in GIS
2, 3: 233–243.
Liou, Y. 1998. Expert system technology: Knowledge acquisition. In The Handbook of Applied Expert Systems,
ed. J. Liebowitz, pp. 2-1–2-11. Boca Raton, FL: CRC PressInc.
Loh, D.K. and E.J. Rykiel. 1992. Integrated resource management systems: Coupling expert systems with data-
base management and geographic information systems. Environmental Management 16, 2 (March 1):
167–177.
Lukasheh, A.F., R.L. Droste, and M.A. Warith. 2001. Review of expert system (ES), geographic information
system (GIS), decision support system (DSS), and their applications in landfill design and management.
Waste Management & Research 19, 2 (April 1): 177–185.
MacDonald, M.L. 1996. A multi-attribute spatial decision support system for solid waste planning. Computers,
Environment and Urban Systems 20, 1 (January): 1–17.
Malczewski, J. 1997. Spatial decision support systems, NCGIA core curriculum in GIScience, Posted 6 October
1998. http://www.ncgia.ucsb.edu/giscc/units/u127/u127.html. Accessed on 26/05/2008.
Masocha, M. and A.K. Skidmore. 2011. Integrating conventional classifiers with a GIS expert system to
increase the accuracy of invasive species mapping. International Journal of Applied Earth Observation
and Geoinformation 13, 3 (June): 487–494.
Matthews, K.B., A.R. Sibbald, and S. Craw. 1999. Implementation of a spatial decision support system for rural
land use planning: Integrating geographic information system and environmental models with search and
optimisation algorithms. Computers and Electronics in Agriculture 23, 1 (June): 9–26.
McCarthy, J.D., P.A. Graniero, and S.M. Rozic. 2008. An integrated GIS-expert system framework for live
hazard monitoring and detection. Sensors 8, 2 (February 8): 830–846.
Medsker, L. and J. Liebowitz. 1994. Design and Development of Expert Systems and Neural Networks.
New York: Macmillan.
Metaxiotis, K., D.T. Askounis, and K. Nikolopoulos. 2006. Identifying the characteristics of successful expert
systems: an empirical evaluation. International Journal of Information Technology Management 5,
1 (January): 21–36.
280 GeoComputation

Metternicht, G. 2001. Assessing temporal and spatial changes of salinity using fuzzy logic, remote sensing and
GIS. Foundations of an expert system. Ecological Modelling 144, 2–3 (October 15): 163–179.
Michie, D. 1982. The State of the Art in Machine Learning. London, U.K.: Gordon & Breach.
Monedero, I., C. León, R. Denda, and J. Luque. 2008. Datacab: A geographical-information-system-based
expert system for the design of cable networks. Expert Systems 25, 4: 335–348.
Moore, T. 2000. Geospatial expert systems. In GeoComputation, eds. S. Openshaw and R.J. Abrahart,
pp. 127–159. London, U.K.; New York: Taylor & Francis Group.
Muthu, K. and M. Petrou. 2007. Landslide-hazard mapping using an expert system and a GIS. IEEE Transactions
on Geoscience and Remote Sensing 45, 2 (February): 522–531.
Nath, S.S., J.P. Bolte, L.G. Ross, and J. Aguilar-Manjarrez. 2000. Applications of geographical information sys-
tems (GIS) for spatial decision support in aquaculture. Aquacultural Engineering 23, 1–3 (September):
233–278.
Negnevitsky, M. 2005. Artificial Intelligence: A Guide to Intelligent Systems. Harlow, UK: Pearson Education.
Odetayo, M.O. 1995. Knowledge acquisition and adaptation: A genetic approach. Expert Systems 12, 1: 3–13.
O’Keefe, R.M., O. Balci, and E.P. Smith. 1987. Validating expert system performance. IEEE Expert 2, 4:
81–89.
Openshaw, S. and C. Openshaw. 1997. Artificial Intelligence in Geography. Chichester, U.K.: Wiley.
Padhy, N.P. 2005. Artificial Intelligence and Intelligent Systems. Oxford, U.K.: Oxford University Press.
Palmer, B. 1984. Symbolic feature analysis and expert systems. In Proceedings of the International Symposium
on Spatial Data Handling, pp. 465–478. Zurich, Switzerland.
Patel, M., P. Virparia, and D. Patel. 2012. Web based fuzzy expert system and its applications—A survey.
International Journal of Applied Information Systems 1, 7: 11–15.
Pelizaro, C., T. Arentze, and H. Timmermans. 2009. GRAS: A spatial decision support system for green space
planning. In Planning Support Systems Best Practice and New Methods, eds. S. Geertman and J. Stillwell,
pp. 191–208. Heidelberg and Berlin: Springer Verlag.
Pereira, L., P. Sabatier, and E. de Oliveira. 1982. ORBI—An Expert System for Environmental Resource
Evaluation through Natural Language. Monte de Caparica, Portugal: Departamento de Informatica,
Universidade Nova de Lisboa.
Pfefferkorn, C., Burr, D., Harrison, D., Heckman, B., Oresky, C. and Rothermel, J. 1985. ACES: A Cartographic
Expert System. In Proceedings of the Autocarto-7 Conference, pp. 399–407. Falls Church VA, USA:
American Society of Photogrammetry and American Congress on Surveying and Mapping.
Poch, M., J. Comas, I. Rodríguez-Roda, M. Sànchez-Marrè, and U. Cortés. 2004. Designing and building real
environmental decision support systems. Environmental Modelling & Software 19, 9 (September): 857–873.
Quinlan, J.R. 1986. Induction of decision trees. Machine Learning 1, 1 (March 1): 81–106.
Robinson, V.B., A.U. Frank, and H.A. Karimi. 1987. Expert systems for geographic information systems in
resource management. AI Applications in Natural Resource Management 1, 1: 47–57.
Rodriguez-Bachiller, A. and J. Glasson. 2004. Expert Systems and Geographic Information Systems for Impact
Assessment. London, U.K.: Taylor & Francis Group. http://www.myilibrary.com?id = 5394.
Rozic, S.M. 2006. Representing spatial and domain knowledge within a spatial decision support framework.
MSc. Windsor, Ontario, Canada: University of Windsor.
Russell, S.J. and P. Norvig. 2010. Artificial Intelligence: A Modern Approach. Upper Saddle River, NJ: Prentice
Hall.
Sadly, M., N. Hendiarti, S.I. Sachoemar, and Y. Faisal. 2009. Fishing ground prediction using a knowledge-
based expert system geographical information system model in the south and central Sulawesi Coastal
waters of Indonesia. International Journal of Remote Sensing 30, 24: 6429–6440.
Schnupp, P., C.T. Nguyen Huu, and L.W. Bernhard. 1989. Expert Systems Lab Course. Berlin and Heidelberg:
Springer-Verlag.
Sekkouri, H. and D. Ouazar. 2002. An expert system for data preparation for groundwater modelling. In
Proceedings of the 17th Salt Water Intrusion Meeting. Delft, the Netherlands.
Shams, S., S. Langaas, and P. Bhattacharya. 2005. A prototype spatial expert system for evaluation and mitiga-
tion of groundwater contamination: The case of arsenic in Bangladesh. In Environmental Hydraulics and
Sustainable Water Management, eds. J.H.W. Lee and K.M. Lam, pp. 789–794. Boca Raton, FL: CRC
Press. http://www.crcpress.com/product/isbn/9780415365468.
Sharifi, A.M. and E. Rodriguez. 2002. Design and development of a planning support system for policy for-
mulation in water resources rehabilitation: The case of Alcazar De San Juan District in Aquifer 23, La
Mancha, Spain. Journal of Hydroinformatics 4, 3: 157–175.
Sharifi, A.M., M. Herwijnen, and W. Toorn. 2004. Spatial Decision Support Systems. Enschede, the Netherlands:
ITC, International Institute for Geo-Information Science and Earth Observation.
Expert Systems for Planning and Spatial Decision Support 281

Sikder, I.U. 2009. Knowledge-based spatial decision support systems: An assessment of environmental adapt-
ability of crops. Expert Systems with Applications 36, 3, Part 1 (April): 5341–5347.
Simon, H.A. 1960. The New Science of Management Decision. New York, NY: Harper & Brothers.
Simonovic, S.P. 1993. Flood control management by integrating GIS with expert systems: Winnipeg City
Case Study. In Application of Geographic Information Systems in Hydrology and Water Resources, eds.
H.P. Nachtnebel and K. Kovar. Baden, Austria: IAHS Publication.
Skidmore, A., F. Watford, P. Luckananurug, and P.J. Ryan. 1996. An operational GIS expert system for map-
ping forest soils. Photogrammetric Engineering and Remote Sensing 62, 5: 501–511.
Smirnov, A., A. Kashevnik, N. Shilov, S. Balandin, I. Oliver, and S. Boldyrev. 2011. Development of the
on-the-fly ontology matching model for smart spaces. In 2011 IEEE Consumer Communications and
Networking Conference (CCNC), Las Vegas, NV, pp. 808–809.
Store, R. and J. Kangas. 2001. Integrating spatial multi-criteria evaluation and expert knowledge for GIS-based
habitat suitability modelling. Landscape and Urban Planning 55, 2 (July 10): 79–93.
Tarantilis, C. and C. Kiranoudis. 2002. Using a spatial decision support system for solving the vehicle routing
problem. Information & Management 39, 5 (March): 359–375.
Thomas, C. and N. Humenik-Sappington. 2009. GIS for Decision Support and Public Policy Making. Redlands,
CA: ESRI Press.
Tiangang, L., C. Quangong, R. Jizhou, and W. Yuansu. 2004. A GIS‐based expert system for pastoral agricul-
tural development in Gansu Province, PR China. New Zealand Journal of Agricultural Research 47, 3:
313–325.
Timmermans, H. 1998. Decision Support Systems in Urban Planning. London, U.K.: E&FN Spon.
Turban, E. 1995. Decision Support and Expert Systems: Management Support Systems. Upper Saddle River,
NJ: Prentice Hall.
Turban, E., J.E. Aronson, and T.-P. Liang. 2005. Decision Support Systems and Intelligent Systems. Upper
Saddle River, NJ: Pearson/Prentice Hall.
Tyler, A.R. 2007. Expert Systems Research Trends. New York, NY: Nova Publishers.
Uran, O. and R. Janssen. 2003. Why are spatial decision support systems not used? Some experiences from the
Netherlands. Computers, Environment and Urban Systems 27, 5 (September): 511–526.
Uran, O., P. Rietveld, R. Janssen, and H. Scholten. 2003. Spatial decision support systems: A user’s perspective.
Journal of Geographic Information and Decision Analysis 7, 1: 47–63.
Vacik, H. and M.J. Lexer. 2001. Application of a spatial decision support system in managing the protection
forests of Vienna for sustained yield of water resources. Forest Ecology and Management 143, 1–3 (April
1): 65–76.
Vamos, T. 1998. Knowledge representation. In The Handbook of Applied Expert Systems, ed. J. Liebowitz,
pp. 3-1–3-22. Boca Raton, FL: CRC Press.
Vlado, V. 2002. Knowledge based GIS for site suitability assessment. In Proceedings of the ESRI User
Conference. San Diego, CA: ESRI. http://proceedings.esri.com/library/userconf/proc02/pap1185/p1185.
htm.
Wang, F. and L. Yu. 2011. Research of ecological landscape assessment systems of road based on GIS and ES.
In Innovative Computing and Information Communications in Computer and Information Science, ed.
D. Minli, Vol. 232, pp. 128–135. Berlin, Germany: Springer-Verlag.
Wei, H., Q. Xu, and X. Tang. 2011. A knowledge-based problem solving method in GIS application. Knowledge-
Based Systems 24, 4 (May): 542–553.
Wilcke, D., S. Zacharias, Z. Jin, and F. Sieker. 2006. GIS-based expert system for land use planning as a
contribution to flood mitigation. http://www.kolleg.loel.hsanhalt.de/studiengaenge/mla/mla_fl/conf/pdf/
conf2006/22Wilcke_L.pdf. Accessed on 13/07/2008.
Witlox, F. 2003. MATISSE: A relational expert system for industrial site selection. Expert Systems with
Applications 24, 1 (January): 133–144.
Witlox, F. 2005. Expert systems in land-use planning: An overview. Expert Systems with Applications 29, 2
(August): 437–445.
Wu, W.-Z., W.-X. Zhang, and H.-Z. Li. 2003. Knowledge acquisition in incomplete fuzzy information systems
via the rough set approach. Expert Systems 20, 5: 280–286.
Yang, B., H. Li, and W. Qian. 2012. The cognitive-base knowledge acquisition in expert system. In Technology
for Education and Learning, ed. H. Tan, pp. 73–80. Advances in Intelligent Systems and Computing 136.
Berlin, Germany: Springer. http://link.springer.com/chapter/10.1007/978-3-642-27711-5_11.
Yang, X., A.K. Skidmore, D.R. Melick, Z. Zhou, and J. Xu. 2006. Mapping non-wood forest product (mat-
sutake mushrooms) using logistic regression and a GIS expert system. Ecological Modelling 198, 1–2
(September 15): 208–218.
282 GeoComputation

Zhu, X. and R. Healey. 1992. Towards intelligent spatial decision support: Integrating geographical information
systems and expert systems. In Proceedings GIS/LIS’92, pp. 877–886. San Diego, CA.
Zhu, X., R.G. Healey, and R.J. Aspinall. 1998. A knowledge-based systems approach to design of spatial
decision support systems for environmental management. Environmental Management 22, 1 (January):
35–48.
12 Fuzzy Modelling
Peter F. Fisher and Vincent B. Robinson

CONTENTS
Abstract........................................................................................................................................... 283
12.1 Introduction........................................................................................................................... 283
12.2 Sorites Paradox...................................................................................................................... 285
12.3 Classical Sets and Boolean Logic.......................................................................................... 286
12.4 Fuzzy Set Theory................................................................................................................... 288
12.5 Fuzzy Memberships............................................................................................................... 289
12.5.1 Direct Assignment.....................................................................................................290
12.5.2 Indirect Assignment.................................................................................................. 293
12.5.3 Assignment by Transformation................................................................................. 293
12.6 Fuzzy Logic........................................................................................................................... 295
12.7 Fuzzy Regression................................................................................................................... 299
12.8 Type-2 Fuzzy Sets..................................................................................................................300
12.9 Conclusions............................................................................................................................300
References....................................................................................................................................... 301

ABSTRACT
Fuzzy sets are one of the ways in which modern GeoComputation (GC) can be enriched. Many
geographical phenomena can be considered to be vague or poorly defined. Vagueness has a long
history in the philosophical literature and is considered by some workers to be one of the major
problems for geography in general and geographical information in particular. The semantic
form of vagueness is directly addressed by fuzzy set theory; this chapter discusses how geo-
graphical objects and processes may be modelled by fuzzy sets and shows some novel products
from that modelling. Approaches using direct assignment, indirect assignment and assignment by
transformation are illustrated and discussed. The application of fuzzy logic and fuzzy modelling
is also identified.

12.1 INTRODUCTION
The modelling of fuzzy phenomena in GeoComputation (GC) addresses what has been called
one of the principal philosophical issues for geography: vagueness (Varzi, 2001a,b). Moreover,
exploitation of fuzzy concepts has produced a whole field of soft computing and soft set theo-
ries. The distinction between fuzzy sets and hard, crisp or classical sets, put simply, is one of
opposing qualities. Varzi (2001a) asks questions such as where exactly is the longest river, highest
mountain or largest city on earth, but he considers them to be profoundly unknowable, because
geographical expressions such as river, city and mountain are soft or vague concepts and more
importantly the positions of instances of proper nouns such as Amazon, Tokyo or Everest (if those
are indeed candidates for these geographical superlatives) cannot be unequivocally defined. As
Fisher et al. (2004) point out, the summit of a mountain (the highest point) can be precisely identi-
fied but it is trivial and the term mountain is not synonymous with the term summit. Indeed, the

283
284 GeoComputation

summit location may itself be unknowable because a single mountain massif may have a number
of locations at the same maximum elevation. Fisher (2000) and Robinson (1988), among others,
would add that this is a fundamental and pragmatic issue for geographical information science
(GISci). The issue was referred to by Harvey (1969, p. 216) as individuation, but if an individual
is vague or poorly defined, then the identification is problematic. Such vagueness is, however,
directly addressed by modelling the phenomena as fuzzy sets; Varzi (2001b) relates this question
to philosophical vagueness.
Many geographical objects and concepts referred to in everyday statements and conversations
are vague. Yet, through necessity, people are able to accommodate such matters in their everyday
lives since having to do so forms an essential part of residing and functioning in our modern world.
Varzi (2001b) sees the vagueness as an exclusively semantic problem caused by the naming of
things. He does not believe in the existence of vague geographical objects with boundaries that
are themselves a matter of degree. In the description and analysis of geographical phenomena and
location, however, people widely use vague terms, as adjectives, nouns and verbs, which makes it
hard or impossible to clearly define the geographical individual in any meaningful way that does
not involve an arbitrary cut-off (Fisher, 2000; Varzi, 2001a,b). It is also important to understand that
different types of boundary can be recognised, including the bona fide boundaries that we find in
the physical world and fiat (or human-demarcation-induced) boundaries that much of geography has
to deal with. Mixed cases also exist: some objects can possess both bona fide and fiat boundaries,
for example, the North Sea has land–water (bona fide) and water–water (fiat) boundaries (Smith
and Varzi, 1997)!
Vagueness is many faceted. For example, if we wish to list the major cities in Europe, not an
unusual request, then we might question what is meant by the term major, what and where is
a city and where is Europe; in common usage, none is unequivocally defined, and although all
could be defined for a particular question, there would always be doubt about the cities and areas
which are both included and excluded from consideration. The extents of cities are a matter for
debate; any one city has a specific extent because it is a political entity and has fiat boundaries
which are a matter of human construction and imposition (Smith, 2001; Varzi, 2001a). However,
most cities have suburbs which may or may not be included in the political definition of the
extent of the city. The question is not specific in how largeness of the cities is to be measured.
It could be the population, the economy or the extent of the metropolitan area, to name only
three possible measures, themselves not uncontroversial. Where too is Europe? Is it a set of
political entities, and if so, which are to be included in that set and which excluded? If a limiting
boundary is decided by fiat, then would any city outside that geographical area to any degree be
excluded? On the other hand, the boundary could be redrawn, but then redrawing the boundar-
ies could have no end, until all land areas and all settlements are included (arguably the total
population on the Eurasian continent, if not the entire land surface of the planet, could then be
included). Europe itself is a vague noun, a geographic region without unequivocal limits. Indeed,
the recognition of any of the continents has been criticised by Lewis and Wigen (1997), since
their consideration is limited by the crisp concept of mapping, where hard boundaries between
continents are redrawn on world maps. On the other hand, a rather more creative fuzzy remap-
ping of continents has been presented by Didelon et al. (2011) using contributed opinions from
students based in a variety of countries.
Much has happened in fuzzy modelling of geographical phenomena since the first edition of
the current book was published (Fisher, 2000). Books with an exclusive focus on fuzzy mod-
elling applied to geographic problems have appeared (Petry et al., 2005; Lodwick, 2008), and
more general books on spatial analysis and GISci have contributions on fuzzy modelling illustrat-
ing recognition of its importance to GISci. The Handbook of Geographic Information Science
(Wilson and Fotheringham, 2008) has three chapters with significant fuzzy set content, including
that by Robinson (2008), while Robinson (2009) contributed a chapter to the Handbook of Spatial
Analysis (Fotheringham and Rogerson, 2009). Out of the 17 chapters in Morris and Kokhan’s
Fuzzy Modelling 285

(2007) book on Geographic Uncertainty in Environmental Security, 11 deal with fuzzy set con-
cepts. In addition to books, there have been a number of articles on fuzzy modelling in journals. A
special issue of Fuzzy Sets and Systems (Cobb et al., 2000) served as a precursor to papers appear-
ing in that journal illustrated by GISci problems (e.g. Brandtberg, 2002; Anile et al., 2003; Bjorke,
2004; Bordogna et al., 2012). A special issue of Transactions in GIS was devoted to fuzzy sets in
geographic information systems (GIS) (Robinson et al., 2003) after which papers with fuzzy set
content appeared regularly. In fact, since 2000 rarely does a year go by without at least one paper
exhibiting fuzzy set content appearing in major journals such as the International Journal of
Geographic Information Science or Transactions in GIS.
In this chapter, we will briefly examine the nature of vagueness. Discussion will then move on to
examine classical set theory to show what can be judged to be problematic with it in terms of vague-
ness, and then we will examine fuzzy sets as an alternative. The most important topic in fuzzy set
theory will follow, namely, the definition of fuzzy memberships. Next, fuzzy logic is examined, and
discussion of extensions of fuzzy set theory and of dissenting opinions follows. In conclusion, some
other types of soft set theories are indicated, which may prove useful to GC in the future.

12.2  SORITES PARADOX


The process of argument used in the preceding section is well known in philosophy and is called
the sorites paradox (Williamson, 1994; Sainsbury, 1995). In its original formulation, the argument
went like this:

If one grain of sand is placed on a surface, is there a heap?


If a second grain is placed with the first, is there a heap?
If a third grain is placed with the first two, is there a heap?

If a ten millionth grain is placed with the 9,999,999 grains, is there a heap?

In the first three instances, where n = 1–3, the answer is clearly ‘No’. If the last question, when
n = 10,000,000, were asked on its own, the answer would almost certainly be ‘Yes’, but if the process
of questioning progresses from the first to the last question, with an increment of one grain each
time, the logical answer is still ‘No’; it is never the case that a non-heap is turned into a heap by the
addition of a single grain. That answer, however, is clearly wrong, and that is why it is a paradox.
The person answering will undoubtedly feel increasingly uncomfortable as the process advances,
but at no point will they, logically, be able to answer ‘Yes, there is now a heap when there was not
one before’. The heap to non-heap argument by the removal of grains works the same way; there
is never not a heap, until the very last grain is removed. The core of the problem is that heap is a
vague concept. The same process of argument characterises the definition of very many geographi-
cal phenomena. Concepts such as the heap, which are sorites susceptible, are vague (Russell, 1923).
The exact causes of vagueness need not be discussed here but are comprehensively reviewed by
Williamson (1994).
Aspects of the problem of vagueness in the philosophical literature, and of the possibility of
vague objects, have for long been illustrated with geographical examples, such as where is Snowdon
(or Everest) and how long is the Thames (Sainsbury, 1989; Williamson, 1994; Varzi, 2001a,b). Fisher
and Wood (1998) present a discussion of the vagueness (or fuzziness) of mountains with attention to
the story and film of The Englishman Who Went Up a Hill but Came Down a Mountain (Monger,
1995) where the story is based on a threshold height value supposedly used by the Ordnance Survey
of Great Britain in separating a hill from a mountain. Such threshold heights, as well as measures
of separation and prominence, are indeed used by mountaineers and hikers to define peaks to be
climbed; a comprehensive list of such peaks covering much of the globe can be found at peakbagger.
com (2012). These are, however, lists of summits and as such are limited in their ability to be used
286 GeoComputation

in defining mountains. Fisher et al. (2004, 2007a) argue that although the summit gives a focus for
defining mountains, it does not express the spatial extent of any mountain; they have attempted to
do just this using fuzzy sets.
Fuzzy set theory is an attempt to address the problem posed by phenomena that are sorites sus-
ceptible (or vague) to quantitative representation and manipulation by means of traditional sets and
logics. Fuzzy set theory as such was first suggested by Zadeh (1965). It sought to avoid the philo-
sophical problems of vagueness and the pitfalls inherent in entering that argument (Kosko, 1993).
It also furthered earlier work developed by Kaplan and Schott (1951) and Black (1937), although no
specific reference is made to such material by Zadeh.
Gale (1972), a behavioural geographer, seems to have been the first person to suggest that
fuzzy sets might be worth the attention of geographers. A subsequent paper by Pipkin (1978)
further explored the geographical application of fuzzy sets in an investigation of spatial choice,
while Ponsard (1977) examined settlement hierarchies and Leung (1979) was more interested
in land use planning and decision-making. Robinson and Strahler (1984) were among the first
to suggest that fuzzy sets may have far more to offer modern geographical methods and com-
puter models, in explaining how they present a logical basis for storing uncertainty information
about their analysis of satellite imagery and application of GIS. Following these papers, there
have been hundreds of examples of the application of fuzzy sets to many areas of geographical
endeavour.

12.3  CLASSICAL SETS AND BOOLEAN LOGIC


To understand what a fuzzy set is, it is first necessary to consider what is meant by a classical
set. A classical set is a container that wholly includes or wholly excludes any given element. For
example, the set of days of the week unquestionably includes Monday, Thursday and Saturday.
It just as unquestionably excludes butter, elephants, liberty and so on. It is called a classical set
simply because the concepts involved have been around for such a long time, originating from
the writings of Aristotle (384 BC–322 BC), who first formulated the law of excluded middle. Put
simply, X must either be in set A or in set not-A. Key characters in the development and present
understanding of set theory, as subsequently formalised by logicians and mathematicians, are
George Boole (1815–1864), John Venn (1834–1923) and Georg Cantor (1845–1918). The resultant
classical sets are hereinafter referred to as crisp sets, which are often illustrated by means of
Venn diagrams and analysed using Boolean algebra. Figure 12.1a shows a standard representation
of two crisp sets, A and B. They are shown within a rectangle, the universe of discourse (or just
universe, a term used to mean all things under consideration during a discussion, examination
or study, i.e. everything that we are talking about), and possess hard boundaries. The boundar-
ies can be in single or multiple attributes, or in space, or in time. Crisp sets can become the
basis of logical operations which involve the combination of the sets, for example, by the use of
Boolean algebra. The union (Figure 12.1b) is the region occupied by either A or B, the intersect
(Figure 12.1c) is the region occupied by both A and B, and the inverse (Figure 12.1d) is the region
occupied by neither A nor B. Whether or not an object belongs to a set can also be portrayed as
a line graph (Figure 12.2), which is effectively a cross section through the Venn diagram, where
belonging is shown by code 1 and non-belonging by code 0, a binary coding. This is indicated as
a value of either 0 or 1 or {0, 1}, using {} to identify a specific collection of elements in that set,
that is, the only permitted numbers are 0 and 1. Union and intersect can also be shown (Figure
12.2b and c, respectively).
If the belonging of an individual to a set is based on the possession of a threshold value of a par-
ticular property, and the diagnostic possession of the property is the subject of error (owing to poor
observation, faulty measurement, etc.), then there is a probability of the property being observed or
measured correctly, and so whether or not an individual is a member of a set can be assigned a prob-
ability (p(x)A), that is, the probability of x being in A, as can its probability of belonging to B (p(x)B).
Fuzzy Modelling 287

A B A B

(a) (b)

A B A B

(c) (d)

FIGURE 12.1  Representation and logical operations for crisp sets. (a) Two circular sets, A and B, in the
rectangular universe of discourse. (b) The union of our two sets. (c) The intersect. (d) The inverse or negation.
(From Fisher, P.F., Fuzzy modelling, in: GeoComputation, Openshaw, S. and Abrahart, R., eds., Taylor &
Francis Group, London, U.K., 2000, pp. 161–186.)

1 1

0.8 0.8
Fuzzy membership
Fuzzy membership

0.6 A 0.6
B A or B
0.4 0.4

0.2 0.2

0 0
(a) (b)

0.8
Fuzzy membership

0.6
A and B
0.4

0.2

0
(c)

FIGURE 12.2  Representations of crisp sets as cross sections. On the vertical axis, 1 indicates belonging to
the set and 0 not belonging. (a) Sets A and B. (b) The union of sets A and B. (c) The intersect. (From Fisher,
P.F., Fuzzy modelling, in: GeoComputation, Openshaw, S. and Abrahart, R., eds., Taylor & Francis Group,
London, U.K., 2000, pp. 161–186.)
288 GeoComputation

Then the probability of that object being in the intersect of sets A and B is given by Equation 12.1,
in the union by Equation 12.2 and in the inverse by Equation 12.3:

p( x) A∩ B = p( x ) A ⋅ p( x) B (12.1)

in which A ∩ B symbolises objects that belong to set A and set B

p( x) A∪ B = p( x) A + p( x) B − p( x) A∩ B (12.2)

in which A ∪ B symbolises objects that belong to set A or set B


p( x) A′ = 1 − p( x) A (12.3)

in which p(x)A′ indicates not belong to set A.
Examples of crisp sets are the set of people allowed to practise medicine as a doctor or the set of
people with degrees. Crisp geographical sets are the census division of, at least, European and North
American countries, where a specific region is distinguished, each household being assigned to one
and only one region and people are then counted as being within and/or belonging to that region for
the census; there is a simple one-to-many relationship between regions and people, and within the
hierarchy of regions, the census tracts or output areas are defined by fiat boundaries (Smith, 2001).
In temporal analysis, an obvious crisp set is the year. Large crowds of people celebrate the change
from 1 year to the next, and many time series analyses divide information into arbitrary, crisp divi-
sions of time (e.g. years and months).
The crisp set is the basis of most conventional set and statistical analysis. For example, to estab-
lish the equality of the means of two groups of values, we use the t-test; here, a null hypothesis
is set up that the means are equal and an alternative hypothesis that they are not equal. We then
determine the value of the test statistic (t) and compare it with the threshold value which comes
from tables or a calculation of the distribution by a computer. The value calculated from the obser-
vations is then compared with the threshold value, and a decision is made whether to accept or
reject the null hypothesis (Ebdon, 1985; Harris and Jarvis, 2011). In a test with a particular level
of confidence, and with a particular data set, only two outcomes are valid: to accept or to reject
the null hypothesis. No matter how close the calculated test statistic is to the threshold, no other
outcome is acceptable. More advanced interpretations admit to a continuous probability of the null
hypothesis being correct or false, or else investigators conveniently select another value for the
confidence interval so that the test does confirm their preconceptions. In short, although hypoth-
esis testing is a matter of clear-cut crisp decisions, few investigators adopt a slavish adherence to
the acceptance or rejection of the null hypothesis, admitting some vagueness as to the meaning
of a threshold.

12.4  FUZZY SET THEORY


Zadeh (1965) first put forward fuzzy set theory as a direct response to the shortcomings of crisp sets.
To illustrate his proposal, Zadeh used the set of tall people. Most humans have an idea about this,
but any two humans are unlikely to agree on how high someone has to be in order to be a member
of the set, and whether a particular person matches one individual’s conception of the set might
change. Furthermore, someone may not be prepared to commit to the idea that a particular person
is either tall or not tall. Rather, if questioned, a person might say they were nearly tall, or pretty tall,
using a linguistic hedge or qualifier to express a degree to which the person in question is within
their concept of tall people.
A similar concept to tallness is the idea of baldness (Burrough, 1992) where people may be pre-
pared to concede that someone with no hair is definitely bald, as is a person with a 100 hairs, but
Fuzzy Modelling 289

people with more and more hair are less and less bald, until someone with a small thinning of hair
on the top of their head might be described as balding showing only a minor affinity with the set.
Any person may to some extent be tall and to some extent be bald. The extent may be so small that
they are effectively not in the set, but if we define the sets tall and not tall, many people will belong
to both sets to varying degrees. It is this degree of belonging that Zadeh suggests is described by
fuzzy set theory. Essentially, the concepts of bald and tall are sorites susceptible. In an era of smok-
ing bans inside buildings, it is possible to see people’s varied interpretations of inside and outside a
building. When the weather is warm, smokers will congregate some distance from the doors, but if
it is raining, smokers may be very close to the doors and there may even be a discussion to be had
as to whether a porch or foyer is within the building. People can easily exploit the vagueness of the
definition of the extent of the building.
In geography, we can distinguish a large number of concepts that can comfortably be conceived
of as having a degree of belonging, but do not fit so well with a concept of a hard crisp set. The
degree of belonging may relate to the categorisation of that property of either the geographical indi-
vidual or a location irrespective of the individual. In more complex formulations, membership may
relate to the interaction between individual and locational attributes.
Fuzzy set theory has encountered some opposition due in large part to the similarity of the scales
of measurement for fuzzy set membership and probability: in both approaches, an object acquires
a value between 0 and 1 (Haack, 1974; Zadeh, 1980; Kosko, 1990; Laviolette and Seaman, 1994).
Fisher (1994) has contributed a geographical example to illustrating this problem arguing that in
determining the visibility from a position in the landscape (a viewshed operation), the line of sight
to a location may be uninterrupted making the location visible (an issue of probability), but it may
not be possible to clearly discern an object which may be at that location (fuzziness).
Dale (1988), Moraczewski (1993a,b) and Roberts (1986, 1989) all advocate the use of fuzzy
sets as being more appropriate than applying Boolean concepts for the analysis of vegetation com-
munities, and Dale (1988) and Roberts (1986) argue that the traditional method of ordination used
in the analysis of phytosociology is a tacit admission that the vegetation at any particular location
possesses partial characteristics of some central concept of the community, and ordination analysis
(through principal component or factor analysis) is one method of describing the strength of any
location belonging to these concepts. The same argument with respect to ordination has been made
by soil researchers (Powell et al., 1991).

12.5  FUZZY MEMBERSHIPS


At the heart of fuzzy set theory is the concept of a fuzzy membership. A crisp set is defined by the
binary coding {0,1}, whereby an object that is in the set has code 1 and an object that is not has
code 0. A fuzzy set membership, on the other hand, is defined by any real number in the interval
[0,1] (noting switch from curly brackets to square brackets, indicating that a series of potential num-
bers can exist ranging from 0 to 1). If the value is closer to 0, then the object is less like the concept
being described; if closer to 1, then it is more like it. A person 2 m high might have a value 0.9 in the
set of tall people whereas one 1.8 m high might have a value of 0.2. The fuzzy membership is com-
monly described in formulae by μ and, particularly, an object x has fuzzy membership of the set A,
μ(x)A. The difference between crisp and fuzzy set memberships is shown in Figure 12.3. The binary
crisp sets have memberships 0 and 1. There is no grade of belonging. Fuzzy sets have continuous
membership values that can range between 0 and 1.
Historically, authors have referred to two major approaches to defining the fuzzy membership
of an object: either the semantic import model or the similarity relation model (Robinson, 1988;
Burrough, 1989). This nomenclature is based on how fuzzy memberships are used to represent fuzz-
iness in a geographic database, not the method whereby the membership values are derived. For this
reason, Fisher (2000) suggested that an experimental model also needed to be acknowledged. As
suggested by Robinson (2009), it is now more useful to consider that fuzzy memberships are usually
290 GeoComputation

0.8

Fuzzy membership
0.6

0.4

0.2 Crisp
Fuzzy

FIGURE 12.3  The difference between a crisp set and a fuzzy set illustrated by cross sections (Figure 12.2).
(From Fisher, P.F., Fuzzy modelling, in: GeoComputation, Openshaw, S. and Abrahart, R., eds., Taylor &
Francis Group, London, U.K., 2000, pp. 161–186.)

a function of a direct assignment (DA), an indirect assignment (IA) or an assignment by transforma-


tion (AT) methodology (Verkuilen, 2005), and these are illustrated in examples that follow.
Until now, we have discussed what are known as Type-1 fuzzy sets. These are the most perva-
sive type of fuzzy set used in GC endeavours. For some time, it has been recognised that there are
several potential sources of uncertainty inherent in the membership functions of Type-1 fuzzy sets
(Zadeh, 1975; Fisher et al., 2007a). In typical geospatial applications, such sources of uncertainty
may be (1) the meaning of words used in fuzzy rule-based systems, (2) measurements upon which
Type-1 fuzzy sets are based and/or (3) the data used to tune the parameters of a Type-1 fuzzy set
membership function. Type-2 fuzzy sets allow for the explicit incorporation of uncertainty about the
membership function into fuzzy set theory. In Type-1 fuzzy sets, the memberships are by definition
crisp, whereas in Type-2 fuzzy sets, memberships are themselves fuzzy. Following Mendel and John
(2002), a Type-2 fuzzy set, denoted A, is characterised by a Type-2 membership function µ  ( x, u)
A
where x ∈ X and ∀u ∈ J x ⊆ [0,1]. A can be expressed as


µ A ( x, u)
A
=
∫∫
x∈X u∈J x
( x, u)
J x ⊆ [0,1] (12.4)

in which A ⊆ B symbolises a subset, having fewer or equal elements to that of the main set.
Note that the restriction ∀u ∈ J x ⊆ [0,1] is consistent with the Type-1 constraint that
0 ≤ µ A ( x ) ≤ 1. Thus, when uncertainties about the membership function disappear, a Type-2
membership function reduces to a Type-1 membership function. It is beyond the scope of this
chapter to provide a concise tutorial on Type-2 fuzzy sets. Suffice it to say that the difficulty of
working with their 3D nature poses a challenge for their application. However, some examples of
this type of analysis will be given at the end of this review.

12.5.1 Direct Assignment
Either experts or standard functions assigning memberships to entities of interest characterise the
DA methodology. Any function which relates the fuzzy membership to some measureable property,
d, can be used but most common are functions such as the linear, triangular, trapezoidal and trigo-
nometric (Figure 12.4; Robinson, 2003). The first is based on two critical values associated with
the inflection of the membership line (d1, d2) and the second on four inflection values (d1, d2, d3, d 4).
Fuzzy Modelling 291

1 d2 1 d2 d3

0.8 0.8
Fuzzy membership

Fuzzy membership
0.6 0.6

0.4 0.4

0.2 0.2
d1 d1 d4
0 0
(a) (b)

FIGURE 12.4  Two simple examples of fuzzy membership functions: (a) linear and (b) trapezoidal. (From
Fisher, P.F., Fuzzy modelling, in: GeoComputation, Openshaw, S. and Abrahart, R., eds., Taylor & Francis
Group, London, U.K., 2000, pp. 161–186.)

Examples of DA of fuzzy memberships are shown in Figure 12.5. Figure 12.5a shows major
roads and the distance away from them in an area close to Leicester (data from Langford, 1993).
Figure 12.5c shows one possible fuzzy membership function that has been used to transform
these explicit distances into a fuzzy membership map of proximity to major roads (Figure 12.5b).
Likewise, Figure 12.5e is a map of slopes based on a rather poor DEM with many ghost contours.
Figure 12.5d presents a fuzzy membership function that has been used to transform these elevations
into a map of gentle slopes (Figure 12.5f).
A widespread classification, in particular, of European and North American landscapes is the
distinction between urban and rural, but where does rural end and suburban or even urban begin?
This could be defined in a number of different ways but it is easy to see that any definition is
arbitrary and susceptible to a sorites argument. Ban and Ahlqvist (2009) use the DA of fuzzy
memberships to geographical and census data to generate a fuzzy view of the membership of
raster grid cells in the set of exurban areas (i.e. a region lying beyond the suburbs of a city). They
examined published definitions of exurbia and present six different definitions for the identifica-
tion of the set of census areas which are in an exurbia class. These use eight different membership
functions which combine a mixture of socio-economic and spatial variables including population
density, distance from the metropolitan statistical area (MSA), ethnicity, commuting time to the
MSA and housing density. Simple mathematical functions were then used to assign membership
values to grid cells, and the different memberships were then fused through a weighted linear
combination (which they call a convex combination after Burrough, 1989), giving a mapping of
exurban areas of Ohio. Of course, the extent of the MSA itself is a fiat definition by the US Census
Bureau. A similar approach to selecting the membership function based on the literature is used
by Zeng and Zhou (2001).
The choice of membership function can also be based on the opinions of experts through
direct interviews (DeGenst et al., 2001). Even when membership functions are available, having
been computed or assigned during an analysis operation as part of a GIS, the threshold values
(d1, d2, etc.) and the form of the function must still be decided by experts perhaps in consultation
with technical experts or directly decided in an automated geospatial environment (Yanar and
Akyurek, 2006).
Many researchers have argued that the extent of a soil is poorly defined (Burrough, 1989;
McBratney and De Gruijter, 1992) by either location or attribute. Soils change continuously in
space, forming gradations, and only rarely are those gradations abrupt. Thus, the concept of a
soil map as a set of well-defined regions separated by distinct boundaries does not match the real-
world occurrence of soil characteristics. Furthermore, the soil frequently changes at a high spatial
frequency and so is poorly captured by the crisp map. Lagacherie et al. (1996) and Wang and Hall
292 GeoComputation

(a) (b)

1 1
0.8
Fuzzy membership

Fuzzy membership 0.8

0.6 0.6

0.4 0.4

0.2 0.2

0 0
0 200 400 600 800 1000 8 18 28
(c) Distance from roads (d) Percent slope

(e) (f)

FIGURE 12.5  Maps of geographical data and analytical results of that data are shown: (a) roads superim-
posed on distances away from roads, (b) the fuzzy membership of the set of locations near roads, (e) the slopes
and (f) the fuzzy membership of gentle slopes and the fuzzy membership functions (c) and (d) to transform (a)
into (b) and (e) into (f).

(1996), in rather different contexts, extend this conception by showing how uncertain soil boundar-
ies can be added to a standard soil map. Soil mapping is aimed primarily at improved land manage-
ment, and many have argued that land evaluation, based on soil mapping, is better and more reliably
treated by fuzzy sets than by crisp sets (Burrough, 1989; Wang et al., 1990; Burrough et al., 1992;
Davidson et al., 1994). MacMillan et al. (2003) made extensive use of fuzzy classification rules to
automatically classify landform-based spatial entities.
Fuzzy Modelling 293

The DA approach is not without its issues. First, its interpretation can be difficult because rarely
is there anything other than opinion underlying the number. Second, the assignment may be too
challenging for the expert(s) to do reliably, especially if they are not well versed in fuzzy set theory.
Third, there can be a systematic bias towards the end points (Thole et al., 1979). Fourth, since the
assignments from multiple experts can be at extreme variance from one another, the process of DA
is often difficult when trying to combine their opinions (Verkuilen, 2005). In spite of these issues,
DA remains a commonly used strategy for defining membership values, and the use of standard
membership functions is customary.

12.5.2 Indirect Assignment
Rather than have membership values directly assigned by experts, IA first elicits responses of some
kind from experts, then applies a model to those responses in order to generate membership values.
Robinson (2000) showed how an intelligent, interactive question/answer system could be used to
generate fuzzy representations of a basic spatial relation such as near. The expert need only provide
a yes/no answer to a question posed by the software. From crisp answers, the system generates a
fuzzy representation of a spatial concept. This approach can also be used to generate fuzzy repre-
sentations of individual concepts – spatial or non-spatial. One of the reasons IA is less often used
is the difficulty of the knowledge elicitation process. Zhu (1999) used personal construct theory to
formulate a rigorous methodology for eliciting expert knowledge about soils. Part of the process
included the expert interacting with a graphical user interface to assist in formalising the relations.
Nevertheless, this proved difficult and very time-consuming. Kuo et al. (2003) used questionnaires
to acquire data on store location decisions from business experts. Questionnaire data were then used
to estimate the weight assigned to each factor in their model of location decisions. Other studies that
have reported using questionnaires in the process of constructing fuzzy memberships include Fritz
et al. (2000) and Lin et al. (2006).

12.5.3 Assignment by Transformation
In AT, numerical variables are taken and mapped into membership values by some transformation.
Although there are many different approaches that assign fuzzy membership using some version of
AT, by far one of the most common is the use of a fuzzy clustering algorithm. The most common
fuzzy clustering algorithm for assigning membership is the fuzzy c-means (FCM) algorithm origi-
nally developed by Dunn (1973) and later generalised by Bezdek (1973, 1981). It is also commonly
referred to as the fuzzy k-means algorithm. It takes as input a multivariate data set of p variables
by q cases. Then, minimising an objective function optimises the identification of a predetermined
number of groups, c. For each of the q cases, the degree to which any case resembles the properties
of each of the c groups is reported as a fuzzy membership value in the range [0,1]. Thus, the mem-
bership value is a function of the classification process and of the input data. Two primary variants
are possible. The supervised method is where information on prototypical groups is used a priori to,
in essence, train the algorithm. The unsupervised method is where a search is executed to determine
the division into some number of predetermined classes.
Since the algorithm was published (Bezdek et al., 1984), FCM has been applied to a diverse set
of situations in geographic computing. It has been most prominent in studies of soils mapping and
geomorphometry (Odeh et al., 1990; Irvin et al., 1997; McBratney and Odeh, 1997; Burrough et al.,
2001; Triantafilis et al., 2001; Bragato, 2004; Amini et al., 2005; Deng et al., 2006; Arrell et al.,
2007). There are several other areas where FCM has been used in the study of geographic phenom-
ena. In plant ecology, Brown (1998) mapped historical forest types as fuzzy sets. Spatial subpopu-
lations of woodland caribou were identified using FCM (Schaefer et al., 2001). As an example of
FCM use in a business GIS environment, Wanek (2003) illustrated the utility of fuzzy clustering
in identifying spatial customer potentials for prefabricated housing markets. Fuzzy clustering has
294 GeoComputation

served as an attractive method of analysis for ordering world cities since they will differ in both the
nature and degree of world cityness (Taylor and Derudder, 2004).
Since the objective function does not take into consideration spatial dependence between obser-
vations, noisy spatial data can adversely affect the performance of the algorithm. Few attempts
to incorporate spatial information in an FCM algorithm have been published outside the image
analysis community. Liew et al. (2000) presented a modification of the FCM whereby the normed
distance computed at each pixel within an image is replaced with the weighted sum of distances
from within the neighbourhood of a pixel. Pham (2001) followed with a more general solution that
uses penalty functions to constrain the membership value of a class, so as to be negatively correlated
with the membership values of the other classes for neighbouring pixels. Both approaches produced
promising results. It remains to be seen if, or when, these adaptations of FCM will develop and be
applied outside the image analysis community.
Another problem is that the number of classes needs to be specified a priori. Where the number
of classes is not known, FCM is used as an exploratory data analysis technique. In order to deter-
mine which number of classes provides a useful partitioning of the data set, measures of cluster
validity are used such as compactness and separation. There are a large number of indices for mea-
suring cluster validity in an FCM analysis. Many indices of cluster validity are detailed and evalu-
ated by Wang and Zhang (2007). After extensive comparison on both artificial and well-known data
sets, they found that none of the indices correctly partitions all data sets into the predetermined
number of clusters.
Another approach that has been used to map data to fuzzy membership functions is the adap-
tive neuro-fuzzy inference system (Jang, 1993). Using a given input/output data set, the objective
is to construct a fuzzy inference system where the input membership functions best suit that
particular data set. Using a hybrid backpropagation algorithm/least-squares method, the member-
ship parameters are tuned in a training exercise similar to that of a neural network. The method
has been used to identify map revision (Teng and Fairbairn, 2002) and land cover classification
(Peschel et al., 2002).
Neural approaches have the advantage of an ability to learn from training data as well as being
able to handle noisy, incomplete data. Once trained, such mechanisms can respond to a new set
of data instantly. However, they can take a long time to train, especially since training is still
largely by trial and error and complicated by the fact that incomplete training data can cause the
network to provide incorrect results. Perhaps the most important disadvantage is that it is difficult
to explain the specific reasoning leading to the output, and so it can be criticised as a black-box
approach.
Statistical data analysis has been suggested as another way to choose fuzzy membership func-
tions and form fuzzy rules (Hanna et al., 2002). However, it has not been used widely in spatial
analysis. An example of its application to a spatially explicit problem is illustrated by the prob-
lem of estimating parameters to use in a regional ecohydrological simulation model. Mackay et al.
(2003) use a two-stage methodology where in the first stage, many simulations are run in which
parameters affecting stomatal conductance are assigned values using Monte Carlo sampling. Then
each simulation result is evaluated by regressing the simulated evaporative fraction modelled by
the Regional Hydro-Ecologic Simulation System (RHESSys; Tague and Band, 2004) and surface
temperature from thermal remote sensing data. For each regression, the coefficient of determination
(R2) is calculated and used as a fuzzy measure of the goodness of fit for its respective simulation
result. Hence, the fuzzy set is composed of the set of R2 measures for all simulations, to which an
information-theoretic tool based on ordered possibility distributions is applied to form a restricted
set in which only good simulations are retained. A restricted set is used as an ensemble solution in
the second stage of parameter estimation, and a separate solution is produced for each land facet
(Mackay et al., 2003).
Another geographically informed AT method is that used by Fisher et al. (2004) in their evalu-
ation of the location of Helvellyn, the second highest mountain in England, and their exploration
Fuzzy Modelling 295

(a) (b)

(c) (d)

FIGURE 12.6  Three realisations of the geomorphometric extent of peaks in the vicinity of Helvellyn shown
in solid white against a hillshaded background. Analytical windows of (a) 11 × 11, (b) 21 × 21 and (c) 31 × 31
are shown together with (d) the sum of 20 different such approximations of the extent of peaks giving a fuzzy
representation of the extent of Helvellyn and other peaks. (After Fisher, P.F. et al., Trans. Inst. Br. Geogr., 29,
106, 2004.)

of Ben Nevis (Fisher et al., 2007a), the highest mountain in the British Isles. In this work, they
employed geomorphometric analysis to identify the locations of mountain peaks at multiple res-
olutions, deriving a number of different extents (Figure 12.6a through c). Averaging the results
of analysis yielded a fuzzy footprint for the peak (Figure 12.6d). Fisher et al. (2007b) used the
same approach to analyse the changes in crests of a coastal dune field being mapped as the union
(Figure 12.7b) of fuzzy ridges and peaks.

12.6  FUZZY LOGIC


Having defined the memberships of fuzzy sets, just as with crisp sets, it is possible to execute logical
set operations directly comparable with the union, intersect and inverse of crisp sets (Figure 12.1).
These operators were first proposed by Zadeh (1965) in his original development of fuzzy set theory.
Although these original operators are often still used, many others have been developed since. For
an exhaustive list of operators, both parameterised and non-parameterised, the reader is referred to
Zimmermann’s (2010) review of fuzzy set theory.
For two fuzzy sets A and B (Figure 12.7a), the fuzzy union is simply a maximum operation
(Equation 12.5; Figure 12.7b), taking the maximum value of μ for every measured value. From
296 GeoComputation

1 1

0.8 0.8
Fuzzy membership

Fuzzy membership
0.6 A 0.6 A or B
B
0.4 0.4

0.2 0.2

0 0
(a) (b)

1 1
A and B
0.8 0.8 Not (A or B)

Fuzzy membership
Fuzzy membership

0.6 0.6

0.4 0.4

0.2 0.2

0 0
(c) (d)

FIGURE 12.7  Representations of cross sections through fuzzy sets, comparable to the crisp set representa-
tions in Figure 12.2. (a) Two trapezoidal fuzzy sets A and B, (b) the union of the two, (c) the intersect and
(d) the negation. (From Fisher, P.F., Fuzzy modelling, in: GeoComputation, Openshaw, S. and Abrahart, R.,
eds., Taylor & Francis Group, London, U.K., 2000, pp. 161–186.)

this, it can be seen that the fuzzy operation is a generalisation of the Boolean operations (compare
Figures 12.2a through c and 12.7a through d). On the other hand, Equation 12.6 (see also Figure
12.7c) defines the intersect of the two fuzzy sets by taking the minimum value of μ for every mea-
sured value (Figure 12.7c). It is also directly comparable to the Boolean intersect (Figure 12.2c).
Finally, the negation operation (Figure 12.7d) is also a generalisation of the special case of the
Boolean operation (Equation 12.7):

µ( A∪B ) = max (µ( A) , µ( B ) ) (12.5)


µ( A∩B ) = min (µ( A) , µ( B ) ) (12.6)


µ( A′) = 1 − µ( A) (12.7)

Indeed, Leung (1988) gives three further pairs of fuzzy union and fuzzy intersect operators which
all specialise to the correct versions of Boolean set operators, as well as a number of other operators
which do not, and goes on to state that one of the advantages of fuzzy logic is that there is no unique
definition of the laws of set combination. This is well illustrated by the exhaustive list of operators
presented by Zimmermann (2010).
Equations 12.5 and 12.6 and other equations that share the property of specialising to the
Boolean equivalent are known as the hard union and hard intersect operators. There are also
soft versions of the fuzzy union and fuzzy intersect operators (Equations 12.8 and 12.9, respec-
tively), and these bear a remarkable, and intended, similarity to the probability of an object being
a member of the crisp sets (Equations 12.2 and 12.1, respectively). These have the advantage
Fuzzy Modelling 297

that they do not maximise and minimise the memberships and so are convenient operators for
some situations:

µ( x ) A∪ B = µ( x ) A + µ( x ) B − µ( x ) A∩ B (12.8)

µ( x ) A∩ B = µ( x ) A ⋅ µ( x ) B (12.9)

Several researchers have argued that the application of fuzzy logic to geographical problems has
several advantages. Thus, Burrough (1989) shows that from observations of the amount of sand in
different soil horizons, it is possible to derive fuzzy set memberships of any horizon being sandy and
then of the membership of the soil being sandy in any layer or of being sandy throughout. Burrough
et al. (1992) argue that a fuzzy logic approach to soil evaluation for land use provides a more rigor-
ous approach with an outcome which better reflects the reality of the situation. Specifically, the crisp
set derived from the final fuzzy combination includes areas that meet any criteria of contiguity and
suitability but would be excluded by a Boolean analysis from the start.
The simplest example of the application of fuzzy logic in GC is Leung’s (1987) suggestion that
the fuzzy intersect between two mapped geographical classes shows the degree to which any loca-
tion belongs to both classes, that is, the boundary class or, in ecology, the ecotone or, more correctly,
the ecocline (Kent et al., 2006). This suggestion was followed up by Arnot and Fisher (2007) who
undertook mapping of the ecocline at the Bolivian savanna–forest boundary. They showed various
ways the ecocline could be derived and visualised (Figure 12.8).
Fisher et al. (2006) present a more complex result of fuzzy logic applied to land cover change
mapping in the same area of Bolivia. They argue that although the logic of a change matrix is
based on the intersection of pairs of land cover types at different times, doing this with a standard

(a) (b) 0.00


0.06
0.13
0.19
0.25
0.31
0.38
0.44
0.50
0.56
0.63
0.69
(c) (d) 0.75
0.81
0.88
0.94
1.00

FIGURE 12.8  The derivation of a fuzzy ecotone: (a) the extent of wet savanna, (b) the extent of dry savanna,
(c) the fuzzy intersect of the two cover types and (d) the normalised intersect of the two covers. (From Arnot,
C. and Fisher, P., Mapping the ecotone with fuzzy sets, in: Geographic Uncertainty in Environmental Security,
Morris, A. and Kokhan, S., eds., Springer, Dordrecht, the Netherlands, 2007, pp. 19–32.)
298 GeoComputation

1986 (Wet season)

Forest Dry savanna Wet savanna Water

Forest
Dry savanna
1985 (Dry season)

Wet savanna
Water

FIGURE 12.9  Maps of the fuzzy change table between fuzzy maps of cover types in the 1985 dry season and
the 1986 wet season by bounded difference. (From Fisher, P.F. et al., Ecol. Informatics, 1, 163, 2006, Figure 8.)

fuzzy intersect (Equation 12.6) fails to produce understandable results, and instead, they apply the
bounded difference operation (Equation 12.10) which yields interpretable results (see Table 2 in
Fisher et al., 2006):

µ( A∩ B ) = max(0, µ( A) + µ( B ) − 1) (12.10)

They present a comprehensive discussion of the land cover changes in an area of Bolivian savanna
(Figure 12.9).
Logical interactions between geographical phenomena are important and the subject of topologi-
cal investigations (Egenhofer and Franzosa, 1991). Membership grades in a fuzzy relation can be
used in much the same way to determine various spatial relations as degrees of set membership.
Zhan and Lin (2003) have identified fuzzy relations between fuzzy regions as have, more recently,
Dilo et al. (2007). They use combinations of the outcomes of fuzzy operations between fuzzy spatial
objects to determine fuzzy versions of containment, overlapping, fusion, and difference. Kahraman
et al. (2003) present an example of using fuzzy relations in a model of group decision-making for
the facility location selection problem.
It is relatively uncommon for studies to examine the effects that the use of alternative fuzzy logic
operators may have on the results. Using an individual-based simulation model of how fuzzy logic
may be used to model animal dispersal behaviour, Robinson and Graniero (2005a; Graniero and
Robinson, 2006) investigated the effect of using different fuzzy logic operators on movement behav-
iour. The simulation model uses a generalised fuzzy decision model where goals and constraints are
Fuzzy Modelling 299

Agriculture pasture
grassland
Crisp

Coniferous, or
early successional
forest

Noncompensatory Compensatory Oak, or


deciduous
forest

Starting location

Yager 500 m

FIGURE 12.10  Example of dispersal behaviour exhibited by an agent with the same starting location but
using different fuzzy aggregation methods in the decision model. (From Robinson, V.B. and Graniero, P.A.,
An object-oriented approach to managing fuzziness in spatially explicit ecological models coupled to a geo-
graphic database, in: Advances in Fuzzy Object-Oriented Databases: Modelling and Applications, Ma, Z.,
ed., Idea Publishing Group, Hershey, PA, 2005b, pp. 269–300, Figure 8.)

expressed in terms of fuzzy sets and a decision is determined through the aggregation of the fuzzy
sets using fuzzy operators (Bellman and Zadeh, 1970; Klir and Yuan, 1995). The model is com-
posed of two submodels, namely, a movement decision model and a residence decision model. There
were four classes of agents each defined by the type of fuzzy operator used to perform the aggrega-
tions necessary to arrive at a decision to move to a location and whether or not to reside or move
on. The four classes of union/intersect operators defining the classes were non-compensatory (see
Figure 12.7), compensatory (see Equation 12.9), parameterised Yager (see Robinson and Graniero,
2005a) and crisp (see Robinson and Graniero, 2005a). The results of this relatively simple set of
simulations illustrated that the choice of fuzzy operators can significantly affect the results. This is
especially evident for some individuals whose movement pattern and final location differ dramati-
cally depending upon the method of aggregation used (Figure 12.10).

12.7  FUZZY REGRESSION


Within fuzzy set theory, there are a large number of methods being presented and the toolkit is
continually expanding. These methods seem rarely to have been explored in the geographical lit-
erature. The purpose of this section is therefore to do little more than point out some of the meth-
ods which exist and to suggest that a fuller examination by geographers interested in GC may be
pertinent. Regression is a method of analysis well known to geographers and fundamental to many
quantitative analyses of geographical data. Indeed, many methods are based on the general linear
model and so derived from regression (Johnson, 1978). That model, however, is based on crisp
conceptualisations of the data and a possible precision in the measurement that may be confused
by error. In the instance of geographical data, it could be argued that few concepts of data are truly
crisp and that fuzzy regression would be a significantly more appropriate tool for analysis, moti-
vated as it is by the recognition that some data concepts are poorly defined (Klir and Yuan, 1995).
300 GeoComputation

Arguably, geographers have rejected standard methods of regression analysis in recent years because
of the mis-conceptualisation of the data implicit in a crisp data model. Some experiments have been
conducted with fuzzy regression modelling on stream flow (Aqil et al., 2007). The problem is per-
haps epitomised by the use of crisp and binary answers to opinion surveys. Indeed, Bouchon (1981;
Akdag and Bouchon, 1988) has explored the novel area of fuzzy questionnaires, but they have not
gained wide acceptance, although the measures used in many questionnaire surveys are inherently
fuzzy in both question and response.
For long, one aspect of GC has been concerned with the location of facilities and the planning of
land use. Recently, the analytic hierarchy process (Saaty, 1980) has been advocated and received a
considerable amount of attention as an approach, embedded as it is in fuzzy set theory, for wide area
land use planning, particularly with raster GIS (Sui, 1992; Banai, 1993; Eastman et al., 1995). In this
method, a hierarchy of factors that influence land use planning is set up. The factors are grouped
into similar related themes, and then a hierarchy is formed with those coming together at different
levels. For example, soil and water influences might be grouped separately at the lowest level but
fused as a natural resource influence at a higher level (Banai, 1993). At each level in the hierarchy,
the importance of factors is decided based on a pairwise comparison of the factors and relative
scorings of those factors. From the ensuing matrix of scores, eigenvalues are extracted to derive
weightings for GIS themes which are then used in a weighted overlay of the map data. Eastman et al.
(1995) outline the complete procedure as it is implemented in the Idrisi GIS software, including the
allocation of land to particular uses based on a simple heuristic optimisation procedure.

12.8  TYPE-2 FUZZY SETS


There are only a few examples of Type-2 fuzzy sets being applied to problems in GC. Fisher et al.
(2007a) illustrate its use in examining the spatial extent of mountain peaks. In a more theoretical
work, Verstraete et al. (2005) present how Type-2 fuzzy sets can generalise their model of extended
triangulated irregular networks that are based initially on Type-1 fuzzy membership grades. Bailey
et al. (2003) describe a raster-based fuzzy algorithm using an approach based on Type-2 fuzzy sets.
They avoided some of the complexity with a scaling technique based on triangular fuzzy numbers
that reduced the Type-2 to a Type-1 membership grade using input from a decision-maker. Indeed,
one of the problems in applying Type-2 fuzzy sets in the GC domain is how to populate the mem-
bership function describing the fuzziness of the fuzzy membership value itself. One approach used
fuzzy classification to populate the Type-2 fuzzy representation of ecotones (Arnot and Fisher,
2007; Fisher, 2010). Fuzzy classification has also been used to parameterise Type-2 fuzzy sets in
a study of land cover change (Fisher and Arnot, 2007), and Fisher et al. (2007b) present a similar
Type-2 change analysis of sand dunes based on multiscale analysis of geomorphometric parameters
from a DEM.

12.9 CONCLUSIONS
Many geographical phenomena (objects, relations and processes) are most appropriately con-
ceptualised as vague. Within current computing environments, the most widespread method to
address vagueness is fuzzy sets, and it is in that context that this chapter is presented, but fuzzy
sets is just one of a number of different approaches to approximate reasoning which are grouped
together under the heading of soft set theory (Pawlak, 1994). Vagueness is fundamental to geo-
graphical phenomena, and in analysing those phenomena, it must be addressed. In this chapter,
we have attempted to blend the theory of fuzzy sets together with geographical examples of its
use. Currently, it represents an appropriate and worthwhile way ahead for GC to answer ques-
tions people ask in a way they want to hear. We make no claim that this will remain the case
into the future, but those involved in spatial theory and GC need to become more conversant
with general issues of soft computing. Fuzzy sets offer a theoretical and practical alternative to
Fuzzy Modelling 301

traditional methods of crisp analyses, by means of both logical and mathematical functions, and
it should be exploited or at least exhaustively explored within the broad area of GC.

REFERENCES
Akdag, H. and Bouchon, B. 1988. Using fuzzy set theory in the analysis of structures of information. Fuzzy
Sets and Systems 28: 263–271.
Amini, M., Afyuni, M., Fathianpour, N., Khademi, H., and Fluhler, H. 2005. Continuous soil pollution mapping
using fuzzy logic and spatial interpolation. Geoderma 124: 223–233.
Anile, M. A., Furno, P., Gallo, G., and Massolo, A. 2003. A fuzzy approach to visibility maps creation over
digital terrains. Fuzzy Sets and Systems 135: 63–80.
Aqil, M., Kita, I., Yano, A., and Nishiyama, S. 2007. Analysis and prediction of flow from local source in a river
basin using a neuro-fuzzy modeling tool. Journal of Environmental Management 85: 215–223.
Arnot, C. and Fisher, P. 2007. Mapping the ecotone with fuzzy sets. In Geographic Uncertainty in Environmental
Security, eds. A. Morris and S. Kokhan, pp. 19–32. Dordrecht, the Netherlands: Springer.
Arrell, K. E., Fisher, P. F., Tate, N. J., and Bastin, L. 2007. A fuzzy c-means classification of elevation derivatives
to extract the morphometric classification of landforms in Snowdonia, Wales. Computer & Geosciences
33: 1366–1381.
Bailey, D., Goonetilleke, A., and Campell, D. 2003. A new fuzzy multicriteria decision analysis. Journal of
Multi-Criteria Decision Analysis 29: 337–347.
Ban, H. and Ahlqvist, O. 2009. Representing and negotiating uncertain geospatial concepts—Where are the
exurban areas? Computers, Environment, and Urban Systems 33: 233–246.
Banai, R. 1993. Fuzziness in Geographical Information Systems: Contributions from the analytic hierarchy
process. International Journal of Geographical Information Systems 7: 315–329.
Bellman, R. E. and Zadeh, L. A. 1970. Decision-making in a fuzzy environment. Management Science 17:
141–164.
Bezdek, J. C. 1973. Cluster validity with fuzzy sets. Journal of Cybernetics 3: 58–73.
Bezdek, J. C. 1981. Pattern Recognition with Fuzzy Objective Function Algorithms. New York: Plenum Press.
Bezdek, J. C., Ehrlich, R., and Full, W. 1984. FCM: The fuzzy c-means clustering algorithm. Computers &
Geosciences 10: 191–203.
Bjorke, J. T. 2004. Topological relations between fuzzy regions: Derivation of verbal terms. Fuzzy Sets and
Systems 141: 449–467.
Black, M. 1937. Vagueness: An exercise in logical analysis. Philosophy of Science 4: 427–455.
Bordogna, G., Ghisalberti, G., and Psaila, G. 2012. Geographic information retrieval: Modelling uncertainty of
user’s context. Fuzzy Sets and Systems 196: 105–124.
Bouchon, B. 1981. Fuzzy questionnaires. Fuzzy Sets and Systems 6: 1–9.
Bragato, G. 2004. Fuzzy continuous classification and spatial interpolation in conventional soil survey for soil
mapping of the lower Piave plain. Geoderma 118: 1–16.
Brandtberg, T. 2002. Individual tree-based species classification in high spatial resolution aerial images of
forests using fuzzy sets. Fuzzy Sets and Systems 132: 371–387.
Brown, D. G. 1998. Mapping historical forest types in Baraga County Michigan, USA as fuzzy sets. Plant
Ecology 134: 97–118.
Burrough, P. A. 1989. Fuzzy mathematical methods for soil survey and land evaluation. Journal of Soil Science
40: 477–492.
Burrough, P. A. 1992. Are GIS data structures too simple minded? Computers & Geosciences 18: 395–400.
Burrough, P. A., MacMillan, R. A., and van Deursen, W. 1992. Fuzzy classification methods for determining
land suitability from soil profile observations and topography. Journal of Soil Science 43: 193–210.
Burrough, P. A., Wilson, J. P., van Gaans, P. F. M., and Hansen, A. J. 2001. Fuzzy k-means classification of
topo-climatic data as an aid to forest mapping in the Greater Yellowstone Area, USA. Landscape Ecology
16: 523–546.
Cobb, M., Petry, F., and Robinson, V. 2000. Preface: Uncertainty in geographic information systems and spatial
data. Fuzzy Sets and Systems 113: 1.
Dale, M. B. 1988. Some fuzzy approaches to phytosociology: Ideals and instances. Folia Geobotanica et
Phytotaxonomica 23: 239–274.
Davidson, D. A., Theocharopoulos, S. P., and Bloksma, R. J. 1994. A land evaluation project in Greece using
GIS and based on Boolean fuzzy set methodologies. International Journal of Geographical Information
Systems 8: 369–384.
302 GeoComputation

DeGenst, A., Canters, F., and Gulink, H. 2001. Uncertainty modeling in buffer operations applied to connectiv-
ity analysis. Transactions in GIS 5: 305–326.
Deng, Y. X., Wilson, J. P., and Sheng, J. 2006. Effects of variable attribute weights on landform classification.
Earth Surface Processes and Landforms 31: 1452–1462.
Didelon, C., de Ruffray, S., Boquet, M., and Lambert, N. 2011. A world of interstices: A fuzzy logic approach
to the analysis of interpretative maps. Cartographic Journal 48: 100–107.
Dilo, A., de By, R. A., and Stein, A. 2007. A system of types and operators for handling vague objects.
International Journal of Geographical Information Science 21: 397–426.
Dunn, J. C. 1973. A fuzzy relative of the ISODATA process and its use in detecting compact well-separated
clusters. Journal of Cybernetics 3: 32–57.
Eastman, J. R., Jin, W., Kyem, A. K., and Toledano, J. 1995. Raster procedures for multi-criteria/multi-objective
decisions. Photogrammetric Engineering and Remote Sensing 61: 539–547.
Ebdon, D. 1985. Statistics in Geography. Oxford, U.K.: Blackwell.
Egenhofer, M. J. and Franzosa, R. D. 1991. Point-set topological spatial relations. International Journal of
Geographical Information Systems 5: 161–174.
Fisher, P. and Arnot, C. 2007. Mapping type-2 change in fuzzy land cover. In Geographic Uncertainty in
Environmental Security, eds. A. Morris and S. Kokhan, pp. 167–186. Dordrecht, the Netherlands:
Springer.
Fisher, P., Cheng, T., and Wood, J. 2007a. Higher order vagueness in geographical information: Empirical
geographical population of type n fuzzy sets. Geoinformatica 11: 311–330.
Fisher, P. F. 1994. Probable and Fuzzy concepts of the uncertain viewshed. In Innovations in GIS 1, ed.
M. Worboys, pp. 161–175. London, U.K.: Taylor & Francis Group.
Fisher, P. F. 2000. Fuzzy modelling. In Geocomputation, eds. S. Openshaw and R. Abrahart, pp. 161–186.
London, U.K.: Taylor & Francis Group.
Fisher, P. F. 2010. Remote sensing of land cover classes as type 2 fuzzy sets. Remote Sensing of Environment
114: 309–321.
Fisher, P. F., Arnot, C., Wadsworth, R., and Wellens, J. 2006. Detecting change in vague interpretations of
landscapes. Ecological Informatics 1: 163–178.
Fisher, P. F. and Wood, J. 1998. What is a mountain? or the Englishman who went up a Boolean geographical
concept but realised it was Fuzzy. Geography 83(3): 247–256.
Fisher, P. F., Wood, J., and Cheng, T. 2004. Where is Helvellyn? Multiscale morphometry and the mountains of
the English Lake District. Transactions of the Institute of British Geographers 29: 106–128.
Fisher, P. F., Wood, J., and Cheng, T. 2007b. Higher order vagueness in a dynamic landscape: Multi-resolution
morphometric analysis of a coastal dunefield. Journal of Environmental Informatics 9: 56–70.
Fotheringham, A. S. and Rogerson, P. A. 2009. The SAGE Handbook of Spatial Analysis. Thousand Oaks, CA:
SAGE Publications.
Fritz, S., Carver, S., and See, L. 2000. New GIS approaches to wild land mapping in Europe. In Wilderness
Science in a Time of Change Conference—Volume 2: Wilderness within the Context of Larger Systems,
eds. S. F. McCool and D. N. Cole, pp. 120–127. Missoula, MT: University of Montana.
Gale, S. 1972. Inexactness fuzzy sets and the foundation of behavioral geography. Geographical Analysis 4:
337–349.
Graniero, P. A. and Robinson, V. B. 2006. A probe mechanism to couple spatially explicit agents and land-
scape models in an integrated modelling framework. International Journal of Geographical Information
Science 20: 965–990.
Haack, S. 1974. Deviant Logic, Fuzzy Logic. Cambridge, U.K.: Cambridge University Press.
Hanna, A., Lotfallah, W., and Lee, M. 2002. Statistical-fuzzy approach to quantify cumulative impact of change
orders. Journal of Computing in Civil Engineering 16: 252–258.
Harris, R. and Jarvis, C. 2011. Statistics in Geography and Environmental Science. Harlow, U.K.: Prentice-Hall.
Harvey, D. W. 1969. Explanation in Geography. London, U.K.: Arnold.
Irvin, B. J., Ventura, S. J., and Slater, B. K. 1997. Fuzzy and isodata classification of landform elements from
digital terrain data in Pleasant Valley, Wisconsin. Geoderma 77: 137–154.
Jang, J.-S. R. 1993. ANFIS: Adaptive-network-based fuzzy inference system. IEEE Transactions on Systems,
Man and Cybernetics 23: 665–685.
Johnson, R. J. 1978. Multivariate Statistical Analysis in Geography. London, U.K.: Longman.
Kahraman, C., Ruan, D., and Dogan, I. 2003. Fuzzy group decision-making for facility location selection.
Information Sciences 157: 135–153.
Kaplan, A. and Schott, H. F. 1951. A calculus for empirical classes. Methodos 3: 165–188.
Fuzzy Modelling 303

Kent, M., Moyeed, R. A., Reid, C. L., Pakeman, R., and Weaver, R. E. 2006. Geostatistics, spatial rate of change
analysis and boundary detection in plant ecology and biogeography. Progress in Physical Geography 30:
201–231.
Klir, G. J. and Yuan, B. 1995. Fuzzy Sets and Fuzzy Logic: Theory and Applications. Englewood Cliff, NJ:
Prentice Hall.
Kosko, B. 1990. Fuzziness vs probability. International Journal of General Systems 17: 211–240.
Kosko, B. 1993. Fuzzy Thinking: The New Science of Fuzzy Logic. New York: Hyperion.
Kuo, R. J., Chi, S. C., and Kao, S. S. 2003. A decision support system for selecting convenience store location
through integration of fuzzy AHP and artificial neural network. Computers in Industry 47: 199–214.
Lagacherie, P., Andrieux, P., and Bouzigues, R. 1996. The soil boundaries: From reality to coding in GIS. In
Spatial Conceptual Models for Geographic Objects with Undetermined Boundaries, eds. P. A. Burrough
and A. Frank, pp. 275–286. London, U.K.: Taylor & Francis Group.
Langford, M. 1993. Getting Started with GIS. Leicester, U.K.: Department of Geography, University of
Leicester.
Laviolette, M. and Seaman, J. W. 1994. The efficacy of fuzzy representations of uncertainty. IEEE Transactions
on Fuzzy Systems 2: 4–15.
Leung, Y. C. 1979. Locational choice: A fuzzy set approach. Geographical Bulletin 15: 28–34.
Leung, Y. C. 1987. On the imprecision of boundaries. Geographical Analysis 19: 125–151.
Leung, Y. C. 1988. Spatial Analysis and Planning under Imprecision. New York: Elsevier.
Lewis, M. W. and Wigen, K. E. 1997. The Myth of Continents: A Critique of Metageography. Berkeley, CA:
University of California Press.
Liew, A. W. C., Leung, S. H., and Lau, W. H. 2000. Fuzzy image clustering incorporating spatial continuity.
IEEE Proceedings—Vision, Image and Signal Processing 147: 185–192.
Lin, J.-J., Feng, C.-M., and Hu, Y.-Y. 2006. Shifts in activity centers along the corridor of the Blue subway line
in Taipei. Journal of Urban Planning and Development 132: 22–28.
Lodwick, W. A. 2008. Fuzzy Surfaces in GIS and Geographical Analysis: Theory, Analytical Methods,
Algorithms, and Applications. Boca Raton, FL: CRC Press.
Mackay, D. S., Samanta, S., Ahl, D. E., Ewers, B. E., Gower, S. T., and Burrows, S. N. 2003. Automated param-
eterization of land surface process models using fuzzy logic. Transactions in GIS 7: 139–153.
MacMillan, R. A., Martin, T. C., Earle, T. J., and McNabb, D. H. 2003. Automated analysis and classification
of landforms using high-resolution digital elevation data: Applications and issues. Canadian Journal of
Remote Sensing 29(5): 592–606.
McBratney, A. B. and De Gruijter, J. J. 1992. A continuum approach to soil classification by modified fuzzy
k-means with extragrades. Journal of Soil Science 43: 159–175.
McBratney, A. B. and Odeh, I. O. A. 1997. Application of fuzzy sets in soil science: Fuzzy logic, fuzzy mea-
surements and fuzzy decisions. Geoderma 77: 85–113.
Mendel J. M. and John, R. I. B. 2002. Type-2 fuzzy sets made simple. IEEE Transactions on Fuzzy Systems
10(2): 117–127.
Monger, C. 1995. The Englishman Who Went Up a Hill but Came Down a Mountain. London, U.K.: Corgi
Books.
Moraczewski, I. R. 1993a. Fuzzy logic for phytosociology 1: Syntaxa as vague concepts. Vegetatio 106: 1–11.
Moraczewski, I. R. 1993b. Fuzzy logic for phytosociology 2: Generalization and prediction. Vegetatio 106:
13–20.
Morris, A. and Kokhan, S. 2007. Geographic Uncertainty in Environmental Security. Dordrecht, the
Netherlands: Springer.
Odeh, I. O. A., McBratney, A. B., and Chittleborough, D. J. 1990. Design and optimal sample spacings for map-
ping soil using fuzzy k-means and regionalized variable theory. Geoderma 47: 93–122.
Pawlak, Z. 1994. Hard and soft sets. In Rough Sets, Fuzzy Sets and Knowledge Discovery, ed. W. P. Ziarko,
pp. 130–135. Berlin, Germany: Springer.
Peakbagger.com. 2012. Welcome to Peakbagger.com! Accessed March 5, 2013.
Peschel, J. M., Lacey, R. E., Haan, P. K., and Kreuter, U. P. 2002. Quantifying land cover features of the Sabinal
River watershed Using ANFIS. Eos Transactions, AGU, 83(47), Fall Meet. Suppl., Abstract H22D-0918.
Petry, F. E., Robinson, V. B., and Cobb, M. A. 2005. Fuzzy Modeling with Spatial Information for Geographic
Problems. Berlin, Germany: Springer.
Pham, D. L. 2001. Spatial models for fuzzy clustering. Computer Vision and Image Understanding 84: 285–297.
Pipkin, J. S. 1978. Fuzzy sets and spatial choice. Annals of the Association of American Geographers 68:
196–204.
304 GeoComputation

Ponsard, C. 1977. Hierarchie des places centrales et graphes psi-flous. Environment and Planning A 9:
1233–1252.
Powell, B., McBratney, A. B., and Macloed, D. A. 1991. The application of ordination and fuzzy classifica-
tion techniques to field pedology and soil stratigraphy in the Lockyer Valley, Queensland. Catena 18:
409–420.
Roberts, D. W. 1986. Ordination on the basis of fuzzy set theory. Vegetatio 66: 123–131.
Roberts, D. W. 1989. Fuzzy systems vegetation theory. Vegetatio 83: 71–80.
Robinson, V. B. 1988. Some implications of fuzzy set theory applied to geographic databases. Computers,
Environment and Urban Systems 12: 89–98.
Robinson, V. B. 2000. Individual and multipersonal fuzzy spatial relations acquired using human–machine
interaction. Fuzzy Sets and Systems 113: 133–145.
Robinson, V. B. 2003. A perspective on the fundamentals of fuzzy sets and their use in geographic information
systems. Transactions in GIS 7: 3–30.
Robinson, V. B. 2008. Fuzzy classification and mapping. In The Handbook of Geographical Information
Science, eds. J. P. Wilson and A. S. Fotheringham, pp. 259–272. London, U.K.: Blackwell.
Robinson, V. B. 2009. Fuzzy sets in spatial analysis. In The SAGE Handbook of Spatial Analysis, eds.
A. S. Fotheringham and P. A. Rogerson, pp. 225–242. London, U.K.: Sage.
Robinson, V. B. and Graniero, P. A. 2005a. Spatially explicit individual-based ecological modelling with mobile
fuzzy agents. In Fuzzy Modelling with Spatial Information for Geographic Problems, eds. F. Petry,
V. B. Robinson, and M. Cobb, pp. 299–334. Heidelberg, Germany: Springer.
Robinson, V. B. and Graniero, P. A. 2005b. An object-oriented approach to managing fuzziness in spatially
explicit ecological models coupled to a geographic database. In Advances in Fuzzy Object-Oriented
Databases: Modelling and Applications, ed. Z. Ma, pp. 269–300. Hershey, PA: Idea Publishing Group.
Robinson, V. B., Petry, F. E., and Cobb, M. A. 2003. Special issue on incorporating fuzzy sets in geographic
information systems. Transactions in GIS 7: 1.
Robinson, V. B. and Strahler, A. H. 1984. Issues in designing geographic information systems under conditions
of inexactness. In Proceedings of the 10th International Symposium on Machine Processing of Remotely
Sensed Data, pp. 198–204. Lafayette, LA: Purdue University.
Russell, B. 1923. Vagueness. Australian Journal of Philosophy 1: 84–92.
Saaty, T. L. 1980. The Analytical Hierarchy Process. New York: McGraw-Hill.
Sainsbury, R. M. 1989. What is a vague object? Analysis 49: 99–103.
Sainsbury, R. M. 1995. Paradoxes, 2nd edn. Cambridge, U.K.: University Press.
Schaefer, J. A., Veitch, A. M., Harrington, G. H., Brown, W. K., Theberge, J. B., and Luttich, S. N. 2001. Fuzzy
structure and spatial dynamics of a declining woodland caribou population. Oecologia 126: 507–514.
Smith, B. 2001. Fiat objects. Topoi 20: 131–148.
Smith, B. and Varzi, A. C. 1997. Spatial information theory a theoretical basis for GIS. Lecture Notes in
Computer Science 1329: 103–119.
Sui, D. Z. 1992. A fuzzy GIS modeling approach for urban land evaluation. Computers, Environment and
Urban Systems 16: 101–115.
Tague, C. L. and Band, L. 2004. RHESSys: Regional hydro-ecologic simulation system—An object-oriented
approach to spatially distributed modeling of carbon, water, and nutrient cycling. Earth Interactions
8(19): 1–42.
Taylor, P. J. and Derudder, B. 2004. Porous Europe: European cities in global urban arenas. Tijdschrift voor
economische en sociale geografie 95: 527–538.
Teng, C. H. and Fairbairn, D. 2002. Comparing expert systems and neural fuzzy systems for object recognition
in map dataset revision. International Journal of Remote Sensing 23: 555–567.
Thole, U., Zimmermann, H.-J., and Zysno, P. 1979. On the suitability of minimum and product operators for
the intersection of fuzzy sets. Fuzzy Sets and Systems 2: 167–180.
Triantafilis, J., Ward, W. T., Odeh, I. O. A., and McBratney, A. B. 2001. Creation and interpolation of continu-
ous soil layer classes in the lower Naomi Valley. Soil Science Society of America Journal 65(2): 403–413.
Varzi, A. C. 2001a. Philosophical issues in geography—An introduction. Topoi 20: 119–130.
Varzi, A. C. 2001b. Vagueness in geography. Philosophy & Geography 4: 49–65.
Verkuilen, J. 2005. Assigning membership in a fuzzy set analysis. Sociological Methods and Research 33:
462–496.
Verstraete, J., De Tre, G., De Caluwe, R., and Hallez, A. 2005. Field based methods for the modelling of fuzzy
spatial data. In Fuzzy Modeling with Spatial Information for Geographic Problems, eds. F. E. Petry,
V. B. Robinson, and M. A. Cobb, pp. 41–70. Berlin, Germany: Springer.
Fuzzy Modelling 305

Wanek, D. 2003. Fuzzy spatial analysis techniques in a business GIS environment. In Proceedings of the
Congress of the European Regional Science Association, Jyväskylä, Finland, http://www.jyu.fi/ersa2003/
cdrom/papers/177.pdf. 14/02/2014
Wang, F. and Hall, G. B. 1996. Fuzzy representation of geographical boundaries. International Journal of
Geographical Information Systems 10: 573–590.
Wang, F., Hall, G. B., and Subaryono. 1990. Fuzzy information representation and processing in conventional
GIS software: Database design and application. International Journal of Geographical Information
Systems 4: 261–283.
Wang, W. and Zhang, Y. 2007. On fuzzy cluster validity indices. Fuzzy Sets and Systems 158: 2095–2117.
Williamson, T. 1994. Vagueness. London, U.K.: Routledge.
Wilson, J. P. and Fotheringham, A. S. (editors). 2008. The Handbook of Geographic Information Science.
London, U.K.: Blackwell Publishing.
Yanar, T. A. and Akyurek, Z. 2006. The enhancement of the cell-based GIS analyses with fuzzy processing
capabilities. Information Sciences 176: 1067–1085.
Zadeh, L. A. 1965. Fuzzy sets. Information and Control 8: 338–353.
Zadeh, L. A. 1975. The concept of a linguistic variable and its application to approximate reasoning—1.
Information Sciences 8: 199–249.
Zadeh, L. A. 1980. Fuzzy sets versus probability. Proceedings of the IEEE 68: 421.
Zeng, T. Q. and Zhou, Q. 2001. Optimal spatial decision making using GIS: A prototype of a real estate geo-
graphical information system (REGIS). International Journal of Geographical Information Science 15:
307–321.
Zhan, F. B. and Lin, H. 2003. Overlay of two simple polygons with indeterminate boundaries. Transactions in
GIS 7: 67–81.
Zhu, A. 1999. A personal construct-based knowledge acquisition process for natural resource mapping.
International Journal of Geographical Information Science 13: 119–141.
Zimmermann, H.-J. 2010. Fuzzy set theory. Wiley Interdisciplinary Reviews: Computational Statistics 2(3):
317–332.
13 Neurocomputing for
GeoComputation
Manfred M. Fischer and Robert J. Abrahart

CONTENTS
Abstract...........................................................................................................................................307
13.1 Introduction...........................................................................................................................308
13.2 What Is a Computational Neural Network?..........................................................................308
13.2.1 Pattern Classification.................................................................................................309
13.2.2 Clustering/Categorisation..........................................................................................309
13.2.3 Function Approximation............................................................................................ 310
13.2.4 Prediction/Forecasting............................................................................................... 310
13.2.5 Optimisation.............................................................................................................. 310
13.3 How Do Computational Neural Networks Work?................................................................. 311
13.4 Characteristics of the Processing Elements........................................................................... 312
13.5 Network Topologies............................................................................................................... 314
13.6 Learning in a Computational Neural Network...................................................................... 315
13.7 Classification of Computational Neural Networks................................................................ 317
13.7.1 Backpropagation CNN.............................................................................................. 317
13.7.2 Radial Basis Function CNN...................................................................................... 318
13.7.3 ART Network............................................................................................................ 319
13.7.4 Self-Organising Feature Map.................................................................................... 320
13.8 Advantages, Application Domains and Examples................................................................ 321
13.8.1 Advantages................................................................................................................. 321
13.8.2 Application Domains................................................................................................. 322
13.8.3 Examples.................................................................................................................... 322
13.9 Conclusions and Outlook....................................................................................................... 324
References....................................................................................................................................... 324

ABSTRACT
This chapter provides an introduction to computational neural networks (CNNs), which are parallel
distributed information structures that can be used to carry out pattern classification, clustering,
function approximation and optimisation. An overview is presented of how CNNs function includ-
ing a description of the network processing elements (PEs) and the different network topologies
and how CNNs learn. A classification of CNNs into different types is then provided followed by a
discussion of the advantages of these tools and their application domains. The chapter concludes
with two examples to demonstrate their use in two diverse areas: one on using CNNs to model
interregional telecommunication traffic flows in Austria and the other on comparing three neural
classifiers of Landsat imagery for Vienna.

307
308 GeoComputation

13.1 INTRODUCTION
Neurocomputing is an emergent technology concerned with information processing systems that
autonomously develop operational capabilities in adaptive response to an information environment.
The principal information processing structures of interest in neurocomputing are computational
neural networks (CNNs). There are other classes of adaptive information systems such as genetic
learning systems, fuzzy learning systems and simulated annealing systems. Several features distin-
guish this approach to information processing from algorithmic and rule-based information systems
(see Fischer 1995):

1. Information processing is performed in parallel. Large-scale parallelism can produce a


significant increase in the speed of information processing (inherent parallelism).
2. Knowledge is not encoded in symbolic structures but rather in patterns of numerical
strength associated with the connections that exist between the processing elements (PEs)
of the system (connectionist type of knowledge representation) (Smolensky 1988).
3. Neural networks offer fault-tolerant solutions. These tools are able to learn from and make
decisions based on incomplete, noisy and fuzzy information.
4. Neurocomputing does not require algorithms or rule development and will often produce
a significant reduction in the quantities of software that need to be developed.

This alternative approach to information processing offers great potential for tackling difficult prob-
lems, especially in those areas of pattern recognition and exploratory data analysis for which the
algorithms and rules are not known, or where they might be known, but the software to implement
them would be too expensive or too time-consuming to develop. Indeed, with a neurocomputing
solution, the only bespoke software that would need to be developed will in most instances be for
relatively straightforward operations such as data pre-processing, data file input, data post-process-
ing and data file output. CASE (computer-aided software engineering) tools could be used to build
the appropriate routine software modules (Hecht-Nielsen 1990).

13.2  WHAT IS A COMPUTATIONAL NEURAL NETWORK?


Briefly stated, a CNN is a parallel distributed information structure consisting of a set of adaptive
processing (computational) elements and a set of unidirectional data connections. These networks
are neural in the sense that they have been inspired by neuroscience. No claim is made to them
being faithful models of biological or cognitive neural phenomena. In fact, the computational net-
works that are covered in this chapter have more in common with traditional mathematical and/
or statistical models, such as non-parametric pattern classifiers, statistical regression models and
clustering algorithms, than they do with neurobiological models.
The term CNN is used to emphasise rather than to ignore the difference between computational
and artificial intelligence (AI). Ignoring this difference might lead to confusion, misunderstanding
and misuse of neural network models in GeoComputation (GC). Computational intelligence (CI)
denotes the lowest level of intelligence which stems from the fact that computers are able to process
numerical (low-level) data without using knowledge in the AI sense. An AI system, in contrast, is
a CI system where added value comes from incorporating knowledge that humans possess – in the
form of non-numerical information, operational rules or constraints. Neural network implementa-
tions in the form of feedforward pattern classifiers and function approximators, which are consid-
ered at a later point, are therefore CI rather than AI systems.
Increased effort is now being made to investigate the potential benefits of neural network
analysis and modelling in various areas of GC. In particular, these computational devices would
appear to offer several important advantages that could be exploited, over and above those associ-
ated with what is now becoming known as the traditional approach to geographical information
Neurocomputing for GeoComputation 309

processing. The strongest appeal of CNNs is their suitability for machine learning (i.e. compu-
tational adaptivity). Machine learning in CNNs consists of adjusting the connection weights to
improve the overall performance of a model. This is a very simple and pleasing formulation of
the learning problem. The speed of computation is another key attraction. In traditional single
processor Von Neumann computers, the speed of the machine is limited by the propagation delay
of the transistors.
However, with their intrinsic parallel distributed processing structure, CNNs can perform com-
putations at a much higher rate, especially when implemented on a parallel digital computer or,
ultimately, when implemented in customised hardware such as dedicated neurocomputing chips.
The rapid speed at which these tools can work enables them to become ideal candidates for use
in real-time applications, involving, for example, pattern recognition within data-rich geographic
information system (GIS) and remote sensing environments. It is also clear that the ever-increasing
availability of parallel hardware and virtual parallel machines, coupled with the spatial data explo-
sion, will enhance the attractiveness of CNNs (or other parallel tools) for GC. The non-linear nature
of CNNs also enables them to perform function approximation and pattern classification operations
that are well beyond the reach of optimal linear techniques. These tools therefore offer greater rep-
resentational flexibilities and total freedom from linear model design. CNNs are also considered to
be semi- or non-parametric devices that require little or no assumptions to be made about the form
of underlying population distributions – in strong contrast to conventional statistical models. One
other important feature is the robust behaviour of CNNs when faced with incomplete, noisy and
fuzzy information. Noise, in this instance, refers to the probabilistic introduction of errors into data.
This is an important aspect of most real-world applications and neural networks can be especially
good at handling troublesome data in a reasonable manner.
CNNs have massive potential and have been applied with much success in numerous diverse
areas of geographical data analysis and environmental modelling to solve problems of various kinds
(see Fischer 1998). These are described in more detail in the following.

13.2.1  Pattern Classification


The task of pattern classification is to assign an input pattern represented by a feature vector to
one of several pre-specified class groups. Well-known applications would include spectral pattern
recognition where pixel-by-pixel information obtained from multispectral images is utilised for the
classification of pixels (image resolution cells) into given a priori land cover categories. However, as
the complexities of the data grow (e.g. more spectral bands from satellite scanners, higher levels of
greyscaling or finer pixel resolutions), together with the increasing trend for additional information
from alternative sources to be incorporated (e.g. digital terrain models), then so too does our need for
more powerful pattern classification tools. There is now a considerable literature on the use of CNNs
for pattern classification, particularly in relation to remote sensing, for example, Civco (1993), Foody
(1995), Miller et al. (1995), Gopal and Fischer (1997), Fischer and Staufer (1999), Tapiador and
Casanova (2003), Tatem et al. (2003), Brown et al. (2007), Wang and Xing (2008) and Tahir (2012).

13.2.2 Clustering/Categorisation
In clustering operations (also known as unsupervised pattern classification), there are no pre-spec-
ified, or known, class group labels attached to the training data. A clustering algorithm is used to
explore the data and to determine inherent similarities that exist between the various patterns that
make up the data set. Each item is then identified as belonging to a cluster of similar patterns. Well-
known clustering applications would include data mining, data compression and exploratory spatial
data analysis. Clustering has also been used to divide river flow data into different event types or
hydrograph behaviours using a self-organising map, where an event is taken to mean a short section
of a hydrograph. Feedforward neural networks were then used to develop different models on each
310 GeoComputation

subset of the data corresponding to these events which allowed each neural network to focus on a
particular behaviour (See and Openshaw 1999). Enormous pattern classification tasks, for exam-
ple, using census-based small area statistics for consumer behaviour discrimination, have however
proven to be difficult in unconstrained settings for conventional clustering algorithmic approaches –
even when using powerful computers (Openshaw and Wymer 1995). Unsupervised categorisation
methods have also been used to develop cartograms (Henriques et al. 2009), employed in carto-
graphic generalisation (Allouche and Moulin 2005; Sester 2005) and in classifying the environmen-
tal structure of landscapes (Bryan 2006).

13.2.3 Function Approximation
The task of function approximation is to create a generalised model of a known or unknown func-
tion. Suppose a set of n training patterns (input–output pairs) {(x1, y1), (x2, y2), …, (xn, yn)} have been
generated from an unknown function Φ(x) (subject to noise). Then the task of function approxima-
tion would be to find an estimate of that unknown function. Various spatial analysis problems require
function approximation (for more details, see Fischer 2006). Examples include spatial regression
and spatial interaction modelling (Openshaw 1993, 1998; Fischer and Gopal 1994; Openshaw 1998;
Fischer and Reggiani 2004) and modelling of the stage–discharge relationship for hydrological
purposes (Sudheer and Jain 2003; Goel 2011). Spatial interpolation would be another case in point,
for example,  the production of continuous surfaces from point data for subsequent use in hydrogeo-
logical applications (Rizzo and Dougherty 1994), the interpolation of temperature surfaces (Rigol
et al. 2001) and estimation of population distributions using ancillary data (Merwin et al. 2009).

13.2.4  Prediction/Forecasting
In mathematical terms, given a set of n samples {y(t1), y(t2), …, y(tn)} in a time sequence t1, t2, …, tn,
the task of prediction or forecasting is to estimate the sample y(t) at some future time (often tn + 1).
Time series prediction is an important task and can have a significant impact on decision-making
with respect to regional development and policymaking. A great deal of research in this area has
also been concentrated on attempts at simulating the rainfall–runoff transformation process and in
hydrological modelling more generally. A number of recent reviews have appeared that capture the
growing literature on the use of CNNs in this area, for example, Maier et al. (2010) and Abrahart
et al. (2010, 2012). Spatiotemporal modelling examples would include forecasting the spread of aids
in Ohio (Gould 1994) and predicting rainfall output generated from a space-time mathematical
model (Gholizadeh and Darand 2009). CNNs are also used extensively in transportation model-
ling for the prediction of traffic flows, travel times and accidents; see, for example, Srinivasan et al.
(2004), Van Hinsbergen et al. (2009), Akgüngör and Doğan (2009) and Chan et al. (2012).

13.2.5 Optimisation
A wide variety of problems in GC can be posed as (non-linear) spatial optimisation problems.
The goal of an optimisation algorithm is to find a solution that satisfies a set of constraints such
that an objective function is maximised or minimised. The travelling salesman problem (Favata
and Walker 1991; Henrique et al. 2008; Abdel-Moetty 2010) and the question of finding optimal
site locations (Benjamin et al. 1995; Guerrero et al. 2000; Kuo et al. 2002) are classic analytical
examples (both being of a nonpolynomial-complete nature) where neural networks can provide
solutions. In these cases, the solution will often depend on a number of factors or possibilities
which must all be examined and tested, with the enormous number of possible combinations
often rendering such problems insoluble using conventional methods of spatial analysis (Murnion
1996). Similar problems and constraints would also be associated with the optimisation of complex
computer simulation models. For example, neural networks have been used to determine optimal
Neurocomputing for GeoComputation 311

parameters in cellular automata urban growth models (Li and Yeh 2001, 2002; Wu 2002; Almeida
et al. 2008; Tayyebi et al. 2011).

13.3  HOW DO COMPUTATIONAL NEURAL NETWORKS WORK?


CNNs are not mysterious devices; these modern tools are in fact just simple (usually non-linear)
adaptive information processing structures. In mathematical terms, a CNN can be defined as a
directed graph which has the following properties (Fischer 1998):

1. A state level ui is associated with each node i.


2. A real-valued weight wij is associated with each edge ij between two nodes i and j that
specifies the strength of this link.
3. A real-valued bias θi is associated with each node i.
4. A (usually non-linear) transfer function ϕi [ui, wij , θi, (i ≠ j)] is defined for each node i
which determines the state of that node as a function of its bias, the weights on its incom-
ing links from other nodes and the different states of the j nodes that are connected to it via
these links.

There are a number of standard terms in use. The nodes are referred to as PEs or processing units.
The edges of the network are called connections. The connections function as a unidirectional con-
duction path (for signal or data flows) and transmit their information in a predetermined direction.
Each PE can have numerous incoming connections. These are called input connections and there
is no upper limit on their number. There is also no restriction on the number of output connections.
Each output connection carries an identical output signal which is the state, or activation level, of
that PE. The weights are termed connection parameters, and it is these items that are altered during
the training process and which in turn determine the overall behaviour of the CNN model.
A typical CNN architecture is shown in Figure 13.1. Circles are used to denote the PEs, which
are all linked with weighted connections, to form a network. The connections have arrows on them
which indicate the direction of the signal flow. The single output signal from each PE branches, or
fans out, and identical copies of the same signal are either distributed to other PEs or leave the net-
work altogether. The input that is presented to the network from the external world can be viewed

Input layer

Output layer

Hidden layer

Input
Output
signals
response

FIGURE 13.1  Basic configuration of a feedforward multilayered perceptron. (From Fischer, M.M. and
Abrahart, R.J., Neurocomputing–Tools for geographers, in GeoComputation, eds. Openshaw, S. and
Abrahart, R.J., pp. 192–221, Taylor & Francis, London, U.K., 2000.)
312 GeoComputation

as being a data array x = (x1, …, xn) ∈ ℜn (n-dimensional Euclidean space), and the output from
the network as being another data array y = (y1, …, ym) ∈ ℜm (m-dimensional Euclidean space with
m < n). In this notation, ℜn is the n-dimensional input space of real numbers with x being an ele-
ment of ℜn and ℜm is the m-dimensional output space of real numbers with y being an element of
ℜm. The CNN, when viewed in such a manner, can therefore be thought of as being just one simple
function Φ: ℜn →ℜm.
The PEs contain internal transfer functions, and it is the implementation of these functions, in
association with the weighted connections, which will in combination generate Φ: the so-called
network function.
CNNs can be differentiated according to the following criteria:

• Their node characteristics, that is, properties of the PEs


• Their network topologies, that is, pattern of connections between the PEs (also termed
network architecture)
• The method that is used to determine their connection weights (called learning rules,
learning algorithms, machine learning or network training)

13.4  CHARACTERISTICS OF THE PROCESSING ELEMENTS


Most notation in the field of neural networks is focused on the PEs, their chosen method of
arrangement into multiple layers and the weighted connections that exist between them. Figure 13.2
shows the internal workings of a generic PE. This is the basic PE that is associated with a CNN
and elements of this nature would be found occupying general (non-dedicated) positions within the
overall structure, that is, this PE (1) accepts inputs from other PEs and (2) sends its output signal
(activation) to other PEs. Those PEs that are not dedicated input or output units will maintain this
general form and function and thereby provide the fundamental non-linear computing capabilities
that exist within each CNN.
To make matters simple, and where there is no confusion, we shall use the notation ui to refer to
both the PE and the numerical activation (output) of that unit. Each element ui computes a single
(numerical) unit output or activation value. The input and output signal from the PEs can be in the
form of discrete numbers, usually taking on values {0, 1} or {–1, 0, 1}, or it can be in the form of
continuous values that will in most cases range between 0 and 1 or −1 and +1.
Figure 13.2 shows that the PE, ui, gets k input signals, u = {u1, …, uk} which all arrive via
the incoming connections that impinge on element ui. Note that the connected elements are

u0 = 1 wi0 = θi

u1 wil

vi
fi(.) i(.) ui = i(fi(u0,..., uk))

uk wik

Input vector Integrator Activation Output signal


function function

FIGURE 13.2  Generic PE ui. (From Fischer, M.M., Environ. Plann. A, 30(10), 1873, 1998.)
Neurocomputing for GeoComputation 313

indexed 1 through k and that k < i (where i is the total number of inputs). The corresponding
connection weights associated with edge ji between nodes j and i are wij (j = 1, …, k). It is important
to understand the manner in which the subscript of the connection weight wij is written. The first
subscript refers to the PE in question and the second subscript refers to the unit from which the
incoming connection originated from. The reverse of this notation is also used in the neural network
literature. We refer to the weights wi· = {wi1, …, wik} as the incoming weights for unit ui. To simplify
the notation, W is used for the vector wi·.
Positive weights indicate reinforcement, negative weights represent inhibition, and convention
dictates that for each PE, there is an extra input unit u 0 whose output is always +1. The correspond-
ing weight for this input wi0 is referred to as the bias θi for each unit i. The bias is otherwise treated
in the same manner as any other weight and its existence accounts for the difference between k and i
that was mentioned earlier. Thus, we can define the (k + 1) input vector

u = [1, u1, u2, …, uk]T (13.1)

where T means ‘the transpose of…’ (in this case, signifying a column, not a row vector) and,
correspondingly, we can define the (k + 1)-by-1 weight (also called connection weight or input
parameter) vector

W = [θ, wi1, …, wik]T (13.2)


where T again means ‘the transpose of…’ (and again signifying a column, not a row vector).
The basic operation that is performed within each PE is the computation of that unit’s activation or
output signal ui. This involves the implementation of a transfer function φi, which is itself composed
of two mathematical functions, an integrator function ƒi and an activation (or output) function i:

ui = φi(u) = i(fi(u)) (13.3)

Typically, the same transfer function is used for all processing units within each individual layer of
the CNN although this is not a fixed requirement.
The job of the integrator function ƒi  is to integrate the incoming activations from all other
units that are connected to the PE in question, together with the corresponding weights that have
been assigned to the various incoming connections to transform (reduce) the incoming multiple k
arguments into a single value (called net input or activation potential of the PE) termed vi. In most
but not all cases, ƒi is specified as the inner product of the vectors, u and W, as follows:

vi = ƒi (u) = u, W = ∑
j = 0,1,..., k
wiju j (13.4)

where W has to be predefined or learned during the training phase. In the basic case, the net
input to a PE is just the weighted sum of the separate inputs from each of the k connected units
plus the bias term wi0. Because of the individual multiple weighting process that is used to com-
pute vi, a degree of network tolerance for noise and missing data is automatic (Gallant 1993). The
bias term represents the offset from the origin of the k-dimensional Euclidean space ℜk  to the
hyperplane normal to W defined by ƒi. In other words, bias quantifies the amount of positive or
negative shift that is applied to the integrator function with respect to its zero marker in each PE.
This arrangement is called a first-order PE when ƒi is an affine (linear if wi0 = 0) function of its input
vector u = [u1, …, uk]T. Higher-order PEs will arise when more complicated functions are used for
specifying ƒi. For example, a second-order PE would be realised if ƒi was specified in a quadratic
form, say uT W u, in u. This might then be viewed as an alternative generalisation to that which was
considered in Equation 13.4.
The activation or output function denoted by i(ƒi(·)) defines the output of a processing unit in
terms of its total input vi. There are various possibilities with regard to the exact specification of i,
314 GeoComputation

but the most usual form comprises a non-linear, non-decreasing, bounded, piecewise, differentiable
function (fixed within finite asymptotic limits). With regard to computational overheads, it is also
desirable that its derivative should not be difficult to calculate.
If the input data are continuous and have values that range between 0 to +1, then the logistic
function is a common choice for i:

1
Fi (vi ) = (13.5)
1 + exp ( −βvi )

where β denotes the slope parameter which has to be chosen a priori. In the limit, as β approaches
infinity, the logistic function becomes a simple threshold function producing ones and zeros.

13.5  NETWORK TOPOLOGIES


In this section, we examine the pattern of the connections that exist between the PEs, often referred
to as the network architecture, and where it is possible to make a major distinction between

• Feedforward CNNs
• Recurrent CNNs

Feedforward CNNs comprise those architectural configurations in which the networks do not con-
tain directed cycles, that is, the flow of information all goes in one direction from the input nodes
(start) – via various intermediaries – to the output nodes (finish). There are no data feedback loops
whatsoever. It is often convenient to organise our arrangement of nodes within each feedforward
CNN into a number of distinct layers and to label each layer according to the following rule. We
define an L-layer feedforward network as being a CNN wherein the PEs are grouped into L + 1 lay-
ers (subsets) L 0, L1, …, L L such that if unit u in layer La is connected to unit ui in layer Lb, then a < b,
that is, the layers are numbered in ascending order in accordance with the direction of our data flow.
For a strict L-layer network, we would also require that the output links from the PEs in one layer
are only connected to units in the next layer, that is,  b = a + 1 (as opposed to a + 2, a + 3, etc.). All
units in layer L 0 are input units, all units in layers L1, …, L L are trainable PEs, and all units in layer
LL are also output devices.
Figure 13.3 comprises a pair of architectural diagrams and is intended to illustrate various fea-
tures concerning the basic layout of a multilayered feedforward CNN. Both networks have a single
hidden layer and can therefore be referred to as single-hidden-layer feedforward networks. The
shorthand notation for describing both such multilayered items would be to refer to them as 8:4:2
networks since, going from left to right, there are eight input nodes, four hidden PEs and two out-
put units. The CNN in Figure 13.3a is said to be fully connected in the sense that each and every
node in the network is connected to each and every node in the adjacent forward layer. If some of
the connections are missing from the network, then the network is said to be partially connected.
Figure 13.3b is an example of a partially connected CNN where the input nodes and PEs in the hid-
den layer are connected to a partial (limited) set of PEs in the immediate forward neighbourhood.
The set of localised nodes feeding an individual PE is said to constitute the receptive field of the
PE. Although the CNN in Figure 13.3b is noted to have an identical number of input nodes, hidden
units and output units to that of Figure 13.3a, the pattern of its connections nevertheless forms a
specialised structure. In real-world applications, when specialised structures of this nature are built
into the design of a feedforward CNN, it would be to reflect prior information about the problem
that has been targeted for analysis.
A recurrent (feedback) CNN distinguishes itself from a feedforward CNN in that it contains data
processing cycles (i.e. feedback connections or data processing loops). The data are not only fed
forward in the usual manner but can also be fed backward from output units to input units, from
Neurocomputing for GeoComputation 315

Layer of Layer of Layer of Layer of Layer of Layer of


input hidden output input hidden output
nodes PEs PEs nodes PEs PEs
(a) (b)

FIGURE 13.3  Feedforward CNN architectures with one hidden layer: (a) fully connected and (b) partially
connected. (From Fischer, M.M., Environ. Plann. A, 30(10), 1873, 1998.)

one hidden layer back to another or even from one node back to itself. The exact nature of each
full, or partial, recurrent structure will in these instances have a profound impact on the training
programme and learning capabilities of the CNN which, in turn, will affect its overall performance.
Moreover, in contrast to feedforward networks, the computational processing is not defined in a
unique manner according to a set of simple weighted connections because the temporal dimension
must now also be considered. When the output of a PE is fed back to the same element, we are
also dealing with a recursive computation that has no explicit halting condition. So, at a particular
instance in time, how do we tell if the fixed point of the recursive evaluation is the desired result
or just one of a set of intermediate computations? To help solve this problem, it is usual to assume
that each computation at each node will take a certain amount of time to process. If the arguments
for a PE have been transmitted at time t, then its output will be produced at time t + 1. A recursive
process can therefore be stopped after a certain number of steps and the last computed output taken
as the result of its recursive computation.

13.6  LEARNING IN A COMPUTATIONAL NEURAL NETWORK


In addition to the information processing characteristics associated with their individual elements
and between-network differences that arise from the use of alternative network topologies, the learn-
ing or training process forms another important distinguishing feature of CNNs. In the context of
CNN learning, the process of training is perhaps best viewed as being a (typically) local, stepwise,
steepest-gradient-based search procedure. It is operating within a multidimensional weight space
and is looking for a solution (i.e. an ideal set of weights) which optimises a pre-specified objective
function with or without constraints (using dedicated performance criterion to evaluate each model).
Learning is performed in a progressive manner and is in most cases accomplished using an adaptive
procedure referred to as the learning rule, training rule or (machine) learning algorithm.
Standard practice is to distinguish between two different types of learning situation:

1. Supervised learning problems


2. Unsupervised learning problems
316 GeoComputation

In supervised learning (also known as learning with a teacher or associative learning) for each
example or training pattern, there is an associated correct response (also termed teacher signal)
which is known to the CNN output units. In unsupervised learning, there are no pre-specified cor-
rect responses available against which the network can compare its output. Unsupervised learning
is typically based on some variation of Hebbian and/or competitive learning and in most cases
involves the clustering of – or detection of similarities among – unlabeled patterns within a given
training set. The intention in this instance is to optimise some form of comprehensive performance
function or evaluation criterion defined in terms of output activities related to the PEs within the
CNN. In each application, the weights and the outputs of the CNN are expected to converge to rep-
resentations that capture the statistical regularities of the training data.
A wide variety of different learning algorithms are now available for solving both supervised
and unsupervised learning problems, most of which have in fact been designed for specific net-
work architectures. Most of these learning algorithms, especially those intended for supervised
learning in feedforward networks, have their roots based in traditional function-minimisation
procedures that can be classified as being either local or global search heuristics (error minimi-
sation strategies). Learning algorithms are termed local if the computations needed to update
each weight in the CNN can be performed using information that is available on a local basis to
that specific weight. This requirement could, for example, be motivated by a desire to implement
learning algorithms in parallel hardware. Local minimisation algorithms (such as those based
on gradient-descent, conjugate-gradient and quasi-Newton methods) are fast but will often con-
verge to a local minimum (with increased chances of getting a sub-optimal solution). In contrast,
global minimisation algorithms, such as simulated annealing and evolutionary computation,
possess heuristic strategies that will enable them to escape from local minima. However, in all
such cases, these algorithms are weak in either one or other of these two alternatives, that is,
good local search procedures are associated with poor global searching and vice versa. To illus-
trate this point we can look at the use of gradient information. This knowledge is not just useful
but often of prime importance, in all local search procedures – yet such knowledge is not put
to good use in simulated annealing or evolutionary computation. In contrast, gradient-descent
algorithms, with numerous multistart possibilities, are prone to encountering local minima
and will thus often produce sub-optimal solutions, that is, these algorithms are weak in global
search. Designing more efficient algorithms for CNN learning is thus an active research topic
for neurocomputing specialists.
One critical issue for the successful application of a CNN concerns the complex relationship
that exists between learning (training) and generalisation. It is important to stress that the ultimate
goal of network training is not to learn an exact representation of the training data, but rather
to build a model of the underlying process(es) which generated that data, in order to achieve a
good generalisation (out-of-sample performance for the model). One simple method for optimising
the generalisation performance of a neural network model is to control its effective complexity,
with complexity in this case being measured in terms of the number of network parameters. This
problem of finding the optimal complexity for a neural network model – although often considered
crucial for a successful application – has until now been somewhat neglected in most CNN-based
GC applications.
In principle, there are three main approaches that can be used to control overfitting
(see Fischer 2005):

• Regularisation techniques, that is, adding an extra term to the error function that is designed
to penalise those mappings which are not smooth
• Pruning techniques, that is, start with an oversized network and remove inconsequential
links or nodes using automated procedures (e.g. Fischer et al. 1994; Abrahart et al. 1999)
• Cross-validation techniques to determine when to stop training, for example, the early
stopping heuristic that is demonstrated in Fischer and Gopal (1994)
Neurocomputing for GeoComputation 317

The point of best generalisation is determined from the trade-off between bias and variance associ-
ated with network output and is said to occur when the combination of bias and variance is mini-
mised. In the case of a feedforward CNN, it is possible to reduce both bias and variance in a
simultaneous manner – using a sequence of ever larger data sets, in association with a set of mod-
els that have ever greater complexities, to improve the generalisation performance of the neural
network solution. The generalisation performance that might be achieved is however still limited
according to the intrinsic noise of the data.

13.7  CLASSIFICATION OF COMPUTATIONAL NEURAL NETWORKS


A taxonomic classification of four important families of CNN models (backpropagation networks,
radial basis function [RBF] networks, supervised and unsupervised ART networks and self-orga-
nising feature maps) is presented in Figure 13.4. These particular types of CNN would appear to
be the most attractive tools for solving real-world spatial analysis and geographical data modelling
tasks. The classification has two levels: the first division is between networks with and without
directed cycles and the second division is between networks that are trained with and without super-
vision (see Fischer 1998).

13.7.1  Backpropagation CNN


Backpropagation CNNs have emerged as major workhorses in various areas of business and com-
merce and are the most common type of neural network that has been used in GeoComputation.
These tools can be used as universal function approximators for tasks such as spatial regression,
spatial interaction modelling, spatial site selection, pattern classification in data-rich environments
or space-time series analysis and prediction (Fischer and Gopal 1994; Fischer et al. 1994; Leung
1997; Openshaw 1998; Fischer and Reggiani 2004). In strict terms, however, backpropagation is a
technique that provides an efficient computational procedure for evaluating the derivatives of the
network’s performance function with respect to given network parameters and corresponds to a
propagation of errors backward through the network (hence the name). This technique was first
popularised by Rumelhart et al. (1986) and has since been used in countless applications. A brief
introduction to some basic mathematics associated with the backpropagation training algorithm can
be found in Clothiaux and Batchmann (1994).
In most cases, backpropagation training is used with multilayered feedforward networks (also
termed multilayered perceptrons) so it has become convenient to refer to this type of supervised

Classification Computational neural networks for real world geographical


dimension data analysis and modelling

Network
typology Feedforward Feedback

Training Supervised Unsupervised Supervised Unsupervised

Examples Backpropagation No examples Fuzzy ARTMAP Self-organizing map


radial basis function ART-1 and ART-2

FIGURE 13.4  A simple fourfold taxonomic classification of CNNs for geographical data analysis and
modelling. (From Fischer, M.M., Environ. Plann. A, 30(10), 1873, 1998.)
318 GeoComputation

feedforward network as a backpropagation network. Note, however, that other training options are
now being incorporated as integral components within existing software packages – although the
predominance of reported backpropagation applications over other training methods still shows
little or no sign of changing. Each backpropagation CNN will in most cases have the following
network, PE and learning properties:

Network properties A multilayered (typically single-hidden-layer) architecture.


PE properties Continuous inputs and outputs; continuous non-linear sigmoid-type PE transfer
functions, assuming values between 0 and 1 or −1 and +1, where evaluation of the
network proceeds according to PE ordering, and with each PE computing and posting
its new activation value before the next PE is examined, and output unit activations that
are interpreted as the outputs for the entire CNN.
Learning properties Training involves using the backpropagation technique in combination with, typically but
not necessarily, some form of gradient-descent-based learning algorithm.

Theoretical results have shown that single-hidden-layer feedforward networks are able to approxi-
mate arbitrary mappings arbitrarily well in the presence of noise and that major errors will only
start to arise if there are too few hidden nodes or if the relationship being modelled is insufficiently
deterministic (Hornik et al. 1989). But these same authors provided little more than general guid-
ance on how such operations could be implemented and what little guidance has been offered,
suggesting that network training will be hard in real-world applications. Moreover, there is now
some debate about this all embracing statement, and it has been suggested there might well be
some advantage in considering two hidden layers to provide an additional degree of representational
power (Openshaw and Openshaw 1997).

13.7.2 R adial Basis Function CNN


RBF networks are a special type of single-hidden-layer feedforward CNN in which the activation of
a hidden unit is determined by the distance between the input vector and a model vector (as opposed
to computing a non-linear function of the scalar product of the input vector and a weight vector).
The origins of these tools are based in exact interpolation methods that require all input vectors to
be mapped in an exact manner onto their corresponding target vector. With this particular form of
CNN, the transfer mechanism is an RBF located inside of each PE in the single hidden layer. Several
forms of basis have to date been considered but the most common form is still the Gaussian kernel:

 −( x − M )2 
f ( x ) = exp   (13.6)
 σ2 

where M and σ are two parameters representing the mean and standard deviation of the input variable
x. For a particular hidden unit, i, RBFi is located at a cluster centre ci in the associated n-dimensional
input space. The cluster centre ci is represented by the vector [w1i, …, wni] of connection weights
between the n input units and the hidden unit i. The standard deviation of this cluster defines the
range for RBFi. Note that RBF is monotonic – in contrast to the sigmoid function. With each argu-
ment, the transfer function in each hidden unit computes the Euclidean norm between the input
vector and the centre of the kernel which is our required measure of vector separation distance.
The kernel function is centred at a point which is specified according to the weight vector
associated with each PE and it is both the positions and widths of the individual kernels that must
be learned from the training patterns. In terms of function approximation, the hidden units thus
provide a set of functions that constitute a basis set for representing input patterns in the space that
is spanned by the hidden units. Each output unit in the output layer will in most cases implement a
Neurocomputing for GeoComputation 319

simple linear summation of the RBFs. A number of different learning algorithms can be used with
an RBF-CNN. The common algorithm utilises a hybrid learning mechanism that decouples learn-
ing at the hidden layer from that at the output layer. There are two phases. First, in the unsupervised
learning phase, RBF adjustment is implemented in the hidden units using statistical clustering.
This technique involves estimating kernel positions and kernel widths using, for example, a simple
k-means-based clustering algorithm. Second, in the supervised learning phase, adjustment of the
second layer of connections is implemented using linear regression or gradient-descent techniques.
This would involve determining the appropriate connection weights between units in the hidden and
the output layers using, for example, a least mean squares or backpropagation algorithm. Because
the output units are in most cases linear, the application of an initial non-iterative algorithm is
commonplace and often sufficient. However, if need be, a supervised gradient-based algorithm can
also be utilised in a further step to refine the connection parameters. A brief introduction to some
basic mathematics associated with RBF networks can be found in Bishop (2007).
It is worthwhile to note that RBF networks have fast convergence properties and do not suffer
from the problematic effects of local minima. However, when compared with standard backpropa-
gation networks, the training process could indeed be orders of magnitude faster. An important
disadvantage is the fact that RBF networks require more training data and more hidden units to
achieve the same levels of approximation.

13.7.3 ART Network
ART (adaptive resonance theory) networks differ from the two previous types of network in that
these networks are recurrent. Output from the individual PEs is not just fed forward from input
nodes to output nodes, but it is also fed backward, from output units to input units. ART provides
the basic principles and underlying concepts that are used in these networks (Grossberg 1976a,b).
ART networks were developed as possible models of cognitive phenomena in humans and ani-
mals and thus have more biological association than did our earlier examples. ART makes use of
two important items that are used in the analysis of brain behaviour: stability and plasticity. The
stability–plasticity dilemma concerns the power of a system to preserve the balance between retain-
ing previously learned patterns and learning new patterns.
In simple conceptual terms, an ART network contains two main layers of PEs: a top layer
(output-concept layer F2) and a bottom layer (input-feature layer F1). There are two sets of weighted
connections between each of the nodes in these two layers: top-down weights that represent learned
patterns (expectations) and bottom-up weights that represent a scheme through which the new inputs
can be accommodated. However, in more precise terms, each actual ART implementation could in
fact be disassembled into the following:

• An input processing field (F1-layer) consisting of two parts: the input portion with input
nodes and the interface portion (interconnections)
• A layer of linear units (F2-layer) representing prototype vectors whose outputs are acted
on during competitive learning, that is, the winner is the node with a weight vector that is
closest to the input vector (closest in a Euclidean distance sense)
• Various supplemental units for implementing a reset mechanism to control the degree of
matching for patterns that are to be placed in the same cluster

where the interface portion of the F1-layer combines signals from the input portion and the F2-layer,
for use in comparing input signals to the weight vector for the cluster that has been selected as a can-
didate for learning. Each individual unit in the F1-layer is connected to the F2-layer by feedforward
and feedback connections. Changes in the activations of the units and in their weights are governed
by coupled differential equations.
This type of CNN is in essence a clustering tool that is used for the automatic grouping of
unlabeled input vectors into several categories (clusters) such that each input is assigned a label
320 GeoComputation

corresponding to a unique cluster. ART networks use a simple method of representation wherein
each cluster is represented using the weight vector for an individual prototype unit. Similarities
drive the clustering process. Vectors that are grouped into the same cluster are similar which means
that associated input patterns are close to each other in terms of input space. If an input vector is
close to a prototype, then it is considered a member of the prototype’s cluster, with local differences
being attributed to unimportant features or to noise. When the input data and stored prototype are
sufficiently similar, then these two items are said to resonate (from which the name of this tech-
nique is obtained). It should be stressed that there is no set number of clusters – additional output
nodes (clusters) being created as and when needed. An important item in this implementation of the
stability–plasticity dilemma is the control of partial matching between new feature vectors and the
number of stored (learned) patterns that the system can tolerate. Indeed, any clustering algorithm
that does not have a pre-specified number of clusters, or does not in some manner limit the growth
of new clusters, must have some other mechanism or parameter for controlling cluster resolution and
for preventing excessive one-to-one mapping. Each ART network has a vigilance parameter (VP)
that is used for this purpose and which is explained in the next section.
The ART-1 learning algorithm has two major phases. In the first phase, input patterns are pre-
sented and activation values calculated for the output neurons. This defines the winning neuron. The
second phase calculates the mismatch between the input pattern and the current pattern associated
with the winning neuron. If the mismatch is below a threshold (VP), then the old pattern is updated
to accommodate the new one. But if the mismatch is above the threshold, then the procedure con-
tinues to look for a better existing concept-output unit or it will create a new concept-output unit.
ART networks will be stable for a finite set of training examples because even with additional
iterations, the final clusters will not change from those produced using the original set of training
examples. Thus, these tools possess incremental clustering capabilities and can handle an infinite
stream of input data. ART networks also do not require large memories for storing training data
because their cluster prototype units contain implicit representation of all previous input encoun-
ters. However, ART networks are sensitive to the presentation order of the training examples and
might produce different clusterings on the same input data when the presentation order of patterns is
varied. Similar effects are also present in incremental versions of traditional clustering techniques,
for example, k-means clustering is also sensitive to the initial selection of cluster centres.
Most ART networks are intended for unsupervised classification. The simplest of the ART
networks are ART-1 that uses discrete data (Carpenter and Grossberg 1987a) and ART-2 which
uses continuous data (Carpenter and Grossberg 1987b). A more recent addition to this collection
is a supervised version of ART-1 called ARTMAP (Carpenter et al. 1991). There is also fuzzy
ARTMAP, a generalisation of ARTMAP for continuous data, that was created with the replace-
ment ART-1 in ARTMAP with fuzzy ART (Carpenter et al. 1992). In this instance, fuzzy ART
synthesises fuzzy logic and ART by exploiting the formal similarities between (1) the computations
of fuzzy subsethood and (2) the dynamics of prototype choice, search and learning. This approach is
appealing because it provides an agreeable integration of clustering with supervised learning on the
one hand and fuzzy logic and ART on the other. A comparison of fuzzy ARTMAP with backpropa-
gation and maximum likelihood classification for a real-world spectral pattern recognition problem
is reported in Gopal and Fischer (1997).

13.7.4  Self-Organising Feature Map


Another important class of powerful recurrent CNNs are self-organising feature maps (otherwise
referred to as self-organising feature map [SOFM] networks or Kohonen networks). SOFM net-
works are used for vector quantisation and data analysis and these tools have been foremost and in
the main developed by Kohonen (1982, 1989). These quantitative mapping tools, which are at least
in part based on the structure of the mammalian brain, will, in addition to the classification process,
also attempt to preserve important topological relationships. Although the standard implementation
Neurocomputing for GeoComputation 321

of these tools is for unsupervised classification and feature extraction purposes, such items can also
be used as modelling tools, for example, where inputs are mapped onto a response surface in an
optimal manner (Openshaw and Openshaw 1997). However, a supervised SOFM is also available,
and one possible realisation of an appropriate training algorithm can be found in Kasabov (1996).
The underlying basis for such networks is rooted deep in vector quantisation theory, and their emer-
gence as an operational geographical tool has arisen from the spatial data explosion and our associ-
ated need for large-scale multidimensional data reduction capabilities. In simple conceptual terms,
an SOFM consists of two layers, an input layer and an output layer, called a feature map, which
represents the output vectors of the output space. The task of each SOFM is to map input vectors
from the input units onto the output units or feature map (which under normal circumstances takes
the form of a 1D or 2D array) and to perform this adaptive transformation in an ordered topological
fashion, such that topological relationships between the input vectors are preserved and represented
in the final product via the spatial distribution or pattern of unit activations. Thus, the more related
two vectors are in terms of input space, the closer will be the position of the two corresponding units
that represent these input patterns in the feature map. The overall idea then is to develop a topologi-
cal map of input vectors such that similar input vectors would trigger both their own units and other
similar units in proportion to their topological closeness. Thus, a global organisation of the units
and associated data is expected to emerge for the training programme.
In more detail, the essential characteristics of SOFM networks can be summarised as follows:

Network properties A two-layer architecture where the input layer is fully connected to the output layer
(Kohonen layer) and whose units are arranged in a 2D grid (map). The map units have
local interaction capabilities, which means that changes in the behaviour of one unit
will have a direct effect on the behaviour of other units in its immediate neighbourhood.
PE properties Each output unit is characterised by an n-dimensional weight vector and contains a
linear PE. Each feature map unit computes its net input on a linear basis and non-
linearities come into being when the selection is made as to which unit fires.
Learning properties Unsupervised learning in a network is the adaptive modification of the connection
weights associated with local interacting units in response to input excitations and in
accordance with a competitive learning rule (i.e. weight adjustment of the winning unit
and its neighbours). The weight adjustment of the neighbouring units is instrumental in
preserving the topological ordering of the input space.

SOFM networks can also be used for front-end pattern classification purposes or for other impor-
tant decision-making processes, for example, in cartographic generalisation (Allouche and Moulin
2005; Sester 2005). It is also possible to have output values from the feature map layer passed into
the hidden layer of a backpropagation network on a direct feed basis.

13.8  ADVANTAGES, APPLICATION DOMAINS AND EXAMPLES


13.8.1 Advantages
The attraction of CNN-based GC extends far beyond the high computation rates provided by mas-
sive parallelism, and the numerous advantages that are now on offer for us to exploit are perhaps
best considered under the following points (see Fischer 2005):

• Greater representational flexibilities and freedom from linear model design constraints
• Built-in network capabilities (via representation, training, etc.) to incorporate rather than to
ignore the special nature of spatial data
• Greater degrees of robustness, or fault tolerance, to deal with noisy data and missing or
fuzzy information
322 GeoComputation

• Efficient operational capabilities for dealing with large, ultra-large and massive spatial
data sets, together with the associated prospect of obtaining better results through being
able to process finer-resolution data or to perform real-time geographical analysis
• Built-in dynamic capabilities for adapting connection weights with changes in the sur-
rounding environment (dynamic learning)
• Good generalisation (out-of-sample performance) capabilities that work in a specific and,
in general terms, quite satisfying manner
• Potential improvements in the quality of results associated with a reduction in the number
of rigid assumptions and computational shortcuts that are otherwise introduced using con-
ventional methodologies and techniques

13.8.2 Application Domains
CNN models, in particular hidden-layered feedforward networks, together with their wide range
of different recognised learning techniques are now able to provide geographers with novel,
elegant and extremely valuable classes of mathematical tools – all based on sound theoretical
concepts – for geographical data analysis and modelling. Moreover, such tools are not intended
to be substitutes for traditional methods, but should instead be viewed as being non-linear exten-
sions to conventional statistical methods such as regression models, spatial interaction models,
linear discriminant functions, pattern recognition techniques and time series prediction tools
(Pao 1989; White 1989; Fischer and Gopal 1994; Fischer et al. 1994; Fischer 2013, 2014). Much
work has to date been done in what are now seen as being the two major domains wherein these
tools are most applicable:

• As universal function approximators in areas such as spatial regression, spatial interaction,


spatial site selection and space-time series modelling
• As pattern recognisers and classifiers, which function as intelligent aids and allow the user
to sift through copious amounts of digital data in a fast and efficient manner, to implement
multidimensional data reduction based on otherwise unknown properties and, where
possible, to find patterns of interest in data-rich environments, for example, census small
area statistics and high-resolution remote sensing images

Feedforward CNN networks, within a geographical analysis and modelling context, are often
implemented for complex function approximation purposes. A simple three-stage process has
therefore been proposed for the application of such tools and an illustration of this method is
provided in Fischer and Gopal (1994):

1. Identification of a candidate model from a range of multilayered feedforward CNN options


and specific types of non-linear PE (e.g. perceptron or RBF)
2. Estimation of network parameters for the selected CNN model and optimisation of model
complexities with respect to a given training set (using regularisation, network pruning or
cross validation)
3. Appropriate testing and evaluation of the final CNN model in terms of its generalisation
capabilities (out-of-sample performance)

13.8.3 Examples
In the following paragraphs, two different geographical examples are provided in order to give a
general impression of what is and is not possible with regard to CNN usage.
In the first example, Fischer and Gopal (1994) used a one-hidden-layer backpropagation
network, with sigmoidal PEs, to model interregional telecommunication traffic in Austria.
Neurocomputing for GeoComputation 323

This work involved using noisy, real-world, limited record data. An epoch-based stochastic steep-
est-gradient-descent algorithm (epoch size, 20 patterns) was used to minimise the least mean
square error function, and a random technique of cross validation was used to provide an early
stopping heuristic for optimisation of the model. Two performance measures, average relative
variance and coefficient of determination, were used to evaluate CNN performance against the
traditional regression approach of a gravity-type model, the latter forming what was considered
to be a statistical benchmark. The CNN solution can be viewed as a generalised non-linear spa-
tial regression model albeit of quite specific form. This model provided superior performance to
the current best practice which was doubtless in no small measure due to its more generalised
functional configuration. Openshaw (1993), in a similar manner, compared CNN spatial interac-
tion models with conventional entropy maximising models – with good results but neglecting to
address the overfitting problem.
In the second example, Fischer and associates (Fischer et al. 1997; Fischer and Gopal 1996;
Gopal and Fischer 1997) analysed the performance of three different neural classifiers that were
used to solve a pixel-by-pixel supervised classification problem working with spectral urban land
cover information from a Landsat-5 Thematic Mapper (TM) image for Vienna and its northern
surroundings:

• A pruned one-hidden-layer perceptron, with logistic hidden units, and softmax output
transformation
• A two-layer radial basis network, with Gaussian hidden units, and softmax output
transformation
• A fuzzy ARTMAP classifier

The results were compared with a Gaussian maximum likelihood classification which was taken to
represent best current practice. In supervised classification, individual pixels are assigned to various
class groups according to the spectral properties relating to a number of pre-specified training sites.
The problem of discriminating between urban land cover categories is challenging because urban
areas comprise a complex spatial assemblage of disparate land cover types, including built struc-
tures, numerous vegetation types, bare soil and water bodies – each of which has different spectral
reflectance characteristics. As a result, the classification of urban land cover represents a challeng-
ing problem, where current best practice tends to give poor relative performance.
The classifiers were all trained on TM bands 1–5 and 7. There were 1640 training pixels and
820 testing pixels. The 6D feature vectors (bands or channels) were used to discriminate between
eight pre-specified class groups: mixed grass and arable farmland, vineyards and areas with low
vegetation cover, asphalt and concrete surfaces, woodland and public gardens with trees, low-
density residential and industrial areas, densely built-up residential areas, water courses and stag-
nant water bodies. Individual classifier performance was assessed using standard measures such
as a confusion matrix, the map user’s classification, the map producer’s classification and the total
classification accuracies.
Fuzzy ARTMAP produced an outstanding out-of-sample classification result of 99.26% on the
testing data set. The error rate was less than 1/15 that of the two-hidden-layer perceptron, 1/20
that of the maximum likelihood classifier and 1/30 that of the RBF-CNN. An inspection of the
classification error matrices also revealed that the fuzzy ARTMAP classifier was better at accom-
modating a heterogeneous class label such as densely built-up residential areas even with smaller
numbers of training pixels. The maximum likelihood classifier experienced difficulties when deal-
ing with impure land cover signatures. It also took a long time to process the data which would
therefore create a major problem with large areas and in data-rich environments. Such problems
would also be exacerbated with the use of data from powerful multichannel satellite scanners such
as the 192-channel high-resolution infrared imaging spectrometer, or when working with multi-
temporal images, or when incorporating numerous ancillary GIS-related inputs.
324 GeoComputation

13.9  CONCLUSIONS AND OUTLOOK


CNNs provide much more than just a set of novel, useful or valuable data-driven mathematical tools.
Indeed, with respect to geographical data analysis and modelling tasks, they provide an appropriate
framework for re-engineering our well-established spatial analysis and environmental modelling
techniques to meet the new large-scale data processing needs associated with GIS and GC. The
application of CNN models to spatial data sets holds the potential for fundamental advances in
empirical understanding across a broad spectrum of geographical related fields. To realise these
advances, it is therefore important to adopt a principled rather than an ad hoc approach in which
spatial statistics and CNN modelling must work together. The most important challenges in the
coming years will be twofold:

• To develop geographical application domain specific methodologies that are relevant to


neurocomputing
• To gain deeper theoretical insights into the complex relationship that exists between
learning and generalisation – which is of critical importance for the success of real-world
applications

The mystique perceived by those outside the field can in part be attributed to the origins of CNN
systems in the study of natural neural systems, which, in association with the extended hype and
metaphorical jargon that is rife in this area of computer science, has acted to lessen the amount
of serious attention that is given to this new information processing paradigm. But – and this is
important to note – numerous aspects related to the subject of CNNs lend themselves to rigorous
mathematical analysis. This, in turn, provides a sound foundation on which to base an investigation
into the capabilities and limitations of different CNN tools and for examining their use in real-
world geographical applications. Casting such an analysis in the universal language of mathematics
would also be a worthwhile positive act that could help to dispel much unwarranted mystique and
avoid much potential misuse.

REFERENCES
Abdel-Moetty, S.M. 2010. Traveling salesman problem using neural network techniques. In 2010 The Seventh
International Conference on Informatics and Systems (INFOS), pp. 1–6, Cairo, Egypt.
Abrahart, R.J., F. Anctil, P. Coulibaly, C.W. Dawson, N.J. Mount, L.M. See, A.Y. Shamseldin, D.P. Solomatine,
E. Toth, and R.L. Wilby. 2012. Two decades of anarchy? Emerging themes and outstanding challenges
for neural network river forecasting. Progress in Physical Geography 36, 4 (August 1): 480–513.
Abrahart, R.J., L.M. See, C.W. Dawson, A.Y. Shamseldin, and R.L. Wilby. 2010. Nearly two decades of neural
network hydrological modelling. In Advances in Data-Based Approaches for Hydrologic Modeling and
Forecasting, eds. B. Sivakumar and R. Berndtsson. Hackensack, NJ: World Scientific.
Abrahart, R.J., L.M. See, and P.E. Kneale. 1999. Using pruning algorithms and genetic algorithms to opti-
mise network architectures and forecasting inputs in a neural network rainfall-runoff model. Journal of
Hydroinformatics 1, 2: 103–114. http://www.iwaponline.com/jh/001/jh0010103.htm.
Akgüngör, A.P. and E. Doğan. 2009. An artificial intelligent approach to traffic accident estimation: Model
development and application. Transport 24, 2: 135–142.
Allouche, M.K. and B. Moulin. 2005. Amalgamation in cartographic generalization using Kohonen’s feature
nets. International Journal of Geographical Information Science 19, 8–9: 899–914.
Almeida, C.M., J.M. Gleriani, E.F. Castejon, and B.S. Soares-Filho. 2008. Using neural networks and cel-
lular automata for modelling intra‐urban land‐use dynamics. International Journal of Geographical
Information Science 22, 9: 943–963.
Benjamin, C.O., S.-C. Chi, T. Gaber, and C.A. Riordan. 1995. Comparing BP and ART II neural network
classifiers for facility location. Computers & Industrial Engineering 28, 1 (January): 43–50.
Bishop, C.M. 2007. Natural Networks for Pattern Recognition. Oxford, U.K.: Oxford University Press.
Brown, E., M. Aitkenhead, R. Wright, and I.H. Aalders. 2007. Mapping and classification of peatland on the
Isle of Lewis using Landsat ETM+. Scottish Geographical Journal 123, 3: 173–192.
Neurocomputing for GeoComputation 325

Bryan, B.A. 2006. Synergistic techniques for better understanding and classifying the environmental structure
of landscapes. Environmental Management 37, 1 (January): 126–140.
Carpenter, G.A. and S. Grossberg. 1987a. A massively parallel architecture for a self-organizing neural pattern
recognition machine. Computer Vision, Graphics, and Image Processing 37, 1 (January): 54–115.
Carpenter, G.A. and S. Grossberg. 1987b. ART 2: Self-organization of stable category recognition codes for
analog input patterns. Applied Optics 26, 23 (December 1): 4919–4930.
Carpenter, G.A., S. Grossberg, N. Markuzon, J.H. Reynolds, and D.B. Rosen. 1992. Fuzzy ARTMAP: A neu-
ral network architecture for incremental supervised learning of analog multidimensional maps. IEEE
Transactions on Neural Networks 3, 5: 698–713.
Carpenter, G.A., S. Grossberg, and J.H. Reynolds. 1991. ARTMAP: Supervised real-time learning and clas-
sification of nonstationary data by a self-organizing neural network. Neural Networks 4, 5: 565–588.
Chan, K.Y., T.S. Dillon, J. Singh, and E. Chang. 2012. Neural-network-based models for short-term traffic
flow forecasting using a hybrid exponential smoothing and algorithm. IEEE Transactions on Intelligent
Transportation Systems 13, 2: 644–654.
Civco, D.L. 1993. Artificial neural networks for land-cover classification and mapping. International Journal
of Geographical Information Systems 7, 2: 173–186.
Clothiaux, E.E. and C.M. Batchmann. 1994. Neural networks and their applications. In Neural Nets:
Applications in Geography, eds. B.C. Hewitson and R.G. Crane. Dordrecht, the Netherlands: Kluwer
Academic Publishers.
Favata, F. and R. Walker. 1991. A study of the application of Kohonen-type neural networks to the travelling
salesman problem. Biological Cybernetics 64, 6 (April 1): 463–468.
Fischer, M.M. 1995. Fundamentals in neurocomputing. In Recent Developments in Spatial Information, eds.
M.M. Fischer, T.T. Sikos, and L. Bassa, pp. 31–41. Budapest, Hungary: Geomarket.
Fischer, M.M. 1998. Computational neural networks: A new paradigm for spatial analysis. Environment and
Planning A 30, 10: 1873–1891.
Fischer, M.M. 2005. Spatial analysis: Retrospect and prospect. In Geographic Information Systems: Principles,
Technical Issues, Management Issues and Applications, eds. P.A. Longley, M.F. Goodchild, D.J. Maguire,
and D.W. Rhind. Hoboken, NJ: John Wiley & Sons.
Fischer, M.M. 2006. Neural networks: A general framework for non-linear function approximation. Transactions
in GIS 10, 4: 521–533.
Fischer, M.M. 2013. Neural spatial interaction models. Network training, model complexity and general-
ization performance. In Lecture Notes in Computer Science, eds. B. Murgante, S. Misra, M. Carlini,
C.M. Torre, H.-Q. Nguyen, D. Tanier, B.O. Apduhan, and O. Gervasi, Vol. 7974, pp. 1–16. Heidelberg,
Germany: Springer.
Fischer, M.M. 2014. Neural networks. A class of flexible non-linear models for regression and classification.
In Handbook of Research Methods and Applications in Economic Geography, eds. C. Karlsson and
M. Andersson. Chelthenham, U.K.: Edward Elgar.
Fischer, M.M. and R.J. Abrahart. 2000. Neurocomputing–Tools for geographers. In GeoComputation, eds. Stan
Openshaw and R.J. Abrahart, pp. 192–221. London, U.K.: Taylor & Francis.
Fischer, M.M. and S. Gopal. 1994. Artificial neural networks. A new approach to modelling interregional
telecommunication flows. Journal of Regional Science 34, 4: 503–527.
Fischer, M.M. and S. Gopal. 1996. Spectral pattern recognition and fuzzy ARTMAP: Design features, system
dynamics and real world simulations. In Proceedings of EUFIT’96, Fourth European Congress on
Intelligent Technologies and Soft Computing, pp. 1664–1668. Aachen, Germany: Elite Foundation.
Fischer, M.M., S. Gopal, P. Staufer, and K. Steinnocher. 1997. Evaluation of neural pattern classifiers for a
remote sensing application. Geographical Systems, 4, 2: 195–226.
Fischer, M.M. and A. Reggiani. 2004. Spatial interaction models: From the gravity to the neural network
approach. In Contributions to Economic Analysis, eds. R. Capello and P. Nijkamp, Vol. 266, pp. 317–346.
Urban Dynamics and Growth: Advances in Urban Economics. Amsterdam, the Netherlands: Elsevier.
http://www.sciencedirect.com/science/article/pii/S0573855504660111.
Fischer, M.M. and P. Staufer. 1999. Optimization in an error backpropagation neural network environment
with a performance test on a spectral pattern classification problem. Geographical Analysis 31, 2:
89–108.
Foody, G.M. 1995. Land cover classification by an artificial neural network with ancillary information.
International Journal of Geographical Information Systems 9, 5: 527–542.
Gallant, S.I. 1993. Neural Network Learning and Expert Systems. Cambridge, MA: MIT Press.
Gholizadeh, M.H. and M. Darand. 2009. Forecasting precipitation with artificial neural networks (Case study:
Tehran). Journal of Applied Sciences 9, 9 (September 1): 1786–1790.
326 GeoComputation

Goel, A. 2011. ANN-based approach for predicting rating curve of an Indian river. ISRN Civil Engineering
2011: 1–4.
Gopal, S. and M.M. Fischer. 1997. Fuzzy ARTMAP—A neural classifier for multispectral image classification.
In Recent Developments in Spatial Analysis. Spatial Statistics, Behavioural Modelling and Computational
Intelligence, eds. M.M. Fischer and A. Getis, pp. 306–335. Berlin, Germany: Springer.
Gould, P. 1994. Neural computing and the aids pandemic: The case of Ohio. In Neural Nets: Applications in
Geography, eds. B.C. Hewitson and R.G. Crane. Dordrecht, the Netherlands: Kluwer Academic Publishers.
Grossberg, S. 1976a. Adaptive pattern classification and universal recoding: I. Parallel development and coding
of neural feature detectors. Biological Cybernetics 23, 3: 121–134.
Grossberg, S. 1976b. Adaptive pattern classification and universal recoding: II. Feedback, expectation, olfaction,
illusions. Biological Cybernetics 23, 4: 187–202.
Guerrero, F., S. Lozano, K.A. Smith, and I. Eguia. 2000. Facility location using neural networks. In Soft
Computing in Industrial Applications, eds. Y. Suzuki, S.O. DSc, T.F. D.Eng, R. Roy, and Y. Dote,
pp. 171–179. London, U.K.: Springer. http://link.springer.com/chapter/10.1007/978-1-4471-0509-1_15.
Hecht-Nielsen, R. 1990. Neurocomputing. Reading, MA: Addison-Wesley.
Henrique, P., S. Scheer, and M.T. Arns Steiner. 2008. A recurrent neural network to traveling salesman prob-
lem. In Traveling Salesman Problem, ed. F. Greco. Vienna, Austria: InTech. http://www.intechopen.com/
books/traveling_salesman_problem/a_recurrent_neural_network_to_traveling_salesman_problem.
Henriques, R., F. Bacão, and V. Lobo. 2009. Carto‐SOM: Cartogram creation using self‐organizing maps.
International Journal of Geographical Information Science 23, 4: 483–511.
Hornik, K., M. Stinchcombe, and H. White. 1989. Multilayer feedforward networks are universal approxima-
tors. Neural Networks 2, 5: 359–366.
Kasabov, N.K. 1996. Foundations of Neural Networks, Fuzzy Systems, and Knowledge Engineering. Cambridge,
MA: MIT Press.
Kohonen, T. 1982. Self-organized formation of topologically correct feature maps. Biological Cybernetics 43,
1 (January 1): 59–69.
Kohonen, T. 1989. Self Organization and Associative Memory, 3rd edn. London, U.K.: Springer.
Kuo, R.J., S.C. Chi, and S.S. Kao. 2002. A decision support system for selecting convenience store location through
integration of fuzzy AHP and artificial neural network. Computers in Industry 47, 2 (February): 199–214.
Leung, Y. 1997. Feedforward neural network models for spatial pattern classification. In Recent Developments
in Spatial Analysis: Spatial Statistics, Behavioural Modelling and Computational Intelligence, eds.
M.M. Fischer and A. Getis, pp. 336–359. Berlin, Germany: Springer.
Li, X. and A.G.-O. Yeh. 2001. Calibration of cellular automata by using neural networks for the simulation of
complex urban systems. Environment and Planning A 33, 8: 1445–1462.
Li, X. and A.G.-O. Yeh. 2002. Neural-network-based cellular automata for simulating multiple land use changes
using GIS. International Journal of Geographical Information Science 16, 4 (June): 323–343.
Maier, H.R., A. Jain, G.C. Dandy, and K.P. Sudheer. 2010. Methods used for the development of neural net-
works for the prediction of water resource variables in river systems: Current status and future directions.
Environmental Modelling & Software 25, 8 (August): 891–909.
Merwin, D., R. Cromley, and D. Civco. 2009. A neural network-based method for solving ‘nested hierarchy’
areal interpolation problems. Cartography and Geographic Information Science 36, 4: 347–365.
Miller, D.M., E.J. Kaminsky, and S. Rana. 1995. Neural network classification of remote-sensing data.
Computers & Geosciences 21, 3 (April): 377–386.
Murnion, S.D. 1996. Spatial analysis using unsupervised neural networks. Computers & Geosciences 22, 9
(November): 1027–1031.
Openshaw, S. 1993. Modelling spatial interaction using a neural net. In Geographic Information Systems,
Spatial Modelling, and Policy Evaluation, eds. M.M. Fischer and P. Nijkamp, pp. 147–164. Berlin,
Germany: Springer.
Openshaw, S. 1998. Neural network, genetic, and fuzzy logic models of spatial interaction. Environment and
Planning A 30, 10: 1857–1872.
Openshaw, S. and C. Openshaw. 1997. Artificial Intelligence in Geography. Chichester, U.K.: Wiley.
Openshaw, S. and S. Wymer. 1995. Classifying and regionalising census data. In Census Users Handbook, ed.
S. Openshaw, pp. 353–361. Cambridge, U.K.: Geoinformation International.
Pao, Y.-H. 1989. Adaptive Pattern Recognition and Neural Networks. Reading, MA: Addison-Wesley.
Rigol, J.P., C.H. Jarvis, and N. Stuart. 2001. Artificial neural networks as a tool for spatial interpolation.
International Journal of Geographical Information Science 15, 4: 323–343.
Rizzo, D.M. and D.E. Dougherty. 1994. Characterization of aquifer properties using artificial neural networks:
Neural kriging. Water Resources Research 30, 2: 483–497.
Neurocomputing for GeoComputation 327

Rumelhart, D.E., G.E. Hinton, and R.J. Williams. 1986. Learning internal representations by error propagations.
In Parallel Distributed Processing: Explorations in the Microstructures of Cognition, eds. D.E. Rumelhart
and J.W. McClelland, Vol. 1, pp. 318–362. Cambridge, MA: MIT Press.
See, L. and S. Openshaw. 1999. Applying soft computing approaches to river level forecasting. Hydrological
Sciences Journal 44, 5: 763–778.
Sester, M. 2005. Optimization approaches for generalization and data abstraction. International Journal of
Geographical Information Science 19, 8–9: 871–897.
Smolensky, P. 1988. On the proper treatment of connectionism. Behavioral and Brain Sciences 11: 1–74.
Srinivasan, D., X. Jin, and R.L. Cheu. 2004. Evaluation of adaptive neural network models for freeway incident
detection. IEEE Transactions on Intelligent Transportation Systems 5, 1: 1–11.
Sudheer, K. and S. Jain. 2003. Radial basis function neural network for modeling rating curves. Journal of
Hydrologic Engineering 8, 3: 161–164.
Tahir, A.A. 2012. Integrating artificial neural network and classical methods for unsupervised classification of
optical remote sensing data. EURASIP Journal on Advances in Signal Processing 2012, 1 (July 31): 165.
Tapiador, F.J. and J.L. Casanova. 2003. Land use mapping methodology using remote sensing for the regional
planning directives in Segovia, Spain. Landscape and Urban Planning 62, 2 (January 10): 103–115.
Tatem, A.J., H.G. Lewis, M.S. Nixon, and P. Atkinson. 2003. Increasing the spatial resolution of agricultural
land cover maps using a Hopfield neural network. International Journal of Geographic Information
Sciences 17, 7 (July): 647–672.
Tayyebi, A., B.C. Pijanowski, and A.H. Tayyebi. 2011. An urban growth boundary model using neural networks,
GIS and radial parameterization: An application to Tehran, Iran. Landscape and Urban Planning 100,
1–2 (March 30): 35–44.
Van Hinsbergen, C., J. van Lint, and H. van Zuylen. 2009. Bayesian training and committees of state-space
neural networks for online travel time prediction. Transportation Research Record: Journal of the
Transportation Research Board 2105 (December 1): 118–126.
Wang, L.-H. and Y.-Q. Xing. 2008. Remote sensing estimation of natural forest biomass based on an artificial
neural network. Ying yong sheng tai xue bao = The Journal of Applied Ecology/Zhongguo sheng tai xue xue
hui, Zhongguo ke xue yuan Shenyang ying yong sheng tai yan jiu suo zhu ban 19, 2 (February): 261–266.
White, H. 1989. Learning in artificial neural networks: A statistical perspective. Neural Computation 1, 4
(December 1): 425–464.
Wu, F. 2002. Calibration of stochastic cellular automata: The application to rural-urban land conversions.
International Journal of Geographical Information Science 16, 8: 795–818.
14 GeoComputation and
Open-Source Software
Components and Software
Component Stacks
Roger S. Bivand

CONTENTS
14.1 Introduction........................................................................................................................... 330
14.2 Software Component Stacks for GC...................................................................................... 331
14.2.1 Language Environments............................................................................................ 332
14.2.2 Component Stacks..................................................................................................... 333
14.2.3 Dependency Challenges............................................................................................ 335
14.3 Open-Source Geospatial Projects.......................................................................................... 336
14.3.1 Geospatial Libraries.................................................................................................. 337
14.3.2 Desktop Applications................................................................................................. 339
14.3.3 Web Mapping and Services.......................................................................................340
14.4 OSGeo and R-Spatial............................................................................................................. 341
14.4.1 R-Spatial: sp............................................................................................................... 341
14.4.2 Geospatial Data Abstraction Library (GDAL/OGR) and PROJ.4: rgdal...................344
14.4.3 Geometry Engine, Open Source: rgeos..................................................................... 345
14.4.4 Geographic Resources Analysis Support System: spgrass6......................................346
14.4.5 SAGA–RSAGA, Geoprocessing (RPyGeo), Marine Geospatial
Ecology Tools and Others.......................................................................................... 349
14.5 Future Prospects.................................................................................................................... 350
References....................................................................................................................................... 351

GeoComputation (GC), with its necessary focus on software development and methods innovation,
has enjoyed a close relationship with free and open-source software communities. These extend
from communities providing the numerical infrastructure for computation, such as Basic Linear
Algebra Subroutines (BLAS), through language communities around Python, Java and others, to
communities supporting spatial data handling, especially the projects of the Open Source Geospatial
Foundation (OSGeo). This chapter surveys the stack of software components available for GC from
these sources, looking in most detail at the R language and environment, and how OSGeo projects
have been interfaced with it. In addition, attention will be paid to open development models and
community participation in software development. Since free and open-source geospatial software
has also achieved a successively greater presence in proprietary software as computational plat-
forms evolve, the chapter will close with some indications of future trends in software component
stacks, using TerraLib as an example.

329
330 GeoComputation

14.1 INTRODUCTION
In much the same way that Bivand and Lucas (2000), a chapter in the first edition of this book on
the integration of models and geographical information systems (GIS), was a review of literature,
this chapter will consider relationships between GeoComputation (GC) and open-source software.
Some of the insights from our earlier work in fact fed directly into the development of interfaces
between the open-source GRASS (Geographic Resources Analysis Support System) GIS and the
R statistical language and environment, as initially described by Bivand and Neteler (2000). This
positive feedback between GC and software development has been important both for GC and for
software development. Software development enables GC to be applied to wider ranges of problems
across increasing numbers of fields of study. Sustained contact and interaction with the GC com-
munity enriches and strengthens software development, by ensuring that progress in the field is
acknowledged and used in practice. The structuring of relationships between software components
(defined in Section 14.2.2), with ensuing workflow challenges and opportunities, has matured over
time, informing GC communities using either open-source or proprietary software, or both together.
An aspect of the progress made in software development communities has been the ratio of noise
to signal in information diffusion. Books such as Mitchell (2005), Erle et al. (2005) and Gibson and
Erle (2006) gave rich insight into myriad possibilities for committed customisers and consultants,
but at a distance from what might be termed “mainstream” GIScience; perhaps “hacking” and
GIScience are more comfortable at a distance? Applied research often, however, lives between these
two places and needs to find practical solutions to real problems within the constraints of available
hardware, software and programming and scripting competence. It is perhaps a paradox that very
little software used to tackle real scientific problems is written by programmers with a background
in computer science nowadays; much is written by domain scientists with deadlines to meet.
As many, including recently Rey (2009), have pointed out, the involvement of domain scientists
in coding has effectively “included” the code in their research output, making its openness for
scrutiny important for the verification of project results and methodologies. Different disciplines
approach this question in different ways, with some journals still unwilling to allow software to
be cited in references and unhappy about fully documented software footnotes; others require the
submission of supplementary materials including code for the convenience of referees and readers.
Access to code to permit research to be reproduced is becoming important in many disciplines, as
Leisch and Rossini (2003) show with respect to statistics.
Voices of free and open-source software insiders like Ramsey (2007) are important, because
they suggest the apparent level of reflection available to those developers closest to the bug track-
ers. More reflection is perhaps shown in contributions such as Câmara et al. (2012), but in Ramsey
(2007), we are reading a narrative written by a developer with commit rights to major open-source
geospatial software projects. His distinction between the ‘C’, the ‘Java’ and the ‘.Net’ tribes seems
well taken, fairly reflecting the ways in which developer communities have evolved; we will return
to these communities later in the chapter.
The field of geospatial open-source software projects was surveyed in detail by its participants
in Hall and Leahy (2008a), and their descriptions constitute a clear picture of the ways in which
they see their contributions. Some of the chapters have no references and are obviously statements
by developers with practical rather than academic goals. Other chapters are more similar in char-
acter to two other books published in the same year, Neteler and Mitasova (2008) and Bivand et al.
(2008), both of which aim to provide applied researchers with guides to the software tools they may
find useful in carrying out their work.
This practical approach to the conduct of research is noted by Sui and DeLyser (2011) in the con-
text of academic geography, which one might hope will make helpful contributions in the future after
a period of discriminating against quantitative methods even where they were appropriate. Recent
years have seen surveys of the potential of open-source geospatial software in areas as diverse as
health geographics and spatial epidemiology (Fisher and Myers 2011, Vanmeulebrouk et al. 2008,
GeoComputation and Open-Source Software 331

Yi et al. 2008), landscape ecology (Steiniger and Hay 2009), water resources management (Chen
et al. 2010) and courseware for geographical information systems (GIS*) education (Schweik et al.
2009). Roberts et al. (2010) provide much insight into the ways in which open-source and propri-
etary software solutions intermesh in ecological geoprocessing. Finally, a further general survey is
provided by Steiniger and Bocher (2009), in which the categories of the different software varieties
and the range of open-source licence conditions are discussed in detail. Here, we will accept their
broad definition of free and open-source software, termed open source for brevity, without further
discussion, as the distinctions seem clear, are largely shared by Rey (2009) and so do not require
repeating at length.
Our task here is rather to review central issues and projects of importance for GC related to
open-source software and the enriching of workflows that may be achieved by adding open-
source components to otherwise proprietary approaches. The open-source components are dis-
tinguished by the availability of source code under free and/or open-source software licences; by
access to infrastructures, such as version control systems for source code, bug trackers, mailing
lists and at least partly organised communities; and by the documentation of external dependen-
cies in the build and install system. As will be shown in the succeeding text, these qualities may
vary a good deal across projects, with consequences for the ease of software stacking (or other-
wise) experienced in practice.
We will proceed by examining software component stacks for GC first, looking at language
environments, software component stacks (defined in Section 14.2.2) and crucially at dependency
challenges. Next, we describe selected open-source geospatial projects within the narrow definition
of projects associated with the Open Source Geospatial Foundation (OSGeo), which provides key
shared infrastructure for projects, as well as major annual international conferences. Drawing on
my own experience, we go on to see how OSGeo (see Section 14.3) projects have been interfaced
with the R statistical language and environment, providing examples of how GC may be advanced
by using R for programming, scripting and analysis. Alternatively, the Python language and envi-
ronment, or other candidates, could have been chosen. It is worth noting that tools for spatial statisti-
cal analysis are being provided by PySAL,† which may be integrated using Python with the many
other geospatial applications with Python interfaces. My experience has however mostly been with
R, and this determines the focus chosen here. We round off by discussing future prospects.

14.2  SOFTWARE COMPONENT STACKS FOR GC


Before discussing software component stacks for GC, we should acknowledge the importance of
open standards for geospatial data interchange. Unless data formats and protocols are agreed, it
is very difficult to generate the synergies required for constructive collaboration. Kralidis (2008)
points out the importance of concepts such as that of spatial data infrastructure, whether estab-
lished within national jurisdictions, within supranational jurisdictions or by international standards
organisations. A fuller coverage of the relationships between spatial data infrastructures and free
and open-source geospatial software is given by Steiniger and Hunter (2012). The work of the Open
Geospatial Consortium (OGC), with members drawn both from software companies, research insti-
tutes and the broader user community, has been central in this respect. The availability of publicly
adopted OGC standards has made it possible for software developers of all varieties to share key
specifications that enable data to be passed from component to component in controlled ways.
Kralidis (2008) also helpfully distinguishes between formal, de facto and ad hoc standards,
which provide the flexibility needed to move ahead somewhat faster than standards committees
are usually able to do. The adoption of the keyhole markup language (KML) as an OGC standard,

* GIS will be used in the remainder of this chapter to mean geographical information system.
† https://github.com/pysal/pysal.
332 GeoComputation

simplifying the geography markup language (GML), was a wise step, in that it permitted the incor-
poration of a widely adopted lightweight data representation within a family of standards. Software
development benefits from disciplined standards and from rapid but occasionally chaotic progress;
we very often need both approaches and benefit from drawing them together where feasible.
While OGC pays considerable attention to interchange standards, other open standards specifi-
cations are of relevance for GC. Dunfey et al. (2006) present an open architecture vector GIS using
scalable vector graphics (SVG), easing visualisation because of the adoption of this standard by the
World Wide Web Consortium. SVG viewers of various kinds have been developed, some closed,
some open source, but all capable of rendering the same input data because the specification itself
is an open standard. Open-source software components may be used in connection with develop-
ment, but often to “glue” together data in known, sometimes standard, specifications; prototyping
using interpreted languages is an often chosen solution. Batcheller and Reitsma (2010) show how
open-source components may be integrated to permit spatial data discovery through feature level
semantics in this context.
While the availability of open standards, and of open-source software components, provides us
with a great deal of flexibility in application implementation, Schweik et al. (2009) point to advan-
tages in course design and training. The use of open-source software for training allows the trainer
to tailor the software to the needs of the course and removes the burden of acquiring and administer-
ing software licences. When using proprietary software, in addition to practical costs, the structure
of the course is “tailored” by the chosen software, perhaps diverting attention from the core focus.
However, much open-source software, in particular desktop GIS, appears to imitate popular
proprietary software, for example, Quantum GIS (QGIS) and the former ArcView desktop GIS may
well perform very similarly in training. In addition, courses are often obliged to take into account
the needs of participants to acquire familiarity with established proprietary systems before starting
work where these systems are deployed as standard. The tension between generic GIS and geospa-
tial training giving graduates general skills and software-specific training is very real, especially
where the software presupposes the dominance of a graphical user interface (GUI). Where generic
skills are taught in relation to scripting, interpreted languages and command-line interfaces, the
needs of participants to acquire abilities that can be applied at work from day one may be readily
met using any suitable mixture of open-source and proprietary software.
Steiniger and Bocher (2009) and Chen et al. (2010) give recent overviews of open-source GIS
software, but with constraints on what they see as general suitabilities and functionalities. It seems
that their preference for applications rather than component stacks has affected the ways in which
software is perceived. Preferences for GUIs have in particular obscured the fact that developing
GUIs absorbs a great deal of developer effort. Most open-source projects face their hardest con-
straints in the mobilisation and precise deployment of developer effort, because developers assign
themselves to tasks. Typically, open-source projects face choices between GUI toolboxes, with some
developers preferring one cross-platform toolbox, others preferring alternatives. All such projects
hit road bumps when the chosen toolbox “upgrades” in a way that is not backwards-compatible,
meaning that much GUI work has to be repeated and possibly supported for both the older and the
newer versions of that toolbox.
In the remainder of this section, we will consider the importance of programming language
environments, component stacks and mechanisms for joining components together and finally the
challenges that arise from trees of dependencies engendered between components.

14.2.1 Language Environments
Câmara et al. (2012) following Ramsey (2007) distinguish between the language environments
characterising open-source geospatial software. Many projects use the compiled C and/or C++ lan-
guages; in the latter case, use varies between projects using modern C++ with templates and oth-
ers using C++ more as C. Historically, the adoption of compiled languages by projects has been
GeoComputation and Open-Source Software 333

influenced by the availability of suitable compilers and linkers across the target operating systems
and hardware platforms. The emergence of GCC, the GNU compiler collection, and especially the
gcc C and the g++ C++ compilers across multiple platforms and operating systems, has made it
much easier to ensure that computations made using the same source code do not give platform-
dependent output on the same data. This is still not guaranteed, as, for example, time and time zone
handling may differ between operating systems.
The contribution of individuals here is often crucial; the R Windows FAQ 3.1.10 reflects this:
‘The assistance of Yu Gong at a crucial step in porting R to MinGW-w64 is gratefully acknowl-
edged, as well as help from Kai Tietz, the lead developer of the MinGW-w64 project’.* Without
their important interventions, it would not have been possible to progress with a GCC-based 64-bit
R for 64-bit Windows platforms. Not infrequently, such interventions occur unexpectedly, suddenly
opening up apparently blocked avenues. Platform-specific open-source projects may use compilers
supplied with operating systems, some of which are available without charge.
Beyond the compilers and linkers provided with GCC, many projects using C also use the legacy
Unix make command to manage the build process and GNU autoconf to configure the build process
by auto-detecting the presence of, and versions of, software dependencies. In addition, many also
use GNU libtool to assist in writing input files for make processes on the fly. Others choose a more
modern open-source build system, CMake; it is, however, rarely the case that experienced open-
source developers feel comfortable in both build environments. It is much easier for developers to
use the same compiler and application build support system across platforms, so that test suites can
be deployed and used in the most convenient way, providing the most consistent environment for
software component development.
Other open-source geospatial projects use Java, which handles cross-platform portability by run-
ning byte-compiled programs on platform-specific virtual machines. Java was often adopted by
projects initiated when the portability of C compilers was in doubt and where developers felt that a
more modern interpreted language was an advantage. JavaScript used as a mechanism for embed-
ding computation in information delivered to web browsers and similar front-end software has
become extremely powerful. The initial Google Maps application programming interface (API)
was written as a JavaScript API but has subsequently been enlarged to include other components.
Before returning briefly to web and mobile geospatial applications, we must note the significance
of other major language environments. Ramsey (2007) mentions those based on .Net, with their use
of the wrapping of C/C++ and Java components. The simplified wrapper and interface generator
(SWIG) has been developed to permit compiled components to be used in scripting languages such
as Perl, Python, PHP, Tcl and Ruby, among others. Some applications have designed customised
interfaces like GRASS with Python; others use system calls out to the operating system to execute
external programs. Shell scripts, known as batch programs on Windows platforms, have long been
a staple form of application integration that have been easy to write and maintain and are likely to
remain of major importance on all platforms; despite appearances, shell scripts are just as conve-
nient on OS X (formerly Mac OS X) platforms as other versions of Unix.

14.2.2 Component Stacks
Software components appear to have been defined first by McIlroy (1969), as interchangeable subas-
semblies by analogy with mass production manufacturing. A software component should provide
an encapsulated set of related functions, and such components are said to be modular and cohesive.
Components communicate with one another through interfaces, which are specified in such a way
that components can be combined, or stacked, without each programmer being obliged to know the
internals of all the components being integrated. Just as a software component is a set of related
functions, a software stack is a set of related software components.

* http://cran.r-project.org/doc/manuals/R-admin.html#g_t64_002dbit-Windows-builds.
334 GeoComputation

The software component stack has been a core concept of programming at least since the publi-
cation of Kernighan and Plauger (1976), systematising the experience of Bell Labs computer scien-
tists. They point out that modularisation and simplicity in coding lead to greater robustness, because
small functions and applications can be tested more thoroughly than large ones. Some of the lessons
are made clear in programming itself (Kernighan and Pike 1999), while others affect how one may
“glue” small utility functions together in an interactive and/or scripting language (Kernighan and
Pike 1984). In Bentley et al. (1986), McIlroy shows how Bentley’s programming challenge – to
tabulate word frequency in a given text, solved elegantly in a monolithic program by Knuth – can
also be answered using a very short shell script using well-tried small utility programs available in
any Unix distribution.
Consequently, a software component stack can be taken as a sequence of component programs
that are used together to achieve a common goal. The most widely used example is LAMP: Linux,
Apache, MySQL and Perl/PHP/Python, comprising a sufficient and capable stack for running a web
server with server-side page processing. The languages used here vary, with applications written in
C, some C++, and bound together with shell scripts for administration, SQL for data handling and
a scripting language to process web pages dynamically.
As in a jigsaw puzzle, the interfaces between software applications in a stack need to be clear
and well defined. In the LAMP case and similar cases, the interface definitions were both clear
and stable, leading to the creation of a critical mass of system administrators and thus a sufficiently
large user base to generate a helpful flow of bug reports. Interfacing applications typically reveals
implementation assumptions that are neutral in nature in themselves, but when confronted with
unspecified assumptions in interfaced components may become problematic.
Using stacks of components becomes attractive when task objectives can more easily be met by
using components developed by others than by developing them independently. When the costs of
keeping a stack working exceed those of rewriting, the stack may fail, but this is seldom the case, as
reimplementation is fraught with difficulties, especially of ensuring a sufficiently large user base to
generate bug reports and to encourage other developers to join in.
Open-source software developers often advertise APIs, with an implicit promise that other
downstream developers using the API will be less subject to incompatible changes. This permits
them to make the improvements deemed desirable, or necessary bug fixes, without downstream
software being affected. Naturally, software closer to the user interface, or to the web server, will
often depend on underlying libraries and services, for example, for parsing XML. It is then vital that
changes in these underlying components do not change the way that dependent components func-
tion, unless their earlier behaviour had been in error.
Open-source software is characterised not only by frequent releases of components, and by rapid
bug fixing leading to patched releases, but also by the availability of checkout from version control
systems, permitting developers of “downstream” software to build and test against the current revi-
sions of “upstream” components where necessary, or at least before release, to attempt to future-
proof the “downstream” component. Build support systems, such as GNU autoconf, will then set
compile flags to indicate the versions of “upstream” components, and/or use will be made of self-
declaring version functions to branch on version internally.
Many of these issues have been influenced over recent years by the commissioning of specialist
support and customisation from open-source geospatial developers by customers or by the opening
of existing software codebases. Because large companies often need to integrate multiple software
components within specific quality assurance support systems, they contribute code, bug fixes and
contracted development which benefit all users of the components in question. The range of interac-
tion is large, especially because of the rapid growth seen in the use of geographical data.
Web, navigation and mobile geospatial applications have burgeoned in recent years, effectively
obscuring most of what the GC community has been concerned with over the past half century.
The vast majority of map applications do not include any analysis, and most users of the applica-
tions, and associated hardware and software, are scarcely aware that their searches, GPS-registered
GeoComputation and Open-Source Software 335

Mapping parties
(the fun stuff)

WMS Yahoo! GPX traces,


Etcetera
services imagery photos and notes

www.osm.org website
Map editing
Openlayers
software Map tiles
(‘slippy map’)
Potlatch
Mapzen Merkaator JOSM

Mapnik + t@hngo
mod_tile server My SQL
Mapnik
style-sheets
Geodata tiles@home
tiles@home
Post GIS clients
Import (osmarender)
scripts Mod_tile
cache
osm 2 TRAPI XAPI
Etcetera API 0.6 Mapnik renderer pgsq 1
(til.osm.org)

Planet dump,
Post greSQL Osmosis planet diffs Etcetera
backend

FIGURE 14.1  OpenStreetMap component overview, downloaded from http://wiki.openstreetmap.org/wiki/


Component_overview.

movements or uses of smart transit passes constitute data. Mobile devices may be tracked from base
stations, but as they also acquire GPS, they can themselves record user positions. Android develop-
ers of course can benefit from open-source software and application build support systems, but these
uses are not strongly connected with most GC. Exceptions include the use of sensor networks and
animal tracking, to which we will return below.
Another is the application programming interface in OpenStreetMap, which supports data input
from volunteer contributors, rather than the elaborate visualisation and search interfaces provided by
leading web, navigation and mobile geospatial applications. Figure 14.1 shows the OpenStreetMap
component overview, which is not atypical in its complexity. Without the availability of the compo-
nents developed outside the OpenStreetMap community, it would have been extremely hard to have
achieved the progress we can all see and benefit from in the rapid updating of street maps, espe-
cially in places without adequate mapping agencies. The 2011 State of the Map conference, focused
on OpenStreetMap, and the 2011 FOSS4G OSGeo conference were held consecutively in Denver,
Colorado, by design, as many developers participate in both meetings.

14.2.3 Dependency Challenges
As already noted, developers wishing to integrate software components in stacks must pay careful
attention to the versioning of the components and to the impacts of upstream changes on down-
stream components. The terms upstream and downstream refer to the ordering of the components,
with data flowing from upstream to downstream components. If the specification of an upstream
component changes, those following it will need to be modified. If the changes are forced by real
bugs being fixed, or security holes being blocked, downstream components must react in appropri-
ate ways. However, some changes occur for other reasons, such as code cleaning, reimplementa-
tion or the resolution of licence issues in otherwise functioning code. In most cases, upstream
developers then attempt to reduce changes in their interfaces with downstream components to an
unavoidable minimum.
Open-source projects are typically most constrained with respect to developer time for main-
tenance, including the revision of functioning code to accommodate upstream changes that may
not improve downstream performance. This has been seen often enough when GUI toolkits are
336 GeoComputation

chosen – if the toolkit APIs change often, they will be seen as unattractive. The same applies to lan-
guage and compiler versions; the new versions may be better engineered, but may not be as preva-
lent on user systems than their predecessors. Python seems to be a case in point, with most Windows
geospatial software bundling their own copies, which can make updating and maintenance on user
systems more demanding than strictly necessary, for example, compared to Java, which is typically
installed once and used by all applications.
A particularly troublesome issue for dynamically linked software components in relatively long-
running applications is that of thread safety. If the upstream component has a global error handler
and is dynamically linked to multiple downstream components, it may be that they will compete
in resetting it to hand off errors to their own error handlers. The same may occur with the setting
of global variables. These problems may be avoided by static linking of libraries, but this negates
the advantages of having more easily maintained single copies of libraries installed. Even if com-
ponents may be written, or often adapted from earlier code, to be thread safe in themselves, it may
be that thread handling in downstream components makes different assumptions. Modern language
environments, such as Haskell, attempt to attack this problem at its root, but total reimplementation
of complex component stacks is most often not a feasible option.
Defensive use of static linking is a possibility but places the responsibility for critical updating
on the downstream developers in return for control over the dependency in distributed binaries.
Alternatively, the downstream component may simply bundle the source code of the upstream com-
ponents; this is taken to considerable lengths by Boost* and its community – Boost provides free
peer-reviewed portable C++ source libraries written as collections of header files.
It is often convenient for users to install and maintain binary components rather than to install
from source. This then transfers the responsibility for trying to keep component stacks working
together to those who package and distribute binary components, such as the OSGeo4W project†
to provide Windows installers and components, or the provision of OS X frameworks‡ for open-
source geospatial software. There are a number of similar Linux repositories, providing component
binary packages, such as DebianGIS§ and UbuntuGIS,¶ among others. The packagers may also get
overenthusiastic and release binaries of early development versions of software, perhaps solving one
problem, but leaving others open.
Dependency issues may degenerate into dependency “hell” when downstream necessary compo-
nents in a stack change so as to have conflicting version dependencies on the same upstream com-
ponent. If the packaging metadata is not carefully crafted, updating may lead to a component stack
failing, or losing stability. Since users often see proposed updates as offering greater security and/
or functionality, their presumption will be to update and trust the metadata to protect them against
unanticipated consequences. Writing packaging metadata and binary build systems is another area
in which open-source projects typically lack developer capacity, because it is both hard and unre-
warding. Users take the providers for granted until something gets broken, at which point they
complain, understandably reducing developer motivation to offer time to such services.

14.3  OPEN-SOURCE GEOSPATIAL PROJECTS


The Open Source Geospatial Foundation was brought into being in 2006 as a successor to the
MapServer Foundation, itself created the year before.** In addition to providing a shared infra-
structure and procedural framework for web mapping, desktop application and geospatial library
projects, OSGeo aims to promote open-source geospatial software use and development, including

* http://www.boost.org.
† http://osgeo4w.osgeo.org/.
‡ http://www.kyngchaos.com/software/frameworks.
§ http://wiki.debian.org/DebianGis.
¶ https://wiki.ubuntu.com/UbuntuGIS.

** http://www.osgeo.org/content/foundation/about.html.
GeoComputation and Open-Source Software 337

use integrated with proprietary software. Its incubation procedure for projects includes legal verifi-
cation steps to check that code is properly copyrighted and licensed and that the conditions of use
are clear. Many of the geospatial library projects offer code under X/MIT, LGPL or other licences
permitting the distribution of linked builds of closed-source downstream components containing
modified upstream components.
McIhagga (2008) discusses some of the ways in which communities of practice have developed,
with particular reference to web mapping and, in his description, the open-source web mapping
“ecology”. Chen and Xie (2008) show how open-source SQL databases with spatial extensions fit
into the bigger picture; this is very evident also from Figure 14.1. There is also a good deal of excite-
ment around the use of non-relational databases with spatial data, such as GeoCouch* extending
CouchDB; others were also presented at the OSGeo meeting in 2011.
The PostGIS spatial extensions to PostgreSQL are widely used; PostGIS is licensed under the
GNU General Public License (GPL), while PostgreSQL itself is licensed under its own licence,
which is similar to the MIT licence. Software licensed under GPL is termed Free Software, because
licensees are required to make available modified source code if they also publish binary versions of
the software for sale or otherwise. Software with more “liberal” licences does not oblige licensees to
contribute back to the community if they publish binary software, although many do anyway. The
term Open Source software includes free software as a strict subset, that is, all free software is open
source, but not all open source is free in the understanding of the GPL.
The following review does not attempt to be exhaustive, but rather to establish a basis for the next
section, in which links with R will be presented.

14.3.1 Geospatial Libraries
Geospatial libraries are important in applying GC because they encapsulate knowledge about the
computational processes involved in handling spatial data. Once the underlying regularities and
structures have been established, and the library created, other software components may use it
to provide functionality that they need without having to reimplement. Naturally, more than one
library may exist for each niche, and the boundaries between libraries may overlap, but they do offer
opportunities to benefit from modularisation.
One of the central geospatial libraries closely associated with GC in its development motivation
is GeoTools.† Turton (2008) describes its progress from beginnings in a doctoral research proj-
ect in Leeds up to about 4 years ago, and its position as a major upstream component for both
desktop applications and web mapping applications written in Java is, if anything, even stronger
now. It builds on other components, such as the JTS Topology Suite,‡ but implements its own code
for spatial reference systems (SRSs) in Java based on the International Association of Oil & Gas
Producers Geomatics Committee, formerly known as the European Petroleum Survey Group (OGP
ESPG§) database. The R cshapes package (Weidmann et al. 2011) bundles JTS run through rJava
for polygon boundary line generalisation and distance calculation but is probably the only R geospa-
tial package using open-source geospatial Java components (Weidmann and Gleditsch 2010). The
Geospatial Data Abstraction Library (GDAL, pronounced GooDAL, with stress on the oo, because
it was intended to be object-oriented)¶ is a crucial part of the upstream geospatial library infrastruc-
ture. Downstream components needing to read raster data can instead read from the abstracted
object representation, rather than being obliged to implement interfaces to each format separately.
As Walter et al. (2002) describe its beginnings in relation to the OpenEV desktop application, it
simplified reading and writing raster data.

* https://github.com/couchbase/geocouch/.
† http://www.geotools.org.
‡ http://www.vividsolutions.com/jts.
§ http://www.epsg.org/.
¶ http://www.gdal.org.
338 GeoComputation

Warmerdam (2008) provides a rounded description of the library, including its OGR* vector
extensions and design goals. Use is made both of OGC Simple Features specifications and of the
PROJ.4 cartographic projections library. GDAL utilities are provided to give command-line access
to library functionality; Luis (2007) shows how GDAL and GMT can be combined for exploring
grid data. GDAL is also available in interpreted languages like Python and Perl. Its C API is stable,
but, as Warmerdam (2008, pp. 99–100) points out, the C++ application binary interface is very
dependent on the version of the compiler in particular, termed ABI fragility.
It is not hard to contribute new drivers if the file or web service formats are fully specified and/
or supported by external libraries; I have collaborated in writing a driver for SAGA raster files,
and the C++ coding involved was not demanding once the format was documented. GDAL aims to
open and read files simply based on regular file characteristics, so that the format used may in fact
be transparent for the user. Writing files may be harder, and fewer drivers support file creation and
copying than reading; only a very few XML-based vector formats in default builds, such as KML,
could be written but not read. Many drivers require the use of external libraries, especially where
the external dependency encodes proprietary formats in a closed-source binary shared object or
where it seems wiser not to internalise complete driver code in GDAL itself, only providing stubs
linked to library functions.
In conclusion, Warmerdam (2008) mentions the difficult questions of thread safety and interna-
tionalisation, neither of which have been resolved. The latter issue affects the OGR vector part of
the library, as feature attributes are much more likely to use multi-byte characters and/or different
codepages. The choice of UTF-8 support is typical of many open-source projects, as it falls back to
ASCII when only 7 bits convey meaning. Error messages and documentation should also be avail-
able in other languages.
The JTS Topology Suite has been ported from Java to C++ as GEOS† (Geometry Engine – Open
Source), including all the OGC Simple Features for SQL spatial predicate functions and spatial
operators; like JTS, GEOS assumes planar geometries. GEOS and JTS also share precision models
that can be set and retrieved by applications – not infrequently, changing the precision model can
affect the results of computation. Because GEOS uses OGC SFS specifications for geometries, it
does not “build” topologies in the classical GIS arc-node understanding. The operations are con-
ducted on topologies built on-the-fly and discarded; prepared geometries may be made, speeding
operations, and Sort-Tile-Recursive (STR) trees can also be built for querying geometries. It is
required that geometries meet SFS specifications. The library is used by PostGIS to provide predi-
cate functions and topology operations and can be compiled into GDAL to make these operations
available for OGR layers. GEOS has been modified to achieve thread safety by the provision of a
handle in the C API that is specific to the thread; before long, the thread-safe versions will be the
only supported functions in the API.
One of the most important components required by geospatial applications is the provision of
robust and clear representations of coordinate reference systems. A representation that predates the
OGC well-known text (WKT) SRS was introduced in the PROJ.4 library.‡ In its OSGeo form, it
supports datum transformation in addition to projection and is part of the OSGeo MetaCRS proj-
ect encompassing several projection- and coordinate-system-related technologies.§ Extensive use
is made of the OGP EPSG ¶ database to encode distinct coordinate reference systems. Extensions
to this SRS database, for example, used in the ESRI ArcSDE interface, appear to have an uncer-
tain legal status and do not seem to be available to open-source applications in the same way as
described in the EPSG Geodetic Parameter Registry terms of use.

* OGR is not an acronym and its meaning is now lost.


† http://geos.osgeo.org.
‡ http://trac.osgeo.org/proj.
§ http://trac.osgeo.org/metacrs/.
¶ http://www.epsg.org/.
GeoComputation and Open-Source Software 339

Chen and Xie (2008) describe the rationale underlying PostGIS* as a library of spatial exten-
sions for the PostgreSQL object-relational database system. Because PostGIS uses the OGC Simple
Features specification for SQL and incorporates the GEOS geometry engine, it makes the underly-
ing database into a powerful spatial data engine and repository, particularly when carefully indexed.
PostGIS 2.0 will offer support for raster data, on which development is continuing actively.
TerraLib† is positioned as middleware between a chosen object-relational database system and a
front-end application. It can store and retrieve spatial data, including raster data since its inception,
and apply functions and operations to the data, storing output in the database and passing it to the
front-end application for display (Câmara et al. 2008); it has offered excellent support for research,
exemplified by de Espindola et al. (2011). Its next version, TerraLib 5, will be more tightly integrated
with central OSGeo libraries, will support non-DBMS data sources such as web services and will
permit spatio-temporal data to be represented and queried.

14.3.2 Desktop Applications
The best documented open-source geospatial desktop application appears to be GRASS GIS
(GRASS Development Team 2012). GRASS was already 20 years old when the GRASS develop-
ers collaborated in founding OSGeo, and they have been playing an important role in the broader
OSGeo movement (Neteler et al. 2008).‡ The GRASS book (Neteler and Mitasova 2008) is already
in its third edition, covering the current GRASS 6 release, which is now at 6.4.3, and has advanced
far beyond the book. From its original shell scripted command-line interface form, GRASS now
has a legacy open-source Tcl/Tk GUI and a modern wxPython GUI using Python as its scripting
language and the wxWidgets open-source cross-platform GUI toolkit. Many of the more recent
developments in GRASS are covered by Neteler et al. (2012). In GRASS 7, Python will replace shell
scripts for scripting, removing the need to emulate Unix in workflows.
Because of its flexibility, GRASS has been customised for very many different platforms;
Sorokine (2007) shows how parallel high-performance visualisation may be made available for
tiled wall displays. Rocchini et al. (2011) customise GRASS to rectify aerial photographs as a
basis for constructing landscape composition indices for tracking climate change. GRASS is used
in compute-intensive research in ecological and environmental studies, such as the simulation of
the management of alien plants by Roura-Pascual et al. (2009) and Krug et al. (2010). Roiz et al.
(2011) analyse the factors potentially driving the invasion of tiger mosquitoes in northern Italy
under climate change scenarios. Finally, GRASS now has a convenient extension mechanism, so
that additional toolsets can be combined with those distributed with the base system; Jasiewicz and
Metz (2011) provide a toolkit for Hortonian analysis of drainage networks. The extension mecha-
nism does not yet support forward-compatibility control checking, so extension authors need to
remember to keep their contributions updated.
The QGIS§ desktop application, like open-source Java-based desktop GIS such as gvSIG,¶ uDig**
and OpenJUMP,†† may appear to the user to resemble proprietary desktop GIS. The GUI structure
designs, and in many cases, the names given to menu items, seem aimed to ease the path of the nov-
ice user moving between open-source and proprietary applications. This is also evident in the style
chosen by Sherman (2008) in his book on QGIS, fitting a user guide or manual template rather than
an academic one. Of course, good academic work is done with these systems, such as Robertson
et al. (2009) and Robertson and Farmer (2008), who report on mountain pine beetle infestation in

* http://www.postgis.org.
† http://www.terralib.org.
‡ http://grass.osgeo.org/.
§ http://www.qgis.org.
¶ http://www.osgeo.org/gvsig.

** http://udig.refractions.net/.
†† http://www.openjump.org/.
340 GeoComputation

British Columbia, and Cagnacci and Urbano (2008), showcasing a system for handling GPS collar
data. QGIS both benefits and suffers from a plug-in system, because the plug-ins add functional-
ity but may cease working as new versions are released, especially if the plug-ins rely on external
software. Software plug-ins, also termed added modules or extensions, allow software to be used for
tasks beyond the original intentions of its authors. They are often written using dynamically loaded
libraries and may be sensitive to changes in application binary interfaces.
It is worth noting that GRASS and QGIS are OSGeo projects, and both rely on the mainte-
nance and development of the underlying geospatial libraries, such as GDAL and PROJ.4. These
dependencies are shared with an important non-OSGeo desktop GIS, SAGA GIS.* SAGA has been
freshly written in a modular form in C++ and has a command-line interface from the shell as well
as a GUI. The GUI differs in its use from proprietary GIS but, once differences are noted, is very
flexible; it is good at displaying large data sets and has many analysis modules. Goetz et al. (2011)
show how SAGA can be integrated with other tools for modelling landslide susceptibility; SAGA
is also used by Branger et al. (2012) with other open-source GIS to pre-process data for distributed
hydrological models.
The Integrated Land and Water Information System (ILWIS)† is another desktop GIS application
and was released as open source after its commercial existence was terminated in 2005. Other desk-
top applications include GeoVISTA Studio, described by Gahegan et al. (2008), a problem-solving
environment; like some others, this application seems mainly intended to support research into GIS
and GIS use, especially for visualisation and knowledge discovery.

14.3.3 Web Mapping and Services


Lime (2008) describes the evolution of MapServer‡ in some detail. It is of considerable importance, not
least because its developers and participators established a foundation as its governance model before
other geospatial projects. Indeed, the MapServer foundation was widened to become the OSGeo
foundation in 2006, with MapServer becoming an OSGeo project. It is based on simple principles
but has also been extended with the MapScript scripting language, which may be compiled with the
GEOS library to provide considerable server-side analytical power. The MapChat§ web application
(Hall and Leahy 2008b, Hall et al. 2010) builds on MapServer; it is an open-source tool for integrating
maps with real-time and asynchronous discussions between multiple users, who can annotate maps to
communicate information. It uses PostGIS as a spatial database back end, and OpenLayers¶ for client-
side map display – OpenLayers is a JavaScript library that is also an OSGeo project.
MapGuide Open Source** is another OSGeo project, and like ILWIS, it has its background in a
proprietary application. Bray (2008) describes its development as a modern web-based geospatial
platform. It uses an OSGeo library not discussed earlier, Feature Data Objects (FDO), which is an
API for manipulating, defining and analysing geospatial information that is completely data store
agnostic. This permits web service providers to be used as a data source, for example, web map
services (WMSs) and web feature services (WFSs). GeoServer†† is a Java-based server that permits
geospatial data to be viewed and edited. It is also an OSGeo project and uses OpenLayers and
GeoTools. It offers WMS and WFS interfaces, allowing clients to access data.
Web mapping services include several other application areas. In addition to WMS to serve ras-
terised data and WFS to serve features (vector data), OGC has defined web processing services
(WPSs), in which a server accepts geospatial input data, processes it and transmits the results to the

* http://www.saga-gis.org.
† http://52north.org/communities/ilwis.
‡ http://www.mapserver.org/.
§ http://mapchat.ca/.
¶ http://openlayers.org/.

** http://mapguide.osgeo.org/.
†† http://geoserver.org/.
GeoComputation and Open-Source Software 341

client or another addressee. INTAMAP* shows how such a WPS may be configured, here for provid-
ing an interoperable framework for real-time automatic mapping of critical environmental variables
(Pebesma et al. 2011b). Another example of an OGC web standard is for an OGC Sensor Observation
Service (SOS) client, described by Nüst et al. (2011) and written as an R package sos4R.†
The WPS and SOS examples both use R as part of their workflow, providing a convenient intro-
duction to the next section, in which we will show how geospatial software components may be
stacked with the R language and environment.

14.4 OSGeo AND R-SPATIAL


The R open-source programming language and environment (R Development Core Team 2011) is
understandably associated with data analysis and statistical programming. As a general interpreted
programming language, it is not limited to these tasks and can be applied to computational tasks
of many kinds. C, Fortran and C++ libraries may be interfaced with R functions through simple
mechanisms, which also permit access to R objects in compiled languages and callback to R from
compiled functions. In addition, R can be embedded within the PostgreSQL database as the proce-
dural language PL/R‡; it can also be interfaced with Python and other languages.
The class and method definitions used in R are covered in detail by Chambers (2008) and permit
data objects to be represented and handled in adequate ways. These definitions advance in waves,
with many fitted model objects using old-style classes and many data objects using new-style classes.
Old-style and new-style generic methods have also recently been brought closer together. A further
innovation of some note is the Rcpp package, providing a more modern interface between R code
and compiled C++ code, described by Eddelbuettel and Francois (2011) and in a Google TechTalk.§
Fox (2009) reports on the development of the R project from a sociological viewpoint, based on
semi-structured interviews carried out in 2006 and 2007. He points to salient features of the social
organisation of the project that have enabled it to provide both a stable platform with strong conti-
nuity in functionality and a rich community encouraged to contribute software packages extending
the base functionality.
Prospects and challenges in R package development are discussed by Theußl et al. (2011); they
address some of the issues raised earlier with regard to the consequences of version and platform
drift for community-contributed add-ons. Contributed packages distributed through the compre-
hensive R archive network (CRAN) are now very numerous and have complex dependency struc-
tures. Cross-platform checks run on CRAN packages using multiple versions of R ranging from
released to development need careful planning to capture inter-package dependencies correctly and
to minimise the need for administrator intervention when things break, which they inevitably do
when changes are made.

14.4.1 R-Spatial: sp
In Bivand et al. (2008), we discuss the background for providing spatial data analysis functional-
ity in the R environment and how the need emerged for classes for spatial data (see also Câmara
et al. 2012, p. 238). From 2003, we attempted to make available mechanisms permitting a user
and developer community to grow. The R-sig-geo mailing list had in March 2012 over 2400 sub-
scribers, and Figure 14.2 shows the steady growth in the numbers of messages exchanged since its
inception. It is now the R list with most traffic, naturally except the main R-help and R-devel lists.
Mailing lists remain a vital part of open-source communities, connecting users with each other and

* http://www.intamap.org.
† http://www.nordholmen.net/sos4r/.
‡ http://www.joeconway.com/plr/doc/index.html.
§ http://www.youtube.com/watch?v=UZkaZhsOfT4.
342 GeoComputation

400

300
Number of emails

200

100

0
2004 2006 2008 2010 2012

FIGURE 14.2  Monthly numbers of emails on the R-sig-geo mailing list, 2003–2012.

developers, encouraging users to become developers and providing searchable archives of messages
(over 13,000 messages in the case of R-sig-geo).
The maptools package (Lewin-Koh et al. 2011) predates the sp package, which was released in
April 2005, and provided definitions of classes for spatial data (Pebesma et al. 2011a). maptools
has been adapted to use sp classes; it also provides coercion methods between sp classes and other
spatial data representations in other packages. The insight underlying the design of sp classes has
been that applied statisticians tend to “see” data as represented in rectangular tables, in R data.
frame objects. Spatial analysts “see” data as rasters or “shapefiles”. If these researchers are to
work together productively, their perceptions of their data should not be changed but rather accom-
modated. The sp classes behave like data.frame objects (when attribute data are present) but can
also be handled and visualised as raster or vector data in a “spatial” way. Table 14.1 shows the range
of data objects supported, including points, lines and polygons for vector data and regular grids
for raster data; the SpatialPixels representation is a regular grid representation recording cell
centre coordinates but dropping observations with no observed attribute data.

TABLE 14.1
Family of sp Classes
Data Type Class Attributes Extends
Points SpatialPoints None Spatial
Points SpatialPointsDataFrame data.frame SpatialPoints
Pixels SpatialPixels None SpatialPoints
Pixels SpatialPixelsDataFrame data.frame SpatialPixels
SpatialPointsDataFrame
Full grid SpatialGrid None SpatialPixels
Full grid SpatialGridDataFrame data.frame SpatialGrid
Line Line None
Lines Lines None Line list
Lines SpatialLines None Spatial, Lines list
Lines SpatialLinesDataFrame data.frame SpatialLines
Polygon Polygon None Line
Polygons Polygons None Polygon list
Polygons SpatialPolygons None Spatial, Polygons list
Polygons SpatialPolygonsDataFrame data.frame SpatialPolygons
GeoComputation and Open-Source Software 343

TABLE 14.2
Methods for sp Classes
Method What It Does
[ Select spatial items (points, lines, polygons or rows/cols from a grid) and/or attribute variables
$, $<-, [[, [[<- Retrieve, set or add attribute table columns
spsample Sample points from a set of polygons, on a set of lines or from a gridded area
bbox Get the bounding box
Proj4string Get or set the projection (coordinate reference system)
coordinates Set or retrieve coordinates
coerce Convert from one class to another
over Combine two different spatial objects

Table 14.2 lists some of the methods provided in the sp package; the most important are undoubtedly
the access and assignment functions $, $<-, [[, [[<-, which permit the Spatial*DataFrame objects
to behave as data.frame objects. This means that visualising relationships between raster and vector
attributes, or fitting a regression model to such attributes, involves no extra steps. One important com-
ponent of sp class objects is the coordinate reference system slot, represented in the form of a PROJ.4
string; it may be set missing but is used in both visualisation and analysis when specified.
Figure 14.3 shows that there were 122 CRAN dependencies on sp in March 2012, and a further
302 suggested sp but did not depend on or import from it. By comparison, when Bivand et al. (2008,
see corresponding figure on p. 5) was published, 23 packages depended on sp, of which 8 were writ-
ten and/or maintained by the book authors. This may be taken as an indication that the provision of
classes for spatial data has achieved its goals, to make it easier for researchers to get their own work
done without having to reinvent data representations.
In the short time since its publication on CRAN in March 2010 following 16 months in
R-Forge,* the raster package (Hijmans and van Etten 2011) has been adopted by many users.
van Etten and Hijmans (2010) have already published using the package, and undoubtedly many
papers will follow. For many purposes, the abstractions introduced in the package simplify the
SpatialGridDataFrame representation from sp, and because only tiles of the raster, raster

FIGURE 14.3  Dependencies on sp from CRAN packages, March 2012.

* https://r-forge.r-project.org/.
344 GeoComputation

stack or raster brick are held in memory, much larger data sets may be handled. The raster and
raster brick objects access single external files per object, while raster stack objects may use many
external files per object. The package also provides ways of undertaking map algebra on rasters,
including focal operations. It uses the rgdal package, among other data feeds, for reading from and
writing to files; we turn to this package next.

14.4.2 Geospatial Data Abstraction Library (GDAL/OGR) and PROJ.4: rgdal


The first raster versions of the rgdal package by Tim Keitt were made available in early 2003 and
entered CRAN in late 2003 (Keitt et al. 2011); it provided bindings to the GDAL geospatial library
for reading, writing and handling raster data. Since then, it has been merged with work on coordi-
nate reference system projection and OGR vector reading by Barry Rowlingson, extended to write
OGR vector files and supplied with wrapper functions using sp classes to contain the data being
imported and exported. Coordinate reference system projection was handled by building against
the PROJ.4 library, not least because GDAL itself requires the same library. Because rgdal loads
GDAL into a long-running application, R, the GDAL error handler is now set to the R error handler
immediately before each call to a GDAL function and restored immediately on function exit to
try to ensure thread safety, because of a report of error handler confusion when R and rgdal were
loaded into QGIS as a Python plug-in. When component stacking reaches these levels of complex-
ity, caution is required, because the developers of the components involved are unlikely to be fully
aware of each others’ intentions.
Since R 2.2, a Windows 32-bit binary of rgdal has been available from CRAN, thanks to help
from Brian Ripley and Uwe Ligges, and since R 2.12 a Windows 64-bit binary version has also
been made available. These are statically linked to GDAL, PROJ.4 and Expat,* an open-source
XML library used for reading KML and GPX files. Brian Ripley and Simon Urbanek have made it
possible for CRAN to provide OS X binary packages since R 2.15; OS X binary packages are also
available from Kyngchaos,† thanks to William Kyngesburye. The drivers available in the binary
packages are limited to those for which external dependencies were satisfied when the installed
images were made but meet most users’ needs for file import and export.
The use of the package is covered in Bivand et al. (2008, pp. 89–97) and exemplified throughout
the code examples from the book. Using the 8 county New York State leukaemia data set from
Waller and Gotway (2004), we can download and unzip it to a temporary directory, before reading
with readOGR:

> td <- tempdir()


> download.file("http://www.asdar-book.org/datasets/NY_data.zip",
+ destfile = paste(td, "NY_data.zip", sep = "/"))
> unzip(paste(td, "NY_data.zip", sep = "/"), exdir = td)
> library(rgdal)
Geospatial Data Abstraction Library extensions to R successfully loaded
Loaded GDAL runtime: GDAL 1.9.0, released 2011/12/29
Path to GDAL shared files:
Loaded PROJ.4 runtime: Rel. 4.8.0, 6 March 2012, [PJ_VERSION: 480]
Path to PROJ.4 shared files:
> NY <- readOGR(dsn = td, layer = "NY8_utm18")
OGR data source with driver: ESRI Shapefile
Source: "/tmp/Rtmp7cVkp2", layer: "NY8_utm18"

* http://expat.sourceforge.net/.
† http://www.kyngchaos.com/software/frameworks.
GeoComputation and Open-Source Software 345

with 281 features and 17 fields


Feature type: wkbPolygon with 2 dimensions
> class(NY)
[1] "SpatialPolygonsDataFrame"
attr(,"package")
[1] "sp"
> proj4string(NY)
[1] " +proj = utm +zone = 18 +ellps = WGS84 +units = m +no_defs"
> NY_ll <- spTransform(NY, CRS("+init = epsg:4326"))
> proj4string(NY_ll)
[1] " +init = epsg:4326 +proj = longlat +datum = WGS84 +no_defs +ellps = WGS84
+towgs84 = 0,0,0"
> writeOGR(NY_ll, dsn = paste(td, "NY.kml", sep = "/"), layer = "NY",
+ driver = "KML")

To write the tract boundaries as a KML file, we need to transform it to geographical coordinates
using the appropriate spTransform method for SpatialPolygons objects and employing
lookup in the EPSG table to define the target coordinate reference system. We use writeOGR
to write to file, specifying the required driver. Naturally, without the linked open-source GDAL,
PROJ.4 and Expat libraries, the programming involved would be much more demanding, prob-
ably prohibitively so, should one wish to access many different data formats. For example, GDAL
includes an OGR WFS driver:

> ogrInfo("WFS:http://www2.dmsolutions.ca/cgi-bin/mswfs_gmap",
"popplace")
Source: "WFS:http://www2.dmsolutions.ca/cgi-bin/mswfs_gmap", layer:
"popplace"
Driver: WFS number of rows 497
Feature type: wkbPoint with 2 dimensions
+proj = lcc +lat_1 = 49 +lat_2 = 77 +lat_0 = 49 +lon_0 = -95 +x_0 = 0 +y_0 = 0
+datum = NAD83 +units = m +no_defs
Number of fields: 1
name type length typeName
1 gml_id 4 0 String

The raster package (Hijmans and van Etten 2011) uses rgdal extensively to manage access to tiles of
raster data. It is also used by the new landsat package documented by Goslee (2011), which is intended
to support research into atmospheric and topographic correction methods for multispectral satellite
data. Another interesting package using rgdal is aqp, providing algorithms related to modelling of soil
resources, soil classification, soil profile aggregation and visualisation (Beaudette and Roudier 2011).

14.4.3 Geometry Engine, Open Source: rgeos


Development of the GEOS library interface to R began in late 2009 and made much progress in the
2010 Google Summer of Coding, with Colin Rundel making a large contribution. The rgeos pack-
age was released on CRAN in March 2011 (Bivand and Rundel 2011) and is beginning to be used
in other packages. Windows and OS X binary packages are available on CRAN, thanks to Brian
Ripley, Simon Urbanek and Uwe Ligges. The interface is programmed using the GEOS C API and
uses the thread-safe handle offered by GEOS. One issue uncovered by Colin Rundel in his work on
the interface was the importance of the coordinate precision model, which can now be manipulated
from R using setScale.
346 GeoComputation

So far, many of the predicates and operators are applied to all member geometries, but work
is progressing, spurred by clear needs demonstrated by Altman and McDonald (2011) in the
BARD – Better Automated ReDistricting – package (Altman 2011) for finding reduced sets of
candidate pairs of contiguous geometries. Using the GEOS Sort-Tile-Recursive (STR) tree, we
build a tree of geometry envelopes (bounding boxes) and then query with the same envelopes with
gUnarySTRtreeQuery, passing the output candidate neighbours to the poly2nb function in
the spdep package:

> la_blks <- readOGR(".", "tgr06037blk00")


> library(spdep)
> library(rgeos)
> system.time(nb <- poly2nb(la_blks,
+ foundInBox = gUnarySTRtreeQuery(la_blks)))
user system elapsed
14.723 0.111 15.167
> nb

Neighbour list object:


Number of regions: 89614
Number of nonzero links: 623984
Percentage nonzero weights: 0.007770013
Average number of links: 6.963019

Finding the neighbours is very much faster than using the internal brute-force approach for finding
overlapping bounding boxes in poly2nb, and working with all the census blocks in Los Angeles
becomes feasible. The new pycno package by Brunsdon (2011) also uses rgeos internally for
pycnophylactic interpolation; here we smooth the leukaemia rate from the 8 county New York data
set. In addition, for display, we use gBuffer from rgeos to add a 10 km buffer around supposed
point source pollution sites shown in Figure 14.4:

> library(pycno)
> NY$eZ <- (1000 * (NY$TRACTCAS + 1))/NY$POP8
> NYp <- pycno(NY, pops = NY$e, celldim = 500)
> TCE <- readOGR(dsn = td, layer = "TCE")
> TCE10k <- gBuffer(TCE, width = 10000)

Work on rgeos is continuing actively, and improvements in stability and speed can be expected
as more users report their experiences. A specific issue raised in interfacing GEOS (and OGR)
is that use is made of the OGC SFS geometry specification, but the SpatialPolygons class
in sp is more like a shapefile, without clear assignation of interior rings to exterior rings. Had the
SpatialPolygons class in sp been designed a little later, it might well have followed the OGC
SFS geometry specification, but this in turn would have led to additional difficulties for users with-
out conforming data.

14.4.4 Geographic Resources Analysis Support System: spgrass6


The original interface package between GRASS 5 and R, GRASS, written and released on
CRAN in 2000, was tight-coupled, including a local copy of the core GRASS library, so that
GRASS database files could be read into and written from R (Bivand 2000, Bivand and Neteler
2000). Figure 14.5 shows how the R session was started from the command prompt in a running
GRASS session and location, giving ready access to GRASS and other commands through sys-
tem and to GRASS itself through calls to compiled C functions. This had the advantage of speed,
but the weakness of containing a modified fork of the core GRASS library, modified to use the
GeoComputation and Open-Source Software 347

(a) (b)

FIGURE 14.4  (a) Choropleth and (b) pycnophylactic interpolation maps of the leukaemia rate 1978–1982,
New York state 8 county data set (note that figure class intervals are not aligned with each other).

R interactive session
System(‘g.region −p’)
System(‘psql midwest’)
.Call(‘gmeta’)
Dynamically loaded
GRASS environment and location Modules

System shell and environment (csh, ksh, bash)

Underlying operating system

FIGURE 14.5  Design of software layering in the GRASS 5 interface to R, using compiled C code.

R error handler and to remove all calls to exit in GRASS C code. Merging in revisions from the
GRASS code repository was demanding, but the interface served for 5 years, supporting among
others Grohmann (2004) in work on morphometric analysis and Garzón et al. (2006) on predict-
ing habitat suitability.
Figure 14.6, showing the relative positions of software components, has two readings: the contin-
uous line bounded box represents a setting similar to that of the GRASS package, with R facing the
users. The second reading is the larger dashed box, where R is a computational software component
in a larger system, with a GIS or other (web) application facing the users, probably through a GUI.
The application then uses R, thought of as running within a GIS session and location, to handle data
from storage for visualisation and/or storage.
GRASS 6 was released in March 2005 and has now reached 6.4.3 (GRASS Development Team
2012). Bivand et al. (2008, pp. 99–106) and Neteler and Mitasova (2008, pp. 353–364) describe
the use of the reimplemented interface package spgrass6, which works with GRASS 6 and the
development version GRASS 7. The interface was released from a Sourceforge project at the same
time as GRASS 6 and was accepted on CRAN in August 2006, to be ready for a workshop at
348 GeoComputation

External
databases

External R/GIS GIS/application


GIS functionality interfaces GUI

External
files

FIGURE 14.6  Positioning of software components involving R and GIS.

the first FOSS4G OSGeo conference in Lausanne, Switzerland. spgrass6 is loose-coupled, using
GDAL on both sides of the interface to exchange vector and raster data by writing to and reading
from a temporary directory. If a GRASS-GDAL plug-in is present, data can be read directly from
GRASS into R using GDAL, but using temporary files is robust and not very wasteful of time or
disk space.
From April 2009, spgrass6 was revised to support a second mode of operation (Bivand 2011).
The earlier way of using R within a GRASS session was supplemented by the ability to initiate a
GRASS session from R, setting up the environment variables used by GRASS and, if necessary,
creating a throwaway location for use until the termination of the R session. This was comple-
mented by interfacing most GRASS commands directly in a cross-platform fashion, using the –
interface-description flag that GRASS commands use to return their flags, parameters and
other attributes in an XML file. Using the XML package in R to parse the interface descriptions
made it possible to write parseGRASS to parse the interface once for each GRASS command
used, caching the results; doGRASS to collate a string comprising the GRASS command and user-
supplied flags and parameters, all checked against the interface description; and execGRASS to
run the command through system in a portable way. The arguments to the two latter functions
have recently been simplified thanks to suggestions from Rainer Krug.
In the first example, we initiate a GRASS session from R, using the SpatialGridDataFrame
object from pycno as a location template. Next, we export a SpatialPolygonsDataFrame
object to GRASS with writeVECT6 and apply a helper function vect2neigh written by
Markus Neteler, exploiting the topological vector representation in GRASS to return rook
neighbours (with non-zero length shared boundaries) with shared boundary length in metres and
total boundary length per feature, with features identified by their GRASS category numbers in
this case:

> library(spgrass6)
> set.ignore.stderrOption(TRUE)
> initGRASS("/home/rsb/topics/grass/g642/grass-6.4.2", home = tempdir(),
+ SG = NYp)
> writeVECT6(NY, vname = "NY", v.in.ogr_flags = "o")
> bl <- vect2neigh("NY", ID = "cat", units = "me")

> str(bl)
GeoComputation and Open-Source Software 349

Classes "GRASSneigh", "spatial.neighbour" and "data.frame": 1536 obs. of


3 variables:
$ left : int 1 1 1 1 1 1 1 2 2 2 …
$ right : int 2 13 14 15 48 49 50 1 3 13 …
$ length: num 732 902 458 1804 145 …
- attr(*, "external") = num 0 0 0 0 0 0 0 0 0 0 …
- attr(*, "total") = Named num 1329 5178 5620 13156 5139 …
..- attr(*, "names") = chr "-1" "1" "2" "3" …
- attr(*, "region.id") = chr "1" "2" "3" "4" …
- attr(*, "n") = int 281

The second example replicates the rgeos gBuffer given earlier, by exporting a
SpatialPointsDataFrame object to GRASS with writeVECT6 and using execGRASS to
run the GRASS command v.buffer on the input vector object, returning the results to R with
readVECT6. The use of the “6” tag in spgrass6 function names is now misleading, as the func-
tions work for GRASS versions 6 and 7, but was originally introduced to signal the difference from
GRASS version 5. Generic wrappers will be put in place before GRASS 7 is released:

> writeVECT6(TCE, vname = "TCE", v.in.ogr_flags = "o")


> execGRASS("v.buffer", input = "TCE", output = "TCE10k", distance = 10000)
> TCE10kG <- readVECT6("TCE10k", with_c = TRUE)

The output buffers from GRASS v.buffer and rgeos gBuffer are not exactly identical,
because they do not use the same numbers of boundary coordinates in the same positions to
represent the buffers. Overplotting does, however, show that the buffers are the same given those
representational differences.
The interface between GRASS 6 and R has been used in research in a number of fields, for example,
by Carrera-Hernández and Gaskin (2008) in implementing the Basin of Mexico hydrogeological
database and by Grohmann and Steiner (2008) in SRTM resampling using short-distance kriging.
The work by Haywood and Stone (2011) is interesting in that it uses the interface to apply the Weka
machine learning software suite, itself interfaced to R through the RWeka package, to GIS data in
GRASS; R then becomes a convenient bridge between applications, with the GRASS–R interface
opening up other possibilities beyond R (see also Rico and Maseda 2012). Finally, Jasiewicz (2011)
reports the transfer of fuzzy inference system technology to a GRASS add-on after prototyping
using an R implementation in the sets package (Meyer and Hornik 2009), which was not intended
for large data sets.

14.4.5 SAGA–RSAGA, Geoprocessing (RPyGeo), Marine


Geospatial Ecology Tools and Others
The open-source SAGA GIS has been interfaced with R using the SAGA command-line interface in
the RSAGA package first released to CRAN in early 2008 (Brenning 2011). The package provides
extensive facilities for scripting SAGA through R, as spgrass6 also now does, since using R to script
repetitive tasks in a GIS turned out to be of value to researchers. The author of RSAGA, Alexander
Brenning, has also contributed the RPyGeo package, based on RSAGA, to auto-generate and run
ArcGIS Python Geoprocessor commands from R. Further examples of the use of R with ArcGIS
are given by Krivoruchko (2011) to supplement methods implemented in ArcGIS and by Roberts
et al. (2010), who have developed Marine Geospatial Ecology Tools (MGET, also known as the
GeoEco Python package).*

* http://code.env.duke.edu/projects/mget.
350 GeoComputation

The R interface with SAGA has been used by Brenning (2009) for integrating terrain analysis
and multispectral remote sensing in automatic rock glacier detection, using modern regression tech-
niques – the availability of many varied techniques in R permitted them to be evaluated rapidly.
Goetz et al. (2011) follow this up in integrating physical and empirical landslide models. In a paper
on geostatistical modelling of topography, Hengl et al. (2008) uses the interface between R and
SAGA to benefit from the strengths of both software components. Hengl et al. (2010) address the
associated problem of stream network uncertainty, when the stream networks are derived from inter-
polated elevation data, again using the interface between SAGA and R; R is also used extensively for
scripting SAGA. Tomislav Hengl is also very active in organising courses for field scientists using
open-source geospatial software, especially the GEOSTAT series,* run in the open-source spirit,
and now with a useful collection of video recordings.
Finally, it is worth noting that TerraLib is linked to R using sp classes in the aRT package, which
uses R as the computational front-end and TerraLib as a data store and middleware component.†

14.5  FUTURE PROSPECTS


The relationships between GC and open-source software development reviewed earlier show prom-
ise for the future. GC continues to provide new impulses for innovative applications and deeper
insights into the nature of spatial data. Both the availability of spatial data and the pervasiveness
of geospatial applications, not least in location services, are increasing. Existing software compo-
nents are being used to support these advances and are being challenged to adapt to new platforms,
especially mobile platforms. Choices are being made between server and client-side functionalities,
often in settings in which developer communities and software companies find themselves over-
taken by the opportunities offered by technology and desired by users.
As an example, we have seen earlier that TerraLib has offered broad functionality. The current
version, 4.2.2, is well supported, but the TerraLib developers are moving to embrace much more of
the OSGeo community than in the past. It seems that the envisioned developments in TerraLib 5
will combine its unique software components with more OSGeo components as a stack.
Figure 14.7 is taken from a presentation‡ by Karine Reis Ferreira and Pedro Ribeiro Andrade
and reflects some of the prospects being considered by the development team. These design choices
engage many more existing projects, leveraging the user and developer communities of these projects
and increasing opportunities for shared technology exploration and development. The push towards
representing, querying and analysing spatio-temporal data is of particular importance, given the
publication of Cressie and Wikle (2011). It will be of great interest to see how the broader TerraLib
community develops in coming years, also in its interactions with other open-source geospatial
communities, and how the aRT interface with R progresses.
Experience from R spatial has shown that the nurturing of communities of interest and intention
is of fundamental importance. One unresolved issue concerns channels for information exchange, in
which the aging mailing list technology is straining to keep afloat as newer users prefer hosted fora
to search for answers to what they understand to be their questions. I believe that mailing lists have a
hidden bonus, that is, that readers, if they are willing to do so, can read threads that are not relevant
to their current concerns, but which may offer insight that will increase productivity later on.§

* http://geostat-course.org/.
† http://www.leg.ufpr.br/aRT.
‡ http://giv-wikis.uni-muenster.de/agp/pub/Main/SpatioTemporalDataInRWorkshop2011/ST-Data-in-R-2011_Reis­

Ferreira_STData_2011.pdf.
§ I read the development lists of R, GRASS, GDAL, GEOS and PROJ.4, among others, and many of the insights presented

in this chapter have matured from exchanges on these lists; administering the R-sig-geo list has been a most valuable
source of information.
GeoComputation and Open-Source Software 351

PROJ.4
(2)
(3)(4)
TerraLib 5.0 (5) GEOS

GDAL
(1)
OGR
Web ...
DBMS Files
services Existing
PostGIS, oracle WMS, WFS, Shapefile, KML, libraries
spatial, SQLite WCS, etc.. geotiff, etc...
etc...

FIGURE 14.7  Envisioned developments in TerraLib 5: (1) support to different kinds of data sources;
(2) extensive use of existing libraries; (3) more modular, simpler and more easily extensible architecture;
(4) OGC compliant (SFS-SQL, OGC Web Service, etc.); and (5) represent and query spatio-temporal data.

Naturally, other forms of communication, such as IRC (Internet Relay Chat) chats in OSGeo,* or
blogs by Barry Rowlingson† and Daniel Nüst‡ are interesting and less serious – more encouraging –
in tone; being able to include graphics in wiki pages, web fora and blogs is often very helpful. Being
able to search these resources and mailing list archives remains important and may not be easy to
achieve. So one challenge is to attempt to sustain community memory, to try to avoid too many
repeat solutions being offered to questions that have been resolved.
Whether memory of past achievements and insights is a future prospect or not is, of course, a
rather paradoxical issue. I would argue that very much of what GC has been doing over the past
decades has been to compute on, and develop computational techniques for handling, problems
that were proposed in earlier years, when analysis of even small data sets was exhausting (Bivand
2009). In that sense, memory is not unimportant, because we may make progress when we confront
the insights and propositions of the past with regard to research problems, algorithms or tools with
fresh opportunities offered by advances in data gathering and computational technologies, both in
hardware and in software. In this context, the growing importance of open-source software is also
a return to one of the ways in which research was done when spatial analysis and spatial statistics
were first established.

REFERENCES
Altman, M. (2011). BARD: Better automated redistricting. R package version 1.24, http://CRAN.R-project.
org/src/contrib/Archive/BARD/BARD_1.24.tar.gz.
Altman, M. and McDonald, M. P. (2011). BARD: Better automated redistricting. Journal of Statistical Software,
42(4):1–28.
Batcheller, J. and Reitsma, F. (2010). Implementing feature level semantics for spatial data discovery:
Supporting the reuse of legacy data using open source components. Computers, Environment and Urban
Systems, 34(4):333–344.
Beaudette, D. and Roudier, P. (2011). aqp: Algorithms for quantitative pedology. R package version 0.99-5,
http://CRAN.R-project.org/package=aqp.
Bentley, J., Knuth, D. E., and McIlroy, M. D. (1986). Programming pearls: A literate program. Communications
of the ACM, 29(6):471–483.

* http://wiki.osgeo.org/wiki/IRC.
† http://geospaced.blogspot.com/.
‡ http://www.nordholmen.net/sos4r/.
352 GeoComputation

Bivand, R. (2000). Using the R statistical data analysis language on GRASS 5.0 GIS database files. Computers
& Geosciences, 26(9–10):1043–1052.
Bivand, R. (2009). Applying measures of spatial autocorrelation: Computation and simulation. Geographical
Analysis, 41(4):375–384.
Bivand, R. (2011). spgrass6: Interface between GRASS 6 and R. R package version 0.7-4, http://CRAN.R-
project.org/package=spgrass6.
Bivand, R. and Lucas, A. E. (2000). Integrating models and geographical information systems. In Openshaw, S.
and Abrahart, R., eds., GeoComputation, pp. 331–363. Taylor & Francis, London, U.K.
Bivand, R. and Neteler, M. (2000). Open source geocomputation: Using the R data analysis language
integrated with GRASS GIS and PostgreSQL data base systems. In GeoComputation 2000. Proceedings
of the Fifth International Conference on GeoComputation, London, U.K. http://spatial.nhh.no/gc00/
geocomp2000.pdf.
Bivand, R., Pebesma, E. J., and Gómez-Rubio, V. (2008). Applied Spatial Data Analysis with R. Springer,
New York.
Bivand, R. and Rundel, C. (2011). rgeos: Interface to geometry engine—Open source (GEOS). R package
version 0.1-9, http://CRAN.R-project.org/package=rgeos.
Branger, F., Jankowfsky, S., Vannier, O., Viallet, P., Debionne, S., and Braud, I. (2012). Use of open-source GIS
for the pre-processing of distributed hydrological models. In Bocher, E. and Neteler, M., eds., Geospatial
Free and Open Source Software in the 21st Century, Lecture Notes in Geoinformation and Cartography,
pp. 35–48. Springer-Verlag, Berlin, Germany.
Bray, R. (2008). MapGuide open source. In Hall, G. B. and Leahy, M., eds., Open Source Approaches in Spatial
Data Handling, pp. 131–152. Springer-Verlag, Berlin, Germany.
Brenning, A. (2009). Benchmarking classifiers to optimally integrate terrain analysis and multispectral remote
sensing in automatic rock glacier detection. Remote Sensing of Environment, 113(1):239–247.
Brenning, A. (2011). Rsaga: Saga geoprocessing and terrain analysis in R. R package version 0.92-1, http://
CRAN.R-project.org/package=RSAGA.
Brunsdon, C. (2011). pycno: Pycnophylactic interpolation. R package version 1.1, http://CRAN.R-project.org/
src/contrib/Archive/pycno/pycno_1.1.tar.gz.
Cagnacci, F. and Urbano, F. (2008). Managing wildlife: A spatial information system for GPS collars data.
Environmental Modelling & Software, 23(7):957–959.
Câmara, G., Vinhas, L., and de Souza, R. C. M. (2012). Free and open source GIS: Will there ever be a
geo-Linux? In Bocher, E. and Neteler, M., eds., Geospatial Free and Open Source Software in the
21st Century, Lecture Notes in Geoinformation and Cartography, pp. 229–245. Springer-Verlag,
Berlin, Germany.
Câmara, G., Vinhas, L., Ferreira, K. R., de Queiroz, G. R., de Souza, R. C. M., Monteiro, A. M. V., de Carvalho,
M. T., Casanova, M. A., and de Freitas, U. M. (2008). Terralib: An open source GIS library for large-
scale environmental and socio-economic applications. In Hall, G. B. and Leahy, M., eds., Open Source
Approaches in Spatial Data Handling, pp. 247–270. Springer-Verlag, Berlin, Germany.
Carrera-Hernández, J. and Gaskin, S. (2008). The basin of Mexico hydrogeological database (BMHDB):
Implementation, queries and interaction with open source software. Environmental Modelling &
Software, 23(10–11):1271–1279.
Chambers, J. M. (2008). Software for Data Analysis: Programming with R. Springer, New York.
Chen, D., Shams, S., Carmona-Moreno, C., and Leone, A. (2010). Assessment of open source GIS software
for water resources management in developing countries. Journal of Hydro-Environment Research,
4(3):253–264.
Chen, R. and Xie, J. (2008). Open source databases and their spatial extensions. In Hall, G. B. and Leahy, M.,
eds., Open Source Approaches in Spatial Data Handling, pp. 105–129. Springer-Verlag, Berlin, Germany.
Cressie, N. and Wikle, C. K. (2011). Statistics for Spatio-Temporal Data. John Wiley, Hoboken, NJ.
de Espindola, G. M., de Aguiar, A. P. D., Pebesma, E., Câmara, G., and Fonseca, L. (2011). Agricultural land
use dynamics in the Brazilian Amazon based on remote sensing and census data. Applied Geography,
32(2):240–252.
Dunfey, R., Gittings, B., and Batcheller, J. (2006). Towards an open architecture for vector GIS. Computers &
Geosciences, 32(10):1720–1732.
Eddelbuettel, D. and Francois, R. (2011). Rcpp: Seamless R and C++ integration. Journal of Statistical
Software, 40(8):1–18.
Erle, S., Gibson, R., and Walsh, J. (2005). Mapping Hacks: Tips & Tools for Electronic Cartography. O’Reilly,
Sebastopol, CA.
GeoComputation and Open-Source Software 353

Fisher, R. and Myers, B. (2011). Free and simple GIS as appropriate for health mapping in a low resource
setting: A case study in eastern Indonesia. International Journal of Health Geographics, 10(15):1–11.
Fox, J. (2009). Aspects of the social organization and trajectory of the R project. The R Journal, 1(2):5–13.
Gahegan, M., Hardisty, F., Demšar, U., and Takatsuka, M. (2008). GeoVISTA Studio: Reusability by design.
In Hall, G. B. and Leahy, M., eds., Open Source Approaches in Spatial Data Handling, pp. 201–220.
Springer-Verlag, Berlin, Germany.
Garzón, M. B., Blazek, R., Neteler, M., de Diosa, R. S., Olleroa, H. S., and Furlanello, C. (2006). Predicting
habitat suitability with machine learning models: The potential area of Pinus sylvestris l. in the Iberian
Peninsula. Ecological Modelling, 197(3–4):383–393.
Gibson, R. and Erle, S. (2006). Google Maps Hacks. O’Reilly, Sebastopol, CA.
Goetz, J., Guthrie, R., and Brenning, A. (2011). Integrating physical and empirical landslide susceptibility
models using generalized additive models. Geomorphology, 129(3–4):376–386.
Goslee, S. (2011). Analyzing remote sensing data in R: The landsat package. Journal of Statistical Software,
43(4):1–25.
GRASS Development Team. (2012). GRASS 6.4 users manual, http://grass.osgeo.org/grass64/manuals/
html64_user/.
Grohmann, C. (2004). Morphometric analysis in geographic information systems: Applications of free soft-
ware GRASS and R. Computers & Geosciences, 30(9–10):1055–1067.
Grohmann, C. and Steiner, S. (2008). SRTM resample with short distance-low nugget kriging. International
Journal of Geographical Information Science, 22(8):895–906.
Hall, G. B., Chipeniuk, R., Feick, R. D., Leahy, M. G., and Deparday, V. (2010). Community-based pro-
duction of geographic information using open source software and web 2.0. International Journal of
Geographical Information Science, 24(5):761–781.
Hall, G. B. and Leahy, M. (2008a). Design and implementation of a map-centred synchronous collaboration
tool using open source components: The MapChat project. In Hall, G. B. and Leahy, M., eds., Open
Source Approaches in Spatial Data Handling, pp. 221–245. Springer-Verlag, Berlin, Germany.
Hall, G. B. and Leahy, M., eds. (2008b). Open Source Approaches in Spatial Data Handling. Springer-Verlag,
Berlin, Germany.
Haywood, A. and Stone, C. (2011). Mapping eucalypt forest susceptible to dieback associated with bell min-
ers (Manorina melanophys) using laser scanning, spot 5 and ancillary topographical data. Ecological
Modelling, 222(5):1174–1184.
Hengl, T., Bajat, B., Blagojevi, D., and Reuter, H. (2008). Geostatistical modeling of topography using auxil-
iary maps. Computers & Geosciences, 34(12):1886–1899.
Hengl, T., Heuvelink, G., and van Loon, E. (2010). On the uncertainty of stream networks derived from eleva-
tion data: The error propagation approach. Hydrology and Earth System Sciences, 14(7):1153–1165.
Hijmans, R. J. and van Etten, J. (2011). raster: Geographic analysis and modeling with raster data. R package
version 1.9-11, http://CRAN.R-project.org/package=raster.
Jasiewicz, J. (2011). A new GRASS GIS fuzzy inference system for massive data analysis. Computers &
Geosciences, 37(9):1525–1531.
Jasiewicz, J. and Metz, M. (2011). A new GRASS GIS toolkit for Hortonian analysis of drainage networks.
Computers & Geosciences, 37(8):1162–1173.
Keitt, T. H., Bivand, R., Pebesma, E., and Rowlingson, B. (2011). rgdal: Bindings for the geospatial data
abstraction library. R package version 0.7-2, http://CRAN.R-project.org/package=rgdal.
Kernighan, B. W. and Pike, R. (1984). The UNIX Programming Environment. Prentice-Hall, Englewood Cliffs, NJ.
Kernighan, B. W. and Pike, R. (1999). The Practice of Programming. Addison-Wesley, Reading, MA.
Kernighan, B. W. and Plauger, P. J. (1976). Software Tools. Addison-Wesley, Reading, MA.
Kralidis, A. T. (2008). Geospatial open source and open standards convergences. In Hall, G. B. and Leahy, M.,
eds., Open Source Approaches in Spatial Data Handling, pp. 1–20. Springer-Verlag, Berlin, Germany.
Krivoruchko, K. (2011). Spatial Statistical Data Analysis for GIS Users. ESRI Press, Redlands, CA.
Krug, R. M., Roura-Pascual, N., and Richardson, D. M. (2010). Clearing of invasive alien plants under different
budget scenarios: Using a simulation model to test efficiency. Biological Invasions, 12(12):4099–4112.
Leisch, F. and Rossini, A. J. (2003). Reproducible statistical research. Chance, 16(2):46–50.
Lewin-Koh, N. J., Bivand, R. et al. (2011). maptools: Tools for reading and handling spatial objects. R package
version 0.8-10, http://CRAN.R-project.org/package=maptools.
Lime, S. (2008). MapServer. In Hall, G. B. and Leahy, M., eds., Open Source Approaches in Spatial Data
Handling, pp. 65–85. Springer-Verlag, Berlin, Germany.
Luis, J. F. (2007). Mirone: A multi-purpose tool for exploring grid data. Computers & Geosciences, 33(1):31–41.
354 GeoComputation

McIhagga, D. (2008). Communities of practice and the business of open source web mapping. In Hall, G. B.
and Leahy, M., eds., Open Source Approaches in Spatial Data Handling, pp. 49–64. Springer-Verlag,
Berlin, Germany.
McIlroy, M. D. (1969).‘Mass produced’ software components. In Naur, P. and Randell, B., eds., Software
Engineering, pp. 79–87. Conference on Software Engineering, NATO Science Committee, NATO
Scientific Affairs Division, Brussels, Belgium.
Meyer, D. and Hornik, K. (2009). Generalized and customizable sets in R. Journal of Statistical Software,
31(2):1–27.
Mitchell, T. (2005). Web Mapping Illustrated. O’Reilly, Sebastopol, CA.
Neteler, M., Beaudette, D., Cavallini, P., Lami, L., and Cepicky, J. (2008). GRASS GIS. In Hall, G. B. and
Leahy, M., eds., Open Source Approaches in Spatial Data Handling, pp. 171–199. Springer-Verlag,
Berlin, Germany.
Neteler, M., Bowman, M. H., Landa, M., and Metz, M. (2012). GRASS GIS: A multi-purpose open source GIS.
Environmental Modelling & Software, 31(1):124–130.
Neteler, M. and Mitasova, H. (2008). Open Source GIS: A GRASS GIS Approach, 3rd edn. Springer, New York.
Nüst, D., Stasch, C., and Pebesma, E. (2011). Connecting R to the sensor web. In Geertman, S., Reinhardt, W.,
and Toppen, F., eds., Advancing Geoinformation Science for a Changing World, volume 1 of Lecture
Notes in Geoinformation and Cartography, vol. 1, pp. 227–246. Springer-Verlag, Berlin, Germany.
Pebesma, E., Bivand, R. et al. (2011a). sp: Classes and methods for spatial data. R package version 0.9-88,
http://CRAN.R-project.org/package=sp.
Pebesma, E., Cornford, D., Dubois, G., Heuvelink, G. B. M., Hristopulos, D., Pilz, J., Stoehlker, U., Morin, G.,
and Skoien, J. O. (2011b). INTAMAP: The design and implementation of an interoperable automated
interpolation web service. Computers & Geosciences, 37(3):343–352.
R Development Core Team. (2011). R: A Language and Environment for Statistical Computing. ISBN
3-900051-07-0, http://www.R-project.org/.
Ramsey, P. (2007). The state of open source GIS. Technical report, Refractions Research Inc., Victoria, British
Columbia, Canada.
Rey, S. J. (2009). Show me the code: Spatial analysis and open source. Journal of Geographical Systems,
11(2):191–207.
Rico, E. C. and Maseda, R. C. (2012). An object-oriented approach to automatic classification of panchro-
matic aerial photographs with GRASS GIS and R. In Bocher, E. and Neteler, M., eds., Geospatial Free
and Open Source Software in the 21st Century, Lecture Notes in Geoinformation and Cartography, pp.
123–137. Springer-Verlag, Berlin, Germany.
Roberts, J. J., Best, B. D., Dunn, D. C., Treml, E. A., and Halpin, P. N. (2010). Marine geospatial ecology tools:
An integrated framework for ecological geoprocessing with ArcGIS, Python, R, MATLAB, and C++.
Environmental Modelling & Software, 25(10):1197–1207.
Robertson, C. and Farmer, C. J. Q. (2008). Developing an open-source framework for surveillance and analysis
of emerging zoonotic diseases. In Proceedings of the Fifth National Symposium on Geo-Informatics, pp.
123–134, Colombo, Sri Lanka. Geo-Informatics Society of Sri Lanka.
Robertson, C., Farmer, C. J. Q., Nelson, T. A., Mackenzie, I. K., Wulder, M. A., and White, J. C. (2009).
Determination of the compositional change (1999–2006) in the pine forests of British Columbia due to
mountain pine beetle infestation. Environmental Monitoring and Assessment, 158(1–4):593–608.
Rocchini, D., Metz, M., Frigeri, A., Delucchi, L., Marcantonio, M., and Neteler, M. (2011). Robust rectification
of aerial photographs in an open source environment. Computers & Geosciences, 39:145–151.
Roiz, D., Neteler, M., Castellani, C., Arnoldi, D., and Rizzoli, A. (2011). Climatic factors driving inva-
sion of the tiger mosquito (Aedes albopictus) into new areas of Trentino, northern Italy. PLoS ONE,
6(4):e14800.
Roura-Pascual, N., Richardson, D. M., Krug, R. M., Brown, A., Chapman, R. A., Forsyth, G. G., Maitre, D. C. L.
et al. (2009). Ecology and management of alien plant invasions in South African fynbos: Accommodating
key complexities in objective decision making. Biological Conservation, 142(8):1595–1604.
Schweik, C. M., Fernandez, M. T., Hamel, M. P., Kashwan, P., Lewis, Q., and Stepanov, A. (2009). Reflections
of an online geographic information systems course based on open source software. Social Science
Computer Review, 27(1):118–129.
Sherman, G. E. (2008). Desktop GIS: Mapping the Planet with Open Source Tools. Pragmatic Bookshelf,
Raleigh, NC, http://pragprog.com/book/gsdgis/desktop-gis.
Sorokine, A. (2007). Implementation of a parallel high-performance visualization technique in GRASS GIS.
Computers & Geosciences, 33(5):685–695.
GeoComputation and Open-Source Software 355

Steiniger, S. and Bocher, E. (2009). An overview on current free and open source desktop GIS developments.
International Journal of Geographical Information Science, 23(10):1345–1370.
Steiniger, S. and Hay, G. J. (2009). Free and open source geographic information tools for landscape ecology.
Ecological Informatics, 4(4):183–195.
Steiniger, S. and Hunter, A. J. S. (2012). Free and open source GIS software for building a spatial data infrastructure.
In Bocher, E. and Neteler, M., eds., Geospatial Free and Open Source Software in the 21st Century, Lecture
Notes in Geoinformation and Cartography, pp. 247–261. Springer-Verlag, Berlin, Germany.
Sui, D. and DeLyser, D. (2011). Crossing the qualitative-quantitative chasm I: Hybrid geographies, the spatial
turn, and volunteered geographic information (VGI). Progress in Human Geography, 36(1):111–124.
Theußl, S., Ligges, U., and Hornik, K. (2011). Prospects and challenges in R package development.
Computational Statistics, 26(3):395–404.
Turton, I. (2008). GeoTools. In Hall, G. B. and Leahy, M., eds., Open Source Approaches in Spatial Data
Handling, pp. 153–169. Springer-Verlag, Berlin, Germany.
van Etten, J. and Hijmans, R. J. (2010). A geospatial modelling approach integrating archaeobotany and genet-
ics to trace the origin and dispersal of domesticated plants. PLoS ONE, 5(8):e12060.
Vanmeulebrouk, B., Rivett, U., Ricketts, A., and Loudon, M. (2008). Open source GIS for HIV/AIDS
management. International Journal of Health Geographics, 7(53):1–16.
Waller, L. A. and Gotway, C. A. (2004). Applied Spatial Statistics for Public Health Data. John Wiley & Sons,
Hoboken, NJ.
Walter, G., Warmerdam, F., and Farris-Manning, P. (2002). An open source tool for geospatial image
exploitation. In IGARSS 2002: Integrating Our View of the Planet, IEEE International Symposium on
Geoscience and Remote Sensing (IGARSS), Toronto, Ontario, Canada, pp. 3522–3524. IEEE, New York.
Warmerdam, F. (2008). The geospatial data abstraction library. In Hall, G. B. and Leahy, M., eds., Open Source
Approaches in Spatial Data Handling, pp. 87–104. Springer-Verlag, Berlin, Germany.
Weidmann, N. B. and Gleditsch, K. S. (2010). Mapping and measuring Country shapes. The R Journal,
2(1):18–24.
Weidmann, N. B., Kuse, D., and Gleditsch, K. S. (2011). cshapes: Cshapes dataset and utilities. R package ver-
sion 0.3-1, http://CRAN.R-project.org/package=cshapes.
Yi, Q., Hoskins, R. E., Hillringhouse, E. A., Sorensen, S. S., Oberle, M. W., Fuller, S. S., and Wallace, J. C.
(2008). Integrating open-source technologies to build low-cost information systems for improved access
to public health data. International Journal of Health Geographics, 7(29):1–13.
15 Location-Based
GeoComputation
Strategic Rethinking of
the Opportunities for
Outdoor Research Afforded
by Mobile Devices
Sam Meek, Gary Priestnall and Robert J. Abrahart

CONTENTS
Abstract........................................................................................................................................... 357
15.1 Introduction........................................................................................................................... 358
15.2 Defining LBGC.....................................................................................................................360
15.3 Geographical Scope of LBGC...............................................................................................364
15.4 Major Characteristics of LBGC............................................................................................. 367
15.4.1 Importance of Being in the Study Area for GC........................................................ 368
15.4.2 Iterative Model Building in the Field........................................................................ 370
15.4.3 Single Mobile Device................................................................................................ 370
15.4.4 Affordances and Properties of Mobile Devices........................................................ 370
15.4.5 Augmented Reality and Visualisation....................................................................... 371
15.5 Prospects for the Future......................................................................................................... 372
15.6 Conclusion............................................................................................................................. 373
Acknowledgements......................................................................................................................... 373
References....................................................................................................................................... 373

ABSTRACT
This chapter introduces the new concept of location-based GeoComputation (LBGC). We position
this concept alongside mobile GIS and location-based services and argue that LBGC moves the
focus away from the capture of new spatial data or the delivery of information of relevance to a
person’s surroundings. Emphasis is instead placed on undertaking analysis and modelling in the
field and the exciting possibilities this might bring for real-time model development, refinement,
validation and visualisation.

357
358 GeoComputation

15.1 INTRODUCTION
If the mountain will not come to Muhammad, then Muhammad must go to the mountain
Francis Bacon, in Essays, 1625

Location-based GeoComputation (LBGC) is the use of high-powered mobile devices to undertake


analysis and modelling using spatial data whilst exploiting the benefits of being immersed in the
environment under study.
Since the inception of GeoComputation (GC) as a set of tools and techniques in the mid-1990s,
the processing power of mobile devices has increased to a point where we can consider taking GC
beyond the desktop and into the wild. With a truly mobile device, equipped with positioning, orien-
tation and imaging sensors, we have the opportunity to redefine our relationship with the modelling
process. We have the chance to compare and validate directly in the field, and we can incorporate
newly captured data into the analysis and visualise the impact on the model outputs immediately.
We can study local phenomena whilst factoring in data and processes in the neighbouring area and
at a regional scale. We can increase our understanding of how real-world observations relate to the
data models we are using for our analysis and help to remove the gaps between in-field data collec-
tion, desktop analysis and validation. There seems to be potential to promote new approaches to
analysis and modelling by giving the researcher the ability to work with data and algorithms in the
field, which may lead to better analytical outputs but also an increased understanding of how the
underlying data structures and algorithms are performing.
This chapter represents a call for research and exploration into the potential benefits of vari-
ous GC activities for being immersed in the real-world environment to which a study relates. We
describe the major characteristics of LBGC and emphasise the added value we see in taking analy-
sis and modelling out into the field. We begin, however, by considering some of the key technical
developments that have made LBGC possible.
The introduction of the smartphone to the marketplace has resulted in these handheld computers
becoming widespread amongst the general public due to the multiple functions they perform, which
in turn create a demand for new and innovative software to take advantage of the affordances of the
devices themselves and the benefits of being mobile. Smartphones are devices that have high levels
of processing power, a full-colour touch screen, a variety of sensors and an on-board operating sys-
tem (OS) that allows for customisation through downloadable applications. These devices have led
to the development of new methods of interaction and, perhaps more importantly, the bundling of
many different sensors into a single piece of handheld technology. With all of these advances, the
mobile phone has gone from being a device that allowed the user to carry around a portable version
of their landline handset to the modern paradigm in which the traditional telephony functions of
such devices have become secondary. Instead, primary functions which used to be associated with
desktop computing, such as accessing the Internet, checking e-mails, playing games or taking notes,
now occupy a key position at the forefront of the technology.
In addition to smartphones, a new wave of touch-screen tablets has been introduced: Apple is
leading the way with iPad, Microsoft has just released its Surface tablet, and there is an array of
Android-powered tablets, produced by Samsung and Motorola, as well as by Google itself. Some
tablets take the idea of having a mobile device for doing other things further by removing the tele-
phony functions from the device altogether. These tablet devices seem to be fulfilling the role of
a home netbook, that is, a small, lightweight, energy-efficient subnotebook or ultraportable laptop
computer or a low-end laptop, perhaps, because tablets are well suited to low-interaction tasks,
such as Internet browsing or gaming, rather than high-interaction tasks such as word processing
or programming. By way of background, it is worth reviewing the evolution of the modern mobile
platform and to consider how it can support GC, both now and into the future.
Newer smartphones and touch-screen tablets owe a lot of their success to the OSs and associated
software that empower them. The use of a touch screen on many of these devices also means that
Location-Based GeoComputation 359

software designers and developers have had to abandon a lot of our existing mouse- and keyboard-
driven user interface (UI) metaphors such as the concept of the desktop (whether it can still be con-
sidered a metaphor is debatable). Instead, new methods of interaction have been created which suit
a small- or medium-sized, backlit touch screen. Evidence of this was initially seen in some of the
original devices, appearing in the early 1990s, the collective term for such devices being a personal
digital assistant (PDA).
An Apple representative first used the term PDA, when referring to an early attempt at a mobile
device called the Apple Newton. However, PDAs used in early scientific development were those run-
ning Microsoft Windows Mobile 6 or earlier which replicated the desktop version of the OS by imple-
menting a UI similar to Microsoft Windows XP. The result was that the devices running such an OS
were attempting to have the user interact with the software by replacing a mouse with a stylus. This
extra requirement meant that carrying out simple interactions like entering information was slow and
cumbersome, multitasking of programs was possible but difficult to manage and interaction with the
web was limited. The associated so-called Wireless Application Protocol (WAP) has now largely dis-
appeared from the web, primarily due to modern devices providing full support for Hypertext Markup
Language (HTML). WAP also had issues with idiosyncrasy, lack of authoring tools, bad UI design
and high service provider charges incurred when using it (sometimes referred to as wait and pay).
Table 15.1 outlines several of the major components that are found in modern mobile devices
organised into four categories. The uses column gives the primary function of each component in
the mobile device; apps implemented for mobile devices may or may not take advantage of some
or all of these components where an app is an abbreviation for application, an increasingly popular
term used amongst owners of mobile devices. An app is a piece of software. It might run on the
Internet, on your computer, on your phone or on other electronic devices. A key consideration for
development is how to manage access to and information from such components in the best way to
present any particular app to a user. Due to the nature of apps, it is usually the case that a user is
not involved directly with the management of individual components, particularly less so on mobile
devices, than in their earlier desktop counterparts. The design of mobile apps that run seamlessly
with on-board components, consequently, will require a different set of assumptions and paradigms
to that of a desktop app if the mobile product is to be successful.
Modern smartphones and tablets are not based around extending or replicating the desktop meta-
phor. Instead, a new set of standards and methods of interaction have been developed to make the

TABLE 15.1
Components Common to Mobile Devices
Type Component Uses
Positioning GPS On the ground position
Compass Device orientation
Accelerometer Device orientation
Communications GSM 2G Internet connection
GPRS 2G transitional Internet connection
3G 3G Internet connection
NFC Very-close-proximity communication
Bluetooth Close-proximity communication
Wi-Fi Internet connection and networking
Imaging Cameras Image capture
3D scene capture
Interaction Touch screen Imprecise interaction
Stylus Precise interaction
Device movement Gaming/location-based apps
360 GeoComputation

use of such devices more natural and simpler given their contexts of use. Some examples of current
mobile OSs are iOS by Apple, Google’s Android, RIM’s BlackBerry OS and Microsoft Windows
Mobile 7 and more recently 8. Additionally, smartphones have given the user the ability to person-
alise their devices by customising the look of the software and the functions the device can perform
through the purchasing of apps. Credit should be given to Apple for creating the App Store (after
much reported internal confrontation) as this was really the first real attempt to run third-party apps
on an existing platform where the software delivery mechanism was accessed directly from the
device itself located anywhere with network coverage. This new way of authoring and delivering
apps meant that updates to the store were very frequent and the apps priced in a way that could make
them an impulse purchase, thus boosting their popularity. It also meant that software could even be
written and sold by home-based, part-time developers and reduced the reliance on large software
houses to produce apps. After seeing the success of the App Store, the other OS originators quickly
followed suit.
The advantages offered by app stores include quality control, minimal marketing costs, ease of
software delivery, ease of supplying updates and revenue paid directly to the creator (with the app
store provider taking a cut). These apps also mean that content such as media and web pages can be
made more usable through creating an app for that purpose: good examples of this are the Facebook
(2013) and Twitter (2013) apps, which were solely created to present the information from a user’s
account in a manner which is suited to mobile devices, though in very recent iterations, these apps
have taken advantage of the on-board GPS to publically report position.
Mobile devices are powerful and popular, have a multitude of on-board sensors, possess high-
resolution screens, run software which is suited to the affordances of the hardware and have a large
development community, which makes them ideal for performing GC, but with the added advan-
tage of being mobile. The combination of hardware and software features described in Table 15.1
suggests a wide range of affordances related to both computation and user interaction, but it is the
addition of the positioning capability which opens up exciting possibilities for exploiting the user’s
spatial location and context, not only for searching for relevant information, or tagging logged data
with location, but for exploring the merits of in-field analysis, and the added value of including user
location in GC.

15.2  DEFINING LBGC


LBGC offers a fresh way of thinking based on an explicit reworking of several existing concepts.
It combines the power of GC as a set of tools, techniques and methodologies that can exploit the
advantages of being in the field. These advantages include collecting, processing, analysing and
visualising data in the field from which informed decisions can be made about current activities.
These may influence the design of an experiment and/or affect the interpretation of a computed
output. An example would be the ability to visualise a model prediction in the context of the real
world and adjust the model inputs according to data collected on location. Another possibility is to
build a model from scratch in the field, using the mobile device to perform all new data collection
and simultaneously combining it with secondary data from another source such as the web. LBGC
has become possible because background data, processing power, Internet access and data collec-
tion tools can all now be taken out into the field on a mobile device.
LBGC is part of computational geography and as such has an established pedigree, clearly
predating the advent and proliferation of GIS (geographic information systems) and GISc (geo-
graphic information science). The historical development of such computational activities is per-
haps best envisaged as being a natural descendant of the so-called quantitative revolution, one
of the four major turning points in modern geography (environmental determinism, regional
geography, quantitative geography and critical geography). The quantitative revolution occurred
during the 1950s and 1960s. It involved a rapid change in the methods that were being applied to
perform geographical research, moving away from regional geography into a spatial science of
Location-Based GeoComputation 361

measurement and numbers, and, later, implemented on computers. The main claim for the quanti-
tative revolution is that it led to a shift from a descriptive (idiographic) geography to an empirical
law-making (nomothetic) geography.
Sensing and sensors play a major part in LBGC. Indeed, as mentioned, its associated mobile
devices will contain a multitude of sensors that can be employed to collect and analyse data in the
field. LBGC can also be related to pervasive and ubiquitous computing, in which existing technol-
ogy, such as mobile telephones and the Internet, is combined with new and novel inventions, such
as nanotechnology – computational developments that collectively offer a new research area in the
broader field of GC (Brimicombe and Li, 2006). However, neither of these fields gives a complete
picture of the state of LBGC although they do give an idea of where LBGC has come from and
where it may be going.
It is far better instead to consider LBGC as having a set of sound and well-established roots that
originate from three major sources of computational outdoor activity, previously identified by Raper
(2009):

• Mobile GIS (MGIS)


• Mobile mapping (MM)
• Location-based services (LBS)

LBGC will clearly be strongly influenced by each relevant set of previous, distinct ideas, such that
most specific aspects of LBGC comprise either borrowed or adopted and/or adapted as required
concepts that have subsequently been welded together to deliver a composite problem-solving strat-
egy: something that collectively constitutes a fresh approach. MGIS is the use of GIS technology
and GISc in the field. It is a catch-all term, which is used to describe everything from specific
mobile apps to simply having a laptop with a GIS installed on it and using it whilst located at a
study site of interest. MGIS often requires the user to have a general background training in and
knowledge of GIS and, especially, to possess skills in the particular software package that they are
using (although recently, ESRI has released their development platform for iOS and Android which
may encourage more explicit development of LBGC apps). This has the advantage of bringing the
analysis closer to the data, but to run it requires specialist hardware and expensive software pack-
ages. The software programs also often offer far more than what is required for the particular study
on which they are employed. The user is essentially taking a GIS package into the field on a smaller
device or outsourcing a piece of analysis which would usually be done on the desktop and doing it
in the field.
MM is different from MGIS but is related to it, since MM is concerned with the display of infor-
mation on mobile devices and is often used as a gateway or interface to MGIS and LBS. People do
not have to be specially trained to use MM as it is primarily a service used to display analysis and
results to the general public. Sat navs are a good example of this category, which are designed to
show their datasets. In this chapter, we consider MM as being part of MGIS and LBS and not as a
separate discipline in its own right.
Whilst LBGC has some similarities with LBS, it is not LBS. Essentially LBGC is about employ-
ing the techniques, methodologies and philosophies of GC whilst making full use of the advantages
of being located either in the area or at the site, which is the object of your study. Table 15.2 offers a
fuller comparison, showing some similarities, but actually serving to highlight numerous substan-
tial differences between LBGC, LBS and MGIS. LBS has been defined, inter alia, as ‘the delivery
of data and information services where the content of those services is customised to the current
or some projected location and context of the user’ (Brimicombe and Li, 2006: 7). This definition
implies that LBS are concerned with the delivery of location-relevant media and are designed to
serve up information related to a point, triggered by the user being at that location, without any
specific requirement for interaction between the user and their environment/surroundings. A newer
trend in LBS is the creation of mobile apps that track the location of a device and sometimes offer
362 GeoComputation

TABLE 15.2
Properties of LBGC, LBS and MGIS
Property LBGC LBS MGIS
Mobility E E E
Data retrieval D E O
Data collection D O E
Local analysis E O O
Network dependence D E O
High-powered computing E O O
Dedicated software E O O
Positioning E E E
Communications D E O
Imaging D O O
Multiple methods of interaction D D D

Note: E, essential; D, desirable; O, optional.

incentives in return for such information. For example, in the United Kingdom, fast-food establish-
ments will offer discounts to people who frequently visit their outlets, with relevant visit data being
collected through a mobile platform, such as Foursquare (2013). In addition to location-tagging apps
like Foursquare, educational, crowdsourcing-based apps such as iSpot (www.ispot.org.uk) are also
appearing. iSpot is deployed on a mobile device and is an app designed to aid in recognition of wild-
life. To obtain such help, the user takes a photograph (or several) of the wildlife, enters a description
of their location (i.e. geographical coordinates taken from the device’s GPS) together with a best
guess of what they think it might be and thereafter uploads that information to a website. Their entry
is then viewed and discussed by an online community with the originator as a participant so as to
come to a consensus on the identification of each particular specimen.
In Table 15.2, the properties of LBGC, LBS and MGIS are shown together with an estimate of
the relative importance for each individual property; all key properties are defined in Table 15.3.
It is seen that LBGC, LBS and MGIS have aspects in common, notably that they all require some
level of mobility and information (usually from device sensors) pertaining to location. The dif-
ferences arise when the purpose of each is analysed. LBGC is about performing analysis in the

TABLE 15.3
Definition of Properties Listed in Table 15.2
Property Definition
Mobility Designed to be mobile, devices which can be easily mobilised.
Data retrieval Device can get data which are not locally stored.
Data collection Device can collect data on location.
Local analysis Device is capable of performing computation locally.
Network dependence Device is required to be networked via data connection for service to function.
High-powered computing Device has computational power which is comparable to current laptops.
Dedicated software Device supports native apps rather than ported apps.
Positioning Device is able to position itself in the real world.
Communications Device is able to communicate with other devices.
Imaging Device has image capture capabilities.
Multiple methods of interaction Device can be interacted with in a variety of ways (touch, voice, etc.).
Location-Based GeoComputation 363

field with few dependencies on other technologies. It follows that specialist software is required
for LBGC as well as an ability to do analysis (computation) on the device in the field. This dif-
fers from LBS, which does not require specialist software, for example, Google Maps, but does
require an Internet connection in order to work successfully due to the vast quantities of infor-
mation that can be accessed on the fly. LBS also vary in complexity. Simply playing a piece of
media which is triggered at a location does not require particularly sophisticated or high-powered
hardware making LBS less reliant on computations and more reliant on the delivery method and
UI design.
MGIS in this chapter is treated as being a straightforward extension of desktop GIS. It is actually
very difficult to define MGIS on account of its catch-all nature. Instead, we proceed by simply trans-
lating that term to mean employing GIS techniques but having some level of mobility associated
with it. The main difference between MGIS and LBGC is that an MGIS app will usually require the
ability to collect data in the field as this is its primary purpose; essentially, MGIS is an app which
allows for the logging and review of spatial data, but does not include analysis. One commercial
solution is ArcPad (ESRI ArcPad, 2012) which is part of the ArcGIS suite provided by ESRI.
ArcPad is an advanced MGIS app, although it still has a primary function of data creation and
checking in the field, as well as doing MM. Thus, such an app generally exhibits the same overall
set of properties that were previously itemised in Table 15.2. However, as shown in a later example,
it can partly cover the remit of LBGC.
The major aspects of the three different location-based technologies can be summarised by
means of three c’s: computation, consumption and capture, referring to LBGC, LBS and MGIS,
respectively. In more detail, LBGC is primarily about using the power of new mobile devices to
perform complex analysis whilst in the field, whilst LBS is about retrieving information that is rel-
evant to the device’s current location. MGIS has the ability to do many things a desktop GIS can do,
but the primary reason for bringing it into the field is to collect and log data for later, subsequent,
analysis on a desktop or laptop machine.
To date, there have been apps that cover part of the remit for LBGC such as the ESRI advanced
MGIS product ArcPad. ArcPad, for example, has been used as a test bed for a remote archaeologi-
cal field trip that required the researchers to be away from base camp for up to 10 days perform-
ing a ground survey (Tripcevich, 2004). An archaeological survey differs from an excavation in
that the researchers are generally looking for surface artefacts and features rather than digging
pits (although the latter may be done at a later date). A notable aspect of the app in question, as
acknowledged in the paper, is that due to software design issues, the researchers had to change their
workflows quite drastically in order to capture the archaeological features of interest. Therefore, the
researchers were not in the field doing GC but were instead taking advantage of powerful computing
to augment their study using a pre-existing piece of software.
Whilst LBS can be considered to be at the intersection of geospatial databases, mobile com-
puting devices and the web, as portrayed in Brimicombe and Li (2006), the positioning of LBGC
requires consideration of the flows of information involved and the relative emphasis placed on
the derivation of new data. Figure 15.1 compares the flow of information and associated actions
for typical users of LBS, MGIS and LBGC, with dashed lines representing more occasional
flows or actions. The assumption is that being located in the field is critical for all, as described
earlier, but that the emphasis placed on the use of the web and on the creation of new data
is different. In LBS, web-based query and retrieval dominate, but with occasional geotagging
operations used to capture point-based location data. In MGIS, very heavy emphasis is placed
upon the action of field-based survey and the resulting capture and storage of information, and
whilst GIS-like analytical operations are possible with many software products, for the typical
user, the map-based display of captured data dominates, with any subsequent analysis usually
occurring back on the desktop. For LBGC, field survey and capture are important. However, the
discriminating feature is the analysis and derivation of new data that occur on the device whilst
in the field.
364 GeoComputation

Typical user of LBS

Capture
Query
Display/storage Web

Log/geotag Retrieval
Environment

Typical user of MGIS

Capture

Map display/storage Web

Survey

Environment

Typical user of LBGC

Capture
Request
Visualisation/storage
analyse Web
Derive new data
New data

Environment Survey

FIGURE 15.1  A generalised view of actions (black arrows) and information flows (grey arrows) for typical
users of LBS, MGIS and LBGC.

15.3  GEOGRAPHICAL SCOPE OF LBGC


Alongside the differing emphases placed on data capture and analysis in the field between LBS,
MGIS and LBCG, there are also differences occurring in the nature of the spatial footprint relevant
to the activities performed and in the potential of mobile devices to represent broader locational
descriptors beyond a set of simple spatial coordinates, what we will collectively term here their
geographical context. The different techniques discussed in this chapter can all be considered loca-
tion based, using the coordinates of the user’s current position to identify, by means of filtering, any
information of interest, or as a location tag, when capturing new data. LBS is particularly tied to
spatial coordinates, either through placing a user on the map or by providing the focus for a where’s
my nearest type operation which is a classic spatial query. Functions offering support to pedestrian
navigation begin to consider a broader spatial context, as described, for example, by Li and Willis
(2006: 97), who proposed a ‘framework for context awareness in the interaction between individu-
als, devices and environments’. Wayfinding operations, recognised as complex, purposive and moti-
vated spatial activities (Golledge, 1999), require the user to engage with the broader spatial context,
including salient landmarks or even the terrain itself (Bidwell et al., 2005). Indeed, the geometric
reference of coordinates is just one aspect of spatial context, as discussed by Bettini et al. (2010:
166), who observe that when asking the question, ‘Where are you?’, if put to someone on a mobile
phone, what people ‘typically are interested in is not the exact location but the general situation of
the person they are talking to’.
Location-Based GeoComputation 365

Yoo (2010: 217) has also called for researchers to embrace the ubiquitous impact of computing in
everyday life and suggests ‘it is more meaningful to think about computing as a verb than computers
as a noun’. As with many approaches to mobile interaction design, Yoo describes the requirements
for a more experiential form of computing influenced by the philosophies of Merleau-Ponty (1996)
and emphasises the importance of the direct first-person experience of reality. This view of comput-
ing is contrasted with a more representational view, where the desktop computer is a central tool in
handling collections of digital entities and relationships, which form a conceptualisation of the real
world – but remote from that real world. There are interesting implications here for certain forms
of GC in that mobile devices allow digital representations and model outputs to be assessed in the
context of their real-world counterparts, something which will be discussed in more detail in the
next section.
Capturing a richer picture of a person’s in-field experience involves the measurement of physical
properties of a spatial location as only the first step, with the next challenge being to acknowledge
a greater sense of place and to represent ‘the memories, experiences and patterns of behaviour we
associate with that locale’ (Ciolfi, 2004: 38). The concept of place has been seen as providing more
meaning to a spatial location by ‘endowing it with value’ (Tuan, 2001), not only through naming
(Edwardes, 2009) but by attempting to understand the place values used by people in appreciating,
enjoying and valuing the environment (Ehrenfeld, 1993; Norton and Hannon, 1997; Kruger and
Jakes, 2003). Concepts of place can also include aspects of a person’s context relating to acceptable
behaviour given the local culture or the type of clothes worn and the language which is spoken,
none of which are necessarily tied to space. Rather it is the place itself which provides the context
for these behaviours.
The focus on place-centric and not user-centric design in mobile computing has been described
by Messeter (2009: 32) as place-specific computing (PSC), where ‘the designed functionality of
systems and services, as well as information provided by these systems and services, are inherently
grounded in and emanating from the social and cultural practices of a particular place’. Examples
include methods for supporting club-hopping culture, related to the consumption of music, and
there are clear implications not just for more sophisticated approaches to LBS but for developing
computational approaches that allow such notions of space and place to be explored. The scale at
which place has relevance is also seen to vary hugely depending on the nature of the activity, and so
tools to support interactions occurring at a range of spatial scales need to be considered, where the
idea of local can mean more than a geometric buffer zone centred on the coordinate of the user’s
current location.
In the context of LBS, various studies have considered approaches to spatial query that go
beyond pure location, often with an aim to provide more geographically relevant results (Raper,
2007; Reichenbacher, 2009). Specific examples include determining the area that could be visited
within a certain time frame as in the WebPark project (Mountain and MacFarlane, 2007) or, in an
urban context, the likely visibility of key landmarks (Bartie et al., 2008). Various tools such as the
Mscape authoring environment (Stenton et al., 2007) have supported experimentation in the use of
alternative spatial footprints for triggering information, but there is no reason why such zones of rel-
evance should be seen as fixed geometries, and the development of tools that will allow for dynamic,
adaptive and perhaps indeterminate zones of relevance to be modelled would go some way towards
exploring more place-centric computing.
In terms of LBGC, the spatial footprint of the area of immediate relevance to the user could be
determined by an even broader set of space-based and potentially place-based contexts. Also in
many cases, there is a broader zone of influence relating to the whole geographical dataset under
study. In some ways, this classification of spatial scales relates to the way raster-based algorithms
are sometimes classified into local, focal, zonal and regional (de Smith et al., 2013). Figure 15.2
offers a classification of three spatial scales seen as relevant to LBGC, here using a graphical back-
drop of a river catchment although the concept is seen as generic.
366 GeoComputation

Region

Neighbourhood

Spatial
location

FIGURE 15.2  Spatial scales relevant to LBGC.

The three spatial scales would be described as follows:

1.
Spatial location – The coordinates of the user’s current position, the reference point
used for capturing information related to that point in space and the classic spatial centre
point which is typically the focus of LBS-like queries. In computational terms, it could
be seen to relate to the local category of algorithm in which there is no consideration of
the properties of neighbouring locations, and in LBS terms, it is the you are here style
dot on a map.
2.
Neighbourhood – An area of interest around the user, which has particular geographical
relevance to the user from their current spatial location but which has some kind of spatial
extent. This extent could be determined by proximity as in many LBS apps or could rep-
resent some more complex notion of spatial context such as visibility (Yin and Carswell
2012; Meek et al., 2013) or drive time. This zone of local influence could be seen as being
equivalent to the focal or zonal categories of algorithm, where processing relates to neigh-
bourhood operations of varying complexity depending on the app. It could also, however,
potentially be seen as the spatial footprint of some notion of place, however that might be
defined and however dynamic it might be. This does not suggest the use of spatial geom-
etry to define a zone but rather that a zone of relevance based upon particular contextual
factors, in the broadest sense, at a particular time, could emerge.
3.
Region – The area representing the maximum geographical extent of relevance to an analy-
sis given the particular focus of study. In algorithmic terms, this relates to the concept of a
global influence, in the sense of potentially having to take account of a whole dataset rather
than a neighbourhood operation of some kind. Data from a spatial location or neighbour-
hood are often given meaning through placing it into its regional context or can feed into
analytical or modelling functions occurring at the regional level.

LBGC could be seen as encompassing spatial location, neighbourhood and region, allowing the
user to perform integrated site-specific observations at a location, using data and observations of
immediate relevance to that location, with the bigger picture provided by data and model working
at the regional level. Here are two scenarios that are used to illustrate this point:

1. The user is a researcher looking into ancient glacial erosion that took place in the Lake
District in North West England during the last ice age. The user has a piece of technology
that allows them to collect evidence of a glacial trim line (the upper edge of erosional activ-
ity) along a glacial cirque (the large depression over-deepened by glacial erosion) which is
Location-Based GeoComputation 367

their field study area. After collecting the points that constitute the trim line, they are able
to build a model on the device of what the glacier would have looked like according to the
evidence presented. On their device, they also have access to previous models built in the
area by other research scientists that allows them to compare their set of glacial models to
ones which others have built. In terms of spatial scales,
a. Spatial location is the collection of data points and building of models. Here, these
points are at the data level. The remote capture and recording of accurate points are an
important problem in its own right.
b. Neighbourhood is the glacial cirque under study. The context of the collected points is
important as it defines the kinds of questions that can be answered with the data.
c. Region is the spatial distribution and characteristics of other cirques in the area and
research findings about how their form has been accounted for. Glaciers form as part
of a process and can interact with other glaciers. At this level, these interactions are
considered and questions that pertain to a glacial system can be addressed.
2. The user is a property consultant who is interested in the changing face of city centre retail,
in Nottingham, a medium-sized city in the East Midlands, United Kingdom, and they have
been tasked with choosing the best potential site for a new retailer. They have a mobile
device where they can record the occupation of retail units in an area of the city. Using
their mobile device, they can compute a list of changes and the relative change in market
position (upmarket, mid-market, downmarket) of the retailers that have come and gone.
They can then compare this in the field with the change in affluence of Nottingham’s sur-
rounding population and then come to some conclusions as to why this has happened. By
combining the old datasets with the new data collected in the field, they can quantitatively
calculate potential spend in the city centre and apportion it out by area of the city, thus
coming to a conclusion on the retail unit to recommend to their client based upon observa-
tional and previously recorded spatial data. In terms of spatial scales,
a. Spatial location is the location of the retail units in question, that is, where they are
in the world. These are the physical coordinates of the retail units themselves from a
technical perspective and treated in isolation.
b. Neighbourhood is Nottingham city centre and the context of the retail units surround-
ing the unit in question. It is at this level that the context of the unit is important,
and relevant questions include: What does the unit border? Are surrounding units
competition or complementary?
c. Region is the shoppers who visit Nottingham city centre and the wider considerations
of the problem. At this level, we consider the implications of the retail units being
introduced to an area.

15.4  MAJOR CHARACTERISTICS OF LBGC


Each point in the following structured account is strongly influenced by the manifesto on mobile
computing in geographic education (Armstrong and Bennett, 2005). The major principles involved
in developing a location-based service or app were outlined in that paper and their reported mobile
geographic education system (MoGeo). The MoGeo design is based on contextually aware comput-
ing and a purposeful integration of the following technologies: GPS receivers, GIS software, wire-
less networks, mobile computers (PDAs or tablets) and centralised computers (e.g. servers). MoGeo
was aimed at allowing students to learn in situ, armed with a powerful mix of mobile computing
and associated location-based evidence, supplied by the field site. The scenario considered by the
authors involved students using mobile devices in the field to understand flow rates of a river during
a period when it flooded. Using the device, they can retrieve flow data, calculate the flow curve,
get information from online images and videos and also facilitate or engage in an online discussion
about the history of the area.
368 GeoComputation

LBGC, in contrast to MoGeo, is not an educational tool in its own right but some of the concepts
of coming to an understanding about the landscape though direct evidences taken from the land-
scape obviously cross over. In LBGC, the mobile app/device

• Must take advantage of being situated in a study area


• Should allow for iterative model building in the field
• Can be performed on a single mobile device without the requirement of a network
connection
• Should take advantage of the affordances and properties of the mobile device

MGIS, in addition to some potential influences on education and the previous discussion of LBS,
has also had a profound influence on our concept of LBGC in a manner similar to that which
desktop GIS had on GC in its infancy. Many MGIS apps employ a client–server style relation-
ship in order to gather data in the field and then usually perform some rudimentary GIS calcu-
lations and/or interrogations, providing results that are then fed back to the device in the field.
One such example is the dynamic generation of MM with a secondary objective of team track-
ing in unfamiliar or hazardous landscapes (Karunarathne et al., 2010). Although a fairly simple
implementation, in this case, of particular importance is the fact that reliability and robustness
were necessary attributes for the device and app, due to the relative cost of failure in a hazardous
environment. This clear client–server relationship is replicated in other apps due to the relatively
poor computing power of older mobile devices. In MGIS, the aim of the mobile arm of the process
is usually to take something that could be done on the desktop and, where relevant, move all or
part of it into the field. Although referred to as field-based GIS, MGIS is often not based in the
field but is actually server based with a mobile component (Pundt and Brinkkötter-Runde, 2000;
Shi et al., 2009).

15.4.1 Importance of Being in the Study Area for GC


Traditional GC is an attempt to create models of the world, often by combining large amounts
of processing power, smart computational algorithms and geographical knowledge, all of which
take place in an office or laboratory on a desktop machine. All geographical data that are col-
lected for the purposes of GC, which are then analysed and interpreted, by its very nature are
an abstraction of the world we are trying to understand. Points collected to understand water
flows are in the end just a set of coordinates and attributed data. It is only their context that gives
them meaning. LBGC attempts to remove some of the abstraction from the data, which is often
divorced from its original landscape context or setting, by bringing the equipment to the evidence
rather than the other way around. Using context in mobile apps has been a research area for some
time; some early principles concerning features that context aware apps can support were identi-
fied by Dey (2001):

• Presentation of information and services to a user


• Automatic execution of a service for a user
• Tagging of context information to support later retrieval

In an app designed for LBGC, it is feasible that all three of these features could be implemented
and work together towards a common goal. Presentation of context-aware information to a user in
the field alone does not constitute LBGC as it falls under the category of LBS since it is entirely
concerned with consuming media. However, LBGC apps might implement a feature such as this,
for example, to let researchers know on the ground that they are in an area of interest, help identify
particular aspects of the landscape such as plant species through the presentation of supplemen-
tary information or simply show the location of some work which has been carried out previously.
Location-Based GeoComputation 369

A good example of an app in which this particular type of operation has been implemented is
LillyPad (Rogers et al., 2010); it was designed to allow users to record the state of trees in an
urban riverside regeneration environment. LillyPad aided researchers in recording information
about the trees; they could also access past work, and crunch statistics on the fly, in order to bet-
ter understand the state of individual trees in the context of previous years. End users, equipped
with a comprehensive suite of available records, could indeed more fully appreciate if such trees
were better or worse off than in the previous year and perhaps speculate as to why that might be.
Moreover, given observations of many trees, such researchers could also gain a better idea of the
overall pattern involved.
Automatic execution of a service for a user could be set up as simple triggers in an LBGC app.
For example, in the planning phase of a field exercise, there might be some parts of the field site
that look like they may contain certain points of interest (POI). The triggering of the device at this
point to prompt the user to perform an action could be used to help tie the background analysis with
data collection in the field. This type of triggering has been seen in media consumption experiences
such as mobile tour guides (Priestnall et al., 2009) and augmented reality (AR) experiences, such as
Layar (2013) and Wikitude (2013).
Perhaps the most important feature of context-aware apps that apply to LBGC is the ability
to tag information for later retrieval. We take this point of later retrieval to mean any time after
the collection of a piece of data, which may be in the field or later in a different location. An
app for doing this has been described as a method for picking out POI in the field with a view to
reconstructing glacial models in AR (Meek and Priestnall, 2011). Here, the smartphone running
an app called Zapp was used as a point-and-capture mobile device for picking out points in the
field from a distance using an app in which the user looks through the device’s camera preview
with a crosshair augmented over the top. The user then aligns the crosshair with the point that
they wish to capture and presses a button which activates a vector line-of-sight algorithm (Fisher,
1996) using the device’s sensor as inputs and underlying raster data to calculate the raster cell
being looked at. Additionally, Zapp has been used as a platform for consuming media in the field,
through running the same LOS algorithm several times per second and using a look up raster for
each cell with an underlying index of POIs for POI identification (Meek et al., 2013). This approach
could be combined with other features of context-aware apps to provide a method for performing
LBGC by directly tying together the data collection phase with the landscape. The use of AR in
this instance encourages the user to evaluate the piece of data collected in situ and offers insight
into any shortcomings of the underlying data itself. Methodologically, there are two categories of
current approaches to filtering information on location that mirrors types of data available to GIS.
These are as follows:

1. Vector
Vector-based approaches are discussed at length in Yin and Carswell (2012) and include
both 2D and 3D querying information imbedded in an urban environment. Due to the cur-
rent availability of geodatabases designed for mobile devices, these approaches require a
client–server relationship to process a query and produce results. In these relationships, the
mobile device acts like a data-gathering tool for sensor information using sensor readings
to determine where the user is and what they are pointing the device at. There are different
approaches to this method of querying that offer advantages of high accuracy and the abil-
ity to report not only what building is being pointed at but also where on the building this
is being done.
2. Raster
This approach offers advantages as all of the calculations can be carried out on the
device and does not require a client–server relationship. This is useful in rural or upland
areas that often do not have access to a reliable 3G connection. This approach also offers
greater flexibility since it can employ many resolutions of base data; indeed, whilst vector
370 GeoComputation

approaches tend to be associated with measurement records derived from LiDAR (Light
Detection and Ranging) products, raster approaches are regularly implemented on a vari-
ety of datasets originating from different sources such as radar.

15.4.2 Iterative Model Building in the Field


Being in the field is important to understanding aspects of some disciplines; geography, in particu-
lar, is considered by many to be field based (Clark, 1996). A major issue with field work, especially
if time for primary data collection is limited, which it often is, is the finality of the data acquired.
It is usually impossible or impractical to return to a field site after a study has been completed,
and even if it is possible, it is likely that without in-field information about what has been col-
lected, previously, the new dataset would also be flawed. LBGC, of course, is not perfect, but it is,
nevertheless, perhaps a good step in the right direction. It remains subject to many other issues in
computational geography that still trouble the wider community, such as sensor accuracy, underly-
ing data inadequacy and environmental conditions. LBGC does, however, provide an opportunity
to carry out data collection and analysis in the field, allowing the research team to reflect upon their
field activities and then rectify and amend if necessary. Also, through the app creation process, as
mentioned at the beginning of this chapter, one can control for geospatial semantics by tagging
additional data to what has been captured, such as a photograph, or data quality reported as data
assumptions (Pundt, 2002) such as the position of a raster data cell on a landscape compared to its
real-world counterpart.
Indicative to being in the field is the concept of temporality. Data performed in computational
analysis are usually out of date. The data collection opportunities of LBGC offer the user the ability
to collect data that are up to the minute. This in turn allows the informed user to come to make judg-
ments, draw conclusions and, if necessary, capture or create new data in the field to replace data that
are no longer relevant. Additionally, temporal analysis of areas can be made easier to accomplish
through the use of LBGC technologies.

15.4.3  Single Mobile Device


Physical geography field study areas can be in out of the way places without network access. This
is particularly apparent in the study of rivers, lakes, volcanoes and glaciers, which may not have 3G
coverage. It means that in order for an app to be robust, it cannot rely on Internet connectivity, which
in turn requires careful planning before embarking on the field portion of any study. Processing on
a single mobile device has been made possible by the ever-increasing amounts of storage memory
and RAM that can be found on the latest mobile devices, and it is common to find devices with
interchangeable SD cards of up to 64 GB.
Having a single mobile device as the platform of choice in field conditions has its advantages,
but this is not to say that intercommunication between devices is ignored or not possible. Mobile
devices can encourage collaboration in the field; it just cannot be solely reliant on infrastructure
such as network coverage. We believe that mobile device computing power will increase in tandem
with network coverage and speed perhaps offering advantages in combining on-board computing
power and access to a remote server.

15.4.4 Affordances and Properties of Mobile Devices


So what is different about using mobile devices in the field to do LBGC compared to simply taking
a high-powered laptop, sitting down in a forest or on the edge of a cliff and behaving as if you were
in an office? Taking advantage of being mobile, of being in the field and of the devices themselves
is crucial to our vision of LBGC. Previous studies involved researchers customising laptops, taking
them into the field and subsequently using such equipment to perform on-site calculations using
Location-Based GeoComputation 371

software packages such as ArcGIS. Menking and Stewart (2007), for example, reported taking stu-
dents into a field study area to teach them how to map river meanders using a tablet PC, with GPS
capability and stylus, running ArcGIS. Here, it is argued that the users were actually disadvantaged
by using a stylus-driven tablet PC, as the method of interaction between the user, the device and the
software did not afford being mobile. The authors went on to suggest that a more traditional method
such as handheld GPS data collection followed by a period of analysis out of the field (i.e. back at
base) would have been preferable, to their reported method, although they did acknowledge that the
users in such cases were unable to review and analyse their data in situ which is one of the things
that LBGC is attempting to allow for. It was also noted that interaction with a tablet computer using
a stylus under any troubling environmental conditions would be difficult due to the design of the
machines, screen glare and system failure. Battery life was reasonable for a short afternoon field
trip, but backup batteries were required for any longer period.

15.4.5 Augmented Reality and Visualisation


As a set of technologies, AR offers opportunities to visualise information when performing LBGC.
AR is designed to incorporate the surroundings of the user with contextually relevant information
augmented on top of the natural world. On mobile devices, this usually means viewing information
on the device, layered over a camera preview image obtained from the device’s camera, with the
position of the assets controlled by the device’s sensors; the compass determines the translation of
the asset along the horizontal axis, the tilt sensor determines translation along the vertical axis, and
the size of the asset is controlled by distance to the asset’s real-world location as calculated by the
device’s position to the asset position.
Types of devices used for AR can vary from very simplistic pieces of acetate which can be held
up by the user over the real world to show different information present in the natural landscape
such as geology, to the mobile devices associated with LBGC (Priestnall and Polmear, 2007). For
LBGC, however, we wish to employ the power of computation with the know-how of researchers.
Therefore, in this section, we will discuss AR in terms of what is used on mobile devices. Delivering
AR on mobile devices requires five computational stages (Wagner and Schmalstieg, 2009):

• Camera reading
• Pose tracking
• Network communication
• App overhead
• Rendering

From a technical perspective, these requirements can be met, meaning that it is possible to pro-
duce an AR app on mobile devices. However, making AR usable on mobile devices is far more
difficult, due to the unreliability of the sensors and the difficulty of holding the device with the
screen parallel to the user, in one hand, and attempting to interact with assets on screen whilst
moving around. One method of addressing interaction issues is to change the metaphor of the
touch screen. For example, picking out points accurately in the landscape using a touch screen is
problematic because of the difficulty involved in keeping the device steady with one hand whilst
selecting parts of the landscape with the other hand in order to place a point. Meek et al. (2013)
address such difficulties by changing the interaction method and making the device’s interface
look like a camera, as users are more inclined to use it like a camera. A camera affords holding
the device still, picking what needs to be captured carefully and, importantly in this app, only
capturing what one can see.
However, user interaction and visual difficulties notwithstanding, AR technology has still
been employed to varying degrees in a number of mobile apps. Environmental Detectives is an
educational intervention where the students were given devices to investigate a simulated toxic
372 GeoComputation

spill in the field and, using various readings, had to find the source of the spill based on their
environmental science knowledge (Klopfer and Squire, 2008). Even though this particular app
was educational, one could see how AR in this instance could be employed by researchers to
understand the landscape and even evaluate base data in the field before going into the analysis
phase of a study.
AR in its current state is being used in apps that are working towards true LBGC. Currently,
the usability issues seriously constrain the interactions and scientific usefulness of AR. For serious
consideration, AR would require the following developments to have occurred:

• Better/more stable sensing equipment (especially the compass)


• Longer-life batteries
• New interaction methods

15.5  PROSPECTS FOR THE FUTURE


Due to the cutting edge nature of LBGC, literature is limited; however, there are certainly some
apps that have the characteristics of LBGC and with a few additions would be LBGC. One such
app is concerned with interviewing in the field, a recognised method of data collection which can
provide richness to complement quantitative datasets. Combining the qualitative answers to inter-
view questions with quantitative recorded location data, new light can be shed on issues relating
to, for example, fear of crime and opinions on studentification (Jones et al., 2011). In the reported
study, the interviewee was given a mobile device running Mscape that recorded via a button
interface how happy the participant felt in relation to their personal safety. The combination of
different data collection techniques and the context of place allowed for an in-depth study. Where
the study fell down in LBGC terms, however, was that the app had no method of getting at the
meaning of the data.
LBGC has a bright future on account of the continuation of improvements in mobile hardware,
software and GC techniques. Interaction with mobile technology is one of the issues discussed as
an area that needs to be looked at because of problems with interacting fully with a small screen
whilst in an outdoor environment. There are several possibilities for further research, for example,
so-called gestural interfaces, in which input and control are provided by means of any bodily
motion or state but primarily achieved through recognition or interpretation of signals originating
from the face or hand. Indeed, gestures, as a method of interaction, have been available for some
time and are particularly well established in the area of game console add-ons such as Microsoft
Kinect (2013) for Xbox 360 and PlayStation Move (http://us.playstation.com/ps3/playstation-
move/), which respond to gestures in a touchless interface. A method of bringing this type of
interface to a mobile device is by using sensors on the mobile technology, to interact with it, using
more complicated hand postures (Wobbrock et al., 2008). In this instance, the authors are discuss-
ing using more of the digits on the hand to interact with the device instead of replicating aspects
seen on desktop machines such as a QWERTY keyboard or point-and-click-style touch screens.
This type of interaction could be seen as a continuation of the change from simply implementing
desktop metaphors on small screens to a completely new and more natural method of interacting
with a small device.
An alternative approach to LBGC might be to revaluate the mobile device altogether in terms of
user interaction, commensurate with the notion of so-called wearable computing. This would enable
each end user to more fully combine their computing needs with their bodies and, in so doing, offers
us yet another example of the unexplored potential for gestural interfaces. One such scenario might
be where the user wears a small projector, camera and a small mobile device in the form of a pen-
dent and the user projects their workspace onto any available surface (Mistry and Maes, 2009). By
carefully considering and designing for context, this makes for some compelling examples where
wearable computing would allow a user to more successfully interact with an LBGC app in the field.
Location-Based GeoComputation 373

If wearable computing is small and powerful enough, it could be used in the field and would be less
intrusive during field study than today’s mobile devices.
Currently, we have said that LBGC requires one mobile device in the field to perform calcu-
lations on. This is largely due to field study areas being remote with little network connection.
However, there are emerging technologies that may allow for greater connectivity, either locally or
at a distance, and therefore give the user access to the web and cloud computing in the field such as
grid computing (Palmer et al., 2009). Additionally, software vendors such as ESRI have started to
make their software available in a customisable form for newer devices that run iOS and Android.
However, as of time of going to press, this software requires client–server architecture and does not
have the ability to create and process local shapefiles.

15.6 CONCLUSION
In this chapter, we have introduced the concept of LBGC as a method of bringing the power of GC
into the field using modern mobile technology. Mobile apps have been around for several years but
only recently has the hardware become powerful enough and therefore suitable for performing GC in
the field. We have argued for the importance of being in the field to gather first-hand data and for the
analysis being computed in context whilst being located within the area that is being studied. There
are other areas of research that involve mobile apps that have a location element to them such as LBS
and MGIS. LBS is generally about consumption of location-relevant media to enhance an outdoor
experience either through providing extra functional knowledge or for shear enjoyment. MGIS offers
many important data collection and visualisation techniques, which would be useful in an LBGC
app, but is still very heavily reliant on a desktop GIS component to perform the analysis, by which
time the data collection window may have passed and, likewise, the opportunity to reflect on analy-
sis and make amendments to collection methodologies may also have vanished. Although LBGC has
obvious similarities with these two, its defining features are the combination of computing power,
mobility and first-hand experience enabled by the mobility of modern, powerful and mobile devices.
To conclude this chapter, we present a call for research in the area that has been discussed. The
technology now exists in abundance and there is no shortage of developers to exploit the opportu-
nities offered by these devices. There are documented virtues to being in the field, and GC is an
ever-advancing subject, such that a dedicated combination of the two offers novel opportunities to
bring LBGC to life!

ACKNOWLEDGEMENTS
Sam Meek was supported by the Horizon Doctoral Training Centre at the University of Nottingham
(RCUK Grant No. EP/G037574/1) and by the RCUK’s Horizon Digital Economy Research Institute
(RCUK Grant No. EP/G065802/1). We would like to acknowledge James Carswell of the Dublin
Institute of Technology for providing an insightful review.

REFERENCES
Armstrong, M.P. and Bennett, D.A. 2005. A manifesto on mobile computing in geographic education. The
Professional Geographer 57(4): 506–515.
Bartie, P.J., Mills, S. and Kingham, S. 2008. An egocentric urban viewshed: A method for landmark visibility
mapping for pedestrian location based services, In Geospatial Vision: New Dimensions in Cartography,
eds. A. Moore and I. Drecki, pp. 61–85. Berlin, Germany: Springer-Verlag.
Bettini, C., Brdiczka, O., Henricksen, K., Indulska, J., Nicklas, D., Ranganathan, A. and Riboni, D. 2010.
A survey of context modelling and reasoning techniques. Pervasive and Mobile Computing 6(2): 161–180.
Bidwell, N.J., Lueg, C. and Axup, J. 2005. The territory is the map: Designing navigational aids. In Proceedings
of the Sixth ACM SIGCHI New Zealand Chapter’s International Conference on Computer-Human
Interaction, 7–8 July 2005, Auckland, New Zealand, pp. 91–100.
374 GeoComputation

Brimicombe, A. and Li, Y. 2006. Mobile space-time envelopes for Location-Based Services. Transactions in
GIS 10(1): 5–23.
Ciolfi, L. 2004. Understanding spaces as places: Extending interaction design paradigms. Cognition Technology
and Work 6(1): 37–40.
Clark, D. 1996. The changing national context of fieldwork in geography. Journal of Geography in Higher
Education 20(3): 385–391.
de Smith, M.J., Goodchild, M.F. and Longley, P. 2013. Geospatial Analysis: A Comprehensive Guide to
Principles, Techniques and Software Tools. Winchelsea, U.K.: The Winchelsea Press.
Dey, A.K. 2001. Understanding and using context. Personal and Ubiquitous Computing 5(1): 4–7.
Edwardes, A.J. 2009. Geographical perspectives on location for location based services. In Proceedings of the
Second International Workshop on Location and the Web, 4 April, New York, 5 pp.
Ehrenfeld, D. 1993. Beginning Again: People and Nature in the New Millennium. New York: Oxford University
Press.
ESRI ArcPad 2012. http://www.esri.com/software/arcgis/arcpad. Accessed 12/09/12.
Facebook 2013. http://www.facebook.com. Accessed 14/10/13.
Fisher, P. 1996. Extending the applicability of viewsheds in landscape planning. Photogrammetric Engineering
and Remote Sensing 62(11): 1297–1302.
Foursquare (2013) Foursquare. http://www.foursquare.com. Accessed 14/10/13.
Golledge, R. 1999. Human wayfinding and cognitive maps. In Way-Finding Behavior—Cognitive Mapping
and Other Spatial Processes, ed. R. Golledge, pp. 5–45. Baltimore, MD: Johns Hopkins University Press.
Jones, P., Drury, R. and McBeath, J. 2011. Using GPS-enabled mobile computing to augment qualitative inter-
viewing: Two case studies. Field Methods 23(2): 173–187.
Karunarathne, D., Gunasekara, T., Dias, D. and Kasthurirathne, D. 2010. Mobile based GIS for dynamic map
generation and team tracking. In Information and Automation for Sustainability (ICIAFs), 2010 Fifth
International Conference on Information and Automation. December, Colombo, Sri Lanka, pp. 1–7.
Klopfer, E. and Squire, K. 2008. Environmental Detectives—The development of an augmented reality platform
for environmental simulations. Educational Technology Research and Development 56(2): 203–228.
Kruger, L.E. and Jakes, P.J. 2003. The importance of place: Advances in science and application. Forest Science
49(6): 819–821.
Layar 2013. http://www.layar.com. Accessed 12/09/13.
Li, C. and Willis, K. 2006. Modelling context aware interaction for wayfinding using mobile devices.
In Proceedings of MobileHCI 2006, New York, pp. 97–100.
Meek, S., Goulding, J. and Priestnall, G. 2013. The influence of digital surface model choice on visibility-based
mobile geospatial applications. Transactions in GIS 17(4): 526–543.
Meek, S. and Priestnall, G. 2011. Towards a field toolkit for in-field reconstruction of 3D surface models.
In Proceedings of Geographic Information Science Research UK, 26–27 April 2011, Portsmouth, U.K.,
pp. 263–270.
Meek, S., Priestnall, G., Sharples, M. and Goulding, J. 2013. Mobile capture of remote points of interest using
line of sight modelling. Computers & Geosciences 52: 334–344.
Menking, K. and Stewart, M.E. 2007. Using mobile mapping to determine rates of meander migration in an
undergraduate geomorphology course. Journal of Geoscience Education 55(2): 147–151.
Merleau-Ponty, M. 1996. Phenomenology of Perception. Translated by C. Smith. New Delhi, India: Motilal
Banarsidass Publishers.
Messeter, J. 2009. Place-specific computing: A place-centric perspective for digital designs. International
Journal of Design 3(1): 29–41.
Microsoft Kinect 2013. http://www.xbox.com/en-US/kinect. Accessed 12/09/13.
Mistry, P. and Maes, P. 2009. SixthSense: A wearable gestural interface. In Proceedings of ACM SIGGRAPH
ASIA Sketches, 16–19 December, Yokohama, Japan, p. 11.
Mountain, D. and MacFarlane, A. 2007. Geographic information retrieval in a mobile environment: Evaluating
the needs of individuals. Journal of Information Science 33(5): 515–530.
Norton, B.G. and Hannon, B. 1997. Environmental values: A place-based theory. Environmental Ethics 19(3):
227–245.
Palmer, N., Kemp, R., Kielmann, T. and Bal, H. 2009. Ibis for mobility: Solving challenges of mobile com-
puting using grid techniques. In Proceedings of the 10th Workshop on Mobile Computing Systems and
Applications, 23–24 February, Santa Cruz, CA, p. 17.
Priestnall, G., Brown, E., Sharples, M. and Polmear, G. 2009. A student led comparison of techniques for aug-
menting the visitor experience. In Proceedings of Eighth World Conference on Mobile and Contextual
Learning (mLearn 2009), 26–30 October, Orlando, FL.
Location-Based GeoComputation 375

Priestnall, G. and Polmear, G. 2007. A synchronised virtual environment for developing location-aware mobile
applications. In Proceedings Geographical Information Science Research UK, 11–13 April, Maynooth,
Ireland, pp. 236–240.
Pundt, H. 2002. Field data collection with mobile GIS: Dependencies between semantics and data quality.
GeoInformatica 6(4): 363–380.
Pundt, H. and Brinkkötter-Runde, K. 2000. Visualization of spatial data for field based GIS. Computers &
Geosciences 26(1): 51–56.
Raper, J. 2007. Geographic relevance. Journal of Documentation 63(6): 836–852.
Raper, J. 2009. GIS, mobile and locational based services. In International Encyclopedia of Human Geography,
eds. R. Kitchin and N. Thrift, pp. 513–519. Amsterdam, the Netherlands: Elsevier.
Reichenbacher, T. 2009. Geographic relevance in mobile services. In Proceedings of the Second International
Workshop on Location and the Web, 4 April, Boston, MA, p. 10.
Rogers, Y., Connelly, K., Hazlewood, W. and Tedesco, L. 2010. Enhancing learning: A study of how mobile
devices can facilitate sensemaking. Personal and Ubiquitous Computing 14(2): 111–124.
Shi, W., Kwan, K., Shea, G. and Cao, J. 2009. A dynamic data model for mobile GIS. Computers & Geosciences
35(11): 2210–2221.
Stenton, S.P., Hull, R., Goddi, P.M., Reid, J.E., Clayton, B.J., Melamed, T.J. and Wee, S. 2007. Mediascapes:
Context-aware multimedia experiences. MultiMedia 14(3): 98–105.
Tripcevich, N. 2004. Flexibility by design: How mobile GIS meets the needs of archaeological survey.
Cartography and Geographic Information Science 31(3): 137–151.
Tuan, Y.F. 2001. Space and Place: The Perspective of Experience. Minneapolis, MN: University of Minnesota
Press.
Twitter 2013. http://www.twitter.com. Accessed 14/10/13.
Wagner, D. and Schmalstieg, D. 2009. Making augmented reality practical on mobile phones, Part 1. Computer
Graphics and Applications 29(3): 12–15.
Wikitude 2013. http://www.wikitude.com. Accessed 12/09/13.
Wobbrock, J.O., Myers, B.A. and Aung, H.H. 2008. The performance of hand postures in front-and back-of-
device interaction for mobile computing. International Journal of Human-Computer Studies 66(12):
857–875.
Yin, J. and Carswell, J.D. 2012. MobiSpatial: Open source for mobile spatial interaction. In Proceedings of the
27th Annual ACM Symposium on Applied Computing, 26–30 March, Riva del Garda, Italy, pp. 572–573.
Yoo, Y. 2010. Computing in everyday life: A call for research on experiential computing. MIS Quarterly 34(2):
213–231.
16 Ubiquitous Computing,
Spatial Big Data and Open
GeoComputation
Daniel Sui

CONTENTS
Abstract........................................................................................................................................... 377
16.1 Introduction........................................................................................................................... 378
16.2 Ubicomp and the Emergence of Ambient Intelligence: From Cardiac
Pacemakers to a Smart Planet............................................................................................... 378
16.3 Ubicomp and GeoComputation: From the Mirror Worlds to Everyware in the
Metaverse...........................................................................................................................382
16.3.1 Location/Position Sensing Technologies in Ubicomp............................................... 383
16.3.2 Coupling Ubicomp with GC: Ambient Spatial Intelligence and
Decentralised Spatial Computing.............................................................................. 384
16.4 Problems and Prospects: Towards Open GeoComputation................................................... 387
16.4.1 Ubicomp and Spatial Big Data.................................................................................. 387
16.4.2 Problems and Challenges of Ubicomp and Spatial Big Data.................................... 388
16.4.3 Prospects: Towards Open GeoComputation.............................................................. 390
16.5 Summary and Conclusions.................................................................................................... 391
Acknowledgements......................................................................................................................... 392
References....................................................................................................................................... 392

ABSTRACT
This chapter examines the implications of ubiquitous computing (ubicomp) for GeoComputation
(GC). As computing power has gradually embedded itself into the environment of our daily lives,
we have witnessed the emergence of ubicomp and the concomitant growth of ambient intelligence
during the past two decades. Ubicomp has contributed a new sentient environment in which the
virtual and physical world, digital bits and atoms, people and objects can be linked and tracked.
Ubicomp has also led to the spatial big data deluge, characterised by three Vs – volume, variety
and velocity. The next phase of GC development should be conducted in the context of ubicomp
and spatial big data. There are multiple challenges along computational, theoretical, social, politi-
cal, legal and environmental fronts. To better address these challenges, an open GC paradigm is
proposed in this chapter. Open GC calls for open data, open-source software, open standards and
open collaboration.

377
378 GeoComputation

16.1 INTRODUCTION
The most profound technologies are those that disappear.
They weave themselves into the fabric of everyday life
until they are indistinguishable from it.
Mark Weiser (1991, p. 94)

Although GeoComputation (GC) has been part of the scientific lexicon for over 16 years, its precise
meaning has yet to be settled as reflected by the great variety of definitions adopted by practitioners
since the early days of GC all the way through to the contributors of this latest book (Gahegan, 1999;
Ehlen et al., 2000; Fischer and Leung, 2010). Indeed, GC has meant different things to different
people. Defining GC is, in many interesting ways, just like defining geography; it has become
increasingly difficult and challenging due to the influence of centrifugal driving forces behind its
development. Perhaps Longley’s (1998) more liberal definition – GC is what GC practitioners do –
captures the dynamics and diversity of the field better than any of the restrictive definitions so far
(Couclelis, 1998; Openshaw and Abrahart, 2000). Recent developments in spatial computing further
complicate the task of precisely defining GC (Yang et al., 2011, 2012; Agouris et al., 2012).
This chapter takes a more inclusive definition of GC: any form of computing that is motivated/
inspired by geographical/spatial concepts/theories or deals with geographical/spatial aspects of
reality. The primary goal here is to discuss the field of GC in the broader context of ubiquitous com-
puting (ubicomp) and the emergence of spatial big data. Ubicomp, also known as pervasive comput-
ing, refers to a new mode of computing in which information processing is embedded into everyday
objects, activities and environments. In doing so, I aim to open a discussion on the implications
of ubicomp for the next phase of GC development. In a broader sense, GC is intimately linked to
ubicomp – both literally and physically, simply because in Latin, ubi literally means everywhere,
which already implies geo or spatial. Unlike Couclelis (1998), this chapter does not make an explicit
distinction between computing and computation, thus using the two words interchangeably.
The rest of this chapter is organised as follows. After a brief introduction, Section 16.2 gives
an overview of the recent developments in ubicomp, followed by an introduction of location tech-
nologies in ubicomp and how to design ubicomp to facilitate GC in Section 16.3. Section 16.4 is
devoted to problems and prospects as provided by ubicomp for GC in the context of the big data
deluge. Inspired by the spirit of emergent open science, this section also discusses how an open GC
approach may better help practitioners deal with the challenging issues posed by the big data deluge.
The last section contains a summary and conclusions.

16.2 UBICOMP AND THE EMERGENCE OF AMBIENT INTELLIGENCE:


FROM CARDIAC PACEMAKERS TO A SMART PLANET
Since Stan Openshaw, who is generally recognised as being the father of GC (Openshaw, 2014),
first raised the banner of GC in the mid-1990s, the fields of both geography (especially in terms of
the location/positioning technologies) and computing have undergone dramatic changes. As far as
computing is concerned, perhaps one of the most profound changes is that information processing
capacity has been increasingly embedded in the environment around us (Mostéfaoui et al., 2008).
Indeed, the tools we invented to study the world have increasingly become an integral part of the
world (Sui and Morrill, 2004). In the early days of the twenty-first century, fewer than a quarter of
the computer chips produced by Intel were destined for desktops. Instead, more and more computer
chips are being embedded in the environment as sensors or other consumer products and household
items (Kitchin and Dodge, 2011). Furthermore, computing devices are not only a repository of data
but also communicate and process information. No longer confined to mainframes, server farms or
desktops – typically housed in climate-controlled, weather-proof data centres – computing has become
more mobile, embedded, distributed and disassembled (Figure 16.1) (Pierre, 2010). Along with the
Ubiquitous Computing, Spatial Big Data and Open GeoComputation 379

Body area network:


wearable computers/displays

Office The
network intelligent
home

Vehicle
network
Supermarket, etc.

FIGURE 16.1  Ubicomp and the emerging sentient environment in daily life. (Courtesy of Fraunhofer
Verbund Mikroelectronic, Berlin, Germany.)

Smart dust
Airborne remote sensors GPS satellites
tagged insects Sap flow sensor array
Minirhizotron
array
Commercial E-nose
remote
sensing
satellites Sensor clustered
MEMS insects
Smart pods Weather station
Automated
E-tongue

Multiparameter
soil probes

FIGURE 16.2  Ubicomp and sensor webs: an electronic skin of planet Earth. (From Tao, V., The smart sensor
web: A revolutionary leap in earth observation, GeoWorld Magazine, September Issue, figure first published
in GeoWorld Magazine, September 2003, http://www.geoplace.com, 2003.)

sensor web (sensor network designed for environmental monitoring) in the environment, ubicomp
has become an integral part of an electronic skin wrapping around the Earth (Figure 16.2). More and
more objects we interact with on a daily basis are now equipped with computing processing power,
while many others are activated by passing processors carried by people or mounted on vehicles in
increasingly sentient cities (Shepard, 2011). As Crang and Graham (2007) observed, ‘our environment
is not a passive backdrop but an active agent in organizing our daily lives. The spaces around us are
now being continually created and re-created in informational and communication processes’ (p. 789).
We are increasingly living in sentient cities ‘where we not only think about cities but cities think of us’
(p. 790). Indeed, in the ubicomp age, computers should not simply be regarded as external to the prob-
lem/solution; instead, they must be viewed as an active agent in shaping who we are and what we do.
Ubicomp, also known as pervasive computing (Genco and Sorce, 2010), is typically invisible but
accessible everywhere within a particular locale. Ubicomp represents the third wave of computing
380 GeoComputation

Mainframe:
One computer, many users

Computer

Personal:
One computer, one user

User

Ubicomp:
many computers, one user

FIGURE 16.3  Fundamental differences among the three paradigms of computing.

(Figure 16.3) (Weiser, 1993). The first wave of computing started with the invention of ENIAC
(Electronic Numerical Integrator and Computer) in 1946 and ended with the appearance of the first
personal computer (PC) in 1983. This period was dominated by mainframe computers, with one
computer serving multiple users. The second wave of computing, from 1983 to present, has been
characterised by PCs with one person and one computer in an uneasy symbiosis, staring at each
other across the desktop without really inhabiting each other’s worlds. The third wave of computing,
Weiser (1993) argues, will be dominated by ubicomp (Figure 16.4). Unlike the previous two waves,
ubicomp will operate in a mode where many computers serve one or many individuals, regardless of
where the person is located in the world (Farman, 2012). Instead of interacting across the desktop,

18

16 Mainframe (one computer, many


people)
14 PC (one person, one computer)
Ubiquitous computing (one
12 person, many computers)

10
Sales/Year

0
1940

1945

1950

1955

1960

1965

1970

1975

1980

1985

1990

1995

2000

2005

FIGURE 16.4  The major trends in computing. (Modified from Weiser, M., The major trends in computing,
http://www.ubiq.com/hypertext/weiser/NomadicInteractive/sld003.htm, 1996).
Ubiquitous Computing, Spatial Big Data and Open GeoComputation 381

computers will be embedded into human bodies, furniture, walls, buildings, surrounding environ-
ments, neighbourhoods and cities, thus forming a nearly seamless digital habitat (Kuniavsky, 2010).
Ubicomp is heralding a new age that is full of smart mobs and sentient objects via the Internet of
Things (Rheingold, 2002; Hersent et al., 2012). Indeed, the world predicted in David Brin’s (1990)
science fiction novel Earth, in which everybody is connected with everybody and everything else,
has arrived much sooner than anticipated.
Although the computer as we know it has not completely vanished as Weiser (1991) predicted,
recent advances in ubicomp have accelerated the pace towards the disappearance of computers,
as more and more embedded computers are found inside our bodies (such as cardiac pacemakers) as
well as in our surroundings (e.g. ranging from homes, offices and shops, to streets, neighbourhoods
and cities). With ubicomp so widespread throughout the health-care industry (Orwat et al., 2008),
computer chips of various kinds are increasingly implanted into human bodies, leading Clark (2003)
to argue that we are all now naturally born cyborgs. Furthermore, with the accelerated development
of worldwide sensor networks (such as IBM’s smart planet project and HP/Cisco’s CeNSE project)
and the Internet of Things (Tuters and Varnelis, 2006), ubicomp is changing human–computer
interaction in many fundamental ways. The goal of developing ubicomp is ‘to put computing back
in its place, to reposition it into the environmental background, to concentrate on human-to-human
interfaces and less on human-to-computer ones’ (Weiser et al., 1999: p. 694).
Weiser (1991) envisioned three basic forms for ubiquitous system devices: tabs (wearable
centimetre-sized devices), pads (handheld decimetre-sized devices) and boards (metre-sized inter-
active display devices). These three forms proposed by Weiser are characterised by having a pla-
nar shape and incorporating visual output displays. However, recent developments in smart devices
have expanded this range into a much more diverse and potentially more useful array of ubicomp
devices. Three additional types for ubiquitous systems have been reported (wikipedia.com): (1) dust
(miniaturised devices without visual output displays, for example, microelectromechanical systems
[MEMS], ranging from nanometres through micrometres to millimetres, such as the so-called smart
dust); (2) skin (fabrics based on light-emitting and conductive polymers – organic computer devices –
can be formed into more flexible non-planar display surfaces and products such as clothes and cur-
tains) and (3) clay (ensembles of MEMS can be formed into arbitrary 3D shapes such as artefacts
resembling many different kinds of physical object, forming tangible interfaces) (Poslad, 2009).
These embedded computers, though invisible to users, are fast approaching the power and com-
plexity of desktop PCs (National Research Council, 2001, 2003). According to an estimate by Bill
Gates (2003), a typical middle-class American has already interacted with about 150 embedded
systems every day at the outset of the twenty-first century, most of the time without knowing it.
As ubicomp reaches maturity, these embedded computers – which use up to 90% of the micro-
processors produced today – will inevitably perform more PC-like functions. More importantly,
advances in wireless networks will make these embedded computers communicate seamlessly with
their traditional PC counterparts. According to the Semiconductor Industry Association (http://
www.semiconductors.org/industry_statistics/industry_statistics), the world microchip industry is
currently producing approximately one billion transistors per person per year. Computing is becom-
ing ubiquitous, at least in an increasing number of places in the developed world.
Ubicomp was made possible by the convergence of new advances in distributed and mobile
computer systems, wireless communication devices and new visualisation technologies (Krumm,
2009; Yang et al., 2012). With the disappearance of computers, we have witnessed the emergence of
a new kind of AI (ambient intelligence) in recent years. AI refers to electronic environments that are
sensitive and responsive to the presence of people (Friedewald et al., 2005). Its aim is to improve the
standard of living by creating the desired environment and functionality via intelligent, personalised
and interconnected systems and services. In an ideal ambient intelligent environment, the user is
surrounded by a multitude of interconnected, invisibly embedded computer systems. AI is capable
of recognising users, adapting to their preferences and offering natural means of interaction. The
prototype project Ambient Agoras (http://www.ambient-agoras.org) has already demonstrated that
382 GeoComputation

the computer as a device will disappear, although its functionality will persist in a ubiquitous fash-
ion. The Ambient Agoras environment was designed to transform places into social marketplaces of
ideas and information (agoras) and provide situated services, place-relevant information and a feel-
ing of the place (genius loci). It is possible to add new layers of information-based services to each
place or memory that is accessible to users. All these functions are achieved by integrating infor-
mation into architecture via smart artefacts and expanding reality by providing better affordances
(a quality of an object or an environment that allows an individual to perform an action) and infor-
mation processing to existing places and objects. The emergence of AI will represent significant
progress towards the development of the information appliances that Norman (1998) envisioned.
In summary, ubicomp is rapidly contributing to an emerging AI that has the following
characteristics: (1) embedded (many networked devices are integrated into the environment),
(2) context aware (these devices can recognise users and their situational context), (3) adaptive/
personalised (they can be tailored to individual needs) and (4) anticipatory (they can anticipate
users’ desires without conscious mediation). We need to bear in mind that no technologies exist or
develop in a vacuum. Like all powerful technologies, ubicomp’s development has been driven by a
series of socioeconomic, political and even personal factors (Crang and Graham, 2007), including
but not limited to the corporate sector’s relentless pursuit of friction-free capitalism, governments’
determination to increase security and surveillance in the context of the war on terror and our exis-
tential pursuit of meaning through more affective computing in the broader fields of art and culture
(Dourish and Bell, 2011; Ekman and Fuller, 2012).

16.3 UBICOMP AND GEOCOMPUTATION: FROM THE MIRROR


WORLDS TO EVERYWARE IN THE METAVERSE
GC currently faces a computing environment that has drastically changed since it was first proposed
as a field of inquiry nearly two decades ago. Instead of the traditional distinction of hardware and
software, we have witnessed the emergence of everyware (Greenfield, 2006) as ubicomp replaces
the traditional mainframe and desktop computers to become the dominant paradigm for computing.
The future scenario of everyware (sometimes used interchangeably as ubicomp) – when people and
objects are connected via distributed computing and unconstrained by geographical contexts – has
arrived faster than expected. Concomitant with the growth of ubicomp/everyware, we are also rap-
idly entering a new age of metaverse – a hybrid world in which the virtual world based upon digital
bits is increasingly linked to the atom-based physical world (http://www.metaverseroadmap.org).
First coined by Neal Stephenson’s (1992) science fiction novel Snow Crash, metaverse refers to a
fictional virtual world where humans, as avatars, interact with each other and software agents, in a
3D space that uses the metaphor of the real world. The rapidly evolving metaverse is a result of sev-
eral converging technologies. According to the metaverse road map report, the browser for engaging
this metaverse will be based upon a 3D web that brings together the following four technologies:

• Mirror worlds – digital representations of the atom-based physical world, such as Google
Earth, Microsoft Virtual Earth, NASA World Wind, ESRI ArcGlobe, USGS National Map
and the massive georeferenced geographic information system (GIS) databases developed
during the past 50 years
• Virtual worlds – digital representations of imagined worlds, such as Second Life, World
of Warcraft, computer games, various cellular automata models and agent-based models
• Lifelogging – the digital capture of information about people and objects in the real or
digital worlds, such as Twitter, blogs, Flickr, YouTube and social networking sites such
Facebook or MySpace
• Augmented reality – sensory overlays of digital information on the real and virtual worlds
using a heads-up display (HUD) or other mobile/wearable devices such as cell phones or
sensors via participatory sensing
Ubiquitous Computing, Spatial Big Data and Open GeoComputation 383

Nowadays, when I think about GIS in general and GC in particular, I cannot separate either of
them from the emerging metaverse. Viewed from a metaverse perspective, our discussions of GC
within the geospatial community have focused almost exclusively on the components of mirror
worlds. In this ubicomp age, GC should be re-conceptualised to deal with everyware in the emerg-
ing metaverse.
One of the defining characteristics of ubicomp is its context awareness, which generally refers to
the capabilities of either mobile or embedded systems to sense their physical environment and adapt
their behaviour accordingly. In ubicomp, context includes three essential elements: (1) where you
are (location), (2) who you are with (identity) and (3) what resources are nearby (potential). Context
is a broad term that includes nearby people, devices, lighting, noise level, network availability and
even the social situation, for example, whether you are with your family or a friend from school or
a colleague from work. Location is only part of the contextual information, but location alone does
not necessarily capture things of interest that are mobile or changing. As far as GC is concerned,
location is the starting point from which further spatial analysis and modelling can be conducted.
In the age of ubicomp, location has assumed more important roles in shaping everything we do in
the metaverse (Gordon and de Souza e Silva, 2011). This section first reviews the current existing
location sensing technologies, followed by a discussion on how to design ubicomp for GC.

16.3.1 Location/Position Sensing Technologies in Ubicomp


High-quality locational information is the foundation upon which GC is built. During the past two
decades, multiple technological advances have been made in alternative location sensing technology,
including techniques for indoor navigation, near field communication (NFC), MEMS, audio bea-
cons, Wi-Fi, radio-frequency identification (RFID) and Bluetooth (Choi et al., 2008; ABI Research,
2012). Indeed, these alternative location sensing technologies have become embedded in more and
more devices and consumer products, making computing not only more ubiquitous but also more
location and context aware. As a result, we have witnessed the growth of ubiquitous geographic
information in recent years (Kim and Jang, 2012), which is increasingly available and searchable on
the web (Gordon and de Souza e Silva, 2011).
Regardless of the specific techniques deployed to determine the locational information, three
major methods/principles are used when attempting to determine a given location in ubicomp
(Hightower and Borriello, 2001):

• Triangulation can be done via lateration, which uses multiple distance measurements
between known points, or via angulation, which measures angle or bearing relative to
points with known separation. Satellite-based global positioning systems (GPSs) are based
upon the principle of triangulation to determine location. GPS works well outdoors but
usually does not work inside buildings.
• Proximity measures nearness to a known set of points. RFID, Wi-Fi and audio beacons
all rely on proximity measures. Most indoor location sensing techniques are based on the
proximity method.
• Scene analysis examines a view from a particular vantage point. Widely regarded
as the most cost-effective means of tracking full-body motions in the world today,
MotionStar is a location sensing technology based on the principle of scene analysis
(http://www.vrealities.com/motionstar.html).

These different location sensing techniques vary in accuracy, cost and area coverage, ranging from
workspace and site-wide systems to regional, global and even interplanetary systems. In reality,
hybrid positioning systems (e.g. Navizon, Xtify, PlaceEngine, Skyhook, Devicescape, openBmap) –
using a combination of more than one location sensing method – are often used to locate and track
people and objects. As geotagging becomes more common for information available online and IP
384 GeoComputation

addresses can be easily tied to their physical locations, we can determine where people and things
are located more easily than at any time in human history. The close coupling of ubicomp with GC
has contributed to an ambient spatially intelligent environment.

16.3.2 Coupling Ubicomp with GC: Ambient Spatial Intelligence


and Decentralised Spatial Computing

The emergence of everyware in the metaverse is rapidly creating a new sentient environment with
growing capabilities of ambient spatial intelligence (AmSI) (ambientspatial.net). As stated earlier, it
is no longer a luxury to discuss GC in the context of ubicomp. It has become a necessity to design GC
in the AmSI environment, where GC is closely coupled with the ubicomp environment. Some of the
general principles have been laid out in the decentralised spatial computing (DeSC) framework of
Duckham (2013). The goal of DeSC is to (1) respond efficiently to queries about events, (2) support
better understanding of those events in real time and (3) improve human decision-making based on
information about spatial events.
According to Satoh (2005), ubicomp environments have several unique requirements as follows:

• Mobility: Not only entities, for example, physical objects and people, but also computing
devices can be moved from location to location. The location model in ubicomp is required
to be able to represent mobile computing devices and spaces as well as mobile entities.
Furthermore, it needs to be able to model mobile spaces, for example, cars, which may
contain entities and computing devices.
• Heterogeneity: A ubicomp environment consists of heterogeneous computing devices, for
example, embedded computers, handheld/wearable computers, sensor networks of various
kinds and public terminals. Location-based and personalised services must be executed
using computing devices whose capabilities can satisfy the requirements of the services
(Gartner and Ortag, 2011). GC is thus required to maintain the capabilities of computing
devices as well as their locations.
• Availability: Ubicomp devices may have limited memories and processors, so they cannot
support all the services that they need to provide. Software must be able to be deployed at
computing devices on demand. GC should be able to manage the (re)location of service-
provider software.
• Absence of centralised databases: Since ubicomp devices are organised in an ad hoc
and peer-to-peer manner, they cannot always access database servers to maintain loca-
tion models. The model should be available without database servers, enabling computing
devices to be organised without centralised management servers.

Satoh (2007) further developed and implemented a model for location-aware and user-aware services
in ubicomp environments. This model can be dynamically organised and implemented like a tree
based on geographical containment, such as user–room–floor–building, and each node in the tree
can be constructed as an executable software component. The model is unique to existing approaches
because it can be managed by multiple computers in an ad hoc manner and is also capable of pro-
viding a unified view of the locations of not only physical entities and spaces, including users and
objects, but also computing devices and services. A prototype implementation of this model was
developed on a Java-based mobile agent system. Figure 16.5 shows the overall design, which contains
four components: (1) Virtual component (VC) is a digital representation of a physical entity or space
in the physical world; (2) aura component is a virtual or semantic scope surrounding a physical entity
or computing device; (3) proxy component bridges the world model and computing device and main-
tains the subtree of the model or executes services located in the VC; and (4) service component is a
software module that defines application-specific services associated with physical entities or places.
Ubiquitous Computing, Spatial Big Data and Open GeoComputation 385

Component manager Component manager


Component migration Component migration
PCS (PDA) PCS (PDA)

VC (person 1) VC (person 1) VC (person 2) VC (person 2) PCL (TV)

AC (sensor 1) AC (sensor 2) LC (tree 1) AC (sensor 3)


Reference
VC (room) VC (room)

Step 1: Step 2: Step 1:


Search (BFS) Multicast query message Search (BFS)

Step 2:
LSM system Multicast query message LSM system
Communication layer Communication layer
Fusion layer Fusion layer
Abstraction layer Abstraction layer Peer-to-peer Abstraction layer
Reception layer Reception layer communication Reception layer

TV
Sensor 1 Sensor 2 Sensor 3
User 1 User 1 User 2 User 2

Tag Tag PDA


PDA
Movement Movement

FIGURE 16.5  Location-based pervasive computing environment. (From Satoh, I., Perv. Mobile Comput.,
3(2), 158, 2007.)

Huang et al. (2009) attempted to link ubicomp with Web 2.0/collective intelligence into mobile
navigation services. They developed a mobile navigation system in a ubicomp environment to
collect user-generated content explicitly and implicitly, such as ratings, comments, feedback,
moving tracks and durations at decision points, and thus provide users with a new experience
and smart wayfinding support (e.g. route recommendations based on collective intelligence). A
smart environment with a positioning module and a wireless communication module was set up
to support users’ wayfinding, facilitate users’ interaction with an annotation of the smart envi-
ronment and collect user-generated content. In order to illustrate the benefits of introducing a
smart environment and Web 2.0 into mobile navigation services, Huang et al. (2009) developed
several collective intelligence–based route calculation algorithms to provide smart wayfinding
support for users, such as the nicest route, the least complex route, the most popular route and
the optimal route.
Prototype systems reported by Huang et al. (2009) and Satoh (2007) represented significant steps
towards performing meaningful GC in an indoor environment. Perhaps this may go down in history
as ubicomp’s biggest contribution to GC as geospatial technologies have often been pejoratively
labelled as a 15% technology, because most humans spend 85% of their time indoors, and until
recently, we did not have efficient methods to track people in an indoor environment. As more and
more computer chips and sensors are becoming integral parts of our homes, offices, shops, hospi-
tals and neighbourhoods, GC will be better equipped with capabilities to model and track human
and object movement in indoor as well as outdoor environments. The recent development of urban
tomography (Evans-Cowley, 2010; Krieger et al., 2010) has enabled citizens to better document
their lives spatiotemporally by capturing dense audiovisual records of urban phenomena, poten-
tially linking both indoor and outdoor activities (Figure 16.6).
386

Swarming on the UCLA Campus, CS 219


Transmission

Examination Cellular
network

Internet
Wi-Fi

Storage, search
and navigation

FIGURE 16.6  The urban tomography system (tomography.usc.edu). (From Krieger, M.H. et al., J. Urban Technol., 17(2), 21, 2010, Taylor & Francis Group, Ltd.,
http://www.tandfonline.com/doi/abs/10.1080/10630732.2010.515087.)
GeoComputation
Ubiquitous Computing, Spatial Big Data and Open GeoComputation 387

16.4  PROBLEMS AND PROSPECTS: TOWARDS OPEN GEOCOMPUTATION


The explosive development of ubicomp during the past two decades has created unprecedented
opportunities and daunting challenges for GC. This section reviews GC’s problems and prospects
in the age of ubicomp.

16.4.1 Ubicomp and Spatial Big Data


Ubicomp has contributed to what is popularly known as the big data deluge. Because an increasing
number of data carry spatial and temporal tags, GC must explore creative ways to deal with spatial
big data (Shekhar et al., 2012). The spatial big data deluge is of particular concern primarily because
of the three Vs: variety, volume and velocity (Janowicz, 2012). Big data is not only about the great
variety and large volume but also the speed at which data are created and updated. The three Vs of
spatial big data pose formidable technical challenges for GC in the coming decade.
Until recently, the geospatial community has had a rather narrow definition of what is considered
geographic data or information, often heavily influenced by the legacy of traditional cartography.
But rapid advances in a plethora of technologies – GPS, smartphones, sensor networks, cloud com-
puting, etc., especially all of the technologies loosely called Web 2.0 – have radically transformed
how geographic data are collected, stored, disseminated, analysed, visualised and used (Chee and
Franklin, 2010). This trend is best reflected in Google’s mantra that ‘Google maps = Google in
maps’ (Ron, 2008). The insertion of an in between Google and maps perhaps signifies one of the
most fundamental changes in the history of human mapping efforts. Nowadays, users can search
though Google maps not only for traditional spatial/map information but also for almost any kind
of digital information (such as Wikipedia entries, Flickr photos, YouTube videos and Facebook/
Twitter postings) as long as it is geotagged. Furthermore, in contrast to the traditional top-down
authoritative process of geographic data production by government agencies, citizens have played
an increasingly important role in producing geographic data of all kinds through a bottom-up
crowdsourcing process. As a result, we now have a great variety of geocoded data growing on a
daily basis from molecular to global scales covering almost everything we can think of on or near
the Earth’s surface.
Due to the ubiquity of information-sensing mobile devices, aerial sensory technologies (remote
sensing), software logs, cameras, RFID readers, wireless sensor networks and other types of data-
gathering devices, 1–5 EB (1 EB = 1018 B) of data is created daily and 90% of the data in the world
today were created within the past 2 years (MacIve, 2010). The amount of data humanity creates
is doubling every 2 years; 2010 is the first year that we reached 1 ZB (1021 B), while in 2011 alone,
the world generated approximately 1.8 ZB of data. The explosive growth of big data is rapidly
transforming all aspects of governments, businesses, education and science. By 2020, the volume of
the world’s data will increase by 50 times from today’s volume (Gantz and Reinsel, 2011). We will
need 75 times more IT-related infrastructure in general and 10 times more servers to handle the new
data. Metaphors of data storage have evolved from bank, to warehouse, to portal and now to cloud.
Data storage cost has dropped dramatically during the past two decades. Between 2005 and 2011
alone, costs of storage dropped by 5/6. Not surprisingly, how to deal with the new reality of big data
tops the agendas of governments, industry and multiple disciplines in the academy (IWGDD, 2009;
CORDIS, 2010).
Although it is a challenging task to estimate the precise volume of geospatial data out there, we
can safely say geospatial data are becoming an important part of the big data torrent. Geospatial
information in general and volunteered geographic information (VGI) in particular should be
understood in the context of big data. Crowdsourcing, the Internet of Things and big data are
rapidly converging in the domain of geospatial technologies (Ball, 2011). Of course, due to rapid
technological advances, what is considered big or small is a moving target. In the McKinsey report
(Manyika et al., 2011), personal location data have been singled out as one of the five primary
388 GeoComputation

big data streams. With approximately 600 billion transactions per day, various mobile devices are
creating approximately 1 PB (1015 B) of data per year globally. Personal location data alone is a $100
billion business for service providers and $700 billion to end users (Manyika et al., 2011). The other
four streams of big data identified by the McKinsey Global Institute – health care, public-sector
administration, retail and manufacturing – also have a significant amount of data either geocoded
or geotagged. So geospatial data are not only an important component of big data but are actually,
to a large extent, big data themselves. For the geospatial community, big data presents not only
bigger opportunities for the business community (Francica, 2011) but also new challenges for the
scientific and scholarly communities to conduct ground-breaking studies related to people (at both
individual and collective levels) and environment (from local to global scale) (Hayes, 2012).
In fact, the geospatial community was tackling big data issues even before big data became a
buzz word or trend (Miller, 2010). From very early on, geospatial technologies were at the forefront
of big data challenges, primarily due to the large volumes of raster (remote-sensing imagery) and
vector (detailed property surveys) data that need to be stored and managed. Back in 1997 when
Microsoft Research initiated a pilot project to demonstrate database scalability, they used aerial
imagery as the primary data (Ball, 2011). The Microsoft TerraServer developed then is still in use
and functional today and sets the standard and protocol for today’s other remote-sensing image
serving sites such as OpenTopography.org (LiDAR data).
The three Vs in spatial big data have raised daunting technical challenges for GC. First, as early
as 2007, our capacity to produce data had outpaced our abilities to store them (National Research
Council, 2009). Although DNA-inspired data-encoding techniques are promising (Hotz, 2012), the
lag time of practical implementation is still considerable. How to redesign our cyberinfrastructure
to better deal with the situation is thus becoming a major challenge. Second, the quality of spatial
big data is often problematic as they often have no sample scheme, no quality control, no metadata
and no generalisability (Goodchild, 2012). Third, both analysis and synthesis of the great variety of
data generated by ubicomp are currently difficult due to the lack of interoperability, common ontol-
ogy or semantic compatibility (Sui, 2012).

16.4.2  Problems and Challenges of Ubicomp and Spatial Big Data


In addition to these technical challenges, ubicomp and spatial big data have also raised a series of
critical issues at the individual, social and environmental levels. While the potential applications
and benefits of ubicomp are well documented, concerns over ubicomp’s long-term implications for
privacy, the digital divide and sustainability also need to be addressed alongside the technical chal-
lenges outlined previously.
At the individual level, ubicomp has intensified society’s concern over privacy as potentially
troubling apps such as Girls Around Me (http://girlsaround.me) can be downloaded for free from
iTunes, or condom use can be mapped using precise lat/long coordinates (http://wheredidyou-
wearit.com). Location-based services and social media have further exacerbated concerns over
people’s locational privacy. Resolving issues related to locational privacy requires comprehensive
approaches along legal, ethical and technical fronts (Sui, 2011). In particular, the development of
trustworthy geospatial technologies in the context of ubicomp deserves attention. Generally, two
major strategies have been developed and adopted: anonymity and obfuscation (Duckham and
Kulik, 2006). Anonymity is often regarded as one of the privacy-sympathetic technologies (PST).
Anonymity detaches or removes an individual’s locational information from electronic transactions.
Anonymity is normally quite effective in protecting individual privacy. However, with recent
advances in data-mining techniques, GC can integrate locational information with other data such
as remotely sensed imagery; georeferenced social, economic and cadastral data; point-of-sale data;
credit-card transactions; traffic monitoring and video surveillance imagery; and other geosensor
network data, allowing identity to be inferred. Obfuscation techniques deliberately degrade loca-
tional information, using error and uncertainty to protect privacy, one of several privacy-enhancing
Ubiquitous Computing, Spatial Big Data and Open GeoComputation 389

technologies. They also include geographic masking for static data (Armstrong and Rushton, 1999).
Duckham and Kulik (2006) extend the obfuscation approach to mobile objects. They also consider
ways to counter potential threats from third parties who can refine their knowledge of a mobile
object and compromise the obfuscation.
Concomitant with the growth of this ever-expanding digital universe filled with big data, the
world (people, manufactured objects and/or other things and environment) is increasingly being
recorded, referenced and connected by vast digital networks. Almost paradoxically, as some parts
of the world are flooded by big data and people are increasingly connected in a shrinking world,
we must also be keenly aware that this world remains a deeply divided one – both physically and
digitally. While a large majority of people in North America and Europe have access to the Internet
(with Internet penetration rates at 78.3% and 58.3%, respectively, by the end of 2011), two-thirds of
humanity does not have access to the rapidly expanding digital world; the world average Internet
penetration rate is 30.2% with Asia (23.8%) and Africa (11.4%) trailing at the bottom. The geo-
graphical distribution of new digital data stored in 2010 reflects both the digital divide and uneven
development levels across the globe, with the developed world or Global North (North America and
Europe) having 10–70 times more data than the developing world or Global South (Africa, Latin
America and Asia) (Manyika et al., 2011). Nearly a third of humanity (about two billion people) still
lives on under $2 a day. We should also be mindful that sometimes simply having access to gadgets
themselves is not enough. Many iPhone users in the developed world have enjoyed using one of
multiple versions of restroom locators (e.g. have2p), but for a country like India, where there are
more cell phones than toilets, simply having have2p installed on one’s iPhone would not help much
in rural areas due to the severe lack of sanitary infrastructure.
In the context of geographic information (and to some extent other types of data as well), the
biggest irony remains that Murphy’s law is still at work – information is usually the least available
where it is most needed. We have witnessed this paradox unfolding painfully in front of our eyes
in the Darfur crisis in northern Sudan, the aftermath of the 2010 Haiti earthquake and the 2011 BP
explosion in the Gulf of Mexico. Undoubtedly, how to deal with big data in a shrinking and strati-
fied world remains a major challenge during the age of ubicomp and spatial big data. The strengths,
weaknesses, opportunities and threats of VGI for improving the spatial data infrastructure are quite
different in the two global contexts of North and South (Genovese and Roche, 2010). Furthermore,
as Gilbert and Masucci (2011) show so clearly in their recent work on uneven information and com-
munication geographies, we must move away from the traditional, linear conceptualisation of a digi-
tal divide, concerned primarily with physical access to computers and the Internet. Instead, we must
consider the multiple divides within cyberspace (or digital apartheid) by taking into account the
hybrid, scattered, ordered and individualised nature of cyberspaces (Graham, 2011). Indeed, mul-
tiple hidden social and political factors are at play in determining what is or is not available online
(Engler and Hall, 2007). Internet censorship (Warf, 2011; MacKinnon, 2012), power laws (or the so-
called 80/20 rule) (Shirky, 2006), homophile tendencies in human interactions (de Laat, 2010) and
fears of colonial and imperial dominance (Bryan, 2010) are also important factors to consider for the
complex patterns of digital divide and uneven practices of VGI at multiple scales on the global scene.
Last, but not least, there are also concerns over the long-term environmental impacts of ubi-
comp. Will these smart devices individuals use and smart cities at the local and regional level
automatically contribute to the formation of a smart planet at the global level? In other words,
will ubicomp lead to more ubiquitous consumption, thus more material and energy consumption
that will accelerate resource depletion and environmental devastation? Or will ubicomp further
promote citizen science, better monitor environmental conditions and track products through their
entire life cycle, thus helping in the effort to save our planet? Are we closer or further away from
the goals of sustainability in the age of ubicomp? How can ubicomp be deployed to advance the
cause for the environment? Will ubicomp sensors for animals, plants and physical elements result
in new types of environmental rights? Furthermore, scientists and artists alike have been concerned
about E-wastes generated by ubicomp each year and their long-term effects on the environment.
390 GeoComputation

Ubicomp’s impacts on human health, such as exposure to non-ionising radiation through ubicomp
devices or psychological effects of implantable chips, have also been discussed in the literature. One
promising avenue of research is ecological computing (part of nature-inspired computing), which
is not only concerned with environmental impacts of computing technologies but also how to cre-
atively use ecological principles to design and develop computing systems (Zhuge and Shi, 2004;
Briscoe, 2012; Zhao and Brown, 2001).

16.4.3  Prospects: Towards Open GeoComputation


To effectively address these multiple challenges, we need to rethink the way GC has been practised so
far. In particular, we need to think about the ways ubicomp and spatial big data are changing how we
do science. The broader scientific community’s push for a new paradigm under the general umbrella
open science deserves our attention. As reflected in the presentations made during the recent Open
Science Summit (opensciencesummit.com), exciting advances are being made every day in diverse
scientific fields ranging from mathematics (the Polymath project), astronomy (Galaxy Zoo, Sloan
Digital Sky Survey) and geology (the OneGeology project) to environmental science (Water Keeper,
Global Community Monitoring), health and medicine (the HapMap project, CureTogether).
Efforts devoted to open science are quickly fleshing out the details of emerging data-intensive
inquiries, otherwise known as the fourth paradigm. The fourth paradigm was originally advocated
by Jim Gray (2007) at IBM. According to Gray (2007), scientific discoveries until recently (the early
days of the twenty-first century) have been driven by three dominant paradigms: the empirical (by
describing natural phenomena), the theoretical (by using and testing models and general laws) and
the computational (by simulating complex phenomena using fictional/artificial or small real-world
data sets) approaches. Unlike these three paradigms, the fourth paradigm is data intensive, often
dealing with data in peta- or even exabytes of different varieties (numbers, text, image and video)
updated rapidly (in some cases, even real time).
Despite diverse interpretations of the precise meaning of open science (e.g. open source, open
data, open access, open notebook or networked science), we can safely claim that the emerging
paradigm, in a nutshell, includes the following elements (Gezelter, 2009): (1) transparency in
methods of data collection, observation and experiments; (2) public availability and reusability of
scientific data to facilitate reproducibility (see Brunsdon, 2014); (3) public accessibility of scientific
communication and publication; and (4) mass collaboration involving both experts and amateurs/
citizens using web-based tools.
While ubicomp and big data are creating a new terra incognita, maybe even too big to know
(Weinberger, 2012), Nielsen (2012) argues that these four basic principles of open science may serve
to best guide new scientific discovery. Indeed, we need such signposts; as the stream of geospatial
data rapidly merges with the big data deluge, and as open science is promoted as the Noah’s ark in
which everyone is to survive the current information flood, it is natural that the next episode for GC
is moving towards an open GC.
In fact, I must say that the geospatial community had been working on big data in the spirit
of open science long before it became the talk of the town. As a result, the geospatial commu-
nity is well positioned to ride the current wave of open science because of our collective efforts
in promoting data sharing, open-source software development and participatory sensing/mapping
(citizens as sensors). For example, the Open Geospatial Consortium (opengeospatial.org) has been
a pioneer in developing open standards to facilitate interoperability of geospatial data across plat-
forms. Also notable, the FOSS4G (Free and Open Source Software for Geospatial) Conference
has – since 2006 – been serving as the primary forum to promote the development of free and open-
source software (foss4g.org). According to Steiniger and Hunter (2012), we now have a plethora of
free and open software tools, ranging from web map servers for managing data and images (such as
mapserver.org, geoserver.org), web GIS servers for data processing (52north.org, zooproject.org)
and data storage software/spatial DBMS (postgis.refractions.net, mysql.com) to registry/catalogue
Ubiquitous Computing, Spatial Big Data and Open GeoComputation 391

and metadata software (geonetwork-opensource.org, wiki.deegree.org), desktop GIS clients for


data updating and analysis (qgis.org, openjump.org) and web GIS development toolkits for browser-
based clients (openlayers.org, openscales.org, mapbender.org). These free and open-source software
tools have not only posed formidable challenges to the dominance and monopoly of commercially
available software (Obe and Hsu, 2011), but they have also prompted commercial software vendors
to open up their closed toolboxes to encourage users to develop and share their application modules
(Stephens et al., 2012; see also Bivand, 2014).
In terms of mass collaboration, we have seen many exciting new advances in the spirit of open
science, following on the phenomenal success of OpenStreetMap (Sui et al., 2012) and a variety
of projects in citizen science (Dickinson et al., 2012). The integration of social media, ubicomp
and urban informatics has brought citizens together and engaged them for worthy causes (Foth
et al., 2011). Particularly noteworthy is the area of emergency management and disaster relief.
We now have Ushahidi, InRelief, Sahana and Crisis Commons playing crucial roles in various
disaster relief efforts, all relying on VGI as a primary data source. These new developments, in
turn, have further encouraged governments to be more open and transparent; more geocoded
data are now available online (e.g. geo.data.gov) and new government-supported platforms are
being developed to facilitate these developments (http://www.geoplatform.gov). Coupled with
industry-initiated efforts for open ubicomp standards (Helal, 2010), these new developments will
greatly facilitate interoperability among the rather heterogeneous ubicomp systems. Perhaps
more important for us as individual researchers and scholars, websites such as OpenScholar
(http://openscholar.harvard.edu), Wikiversity, Citizendium and Scholarpedia will further facili-
tate openness, sharing and collaboration among researchers and scholars, following the open
science model. An interdisciplinary group of scholars have proposed several intriguing concep-
tual frameworks for us to understand the broader implications of ubicomp (Kitchin and Dodge,
2011; de Souza e Silva and Frith, 2012; Farman, 2012), which may potentially serve as a guiding
framework for GC.
Although it is quite breathtaking to witness these developments, there are still plenty of unre-
solved issues for an open GC paradigm. For businesses in the geospatial industry, there is the real-
ity of competing against the free, which often requires business people to imagine a new business
model with which to gain a slice of the increasing competitive market and ensure profitability
(Bryce et al., 2011). For those of us in academia, there is the harsh reality that the current academic
reward system is designed for the practice of closed science; new practices in the spirit of open sci-
ence often contradict higher education’s push for commercialisation and a business bottom line and
are frequently being discouraged or at least insufficiently rewarded. For government agencies, there
is the struggle over how and where to draw the line in terms of openness and secrecy in the wake of
WikiLeaks (now OpenLeaks). If the history of technological and scientific advances holds any use-
ful lesson, it perhaps is this: ubicomp and open science, similar to all other well-intentioned human
endeavours throughout history, will not be immune from their unintended consequences. Last, but
certainly not least, these issues carry with them certain urgent questions for educators at all levels
from K-12 to graduate school. What are the educational implications of these developments in ubi-
comp, spatial big data and open science? In what skill sets and habits of thinking should we train
and educate our students in order to help them flourish both in the global labour market and as
responsible citizens in the age of ubicomp and spatial big data?

16.5  SUMMARY AND CONCLUSIONS


The goal of this chapter has been to examine the implications of ubicomp for GC. It is abundantly
clear that computing has undergone a fundamental shift during the past two decades as comput-
ing power has gradually embedded itself into the environment of our daily lives. For the first
time in human history, we have the capability of tracking the location of individuals and objects
in real time. Ubicomp has led to a new sentient environment in which the virtual and physical
392 GeoComputation

world, digital bits and atoms, people and objects are linked. Ubicomp is also contributing to
the spatial big data deluge. The volume, variety and velocity of spatial big data pose formidable
challenges for GC. The next phase of GC development should be conducted in the context of
ubicomp and spatial big data. There are multiple challenges along computational, theoretical,
social, political, legal and environmental fronts. To better address these challenges, an open GC
paradigm is proposed. Open GC calls for open data, open-source software, open standards and
open collaboration. The open GC paradigm, as manifested in the diverse efforts of crowdsourc-
ing geographic knowledge production (Sui et al., 2012) and various location-based services aimed
at intelligent collective actions (Miller, 2012), is perhaps our best bet in the age of ubicomp and
spatial big data that our enormous computing power will not be squandered (Strassmann, 1997).

ACKNOWLEDGEMENTS
The author is grateful for the constructive comments on an earlier version of this chapter from the
editors, and two reviewers, Ningchuan Xiao and Shaun Fontanella. Research assistance by Bo Zhao
and Samuel Kay is also gratefully acknowledged. Usual disclaimers apply.

REFERENCES
ABI Research. 2012. Alternative positioning technologies. ABIResearch.com. http://www.abiresearch.com/
research/product/1010537-alternative-positioning-technologies (accessed December 13, 2012).
Agouris, P., W. Aref, M. F. Goodchild, S. Barbra, and J. Jensen. 2012. From GPS and virtual globes to spatial
computing-2020: The next transformative technology, computing community consortium (CCC)
workshop proposal. http://cra.org/ccc/docs/spatialComputing_2.pdf (accessed December 13, 2012).
Armstrong, M. P. and G. Rushton. 1999. Geographically masking health data to preserve confidentiality.
Statistics in Medicine 18(5): 497–525.
Ball, M. 2011. How do crowdsourcing, the internet of things and big data converge on geospatial technology?
Vector1media.com. http://www.vector1media.com/spatialsustain/how-do-crowdsourcing-the-internet-of-​
things-and-big-data-converge-on-geospatial-technology.html (accessed December 13, 2012).
Bivand, R. S. 2014. GeoComputation and open-source software: Components and software component stacks.
In GeoComputation, 2nd edn., eds. R. J. Abrahart and L. See, pp. 329–356. Boca Raton, FL: Taylor &
Francis Group.
Brin, D. 1990. Earth. New York: Bantam Books.
Briscoe, G. 2012. Creating a digital ecosystem: Service-oriented architectures with distributed evolutionary
computing. arXiv.Org. http://arxiv.org/abs/0712.4159 (accessed December 13, 2012).
Brunsdon, C. 2014. Embedded GeoComputation: Publishing text, data and software in a reproducible form.
In GeoComputation, 2nd edn., eds. R. J. Abrahart and L. See, pp. 397–416. Boca Raton, FL: Taylor &
Francis Group.
Bryan, J. 2010. Force multipliers: Geography, militarism, and the Bowman expeditions. Political Geography
29(8): 414–416.
Bryce, D. J., J. H. Dyer, and N. W. Hatch. 2011. Competing against free. Harvard Business Review 89(6):
104–111. http://hbr.org/2011/06/competing-against-free/ar/1 (accessed December 13, 2012).
Chee, B. J. S. and C. Franklin. 2010. Cloud Computing: Technologies and Strategies of the Ubiquitous Data
Center. Boca Raton, FL: CRC Press.
Choi, J. W., S. A. Kim, J. Lertlakkhanakul, and J. H. Yeom. 2008. Developing ubiquitous space information
model for indoor GIS service in Ubicomp environment. Fourth International Conference on Networked
Computing and Advanced Information Management, Vol. 2, pp. 381–388. doi:10.1109/NCM.2008.97.
Clark, A. 2003. Natural-Born Cyborgs: Minds, Technologies, and the Future of Human Intelligence. New York:
Oxford University Press.
CORDIS. 2010. Riding the wave: How Europe can gain from the rising tide of scientific data. European Union.
http://cordis.europa.eu/fp7/ict/e-infrastructure/docs/hlg-sdi-report.pdf (accessed December 13, 2012).
Couclelis, H. 1998. GeoComputation in context. In GeoComputation: A Primer, eds. P. A. Longley, S. M. Brooks,
W. Macmillan, and R. McDonnell, pp. 17–29. Chichester, U.K.: John Wiley & Sons Inc.
Crang, M. and S. Graham. 2007. Sentient cities ambient intelligence and the politics of urban space. Information,
Communications and Society 10(6): 789–817.
Ubiquitous Computing, Spatial Big Data and Open GeoComputation 393

de Laat, P. B. 2010. How can contributors to open-source communities be trusted? On the assumption, inference,
and substitution of trust. Ethics and Information Technology 12(4): 327–341.
de Souza e Silva, A. and J. Frith. 2012. Mobile Interfaces in Public Spaces: Locational Privacy, Control, and
Urban Sociability. New York: Routledge.
Dickinson, J. L. and R. Bonney. 2012. Citizen Science: Public Participation in Environmental Research. Ithaca,
NY: Cornell University Press.
Dourish, P. and G. Bell. 2011. Divining a Digital Future: Mess and Mythology in Ubiquitous Computing.
Cambridge, MA: MIT Press.
Duckham, M. 2013. Decentralized Spatial Computing: Foundations of Geosensor Networks. Berlin,
Germany: Springer.
Duckham, M. and L. Kulik. 2006. Location privacy and location-aware computing. In Dynamic and
Mobile GIS: Investigating Change in Space and Time, eds. J. Drummond, R. Billen, E. Joao, and
D. Forrest, pp. 35–51. Boca Raton, FL: CRC Press.
Ehlen, J., D. R. Caldwell, and S. Harding. 2000. The semantics of GeoComputation. GeoComputation 2000,
Kent, U.K. http://www.GeoComputation.org/2000/GC006/Gc006.htm (accessed December 13, 2012).
Ekman, U. and M. Fuller. 2012. Throughout: Art and Culture Emerging with Ubiquitous Computing. Cambridge,
MA: MIT Press.
Engler, N. J. and Hall, G. B. 2007. The Internet, spatial data globalization, and data use: The case of Tibet. The
Information Society 23: 345–359.
Evans-Cowley, J. 2010. Planning in the real-time city: The future of mobile technology. Journal of Planning
Literature 25(2): 136–149.
Farman, J. 2012. Mobile Interface Theory: Embodied Space and Locative Media. New York: Routledge.
Fischer, M. and Y. Leung. 2010. GeoComputational Modelling: Techniques and Applications. Berlin,
Germany: Springer.
Foth, M., L. Forlano, C. Satchell, and M. Gibbs. 2011. From Social Butterfly to Engaged Citizen: Urban
Informatics, Social Media, Ubiquitous Computing, and Mobile Technology to Support Citizen
Engagement. Cambridge, MA: MIT Press.
Francica, J. 2011. Big data and why you should care. Apb.Directionsmag.com. http://apb.directionsmag.com/
entry/big-data-and-why-you-should-care/167326 (accessed December 13, 2012).
Friedewald, M., O. Da Costa, and Y. Punie. 2005. Perspectives of ambient intelligence in the home environment.
Telematics and Informatics 22: 221–238.
Gahegan, M. 1999. What is GeoComputation? Transactions in GIS 3(3): 203–206.
Gantz, J. and D. Reinsel. 2011. Extracting value from Chaos. Emc.com. http://www.emc.com/collateral/
analyst-reports/idc-extracting-value-from-chaos-ar.pdf (accessed December 13, 2012).
Gartner, G. and F. Ortag. 2011. Advances in Location-Based Services: Eighth International Symposium on
Location-Based Services. Vienna, Austria: Springer.
Gates, B. 2003. The disappearing computer. Microsoft. http://www.microsoft.com/presspass/ofnote/​
11-02worldin2003.asp (accessed December 13, 2012).
Genco, A. and S. Sorce. 2010. Pervasive Systems and Ubiquitous Computing. Southampton, U.K.: WIT Press.
Genovese, E. and S. Roche. 2010. Potential of VGI as a resource for SDIs in the North/South context. Geomatica
64(4): 439–450.
Gezelter, D. 2009. What, exactly, is open science? Openscience.org. http://www.openscience.org/blog/?p = 269
(accessed December 13, 2012).
Gilbert, M. and M. Masucci. 2011. Information and Communication Technology Geographies: Strategies for
Bridging the Digital Divide. Vancouver, British Columbia, Canada: Praxis (e) Press—University of
British Columbia.
Goodchild, F. M. 2012. The quality of big (geo)data. Presentation made during the Big Data Challenge Panel
Discussion. University of California, Santa Barbara, CA.
Gordon, E. and A. de Souza e Silva. 2011. Net Locality: Why Location Matters in a Networked World. Malden,
MA: Wiley-Blackwell.
Graham, M. 2011. Time machines and virtual portals: The spatialities of the digital divide. Progress in
Development Studies 11(3): 211–227.
Gray, J. 2007. eScience—A transformed scientific method. Presentation made to the NRC-CSTB. Microsoft.
http://research.microsoft.com/en-us/um/people/gray/talks/NRC-CSTB_eScience.ppt (accessed
December 13, 2012).
Greenfield, A. 2006. Everyware: The Dawning Age of Ubiquitous Computing. San Francisco, CA: New Riders.
Hayes, C. 2012. Geospatial and big data: The challenge of leveraging constantly evolving information.
Presentation made during 2012 Defense Geospatial Intelligence (DGI), London, U.K.
394 GeoComputation

Helal, S. 2010. The Landscape of Pervasive Computing Standards. San Francisco, CA: Morgan &
Claypool Publishers.
Hersent, O., D. Boswarthick, and O. Elloumi. 2012. The Internet of Things: Key Applications and Protocols.
New York: John Wiley & Sons Inc.
Hightower, J. and G. Borriello. 2001. Location systems for ubiquitous computing. IEEE Computer 33(8):
57–66.
Hotz, R. L. 2012. Future of data: Encoded in DNA. Wall Street Journal. Available online at: http://online.wsj.com/
article/SB10000872396390444233104577593291643488120.html (last accessed December 10, 2012).
Huang, H., G. Gartner, M. Schmidt, and Y. Li. 2009. Smart environment for ubiquitous indoor navigation. New
Trends in Information and Service Science, 2009. NISS ‘09, pp. 176–180. http://ieeexplore.ieee.org/xpl/
articleDetails.jsp?reload = true&arnumber = 5260410 (last accessed February 1, 2013).
Interagency Working Group on Digital Data (IWGDD). 2009. Harnessing the power of digital data for science
and society. Nitrd.Gov. http://www.nitrd.gov/About/Harnessing_Power_Web.pdf (accessed December
13, 2012).
Janowicz, K. 2012. Big Data GIScience. Presentation made during the Big Data Challenge Panel Discussion.
University of California, Santa Barbara, CA.
Kim, J. T. and S. G. Jang. 2012. Ubiquitous geographic information. In Handbook of Geographic Information,
eds. W. Kresse and D. M. Danko, pp. 369–378. Berlin, Germany: Springer.
Kitchin, R. and M. Dodge. 2011. Code/Space: Software and Everyday Life. Cambridge, MA: MIT Press.
Krieger, M. H., M. R. Ra, J. Paek, and R. Govindan. 2010. Urban tomography. Journal of Urban Technology
17(2): 21–36.
Krumm, J. 2009. Ubiquitous Computing Fundamentals. Boca Raton, FL: Chapman & Hall.
Kuniavsky, M. 2010. Smart Things: Ubiquitous Computing User Experience Design. Burlington, MA:
Morgan Kaufmann.
Longley, P. 1998. Foundations. In GeoComputation: A Primer, eds. P. A. Longley, S. M. Brooks, W. Macmillan,
and R. McDonnell, pp. 3–15. Chichester, England: John Wiley & Sons Inc.
MacIve, K. 2010. Google chief Eric Schmidt on the data explosion. I-Cio.com. http://www.i-cio.com/features/
august-2010/eric-schmidt-exabytes-of-data (accessed December 13, 2012).
MacKinnon, R. 2012. Consent of the Networked: The World-Wide Struggle for Internet Freedom. New York:
Basic Books.
Manyika, J., M. Chui, B. Brown, J. Bughin, R. Dobbs, C. Roxburgh, and H. A. Byers. 2011. Big data: The
next frontier for innovation, competition, and productivity. Mckinsey.com. http://www.mckinsey.com/
Insights/MGI/Research/Technology_and_Innovation/Big_data_The_next_frontier_for_innovation
(accessed December 13, 2012).
Miller, H. J. 2010. The data avalanche is here. Shouldn’t we be digging? Journal of Regional Science
50: 181–201.
Miller, H. J. 2012. Location-based services in 2030: From sharing to collective action. In Progress in Location-
Based Services, ed. M. K. Jukka. Berlin, Germany: Springer.
Mostéfaoui, S. K., Z. Maamar, and G. M. Giaglis. 2008. Advances in Ubiquitous Computing: Future Paradigms
and Directions. Hershey, PA: IGI Publishing.
National Research Council. 2001. Embedded, Everywhere: A Research Agenda for Networked Systems of
Embedded Computers. Washington, DC: National Academies Press.
National Research Council. 2003. IT Roadmap to a Geospatial Future. Washington, DC: National
Academies Press.
National Research Council. 2009. The Future of Computing Performance. Washington, DC: National
Academies Press.
Nielsen, M. 2012. Reinventing Discovery: The New Era of Networked Science. Princeton, NJ: Princeton
University Press.
Norman, A. D. 1998. The Invisible Computer: Why Good Products Can Fail, the Personal Computer Is So
Complex, and Information Appliances Are the Solution. Cambridge, MA: MIT Press.
Obe R. and L. Hsu. 2011. PostGIS in Action. Stamford, CT: Manning Publications.
Openshaw, S. 2014. GeoComputation. In GeoComputation, 2nd edn., eds. R. J. Abrahart and L. See, pp. 1–22.
Boca Raton, FL: Taylor & Francis Group.
Openshaw, S. and R. J. Abrahart. 2000. GeoComputation. Boca Raton, FL: CRC Press.
Orwat, C., A. Graefe, and T. Faulwasser. 2008. Towards pervasive computing in health care—A literature
review. BMC Medical Informatics and Decision Making 8(26): 1–18. doi:10.1186/1472-6947-8-26.
http://www.biomedcentral.com/1472-6947/8/26.
Pierre, S. 2010. Next Generation Mobile Networks and Ubiquitous Computing. Hershey, PA: IGI Publishing.
Ubiquitous Computing, Spatial Big Data and Open GeoComputation 395

Poslad, S. 2009. Ubiquitous Computing: Smart Devices, Environments and Interactions. New York:
John Wiley & Sons Inc.
Rheingold, H. 2002. Smart Mobs: The Next Social Revolution. Cambridge, MA: Perseus Publishing.
Ron, L. 2008. Google maps = Google on maps. Blip.TV. http://blip.tv/oreilly-where-20-conference/lior-ron-
google-maps-google-on-maps-975838 (accessed December 13, 2012).
Satoh, I. 2005. A location model for pervasive computing environments. In Proceedings of the Third IEEE
International Conference on Pervasive Computing and Communications (PerCom’05), Kauai Island, HI,
pp. 215–224.
Satoh, I. 2007. A location model for smart environments. Pervasive and Mobile Computing 3(2): 158–179.
Shekhar, S., V. Gunturi, M. R. Evans, and K. S. Yang. 2012. Spatial big-data challenges intersecting mobility
and cloud computing. Proceedings of the Eleventh ACM International Workshop on Data Engineering
for Wireless and Mobile Access, Scottsdale, AZ, pp. 1–6.
Shepard, M. 2011. Sentient City: Ubiquitous Computing, Architecture, and the Future of Urban Space.
Cambridge, MA: MIT Press.
Shirky, C. 2006. Power laws, weblogs, and inequality. In Reformatting Politics, eds. J. Dean, J. W. Anderson,
and G. Lovink, pp. 35–42. New York: Routledge.
Steiniger, S. and A. Hunter. 2012. Geospatial Free and Open Source Software in the 21st Century (Lecture
Notes in Geoinformation and Cartography), Vol. 5. Berlin, Germany: Springer.
Stephens, A., P. James, and D. Alderson. 2012. The challenges of developing an open source, standards-based
technology stack to deliver the latest UK climate projections. International Journal of Digital Earth
5(1): 43–62.
Stephenson, N. 1992. Snow Crash. New York: Bantam Books.
Strassmann, P. A. 1997. The Squandered Computer: Evaluating the Business Alignment of Information
Technologies. New Canaan, CT: The information Economics press.
Sui, D. Z. 2011. Legal and ethical issues of using GIS in society. In The Sage Handbook of GIS and Society,
eds. T. L. Nyerges, H. Couclelis, and R. B. McMaster, pp. 504–528. London, U.K.: Sage.
Sui, D. Z. 2012. Spatial-temporal synergetics: Towards a paradigm shift in space-time GIScience. Keynote
address made at the 2012 Space-Time GIScience and Analysis Forum, Beijing, China.
Sui, D. Z., S. Elwood, and M. F. Goodchild. 2012. Crowdsourcing Geographic Knowledge: Volunteered
Geographic Information in Theory and Practice. Berlin, Germany: Springer.
Sui, D. Z. and R. Morrill. 2004. Computers and geography: From automated geography to digital earth. In
Geography and Technology: A Social History, eds. S. Brunn, S. Cutter, and J. W. Harrington, pp. 81–108.
Dordrecht, the Netherlands: Kluwer Academic Publishers.
Tao, V. 2003. The smart sensor web: A revolutionary leap in earth observation. GeoWorld Magazine, September
Issue, http://www.geoplace.com. Accessed on February 12, 2012.
Tuters, M. and K. Varnelis. 2006. Beyond locative media: Giving shape to the internet of things. Leonardo
39(4): 357–363.
Warf, B. 2011. Geographies of global internet censorship. GeoJournal 76(1): 1–23.
Weinberger, D. 2012. Too Big to Know: Rethinking Knowledge Now That the Facts Aren’t the Facts, Experts
Are Everywhere, and the Smartest Person in the Room Is the Room. New York: Basic Books.
Weiser, M. 1991. The computer for the twenty-first century. Scientific American 265(September): 94–104.
Weiser, M. 1993. Some computer science issues in ubiquitous computing. Communications of the ACM
36(7): 75–85.
Weiser, M. 1996. The major trends in computing. http://www.ubiq.com/hypertext/weiser/NomadicInteractive/
sld003.htm. Accessed on April 3, 2012.
Weiser, M., R. Gold, and J. S. Brown. 1999. The origins of ubiquitous computing research at PARC in the late
1980s. IBM Systems Journal 38(4): 693–696. doi:10.1147/sj.384.0693.
Yang, C., M. F. Goodchild, Q. Huang, and D. Nebert. 2011. Spatial cloud computing: How can the geospatial
sciences use and help shape cloud computing? International Journal of Digital Earth 5(4): 305–329.
Yang, L. T., E. Syukur, and S. W. Loke. 2012. Handbook on Mobile and Ubiquitous Computing: Status and
Perspective. Boca Raton, FL: CRC Press.
Zhao, F. and J. S. Brown. 2001. Ecological computing. Johnseelybrown.com. http://www.johnseelybrown.com/
eco_computing.html (accessed December 13).
Zhuge, H. and X. Shi. 2004. Toward the eco-grid: A harmoniously evolved interconnection environment.
Communications of the ACM 47(9): 79–83.
17 Publishing Text, Data and Software
Embedded GeoComputation

in a Reproducible Form
Chris Brunsdon

CONTENTS
Abstract........................................................................................................................................... 397
17.1 Introduction........................................................................................................................... 398
17.2 Reproducibility in Research.................................................................................................. 399
17.2.1 Addressing the Problems........................................................................................... 399
17.2.2 Software Barriers to Reproducibility........................................................................400
17.3 Literate Programming...........................................................................................................400
17.3.1 Example of the Use of Sweave................................................................................ 401
17.3.2 Geographical Example: Choropleth Mapping...........................................................402
17.3.3 GC Example: Pycnophylactic Interpolation..............................................................403
17.4 Implications for GC...............................................................................................................404
17.4.1 Dealing with Large and Complex Data Sets.............................................................404
17.4.2 Dealing with Difficult Computational Requirements................................................405
17.4.3 Alternatives to LATEX and R...................................................................................407
17.5 Achieving Reproducibility in GeoComputation....................................................................408
17.5.1 Counter Arguments...................................................................................................408
17.5.2 Ways Forward............................................................................................................409
17.6 Conclusion............................................................................................................................. 410
Appendix 17A  Snippet of Sweave............................................................................................. 411
Appendix 17B  Use of Stangle................................................................................................. 411
References....................................................................................................................................... 415

ABSTRACT
Reproducibility is a major issue for data analysts. In order to subject published results to scrutiny
by peers, it is important to be able to reproduce the steps carried out to obtain them. Furthermore,
failure to do so can lead to major crises of confidence in the results and arguments published.
However, currently such practices are rarely adopted - possibly not at all within the geographi-
cal and geographical information science literature. Here we consider the idea of Embedded
GeoComputation in which the computational steps used to obtain results are embedded within
the documents intended for publication. Examples are given as to how this can be achieved for
geographical data analysis, and the challenges involved in making these approaches standard
practice are considered.

397
398 GeoComputation

17.1 INTRODUCTION
Embedded computing involves placing computer processors within common objects – such as
refrigerators and automobiles – in order to collect data, guide operations and offer user interactivity.
Embedded software is computer software that plays an integral role in the hardware it is supplied
with. Here, the idea of embedding is extended from beyond hardware, to published documents.
When publishing results of spatial data analysis, it could be argued that the software used to carry
out the analysis plays an integral role in the document being published. This is part and parcel of
ensuring that others can repeat your experiments and reproduce your results: two fundamental
aspects of good science.
The aforementioned practice is the fundamental concept of reproducible research (Claerbout,
1992): a term that has appeared in the scientific literature for nearly two decades (at the time of
writing this) and since then has gained attention in a number of fields such as statistics (Buckheit
and Donoho, 1995; Gentleman and Temple Lang, 2004), econometrics (Koenker, 1996) and digi-
tal signal processing (Barni et al., 2007). The idea is that when research is published, full details
of any results reported and the methods used to obtain these results should be made as widely
available as possible, so that others following the same methods can obtain the same results.
Clearly, this proposition is more practical in some areas of study than others – it would not be a
trivial task to reproduce the chain of events leading to samples of lunar rock being obtained, for
example. However, in the area of GeoComputation (GC), and particularly spatial data analysis,
it is an achievable goal. Indeed, failure to provide reproducible results could seriously damage
the credibility of GC research.
Recent events in an area closely related to GC, climate data analysis, have drawn attention to the
need – indeed the necessity – for reproducibility. Popularly known as Climategate (Chameides, 2010;
Closing the Climategate, 2010), a number of e-mails (around 1000) from the Climatic Research Unit
(CRU) of University of East Anglia were made public without authorisation. This led to a number
of challenges to the work of CRU, and more generally, some called into question the work of cli-
mate science in general and, in particular, that of the Intergovernmental Panel on Climate Change
(IPCC). In turn, this led to the university funding an independent review of the situation, chaired by
Sir Muir Russell. Although finding that the rigour and honesty of CRU were upheld and that there
was no evidence to undermine the findings and conclusions of IPCC, issues were raised relating to
the reproducibility of results of data analysis:

We believe that, at the point of publication, enough information should be available to reconstruct
the process of analysis. This may be a full description of algorithms and/or software programs where
appropriate. We note the action of NASA’s Goddard Institute for Space Science in making the source
code used to generate the GISTEMP gridded dataset publically (sic) available. We also note the recom-
mendation of the US National Academy of Sciences in its report “Ensuring the Integrity, Accessibility
and Stewardship of Research Data in the Digital Age” [author’s note: published 2009] that: “…the
default assumption should be that research data, methods (including the techniques, procedures and
tools that have been used to collect, generate or analyze data, such as models, computer code and
input data) and other information integral to a publically reported result will be publically accessible
when results are reported…”. We commend this approach to CRU.
– Russell (2010)

Arguably, the lesson here is that it is difficult to sustain confidence in any data analysis, however
well done, if it cannot be recreated by a third party and if the steps taken in the analysis are not
open to scrutiny. Given this compelling line of argument, it is essential for GC to adopt reproducible
methodologies if it is to avoid the kind of controversies and doubts in its findings described earlier.
The continued funding and wider influence of any discipline hinges on its credibility, and for a dis-
cipline in its relatively early stages, such factors can decide whether it will burgeon in the future or
disappear as a footnote in the history of science. Given this need to adopt reproducible approaches,
Embedded GeoComputation 399

this chapter will consider the implications of adopting reproducible research in the context of spatial
data analysis, some of the difficulties of doing this will be outlined and some steps towards achiev-
ing the goals of adoption will be proposed.

17.2  REPRODUCIBILITY IN RESEARCH


To some, the justification of reproducible research may be self-evident. It may already be seen as a
necessary condition for well-founded scientific research in GC. However, if a more concrete argu-
ment is required, perhaps the following scenarios could be considered:

1. You have a data set that you would like to analyse using the same technique as described in
a paper recently published by another researcher in your area. In that paper, the technique
is outlined in prose form, but no explicit algorithm is given. Although you have access to
the data used in the paper and have attempted to recreate the technique, you are unable to
reproduce the results reported there.
2. You published a paper 5 years ago in which an analytical technique was applied to a data
set. You now discover an alternative method of analysis and wish to compare the results.
3. A particular form of analysis was reported in a paper; subsequently, it was discovered that
one software package offered an implementation of this method that contained errors. You
wish to check whether this affects the findings in the paper.
4. A data set used in a reported analysis was subsequently found to contain rogue data and
has now been corrected. You wish to update the analysis with the newer version of the data.

Each of the aforementioned scenarios (and several others) describes situations that cannot be
resolved unless explicit details of data and computational methods used when the initial work was
carried out are available. A number of situations may arise in which this is not the case. Again, some
possibilities are listed:

1. You do not have access to the data used in the original analysis, as it is confidential.
2. The data used in the original study is not confidential, but is available for a fee, and you do
not already own it.
3. The data used in the original study is freely available, but the original study does not state
the source precisely or provide a copy.
4. The steps used in the computation are not explicitly stated.
5. The steps used in the computation are explicitly stated but require software that is not free
and that you do not already own.
6. The steps used in the computation are explicitly stated, but the software required is not
open source,* so that certain details of procedures carried out are not available.

17.2.1 Addressing the Problems


All of the situations given earlier stand in the way of reproducible research. In Situation 3, this state
of affairs is inevitable unless the researcher interested in reproducing the results obtains consent
to access the data. Situations 2 and 5 can be resolved by financial outlay if sufficient funds are
available, but Situations 6, 4 and 3 cannot be resolved in this way. For this last set of situations, it
is argued that resolution is achieved if the author(s) adopt certain practices at the time the research
is executed and reported (Barnes, 2010). Situation 6 is in some ways a variant of Situation 4 where

* The distinction is made here between open source software and zero cost software – which is obtained without fee, but
may not have openly available source code. For this argument to hold, source code must be available.
400 GeoComputation

non-disclosure of computational details is due to a third party rather than the author of the research
and can be resolved if, whenever possible, open source software is used.
However, attention in this discussion is focussed on Situations 3 and 4. Both of these situations
arise if exact details are not made widely available. In most cases, this is not done with malice
aforethought on the part of researchers – few journals insist that such precise details are provided.
Although, in general, researchers must cite the sources of secondary data, such citations often con-
sist of acknowledgement of the agency that supplied this data, possibly with a link to a general web-
site, rather than an explicit link (or links) to a file (or files) that contained the actual data used in the
research. Similarly, the situation described earlier in which computational processes are described
verbally rather than in a more precise algorithmic form is often considered acceptable for publica-
tion. For Situation 3, an alternative is provided via journals such as Earth Systems Science Data*
which provides an open access resource in which data sets and their methods of collection are
described and links to the data itself provided via resources such as Pangaea®. However, this does
not resolve the issue in Situation 4 which will be focussed on now.

17.2.2  Software Barriers to Reproducibility


Another source of uncertainty in identifying exact data sources or code used is that this informa-
tion is not necessarily organised by the researchers in a way that enables complete recall. Typically,
this occurs when software used to carry out the analysis is interactive – to carry out an analysis, a
number of menu items were chosen, buttons clicked and so on, before producing a table or a graph
that was cut and pasted into a word processing document. Unfortunately, although interactive soft-
ware is easier to use, its output is less reproducible. Some months after the original analysis, it may
be difficult to recall exactly which options were chosen when the analysis took place. Cutting and
pasting the results into another document essentially broke the link between the analysis itself and
the reporting of that analysis – the final document shows the output but says nothing about how it
was obtained.
In general, unless interactive software has a recording facility, where commands associated with
mouse clicks are saved in some format and can be replayed in order, then GUIs and reproducible
research do not go well together. However, even when analysis is carried out using scripts, repro-
ducibility cannot be guaranteed. For example, on returning to a long-completed project, one may
find a number of script files with similar content, but no information about which one was actually
run to reproduce the reported results, or indeed, whether a combination of chunks of code, that is,
a collection of lines of code used to carry out some part of the analysis, from several different files
was pasted into a command-line interface to obtain reported results.

17.3  LITERATE PROGRAMMING


To address these problems, one approach proposed is that of literate programming (Knuth, 1984).
Originally, this was intended as a means of improving the documentation of programs – a single file
(originally called a WEB file) containing the program documentation and the actual code is used to
generate both a human-readable document (via a program called WEAVE) and computer-readable
content (via a program called TANGLE) to be fed to a compiler or interpreter. The original inten-
tion was that the human-readable output provided a description of the design of the program (and
also neatly printed listings of the code), offering a richer explanation of the program’s function
than conventional comment statements. However, WEB files could be used in a slightly different
way, where rather than describing the code, the human-readable output reports the results of data
analysis performed by the incorporated code. In this way, information about both the reporting and
the processing can be contained in a single document. In this case, rather than a more traditional

* http://www.earth-system-science-data.net/.
Embedded GeoComputation 401

programming language (e.g. PASCAL or C++), the code could be scripts in a language designed
specifically for data processing and analysis, such as R (R Development Core Team, 2011) or SAS
software (SAS Institute Inc., 2011). Also, the WEAVE part of the process could incorporate output
from the data processing into the human-readable part of the document.
Examples of this approach are the NOWEB system (Ramsey, 1994) and the Sweave package
(Leisch, 2002). The former incorporates code into LATEX documents using two very simple exten-
sions to the markup language. The latter is an extended implementation of this system using R as the
language for the embedded code. Typically, Sweave formatted files have the suffix Rnw. An Rnw
file typically produces a pdf file of the final document via a two-stage process:

1. The Sweave program reads in the Rnw file and outputs a standard tex file, with the
evaluated embedded R code replaced by its output, formatted as LATEX.
2. The intermediate tex file is processed by the standard LATEX software to produce the
final pdf file.

Provided a third party has access to the Sweave and LATEX software, the final pdf file can
always be reproduced from the Rnw file – but the Rnw file also contains information about how the
computational results provided in the final paper were obtained.

17.3.1 Example of the Use of Sweave


This document was created using Sweave – a snippet of the original is shown in Appendix 17A –
and the simple example of analysis of variance (ANOVA) in Table 17.1 was created with some
incorporated code.
In this case, the code is echoed in the document, and the result is incorporated in the final docu-
ment. A number of other options are possible – for example, instead of creating formatted output,
Sweave can take LATEX markup generated by the R code and include this directly in the docu-
ment. The xtable package is useful here as it allows R matrices, arrays and results of ANOVA and
regression analyses to be output in this format, where it can then be directly interpreted by LATEX
to create typeset and formatted tables in the final output. Also, the code itself need not be echoed
in the final document – a flag in the Sweave syntax allows this to be switched on or off. So long as
the Rnw document is retained, information about the data analysis is preserved. An example of this
kind was incorporated in this document, giving the output in Table 17.2.

TABLE 17.1
R ANOVA: Example of Incorporated Code
> ## From: Annette Dobson (1990)
> ## “An Introduction to Generalized Linear Models”.
> ## Page 9: Plant Weight Data.
> ctl <- c(4.17,5.58,5.18,6.11,4.50,4.61,5.17,4.53,5.33,5.14)
> trt <- c(4.81,4.17,4.41,3.59,5.87,3.83,6.03,4.89,4.32,4.69)
> Group <- gl(2,10,20, labels = c(“Ctl”,”Trt”))
> Weight <- c(ctl, trt)
> lm.Dobson.p9 <- lm(Weight ~ Group)
> anova(lm.Dobson.p9)
Analysis of Variance Table
Response: Weight
Df Sum Sq Mean Sq F value Pr(>F)
Group 1 0.6882 0.68820 1.4191 0.249
Residuals 18 8.7292 0.48496
402 GeoComputation

TABLE 17.2
Formatted ANOVA Output
Df Sum Sq Mean Sq F value Pr(> F)
Group 1 0.69 0.69 1.42 0.2490
Residuals 18 8.73 0.48

Thus, this document contains information about the data (via assignments to the variables ctl,
trt, Group and Weight) as well as the steps used to analyse the data. If this document is passed
to a third party, they will be able to reproduce the analysis precisely, by applying the Sweave
program. Also, by using a further program Stangle, they will be able to extract the R code – an
example of output from this program is given in Appendix 17B.

17.3.2 Geographical Example: Choropleth Mapping


The previous example demonstrates the general principle of Sweave but does not involve
geographical data. The choropleth map in Figure 17.1 shows median annual household income per-
county data obtained from the 1990 US Census, for the US state of Georgia. It is produced using
the R helper functions choropleth, auto.shading, quantile.cuts and choro.legend

Median household income (Georgia counties)

Income $1000’s
under 18
18–19
19–21
21–22
22–25
25–28
over 28

FIGURE 17.1  Incorporated R code producing graphical output – choropleth map. (From 1990 US Census.)
Embedded GeoComputation 403

shown in the mappingtools code chunk in Appendix 17B. This demonstrates not only the use of
spatial data but also that the system is capable of including graphical output from the incorporated
code. As before, the R commands in the Rnw document are echoed to the final pdf document to
illustrate the method, although in more usual situations this would not be the case.
This example also illustrates the incorporation of detail giving the source of the data. Here,
the income data itself is obtained via a website provided by the Centers for Disease Control and
Prevention (CDC)* and the map boundary data is obtained via a website provided by the US Census
Bureau.† The embedded R code contains instructions to download, unzip and read these files into
R – the former is in dbf format, the latter in ESRI shapefile format – the code also contains com-
ments showing the URL of human-readable web pages describing the data (these links are also
given in the footnotes referred to earlier). This code is listed in the chunk labelled dataprep in
Appendix 17B.

17.3.3 GC Example: Pycnophylactic Interpolation


As a further example, Figure 17.2 shows the result of applying pycnophylactic interpolation (Tobler,
1979) to another variable from the 1990 US Census; in this case, the variable under scrutiny is the
number of children aged 1 year and under, on a per-county basis. This variable is obtained from
the same source as the median household income data used in the last example. This is a technique
used to estimate population density as a continuous surface, given a list of population counts for
a set of supplied corresponding geographic zones. The population counts in this example are the

Pycnophylactic surface of population under 1 year old


(Georgia counties)

FIGURE 17.2  Incorporated R code producing graphical output – pycnophylactic surface. (From 1990 US
Census.)

* http://www2.cdc.gov/nceh/lead/census90/house11/houintro.htm.
† http://www.census.gov/geo/www/cob/co1990.html.
404 GeoComputation

numbers of children under 1 year old mentioned earlier, and the zone boundaries are obtained from
the shapefile also reported earlier. The surface approximation is designed to be smooth in terms of
minimising roughness R defined by Equation 17.1:
2
 ∂ 2S ∂ 2S 
R=

A
 2 + 2  dA (17.1)
 ∂x ∂y 

where
A is the geographical region under study
S is the density, a function of location (x,y), subject to the constraints that the integrated population
totals over the supplied set of zones agree with the empirical counts provided

In practice, this is achieved using a finite element approximation, so that population counts for small
rectangular pixels are computed. These calculations are carried out using the R package pycno
(Brunsdon, 2011).
In the example, graphical output from the code is used once again, although this time, a 3D surface
is shown rather than a conventional map.

17.4  IMPLICATIONS FOR GC


The aforementioned examples demonstrate the incorporation of documentation, analysis and data
retrieval in a single document. However, the aforementioned examples are relatively simple and
an important question here is how practical this approach may be in a more general GC context.
A number of issues arise:

1. GC data sets can sometimes be large or in other ways impractical to reproduce.


2. In GC, times required to run algorithms can be large.
3. For some, the command-based format of R and LATEX is perceived as difficult to learn –
can combinations of text and code be expressed in other formats?

The first two of these are perhaps harder to address. In the following sections, each of these issues
will be addressed.

17.4.1 Dealing with Large and Complex Data Sets


In many GC problems, the idea of data-driven modelling (Solomatine et al., 2008) is used. Typically
applied in machine-learning contexts, a key idea is that functional relationships between variables
in a (typically fairly large) data set are learned using machine-learning algorithms without prior
theoretical knowledge of the process or system from which the data were drawn. Clearly, to assess
findings from analyses carried out in this way, a thorough knowledge of the data and its lineage are
extremely important. In particular, if the raw data have been cleaned in some way (e.g. by removing
some observations thought to be unreliable), then it is important to ensure that such modifications
are openly recorded and made available, if results are to be reproduced. These ideas are well illus-
trated in a recent paper by Abrahart et al. (2010), who outline a checklist for providing details of
data sets used in publications and go on to note that

… the detail afforded to descriptions of the data sets which drive the models is often lacking, and
replication of results becomes impossible. Consequently, those who should arguably be the great-
est proponents of the data-driven modelling paradigm are failing to properly address large parts of
its requirements.
Embedded GeoComputation 405

In the examples in this chapter, the data consists of at most around 160 numbers (only 20 in the
first example) and could possibly be assigned to a variable within the embedded R code and any
subsequent modifications recorded in that code. However, in many situations – particularly in
many current GC applications – the data set is much larger than this, and it becomes impracti-
cal to incorporate the data in an Rnw file. One approach may be to incorporate code that reads
from a supplied file – ultimately, this still implies that the code and data must be distributed
together to allow reproducible research. However, this may lead to difficulties if the data file is
very large. An alternative might be to provide details (such as URLs) from where the data were
downloaded.
A further step to reproducibility could be achieved in the aforementioned situation by noting that
a number of the file-reading commands in R will work with URLs as well as ordinary file names.
Thus, by incorporating code used to access data directly from a URL into an Rnw file, a third party
may obtain the raw data from the same source as the original analysis and apply any cleaning or
other processing operations. This is shown in the examples in Sections 17.3.2 and 17.3.3. Indeed,
the code in Appendix 17B also illustrates how data cleaning may be recorded – in the example, one
downloaded data set records De Kalb as the name of one county, and the other uses DeKalb with
no space in the text. Although the modification is fairly trivial, the recorded steps demonstrate that
it has actually been done. Without this step, the data preparation process needed for these examples
could not have taken place, and so the inclusion of this information is essential for a third party to
reproduce the results.
However, in the aforementioned example, it should be understood that reproducibility depends on
the remote data obtainable from the URL not being modified in the time between the original analy-
sis being done and the attempt to reproduce it. In particular, care should be taken when obtaining
data from social networking application programming interfaces – such as Twitter or Facebook –
where accessing the URL provides the most recent information on a moving temporal window, and
if there is any notable delay between successive queries, results are almost certain to differ. In this
situation, supplying the actual data used is likely to be the only way to ensure reproducibility.

17.4.2 Dealing with Difficult Computational Requirements


The second problem is not so much one of reproducibility, but one of practicality. Some simulation-
based approaches – for example, the Markov chain Monte Carlo approach (Besag and York,
1989; Gelfand and Smith, 1990, 1995) or other methods using large data sets or slowly converg-
ing algorithms – may require code taking several hours to run, and therefore major resources are
required for reproduction. In a sense, this is a less extreme version of the lunar rock example in
the introduction. Reproduction may be difficult and require a large amount of resources, but not
impossible – this is simply in the nature of such research. One suggestion here is a two-stage process:

1. Create a cache of results if one does not exist already:


a. Run the Rnw file containing the full code (this may take a long time) to produce key
results.
b. Store these results in a binary file.
2. Produce publishable output based on the cache:
a. Read in the binary file created in step 1b to restore the data.
b. Write out tables of results and draw graphs.

The idea of this approach is that if the results of the lengthy computation have already been created,
then the code simply reads these in and presents them in a publishable format. On occasion, if a full
reproduction of the work is required, the cached results could be used to test for the presence of a
cache of results in Step 1 given earlier. Steps 1a and 1b would only be executed if the result of a test
was negative. This approach has the added advantage that, if for some reason, the cache and the Rnw
406 GeoComputation

TABLE 17.3
Demonstration of Seed Control in R
> set.seed(123,kind = “Mersenne-Twister”)
> # Generate some uniform random numbers with seed as above
> runif(4)
[1] 0.2875775 0.7883051 0.4089769 0.8830174
> runif(4)
[1] 0.9404673 0.0455565 0.5281055 0.8924190
> set.seed(123,kind = “Mersenne—Twister”)
> # Resetting seed should reproduce the first set of numbers
> runif(4)
[1] 0.2875775 0.7883051 0.4089769 0.8830174

were separated, re-processing the Rnw file would recreate the cache. Another related approach is
cacheSweave (Peng, 2010) – an R package providing a number of tools for caching results when
using R in conjunction with Sweave.
Another issue that affects reproducibility in terms of computation occurs when working with
simulation-based studies. This is the use of pseudo-random numbers. Unless the software being
used gives explicit control of the random number generation method and specification of a seed,
distinct runs of the same code will give different results. Fortunately, in R such control is possible
via the set.seed function. This function specifies the seed of the pseudo-random number genera-
tor and also the algorithm used for random number generation. An example is given in Table 17.3.
Here, the numerical seed for the generator is 123, and the algorithm used is the Mersenne twister
(Matsumoto and Nishimura, 1998). After initially setting up the generator, two sets of four uniform
random numbers in the range [0,1] are produced by calling runif(4). After this, the generator is
re-initiated with the same seed. Calling runif(4) after re-seeding to the same value to obtain a
further four random numbers gives the same result as the first set of four in the earlier call.
Reproducibility here is important: for example, one may wish to test whether the result in
a simulation-based analysis may be an artefact of the choice of random number generator or
of the choice of seed. If this information is embedded in an Rnw file, it is then possible, with
minor edits, to test for stability of the results to such choices. In Van Niel and Laffan (2003),
for example, the importance of this is demonstrated in a GC context by considering the effect
of changing the random number generator when considering the effect of random perturbations
to a digital elevation model, when slope and flow accumulation are estimated, and conclude by
outlining the importance of reporting the choice of algorithm and seed values when carrying
out studies of this kind.
A number of further issues relate to reproducibility when using pseudo-random numbers. One
problem with using, for example, Microsoft Excel 2007 when working with random numbers is
that there is no means of specifying the seed for the random number generator – it is therefore
not possible to exactly reproduce simulations in the way set out in the aforementioned example.
A further issue – and perhaps indicative of a far wider issue – is the availability of the source code
used to implement the pseudo-random number generating algorithm. Again, Excel 2007 has to be
considered here as an example. McCullough (2008) considered this application’s random number
generator and found a number of issues. In particular, although it is claimed that the generator used
in Excel 2007 is the Wichmann and Hill (1982) algorithm (see Microsoft Knowledge Base Article
828795), extensive investigations by McCullough suggested that this is not the case – and, quoting
from the article:

… Excel users will have to content themselves with an unknown RNG [Random Number Generator] of
unknown period that is not known to pass any standard battery tests for randomness.
Embedded GeoComputation 407

This certainly calls into question any results from simulations making use of this generator.
However, without sight of the source code, it is impossible to see how it deviates from the published
Wichmann and Hill algorithm or how this could be remedied. Although the main focus of this
article is on the steps that may be taken by the authors of articles to ensure reproducibility rather
than on the role of open source code, this example demonstrates why this is also of importance.

17.4.3 Alternatives to LATEX and R


The final issue listed is the use of alternative formats for either the text or code in literate documents.
This is of key practical importance for the geographical information (GI) community – many of
whom do not typically use either LATEX or R. If reproducibility is as fundamental a concept as
is being argued here, then ideally, an inclusive approach should be adopted – simply insisting that
all GI practitioners learn new software is unlikely to encourage uptake. On the other hand, it is an
inconvenient truth that many existing GI manipulation and analysis tools simply do not facilitate
reproducible research for a number of reasons. One path forward might be to identify some ways
of reaching a compromise between the previous two conflicting statements. A tentative list of sug-
gestions follows.
Embedding alternative data processing languages: A further literate programming tool
StatWeave (Lenth, 2009) offers more flexibility than Sweave, as it allows a number of differ-
ent programming languages and statistics packages to be embedded into the LATEX markup –
including SAS, Maple, Stata and flavours of Unix shells. Unfortunately, at this stage, there are no
explicit GI processing applications embedded in this way, although StatWeave does offer the
facility to incorporate new engines into its portfolio, so that other command-line-based software
tools or programming languages can be used. A number of possibilities exist here – for example,
incorporating Python would allow much of the functionality of either ArcGIS or QGIS to be incor-
porated. One such implementation using Python is Pweave (Pastell, 2011).
Using word processing applications instead of LATEX: For some GI users, a bigger barrier to
adopting either Sweave or StatWeave is the use of LATEX as a typesetting tool, where they may
have had more experience with word processors. The difficulty is perhaps a move away from a GUI-
based cut-and-paste approach to producing documents. Unfortunately, as argued earlier, workflows
that involve analysing spatial data in a specialist package and then cutting and pasting results into
a word processing package are particularly prone to irreproducibility. One practical starting point
might be to adopt a compromise strategy, where a word processing package is used to write the
publication document, but a command-based approach is used to analyse the data.
To achieve this, it is possible to use StatWeave to process .odf files (the XML-based format
for OpenOffice files) with embedded code, and there is an R package odfweave offering the same
functionality (provided the embedded language is R). In both cases, the embedded code is typed
directly into a document, which is then saved and post-processed to replace the embedded code
with the output that it generates in a new .odf file. OpenOffice is then capable of saving the files
into doc or. docx formats, although obviously it is essential to distribute the original. odf files
with embedded code if the documentation is to be reproducible. A commercial alternative is the
Inference package (Blue Reference, Inc., 2011) which allows a number of languages (including R) to
be embedded into Microsoft Word documents.
Using menu-driven applications instead of R: A final goal here is perhaps to facilitate reproduc-
ible research when working with GUI-based analysis tools as well as word processing applications.
At present, this is likely to be the most difficult of the barriers to overcome, as the use of such tools
implies the cutting and pasting of tables and graphs between applications – divorcing the results
from the steps taken to obtain them. One potential way of maintaining a link between the two appli-
cations is through the joint use of journalling and metadata provision.
Journalling in an application occurs when all of the operations carried out are logged in a textual
format. Effectively, although the user may be using menus and buttons to carry out a data analysis,
408 GeoComputation

the software is noting command-based equivalents that reproduce these actions. For example,
Minitab, Inc. (2011) has a facility where menu commands are echoed as standard Minitab com-
mand-line entries as they are carried out. SAS/ASSIST software has a similar facility.
Metadata, as considered here, refers to the incorporation of background information with items
that are cut and pasted. This information may not be directly visible in the target document, but
could be extracted at some point. The suggestion is that the journalled commands used to produce
a given figure, map or table could be attached as metadata when cutting and pasting occurs.
Thus, the commands used to produce items in the final document would be embedded in that
document. These could then be optionally viewed, extracted or modified by a third party recipient
of the document.
At the time of writing, this section is speculative. Whereas the previous sections point to meth-
ods and software that already exist, the suggestion given earlier would require modifications to
existing software that as yet have not been implemented. There may be a number of technical dif-
ficulties to address here – for example, although some packages already offer journalling facilities,
they do not necessarily identify which commands were used to create which cut and pasted object
and in which order the commands were applied. Secondly, a protocol for the transfer of this kind
of metadata needs to be devised. Thirdly, in order that the methods used to obtain the results can
be understood and subject to peer scrutiny – a fundamental justification of reproducible research –
these automatically collated sets of commands must also be understandable by humans.

17.5  ACHIEVING REPRODUCIBILITY IN GEOCOMPUTATION


There is currently an active lobby for reproducible research reflected in many recent articles in key
journals such as Science and Nature, for example, Morin et al. (2012) argue that

The publication and open exchange of knowledge and material form the backbone of scientific
progress…

and furthermore that such practice should be regarded as

… obligatory for publicly funded research.

Ince et al. (2012) make similar points, in particular arguing that

Keeping code closed ensures that potential uncertainties or errors in a paper’s conclusions cannot be
traced to ambiguity, numerical implementation, or machine architecture issues and prevents testing of
indirect reproducibility.

These ideas are showing signs of becoming mainstream – and their logic is certainly persuasive –
linking also with current notions of open government and open access to information. Related to
this are statements made by research funding councils in the United Kingdom – such as this from
the Engineering and Physical Sciences Research Council (EPSRC):

EPSRC-funded research data is a public good produced in the public interest and should be made freely
and openly available with as few restrictions as possible in a timely and responsible manner.

Engineering and Physical Sciences Research Council (2012).

17.5.1 Counter Arguments
Although the previous considerations provide a strong case for adopting reproducible research, it
would be unrealistic to assume that there are no objections. A number of these relate to the need to
Embedded GeoComputation 409

change from existing practice – but this does not imply they do not reflect genuine difficulties. A
key requirement of reproducibility is that data and code used in GC become publicly available – this
raises a number of objections (and potential problems):

1.
Intellectual property: Algorithms created may be regarded as an individual’s or institu-
tion’s intellectual property – and to protect this, they should not be disclosed.
2.
Commercially sensitive data: Some data may be commercially sensitive, and therefore
those using these data for their research may be unwilling (or not permitted) to share.
3.
Confidential data: This is a similar situation to that given earlier, although in this case,
data cannot be shared since they contain confidential information about individuals (such
as medical histories).

Points 1 and 2 identify some key tensions between commercial and publicly funded research –
clearly, financial benefits from designing an algorithm or collecting information will be limited if
the outcomes become public knowledge. There are of course situations where such information may
be required to be made available outside the realm of a company – for example, a pharmaceutical
company may be required to give details of pre-commercial trials of a drug Godlee (2012), but there
may well be unwillingness to share unconditionally. However, despite the objections to data sharing
of this kind, there is growing demand for data from publicly funded research to be made available.
For example in the United States, the National Institute for Health (NIH) requires that research it
funds should be

… available in a timely fashion to other scientists, health care providers, students, teachers and
the many millions of Americans searching the web to obtain credible health-related information.
(Stodden, 2009)

Although these examples relate to the field of health-related research, they could certainly encom-
pass health-related GC.
There are also arguments that the sharing of information is an essential building block of scien-
tific discovery – and as Stodden (2009) also notes

… copyright also establishes rights for the owner over the creation of derivative works… using copy-
righted work in derivative research typically requires obtaining the permission of the copyright holder,
thus creating a block to the generation of new scientific discoveries.

This suggests that it is harder for commercially funded research to contribute to a more open phi-
losophy of scientific discovery and also maintain commercial sustainability – at least for companies
whose business model is strongly based on the exclusivity of their data or code.
The other objection to data sharing relates to point 3 given earlier – some data may contain
confidential information about individuals. In this case, the objection to sharing is motivated by the
protection of those people who are the subjects of the data – and the principle of anonymity clashes
with the principle of openness expressed at various points in this chapter.

17.5.2 Ways Forward
Trends towards openness in research suggest that the need for some action to ensure reproduc-
ibility is needed. If the quotes relating to CRU and more general calls for reproducibility are
indicative of a more general trend in computational research, then GC may have little alternative
but to adopt these practices. Yet the arguments given earlier suggest that there are well-voiced
objections to an unconditional adoption of reproducibility. Therefore, plans to adopt a repro-
ducible approach should be done in a realistic way and consideration of the way forward must
include reflection on these issues.
410 GeoComputation

This suggests there is some need to consider how the widespread adoption of reproducible
research practice in GC could be achieved. The previous sections mainly consider this in terms
of data processing software and document production tools – and while these are essential, it
is equally important that there is infrastructure and conventions to support these practices. For
example, at the moment, few journals that publish GC work insist on the provision of code or
data when articles are submitted. Similarly, several would not accept an article submitted in the
Rnw format discussed in this chapter and would instead prefer more commonly used formats
such as LATEX or Microsoft Word files. However, in other disciplines, journals are more aware
of reproducible research. For example, the Biometric Journal now has an associate editor for
reproducible research (Hothorn et al., 2009) and a number of other journals have adopted simi-
lar policies, for example, Biostatistics (Peng, 2009). The American Journal of Epidemiology
strongly encourages potential authors to provide code and data where appropriate (Peng et al.,
2006), and Annals of Internal Medicine also implements policies to encourage reproducibility
(Laine et al., 2007). Biostatistics has also adopted a kite-marking system where papers are
marked as D if the data on which they are based are openly available, C if the code is openly
available and R if both are available. In the last instance, papers are checked for reproducibility
and only awarded this grade if that is the case. The journal publishes all received code and data
electronically as supplementary materials.
One step towards building a culture of reproducible research in GC might be for journals that fre-
quently publish GC research to adopt similar policies. Note that this could be achieved via Sweave
and Stangle either manually or automatically – Sweave can be used to create a reproducible
document – the author could then use the two tools to extract respectively the LATEX file to create
the article and the code used (possibly also containing data) and supply these separately; or at the
publication side, Stangle could be automatically run on an uploaded Rnw file providing the code,
and this in turn could be placed on the journal’s website for download.
An alternative strategy is based on the use of an independent resource to provide code and data.
An example of this is the Run My Code website.* Here, researchers are encouraged to upload
their data and code to a personal companion website associated with a publication. On this site,
it is possible to download both code and data, and in some cases,† it is possible to run the code on
a remote computer using either the supplied data or new input supplied by the viewer of the web
page. An option is provided where the contributor(s) identity is not revealed, so that a link to the
page can be given in an article submitted for anonymous review. The main Run My Code site is
essentially a portal where users can search for articles by using keywords or browsing categories.
The focus of the site is on financial and economic research – although essentially, this is only
reflected in the browsing categories used to tag the user-contributed companion sites. However,
such a site for GC could easily be created by mirroring the functionality of this site but with a more
appropriate set of categories.

17.6 CONCLUSION
This chapter has set out to outline the basic principles of, and justification for, reproducible research
and its implications for GC. In terms of justification – and possibly basic principles also – this is
perhaps best summarised by the following:

The idea is: An article about computational science in a scientific publication is not the scholarship itself,
it is merely advertising of the scholarship. The actual scholarship is the complete software development
environment and the complete set of instructions which generated the figures (Donoho et al., 2011).

* http://www.runmycode.org/CompanionSite/home.do.
† For example if the code is written in R or MATLAB®.
Embedded GeoComputation 411

In particular, some practical issues of how those involved in GC research can adopt a reproduc-
ible approach have been reviewed, and its prospect has been considered. In its current state, it can
be adopted, although for some this may involve getting their hands dirty with more lower-level
computational tools than they are currently working with. It could be argued that although there
is a need for reproducible research in GC, there is also a need for GC to research reproducibility –
for example, by considering some of the problems in the concluding paragraph of Section 17.4.3.
One important characteristic of GC has always been its focus on problem solving – and in many
cases, that has meant being able to apply techniques to geographical problems for a group of end
users outside of the usual GI community. This is a strength of GC as a discipline – but perhaps the
aforementioned problems are a situation where the discipline’s problem-solving focus could be used
reflectively to assist in the development and improvement of tools for reproducible analysis and
visualisation of spatial data.

APPENDIX 17A  SNIPPET OF SWEAVE


The text in the following is a snippet of Sweave used to produce this document – the code sections
begin with the <<… >> = construct and are terminated by @.

\subsection{An Example of the use of \texttt{Sweave}}

This document was created using {\tt Sweave} – a snippet of the original is shown in
Appendix 17A – and the simple example of ANOVA in Table 1 was created with some incorpo-
rated code.

\begin{table}[htp]

<<regression,echo = TRUE,keep.source = true>> =


## From: Annette Dobson (1990)
## “An Introduction to Generalized Linear Models”.
## Page 9: Plant Weight Data.
ctl <- c(4.17,5.58,5.18,6.11,4.50,4.61,5.17,4.53,5.33,5.14)
trt <- c(4.81,4.17,4.41,3.59,5.87,3.83,6.03,4.89,4.32,4.69)
Group <- gl(2,10,20, labels = c(“Ctl”,”Trt”))
Weight <- c(ctl, trt)
lm.Dobson.p9 <- lm(Weight ~ Group)
anova(lm.Dobson.p9)
@

\caption{R ANOVA - Example of Incorporated Code}


\label{anova}
\end{table}

APPENDIX 17B  USE OF STANGLE


The following is the result of applying Stangle to this document, extracting the incorporated
R code. Although primarily intended to be computer readable, the result is reasonably human
readable and preserves any comments in the included code. Also note that code executed in
earlier chunks is remembered in later ones – effectively all of this code is run as a single R script.
The code chunks provide information to Sweave about where the output is to be inserted into
the document.

### R code from vignette source ’reprod.Rnw’


### Encoding: UTF-8
412 GeoComputation

###################################################
### code chunk number 1: preamble
###################################################
options(width = 45)
library(xtable)

###################################################
### code chunk number 2: dataprep
###################################################
# http://www2.cdc.gov/nceh/lead/census90/house11/download.htm
# http://www2.cdc.gov/nceh/lead/census90/house11/houintro.htm

library(’foreign’)
library(’maptools’)

download.file(“http://www2.cdc.gov/nceh/lead/census90/house11/files/cnty.
zip”,”cnty.zip”)
unzip(“cnty.zip”)
gdat <- read.dbf(’CNTY.dbf’,as.is = TRUE)
gdat <- subset(gdat,gdat$STATE_NAME = =”Georgia”)
[,c(“P080A001”,”P0130001”,”CNTY_NAME”)]
# Get rid of space in ’De Kalb’ so that county names in both data sets
match
gdat$CNTY_NAME[44] <- “DeKalb”

# http://www.census.gov/geo/www/cob/co1990.html
download.file(“http://www.census.gov/geo/cob/bdy/co/co90shp/co13_d90_shp.
zip”,”co13_d90_shp.zip”)
unzip(“co13_d90_shp.zip”)
georgia <- readShapePoly(“co13_d90”)

gdat <- gdat[match(as.character(georgia$NAME),gdat$CNTY_NAME),]

MedInc <- gdat$P080A001


Under1 <- gdat$P0130001

###################################################
### code chunk number 3: mappingtools
###################################################
library(RColorBrewer)

choropleth <- function (sp, v, shading = auto.shading(v),…)


{
i = shading$cols[1 + findInterval(v, shading$breaks)]
plot(sp, col = i,…)
}

auto.shading <- function(x,digits = 2,cutter = quantile.cuts,n = 5,params


= NA,cols = brewer.pal(n,’Reds’))
{
brk = cutter(x,n = n,params = params)
if (!is.na(digits)) brk = signif(brk,digits = digits)
brk = sort(brk)
brk = brk[!duplicated(brk)]
res = list(breaks = brk,cols = cols)
class(res) = ’shading’
res
}
Embedded GeoComputation 413

quantile.cuts <- function (x, n = 5, params = NA)


{
if (!is.na(n))
probs = (1:(n - 1))/n
if (!is.na(params))
probs = params
quantile(x, probs)
}

choro.legend <- function (px, py, sh, under = “under”, over = “over”,
between = “to”,
fmt = “%g”,…)
{
x = sh$breaks
lx = length(x)
if (lx < 3)
stop(“break vector too short”)
res = character(lx + 1)
res[1] = paste(under, sprintf(fmt, x[1]))
for (i in 1:(lx - 1)) res[i + 1] <- paste(sprintf(fmt, x[i]),
between, sprintf(fmt, x[i + 1]))
res[lx + 1] <- paste(over, sprintf(fmt, x[lx]))
maxwidth <- max(strwidth(res))
temp <- legend(x = px, y = py, legend = rep(“ “, length(res)),
fill = sh$cols, text.width = maxwidth,…)
text(temp$rect$left + temp$rect$w, temp$text$y, res, pos = 2)
}

###################################################
### code chunk number 4: regression
###################################################
## From: Annette Dobson (1990)
## “An Introduction to Generalized Linear Models”.
## Page 9: Plant Weight Data.
ctl <- c(4.17,5.58,5.18,6.11,4.50,4.61,5.17,4.53,5.33,5.14)
trt <- c(4.81,4.17,4.41,3.59,5.87,3.83,6.03,4.89,4.32,4.69)
Group <- gl(2,10,20, labels = c(“Ctl”,”Trt”))
Weight <- c(ctl, trt)
lm.Dobson.p9 <- lm(Weight ~ Group)
anova(lm.Dobson.p9)

###################################################
### code chunk number 5: regression_table
###################################################
tab <- xtable(anova(lm.Dobson.p9),
caption = ’Formatted ANOVA Output’,
label = ’anovatab’)
print(tab,table.placement = ’h’)

###################################################
### code chunk number 6: georgia_map
###################################################
par(mar = c(0.5,0.5,1.5,0.5))
shd <- auto.shading(MedInc/1000,n = 7,
cols = brewer.pal(7,’YlOrBr’))
choropleth(georgia,MedInc/1000,shading = shd)
414 GeoComputation

choro.legend(-81.8,34.6,shd)
text(-81.35,34.7,’Income $1000\’s’)
text(-83.6,30.3,’Source: 1990 US Census’)
title(’nMedian Household Income (Georgia Counties)’)
box(“outer”,lwd = 2)

###################################################
### code chunk number 7: georgia_pycno
###################################################
library(pycno)
Under1Pyc <- pycno(georgia,Under1,0.05)
pycmat <- matrix(Under1Pyc$dens,
data.frame(getGridTopology(Under1Pyc))[,3])
par(mar = c(0.3,0.3,1.5,0.3))
persp(pycmat,axes = FALSE,box = FALSE,phi = 50,theta = 180,
col = ’darkgreen’,shade = 0.6,border = rgb(0,0.8,0,0.7))
main.title <- ’Pycnophylactic Surface of Population Under 1 Years Old’
sub.title <- ’(Georgia Counties)’
title(sprintf(’n%s\n%s’,main.title,sub.title))
text(0.2,-0.38,’Source: 1990 US Census’)
box(’outer’,lwd = 2)

###################################################
### code chunk number 8: rnumseed
###################################################
set.seed(123,kind = “Mersenne-Twister”)
# Generate some uniform random numbers with seed as above
runif(4)
runif(4)
set.seed(123,kind = “Mersenne-Twister”)
# Resetting seed should reproduce the first set of numbers
runif(4)

###################################################
### code chunk number 9: suck_text
###################################################
# Read in this file into variable ’this.file’
this.file <- system(’cat reprod.Rnw’,intern = TRUE)
# Find the points where the ’An Example of…’
# part of the document begins and ends.
# These are at lines l1 and l2 + 1 respectively
l1 <- grep(’^\\\\subsection\\{An Example of’,this.file)
l2 <- grep(’^\\\\label\\{anova\\}’,this.file)
# Select out these lines from the ’this.file’ variable
# Then use ’cat’ to print them out…
cat(paste(this.file[l1:(l2+1)],collapse = ’\n’))

###################################################
### code chunk number 10: do_Stangle
###################################################
Stangle(’reprod.Rnw’)
# The following line works on Unix/Linux systems,
# or Windows with Cygwin installed
rcode <- system(’cat reprod.R’,intern = TRUE)
Embedded GeoComputation 415

###################################################
### code chunk number 11: show_Stangle
###################################################
cat(paste(rcode,collapse = ’\n’))

REFERENCES
Abrahart, R. J., Dawson, C. W., See, L. M., Mount, N. J., and Shamseldin, A. Y. (2010). Discussion of
Evapotranspiration modelling using support vector machines. Hydrological Sciences Journal,
55(8):1442–1450.
Barnes, N. (2010). Publish your computer code: It is good enough. Nature, 467:753.
Barni, M., Perez-Gonzalez, F., Comesaña, P., and Bartoli, G. (2007). Putting reproducible signal process-
ing into practice: A case study in watermarking. In Proceedings of IEEE International Conference on
Acoustics, Speech and Signal Processing, Honolulu, HI. Vol. 4, pp. 1261–1264.
Besag, J. and York, J. (1989). Chapter: Bayesian restoration of images. In Matsunawa, T. (ed.), Analysis of
Statistical Information, pp. 491–507. Institute of Statistical Mathematics, Tokyo, Japan.
Blue Reference, Inc. (2011). Inference: Document mashups in Excel and Word. http://inference.us/default.
aspx. Accessed on 10/10/2012.
Brunsdon, C. (2011). Pycno: Pycnophylactic Interpolation. R package version 1.1. http://cran.r-project.org/
web/packages/pycno. Accessed on 7/8/2011.
Buckheit, J. and Donoho, D. L. (1995). Wavelab and reproducible research. Technical Report Tech. Rep. 474,
Department of Statistics, Stanford University, Stanford, CA.
Chameides, W. (2010). Climategate redux. https://www.scientificamerican.com/article.cfm?id = climategate-
redux. Accessed on 10/3/2013.
Claerbout, J. (1992). Electronic documents give reproducible research a new meaning. In Proceedings of
62nd Annual International Meeting of the Society of Exploration Geophysics. New Orleans, LA.
pp. 601–604.
Closing the Climategate (2010). Editorial. Nature, 468:345.
Committee on Ensuring the Utility and Integrity of Research Data in a Digital Age. (2009). Ensuring the
Integrity, Accessibility, and Stewardship of Research Data in the Digital Age. National Academy of
Sciences, Washington, DC.
Donoho, D., Maleki, A., and Shahram, M. (2011). Wavelab, Department of Statistics—Stanford University.
http://www-stat.stanford.edu/software/wavelab/index.html.
Engineering and Physical Sciences Research Council. (2012). Principles—EPSRC. http://www.epsrc.ac.uk/
Pages/default.aspx. Accessed on 10/3/2013.
Gelfand, A. and Smith, A. (1990). Sampling-based approaches to calculating marginal densities. Journal of the
American Statistical Association, 85:398–409.
Gelfand, A. and Smith, A. (1995). Bayesian Computation. Wiley, New York.
Gentleman, R. and Temple Lang, D. (2004). Statistical analyses and reproducible research. In Bioconductor
Project Working Papers, Working Paper 2. http://biostats.bepress.com/bioconductor/paper2. Accessed
on 17/2/2014.
Godlee, F. (2012). Withdraw approval for Tamiflu until NICE has full data. British Medical Journal,
345:e8415.
Hothorn, T., Held, L., and Friede, T. (2009). Biometrical journal and reproducible research. Biometrical
Journal, 51(4):553–555.
Ince, D. C., Hatton, L., and Graham-Cumming, J. (2012). The case for open computer programs. Nature,
482(7386):485–488.
Knuth, D. (1984). Literate programming. Computer Journal, 27(2):97–111.
Koenker, R. (1996). Reproducible econometric research. Technical report, Department of Econometrics,
University of Illinois, Champaign, IL.
Laine, C., Goodman, S., Griswold, M., and Sox, H. (2007). Reproducible research: Moving toward research the
public can really trust. Annals of Internal Medicine, 146(6):450–453.
Leisch, F. (2002). Dynamic generation of statistical reports using literate data analysis. In Härdle, W. and
Rönz, B. (eds.), Compstat 2002—Proceedings in Computational Statistics, pp. 575–580, Physika Verlag
Heidelberg, Germany.
Lenth, R. (2009). Statweave users’ manual. http://homepage.cs.uiowa.edu/~rlenth/StatWeave/StatWeave-
manual.pdf. Accessed on 17/2/2014.
416 GeoComputation

Matsumoto, M. and Nishimura, T. (1998). Mersenne Twister: A 623-dimensionally equidistributed uniform


pseudo-random number generator. ACM Transactions on Modeling and Computer Simulation, 8:3–30.
McCullough, B. (2008). Microsoft Excel’s ‘not the Wichmann–Hill’ random number generators. Computation
Statistics and Data Analysis, 52:4587–4593.
Minitab, Inc. (2011). Software for statistics, process improvement, six sigma, quality—Minitab. http://www.
minitab.com/en-US/default.aspx. Accessed on 10/3/2013.
Morin, A., Urban, J., Adams, P., Fester, I., Sell, A., Baker, D., and Sliz, P. (2012). Shining light into black boxes.
Science, 336(6078):159–160.
Pastell, M. (2011). Documentation—Pweave—Reports from data with Python. http://mpastell.com/pweave/
docs.html. Accessed on 10/3/2013.
Peng, R. D. (2009). Reproducible research and biostatistics. Biostatistics, 10:405–408.
Peng, R. D. (2010). cacheSweave: Tools for caching Sweave computations. http://cran.r-project.org/web/
packages/cacheSweave/vignettes/cacheSweave.pdf. Accessed on 10/3/2013.
Peng, R. D., Dominici, F., and Zeger, S. (2006). Reproducible epidemiologic research. American Journal of
Epidemiology, 163(9):783–789.
R Development Core Team. (2011). R: A Language and Environment for Statistical Computing. R Foundation
for Statistical Computing, Vienna, Austria. ISBN 3-900051-07-0.
Ramsey, N. (1994). Literate programming simplified. IEEE Software, 11(5):97–105.
Russell, Sir M. (2010). The Independent Climate Change E-Mails Review. University of East Anglia,
Norwich, U.K.
SAS Institute Inc. (2011). SAS: Business analytics and business intelligence software. http://www.sas.com/.
Accessed on 10/3/2013.
Solomatine, D. P., See, L. M., and Abrahart, R. J. (2008). Data-driven modelling: Concepts, approaches and
experiences. In Abrahart, R. J., See, L. M., and Solomatine, D. P. (eds.), Practical Hydroinformatics:
Computational Intelligence and Technological Developments in Water Applications. Springer-Verlag,
Berlin, Germany.
Stodden, V. (2009). Enabling reproducible research: Licensing for scientific innovation. International Journal
of Communications Law and Policy, 13:1–25. http://hdl.handle.net/10022/AC:P:11425.
Tobler, W. (1979). Smooth pycnophylactic interpolation for geographic regions. Journal of the American
Statistical Association, 74(367):519–530.
Van Niel, K. and Laffan, S. W. (2003). Gambling with randomness: The use of pseudo-random number
generators in GIS. International Journal of Geographical Information Science, 17(1):49–68.
Wichmann, B. and Hill, I. (1982). Algorithm AS183: An efficient and portable random number generator.
Applied Statistics, 31(2):188–190.
18 Limits to GeoComputation
Linda See

CONTENTS
Abstract........................................................................................................................................... 417
18.1 Introduction........................................................................................................................... 417
18.2 Limits of Computational Power............................................................................................. 418
18.3 Data Limitations.................................................................................................................... 421
18.4 Limits to Predictability and Understanding.......................................................................... 422
18.5 Computation-Led Limits....................................................................................................... 424
18.6 Uncertainty............................................................................................................................ 424
18.7 Conclusions............................................................................................................................ 425
References....................................................................................................................................... 425

ABSTRACT
When the first GeoComputation (GC) conference took place in 1996, the computational environ-
ment was much more limited. With increased computational power and data storage, we can now
model millions of agents and begin to tackle the challenges associated with big spatial data streams.
In light of the many changes that have taken place since the GeoComputation book first appeared
(Openshaw and Abrahart 2000), this chapter considers what the current limitations to GC are right
now. In the first edition, Kirkby (2000) identified a series of limitations that included inherent
predictability and the need to use additional computing power to build more complex models,
estimate uncertainty and improve the process of model calibration and validation, framed within the
context of the earth and environmental sciences. This chapter takes a broader view that encompasses
both physical and human geographical domains. Five main limitations are discussed: computational
power, data-led limitations, limitations in predictability and understanding, computation or artifi-
cial intelligence (AI)-led limits and limitations as a result of uncertainty. Although some of these
limitations represent real barriers, others can simply be viewed as exciting challenges that require
further research within and beyond the field of GC.

18.1 INTRODUCTION
Models are a fundamental component of scientific research with a long history that has gone hand in
hand with the development of the scientific method. The latter approach involves the investigation of
phenomena through observation and measurement, experimentation and the testing of hypotheses
or research questions in order to expand our knowledge about many different phenomena of inter-
est. As part of this process, we develop analytical or numerical models that attempt to represent the
behaviour of these phenomena, where models are essentially simplified constructs of a reality that is
generally characterised by complexity, non-linearity and at times chaotic behaviour. Geographical
models in particular have the added element of space and/or time depending on whether they are
capturing dynamic or static behaviours. Classic examples of early geographical models are gravity
and spatial interaction models, which have been used in the past to capture flows such as those of
commodities, people and information (Wilson 1971; Fotheringham and O’Kelly 1989; Openshaw
1998). These types of models have helped us to better understand reality, for example, what factors

417
418 GeoComputation

drive consumption or migration such as proximity and the attractiveness of a particular location.
Models can also be used to predict behaviours under a changed set of conditions or the future state,
for example, migration patterns of individuals in the future or what the climate conditions will be
in 2050 and what implications this has for the environment and the world’s economy. Yet there are
clearly limits to modelling that need to be recognised.
In the first edition of GeoComputation (GC), Kirkby (2000) wrote about limits to modelling in
the earth and environmental sciences. In contrast, this chapter considers limits to modelling in the
broader field of GC and covers both physical and human systems since both suffer from the same
types of limitations albeit to differing degrees. Moreover, integrated modelling, which takes both
physical and social systems into account, is increasingly becoming a more prevalent paradigm for
tackling problems of a regional or global nature (Kabat 2012). Back in 2000, the main issues raised
by Kirkby included inherent predictability and chaos, non-stationarity, hysteresis and the need to
simplify models. He also presented two areas where additional computational power should be
funnelled, that is, in investigating more complex models and in improving the process of calibra-
tion, validation and estimation of uncertainty. This latter recommendation has been realised with
increasing frequency over the last 15 years but has also led to the emergence of new potential limita-
tions. Many of the arguments presented by Kirkby (2000) still apply today, and despite changes in
computing technology and access to spatially referenced big data, some limits may have been raised
while others still remain fundamental barriers to modelling.
Within the more physical side of geography and related disciplines, numerical weather predic-
tion (Lynch 2008) and advances in physical hydrological models (Abbott et al. 1986) were already
benefitting from improved computational systems during the 1980s, a progress which continues to
the present day. The advent of GC was driven by the need to develop models of greater complexity
particularly within human geography where Openshaw (1995a) called for human systems modelling
to become a new grand challenge area in science. By coupling geographical information systems
(GIS), parallel processing and artificial intelligence (AI), Openshaw (2000) argued that progress
could be made towards tackling this grand challenge. Since then, human systems have increasingly
been recognised as complex systems characterised by self-organisation, emergence, path depen-
dence and criticality (Manson 2001) that require modelling using principles from complexity sci-
ence in order to be solved. More recently, the potential of the geographical sciences to address 11
fundamental challenges has been published, which forms a pressing research agenda for the early
twenty-first century (Committee on Strategic Directions for the Geographical Sciences in the Next
Decade; National Research Council 2010). GC has a crucial role to play in helping to answer many
of these questions. However, there are clearly limits to what we can model and understand. This
chapter provides a reflection on what these limitations are and, when possible, what we can do to
overcome them.

18.2  LIMITS OF COMPUTATIONAL POWER


One of the most obvious limits for GC is the computational power required to carry out the research.
The relentless hunger for computing power was a key driver in the origins of GC and moved early
proponents in this field like Stan Openshaw into a parallel computing world (Openshaw 2000). Back
then, the Cray T3D computers that were used to solve problems like spatial interaction modelling
and retail network optimisation were capable of teraflop computing or one trillion floating point
operations per second (Turton and Openshaw 1998). The latest Cray resources at the University
of Edinburgh are now capable of more than 800 teraflops (University of Edinburgh 2009), while
China’s Tianhe-2 is the world’s fastest supercomputer as of June 2013 with a speed of 33.86 pet-
aflops (Meuer et al. 2013).
Speed, however, was not the only issue to contend with when GC first emerged. Computer mem-
ory and storage were much smaller and considerably more expensive than they are now. So the
question for current GC research is whether these limits in computer speed, memory and storage
Limits to GeoComputation 419

are still an issue today. Even without access to the fastest supercomputers in the world, our desktop
computers are considerably faster than they were a decade ago. Problems that took weeks or months
to solve can now be computed in minutes or seconds. Turton and Openshaw (1998) showed that the
Cray T3D could solve a benchmark spatial interaction model in just under 3 min, while desktop
computers at that time would take 3.8 days. That same problem could now be solved in seconds on a
standard desktop computer. Computer memory and storage have also vastly increased and become
incredibly affordable. So where do the real limits in computational power lie? To consider this ques-
tion further, we first need to look back at the way in which computers have developed.
Early computing machines were built using vacuum tube technology, for example, in 1945, the
Electronic Numerical Integrator and Calculator (ENIAC) had more than 19,000 vacuum tubes and
weighed roughly 30 tons, filling the size of a small house. The ENIAC could perform up to 5000
calculations per second with a clock speed of 100 kHz (Farrington 1996). The big breakthrough
for computing speed and power came with the development of the transistor, which is an elec-
tronic switch that was able to replace the vacuum tube. The integrated circuit or computer chip was
developed in 1958 and consisted of multiple transistors. As more transistors were added, the speed
of computers increased. Gordon Moore, who was then head of R&D at Fairchild Semiconductor
(which is now Intel), examined the trend at which the number of transistors and hence computing
speed have doubled. In 1965, he predicted a doubling of transistors on a single computer chip every
year but this was changed to every 2 years after 1975 (Moore 1965, 1975). This trend is now referred
to as Moore’s law and has largely driven technological advances in computing speed as it has been
adopted as an industry target (Reis and Jess 2004). This trend is projected to continue until at least
2015 (Grueber and Studt 2010) where Moore himself argued that this trend is unsustainable since
limits in transistor size will be reached at the atomic level (Dubash 2005).
To deal with this transistor size limit, ongoing research is addressing how alternative or newly
discovered materials could be used for building computer components. For example, aluminium
was replaced by copper in chips built by IBM in the 1990s, which was a technological innovation
that was crucial for reaching the targets set by Moore’s law at that time. Research is now ongoing
into the development of optical chips, which would effectively replace the copper wiring. Using
light photons instead of electrons from electricity, optical chips would give off almost no heat and
would result in much more efficient computer chips than existing ones (Maney et al. 2011).
Most chips and transistors are made with silicon, which could be replaced in the future with
molybdenite (Radisavljevic et al. 2011) or germanium nanoelectrics (Pillarisetty 2011). Recently
discovered graphene, which is a material composed of carbon atoms arranged in a hexagonal pat-
tern of one atom thickness, could be used in combination with silicon (Kim et al. 2011). Other
researchers are exploiting the properties of silicon for quantum computing (Morton et al. 2011),
which is computation at the subatomic level with improvements in speed and memory that will be
exponential compared to the current state. Rather than store and transmit information in a binary
fashion via bits, quantum computing uses quantum bits or qubits, which can have more than one
state at a time (McMahon 2007). This property means that quantum computers have the ability
to store and process much greater amounts of data than conventional bit-based computing, taking
computing to an entirely different level. NASA and Google have formed a partnership to invest in
the first commercial quantum computer developed by the Canadian company D-Wave. The com-
puter, which will cost 15 million USD, will reach speeds 3600 times greater than conventional
computers (Jones 2013). Superconductors have not yet been used in computers but, coupled with
quantum computing, have the potential to perform a million trillion calculations per second or exa-
flop computing, which is roughly 500 times faster than the fastest supercomputers in 2010 (Maney
et al. 2011). There are also other ongoing research challenges focused on making improvements to
existing technologies (Chen 2006), for example, new approaches to chip design and production,
such as extreme ultraviolet lithography or methods to facilitate nanochip fabrication (European
Commission 2010). Whether these advances will make it possible to continue the trend of Moore’s
law in the short term will remain to be seen.
420 GeoComputation

But should GC researchers really be worried about whether industry can continue to stay on
target with Moore’s law during the next decade? With increasing access to parallel, distributed
and cloud computing (Adnan et al. 2014; Birkin and Malleson 2014; Sui 2014) which provides
solutions to speed, memory and storage, what problems do researchers in GC have that need
more powerful computers? Four different areas are discussed in the following text, yet most of
these have caveats or associated limitations that surpass those of the need for more computing
power:

1.
Agent-based or individual-based modelling: There is currently a limit to the number
of agents or individuals that can be simulated and/or the number of characteristics and
behaviours that can be captured. Yet there is a desire to build more realistic models with
a greater number of agents, which poses some computational challenges. Referred to
as massive agent-based systems (MABSs), they contain very high numbers of agents,
that is, on the order of millions or more. Parry and Bithell (2012) present a number of
potential solutions for how to build MABS. Their suggestions include investing in more
computer power on the one hand while suggesting other approaches such as moving to a
parallel computing environment or restructuring the software to build super-individuals,
which are like cohorts of aggregates of individuals. These latter two solutions are illus-
trated using an agent-based model (ABM) of insect populations. Farmer (2011) talks
about his ambitious plans to build a MABS of the entire United States in order to predict
events like the 2008 economic crisis before they happen. Although many challenges
have been identified, computing power is not considered to be one of the limiting factors.
Instead, more pertinent issues are identified including how to calibrate such a model,
what elements to include and at what level, limits to prediction due to uncertainty in the
stock market and how to build good decision rules for the agents. In this case, the limit-
ing factor is really the model complexity and sufficient understanding of the behaviour
of the agents.
2.
Methods of search and optimisation including model calibration and sensitivity analy-
sis: At present, computational power limits the size of the parameter spaces that can be
explored either in searching, optimisation or model calibration as well as the number of
parameters that can be tested in a sensitivity analysis if the procedure is to be carried out
in a time that is considered to be acceptable to the researcher or project. As the model
becomes more complex, the possibility for exhaustive analyses becomes less likely, so
researchers need to make decisions about what is good enough in order to have confidence
in their results. Greater computational power would allow GC researchers to evaluate more
solutions or parameters as originally advocated by Kirkby (2000).
3.
Increasing the resolution of grid-based modelling: Large-scale physical models such as
global climate and numerical weather prediction models are currently restricted to the
size of the grids on which they operate. With improvements in computing power already
witnessed over the last four decades, there has already been an increase in the resolu-
tion of these models, which is a trend that will continue in the future. But does improved
resolution alone ensure better forecasts? The answer is no. Although a finer resolution
would allow more local conditions to be taken into account such as the influence of local
topography or vegetation, the physics that govern these models also needs to be improved.
Thus, developments in understanding local processes are a fundamental part of improving
models with higher resolution.
4.
Our ability to process, store and visualise vast quantities of data: The amount of
georeferenced data has increased phenomenally during the last two decades. We may need
faster computers and more storage to handle these datasets, but the real issues are much
more complex. The data themselves represent a limitation to GC, which is discussed in
more detail in the next section.
Limits to GeoComputation 421

Although this list may be far from comprehensive, most GC research would simply gain improve-
ments in speed either by using more efficient algorithms or making better use of existing parallel,
distributed and cloud computing resources, akin to some of the solutions of Parry and Bithell (2012)
and Adnan et al. (2014). It is the responsibility of the GC community to become more involved
in initiatives such as the NCeSS (National Centre for e-Social Science Research – http://www.
merc.ac.uk/) and the NCRM (National Centre for Research Methods – http://www.ncrm.ac.uk/) in
the United Kingdom, projects like the EESI (European Exascale Software Initiative – http://www.
eesi-project.eu/pages/menu/publications/investigation-of-hpc-initiatives.php) in Europe and similar
initiatives in other countries in order to make the best use of what is currently available. See Birkin
and Malleson (2014) for more details. Although quantum computing is on the horizon, it is not clear
at which stage this will begin to have a significant impact on research.

18.3  DATA LIMITATIONS


Back in 1995, Openshaw (1995b) clearly recognised that we were experiencing a spatial data
explosion, the rate of which would only continue to increase in the future. In 2002, it was esti-
mated that the annual size of new information created from both physical media and electronic
channels was 23 EB or 23 trillion MB (Lyman et al. 2003). Of this total, 18 EB was digital and
roughly 170 TB was produced through the Internet. The report equated the volume of information
from the Internet equivalent to the print collection held in 17 US Libraries of Congress. In 2006,
the amount of digital information produced annually was estimated at 161 EB (International
Data Corporation [IDC] 2007) or 3 million times the amount of information contained in all
the books that have ever been written, while current estimates in 2011 now stand at greater than
1 ZB or 1 trillion GB (International Data Corporation [IDC] 2011) per year. Unfortunately, there
is no indication as to what percentage of this digital universe is georeferenced, but even if it was
only 10% of the total, this would still represent an incredible amount of spatial data produced
annually. In fact, the percentage is likely to be much higher than that given the increasing move
towards a mobile environment and the rapidly expanding number of physical and human sensors
collecting data on a continuous basis. We have now entered the era of big data, where the exact
origin of this term is unclear. McBurney (2012) provides an interesting analysis, finding the first
reference to the term in an economics paper published in 2000. However, it was not until 2009
that the legitimacy of the term was debated in Wikipedia, and it was picked up by Google Trends
as taking off from the end of 2010.
Big data, which include big spatial data, generally refer to datasets that are so large that conven-
tional systems struggle to process the volume of information coming in (Dumbhill, 2012). Big data
can be characterised by the three Vs – velocity, volume and variability (or variety) – which pose a
number of common challenges to all fields including GC. Big data are characterised by enormous
velocity of acquisition. For example, the experiments at CERN generate more than 1 PB of data
per second, which illustrates both volume and velocity very clearly. This input stream then requires
filtering in order to keep only the data of interest (Worth 2011). This raises some interesting storage
and preservation challenges as no satisfactory solution currently exists for preserving all the digital
data being created. Goodchild et al. (2012) recognise the need for extensive research in this area if
big spatial data – which encompass the Digital Earth – are to be preserved for more than just a few
years. The volume of big data also refers to the degree of interlinkages between the data. The linked
open data cloud diagram of Cyganiak and Jentzsch (2011) has been suggested by Janowicz (2012) as
a promising knowledge infrastructure for big data. The final V is variability or variety, which refers
to the increasing number of data sources and data types emerging, much of which is unstructured.
Other challenges of big data include the need to document the data in ways that are useful for users
(metadata/semantics/use-cases) and the need to improve the search facilities in order to help users
find what they need in a more efficient way, for example, through the use of semantically enabled
search engines. The need to better manage the data will become more important, for example,
422 GeoComputation

through portals and clearinghouses, and a very important aspect of future data collection will be
quality control, which will require mechanisms for evaluation and peer review.
These aforementioned data limitations dealt with reaching our limits in the ability to preserve,
process and analyse big spatial data. On the other side of the spectrum, there is currently a lack
of georeferenced data in certain critical areas, for example, a lack of in situ or ground truth data
which are needed for many environmental applications. In situ data are required to calibrate and
validate models in both the physical and social sides of GC and therefore represent a real limit to
GC research. In some areas, there are greater amounts of in situ data available, for example, stream
gauge networks that monitor river discharge or weather stations that collect basic weather param-
eters at highly resolved temporal intervals. However, even these have a relatively sparse spatial
coverage and a few stations are often required to represent entire catchments. On the human side,
there is a lack of behavioural and socio-economic data needed to populate agent characteristics
and develop behavioural rules for ABM. Crowdsourcing, citizen science, volunteered geographical
information and neography are all recently coined terms for the increasing trend in citizen partici-
pation in the collection and analysis of data and represent one solution to filling the in situ data gaps
needed to progress scientific research. OpenStreetMap is one example of many online mapping ini-
tiatives which empowers citizens to participate in the creation of an online mapping database. Many
other examples of relevance to GC research could be cited, for example, the collection of weather
data through the Personal Weather Station project (http://www.wunderground.com/weatherstation/
index.asp), the siting of species and habitat identification (e.g. http://ebird.org/content/ebird/, http://
www.ispot.org.uk/), the validation of land cover (http://www.geo-wiki.org/) and the European
Environment Agency’s Eye on Earth (http://www.eyeonearth.org/). These types of bottom-up initia-
tives will increase exponentially over the next decade and contribute to the spatial big data that are
currently being collected through more automated processes. However, issues of data quality will
be a core limitation to the use of the data for scientific research. GC has a significant role to play in
developing methods for data filtering and the creation of metrics to assess both data quality and the
contributors of the data; see, for example, Haklay (2010) and Goodchild and Li (2012).

18.4  LIMITS TO PREDICTABILITY AND UNDERSTANDING


Another fundamental limit to GC research is in terms of what we can model and predict based on
our current understanding of how phenomena function. Looking back at history, we can see how
our understanding of systems has evolved and why many current systems are so complex to model
and understand. A good starting point is Sir Isaac Newton, who was the first scientist to mathemati-
cally explain the planetary motion of two bodies, referred to as the two-body problem (Brisby and
Rumple 2002). Newton’s work on the two-body problem and the development of the laws of motion
and calculus exemplified the principle of determinism, which was the prevailing paradigm at the
time. The basic idea behind determinism is that if we know the equations that govern the state of
the universe and have knowledge of the initial conditions, then we can accurately predict the state
of the universe at any time in the future (Kiefer and Munitz 1970). Although at the time it was
recognised that there may be small errors in the measurement of the initial state, it was assumed that
these minor discrepancies would only be manifested as small differences in the final predictions.
However, it soon became clear that there were situations where this was clearly not the case. For
example, it was not possible to generate an exact solution to a three-body planetary motion prob-
lem, which was tackled by Poincaré and other researchers from the mid-1700s to the early 1900s.
By studying the qualitative behaviour of the system, Poincaré found that the behaviour of the third
body could be wildly unpredictable at times or exhibited what is now known as chaotic behaviour
(Barrow-Green 1997). The later research of Lorenz showed that atmospheric systems exhibit this
same behaviour, which is referred to as sensitive dependence, that is, two very similar initial starting
points can lead to vastly different outcomes. These findings led to the development of chaos theory
(Lorenz 1995).
Limits to GeoComputation 423

Predictability is related in part to whether a system is linear or non-linear. Systems that are linear
do not have any dependent variables to a power greater than one or they are not manipulated by
non-linear functions, for example, a cosine. They are deterministic in that the outputs are directly
proportional to the inputs and can be solved easily with exact equations, for example, a linear
regression equation (Antsaklis and Michel 2007). However, most phenomena (human and physical)
are characterised by non-linear behaviour. Some can be solved analytically, while others require
numerical solutions. But the problem arises when non-linear systems exhibit chaotic behaviour,
which means that the future state will be completely unpredictable (Albert 1995). Chaotic behaviour
can be observed in simple systems, for example, in the Lotka–Volterra models of predator–prey
systems (Sprott 2010), but also in the more complex dynamics of economies, cities and other social
as well as physical systems (Kiel and Elliott 1997). Approaches exist for determining when a sys-
tem becomes chaotic and after which point in time prediction will become impossible, for example,
the Lyapunov exponent and Kolmogorov–Sinai entropy, but even these have limits in quantifying
predictability (Boffetta et al. 2002).
Predictability and understanding can also be viewed from another perspective. Popper (2002)
argued that the future is unpredictable because it depends on knowledge that we do not yet have, for
example, newly discovered technologies and innovations. We might generalise this to any unknown
knowledge or unknown unknowns about changes or events in a system that could drastically alter
the outcome of our models. For example, the location of new roads/transport networks has an effect
on where deforestation or urbanisation will occur in the future. Where these networks will be built
in the future may be impossible to determine and yet may drastically change the results of future
scenarios from land change models. The presence of non-stationarity in temporal phenomena, that
is, changes in the means and/or variances of variables over time, for example, within climate and
hydrological systems, requires models that can handle the changing dynamics of these systems, or
they should be used with caution when making predictions in the future. Abrupt changes, tipping
points or bifurcations that result in a sudden radical change in behaviour are also not currently
handled well using conventional modelling approaches, for example, predicting the recent financial
crisis. Progress in this area will be limited by the rate at which new theoretical and empirical devel-
opments can be made.
We can also consider predictability in terms of the size and simplicity of our models. For exam-
ple, how many parameters are too many before the model becomes impossible to calibrate, vali-
date or explain? Clarke (2004) argues that simplicity is not always desirable, partly because good
reductionist methods do not yet exist but also because models have several components that interact,
each of which can be complex on their own. It may be better to have a complicated model that is
difficult to explain but produces good, credible results than a simple model which performs poorly.
We therefore need to consider limits at both ends of the simplicity–complexity spectrum and find a
balance. Clarke (2004) argues that it is more important to be ethical in modelling, do good science
and take responsibility for the modelling results, particularly when they pertain to critical systems,
all of which are relevant for GC research.
Finally, can we ever really model human behaviour, to what degree is this random, and will this
be an ultimate limit to predictability? Economics has traditionally treated individuals as rational
decision-makers who weigh up the costs and benefits before undertaking an action. In reality, this
is not the case and individuals have free will to pursue a range of choices that depend on many dif-
ferent factors. Farmer (2011) recognises a number of challenges in agent-based economic modelling
including the need to develop good agent decision rules, but where will these rules come from and to
what degree will they take free will into account? Other models of human activity have been largely
stochastic in nature (Castellano et al. 2009), implying that there are fundamental limits to predict-
ability. However, a recent study by Song et al. (2010) has shown that it is possible to predict individ-
ual behaviour in terms of where individuals travel in their daily lives based on historical data from
mobile phone usage. These latter issues highlight areas where advances in complementary fields will
benefit GC, but at present, they still represent fundamental limits to GC modelling and research.
424 GeoComputation

18.5  COMPUTATION-LED LIMITS


This limit to GC deals with the question of whether computers can ever replace humans and thereby
be used to help solve some currently difficult and complex GC problems. The idea of a thinking
machine is relevant to GC, since AI is one of the cornerstones of this discipline. As AI is ultimately
about designing machines with human intelligence, will we ever be in a position to use computers as
if they were real GC scientists? According to predictions by Kurzweil (2005), the answer would be
yes as he predicts that machines with human intelligence will be developed by 2029. He views com-
putational power as the limiting factor in developing such a capability. However, the development
of a thinking machine is much more complex than simply having adequate computational power
and represents another real limit to GC research. Intelligence is still a concept that is hotly debated.
One of the original ideas for the development of intelligent machines was put forth by Alan Turing
who wrote a seminal paper in which he outlined his famous Turing test (Turing, 1950). The idea was
simple: if a human engages in a conversation with both another human and a machine but cannot
distinguish between the two, then the machine is said to exhibit intelligent behaviour. The ELIZA
and PARRY programs were examples of initial attempts to pass the Turing test (Weizenbaum
1966; Colby et al. 1972). However, the Turing test has been criticised by many researchers (Searle
1980; French 1990) since it merely determines whether a computer can imitate the behaviour of a
human and not whether it exhibits intelligence or whether it can think in any reasoned capacity.
Despite these criticisms, the Turing test is still the subject of development as encouraged through
the Loebner Prize. This annual contest has been held since 1991 (http://www.loebner.net/Prizef/
loebner-prize.html) and continues to the present day to judge attempts by conversational programs
(or chatterbots) to pass the Turing test.
Research in AI over the last 50 years has concentrated on addressing individual aspects
of human intelligence, for example, the ability to learn through research into artificial neural
networks and the ability to reason through the development of expert systems and fuzzy logic
(Demetriou et al. 2014; Fischer 2014; Fisher and Robinson 2014), but the sum of these have not
resulted in a real thinking machine. Perhaps the closest current example to an intelligent machine
is IBM’s Watson (Baker 2011), which was able to beat any of the best human competitors in the
game of Jeopardy. Although it relies on brute force computational power and access to terabytes
of information, it also contains cognitive computing or functions for analysing relationships in
natural language and the capability to learn from its mistakes. As with the Turing test, Watson
has its critics (Searle 2011), but IBM is now adapting this technology to analyse big data in the
healthcare, financial and business sectors.

18.6 UNCERTAINTY
There is an increasing need to provide uncertainty estimates with model predictions. Not only does
this provide confidence in the model, it also addresses the issue of trust, which is an important com-
ponent of modelling, especially when the results are generated for stakeholders or the public. This
becomes particularly relevant when providing estimates of risk for critical systems as evidenced by
recent events in Italy (Nature 2012).
There is already a considerable literature on how to estimate and visualise different types of
uncertainty in geographical models and information (Phillips 1999; Goodchild and Zhang 2002;
Maceachren et al. 2005; Montanari 2007). Although the uncertainty estimation itself is not always
straightforward, especially when trying to account for uncertainty from different sources, the
discussion here is concerned with the situation where the uncertainty estimates become so large
that model outputs essentially become meaningless. Maslin and Austin (2012) discuss this issue
in the context of whether global climate models have reached their limits in terms of predicting
the impacts of climate change. For example, they cite outputs from the UK Met Office’s HadCM3
model where monthly discharge is predicted to fall by 16% on one end of the uncertainty band and
Limits to GeoComputation 425

rise by 55% on the other end. For policymakers, not only do these estimates provide a very broad
range of possibilities in absolute terms, these models cannot even predict the direction of change
with any real certainty.
Another example are global economic land use models, which make predictions about land cover
and land use in the future. A recent study has shown that current global estimates of the amount of
land under crop production vary by as much as 300 Mha (Fritz et al. 2011). These estimates were
derived from different global land cover products that have been developed from satellite remote
sensing. The significance of this becomes clear when this land cover information is used as an
input to other models such as economic land use models. In a recent model comparison exercise by
Smith et al. (2010), the global change in cropland area (and other land uses) in 2020 and 2050 was
compared across the different models under various scenarios including climate change. Many of
the predictions of cropland change in the future were less than the 300 Mha, which means that the
predictions fall within the uncertainty band of current baseline cropland information. Other stud-
ies have shown that model outputs and analyses can vary substantially depending upon which land
cover product has been used (Ge et al. 2007; Quaife et al. 2008; Linard et al. 2010).
These examples are only the tip of an iceberg, and as Maslin and Austin (2012) clearly articulate,
with increased computing power and the ability to run larger and more complex models, this hidden
uncertainty will increasingly come to the surface.

18.7 CONCLUSIONS
The focus of this chapter has been to discuss the current limits to GC, which most people might per-
ceive to be computational power. For those of us who have experienced the changes since the first
edition of this book was published, we can now run models on our desktop that were not possible
just 15 years ago. At the same time, our models have become much more complex, so it is not dif-
ficult to build models now that take what we might consider to be an unreasonably long time to run.
Our tolerance to acceptable run times has probably also decreased over time. However, the biggest
limit is actually not computational power itself but the need to make better and more efficient use of
what resources already exist. Maybe 15 years from now, when we all have access to quantum com-
puters and our code is optimised for this new parallel environment, we may look back and wonder
how we ever managed to model anything complex with any degree of realism.
There are still, however, real limits in predictability and understanding due to the presence of
chaos, events that cannot be anticipated, the amount of complexity that we can model, the over-
whelming amounts of spatial data now being collected and the widening range of uncertainty esti-
mates. As scientists, we will keep pushing these limits as far as possible, as our computational
environment continues to improve. For the field of GC and spatial sciences more generally, many
of these limits can be viewed as continued challenges that will lead to new research questions and
ultimately drive these disciplines forward in the future.

REFERENCES
Abbott, M.B., J.C. Bathurst, J.A. Cunge, P.E. O’Connell, and J. Rasmussen. October 15, 1986. An introduction
to the European hydrological system—Systeme Hydrologique Europeen, “SHE”, 1: History and
philosophy of a physically-based, distributed modelling system. Journal of Hydrology 87(1–2): 45–59.
Adnan, M., P.A. Longley, A.D. Singleton, and I. Turton. 2014. Parallel computing in geography. In
Geocomputation, 2nd edn., eds. R.J. Abrahart and L. See, pp. 49–68. Boca Raton, FL: Taylor & Francis.
Albert, A. 1995. Chaos and Society. Sainte-Foy, Quebec, Canada: IOS Press.
Antsaklis, P.J. and A.N. Michel. 2007. A Linear Systems Primer. Boston, MA: Birkhauser.
Baker, S. 2011. Final Jeopardy: Man vs. Machine and the Quest to Know Everything. Boston, MA: Houghton
Mifflin Harcourt.
Barrow-Green, J. 1997. Poincaré and the Three Body Problem. Providence, RI: American Mathematical
Society.
426 GeoComputation

Birkin, M.H. and N. Malleson. 2014. e-Research and GeoComputation. In Geocomputation, 2nd edn., eds. R.J.
Abrahart and L. See, pp. 241–258. Boca Raton, FL: Taylor & Francis.
Boffetta, G., M. Cencini, M. Falcioni, and A. Vulpiani. January 2002. Predictability: A way to characterize
complexity. Physics Reports 356(6): 367–474.
Brisby, N. and R.R. Rumple. 2002. A presentation of the two-body problem may. http://online.redwoods.cc.ca.
us/instruct/darnold/deproj/sp02/NoahRobin/draft1.pdf. Accessed on 01/08/2013.
Castellano, C., S. Fortunato, and V. Loreto. May 11, 2009. Statistical physics of social dynamics. Reviews of
Modern Physics 81(2): 591–646.
Chen, T.-C. 2006. Overcoming research challenges for CMOS scaling: Industry directions. In Eighth
International Conference on Solid-State and Integrated Circuit Technology, 2006. ICSICT’06, Shanghai,
China, pp. 4–7.
Clarke, K.C. 2004. The limits of simplicity: Toward geocomputational honesty in urban modeling. In
GeoDynamics, eds. P. Atkinson, F. Wu, G. Foody, and S. Darby, pp. 213–232. Boca Raton, FL: CRC Press.
Colby, K.M., F.D. Hilf, S. Weber, and H.C. Kraemer. January 1972. Turing-like indistinguishability tests for the
validation of a computer simulation of paranoid processes. Artificial Intelligence 3: 199–221.
Committee on Strategic Directions for the Geographical Sciences in the Next Decade; National Research
Council. 2010. Understanding the Changing Planet: Strategic Directions for the Geographical Sciences.
Washington, DC: The National Academies Press.
Cyganiak, R. and A. Jentzsch. 2011. The linking open data cloud diagram. http://richard.cyganiak.
de/2007/10/lod/. Accessed on 01/08/2013.
Demetriou, D., L. See, and J. Stillwell. 2014. Expert systems for planning and spatial decision support. In
Geocomputation, 2nd edn., eds. R.J. Abrahart and L. See, pp. 259–282. Boca Raton, FL: Taylor &
Francis.
Dubash, M. 2005. Moore’s law is dead, says Gordon Moore. Techworld, April 13. http://news.techworld.com/
operating-systems/3477/moores-law-is-dead-says-gordon-moore/. Accessed on 01/08/2013.
Dumbill, E. 2012. What is big data? An introduction to the big data landscape. O’Reilly Radar: Insight,
Analysis, and Research About Emerging Technologies. http://radar.oreilly.com/2012/01/what-is-big-
data.html. Accessed on 01/08/2013.
European Commission. 2010. Feeling Chipper About Our Electronic Future. Research eu*focus. Luxembourg:
Unite CORDIS. http://cordis.europa.eu/news/research-eu. Accessed on 01/08/2013.
Farmer, D. 2011. The challenge of building agent-based models of the economy June 10. European Central
Bank, Frankfurt. http://www.ecb.int/events/conferences/shared/pdf/conf_ecb_ny_fed/Farmer_pres.pdf?c
272c0cc68f63a1236df3fd713f82282. Accessed on 01/08/2013.
Farrington, G.C. 1996. ENIAC: The birth of an information age. Popular Science 3: 74.
Fischer, M.M. 2014. Neurocomputing for GeoComputation. In Geocomputation, 2nd edn., eds. R.J. Abrahart
and L. See, pp. 307–328. Boca Raton, FL: Taylor & Francis.
Fisher, P.F. and V.B. Robinson. 2014. Fuzzy modelling. In Geocomputation, 2nd edn., eds. R.J. Abrahart and
L. See, pp. 283–306. Boca Raton, FL: Taylor & Francis.
Fotheringham, A.S. and M.E. O’Kelly. 1989. Spatial Interaction Models: Formulations and Applications.
Boston, MA: Kluwer Academic Publishers.
French, R.M. 1990. Subcognition and the limits of the Turing test. Mind XCIX(393): 53–65.
Fritz, S., L. You, A. Bun, L. See, I. McCallum, C. Schill, C. Perger, J. Liu, M. Hansen, and M. Obersteiner.
February 2011. Cropland for sub-Saharan Africa: A synergistic approach using five land cover data sets.
Geophysical Research Letters 38(4): L04404.
Ge, J., J. Qi, B.M. Lofgren, N. Moore, N. Torbick, and J.M. Olson. March 10, 2007. Impacts of land use/
cover classification accuracy on regional climate simulations. Journal of Geophysical Research 112(D5):
D05107, doi:10.1029/2006JD007404. Accessed on 01/08/2013.
Goodchild, M. and J. Zhang. 2002. Uncertainty in Geographical Information. London, U.K.: Taylor & Francis.
Goodchild, M.F., H. Guo, A. Annoni, L. Bian, K. de Bie, F. Campbell, M. Craglia et al. July 10, 2012.
Next-generation digital earth. Proceedings of the National Academy of Sciences 109(28): 11088–11094.
Goodchild, M.F. and L. Li. May 2012. Assuring the quality of volunteered geographic information. Spatial
Statistics 1: 110–120.
Grueber, M. and T. Studt. 2010. 2011 global R&D funding forecast. R&D Magazine: 1–34.
Haklay, M. 2010. How good is volunteered geographical information? A comparative study of OpenStreetMap
and ordnance survey datasets. Environment and Planning B: Planning and Design 37: 682–703.
International Data Corporation (IDC). 2007. The expanding digital universe: A forecast of worldwide
information growth through 2010. http://www.emc.com/collateral/analyst-reports/expanding-digital-idc-
white-paper.pdf. Accessed on 01/08/2013.
Limits to GeoComputation 427

International Data Corporation (IDC). 2011. The 2011 digital universe study: Extracting value from chaos.
http://www.emc.com/collateral/demos/microsites/emc-digital-universe-2011/index.htm. Accessed on
01/08/2013.
Janowicz, K. June 2012. Observation-driven geo-ontology engineering: Observation-driven geo-ontology
engineering. Transactions in GIS 16(3): 351–374.
Jones, N. May 16, 2013. Google and NASA snap up quantum computer. Nature. http://www.nature.com/
doifinder/10.1038/nature.2013.12999.
Kabat, P. June 15, 2012. Systems science for policy evaluation. Science 336(6087): 1398.
Kiefer, H.E. and M.K. Munitz. 1970. Mind, Science, and History. New York: SUNY Press.
Kiel, L.D. and E.W. Elliott. 1997. Chaos Theory in the Social Sciences: Foundations and Applications. Ann
Arbor, MI: University of Michigan Press.
Kim, K., J.-Y. Choi, T. Kim, S.-H. Cho, and H.-J. Chung. November 17, 2011. A role for graphene in silicon-
based semiconductor devices. Nature 479(7373): 338–344.
Kirkby, M. 2000. Limits to modelling in the earth and environmental sciences. In Geocomputation, eds.
S. Openshaw and R.J. Abrahart. pp. 374–387. Boca Raton, FL: Taylor & Francis.
Kurzweil, R. 2005. The Singularity Is Near. London, U.K.: Duckworth.
Linard, C., M. Gilbert, and A.J. Tatem. May 25, 2010. Assessing the use of global land cover data for guiding
large area population distribution modelling. GeoJournal 76(5): 525–538.
Lorenz, E.N. 1995. The Essence of Chaos. Seattle, WA: University of Washington Press.
Lyman, P., H.R. Varian, K. Swearingen, P. Charles, N. Good, L.L. Jordan, and J. Pal. 2003. How Much
Information? 2003. Berkeley, CA: University of California. http://www2.sims.berkeley.edu/research/
projects/how-much-info-2003/. Accessed on 01/08/2013.
Lynch, P. March 2008. The origins of computer weather prediction and climate modeling. Journal of
Computational Physics 227(7): 3431–3444.
Maceachren, A.M., A. Robinson, S. Gardner, R. Murray, M. Gahegan, and E. Hetzler. 2005. Visualizing
geospatial information uncertainty: What we know and what we need to know. Cartography and
geographic. Information Science 32: 160.
Maney, K., S. Hamm, and J.M. O’Brien. 2011. Making the World Work Better: The Ideas That Shaped a
Century and a Company. Upper Saddle River, NJ: IBM Press.
Manson, S.M. August 2001. Simplifying complexity: A review of complexity theory. Geoforum 32(3): 405–414.
Maslin, M. and P. Austin. June 14, 2012. Uncertainty: Climate models at their limit? Nature 486(7402):
183–184.
McBurney, V. 2012. The origin and growth of big data buzz. Toolbox.com. http://it.toolbox.com/blogs/infos-
phere/the-origin-and-growth-of-big-data-buzz-51509. Accessed on 01/08/2013.
McMahon, D. 2007. Quantum Computing Explained. Hoboken, NJ: John Wiley & Sons.
Meuer, H., E. Strohmaier, J. Dongarra, and H. Simon. 2013. Top500 supercomputer sites. http://www.top500.
org/lists/2013/06/. Accessed on 01/08/2013.
Montanari, A. March 15, 2007. What do we mean by ‘uncertainty’? The need for a consistent wording about
uncertainty assessment in hydrology. Hydrological Processes 21(6): 841–845.
Moore, G.E. 1965. Cramming more components onto integrated circuits. Electronics 38(8): 114–117.
Moore, G.E. 1975. Progress in digital integrated electronics. 1975 International, Electron Devices Meeting,
vol. 21, pp. 11–13.
Morton, J.J.L., D.R. McCamey, M.A. Eriksson, and S.A. Lyon. November 17, 2011. Embracing the quantum
limit in silicon computing. Nature 479(7373): 345–353.
Nature. October 23, 2012. Shock and law. Nature 490(7421): 446.
Openshaw, S. 1995a. Human systems modelling as a new grand challenge area in science. Environment and
Planning A 37: 159–164.
Openshaw, S. January 1, 1995b. Developing automated and smart spatial pattern exploration tools for
geographical information systems applications. Journal of the Royal Statistical Society. Series D
(The Statistician) 44(1): 3–16.
Openshaw, S. 1998. Neural network, genetic, and fuzzy logic models of spatial interaction. Environment and
Planning A 30(10): 1857–1872.
Openshaw, S. 2000. GeoComputation. In Geocomputation, eds. S. Openshaw and R.J. Abrahart, pp. 1–31.
London, U.K.: Taylor & Francis.
Openshaw, S. and R.J. Abrahart. 2000. Geocomputation. London, U.K.: Taylor & Francis.
Parry, H.R. and M. Bithell. 2012. Large scale agent-based modelling: A review and guidelines for model scal-
ing. In Agent-Based Models of Geographical Systems, eds. A.J. Heppenstall, A.T. Crooks, L.M. See, and
M. Batty, pp. 271–308. Dordrecht, the Netherlands: Springer.
428 GeoComputation

Phillips, J.D. 1999. Spatial analysis in physical geography and the challenge of deterministic uncertainty.
Geographical Analysis 31(4): 359–372.
Pillarisetty, R. November 17, 2011. Academic and industry research progress in Germanium nanodevices.
Nature 479(7373): 324–328.
Popper, K. 2002. The Poverty of Historicism. London, U.K.: Routledge.
Quaife, T., S. Quegan, M. Disney, P. Lewis, M. Lomas, and F.I. Woodward. December 2008. Impact of land
cover uncertainties on estimates of biospheric carbon Fluxes. Global Biogeochemical Cycles 22(4):
GB4016.
Radisavljevic, B., A. Radenovic, J. Brivio, V. Giacometti, and A. Kis. 2011. Single-layer MoS2 Transistors.
Nature Nanotechnology 6(3): 147–150.
Reis, R.A. and J. Jess. 2004. Design of System on a Chip: Devices & Components. Boston/Dordrecht/London:
Kluwer Academic Publishers.
Searle, J.R. 1980. Minds, brains, and programs. Behavioral and Brain Sciences 3(03): 417.
Searle, J.R. 2011. Watson doesn’t know it won on ‘Jeopardy!’ The Wall Street Journal, February 23, 2011.
http://online.wsj.com/article/SB10001424052748703407304576154313126987674.html.
Smith, P., P.J. Gregory, D. van Vuuren, M. Obersteiner, P. Havlik, M. Rounsevell, J. Woods, E. Stehfest, and J.
Bellarby. September 27, 2010. Competition for land. Philosophical Transactions of the Royal Society B:
Biological Sciences 365(1554): 2941–2957.
Song, C., Z. Qu, N. Blumm, and A.-L. Barabási. February 19, 2010. Limits of predictability in human mobility.
Science 327(5968): 1018–1021.
Sprott, J.C. 2010. Elegant Chaos: Algebraically Simple Chaotic Flows. Singapore: World Scientific.
Sui, D.Z. 2014. Ubiquitous computing, spatial big data, and open GeoComputation. In Geocomputation, 2nd
edn., eds. R.J. Abrahart and L. See, pp. 377–396. Boca Raton, FL: Taylor & Francis.
Turing, A.M. 1950. I. Computing machinery and intelligence. Mind LIX(236): 433–460.
Turton, I. and S. Openshaw. 1998. High-performance computing and geography: Developments, issues, and
case studies. Environment and Planning A 30(10): 1839–1856.
University of Edinburgh. 2009. HECTor. http://www.epcc.ed.ac.uk/facilities/hector/. Accessed on 01/08/2013.
Weizenbaum, J. January 1, 1966. ELIZA—A computer program for the study of natural language communica-
tion between man and machine. Communications of the ACM 9(1): 36–45.
Wilson, A. 1971. A family of spatial interaction models, and associated developments. Environment and
Planning A 3: 1–32.
Worth, D. 2011. CERN experiments generating one petabyte of data every second. http://www.v3.co.uk/v3-uk/
news/2081263/cern-experiments-generating-petabyte. Accessed on 01/08/2013.
19 GeoComputation in 2061
Keith C. Clarke

CONTENTS
Abstract........................................................................................................................................... 429
19.1 Introduction........................................................................................................................... 429
19.2 SAGE..................................................................................................................................... 431
19.3 CORONA............................................................................................................................... 433
19.4 Evolution of Computer Cartography...................................................................................... 434
19.5 Future of GeoComputation.................................................................................................... 436
19.5.1 Future Fusion............................................................................................................. 436
19.5.2 Future Mobility.......................................................................................................... 439
19.5.3 Ubiquitous Computing Future...................................................................................440
19.5.4 Future GeoWeb.......................................................................................................... 442
19.5.5 Interactive Multimedia in 2061................................................................................. 442
19.5.6 Biocomputational Future........................................................................................... 443
19.6 Conclusion.............................................................................................................................444
References....................................................................................................................................... 445

ABSTRACT
This chapter examines the status of GeoComputation (GC) in the year 2061, 50 years into the
future. It begins by using two case studies – the SAGE and CORONA systems – to show that the
fields behind GC, namely, geographic information science and computer science, share a common
twentieth-century heritage. Six themes are then chosen: fusion, mobility, ubiquity, the GeoWeb,
interactive multimedia and biocomputation. Each of these is explored with respect to today’s trends
and then in terms of what these areas could look like in 2061. Some extraordinary new develop-
ments are anticipated, including bionic computing, quantum computers and an artificial reality
inseparable from the actual. The chapter concludes by raising issues of preparation, posing ques-
tions about what training and skills can prepare GC for its not-too-distant future.

19.1 INTRODUCTION
GeoComputation (GC) has been defined as the ‘art and science of solving complex spatial problems
with computers’ (Openshaw and Abrahart, 2000). Taken narrowly, GC is the intersection in the
Venn diagram that is geographic information science (GISci) on the one hand (Goodchild, 1992)
and computer science on the other. Yet both fields have moved on significantly since the first exami-
nations of the overlap, and any examination must now also include grid computing, simulation and
modelling, spatial analysis, cartographic visualisation and visual analytics in addition to issues of
high-performance computing (Clarke, 2003). Ubiquitous and mobile computing, in which comput-
ers have morphed from desktop computing machines into components of almost every appliance
and device associated with everyday life, were distant visions when GC was in its formative stage.
Nevertheless, they were firmly on the futurist radar scope more than a decade ago (Clarke, 1999)
and advances have since been made (Sui, 2014).

429
430 GeoComputation

In this chapter, the question is posed: what lies in the future for GC? From both theoretical and
practical perspectives, most of what could be foretold in 1999 has come about. Intractable problems
have become tractable (Saalfeld, 2000); new methods for handling and visualising vast quantities of
information have been developed and become commonplace, for example, the word cloud; human–
computer interaction has reached a level that was science fiction in the 2002 movie Minority Report;
the Internet is now how we pay our bills, do our shopping and communicate with our friends; and
the World Wide Web has led to visions of cyberinfrastructure and cloud computing (Foster and
Kesselman, 1999; Foster et al., 2001, 2002), a digital earth (Grossner et al., 2008) and the paradigm
of volunteered geographic information (Goodchild, 2007). Significantly, these trends have led GISci
into new application areas, across academic disciplines, and strengthened this emerging field of sci-
ence (Janelle et al., 2009). The future trend is quite obviously toward interdisciplinarity, an aspect
that GC has somewhat pioneered. Yet what exactly does the future hold for GC? What new trends
in both GISci and computing will impact that future? To quote Aristotle, if you would understand
anything, observe its beginning and its development. With this in mind, this chapter re-examines
the past of computing and of computer-based mapping and analysis. Surprisingly, the pasts are not
as separate as might be imagined, and so this confluence is used as a jumping-off point to examine
the future, 50 years hence.
Geographers are often taught the history of the discipline’s traditions and paradigms. Varenius’
Geographia Generalis (1650) established both geography’s basis in observational science and its
use of applied mathematics. Later came the quantitative revolution, the spatial analytic tradition
and the birth of geographic information systems (GIS) and GISci. Yet geographical preparation
rarely includes the history of computing and the deep links between mapping, spatial analysis and
computational methods.
Missing also are the theories around which computer science is based. For example, the Church–
Turing thesis is an essential part of understanding computers, programming languages and com-
puter logic. A formal expression of the theorem states that for a process symbolised as M,

1.
M can be set out in terms of a finite number of exact instructions (each instruction being
expressed by means of a finite number of symbols)
2.
M will, if carried out without error, produce the desired result in a finite number of steps
3.
M can (in practice or in principle) be carried out by a human being unaided by any machin-
ery save paper and pencil
4.
M demands no insight or ingenuity on the part of the human being carrying it out

Today, we would express the Church–Turing theorem as any task that can be reduced to a series of
incremental steps that can be automated. In programming, we are taught that complex tasks can be
simplified into steps and steps into sub-steps, so that eventually their solution becomes trivial. This
approach is often called divide and conquer, and without it, few computing solutions to complicated
problems would be forthcoming. The sequential processing that the theorem embeds, however, has
probably restrained research into the reasoning behind parallel programming, an area that is likely
to be of continued research in GC.
Analogue computing and geographical problem-solving may go back millennia, yet it is the
Herman Hollerith mechanical tabulator, submitted for his PhD dissertation and patented in 1889,
that is credited with reducing the time needed to process the 1890 census from an estimated 13 years
to just one (Figure 19.1). Hollerith used punched cards, an idea favoured by Charles Babbage in
his analytical engine, borrowed in turn from Joseph Marie Jacquard’s weaving loom of 1805
(Figure 19.2). The link between the census and computing continued into the digital era. Digital
computing’s earliest origins have recently been re-evaluated, and John Vincent Atanasoff and his
student Clifford Berry are now credited with developing and building the first ABC (Atanasoff–
Berry computer) during 1934–1942 at Iowa State College. Contrary to what is stated in many
textbooks, in 1973, the Electronic Numerical Integrator And Computer (ENIAC) patents of John
GeoComputation in 2061 431

FIGURE 19.1  The Hollerith Tabulator, as used for the 1890 US census. (Courtesy of US Census Bureau,
Suitland, MD.)

Mauchly and J. Presper Eckert, then owned by the Sperry Corporation, were voided, on evidence
that Mauchly had seen Atanasoff’s design. In addition in 1945, John von Neumann’s notes entitled
First Draft of a Report on the EDVAC had broadly circulated. These notes recorded and expanded
the computing logic behind the ABC, Mauchly’s ENIAC and the competing Electronic Discrete
Variable Automatic Computer (EDVAC) at the Moore School of Electrical Engineering at the
University of Pennsylvania, thus establishing computing principles as being in the public domain
and giving birth to computer science independent from applied mathematics.
The earliest uses of computers were for computing ballistic trajectories by the US Army, solving
large numbers of simultaneous equations, simple tabulation and cryptology. This changed rapidly,
however, with the advent of the Cold War. The degree to which cartography, geography and com-
putational problem-solving are intertwined is illustrated using two large-scale historical projects:
the semiautomatic ground environment (SAGE) and CORONA. Each of these projects left profound
impacts on GC, which we can extend to form the basis of an examination of GC’s future.

19.2 SAGE
The SAGE was an automatic control system for tracking and intercepting enemy bomber aircraft
used by North American Aerospace Defense Command (NORAD) from the late 1950s into the
1980s. In the early stages of the Cold War, early warning radar systems for mass bomber attacks
over the north polar regions were capable of detecting incoming aircraft, but not of linking together
data with other radars so that flight tracks and interception information could be synthesised.
432 GeoComputation

FIGURE 19.2  Jacquard’s weaving loom of 1805, found still in use in Assam, India. (Author.)

The system could eventually automatically guide defensive aircraft by transmitting instructions
directly to their autopilot systems. The original concept came from George E. Valley and Jay
Forrester at MIT’s Lincoln Laboratories (Forrester went on to build simulation systems for urban
modelling). Principal contractors for SAGE were IBM, Burroughs, the Mitre Corporation (formed
for the project), Bell, Western Electric and the Systems Development Corporation, a RAND corpo-
ration spin-off (Jacobs, 1986). The network of radar sites extended offshore and included the Dew,
Pine Tree and Mid-Canada lines, as well as many control stations in the United States. In 1964,
the project was estimated to have cost between 8 and 12 billion dollars to design and deploy, and
the project pushed the limits of theory and capability in computing, networking and control (NRC,
1999). The IBM AN/FSQ-7 computer used for the project contained 55,000 vacuum tubes, occupied
about 2000 m2 of floor space, weighed 275 tons and used up to 3 MW of power. Telecommunications
for the project were radio and telephone based, but many accounts attribute the early concept of the
Internet and packet switching to SAGE.
The computer workstation for SAGE, a combination computer display and radar scope, was
developed at the RAND corporation in Santa Monica, California (Figure 19.3). The workstation
involved several elements now considered essential components of GIS, input of data from distrib-
uted databases, real-time entry of positions using an on-screen stylus or gun, symbolic encoding
GeoComputation in 2061 433

FIGURE 19.3  A SAGE early warning system radar console. (USAF/IBM SAGE Wikipedia, picture by Joi Ito.)

of tracking data onto point symbols and computed map projections. Then graduate student Waldo
Tobler, who worked on the project, initially created mylar map projection overlays to be placed on
the screens. From there to using the screen to draw the map was a logical next step (Clarke and
Cloud, 2000), and within a year, Tobler (1959) posed and answered the question ‘Do possibilities for
automation exist in cartography?’ Thus, SAGE is part of the creation story for GC, but then it is also
directly linked to computer graphics, computer simulation and the Internet. As regards the latter,
J.C.R. Licklider, who worked on SAGE, later became the first director of the Defense Department’s
Information Processing Techniques Office and initiated the research that led to the creation of the
Advanced Research Projects Agency Network (ARPANET), precursor to the Internet. Similarly,
SAGE was codesigned by Jay Forrester, a professor at MIT’s Lincoln Lab who later pioneered
dynamical systems and urban modelling.

19.3 CORONA
CORONA was the world’s first spy satellite system and the project that invented the field of remote
sensing. CORONA’s origins lie in another RAND project, called FEEDBACK, dating back to 1950.
FEEDBACK, later operationalised as the SAMOS program and the lunar mapping camera (Cargill
Hall, 2001), was a remote sensing system that used long focal length cameras in earth orbit, auto-
matically developed the film and then scanned it for analogue transmission back to earth. Cameras
for the project had their origin in the GENETRIX program, which during 1953–1954 released 640
weather balloons to drift across China and the Soviet Union carrying Itek cameras. The balloons
were designed to be caught in flight by C-119 aircraft after drifting across the denied territory, and
CORONA also borrowed this technology. CORONA became critical when the U-2 spy plane was
shot down over Russia in May 1960. SAMOS’s transmission system was set aside in favour of a
back-up system developed in case of failure in orbit. Fortunately, after 13 actual failures, CORONA
(under the guise of the civilian/biological Discoverer program) acquired its first imagery in August
1960. The program was to profoundly influence US geography and the role that computation was to
play in mapping and remote sensing.
CORONA was a film return system, in that exposed film was spooled into a canister that detached
from the satellite and re-entered the atmosphere. These capsules were caught in mid-air by the same
system designed for GENETRIX, later refined to use C-130 aircraft based out of Hickam Air Force
Base in Honolulu, Hawaii. Over 12 years and 103 successful missions, some lasting months in
orbit, CORONA acquired 800,000 images covering 750 million square nautical miles – 2.1 million
434 GeoComputation

FIGURE 19.4  CORONA Argon KH-5 image of the Santa Barbara channel. Approximately 1965. (Author.)

linear feet of film taking up 39,000 storage canisters (Figure 19.4). Three aspects of CORONA
are critical to the argument here. First, the amount of film and repeat imaging led to the need
for an automated system to locate and recover images on demand, what would today be called
a digital library. Second, the peculiar geometry of the panoramic camera required systems for
automatically geo-registering and re-projecting images into map geometry for display and overlay.
This was initially done in analogue, but later digitally via camera models, creating the first military
GIS (Cloud, 2002). Third, once CORONA became less mission critical to the Cold War as new sys-
tems came on-line, it began to be used for civilian mapping purposes, first for environmental crises
by the Environmental Protection Agency (EPA) and later for routine map revision by the USGS
(Figure 19.5). The USGS created several special mapping centres for this purpose, and by 1968,
‘the Geological Survey became the largest civil agency user of the CORONA imagery’ (Baclawski,
1997). This clandestine cooperation was revealed in 1995, when CORONA imagery and the pro-
gram were declassified (Ruffner, 1995; Peebles, 1997). Thus, CORONA’s history is another good
example of how geographical problem-solving, cartography, applied mathematics and computer
science came together not only to work toward national security but to also invent new technologies
and create new disciplines, among them GC.

19.4  EVOLUTION OF COMPUTER CARTOGRAPHY


As the Cold War gave way to the New World Order, GIS entered the mainstream and geo-position-
ing entered everyday life through navigation and location-finding systems. By way of making some
general observations, consumer products as commodities often seem to have a broader basis in basic
scientific research, with a time lag determined by the degree of sensitivity of the science. These
science efforts are often coordinated nationally or globally and are led by funding efforts spear-
headed by national science institutions or the Department of Defense. The larger institutions that
deal with geography, the Census Bureau, the defence and intelligence agencies, the civilian map-
ping agencies, NASA, the EPA, etc., are all fully invested in the integration of cartography/GISci
GeoComputation in 2061 435

(a)

(b)

FIGURE 19.5  (a) CORONA KH-4 image of Goleta, California, about 1966. (b) Revised USGS 1:24,000
scale map, published the next year.
436 GeoComputation

and computer science. Indeed, a social network theory diagram of the key participants in the history
of the disciplines in the last 60 years would produce a tight set of personal linkages. These links
would play out in joint publication, study, dissertation advising, sabbatical visits and other ways.
There are also more formal links, such as the establishment of GIS sections and conferences under
the Institute of Electrical and Electronics Engineers (IEEE) and the Association for Computing
Machinery (ACM).
In spite of this strong linkage, the pace of computing science is increasing rapidly. New develop-
ments in computer science, new theories and technological changes, will have profound impacts on
GC. As science becomes increasingly specialised, the environments and circumstances that force
cross-cutting and interdisciplinary or multidisciplinary study are increasingly rare. In spite of the
years of research, there remains a gap between cutting-edge research in computing and in GISci. In
our speculation on the future of GC, we assume that this gap will narrow or perhaps disappear. One
wonders what could be done today to make this a certainty for the future.

19.5  FUTURE OF GEOCOMPUTATION


Daniel Hudson Burnham, architect of New York’s Flatiron Building and Washington’s Union
Station, is known for having stated in 1921: ‘Make no little plans. They have no magic to stir
men’s blood and probably will not themselves be realized’. Using this logic, for the sake of dis-
cussing the future of GC, the target year of 2061, 50 years hence, will be chosen. Having been
raised on the wild future technology of the Jetsons, a cartoon which featured elaborate robotic
contraptions, aliens, holograms and whimsical inventions, and it being set in 2062, this seems
appropriate. At the risk of losing focus, the discussion will centre on six trends in computing and
their implications for GC. These are (1) data fusion, sometimes also called integration or interop-
erability, (2) mobility, (3) ubiquity, (4) the evolving GeoWeb, (5) interactive multimedia and (6)
biocomputation. In each case, the situation in 2011 will be used as a jumping-off point for some
ideas about 2061.

19.5.1 Future Fusion
Contemporary issues surrounding the theme of geospatial data fusion largely surround the long-
standing themes of formats, standards and data integration based on the GIS layer model. Major
remaining unsolved problems are how to remove the effects of data collection, such as image and
map tiling, how to integrate across scales and the role of standards. Current research is centred on
the role of open source software within GIS, reflecting movement away from proprietary turnkey
style software systems (Steiniger and Bocher, 2009); on the need to make data accessible and dis-
coverable, not just in searches but by search engines; and on the nature of data ownership, includ-
ing issues of privacy, secrecy, encryption and watermarking (Lopez, 2002). Key elements include
what is usually termed spatial data infrastructures, global or national, including clearing houses,
web portals, user-contributed or volunteered geographic databases and the GeoWeb (Giuliani et al.,
2011). The digital earth is probably the grandest vision for the future, a vision only partly realised
at present (Grossner and Clarke, 2007; Goodchild et al., 2012) (Figure 19.6). The early US lead in
creating the vision was passed up in 2001, only to be taken up in China.
Data fusion also means dealing with new and more available data sources, such as high-resolution
overhead and oblique imagery, lidar, webcams, sensor webs and autonomous vehicles (e.g. Elaksher,
2008; Conover et al., 2010; Bradley and Clarke, 2011). Also present and highly influential is the
NSF-driven vision of the cyberinfrastructure, widely known as grid computing. Current research
focuses on grid architectures for geospatial data handling and analysis systems, web services and
open standards, such as those of the Open Geospatial Consortium (Yang et al., 2010).
Reflecting on current trends that are likely to extend into the future, one trend has been the
cost of memory. Computer science teaches us that memory reflects a paradox of efficiency versus
GeoComputation in 2061 437

FIGURE 19.6  NASA’s digital earth website circa January 2001. (From NASA/author.)

access. With the cost and size of memory falling at a rapid pace, it is easily possible to imagine
a situation where so much disc storage exists that it is highly redundant (sometimes as a back-up
mechanism) and suffers from the versioning problem (i.e. many versions of the same data set and
software functions must be stored, yet differences among them are minor). Retrieval costs and
time may rise, as the digital earth vision is fulfilled and new data sources and very-high-resolution
imagery become commonplace. Also critical is the handling of time. The current approach of keep-
ing a snapshot of a time-static data layer must yield to time stamps on objects, so that geographic
situations at a particular time can be reconstructed. The current generation of searching and spatial
indexing systems largely reflect research of the late twentieth century, and completely new and effi-
cient data structures and indexing may be necessary as we move forward (Samet, 2009). Generally,
as data projects become more digital and on-line, the incremental addition of creating new data will
give way to the demands for update and maintenance. Therefore, change detection and characterisa-
tion will assume new significance. Special purpose web mining tools that detect and label new roads
or settlements will be necessary or even mandatory. Cartography will enter an era when geospatial
data are compiled, identified and indexed automatically, in much that same way that web pages are
currently handled by search engines.
Fast-forwarding the issue of data fusion to 2061, the following may be possible. Images are
likely to no longer be dumb arrays of pixel intensities but instead embed software that continu-
ously searches for, identifies, labels and extracts geographical objects. Just as today’s Microsoft’s
Photosynth and the open source Bundler software (Snavely et al., 2006) mine images from Flickr
and elsewhere to extract viewing geometry and create 3D objects (Figure 19.7), a highly dis-
tributed array of webcams, geosensors, imaging systems and new data streams will be continu-
ously checking on and updating the content of digital earth, bringing interesting changes and
438 GeoComputation

FIGURE 19.7  The Bundler open source image reconstruction software used to create a 3D point cloud from
tourist photos of London’s Trafalgar Square. (From Snavely, N. et al., Int. J. Comput. Vis., 80, 189, 2008.
With permission.)

developments to the attention of those expressing interest. For example, a network of concerned
hydrologists could be alerted via social network software whenever another dam is removed from
a river system anywhere on earth and linked into a live webcam at the site. Images capable of
recognising their own content and in making that information discoverable might truly be called
smart images. This will involve feature level coding, automated metadata creation and complete
lineage coding. It could also recognise event sequences or narratives (NRC, 2010). For example,
the reverse-pointing camera worn on my head could alert me when I’m being approached from
behind in a suspicious way or when one of my friends’ faces is recognised nearby. By 2061, this
capability will be in every camera and smartphone and embedded into our vision systems via
bionics or augmented reality.
By 2061, the current concern with merging spatial and temporal movement, patterns and trends
will be thoroughly researched, have substantial theory and be linked to new suites of methods for
visualising and interpreting movement and actions. Theory will link real time with longer time
horizons, for example, weeks, months, years and geological eras. There will be standardised and
well-understood means by which simulations and artificial environments are integrated with current
and near-time data. Personal guidance systems could be highly customised; for example, a personal
global positioning system (GPS) could recognise a route and ask if we are retracing a visit we made
a year ago. In a group decision-making environment, say a local planning meeting, the entire future
of a building could be simulated, along with the associated uncertainties, and presented to the audi-
ence for approval or modification. Furthermore, these capabilities are likely to embrace all of our
senses and respond to voice, touch and human thought. Just as today’s Internet is still largely word
and text oriented, yet has transformed memory, communication and social activity, future develop-
ments in multisensory input and output are likely to change the meaning and purpose of the web and
its content. The digital earth vision, as a framework on which to hang georeferenced information,
could create a digital globe that is simultaneously all of human memory, the knowledge base of
human experience and history and a day-to-day representation that frames our perceptions, if only
as the base for augmented information.
The latter implies that geography must reframe its role as an academic discipline. When
all geographical data and facts are instantaneously retrievable, they become simply the basis
GeoComputation in 2061 439

around which new knowledge can be acquired. Geography is a synthesis discipline, and synthe-
sis is best done by human interpretation, but at a higher level than simply detecting and recognis-
ing features and events in data. While visiting a site, for example, we could ask the system what
has happened here and what will happen here in the future? This is an extension of Goodchild’s
(2004) request that a digital library be able to answer the request: give me everything that has
happened here. We may be able to ask, What is happening here, why and what will the out-
come be? This is an entirely higher level of spatial reasoning, spatial thinking and geographical
intelligence.

19.5.2 Future Mobility
If ever a suite of technologies was destined to collide with GISci and GC, it was the field now known
as location-based services (Raper et al., 2007). Highly mobile computing devices, often cellular
telephones, which include the ability to interact with global navigation satellite systems (GNSSs)
(usually the GPS), have built new markets and new applications, facilitated navigation and rout-
ing and opened up the geospatial world to a whole new popular audience. When coupled with the
on-line and wireless capabilities of the Internet and the World Wide Web, our current era is largely
determined by services and innovations in this emergent field. Issues today are largely technical,
how strong can wireless service support phone service, how can applications be made to fit onto
small devices with limited displays, what impact is the mobile pad computing device market having
and what impact are spatially enabled social networking applications such as Foursquare having
on how we interact with our geographic environment? Meek et al. (2014) provided their view on
location-based GC, with a vision of how mobile devices might be used in the future for undertaking
analysis and modelling in the field.
Speculation on mobile computing in 2061 can be made with more certainty than in other fields.
The vision of global wireless coverage, as demonstrated by today’s satellite telephones common
in journalism, is already feasible. With four proposed GNSSs likely to be in operation well before
2061, the positioning redundancy is likely to drop receiver errors to the order of millimetres, with
positions acquirable in seconds with 60 Hz frequency. GPS chips have continued to become smaller,
to require less powerful antennas and to be embedded in everything from telephones to shoes and
ski jackets. Next-generation systems, such as microlites, offer the promise of positioning indoors,
underground and underwater, thus eliminating many of the current constraints on GNSS use. Pretty
much any appliance will be able to report its position, velocity and track. Once embedded into sen-
sor networks and combined with other technologies such as video recognition, bar code reading
and radio-frequency identification (RFID), it will be possible by 2061 to track anything, anywhere
(Figure 19.8). The on-line tracking services currently offered by FedEx and UPS are merely hints
of what is to come.
The company Advanced Digital Concepts reported on their website in 2007 that employee Ben
Thompson has implanted an RFID chip surgically into the palm of his hand that can unlock and
start his car automatically by touching a target on the window. With GNSS and wirelessly enabled
devices, such as implanted chips will probably be common in the future, for everything from vali-
dating security to managing employees in smart buildings and on campuses. As a university pro-
fessor, if I am still lecturing to classes in the near future, I would welcome the day when a glimpse
at my iPad as class starts, reveals a map of the students in my class, some sitting neatly in rows
with symbols indicating that they have submitted their homework, some as red line symbols des-
perately converging on the lecture theatre and others remaining as blinking orange dots motion-
less in one place at home or in the coffee shop. Nevertheless, this vision presents challenges. Who
will track 9 billion lifelines in 2061, and for what purpose? Will we still rely on visual analytics to
envision the patterns and flows of human motions (daily commutes, journeys, migrations, pilgrim-
ages), or will automated systems do this? If so, are we interested in normal behaviour or that which
varies from the norm? Can such technologies be used to enforce, identify and convict individuals
440 GeoComputation

(a) (b)

FIGURE 19.8  (a) Female polar bear with satellite collar and RFID tag (arrow). (Photo by USGS.)
(b) Scannable bar code, allowing mobile phones to connect to the web. (Author.)

who are in the wrong place at the wrong time? Will GC have the power and capacity to do agent-
based modelling with 9 billion agents with human traits in real time? If so, what new knowledge
will be created that is of use or of direct benefit? These are intergenerational questions of great
importance. Experience shows that today’s youth are quick to trade positional (Foursquare) and
personal (Facebook) identity for shared information, and I wonder if their grandchildren will feel
the same way in 2061.

19.5.3 Ubiquitous Computing Future


Ubiquitous computing is a description of human–computer interaction in which information han-
dling has been integrated into everyday objects and activities, in such a way that the user may not
be aware that computing is taking place. The paradigm is also known as pervasive computing or
ambient intelligence (Hansmann, 2003; Sui, 2014). At the user level, the core of ubiquitous com-
puting has centred on mobile devices, yet the transformational nature of ubiquitous computing has
really been on the server, not the client side. Over the last decade, the Internet has transformed from
a library model consisting of HTML text–based content in need of searching and browsing to a
cyberinfrastructure or grid, where both content and services require discovery then use. Software’s
clear distinction in the desktop computing model has blurred, as server architectures, data and for-
mat standards and now also tools and services have become web enabled and accessible. The broad
availability of application programming interfaces and their overlap into geographic tools and geo-
browsers has permitted the development of an astounding array of new mashups, applications and
services (Crooks et al., 2014). Also new has been the incorporation of virtual computational power
delivered via the World Wide Web, including grid access and links to high-performance comput-
ing (Adnan et al., 2014; Birkin and Malleson, 2014). The highly distributed nature of these systems
has led to the emergence of cloud computing: the provision of computational resources on demand
via computer networks. It has also led to task dispersal, the so-called crowdsourcing possible when
systems exist that allow users to create and contribute their own data and information (Crooks et al.,
2014). While these developments have already revolutionised GC, by 2061, they promise a future
where living and computing become almost indistinguishable, a world where bits and atoms are
mixed (Negroponte, 1995).
Moore’s law, in which the number of transistors that can be placed on an integrated circuit
doubles about every 2 years, is expected to continue until 2015 or 2020 or later. Yet before 2061,
GeoComputation in 2061 441

it is likely that improvements in silicon-wafer-based computers will produce diminishing returns.


Heat generation, materials shortages and several other factors will contribute to the end of the CPU
chip as we know it (See, 2014). However, well before 2061, it is believed that the first quantum
computers will be more readily available. Quantum computers are nanoscale technologies that use
the spin state and spin space to exploit quantum mechanical phenomena, such as superposition and
entanglement, to perform operations on data. Although quantum computing is in its infancy, NASA
and Google have formed a partnership to invest in the first commercial quantum computer devel-
oped by the Canadian company D-Wave. The computer, which will cost 15 million USD, will reach
speeds 3600 times greater than conventional computers (Jones, 2013). Moreover, quantum algo-
rithms already exist that run exponentially faster than any possible probabilistic classical algorithm.
Quantum computing requires a rethinking of Boolean logic, based on q-bits or qubits. A quan-
tum computer (Figure 19.9) is exponentially more complex than a classical computer with the same
number of bits because describing the state of n qubits requires 2n complex coefficients. Measuring
the qubits would produce a classical state of only n bits, but such an action would also destroy the
quantum state. Instead, a quantum computer operates by modifying qubits with a fixed sequence
of quantum logic gates called a quantum algorithm. Theoretically, any problem solvable with a
quantum computer can also be solved with a traditional computer. The difference is speed, and in
a few known instances, quantum computers could make computationally impossible or intractable
problems solvable. A 300 qubit computer is capable of describing 2300 states, a value of about 1090,
exceeding the number of atoms in the known universe. Computing capacity and storage would be
immense, and computation would be extremely fast, even for difficult problems. Pseudorandom
number generators would yield to true randomness. If quantum computers are also small as implied
by the promise of nanotechnology, then 2061 could have available computing power for almost
everything that humans use.
GeoQuantumComputation would be a world in which all objects could compute. The Internet
of things could become an Internet of intelligent things. Coupling computing power with nano-
machines such as actuators and motes would reinvent computing itself. With millimetre accu-
racy positioning within microseconds, even every molecule could have memory and network
connections and perform operations. Steel girders could measure and report their level of stress;
nanorobots could examine the human circulatory system from the inside, recognising health
problems as they develop; and every stem of wheat could be monitored for its health, moisture
and insolation. A paper (or plastic) map could be its own digital analogue! Perhaps at some time

FIGURE 19.9  Qubit coupled to a resonator. (From Erik Lucero, Quantum Research Laboratory, University
of California, Santa Barbara, Santa Barbara, CA.)
442 GeoComputation

soon after 2061, living matter will have computing power placed directly into its DNA, rather
than it having to be implanted surgically or worn.

19.5.4 Future GeoWeb
The Internet and the World Wide Web of today are still shaped by the information vehicles that gave
them birth, including the file transfer protocol, the hypertext transfer protocol, e-mail and search
engines. The so-called Web 2.0 has extended the set to include social networking, Twitter and others
(see Crooks et al., 2014 for their view of the evolving GeoWeb). To these have been added GeoWeb
applications that exploit position, such as Foursquare and EchoEcho. Ubiquitous GPS-enabled wire-
less devices have created virtual organisations of users who share everything from restaurant tips
to photos. Some central sites exploiting user-supplied data have created maps and databases, while
others have used the web as a new distribution medium for everything from government reports to
books. After a generation of the web as an archive, clearing houses first assisted finding, and then
portals became the means to browse and locate. With Wikipedia and Google, the web is fast taking
the place of the collective human memory.
This latter trend will continue. By 2061, the web will have become both human memory and
history and the means by which to access them. The virtualisation of the digital earth will mean
that reality and virtual reality will overlap. Such a mirror world will offer virtual travel to all such
that one’s memory of, say, Prague will be a real memory of a virtual experience as often as a real
memory of an actual experience that is every bit or even more real than the actual. Such a vision
system may require reality sliders that allow us to control how much of our reality is actual and
how much is computed. This would require a reinvention of education; just as today’s students check
lecture facts in real time on their iPhones with Google, students in 2061 will be able to experience
rather than take for granted the world around them. Fields like information visualisation and visual
analytics in the future may play the roles that philosophy or mathematics does today. This paragraph
may be better presented to its audience in 2061 as Figure 19.10.

19.5.5 Interactive Multimedia in 2061


We live in an age of interactivity. A child placed in front of a computer with a mouse clicks on
everything, expecting some action or event to happen as a result. From simple computational begin-
nings in Wikis and HyperCard stacks, computer interaction now includes words, sounds, video,
speech recognition, audio and music. Media which developed separately, telephones and e-mail, for
example, have merged into new devices and systems. The smartphone and interactive tablet have
recently redefined how we interact with our computers. I recently found myself dragging my hands
outward in front of a projection screen, expecting the image on it to enlarge!
Trends in interactive multimedia can be extended into the future. Context-sensitive comput-
ers can adapt to the conditions under which they are being used, at night or in direct sunlight,
for example, or alone in an office versus in a theatre audience. Environmental sensing will include
not only heat, light, location and moisture but also the user’s emotional state, fear, strain or fatigue.
Interacting with a computer is already extending beyond typing, pointing and speaking to include
gesture, eye direction and body language. In the future, computers will be able to recognise more
complex human interactions, group dynamics, collective activity and degree of familiarity. An
important role may be to detect when a meeting is getting out of hand, when humans intend to fight
or when the computer should protect its owner’s privacy.
A higher level of interaction when coupled with augmented reality would allow rich documentation.
Rather than serving up a manual page, a computer could easily find the most approved video tuto-
rial and select the part most suitable. Intelligent devices could summon specialised help depending
on what accident has happened. Using haptics, the computer could both be controlled and provide
user feedback; for example, a robotic frame could both support weakened legs and provide force
GeoComputation in 2061 443

FIGURE 19.10  The two paragraphs in Section 19.5.4 placed into a word cloud using Wordle (www.wordle.
net). Software and fonts copyright Jonathan Feinberg.

feedback to strengthen the muscles. By 2061, all five of the senses will be available for human–com-
puter interactions. Smell and taste have remained almost unexploited so far, but are powerful and
evocative and highly spatial. Human suffering and adaptation on losing a sense are well known, and
here, the computer could also play an important role.

19.5.6  Biocomputational Future


Biological computation is a catch-all phrase for four distinct subfields: biomolecular computation (e.g.
DNA sequencing), computational biology (use of simulation in biological systems), bioinformatics
444 GeoComputation

(management of biological information) and biological computation (simulating living processes).


Laffan (2014) provides a comprehensive overview of the application of GC methods to geolocated
biological data. However, two new developments will affect BioGeoComputation by 2061: artificial
life and biological computers.
Artificial life has often seen the creation of programs and models that emulate biological
processes, such as plant succession, disease dispersal, neural networks or genetic algorithms.
Biomimicry has recently expanded to include machines that simulate biological adaptations, such
as fins, textured skin and autonomous microdrones that fly like bees or hummingbirds. Many devel-
opments have taken place in the last decades in creating artificial limbs, even under thought control
by their users. Both of these computational areas can be extended into the future.
The genetic unravelling of DNA that opened up bioengineering implies that living organisms
could be bred or engineered around computing tasks. Rather than encode an algorithm to simu-
late land use change, for example, a solution could be bred by combining genetic virus fragments
and having them compete to best mimic the process across space. Agent-based models could be
physically placed into simulated or even natural environments to determine where transportation
bottlenecks will occur. Experience shows that genetically engineered foods often contaminate the
natural environment, so care would have to be taken not to allow these biofragments to be self-
sustainable organisms. Just as in quantum computing, there may be a means to tap DNA itself for
computation by emulating gates and switches, allowing computers or solutions to be grown or
assembled.
Far more likely is the increased use of computing devices inside or on the human body. While
some applications will allow disabilities to be overcome, others will enhance the senses, truly the
stuff of superhero comics. There is essentially no difference between wearing augmented reality
glasses that can display a collection of blueprints in correct position and transparent perspective
across a building in three dimensions on the one hand and actually having x-ray vision on the other.
Already, body scans are replacing human searches for airport security. A digital earth promises to
deliver any piece of information anywhere on demand. Increasingly, the ties of distance to geogra-
phy will weaken, just as the international computer expertise market has opened up the world from
Bangalore to Japan. Not only the where but also the who of computing will change and reconfigure
as a result. Clearly, all of humankind will be users, but who will be the designers, developers and
builders once these concepts come to fruition?

19.6 CONCLUSION
In this chapter, we began by examining the thesis that the twentieth-century histories of computing
and of GISci, including cartography and remote sensing, share more in common than is well under-
stood. GC is that self-selected branch of both fields that overlaps. After examining two examples
of these blended histories, the chapter selected six topics of current interest to GC, explored the
present state of the art and speculated on where the issues will be 50 years into the future. All six
topics – fusion, mobility, ubiquity, the GeoWeb, interactive multimedia and biocomputation – reveal
some extraordinary potential changes in the future, sufficient that the challenges of today will be
overcome and that a new set of challenges will emerge to face our grandchildren.
A closing theme is that of preparation. What sets of new skills are necessary to be a designer, a
developer or a user of the next generation of technologies and how are they best learned and taught?
What geographic and computational theory will survive and still show relevance in the years ahead?
How can today’s faculty and professionals retrain themselves for a future where today’s new tech-
nologies are primitive? How will the students who are to inherit this future get the interdisciplinary
and even ultradisciplinary skills necessary to flourish? The need for truly interdisciplinary educa-
tion is now clear, yet institutions have been slow in responding. Geography seems well positioned
intellectually to lead this interdisciplinary shift (Clarke, 2011), but to do so, the discipline needs to
lose its internal divisions and further embrace computational geography and GIS. Already, other
GeoComputation in 2061 445

fields are exploring spatial cognition, human factors, visual analytics, augmented reality and spatial
thinking. What can be done today to position GC for what is yet to come?
One thing that is clear is that geographers know too little computer science and vice versa.
Any effort that blends the disciplines will help, and where this can be encouraged, it should be.
Geographers should know how to program, how to manipulate the web and how to serve data across
the Internet and about the quirks of numerical operations. Similarly, the stereotypical computer sci-
ence student needs to lift his or her head up from a computer screen and take in the richness of the
world around him or her. All who work across the field owe it to themselves to follow research and
developments in both disciplines, a demanding task. Perhaps most of all, GC needs to keep an eye
on the future, to better know how to mould it. John Pierce (1910–2002) stated that ‘after growing
wildly for years, the field of computing appears to be reaching its infancy’. I, for one, regret that I
will not live to see GC in its prime.

REFERENCES
Adnan, M., Longley, P. A., Singleton, A. D., and Turton, I. 2014. Parallel computing in geography. In
GeoComputation, 2nd edn., eds. R. J. Abrahart and L. See, pp. 49–68. Boca Raton, FL: Taylor &
Francis.
Baclawski, J. A. 1997. Corona: The foundation for a mapmaking revolution. In CORONA: Between the Sun and
the Earth. The First NRO Reconnaissance Eye in Space, ed. R. A. McDonald. pp. 231–241. Bethesda,
MD: American Society for Photogrammetry and Remote Sensing.
Birkin, M. and Malleson, N. 2014. e-Research and GeoComputation. In GeoComputation, 2nd edn., eds.
R. J. Abrahart and L. See, pp. 241–258. Boca Raton, FL: Taylor & Francis.
Bradley, E. S. and Clarke, K. C. 2011. Outdoor webcams as geospatial sensor networks: Challenges, issues and
opportunities. Cartography and Geographic Information Science 38(1): 5–22.
Cargill Hall, R. 2001. SAMOS to the Moon: The Clandestine Transfer of Reconnaissance Technology between
Federal Agencies. Chantilly, VA: Office of the Historian, National Reconnaissance Office.
Clarke, K. C. 2011. Exploring the past and future of our planet: Not bit-by-bit but all at once. The Professional
Geographer 63(3): 320–324.
Clarke, K. 2003. Geocomputation’s future at the extremes: High performance computing and nanoclients.
Parallel Computing 29(10): 1281–1295.
Clarke, K. C. 1999. Visualizing different geofutures. In Geocomputation: A Primer, eds. P. Longley, S. Brooks,
R. McDonnell, and B. Macmillan, pp. 119–137. London, U.K.: John Wiley & Sons Ltd.
Clarke, K. C. and Cloud, J. G. 2000. On the origins of analytical cartography. Cartography and Geographic
Information Science 27(3): 195–204.
Cloud, J. 2002. American cartographic transformations during the Cold War. Cartography and Geographic
Information Science 29(3): 261–282.
Conover, H., Berthiau, G., Botts, M., Goodman, M., Li, X., Lu, Y., Maskey, M., Regner, K., and Zavodsky,
B. 2010. Using sensor web protocols for environmental data acquisition and management. Ecological
Informatics 5(1): 32–41.
Crooks, A., Hudson-Smith, A., Croitoru, A., and Stefanidis, A. 2014. Evolving GeoWeb. In GeoComputation,
2nd edn., eds. R. J. Abrahart and L. See, pp. 69–96. Boca Raton, FL: Taylor & Francis.
Elaksher, A. F. 2008. Fusion of hyperspectral images and lidar-based dems for coastal mapping. Optics and
Lasers in Engineering 46(7): 493–498.
Foster, I. and Kesselman, C. (eds.) 1999. The Grid: Blueprint for a New Computing Infrastructure. San
Francisco, CA: Morgan Kaufman.
Foster, I., Kesselman, C., Nick, J. M., and Tuecke, S. 2002. The physiology of the grid: An open grid
services architecture for distributed systems integration. Open Grid Service Infrastructure WG, Global
Grid Forum. http://docencia.ac.upc.edu/dso/papers/ogsa.pdf, accessed on 18/02/2014.
Foster, I., Kesselman, C., and Tuecke, S. 2001. The anatomy of the grid: Enabling scalable virtual organizations.
Lecture Notes in Computer Science, Vol. 2150. Berlin, Germany: Springer.
Giuliani, G., Ray, N., and Lehmann, A. 2011. Grid-enabled spatial data infrastructure for environmental
sciences: Challenges and opportunities. Future Generation Computer Systems: The International Journal
of Grid Computing—Theory, Methods and Applications 27(3): 292–303.
Goodchild, M. F. 1992. Geographical information science. International Journal of Geographical Information
Systems 6: 31–46.
446 GeoComputation

Goodchild, M. F. 2004. The Alexandria digital library: Review, assessment, and prospects. D-Lib Magazine 10: 5.
Goodchild, M. F. 2007. Citizens as voluntary sensors: Spatial data infrastructure in the world of Web 2.0.
International Journal of Spatial Data Infrastructures Research 2: 24–32.
Goodchild, M. F., Guo, H., Annoni, A., Bian, L., de Bie, K. et al. 2012. Next-generation digital Earth.
Proceedings of the National Academy of Sciences United States of America, 109(28): 11088–11094.
Grossner, K. E. and Clarke, K. C. 2007. Is Google Earth, “Digital Earth”—Defining a Vision. In Proceedings,
Fifth International Symposium on Digital Earth, San Francisco, CA, June 5–9, 2007.
Grossner, K. E., Goodchild, M. F., and Clarke, K. C. 2008. Defining a digital earth system. Transactions in GIS
12(1): 145–160.
Hansmann, U. 2003. Pervasive Computing: The Mobile World. New York: Springer.
Jacobs, J. F. 1986. The SAGE Air Defense System: A Personal History. Bedford, MA: MITRE Corporation.
Janelle, D. G., Hespanha, S. R., Goodchild, F. M., and Goodchild, M. F. 2009. Workshops and national dis-
semination of geographic analysis in the social sciences: The CSISS experience in the USA. Journal of
Geography in Higher Education 33(Suppl. 1): S88–S103.
Jones, N. 2013. Google and NASA snap up quantum computer. Nature 497: 417–418. doi:10.1038/
nature.2013.12999.
Laffan, S. W. 2014. GeoComputation: Applications in biology. In GeoComputation, 2nd edn., eds. R. J. Abrahart
and L. See, pp. 125–142. Boca Raton, FL: Taylor & Francis.
Lopez, C. 2002. Watermarking of digital geospatial datasets—A review of technical, legal and copyright issues.
International Journal of Geographical Information Science 16(6): 587–607.
Meek, S., Priestnall, G., and Abrahart, R. J. 2014. Location-based GeoComputation: A strategic rethinking of
the opportunities for outdoor research afforded by mobile devices. In GeoComputation, 2nd edn., eds.
R. J. Abrahart and L. See, pp. 357–376. Boca Raton, FL: Taylor & Francis.
National Research Council. 1999. Funding a Revolution: Government Support for Computing Research.
Washington, DC: National Academies Press.
National Research Council. 2010. New Research Directions for the National Geospatial Intelligence Agency.
Workshop Report. Washington, DC: National Academies Press.
Negroponte, N. 1995. Being Digital. New York: Vintage.
Openshaw, S. and Abrahart, R. J. 2000. GeoComputation. London, U.K.: Taylor & Francis.
Peebles, C. 1997. The CORONA Project: America’s First Spy Satellites. Annapolis, MD: Naval Institute Press.
Raper, J., Gartner, G., Karimi, H., and Rizos, C. 2007. A critical evaluation of location based services and their
potential. Journal of Location Based Services 1(1): 5–45.
Ruffner, K. C. (ed.) 1995. CORONA: America’s First Satellite Program. Washington, DC: Center for the Study
of Intelligence, Central Intelligence Agency.
Saalfeld, A. 2000. Complexity and intractability: Limitations to implementation in analytical cartography.
Cartography and Geographic Information Science 27(3): 239–249.
Samet, H. 2009. Database and representation issues in Geographic Information Systems (GIS). Lecture Notes
in Computer Science 5886: 1–6.
See, L. 2014. Limits to GeoComputation. In GeoComputation, 2nd edn., eds. R. J. Abrahart and L. See,
pp. 417–428. Boca Raton, FL: Taylor & Francis.
Snavely, N., Seitz, S. M., and Szeliski, R. 2006. Photo tourism: Exploring photo collections in 3D. ACM
Transactions on Graphics 25(3): 835–846.
Steiniger, S. and Bocher, E. 2009. An overview on free and open source GIS developments. International
Journal of Geographical Information Science 23(10): 1345–1370.
Sui, D. 2014. Ubiquitous computing, spatial big data and open GeoComputation. In GeoComputation, 2nd edn.,
eds. R. J. Abrahart and L. See, pp. 377–396. Boca Raton, FL: Taylor & Francis.
Tobler, W. R. 1959. Automation and cartography. Geographical Review 49(4): 526–534.
Yang, C. W., Raskin, R., Goodchild, M., and Gahegan, M. 2010. Geospatial cyberinfrastructure: Past, present
and future. Computers, Environment and Urban Systems 34(4): 264–277.
Geographic Information Systems

“A useful mix of classical and novel summaries covering the wide breadth of
geocomputational issues. This updated version of the original volume based on
the groundbreaking 1996 conference is a ‘must have’ for those in this field.”
—A. Stewart Fotherington, Director, Centre for Geoinformatics,
University of St. Andrews, Scotland, United Kingdom

“… timely statement of the state of the art of this flourishing field … The selection
of chapter topics and authors has been done very well indeed. In a nutshell, this
is the perfect new volume for the experienced researcher’s shelf and a ‘must
have’ for post-graduates looking for a foothold.”
—Brian Lees, University of New South Wales, Canberra, Australia

“I welcome this second edition of this seminal book on GeoComputation. …


brings us right up to date and it is a must-have volume for all students and
researchers interested in handling geographical data.”
—P.M. Atkinson, University of Southampton, United Kingdom

See What’s New in the Second Edition:


• Coverage of ubiquitous computing, the GeoWeb, reproducible research,
open access, and agent-based modelling
• Expanded chapter on genetic programming and a separate chapter
developed on evolutionary algorithms
• Ten chapters updated by the same or new authors and eight new
chapters added to reflect the state of the art

A revision of Openshaw and Abrahart’s seminal work, GeoComputations, Second


Edition retains influences of its originators while also providing updated, state-
of-the-art information on changes in the computational environment. In keeping
with the field’s development, this new edition takes a broader view and provides
comprehensive coverage across the field of GeoComputation.

K14459
6000 Broken Sound Parkway, NW
Suite 300, Boca Raton, FL 33487 ISBN: 978-1-4665-0328-1
711 Third Avenue
New York, NY 10017 90000
an informa business 2 Park Square, Milton Park
www.crcpress.com Abingdon, Oxon OX14 4RN, UK

9 781466 503281
w w w.crcpress.com

You might also like