Comment un SIG peut transformer la prévention des inondations à Douala ?

Pour citer ce mémoire et accéder à toutes ses pages
🏫 Université de Douala - Faculté des Lettres et Sciences Humaines - Département de Géographie
📅 Mémoire de fin de cycle en vue de l'obtention du diplôme de Master - Août-2020
🎓 Auteur·trice·s

Le système d’information géographique Douala révèle des données alarmantes sur les inondations dans le bassin versant du Tongo-Bassa. Cette recherche innovante met en lumière les enjeux d’occupation des lits de cours d’eau, offrant des solutions cruciales pour la prévention et la sensibilisation des populations vulnérables.


L’interface graphique de l’algorithme

Affecter une interface graphique à un programme informatique est une méthode qui consiste en la représentation d’un programme sous forme de boite de dialogue interactif afin de faciliter sa compréhension et son exploitation.

En anglais, l’interface graphique est traduite par GUI pour Graphical User Interface.

Littéralement, cela veut dire une interface graphique pour les utilisateurs.

Les lignes de code d’un programme informatique n’ont pas forcément besoin d’une interface graphique pour s’exécuter. Seulement, très peu de personnes sont capables d’exploiter un programme informatique directement depuis les lignes de codes. Cela demande des compétences avérées en programmation. Il est donc nécessaire de produire une interface graphique destiné à faciliter l’utilisation aux bénéficiaires c’est-à-dire les utilisateurs lambda.

On peut relever quelques avantages liés à l’utilisation d’une interface graphique à savoir :

    • Possibilité d’utilisation du programme par les non professionnels
    • Un visuel agréable
    • Personnalisation (logos, images, notices explicatives, …)

Les modeleurs des logiciels SIG proposent directement des options de production des interfaces graphiques pour faciliter l’utilisation des algorithmes. Dans Model Builder de ArcGIS par exemple, en effectuant un clic droit sur une variable de données d’entée ou de sortie, on peut activer les options de paramètre dans le menu conceptuel des variables d’entrée et de sortie. Ce qui permet d’exécuter l’algorithme sous sa forme graphique prédéfinie par le logiciel. Au-delà, en se rendant dans les propriétés avancées de l’outil de géotraitement conçu, on peut d’avantage effectuer des personnalisations et des configurations liées à l’interface graphique de l’algorithme.

L’image suivant présente une interface graphique possible pour la facilitation d’usage de l’algorithme de localisation des biens et personnes susceptibles de subir des dommages d’une inondation attendue.

La personnalisation de l’interface permet d’afficher les emblèmes et les logos de l’institution destiné à utiliser l’algorithme dans l’exécution de sa mission de prévention des risques d’inondation.

On peut constater sur l’interface ci-dessus que le titre de l’algorithme traite de la question de prévention des risques d’inondation. On remarque également qu’un volet consacré aux notices d’aide pour l’utilisateur a été réservé. Ce volet renseigne l’utilisateur sur l’algorithme qu’il s’apprête à exécuter et lui informe sur son fonctionnement. Le caractère interactif de l’interface graphique permet que, à chaque clic dans les cases de sélection des couches d’entrée, une nouvelle notice d’aide réapparait pour indiquer ce qu’il faut exactement faire afin de déboucher sur un résultat pertinent. Les veilleuses vertes devant les cases indiquent quant à elle que l’utilisateur n’a pas encore chargé la couche d’entrée attendue.

Nous pouvons découvrir dans les images suivantes que à chaque fois que l’utilisateur se rend dans une nouvelle case de donnée d’entrée, la notice d’aide évolue pour l’accompagner dans l’action à effectuer.

[33_solutions-innovantes-pour-la-prevention-des-inondations-a-douala_50]

Photo 16 : Affichage de la notice d’aide relative à la couche de zonage d’inondation

[33_solutions-innovantes-pour-la-prevention-des-inondations-a-douala_51]

Capture écran Tchameni Franck 2017

Photo 17 : Affichage de la notice d’aide relative à la couche des bâtiments et ménages.

