Course Contents 
The course provides an overview of geographical information systems (GISs), and of how they can be used in practice to solve realworld problems. It also focuses on providing students with theoretical background knowledge of the concepts, data types and associated softwareinternal processes of GIS packages.
The course has both a theoretical part and a practical part where students do exercises to get handson experience with GIS packages (opensource software are used, and scripting with GIS libraries is also covered).
The course has 3 parts:
Introduction to GIS  Topics covered include:  spatial data modelling (vector and raster spatial models),  geodata manipulation (editing, digitizing, importing, converting, etc.),  overview of spatial analysis operations,  the production of interpretable output (e.g. maps).
Algorithms and data structures for GIS  What is happening when you click on a button in a GIS? This is what will be covered. Topics include:  data structures for vector and raster data (including topological data structures),  basic algorithms for vector (pointinpolygon, Boolean operations, intersection, area, etc.),  basic algorithms for raster (encoding, quad trees, map algebra),  networks and related algorithms such as shortestpath.
Applications of GIS to realworld problems  Realworld problems related to the built environment, such as determination of the most suited track for constructing a new railway, will be solved with the help of GIS packages.

Study Goals 
The main objectives of the course are that: (1) students can understand what a GIS is (listing its different parts and explaining what can be done with it); (2) identify, classify and evaluate the various internal running processes and algorithms used when they click on a button in a GIS package; (3) apply their knowledge to solve practical problems with it.
After the course the student will be able to: 1. explain what a GIS is and what realworld problems it can help solve; 2. describe and compare the two conceptualisations of space (field versus objects), and how these are modelled in a GIS; 3. use a GIS to visualise, convert and analyse geographical datasets coming from different sources; 4. list the main spatial data structures used in GIS, compare and discuss them (eg in terms of memory usage and of speed); 5. explain, analyse and discuss how the basic spatial operations are performed; 6. given a specific geographical problem, analyse and identify which data structure and algorithms are the most suitable, and justify why; 7. generalise their knowledge of GIS to solve complex problems.
