In this project we are building an expert system capable of giving recommendations about wines taking into account the occasion for which it is going to be used, the type of food it is going to be served with and the user’s tastes in terms of aromas and flavors. However, WineBot can also receive direct instructions about a specific type of wine. This is done through a natural communication in Spanish language, having the possibility of interacting through visual means with written information input, as well as interacting in spoken form by issuing a single complete order. The WineBot expert system can be a great ally to get into and start to know about your preferences when choosing a wine, but if you already have experience in the area, with WineBot you can easily consult new types of wine. An implementation was made using the Python language which helps us to create the user interface in which we try to maintain a clear display of information to correctly guide you through the path to the best recommendation. We also made use of PROLOG, which allows us to contain the information and establish the necessary relationships to optimize the search process as indicated by the user. All this was combined to provide an executable version capable of running on any computer with an updated Windows operating system without the need for a major installation or running through a code interpreter.

Project Goals

    Build an expert system with short execution times and without rigorous installation requirements, as well as clear and precise indications on the information necessary for the system to make a good recommendation.

    To have the capacity to capture the necessary preferences that allow to have as a result an effective and pleasant recommendation for the user without the need to enter an excessive amount of information. Maintaining in each of the variables taken into account a wide variety of options trying to cover the tastes and contexts of most users. Providing more than one form of interaction with the system.

    Through any of the operating methods, i.e. oral or written, have the ability to capture the relevant information provided by the user to be able to recommend nine purchase options from three types of grapes that make up a class of wine, pre-selected with rigor and taking into account the knowledge recorded theoretically.

Project Requirements & Specifications

This project has been made as part of the intelligent systems course taken at the bachelor. It is possible to obtain the full code of the project at: GitHub - WineBot. And the executable at: Download - WineBot. A detailed information about the project can be found at the specific website of the project.