Une fois les données d’entrée chargées, les veilleuses vertes disparaissent devant les cases pour signaler que le traitement est prêt à s’exécuter.

Le rapport de traitement

Le rapport de traitement est une note automatiquement générée par l’algorithme pendant son exécution. Cette note est produite en temps réel pour permettre à l’utilisateur se suivre l’avancement du processus de traitement. L’établissement du rapport de traitement dur aussi longtemps que le processus de traitement lui-même.

Si pendant l’exécution du traitement, il y’a une interruption inattendue dû à une mauvaise configuration, le rapport se chargera de signaler cette erreur et d’éclairer l’utilisateur

sur les origines de l’erreur survenu. C’est est une aide pour tracer l’erreur et corriger cette dernière.

Le traitement est exécuté avec succès lorsque le rapport de traitement ne mentionne aucune erreur. A cette étape il suffit donc de se rendre dans le répertoire de sortie de traitement pour constater les sauvegardes des listings des biens susceptibles de subir les dommages de l’inondation attendue.

Le rapport de traitement est constitué des paramètres suivants :

    • Le code de l’algorithme exécuté
    • Les chemins des données d’entrée
    • La date de lancement du traitement (Le jour, le mois, l’année et l’heure)
    • La méthode et le temps de traitement de chaque couche d’entrée
    • Les chemins des données de sortie
    • La date de clôture du traitement (Le jour, le mois, l’année et l’heure)
    • Le temps mis pour l’exécution de la tâche

La durée d’un traitement dépend de trois facteurs qui sont :

  1. Le volume des données contenues dans le modèle,
  2. Les instructions de traitement, ou méthodologie de traitement de l’algorithme
  3. Et les capacités de l’ordinateur utilisé (vitesse)

Donc, selon ces trois facteurs combinés, le temps d’exécution d’une tâche peut varier de quelques secondes à plusieurs jours.

Dans notre cas d’espèce, quelques minutes seulement sont nécessaires pour un traitement complet.

L’image suivant présente l’algorithme en cours d’exécution

[33_solutions-innovantes-pour-la-prevention-des-inondations-a-douala_52]

Capture écran Tchameni Franck 2017

Photo 18: Algorithme en cours d’exécution, production du rapport de traitement en temps réel.

[33_solutions-innovantes-pour-la-prevention-des-inondations-a-douala_53]

Capture écran Tchameni Franck 2017

Photo 19: Fin d’exécution de l’algorithme, et production du rapport de traitement complet.

Le script python de l’algorithme

# -*- coding: utf-8 -*-

# —————————————————————————

# Localisation_des_biens_et_personnes_impactés.py # Created on: 2019-12-02 04:12:57.00000

# (generated by ArcGIS/ModelBuilder)

# Usage: Localisation_des_biens_et_personnes_impactés <Zonage_d_inondation_shp> <Bâtiments_et_ménages>

<Etablisements_scolaires> <Points_d_approvisionnement_en_eau> <Centres_de_santé> <Voirie_et_infrastructures_de_transport>

<Lieux_de_cultes> <Hôtels> <Marchés> <Services_administratifs> <Stations_d_hydrocarbures>

<Equipements_de_distribution_d_électricité> <Espaces_agricole> <Repertoire_de_travail> # Description:

# Les biens et personnes exposés sont déterminés selon le théorème suivant: # RISQUE = ALEA x VULNERABILITE

# —————————————————————————

# Import arcpy module import arcpy

# Script arguments

Zonage_d_inondation_shp = arcpy.GetParameterAsText(0) Bâtiments_et_ménages = arcpy.GetParameterAsText(1) Etablisements_scolaires = arcpy.GetParameterAsText(2) Points_d_approvisionnement_en_eau = arcpy.GetParameterAsText(3) Centres_de_santé = arcpy.GetParameterAsText(4) Voirie_et_infrastructures_de_transport = arcpy.GetParameterAsText(5) Lieux_de_cultes = arcpy.GetParameterAsText(6)

Hôtels = arcpy.GetParameterAsText(7) Marchés = arcpy.GetParameterAsText(8)

