Web personalisation systems are used to enhance the user experience by providing tailor-made services
based on the user’s interests and preferences which are typically stored in user profiles. For such systems
to remain effective, the profiles need to be able to adapt and reflect the users’ changing behaviour. In this
paper, we introduce a set of methods designed to capture and track user interests and maintain dynamic
user profiles within a personalisation system. User interests are represented as ontological concepts
which are constructed by mapping web pages visited by a user to a reference ontology and are
subsequently used to learn short-term and long-term interests. A multi-agent system facilitates and
coordinates the capture, storage, management and adaptation of user interests. We propose a search
system that utilises our dynamic user profile to provide a personalised search experience. We present
a series of experiments that show how our system can effectively model a dynamic user profile and is
capable of learning and adapting to different user browsing behaviours.