This paper focuses on recommender system for agriculture in Mali called SyrAgri. The goal is to guide and improve the quality-of-experience of farmers by offering them good farming practices according to their needs. Two types of recommendations are essentially taken into account: the recommendation of crops and the recommendation of farming practices based on some predefined criteria which are: yield, life cycle of the crop, type of soil, growing season, etc. SyrAgri also informs farmers about crop rotation and the similarity between different types of crops based on the following parameters: crop families, growing seasons and appropriate soil types. For the development of this system a hybrid recommendation approach was used: demographic, semantic and collaborative methods. Each method is adapted to a specific stage of a user’s visit to the system. The demographic approach is first activated in order to offer recommendations to new users of the system, which resolves the concept of cold start (immediate inclusion of a new item or a new user in the system). The semantic approach is then activated to recommend to the user items (crops, agricultural practices) semantically close to those (s)he has appreciated. Finally, the collaborative approach is used to recommend items that similar users have liked.
Strategic modelling with a panoramic view plays an important role in decision-making problems. It offers the possibility of generating different solutions before making a decision. This is particularly relevant in critical situations. This article addresses the problem of allocating resources, whether financial, material or human, so that it is optimal under a given set of constraints and inter-dependencies with other systems. To do this, existing strategies such as those of Colonel Blotto are studied in order to evaluate them according to some criteria, including the heterogeneity or homogeneity of resources and/or battlefields. Based on the results of these configurations, we propose distributed strategic learning methods to find better resource allocation strategies. The proposed algorithms are implemented under various scenarios, including incomplete information. Case studies are carried out to test the effectiveness of these new strategies compared to previous ones. A complexity analysis of the different algorithms is also presented.
The purpose of this study is to find the right model to plan and predict future evolution paths of an evolving software architecture based on past evolution data. Thus, in this paper, a model to represent the software architecture evolution process is defined. In order to collect evolution data, a simple formalism allowing to easily express software architecture evolution data is introduced. The sequential pattern extraction technique is applied to the collected evolution styles of an evolving software architecture in order to predict and plan the future evolution paths. A learning and prediction model is defined to generate the software architecture possible future evolution paths. A method for evaluating the generated paths is presented. In addition, we explain and validate our approach through a study on two examples of evolution of component-oriented software architecture.