Services_administratifs = arcpy.GetParameterAsText(9) Stations_d_hydrocarbures = arcpy.GetParameterAsText(10) Equipements_de_distribution_d_électricité = arcpy.GetParameterAsText(11) Espaces_agricole = arcpy.GetParameterAsText(12)

Repertoire_de_travail = arcpy.GetParameterAsText(13)

# Local variables:

Output_Folder = Repertoire_de_travail

Batiments_inondés_shp = « %Repertoire de travail%\\Batiments inondés.shp » Listing_Batiments_xls = « %Repertoire de travail%\\Listing Batiments.xls » Ecoles_inondés_shp = « %Repertoire de travail%\\Ecoles inondés.shp » Listing_ecoles_xls = « %Rpertoire de travail%\\Listing Ecoles.xls » Fontaines_inondées_shp = « %Repertoir de travail%\\Fontaines inondées.shp » Listing_fontaines_xls = « %Repertoire de travail%\\Listing Fontaines.xls » Santés_inondés_shp = « %Repertoire de travail%\\Santés inondés.shp » Listing_santé_xls = « %Rpertoire de travail%\\Listing Santé.xls » Voirie_inondée_shp = « %Repertoire de travail%\\Voirie inondée.shp » Listing_voirie_xls = « %Rpertoire de travail%\\Listing Voirie.xls »

Lieux_de_cultes_inondés = « %Repertoire de travail%\\Lieux de cultes inondés.shp » Listing_lieu_de_culte_xls = « %Repertoire de travail%\\Listing lieu de culte.xls »

Hôtels_inondés = « %Repertoire de travail%\\Hôtels inondés.shp » Listing_hôtels_xls = « %Repertore de travail%\\Listing hôtels.xls » Marchés_inondés = « %Repertoire de travail%\\Marchés inondés.shp » Listing_Marchés_xls = « %Repertoire de travail%\\Listing Marchés.xls »

Services_administratifs_inondés = « %Repertoire de travail%\\Services administratifs inondés.shp » Listing_Services_administratifs_xls = « %Repertoire de travail%\\Listing Services administratifs.xls » Equipements_distribution_électrique_inondés = « %Repetoir de travail%\\Equipements distribution électrique inondés.shp » Listing_Equipements_de_distribution_d_électricité_xls = « %Reprtoire de travail%\\Listing Equipements distribution électrique.xls » Stations_hydrocarbures_inondés = « %Repertoire de travail%\\Stations hydrocarbures inondés.shp » Listing_Stations_hydrocarbures_xls_ = « %Repertoire de travail%\\Listing Stations hydrocarbures.xls »

Espaces_agricole_inondés = « %Reprtoire de travail%\\Espaces agricole inondés.shp » Listing_Espaces_agricole_xls = « %Repertoire de travail%\\Listing Espaces agricole.xls »

# Set Geoprocessing environments arcpy.env.outputCoordinateSystem = «  » arcpy.env.geographicTransformations = «  »

# Process: Create Folder arcpy.CreateFolder_management(Reprtoir_de_travail, « Resultats ») # Process: Intersect

