This is a Python implementation of the paper Recommending Customizable Products: A Multiple Choice Knapsack Solution by Aravind Sivaramakrishnan, Madhusudhan Krishnamachari and Vidhya Balasubramanian. We published this work at the 5th International Conference on Web Intelligence, Mining and Semantics at Larnaca, Cyprus in July 2015.
ecommender systems have become very prominent over the past decade. Methods such as collaborative filtering and knowledge based recommender systems have been developed extensively for non-customizable products. However, as manufacturers today are moving towards customizable products to satisfy customers, the need of the hour is customizable product recommender systems. Such systems must be able to capture customer preferences and provide recommendations that are both diverse and novel. This paper proposes an approach to building a recommender system that can be adapted to customizable products such as desktop computers and home theater systems. The Customizable Product Recommendation problem is modeled as a special case of the Multiple Choice Knapsack Problem, and an algorithm is proposed to generate desirable product recommendations in real-time. The performance of the proposed system is then evaluated.
At the time of this commit, the code on this repository has not been organized well. This will soon be fixed. In case of any queries, you can get in touch with the authors.