WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Developpement d'un systeme pour la prévision des prix des produits agricoles par l'analyse des données et l'apprentissage automatique: cas du maà¯s


par Mario Merveille Olufemi LIGAN
Institut national supérieur de technologie industrielle de Lokossa - Génie Electrique et Informatique Option Informatique et Télécommunication 2023
  

Disponible en mode multipage

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

    REPUBLIQUE DU BENIN
    ********
    MINISTERE DE L'ENSEIGNEMENT SUPÉRIEUR ET
    DE LA RECHERCHE SCIENTIFIQUE
    *****************

    THÈME :

    UNIVERSITE NATIONALE DES SCIENCES, TECHNOLOGIES, INGÉNIERIE ET MATHÉMATIQUES D'ABOMEY

    *************

    INSTITUT NATIONAL SUPERIEUR DE TECHNOLOGIE INDUSTRIELLE DE LOKOSSA

    Département : Option :

    Génie Electrique et Informatique Informatique et Télécommunication

    (GEI) (IT)

    RAPPORT DES TRAVAUX DE FIN D'ÉTUDES POUR L'OBTENTION DU DIPLÔME DE LICENCE PROFESSIONNELLE

    DEVELOPPEMENT D'UN SYSTEME POUR LA PRÉVISION DES PRIX
    DES PRODUITS AGRICOLES PAR L'ANALYSE DES DONNÉES ET
    L'APPRENTISSAGE AUTOMATIQUE : CAS DU MAÏS

    Rédigé et présenté par :

    Sabin ASSOGBA & Mario LIGAN

    Lieu de stage : INSTI

    Tuteur de stage et Superviseur :

    Dr M. Abel KONON Maître-Assistant CAMES

    Année Académique : 2022-2023

    DEDICACES 1

    Je rends grâce à Dieu tout puissant et je dédie ce document à mes parents LIGAN Brice et ADJAÏ Alphonsine, pour leur patience, leur détermination, leur amour et leurs sacrifices.

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    Mario M. O. LIGAN

    DEDICACES 2

    Je rends grâce à Dieu tout puissant et je dédie ce document à mes parents ASSOGBA K. Robert et DOSSA Yvette, pour leur patience, leur détermination, leur amour et leurs sacrifices.

    Sabin M. ASSOGBA

    2

    -

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    REMERCIEMENTS

    Le présent travail que nous avons réalisé n'a été possible que grâce aux soutiens, apports et conseils du Dieu tout puissant et de certaines personnes, grands acteurs de nos études universitaires. En signe de gratitude et de reconnaissance, nous tenons vivement à remercier :

    - Pr GUIDI Clotilde, Directrice de l'INSTI pour tous les sacrifices qu'elle a consentis pour que notre formation soit de qualité ;

    - Dr (MC) Sèdjro Yvette KIKI TANKPINOU, Directrice adjointe de l'INSTI, pour tous les sacrifices et efforts qu'elle et son équipe ont fournis pour notre succès académique;

    - Dr (MA) KONNON M. Abel, notre chef de département et aussi notre superviseur, pour nous avoir donné l'opportunité de travailler sur ce sujet d'une part, puis sa disponibilité et son engagement d'autre part;

    - Tous nos enseignants, pour avoir joué un rôle crucial dans notre formation;

    - Les membres du jury pour avoir sacrifié leur temps pour examiner et apprécier notre travail de fin d'étude.

    Aussi à tous ceux qui de près ou de loin nous ont accompagnés et soutenus.

    3

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    TABLE DES MATIÈRES

    Dédicaces 1

    Remerciements 2

    TABLE DES ATIÈRES 4

    Liste des acronymes et abréviations 6

    Liste des figures 7

    Liste des tableaux 8

    Cahier des charges 9

    RESUME 10

    ABSTRACT 11

    INTRODUCTION 12

    Chapitre 1 : 13

    1.1 Présentation de la structure de formation 13

    1.1.1 Historique 13

    1.1.2 Situation géographique 14

    1.1.3 Organisation structurelle 14

    1.1.4 Domaine et formations 15

    1.1.5 Unités d'accueil de l'INSTI 17

    Chapitre 2 19

    2.1 Apprentissage de la technologie TensorFlow 19

    2.1.1 Présentation de la technologie . 19

    2.1.2 Processus d'apprentissage 19

    2.2 Travaux sur le fichier de rapports de supervision de stage de fin d'étude des

    apprenants de licence 3 20

    2.2.1 Fonctions ajouté 20

    2.2.2 Méthodologie 22

    4

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    2.3 Introduction aux tâches administratives 22

    2.4 Travaux sur la plateforme Gestion de TFE 23

    2.5 Création d'une application web de gestion des rattrapages et des reprises 25

    Chapitre 3 28

    3.1 Présentation du projet de fin d'étude 28

    3.1.1 Problématique 28

    3.1.2 Pertinence et nouveauté du thème . 29

    3.1.3 Objectifs 30

    3.2 Démarche méthodologique 30

    3.3 Analyse fonctionnelle 31

    3.4 Choix des outils et technologies . 32

    3.4.1 Langages informatiques 32

    3.4.2 Frameworks 34

    3.4.3 Outils de conception et de modélisation . 37

    3.4.4 Algorithme de prédiction 38

    Chapitre 4 40

    4.1 Développement et fonctionnement de l'algorithme 40

    4.2 Processus de communication entre l'application Flask et Laravel . 43

    4.3 Modélisation en UML 45

    4.3.1 Modélisation des cas d'utilisation 45

    4.3.2 Modélisation des diagrammes de classe 46

    4.3.3 Élaboration des diagrammes de séquence 47

    4.4 Réalisation de la plateforme de prévision HarvestInsight . 48

    4.4.1 Page d'accueil . 49

    4.4.2 Page de prévision .. 49

    4.5 Précision de l'algorithme 50

    CONCLUSION 52

    Références bibliographiques 53

    Webographie 54

    5

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    LISTE DES ACRONYMES

    CAMES : Conseil Africain et Malgache pour l'Enseignement Supérieur

    CSS : Cascadant Style Sheets

    DT : Diplôme Technique

    INSTI : Institut National Supérieur de Technologie Industrielle

    IUT : Institut Universitaire de Technologie

    GEI : Génie Électrique et Informatique

    HTML : HyperText Markup Language

    HTTP : HyperText Transfer Protocol

    MAEP : Ministère de l'Agriculture, de l'Elevage et de la Pêche

    ODD : Objectifs de développement durable

    PHP : Hypertext Preprocessor

    TFE : Travaux de Fin d'Etudes

    UAC : Université d'Abomey Calavi

    UNSTI M

    : Université Nationale des Sciences, Technologies, Ingénierie et Mathématiques

    6

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    LISTE DES TABLES ET FIGURES

    I - LISTES DES FIGURES

    Figure 1 : Entrée principale de l'INSTI Lokossa 12

    Figure 2 : Situation géographique de l'INSTI-Lokossa 13

    Figure 3 : Organigramme de l'INSTI-Lokossa 14

    Figure 4 : Image montrant des statistiques de performance des modèles .... 19

    Figure 5 : Aperçu du fichier Excell créer 20

    Figure 6 : Aperçu du site de gestion de TFE 22

    Figure 7 : Aperçu de la page d'ajout du document de TFE 23

    Figure 8 : Aperçu du déroulement du téléversement avec Filezilla 24

    Figure 9 : Interface de la plateforme gestion des rattrapages et reprises 25

    Figure 10 : Logo du Framework Laravel 33

    Figure 11 : Logo du Framework Flask 34

    Figure 12 : Etape de développement du modèle 39

    Figure 13 : Processus de communication entre l'application Flask et Laravel .......42

    Figure 14 : Diagramme de cas d'utilisation 45

    Figure 15 : Diagramme de classe 46

    Figure 16 : Diagramme de séquences du cas d'utilisation S'authentifier 47

    Figure 17 : Diagramme de séquences du cas d'utilisation Visualiser 47

    Figure 18 : Interface d'accueil 48

    Figure 19 : Aperçu de l'interface de la page de prévision 49

    Figure 20 : Courbes des erreurs d'entrainement et de validation . 50

    7

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    II - LISTES DES TABLES

    Tableau 1 : Offres de formation de l'INSTI 16

    Tableau 2 : Avantage du thème .. 28

    Tableau 3 : Tableau récapitulatif des données collectées 41

    8

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    CAHIER DES CHARGES

    1. Objectifs du travail de fin d'études

    Nous visons à créer un système informatisé basé sur les technologies web pour prédire les prix du maïs en utilisant l'analyse des données et l'apprentissage automatique. Pour atteindre cet objectif, nous allons de façon spécifique : concevoir la maquette de la plateforme, créer la base de données, développer le système de prévision de prix, prédire les prix avec une grande précision et enfin, tester et valider l'efficacité de notre modèle de prévision.

    2. Contraintes et moyens mis à disposition

    Pour développer ce système, nous mobiliserons nos compétences en langage de modélisation UML et aussi en gestion de projet numérique notamment la méthodologie Agile Scrum, en programmation web et en intelligence artificielle. Cependant, nous devrons tenir compte de certaines contraintes telles qu'une connexion internet de qualité, un accès aux données historiques sur les prix du maïs et ses facteurs déterminants, ainsi qu'une familiarité avec le Framework Django, Laravel et les modèles de prévision existants que nous adapterons à notre cas sans oublier l'accès à des ressources pour la formation et la recherche sur l'analyse de données et l'apprentissage automatique.

    3. Le thème du TFE

    En Afrique Subsaharienne, l'estimation des rendements agricoles reste un grand défi de taille, alors qu'un bon suivi agricole pourrait susciter la mobilisation des fonds et propulser le développement du secteur agricole. Cet acte pourrait réduire considérablement la pauvreté et la pénurie alimentaire. Conscient de ce fait, nous avons opté pour le << Développement d'un système pour la prévision des prix des produits agricoles par l'analyse des données et l'apprentissage automatique : cas du maïs >>.

    RÉSUMÉ

    L'agriculture occupe une place centrale dans l'économie de notre pays le Bénin, cependant des défis majeurs tels que la prédiction des prix des produits agricoles demeurent d'actualité. C'est dans cette optique que nous avons décidé de travailler sur un projet novateur de prévision des prix des produits agricoles, en étudiant notamment notre culture emblématique le maïs. Nous comprenons pleinement l'importance économique et la valeur nutritionnelle essentielle de cette culture pour notre pays. Pour prédire les prix, nous avons fait appel aux principes avancés de l'analyse de données et de l'apprentissage automatique, des technologies qui trouvent davantage d'applications dans le domaine agricole. En utilisant des techniques de modélisation et de traitement des données de pointe, nous avons réussi à élaborer des prévisions des prix du maïs sur la base des données historiques des marchés du Bénin. Une plateforme web a été développée pour faciliter la visualisation des prix en fonction du temps. Grâce à la méthodologie utilisée nous avons pu atteindre une précision de 95 % en ce qui concerne la fiabilité de l'algorithme.

    Mots clés : L'agriculture, modélisation, traitement des données et prévisions des prix.

    10

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    ABSTRACT

    Agriculture occupies a central place in the economy of our country Benin, however major challenges such as the prediction of the prices of agricultural products remain relevant. It is with this in mind that we have decided to work on an innovative project to forecast the prices of agricultural products, in particular by studying our emblematic crop, corn. We fully understand the economic importance and essential nutritional value of this crop for our country. To predict prices, we used advanced principles of data analytics and machine learning, technologies that find more applications in agriculture. Using state-of-the-art modeling and data processing techniques, we were able to develop maize price forecasts based on historical Benin market data. A web platform has been developed to facilitate the visualization of prices over time. Thanks to the methodology used, we were able to achieve an accuracy of 95% regarding the reliability of the algorithm.

    Keywords: Agriculture, modeling, data processing and price forecasts.

    INTRODUCTION

    En Afrique Subsaharienne, l'agriculture occupe une place centrale dans l'économie régionale. Toutefois, peu de travaux scientifiques sont consacrés à l'estimation des prix des produits agricoles. Conscients des enjeux, notre travail de fin d'études se focalise sur le développement d'un système novateur de prévision des prix des produits agricoles, en mettant l'accent sur le maïs. Cette culture a été choisie pour sa pertinence économique et sa valeur nutritionnelle cruciale dans la région.

    Vu le rôle important de l'agriculture dans les économies en voie de développement et conscients des défis auxquels font face les agriculteurs, notre motivation personnelle réside dans le désir de contribuer à l'amélioration de la rentabilité et de la durabilité du secteur agricole en Afrique Subsaharienne.

    Face à l'incertitude entourant les prix des produits agricoles, il devient essentiel de disposer d'un outil prédictif fiable pour faciliter les prises de décision des agriculteurs, des investisseurs et des acteurs de la chaîne d'approvisionnement. Cependant, la disponibilité de données historiques fiables et la mise en oeuvre d'approches adaptées à la réalité locale représentent des défis majeurs à surmonter. Ainsi, la démarche méthodologique adoptée a consisté à : la collecte de données pertinentes, la mise en place de modèles d'analyse avancés et la création d'une

    plateforme web ouvert aux différentes parties prenantes.

    Dans la première partie de ce document nous présenterons notre centre de formation (INSTI-Lokossa). Dans la seconde partie nous parlerons des différents travaux effectués au cours du stage. Dans la troisième partie nous présenterons notre travail de fin d'études et enfin dans la dernière partie nous développerons notre thème.

    12

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    CHAPITRE 1 : PRESENTATION DE LA STRUCTURE DE FORMATION

    1.1 Présentation de la structure de formation

    Figure 1. Entrée principale de l'INSTI Lokossa Source : (Administration de l'INSTI, 2023) 1.1.1 Historique

    Créé en novembre 2001, sous l'appellation d'Institut Universitaire de Technologie de Lokossa (IUT de Lokossa), l'Institut fut un établissement d'enseignement supérieur de l'Université d'Abomey-Calavi (UAC). Il devient ensuite en 2015 un centre universitaire de l'Université de Lokossa (UL), université créée par décret n°2015-213 du 17 avril 2015. En 2016 l'IUT de Lokossa passe sous la tutelle de l'Université Nationale des Sciences, Technologies, Ingénieries et Mathématiques (UNSTIM), université créée par décret n° : 2016-638 du 13 octobre 2016.

    Suite à une réforme institutionnelle dans la perspective de mieux répondre aux besoins du pays et aux exigences du temps, l'institut deviendra en 2018 Institut National Supérieur de Technologie Industrielle (INSTI) avec cinq (5) filières :

    13

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    Génie Civil, Génie Énergétique, Génie Électrique et Informatique, Génie Mécanique et Productique et Maintenance des Systèmes.

    En vingt (20) ans, L'INSTI a connu à sa tête quatre (4) Directeurs à savoir : M. ALLOBA I. Ézéchiel, M. MOUSSA DJIBRIL Aliou, M. ADOMOU Alain C. N. A. et Mme GUIDI T. Clotilde l'actuelle Directrice de l'Institut.

    1.1.2 Situation géographique

    L'Institut National Supérieur de Technologie Industrielle est situé dans la ville de Lokossa dans le département du Mono, au Bénin. Précisément au quartier Agnivêdji à 2,6 kilomètres de la gare routière principale de la ville. Il est relié au centre-ville par une voie bitumée comme l'indique la figure ci-dessous.

    Figure 2. Situation géographique de l'INSTI-Lokossa Source: (Secrétariat Général de L'INSTI, 2023)

    14

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    1.1.3 Organisation structurelle

    Pour mener à bien sa mission, l'administration de l'INSTI est organisée selon l'organigramme de la figure 3 :

    Figure 3. Organigramme de l'INSTI-Lokossa

    Source: (Secrétariat Général de L'INSTI, 2023) 1.1.4 Domaine et formations

    Destiné aux apprenants titulaires d'un BAC C, D, E, F ou d'un DT/STI ; l'INSTI a pour mission de former en 3 ans, des techniciens supérieurs dans le domaine industriel précisément les filières consignées dans le tableau ci-dessous.

    15

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    Tableau 1 : Offres de formation de l'INSTI

    FILIÈRES

     

    BAC ADAPTÉS

     

    DÉBOUCHÉS

    Génie Civil (GC)

     

    C, D, E, F4, DT


    ·

    Travaux du Génie Civil ;

     
     
     


    ·

    Contrôleur de chantier

     
     
     


    ·

    Assistant des experts Géomètres, des cabinets d'architecture, des agences immobilières et des notaires.

    Génie Energétique (GE)

     

    C, D, E, F1, F2, F3, DT/Électronique, Froid


    ·


    ·

    Industries électriques et électroniques ; Métiers du bâtiment ;

     
     

    et Climatisation, Electrotechnique


    ·


    ·

    Appareillage, instrumentation ; Froid de bâtiment et automobile ;

     
     
     


    ·

    Installations d'équipements de systèmes pour énergies renouvelables.

    Génie Electrique et Informatique (GEI)

     

    C, D, E, F2, F3, DT/Electronique, Electrotechnique


    ·


    ·


    ·

    Electricité industrielle et de bâtiments ; Centrales électriques ; Télécommunications et réseaux informatiques ;

     
     
     


    ·

    Informatique ;

     
     
     


    ·

    Développement d'applications diverses.

    Maintenance des Systèmes (MS) ex Génie Industriel et Maintenance (GIM)

     

    F1, F2, F3, DT/MA, Froid et Climatisation, Electrotechnique, Biomédicale


    ·
    ·
    ·
    ·

    Maintenance des appareils ; Fabrication mécanique ;

    Parcs de machines ;

    Méthode et contrôle de la qualité ;

     
     
     


    ·

    Audit et efficacité énergétique ;

     
     
     


    ·

    Froid et climatisation ;

     
     
     


    ·

    Energies renouvelables.

    Génie Mécanique

    et

    C, D, E, F1, DT/MA,


    ·

    Maintenance industrielle ;

    16

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    Productique (GMP)

    FM

    · Fabrication mécanique ;

     
     

    · Parcs de machines ;

     
     

    · Méthode et contrôle de la qualité ;

     
     

    · Maintenance des engins agricoles ;

     
     

    · Mécanisation agricole.

     

    La formation est constituée d'enseignements théoriques, de travaux pratiques et de stages en entreprise. Elle s'achève par la rédaction et la soutenance d'un rapport de fin de formation.

    Le département de Génie Électrique et Informatique (GEI) où nous avons été formés, en particulier, offre aux étudiants une formation leur permettant d'avoir des compétences requises dans deux options : Électrotechnique et Électronique (EE), et Informatique et Télécommunications (IT).

    1.1.5 Unités d'accueil de l'INSTI

    Les ateliers de l'INSTI sont équipés de matériels pédagogiques et outils de fabrication pour permettre aux étudiants de faire des travaux pratiques. Nous décrirons dans cette rubrique les ateliers fonctionnant actuellement à l'INSTI.

    · Atelier de fabrication mécanique

    Dans cet atelier s'effectuent les travaux de mécanique et les travaux d'assemblage des pièces. Il a à sa charge tous les travaux de réparation, de fabrication, d'usinage, de fraisage, de meulage et de rectification de pièces. Il comporte en son sein plusieurs machines et machines-outils permettant de fabriquer et de rectifier n'importe quel type de pièce. L'atelier de fabrication mécanique de l'INSTI a pour mission de :

    - améliorer les performances des étudiants en fabrication mécanique ;

    - aider les étudiants dans la réalisation de leurs travaux de fin d'études ;

    17

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    - donner un aperçu de la mécanique aux étudiants en Maintenance des Systèmes (MS).

    L'atelier de fabrication mécanique est dirigé actuellement par le Chef du département de Génie Mécanique et Productique.

    · Atelier informatique

    L'Atelier Informatique est un constituant majeur du dispositif de l'INSTI pour offrir un cadre d'applications aux apprenants. Il a pour mission de :

    - offrir des prestations en informatique et en électronique aussi bien aux

    différents acteurs et services de l'INSTI qu'aux partenaires de l'entité ; - développer l'esprit d'entrepreneuriat chez les apprenants du Département de

    Génie Electrique et Informatique ;

    - offrir un cadre de renforcement des capacités de tous les apprenants de l'INSTI en informatique et systèmes embarqués.

    Cet atelier soutient trois startups créées le 04 Juin 2018 et spécialisées dans plusieurs tâches à savoir :

    - APPDEV 229 : conception et développement d'applications mobile, programmation en java, formation à l'utilisation de l'EDI Android Studio ;

    - Logitech : conception et développement de sites web et logiciels, apprentissage du HTML et du CSS, programmation en PHP, formation à l'utilisation de divers CMS et Framework.

    - Mobile Home : travaux de maintenance et de réparation d'appareils et systèmes électroniques, conception et mise en place de systèmes électroniques, conception et mise en place de systèmes de domotique.

    Il dispose également d'une équipe de communication qui a pour rôle de : - promouvoir les activités des startups et de l'atelier informatique ; - attirer de nouveaux partenaires ;

    - s'occuper de toute la communication afférente à l'organisation d'un évènement (conférence, formation, recrutement, etc) au sein de l'institut

    18

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    L'atelier informatique est dirigé actuellement par le Chef du département de Génie Electrique et Informatique.

    19

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    CHAPITRE 2 : DEROULEMENT DU STAGE

    Durant le stage, nous avons effectué des tâches très diversifiées relevant de notre domaine de compétence.

    Tableau 2 : Tableau récapitulatif des activités effectuer durant le stage

    Activité effectuer

    Courte description

    Objectifs

    Apprentissage de la technologie TensorFlow

    Suivi de cours en ligne accompagner de séances application.

    Avoir les bases pour le Machine Learning.

    Ajout de nouvelles fonctionnalités sur le fichier de rapport de supervision de stage

    - Ajout de liste déroulante; - Ajout de liste dépendante.

    - Faciliter la saisie;

    - Eviter les erreurs de frappe;

    - Faciliter la recherche.

    Introduction aux tâches administratives

    - Enregistrement des courriers; - Classification des documents; - Contrôle des pièces requises pour les demandes;

    Comprendre le

    fonctionnement d'une administration

    Déploiement de la plateforme de Gestion des TFE

    Aménagement et mise en ligne de la plateforme

    Permettre une meilleure traçabilité, communica-tion et collaboration entre les acteurs impliqués.

    Création d'une application web de gestion des rattrapages et des reprises

    - Avoir la liste des étudiants pour les rattrapages ou les reprise; - Ajouter une note de rattrapage après la composition des épreuves de rattrapage ou reprise.

    - Centraliser et

    automatiser le processus; - Simplifier les procédu-res administratives;

    - Faciliter le suivi et l'évaluation.

    20

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    2.1 Apprentissage de la technologie TensorFlow 2.1.1 Présentation de la technologie

    TensorFlow est une bibliothèque open-source développée par Google pour l'apprentissage automatique (Machine Learning) et l'intelligence artificielle (IA). Il offre un ensemble d'outils et de ressources permettant de créer, d'entraîner et de déployer des modèles d'apprentissage automatique à grande échelle. TensorFlow est conçu pour être flexible, évolutif et adapté aux besoins des chercheurs, des ingénieurs et des développeurs. Il prend en charge diverses architectures de modèles, telles que les réseaux de neurones profonds, et fournit des fonctionnalités avancées pour la gestion des données, la construction des graphiques de calcul, l'optimisation des performances et la distribution des tâches sur plusieurs dispositifs. TensorFlow est devenu une référence dans le domaine de l'apprentissage automatique, offrant une large communauté de développeurs et de nombreuses ressources pour faciliter l'apprentissage et l'utilisation de cette puissante bibliothèque.

    2.1.2 Processus d'apprentissage

    a. Les bases de l'apprentissage automatique: familiarisation avec les concepts fondamentaux de l'apprentissage automatique, tels que les algorithmes d'apprentissage supervisé et non supervisé, la régression, la classification, et les réseaux neuronaux. Ensuite nous sommes passés à la prise en main des principes de base de la construction de modèles prédictifs à partir des données.

    b. Les principes de TensorFlow : exploitation de la documentation officielle de TensorFlow pour comprendre son architecture, ses fonctionnalités et sa syntaxe. Prise en main des concepts clés tels que les tenseurs, les opérations, les variables, et les graphes de calcul.

    c. Installation de l'environnement TensorFlow : suivi des instructions pour installer TensorFlow sur un système d'exploitation. Utilisation de

    21

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    TensorFlow avec Python, après la mise à jour vers la version appropriée de Python installée sur nos machines.

    d. Tutoriel d'apprentissage : suivi et exécution des codes de tutoriel, modification des paramètres et observation des résultats. Les tutoriels couvrent généralement des sujets tels que la classification d'objet ou la prédiction de séries chronologiques.

    Figure 4. Image montrant des statistiques de performance des modèles Source : (Réalisation personnelle, 2023)

    2.2 Travaux sur le fichier de rapport de supervision de stage de fin d'étude des apprenants de licence 3

    2.2.1 Fonctions ajoutées

    Dans le cadre de la supervision de stage de fin d'étude des apprenants de licence 3 prévue du 15 Mai au 19 mai 2023 nous avons actualisé le fichier de rapport existant et intégré quelques nouveautés.

    22

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    Figure 5. Aperçu du fichier Excel créé Source: (Réalisation personnelle, 2023)

    Les fonctions ajoutées au fichier Excel sont : ? Liste déroulante simple

    L'utilisation de liste déroulante de choix en Excel est destinée à éviter de saisir tout le temps les mêmes données, prévenir les fautes de frappe par les utilisateurs, uniformiser la saisie de données pour faciliter la recherche.

    ? Liste déroulante dépendante

    Dans de nombreux scénarios, il est nécessaire de limiter les options de sélection disponibles en fonction des choix précédemment effectués. Dans le cas du fichier conçu, le choix de la commune est dépendant du département où les apprenants sont en stage. Cette fonction répond au guidage de l'utilisateur du point de vue ergonomique.

    23

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    2.2.2 Méthodologie :

    Pour intégrer ces fonctions, nous avons utilisé les fonctionnalités avancées d'Excel, notamment les listes déroulantes et les formules conditionnelles. Les étapes suivantes ont été suivies :

    · Création des listes de données : nous avons identifié les différentes options pour chaque liste déroulante et les avons organisées dans des plages de cellules distinctes.

    · Mise en place des listes déroulantes : à l'aide de la fonctionnalité de validation des données dans Excel, nous avons configuré les cellules appropriées pour afficher une liste déroulante basée sur la plage de cellules correspondante.

    · Création de formules conditionnelles : nous avons utilisé des formules conditionnelles pour définir la dépendance entre les différentes listes déroulantes. Cela signifie que les options disponibles dans une liste déroulante sont automatiquement mises à jour en fonction des choix effectués dans les listes précédentes.

    · Création de cellule à valeurs multiples: nous avons écrit un code VBA qui permet de choisir plusieurs valeurs d'une liste déroulante dans une même cellule.

    · Tests et ajustements : nous avons effectué des tests pour vérifier le bon fonctionnement du fichier type. Des ajustements ont été apportés en fonction des résultats des tests, en veillant à ce que les listes déroulantes et dépendantes répondent aux exigences.

    2.3 Introduction aux tâches administratives

    En plus de nos travaux techniques à l'atelier informatique, nous avons été initiés à quelques tâches administratives.

    Parmi les tâches effectuées, nous avons participé à l'enregistrement des courriers, tant au départ qu'à l'arrivée. Ces activités revêtent une grande importance et sont confiées au secrétariat de l'INSTI. Nous avons également assisté la directrice

    24

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    adjointe dans la saisie des courriers, tant au format papier que numérique. Ensuite, nous avons participé à la classification des documents et au contrôle des pièces requises pour les demandes des étudiants et des autres usagers.

    L'ensemble de ces activités nous a permis de comprendre le processus de prise de décisions administratives. Ces tâches sont essentielles pour assurer la traçabilité des documents et contrôler les comptes rendus administratifs.

    2.4 Mise en ligne de la plateforme de Gestion des TFE

    L'INSTI gère un grand nombre de travaux de fin d'études chaque année. Cependant, la gestion manuelle de ces TFE est inefficace et engendre des difficultés de suivi. Il était donc impératif de développer un site dédié à la gestion de ces travaux afin de rationaliser le processus et de faciliter la collaboration entre les étudiants, les encadrants et les membres de l'administration. Le site avait été développé par un ancien étudiant en Génie électrique et informatique, mais n'était pas accessible en ligne.

    Figure 6. Aperçu de la page d'accueil du site de gestion de TFE

    25

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    Figure 7. Aperçu de la page d'ajout du document de TFE

    Les principaux objectifs du déploiement du site de gestion des TFE en ligne

    sont :

    · centraliser et automatiser la gestion des TFE pour une meilleure traçabilité ;

    · faciliter la communication et la collaboration entre les différents acteurs impliqué;

    · améliorer l'accessibilité et la convivialité du système de gestion des TFE ;

    · assurer la sauvegarde des données relatives aux TFE.

    La mise en ligne de la plateforme a été réalisée suivant quelques étapes décrites ci-dessous:

    · Configuration des paramètres serveurs : les paramètres du serveur, tels que les permissions des fichiers et les configurations PHP, ont été ajustés pour assurer le bon fonctionnement du site.

    · Mise en ligne de la base de données : la base locale a été importée en ligne par le biais de l'outil PhpMyAdmin.

    26

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    · Mise en ligne des fichiers : les fichiers du site, y compris les dépendances, ont été transférés sur le serveur via l'application FTP Filezilla.

    Figure 8. Aperçu du déroulement du téléversement avec Filezilla Source : (Prise de vue personnelle, 2023)

    La mise en ligne du site de gestion des TFE de l'INSTI a été un processus réussi. Le site offre désormais une plateforme conviviale et efficace pour la gestion des TFE, permettant une meilleure traçabilité, communication et collaboration entre les acteurs impliqués. Le déploiement de ce site constitue une avancée significative dans l'amélioration de la gestion des TFE au sein de l'institut.

    2.5 Création d'une application web de gestion des rattrapages et des reprises

    Les principaux objectifs de la mise en place de la plateforme de gestion des rattrapages et des reprises sont :

    · Centraliser et automatiser le processus : la plateforme vise à regrouper toutes les informations liées aux rattrapages et aux reprises en un seul endroit,

    27

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    permettant ainsi une gestion plus efficace et simplifiée. Les étudiants, les enseignants et le personnel administratif pourront accéder facilement aux données pertinentes, réduisant ainsi les erreurs et les retards.

    · Simplifier les procédures administratives : la plateforme automatise les procédures administratives liées aux demandes de rattrapage et de reprise. Les étudiants pourront soumettre leurs demandes en ligne, ce qui réduira les déplacements et les démarches administratives traditionnelles. Les responsables pourront traiter les demandes de manière plus rapide et efficace.

    · Faciliter le suivi et l'évaluation : la plateforme permettra de suivre et d'évaluer les performances des étudiants lors des sessions de rattrapage et de reprise. Les résultats obtenus pourront être analysés pour identifier les besoins d'accompagnement supplémentaire et mettre en place des actions correctives si nécessaire.

    + Description : La gestion des rattrapages et reprises.

    Une fois que le professeur ouvre la section de gestion des rattrapages et reprises, il sera redirigé vers un formulaire où il saisira la filière, l'année académique, l'UE (matière), semestre ; ainsi il sera redirigé vers une page qui lui affichera la liste des apprenants en rattrapages ou en reprise. Il aura la possibilité d'ajouter une note de rattrapage après la composition des épreuves de rattrapage ou reprise

    28

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    Figure 9. Interface de la plateforme gestion des rattrapages et reprises + Outils utilisés

    La plateforme a été développée grâce à Laravel.

    Laravel est un Framework PHP qui propose des outils pour construire une application web. Il regroupe les meilleures librairies pour chaque fonctionnalité nécessaire à la création d'un site web. Il a été, en ce sens, construit en se basant sur Symfony. Il fournit aux développeurs Web un moteur de modèle de lame par défaut léger et facile à utiliser. Il aide à créer des mises en page fascinantes avec un contenu dynamique en incorporant des fichiers CSS et JS dans les modèles. L'outil ORM éloquent aide les développeurs Web à interagir avec les bases de données sans utiliser le langage de programmation SQL. Le Framework permet d'utiliser la syntaxe PHP pour interroger les bases de données. Éloquent ORM de Laravel est l'un des plus rapides que tout autre outil ORM utilisé dans les Frameworks PHP.

    29

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    CHAPITRE 3 : PRESENTATION DU PROJET DE FIN D'ETUDES

    3.1 Présentation du projet de fin d'étude 3.1.1 Problématique

    Les Systèmes d'Information sur le Marché Agricole (SIM-A) constituent depuis plusieurs décennies un puissant levier de développement dans le secteur agricole. Le Ministère de l'Agriculture, de l'Elevage et de la Pêche (MAEP) du Bénin a rendu disponible depuis 2021 un SIM-A harmonisé qui déploie des agents sur le terrain pour collecter les prix des produits agricoles, y compris le maïs, dans tous les marchés du pays. Après cette collecte, les données sont soumises à un processus de vérification supervisé par des agents dédiés (contrôleurs). L'objectif de cette vérification est d'assurer la validité des données avant leur diffusion à l'échelle nationale. Cependant, s'appuyer uniquement sur les acteurs humains peut poser des problèmes tels que :

    - les erreurs de manipulation des données entraînent l'enregistrement de fausses informations;

    - les difficultés éprouvées par un contrôleur pour corriger un prix mal collecté sur le terrain;

    - le retard dans la validation des données collectées dû à l'indisponibilité des agents contrôleurs.

    Dans le but de surmonter ses problèmes, de garantir la fiabilité des données diffusées, notre projet de fin d'études consiste à développer un programme d'intelligence artificielle basé sur un algorithme de prédiction du prix du maïs.

    L'intégration de cet algorithme de prédiction dans le système de décision du MAEP apportera plusieurs avantages du point de vue décisionnel.

    30

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    [Reference bibliographique : Miton Abel Konnon, Abdou-Aziz Sobabe Ali Tahirou, Ismail M. Moumouni, M.F. Dieu-Donné Konnon (2023). Agricultural Market Information Governance: A Capability-Oriented National Framework for Benin Republic. International Journal of Advanced Research, Vol. 11, N° 1, pp. 566- 577;]

    3.1.2 Pertinence et nouveauté du thème

    La pertinence du thème est justifiée par les avantages de l'algorithme de prédiction. Tableau 3 : Avantages de l'algorithme de prédiction

    Types

    Avantages

    Avantages liés à la gestion du SIM-A

    · Gain de temps et d'efficacité : l'utilisation de l'algorithme de
    prédiction rend disponible de façon peu coûteuse des données pouvant servir de témoin pour la prise rapide de décision.

    · Amélioration de la fiabilité et de la confiance : en associant
    un outil intelligent de prédiction des prix au processus de

    validation des prix collectées sur le terrain, l'on
    contribuerait à renforcer la fiabilité des prix diffusés et la

    confiance des parties prenantes dans le système
    d'information.

     

    Avantages liés à la

    gestion de la
    production

    Prévision précise des prix : l'algorithme basé sur le modèle de prédiction LSTM (Long Short-Term Memory) permettrait de fournir des estimations fiables des prix futurs du maïs. Cela aiderait les acteurs de l'industrie agricole à anticiper les fluctuations des prix, à prendre des décisions éclairées et à mieux planifier leurs activités.

    Avantages en

    termes d'aide à la décision

    gouvernementale

    Optimisation des politiques agricoles : en disposant de

    prévisions fiables des prix du maïs, le MAEP pourrait ajuster ses politiques agricoles en conséquence. Cela permettrait d'optimiser la gestion des stocks, de mettre en place des

    31

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    mécanismes de régulation des prix et de prendre des mesures appropriées pour soutenir les agriculteurs et assurer la stabilité du marché.

    En outre, la pertinence du thème réside dans son impact économique et sa réponse aux besoins dans la prise de décision, tandis que sa nouveauté réside dans l'utilisation de techniques d'intelligence artificielle dans le processus de prédiction des prix adapté au contexte agricole du Bénin. Aussi, la disponibilité des prédictions de prix et des graphes montrant les fluctuations du prix sur une plateforme accessible en ligne au grand public facilitera les décisions de production, de commercialisation et d'achat.

    3.1.3 Objectifs

    ? Objectif général du projet

    À travers ce projet, nous avons l'intention de développer un algorithme intelligent basé sur l'analyse de données et l'apprentissage automatique pour prévoir avec précision les prix du maïs sur les marchés béninois.

    ? Objectifs spécifiques

    De façon spécifique, dans le cadre de ce projet, il s'agira de :

    1. Collecter les données historiques fiables sur les prix du maïs au Bénin.

    2. Développer un modèle de prévision des prix du maïs basé sur l'analyse de données et l'apprentissage automatique, en utilisant des techniques avancées de modélisation et de traitement des données.

    3. Valider et évaluer la précision du modèle de prévision des prix en le comparant aux données réelles sur les prix du maïs.

    4. Développer une plateforme web pour la diffusion et l'exploitation des résultats par les acteurs du secteur agricole au Bénin, y compris les agriculteurs et les organisations agricoles.

    32

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    3.2 Démarche méthodologique

    La démarche méthodologique pour la mise en place du système de prévision des prix des produits agricoles du Bénin a été structurée de la manière suivante :

    1. Collecte des données : la première étape a consisté à collecter des données historiques fiables sur les rendements et les prix du maïs au Bénin. Cela a été réalisé en s'appuyant sur les données du ministère de l'agriculture du Bénin

    2. Analyse exploratoire des données : une fois les données collectées, elles ont été analysées de manière approfondie. Cela comprenait l'identification des tendances des prix du maïs. Des outils d'exploration de données ont été utilisés pour extraire des informations significatives des données.

    3. Modélisation des prix du maïs : sur la base des données collectées et analysées, nous avons développé des modèles prédictifs utilisant notamment le modèle LSTM (Long Short-Term Memory) de réseaux de neurones. Ce modèle est particulièrement adapté pour capturer les dépendances temporelles complexes présentes dans les séries chronologiques des prix du maïs.

    4. Validation des prévisions : une fois les modèles prédictifs développés, ils ont été validés en confrontant les prévisions aux données réelles. Cela a permis d'évaluer la précision et la performance des modèles. Des mesures d'évaluation, telles que l'erreur moyenne absolue (MAE) ou l'erreur quadratique moyenne (RMSE), ont été utilisées pour quantifier la qualité des prévisions.

    5. Mise en place d'une plateforme : une fois le programme mis en place nous avons ensuite développé une application web pour rendre facile l'utilisation du travail abattu.

    En suivant cette démarche méthodologique, un système de prévision des prix du maïs et précis a été mis en place, offrant une valeur ajoutée significative au secteur agricole au Bénin.

    33

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    3.3Analyse fonctionnelle

    Les fonctions principales sont :

    - Le système doit prédire les prix futurs d'un produit agricole quelconque;

    - Le système doit alerter les utilisateurs qui aimerait être alerté de tout changement;

    - L'utilisateur doit pouvoir consulter les prix actuel ou réel du produit sélectionné.

    3.4 Choix des outils et technologies

    Nous souhaitons concevoir une plateforme simple, accessible et compréhensible au plus grand nombre d'utilisateurs possible. De ce fait, nous avons opté pour une plateforme web. En ce qui concerne la technologie de développement à utiliser, notre choix s'est porté vers Visual Studio Code, un éditeur de code source autonome qui s'exécute sur Windows, MacOs et Linux. Il est adapté pour le développement web et a à sa disposition un large choix d'extensions pour prendre en charge un très grand nombre de langages de programmation.

    Pour la gestion des données des utilisateurs, nous avons opté pour le système de gestion de bases de données relationnelles MySQL.

    Nous avons aussi utilisé divers langages, Frameworks et outils de conception et de développement tout au long du projet. Ils sont ci-dessous catégorisés et présentés.

    3.4.1 Langages informatiques

    34

    ? UML :

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    Il est difficile de déterminer ce que les utilisateurs veulent vraiment (appréhension du problème, expression du besoin) et les moyens pour atteindre le résultat souhaité. Le langage de modélisation objet unifié, comme son nom l'indique, définit un langage visuel universel et unique qui doit permettre de statuer sur une manière claire de communiquer la façon de faire d'un système. Cet outil a été développé afin de permettre l'avènement d'un processus de développement standardisé. L'application d'UML lors des différentes phases de développement facilite le bon déroulement des projets d'une entreprise sur le long terme. Somme toute, UML est un ingrédient que l'on adapte à sa guise, à sa méthode de développement. Il est toujours au coeur des débats les plus vifs dans la mesure où il ne signifie pas la même chose pour tout le monde. Il est toujours au coeur des débats les plus vifs dans la mesure où il ne signifie pas la même chose pour tout le monde. La modélisation consiste à créer une représentation virtuelle d'une réalité de telle façon à faire ressortir les points auxquels on s'intéresse. Plusieurs outils d'analyse tels que la méthode MERISE, le langage UML s'offrent à nous. Notre choix s'est porté sur le Langage UML (Pascal Roques, 2006)

    · Python:

    Python est un langage portable, dynamique, extensible, gratuit, qui permet (sans l'imposer) une approche modulaire et orientée objet de la programmation. Il est portable, gratuit, dynamique.

    Les domaines d'application naturels de Python incluent entre autres l'apprentissage de la programmation orientée objet, les scripts d'administration des systèmes ou d'analyse de fichiers textuels, la réalisation d'interfaces graphiques utilisateurs, Tous les développements liés à l'Internet et en particulier au Web et l'IA, pour ne citer que ceux-là.

    · HTML :

    Le sigle HTML correspond à « HyperText Markup Language » que l'on peut traduire en français par « Langage HyperTextuel à balises ». Il s'agit d'un

    35

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    langage informatique permettant de définir le contenu et la structure d'une page Web. De nombreuses technologies peuvent être utilisées pour définir les éléments d'une page Web, mais la base la plus minimaliste d'une page est construite en HTML.

    ? JavaScript :

    JavaScript est un langage de programmation principalement utilisé pour créer des pages web interactives. Ce langage, incorporé dans un document HTML, n'est pas visible dans la fenêtre du navigateur. Il sert à améliorer le langage HTML : en effet, il permet d'exécuter des commandes du côté client (c'est-à-dire au niveau du navigateur et non du serveur web). Ce code qui est exécuté par le navigateur web est utile pour toutes les interactions du client sur la page Web. Il permet d'améliorer la présentation et l'interactivité des pages web.

    3.4.2 Frameworks ? Laravel

    Laravel est un Framework de développement web utilisé pour créer des applications en utilisant le langage de programmation PHP. Il offre une structure et des outils pratiques pour rendre le processus de développement plus facile et plus rapide. Grâce à son architecture MVC, il permet de séparer la logique de présentation, la logique métier et la gestion des requêtes. Laravel propose également un système de routage flexible, une gestion facile de la base de données avec son ORM Éloquent, un moteur de Template appelé Blade, des fonctionnalités de sécurité avancées, ainsi qu'un outil de gestion des tâches appelé Artisan. Il est largement utilisé et apprécié par la communauté des développeurs pour sa simplicité, sa documentation complète et son écosystème riche en extensions et packages.

    36

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    Figure 10 : logo du Framework Laravel Source: https://laravel.com/

    · Flask

    Flask est un Framework de développement web léger et flexible écrit en Python. Il se distingue par sa simplicité, sa modularité et sa facilité d'apprentissage, ce qui en fait un choix privilégié pour les développeurs souhaitant créer des applications web rapidement et efficacement.

    Grâce à son système de routage intuitif, Flask permet de mapper facilement les URL aux fonctions correspondantes, simplifiant ainsi la gestion des requêtes et des réponses HTTP. Son moteur de templating Jinja2 offre des fonctionnalités avancées pour générer des pages web dynamiques et réutilisables. Flask est hautement extensible grâce à son architecture modulaire et à sa vaste gamme d'extensions. Il peut être facilement intégré avec d'autres bibliothèques Python, ce qui permet d'ajouter des fonctionnalités spécifiques telles que la gestion des bases de données, l'authentification ou l'intégration de services tiers.

    En résumé, Flask est un choix judicieux pour les développeurs qui privilégient la simplicité, la flexibilité et la rapidité de développement. Il offre une solution élégante pour créer des applications web évolutives et performantes en Python.

    Figure 11 : logo du Framework Flask

    37

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    Source: https://flask.palletsprojects.com/

    ? Bootstrap :

    Bootstrap est un ensemble d'outils gratuits permettant de créer des pages Web, des logiciels et applications Web comprenant des fonctions HTML, CSS et JavaScript permettant de générer et les éléments nécessaires à la conception Web.

    ? TensorFlow

    TensorFlow, développé par Google, est un Framework open source d'apprentissage automatique et de calcul numérique. Il offre une infrastructure flexible et extensible pour la création de modèles d'apprentissage automatique, en particulier les réseaux de neurones. Voici quelques points clés à retenir sur TensorFlow :

    1. Architecture flexible : TensorFlow propose une architecture flexible qui permet de créer et de manipuler des flux de données appelés "tenseurs". Cela permet de construire des modèles d'apprentissage automatique complexes en les décomposant en petites opérations et en les exécutant de manière efficace sur différents types de matériel (CPU, GPU, TPU).

    2. Large choix de modèles prédéfinis : TensorFlow met à disposition une vaste collection de modèles d'apprentissage automatique prédéfinis, tels que les réseaux de neurones convolutifs (CNN), les réseaux de neurones récurrents (RNN) et les modèles de traitement du langage naturel (NLP). Ces modèles pré-entraînés facilitent le développement rapide d'applications d'IA et permettent aux développeurs de se concentrer sur la résolution de problèmes spécifiques.

    3. Gestion efficace des calculs sur GPU : TensorFlow est optimisé pour l'exécution de calculs sur les processeurs graphiques (GPU), ce qui permet d'accélérer significativement les calculs nécessaires à l'apprentissage automatique. Cela permet d'entraîner des modèles plus rapidement et de gérer des volumes importants de données avec une meilleure efficacité.

    38

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    4. Plateforme de déploiement : TensorFlow offre des outils pour déployer facilement les modèles d'apprentissage automatique dans divers environnements, notamment les serveurs, les appareils mobiles et les navigateurs web. Cela facilite l'intégration des modèles d'IA dans des applications réelles et permet de les mettre en production plus rapidement.

    5. Communauté active et support : TensorFlow bénéficie d'une communauté active de développeurs, de chercheurs et d'entreprises qui contribuent régulièrement au développement et à l'amélioration de la bibliothèque. Google propose également une documentation complète, des tutoriels et des exemples de code pour aider les utilisateurs à prendre en main TensorFlow et à résoudre leurs problèmes.

    En résumé, TensorFlow est une puissante bibliothèque d'apprentissage automatique et d'intelligence artificielle qui offre une architecture flexible, des modèles prédéfinis, une gestion efficace des calculs sur GPU et des outils de déploiement. Il constitue un choix populaire pour développer des applications d'IA, que ce soit pour la classification d'images, la reconnaissance vocale, la traduction automatique ou d'autres tâches complexes.

    3.4.3 Outils de conception et de modélisation

    ? Figma

    Figma est une plateforme collaborative pour éditer des graphiques vectoriels et faire du prototypage. Elle permet de concevoir des designs système pour faciliter la création de sites web et d'applications mobiles. C'est une solution à destination des UI et UX designers et des développeurs. L'interface propose de nombreuses fonctionnalités :

    - De design : avec des outils de conception pour le web, des fonctions de mise en page automatique, des plugins pour réduire les tâches répétitives.

    - De prototypage : pour tester les concepts très tôt en cours de design.

    - De design system : pour concevoir des designs cohérents avec des bibliothèques mises à jour en permanence.

    39

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    - Collaboratives : pour travailler à plusieurs et en même temps sur un projet, revenir sur une version antérieure si nécessaire ou encore afficher le travail d'un seul collaborateur par exemple.

    Il permet de :

    - Créer des schémas : à partir d'une feuille blanche ou vous servir des nombreux Templates disponibles parmi des modèles classiques, des charts, des tableaux, etc ;

    - Éditer le travail : en ajoutant des images, des formes, des arrière-plans et en utilisant toutes les fonctionnalités à disposition;

    - Exporter les fichiers : en format XML, PDF, JPG, PNG, SVG ou encore HTML.

    · Visual Studio Code

    Visual Studio Code est un éditeur de code multiplateforme édité par Microsoft. Cet outil destiné aux développeurs supporte plusieurs dizaines de langages informatiques comme le HTML, C++, PHP, Javascript, CSS, etc. Visual Studio Code intègre plusieurs outils facilitant la saisie de code par les développeurs comme la coloration syntaxique ou encore le système d'auto-complétions IntelliSense. En outre, l'outil permet aux développeurs de corriger leur code et de gérer les différentes versions de leurs fichiers de travail puisqu'un module de débogage est aussi de la partie.

    3.4.4 Algorithme de prédiction

    L'algorithme LSTM (Long Short-Term Memory) est une variante des réseaux de neurones récurrents (RNN) qui permet de capturer les dépendances temporelles à long terme dans une séquence de données. Contrairement aux RNN traditionnels, l'algorithme LSTM est capable de traiter des séquences de données plus longues en évitant le problème de la disparition du gradient, qui limite la capacité des RNN à mémoriser des informations à long terme.

    40

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    Selon l'article "Automated Agriculture Commodity Price Prediction System with Machine Learning Techniques" de Chen et al., l'utilisation du modèle de réseaux de neurones récurrents Long Short-Term Memory (LSTM) a démontré son efficacité dans la prédiction des prix des produits agricoles. Les auteurs ont comparé cinq algorithmes de machine learning populaires, à savoir ARIMA, SVR, Prophet, XGBoost et LSTM, en utilisant de vastes ensembles de données historiques en Malaisie (Z. Chen, H.S. Goh, K.L. Sin, K. Lim, N.K.H. Chung, X.Y. Liew, 2021).

    Les résultats ont montré que le modèle LSTM surpassait les autres algorithmes en termes de performance. Lors des tests à long terme, le modèle LSTM a amélioré les performances moyennes de 45,5 % par rapport à l'ARIMA, et son erreur quadratique moyenne (MSE) moyenne était de 0.304, ce qui était meilleur que tous les autres algorithmes comparés.

    Cette étude comparative suggère que le modèle LSTM est particulièrement adapté à la prédiction des prix des produits agricoles. En utilisant les caractéristiques spécifiques de l'agriculture béninoise, le modèle LSTM peut être ajusté pour fournir des prédictions précises et fiables. Sa capacité à capturer les dépendances temporelles à long terme dans les données en fait un choix approprié pour anticiper les fluctuations des prix agricoles.

    Ainsi, en se basant sur les résultats de cette étude comparative et en tenant compte des spécificités du contexte agricole béninois, l'utilisation du modèle LSTM pour le projet de prévision des prix des produits agricoles peuvent être justifiée en raison de sa performance supérieure dans des conditions similaires.

    41

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    CHAPITRE 4 : MODELISATION ET DEVELOPPEMENT DE L'ALGORITHME ET DE LA PLATEFORME

    4.1 Développement et fonctionnement de l'algorithme

    Le modèle de prévision a été développé en utilisant le langage de programmation Python et les bibliothèques TensorFlow, Keras et Flask en suivant les étapes de la figure ci-dessous.

    Figure 12. Etapes de développement du modèle Source : (Réalisation personnelle, 2023)

    a. Préparation des données

    - Les données sont chargées à partir d'un fichier CSV contenant les informations sur les prix des produits agricoles.

    - Les variables catégorielles telles que le département, la commune et le marché sont encodées en valeurs numériques à l'aide de l'encodeur de labels. - Les lignes vides et les lignes identiques sont supprimées.

    - Les données sont mises à l'échelle à l'aide du MinMaxScaler pour les rendre comprises entre 0 et 1.

    b. Construction du modèle LSTM

    - Un modèle séquentiel est créé à l'aide de la classe Sequential de Keras.

    42

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    - Quatre couches LSTM avec 100 unités sont ajoutées, chacune suivie d'une couche de dropout pour éviter le surapprentissage.

    - Une couche Dense avec une unité est ajoutée en sortie pour prédire le prix.

    - Le modèle est compilé avec l'optimiseur Adam et la perte est définie comme l'erreur quadratique moyenne (mean_squared_error).

    c. Entraînement du modèle

    - Le modèle est entraîné sur les données d'entraînement en utilisant les données d'entrée X_train_lstm et les étiquettes y_train_lstm.

    - L'entraînement est effectué pendant 100 époques avec une taille de lot de 32.

    d. Évaluation du modèle

    - Les données de test sont chargées à partir d'un fichier CSV distinct.

    - Les mêmes étapes de prétraitement sont appliquées aux données de test.

    - Les données de test sont mises à l'échelle et converties en séries temporelles

    pour être compatibles avec le modèle LSTM.

    - La perte du modèle est évaluée sur les données de test à l'aide de la méthode

    evaluate.

    e. Utilisation du modèle pour les prédictions en temps réel

    - Une application Web basée sur Flask est créée pour fournir une interface permettant de faire des prédictions en temps réel.

    - Les données d'entrée sont envoyées à l'application sous forme de requête JSON.

    - Les valeurs des champs (année, mois, département, commune, marché) sont extraites de la requête.

    - Les valeurs sont encodées et mises à l'échelle de la même manière que lors de l'entraînement du modèle.

    - Les données sont converties en séries temporelles et transposées pour être compatibles avec le modèle LSTM.

    - La prédiction du prix est effectuée à l'aide du modèle et inversée à l'aide du scaler pour obtenir une valeur réelle.

    - La prédiction est renvoyée sous forme de réponse JSON.

    43

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    Le modèle LSTM utilisé dans ce projet tire parti des dépendances temporelles à long terme pour prédire les prix des produits agricoles. Il a été choisi en se basant sur une étude comparative qui a montré son efficacité par rapport à d'autres algorithmes de machine learning tels que ARIMA, SVR, Prophet et XGBoost. Le modèle LSTM permet de capturer les tendances et les schémas complexes dans les données historiques des prix agricoles, ce qui peut aider les agriculteurs et les décideurs à prendre des décisions éclairées en matière de planification et de gestion des ressources.

    L'application Web basée sur laravel offre une interface conviviale pour l'utilisation du modèle de prédiction en temps réel. En fournissant les données d'entrée appropriées, telles que l'année, le mois, le département, la commune et le marché, les utilisateurs peuvent obtenir des prédictions fiables sur les prix des produits agricoles.

    Les données qui ont servi à développer le model sont présentées dans le tableau ci-dessous.

    Tableau 4 : Tableau récapitulatif des données collectées

    Département

    Communes

    Marchés

    Nombres de données

    Alibori

    Banikoara

    Banikoara

    112

    Malanville

    Malanville

    125

    Atacora

    Tanguiéta

    Tanguiéta

    50

    Ban'têtê

    75

    Borgou

    Parakou

    Parakou

    50

    Arzèkè

    76

    Collines

    Glazoué

    Glazoué

    48

    Gbomina

    78

    Dassa-Zoumè

    Dassa-Zoumè

    40

    44

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

     
     
     
     

    Ungbadjo

    69

    Donga

    Djougou

    Djougou

    49

    Zougou-Yobou

    75

    Littoral

    Cotonou

    Dantokpa

    130

    Houéyiho

    40

    Plateau

    Kétou

    Kétou

    50

    Assena

    79

    Zou

    Bohicon

    Bohicon

    131

    Abomey

    Houndjro

    114

    Total

    1391 données

    4.2 Processus de communication entre l'application Flask et Laravel

    La figure ci-dessous montre le processus de communication entre l'application Flask et Laravel jusqu'à la création de la vue Laravel

     

    Source: (Réalisation personnelle, 2023)

    Figure 13. Processus

    45

    de communication entre l'application Flask et Laravel

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    - Mise en place de l'API Flask : dans l'application Flask, une API RESTful est développée pour permettre la communication avec l'application Laravel. L'API est configurée pour écouter les requêtes HTTP entrantes et y répondre en conséquence. Des routes sont définies pour chaque Endpoint de l'API, spécifiant les méthodes acceptées (GET, POST, etc.) et les actions à effectuer.

    - Établissement de la connexion entre les applications : Pour établir la connexion entre l'application Flask et Laravel, des bibliothèques ou des outils peuvent être utilisés. Par exemple, l'on peut utiliser des bibliothèques Python comme "requests" pour envoyer des requêtes HTTP à l'API Laravel, ou des outils comme "cURL" pour effectuer des requêtes depuis la ligne de commande.

    - Envoi de requêtes depuis Laravel : dans l'application Laravel, des requêtes HTTP sont envoyées à l'API Flask pour récupérer les données de prix. Ces requêtes peuvent être déclenchées par des actions de l'utilisateur, telles que la sélection d'une période de temps ou d'un produit agricole spécifique. Les paramètres nécessaires sont inclus dans la requête, généralement sous forme de paramètres d'URL ou de données de formulaire.

    - Réception des requêtes dans Flask : dans l'application Flask, les requêtes provenant de l'application Laravel sont reçues et traitées par les routes correspondantes de l'API. Les paramètres de la requête sont extraits et utilisés pour déterminer les données de prix spécifiques à renvoyer en réponse.

    - Récupération des données de prix : Dans Flask, les données de prix sont récupérées à partir de la source de données appropriée, comme une base de données ou un fichier CSV. Les données sont ensuite préparées pour être renvoyées à l'application Laravel sous forme de réponse JSON. Cela peut impliquer des étapes telles que l'extraction des données pertinentes, la transformation ou la mise à l'échelle des données, selon les besoins.

    - Envoi de la réponse JSON à Laravel : une fois les données de prix préparées, Flask envoie la réponse JSON contenant les données à l'application Laravel.

    46

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    La réponse est renvoyée en tant que résultat de la requête HTTP initiale et peut être utilisée par l'application Laravel pour afficher les graphiques de prix correspondants.

    - Traitement des données côté client dans Laravel : dans l'application Laravel, le JSON de réponse est traité côté client à l'aide de JavaScript. Les données JSON sont analysées et transformées en un format approprié pour le tracé des graphiques. Des bibliothèques JavaScript telles que Chart.js peuvent être utilisées pour créer les graphiques interactifs et les intégrer dans la vue Laravel.

    - Affichage des graphiques dans la vue Laravel : les graphiques de variation des prix sont affichés dans la vue Laravel. Cela peut être réalisé en intégrant les graphiques JavaScript dans la vue à l'aide de balises HTML appropriées. Les utilisateurs peuvent interagir avec les graphiques, sélectionner des périodes de temps, zoomer, déplacer, et obtenir des informations supplémentaires au survol.

    En conclusion, le processus de communication entre l'application Flask et Laravel pour la création de la vue Laravel implique l'établissement d'une API RESTful, l'envoi de requêtes depuis l'application Laravel vers l'API Flask, la récupération des données de prix dans Flask, l'envoi de la réponse JSON à Laravel, le traitement des données côté client dans Laravel, et enfin, l'affichage des graphiques dans la vue Laravel. Ce processus permet aux utilisateurs de visualiser facilement la variation des prix des produits agricoles dans une interface conviviale.

    4.3 Modélisation en UML

    4.3.1 Modélisation des cas d'utilisation

    Le diagramme des cas d'utilisation présenté sur la figure ci-dessous prend en compte les deux acteurs clés du système :

    · les utilisateurs (visiteur, agriculteurs, investisseurs, ...) : s'inscrire pour recevoir les notifications et consulter les prévisions.

    47

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    · L'administrateur: Gestion des utilisateurs et des notifications.

    Figure 14. Diagramme de cas d'utilisation Source: (Réalisation personnelle, 2023)

    4.3.2 Modélisation des diagrammes de classe

    Le diagramme des classes permet de modéliser un ensemble de classes, de même nature ou de natures différentes, qui sont en relation d'une façon ou d'une autre (Valade, 2017). Le diagramme des classes relatif à notre étude se présente comme suit :

    48

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    Figure 15. Diagramme de classe

    Source : (Réalisation personnelle, 2023)

    4.3.3 Élaboration des diagrammes de séquence

    Dans cette partie, nous allons présenter les interactions dynamiques entre les différents acteurs de notre système à travers des diagrammes de séquences. Ces derniers représentent temporairement les tâches effectuées par les acteurs et objets du système en montrant ceux qui participent à l'interaction par leur « ligne de vie » et les messages qu'ils échangent, ordonnancés dans le temps sans spécifier les associations entre objets. Ici, nous présenterons les diagrammes de séquence à travers ceux des cas d'utilisation « S'authentifier » pour l'admin et le cas d'utilisation « Visualiser » disponible pour tous utilisateurs.

    ? Diagramme de séquences du cas d'utilisation S'authentifier

    Lorsque l'administrateur se connecte, il est redirigé vers la page d'authentification. Il lui est alors demandé de remplir les informations de connexion. Ces informations sont ensuite vérifiées par la plateforme. Si les données saisies ne sont pas correctes, un message d'erreur s'affiche. Sinon, l'administrateur est redirigé vers la page d'accueil réservée aux administrateurs.

    49

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    Figure 16. Diagramme de séquences du cas d'utilisation S'authentifier Source: (Réalisation personnelle, 2023)

    ? Diagramme de séquences de Visualisation du prix

    Lorsque l'utilisateur accède à la page d'accueil, un formulaire lui est présenté afin de renseigner les informations nécessaires pour la prédiction. L'utilisateur fournit des informations telles que l'année, le mois, le département, la commune et le marché. Ces informations sont utilisées pour exécuter l'algorithme qui renverra ensuite la page de visualisation des prix correspondante.

    50

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    Figure 17. Diagramme de séquences de Visualisation du prix Source: (Réalisation personnelle, 2023)

    4.4 Réalisation de la plateforme de prévision HarvestInsight

    L'architecture globale de notre système comprend les modules suivants :

    · visualiser les prix réels actuels et du passé si disponibles;

    · visualiser la prévision des prix sur une période définie;

    · s'inscrire pour recevoir des notifications.

    À l'étape de réalisation, en nous servant du prototype réalisé grâce à l'outil Figma, nous avons implémenté la partie visible de l'application et la logique qui lui est associée. Les différentes fonctionnalités ont été implémentées, testées, améliorées et intégrées.

    51

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    52

    4.4.1 Page d'accueil

    Cette interface présente des données sur l'évolution des prix de quelque produit agricole

    Figure 18. Interface d'accueil 4.4.2 Page de prévision

    Elle représente le projet en elle-même.

    Figure 19. Aperçu de l'interface de la page de prévision

    4.5 Analyse des résultats

    Pour la construction du modèle, le jeu de données est utilisé de la façon suivante : 70%, soit 975 données sont utilisées pour entrainer le modèle et 30%, soit 416 données sont utilisées pour évaluer le modèle. Il faut noter qu'au cours de l'entraînement, les erreurs d'entraînement variaient de 0,025 à 0,033 ce qui montre que le modèle est bien entraîné et pourra être utilisé pour des prédictions. Ces erreurs sont représentées sur le graphe ci-dessous.

    Figure 20. Courbes des erreurs d'entrainement et de validation

    53

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    Source : (Réalisation personnelle, 2023)

    Au cours de l'évaluation, l'algorithme a présenté une erreur allant de 0,04 à 0,05.

    Cette erreur peut se justifier par la quantité de données (prix collectés sur 11 ans de 2012 à 2023) utilisée. En augmentant le jeu de données initiales les erreurs de modélisation vont certainement se réduire.

    On peut déduire de l'analyse que la précision du modèle de prédiction des prix de maïs conçu dans le cas du présent projet est de 95%. Cette précision démontre que l'algorithme de prédiction est performant et peut être utilisé. Toutefois, des pistes d'amélioration restent envisageables. La prise en compte des facteurs agroécologiques qui influencent les prix des denrées agricoles sur le marché serait une étape décisive dans la précision (Gildas David Farid Adamon et Miton Abel Konnon, 2023).

    54

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    CONCLUSION

    Le stage réalisé à la fin de notre formation a permis d'appliquer les connaissances acquises tout au long du parcours académique à des situations réelles, en mettant en pratique les compétences techniques liées au développement web. Le stage a également offert l'opportunité de se familiariser avec l'environnement professionnel et de se confronter aux défis et aux contraintes réelles du travail en équipe.

    Le projet de prédiction des prix du maïs au Bénin que nous avons réalisé a permis de mettre en évidence l'importance de l'utilisation de techniques avancées d'analyse de données et d'apprentissage automatique pour améliorer la prise de décision dans le secteur agricole. Grâce à la collecte et au prétraitement des données historiques du maïs, la construction et l'entraînement du modèle LSTM, et l'intégration harmonieuse avec la plateforme web de visualisation, ce projet a permis de fournir des prédictions des prix du maïs avec une précision de 95%. Ces prédictions peuvent aider les agriculteurs, les commerçants, les décideurs et les organisations gouvernementales à prendre des décisions éclairées.

    En perspective, Il est important de prendre en compte les spécificités du contexte agricole local, et d'adapter le modèle de prédiction en conséquence pour de meilleurs résultats.

    55

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    REFERENCES BIBLIOGRAPHIQUES

    · Antonio Lopez (2016). Learning PHP 7. Packt Publishing, - 606 p.

    · Gildas David Farid Adamon, Miton Abel Konnon, Merscial Raymond, Rodolphe N'deji, Aimé Agonman, Adonaï Gbaguidi, Togon Clotilde Guidi, Latif Adeniyi Fagbemi (2023). Estimation of Water Hyacinth Using Computer Vision, Environment and Pollution, Vol. 12, N° 1, pp. 1- 11.

    · Miton Abel Konnon, Abdou-Aziz Sobabe Ali Tahirou, Ismail M. Moumouni, M.F. Dieu-Donné Konnon (2023). Agricultural Market Information Governance: A Capability-Oriented National Framework for Benin Republic. International Journal of Advanced Research, Vol. 11, N° 1, pp. 566- 577;

    · Pascal Roques (2006), UML2 par la pratique. Cinquième Edition, EYROLLES. - 338 p.

    · Valade, J. (2017). PHP et MySQL pour les nuls. Sixième Edition, First interactive. - 830 p.

    · Z. Chen, H.S. Goh, K.L. Sin, K. Lim, N.K.H. Chung, X.Y. Liew (2021). "Automated Agriculture Commodity Price Prediction System with Machine Learning Techniques", Advances in Science, Technology and Engineering Systems Journal, vol. 6, no. 4, pp. 376-384.


    ·

    56

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN

    WEBOGRAPHIE

    Dans le cadre de la réalisation de notre projet, nous avons consulté les sites web ci-après :

    · https://intellipaat.com/blog/what-is-lstm/?US , dernière consultation le 10 juin 2023

    · Home - Advances in Science, Technology and Engineering Systems Journal ( astesj.com) , dernière consultation le 10 juin 2023

    · https://www.chartjs.org/docs/latest/, dernière consultation le 10 juin 2023

    · https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.iloc.html, dernière consultation le 10 juin 2023

    · https://openclassrooms.com/fr/courses/5801891-initiez-vous-au-deep-learning/5814656-decouvrez-les-cellules-a-memoire-interne-les-lstm, dernière consultation le 10 juin 2023

    · https://www.researchgate.net/figure/Flowchart-of-the-IPSO-LSTM-

    model-for-stock-index-forecasting fig2 349012005, dernière
    consultation le 10 juin 2023

    · https://www.researchgate.net/publication/

    368314920 AGRICULTURAL MARKET INFORMATION GOVER NANCE A CAPABILITY-ORIENTEDNATIONALFRAMEWORKFORBENINREPUBLIC, dernière consultation le 10 juin 2023

    · TensorFlow : https://www.tensorflow.org/ , dernière consultation le 10 juin 2023

    · Keras: https https://keras.io/ , dernière consultation le 10 juin 2023

    · Flask : https://flask.palletsprojects.com/ , dernière consultation le 10 juin 2023

    · NumPy : https://numpy.org/ , dernière consultation le 10 juin 2023

    · FAO - Organisation des Nations Unies pour l'alimentation et l'agriculture ( www.fao.org ) , dernière consultation le 10 juin 2023

    57

    Réalisé et soutenu par Sabin ASSOGBA et Mario LIGAN






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Il faut répondre au mal par la rectitude, au bien par le bien."   Confucius