Voting for movies: the anatomy of a recommender system

Personal assistant agents embody a clearly beneficial application of intelligent agent technology. A particular kind of assistant agents, recommender systems (RSs), can be used to recommend items of interest to users [l]. To be successful, such systems should be able to model and reason with user preferences for items in the application domain. We are developing a movie recommender system that caters to the interests of a user. Our primary concern is to utilize a reasoning procedure that can meaningfully and systematically tradeoff between conflicting user preferences. We have adapted mechanisms from voting theory that have desirable guarantees regarding the recommendations generated from stored preferences. We provide multiple query modalities by which the user can pose unconstrained, constrained, or instance-based queries. Typically a domain has several features or dimensions. Each dimension consists of a collection of elements, and the preferences of a user are given by his/her ratings of those elements on some ordinal or cardinal scale. To obtain a recommendation rating for a given item, an RS considers the feature values of that item, obtains ratings for these values from corresponding dimensions, and then combines these ratings by some evaluation scheme.