Please note that downloaded papers should not be further redistributed or copied without permission from the copyright holder.
In recent years, software agents have been developed which assist users with tasks such as information filtering or information retrieval. Such systems have evolved from simple agents that refer to a user-defined script to filter incoming mail, to complex Web agents that not only learn their user's preferences but actively seek out Web pages that could be of interest. To provide personal assistance, an agent needs information about the user's interests and needs. This paper reviews how different mechanisms have been used to define a user profile, from simple rules to complex machine learning algorithms. Problems with user-defined scripts are discussed, as are the issues involved with integrating learning mechanisms into agents. One approach currently being developed to learn within an agent environment is then described.