arcpy.Intersect_analysis(« # #;# # », Batiments_inondés_shp, « ALL », «  », « INPUT ») # Process: Table To Excel

arcpy.TableToExcel_conversion(Batiments_inondés_shp, Listing_Batiments_xls, « NAME », « CODE ») # Process: Intersect (2)

arcpy.Intersect_analyss(« # #;# # », Ecoles_inondés_shp, « ALL », «  », « INPUT ») # Process: Table To Excel (2)

arcpy.TableToExcel_conversion(Ecoles_inondés_shp, Listing_ecoles_xl, « NAME », « CODE ») # Process: Intersect (3)

arcpy.Intersect_analysis(« # #;# # », Fontaines_inondées_shp, « ALL », «  », « INPUT ») # Process: Table To Excel (3)

arcpy.TbleToExcel_conversion(Fontaines_inondées_shp, Listing_fontaines_xls, « NAME », « CODE ») # Process: Intersect (4)

arcpy.Intersect_analysis(« # #;# # », Santés_inondé_shp, « ALL », «  », « INPUT ») # Process: Table To Excel (4)

arcpy.TableToExcel_conversion(Santés_inondés_shp, Listing_santé_xls, « NAME », « CODE ») # Process: Intersect (5)

arcpy.Intersect_analysis(« # #;# # », Voirie_inondée_shp, « ALL », «  », « INPUT ») # Process: Table To Excel (5)

arcpy.TableToExcel_conversion(Voirie_inondée_shp, Listing_voirie_xls, « NAME », « CODE ») # Process: Intersect (6)

arcpy.Intersect_analysis(« # #;# # », Lieux_de_cultes_inondés, « ALL », «  », « INPUT ») # Process: Table To Excel (6)

arcpy.TableToExcel_conversion(Lieux_de_cultes_inondés, Listing_lieu_de_culte_xls, « NAME », « CODE ») # Process: Intersect (7)

arcpy.Intersect_analysis(« # #;# # », Hôtels_inondés, « ALL », «  », « INPUT ») # Process: Table To Excel (7)

arcpy.TableToExcel_conversion(Hôtels_inondés, Listing_hôtels_xls, « NAME », « CODE ») # Process: Intersect (8)

arcpy.Intersect_analysis(« # #;# # », Marchés_inondés, « ALL », «  », « INPUT ») # Process: Table To Excel (8)

arcpy.TableToExcel_conversion(Marchés_inondés, Listing_Marchés_xls, « NAME », « CODE ») # Process: Intersect (9)

arcpy.Intersect_analyss(« # #;# # », Services_administratifs_inondés, « ALL », «  », « INPUT ») # Process: Table To Ecel (9)

arcpy.TableToExcel_conversion(Services_administratifs_inondés, Listing_Services_administratifs_xls, « NAME », « CODE ») # Process: Intersect (10)

arcpy.Intersect_analysis(« # #;# # », Equipements_distribution_électrique_inodés, « ALL », «  », « INPUT ») # Process: Table To Excel (10) arcpy.TableToExcel_conversion(Equipements_distribution_électrique_inondés, Listing_Equipements_de_distribution_d_électricité_xls, « NAME », « CODE »)

# Process: Intersect (11)

arcpy.Intersect_analysis(« # #;# # », Stations_hydrocarbures_inondés, « ALL », «  », « INPUT ») # Process: Table To Excel (11)

arcpy.TableToExcel_conversion(Stations_hydrocarbures_inondés, Listing_Stations_hydrocarbures_xls_, « NAME », « CODE ») # Process: Intersect (12)

arcpy.Intersect_analysis(« # #;# # », Espaces_agricole_inondés, « ALL », «  », « INPUT ») # Process: Table To Excel (12)

arcpy.TableToExcel_conversion(Espaces_agricole_inondés, Listing_Espaces_agricole_xls, « NAME », « CODE »)

Le script python présenté ci-dessus retranscrit les instructions selon lesquelles un listing des biens et personnes doit être produite si et seulement si ces derniers sont susceptibles de subir les dommages causés par l’onde de crue attendue.

________________________


Questions Fréquemment Posées

Comment un système d’information géographique peut-il aider à prévenir les inondations à Douala ?

Le système proposé permet de générer des listes de résidents vulnérables et sert de base pour l’alerte et la sensibilisation des populations.

Quels sont les avantages d’une interface graphique dans un SIG ?

Les avantages incluent la possibilité d’utilisation du programme par les non professionnels, un visuel agréable et la personnalisation avec des logos et des notices explicatives.

Qu’est-ce qu’un rapport de traitement dans un SIG ?

Le rapport de traitement est une note automatiquement générée par l’algorithme pendant son exécution, permettant à l’utilisateur de suivre l’avancement du processus de traitement.

Rechercher
Télécharger ce mémoire en ligne PDF (gratuit)

Laisser un commentaire

Votre adresse courriel ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Scroll to Top