Location-aware applications use the location of users to adapt their behaviour and to select the relevant information for users in a particular situation. This location information is obtained through a set of location sensors, or from network-based location services, and is often used directly, without any further processing, as a parameter in a selection process. In this paper we propose a method to infer high-level context information from a series of position records obtained from a GPS receiver. This method, based on a spatial clustering algorithm, automatically estimates the location of the places where a user lives and works. The achieved results show that the proposed approach rapidly converges to the real locations, and that the proposed algorithm can be used to simultaneously estimate both the home and workplace, while adapting to a wide range of spatio-temporal human behaviours.This work was developed as part of the LOCAL project (http://get.dsi.uminho.pt/local) funded by the Fundação para a Ciência e Tecnologia through grant POSI/CHS/44971/2002, with support from the POSI program