• Aucun résultat trouvé

5.3 CRMA-1, un prototype en pilotage de programmes

5.4.3 CRMA-2, un nouveau prototype pour le calage

La mise au point des deux outils présentés ci-dessus a permis la réalisation d’un second prototype de système d’assistance au calage, que nous avons originalement bap- tisé CRMA-2. Ce prototype a été construit à partir de trois éléments : une base de connaissances et une base de faits – exprimées toutes deux dans le langage OVL – et le moteur d’inférence H.

Nous avons transposé la base de connaissances initialement écrite dans le langage Y pour obtenir la nouvelle base de connaissances dans le langage OVL. Cette tra- duction a ainsi consisté à garder uniquement dans la base les connaissances spécifiques au domaine de l’hydraulique et les connaissances liées au code M. Nous avons en- suite aisément exprimé ces connaissances à l’aide de la syntaxe adaptée du nouveau langage.

C 5 I ’  

Les figures 5.15 à 5.18 présentent quelques extraits de la base de connaissances écrites dans le langage OVL.

Numerical Model {

Name mage_river_hydraulic_model

System rivière

Simulation Code mage

Objective calage_hydraulique

System Data

bief_étudié name bief

sections a Set of sections_en_travers seuils a Set of déversoir

...

Parameters

coefficients_de_résistance a Set of coefficient_de_resistance coefficients_de_débit a Set of coefficient_de_débit

... }

F. 5.15 –Déclaration dans le langage OVL du modèle numérique dans le domaine de l’hydraulique fluviale. Les termes en gras sont des mots-clés du langage.

Objective {

Name problème_calage_hydraulique

Events

crues_utilisées a Set of crue

Intended Application

String name utilisation_du_modèle_hydraulique

range [ "Prévision de crues" "Détermination de zones inondables" ] ... }

F. 5.16 –Déclaration dans le langage OVL de l’ objectif du calage dans le domaine de l’hydraulique fluviale.

Event Type {

Name crue

Measured Data

hydrogrammes_mesurés a Set of hydrogramme_mesuré niveaux_d’_eau_mesurés a Set of niveau_mesuré ...

Computed Results

lignes_d_eau_calculées a Set of ligne_d_eau_calculée ... Selection criteria ... Allocation criteria Rule { name sélection_de_la_condition_limite_amont If hydrogrammes_mesurés <> nil

Then foreach hyd in hydrogrammes_mesurés

run sélection_hydrogramme_amont hyd/hyd

Comparison criteria

... }

F. 5.17 –Déclaration dans le langage OVL d’un type d’événement – une crue – dans le domaine de l’hydraulique fluviale.

5.4 D ’ ’       

Local Operator {

Name sélection_hydrogramme_amont

Input Data

hydrogramme_mesuré name hyd

Call

Rule {

name présence_hydrogramme_amont

If hyd.section_de_mesure.position == mage_river_hydraulic_model.bief. position_amont

Then hyd becomes input }

... }

F. 5.18 – Déclaration dans le langage OVL d’un opérateur local de résolution d’une sous-tâche spécifique.

L’utilisation du langage OVL permet de réduire sensiblement la complexité de la structure de la base de connaissances du prototype, présentée sur la figure 5.19. La fi- gure 5.20 présente quant à elle la structure actuelle de la base de faits de ce système. La maintenance de cette deuxième base de connaissances s’en trouve ainsi grandement fa- cilitée, et il est beaucoup plus facile pour l’expert d’avoir une vision globale des connais- sances implémentées. ConnaissancesCaRMA2:BaseDeConnaissances :ListeDesFichiers:FichierKb :ConceptsHydrauliques:FichierOval :MéthodesHydrauliques:FichierC++ :MéthodeAssociéesAMage:FichierC++ :ConnaissancesSurLeCodeMage:FichierOval

F. 5.19 –Structure de la base de connaissances pour CRMA-2.

FaitsCaRMA2:BaseDeFaits

:FaitsSurLaLèze:FichierOval

:FaitsSurLHogneau:FichierOval

F. 5.20 –Structure de la base de faits pour CRMA-2.

Il est important de noter que les connaissances implémentées étant identiques dans les deux prototypes, la mise en œuvre de CRMA-2 par un utilisateur final sera équiva- lente à celle du premier prototype, aussi bien en terme defonctionnalités que de résultats obtenus.

C 5 I ’  

5.5

Conclusions

Nous avons présenté dans ce chapitre l’implémentation informatique des connais- sances modélisées dans le chapitre 4. Le résultat de cette – double – implémentation est un système opérationnel d’assistance au calage de modèles hydrauliques basés sur le code M. Le développement d’un premier prototype nommé CRMA-1 à l’aide de techniques de pilotage de programmes a permis de tester cette mise en œuvre opéra- tionnelle sur des cas concrets de calage. Nous avons détaillé la structure de ce prototype ainsi que l’ensemble du processus de calage mis en œuvre de manière opérationnelle.

Les tests effectués sur ce premier prototype ont permis de déceler les faiblesses de cette implémentation concernant la maintenance et la réutilisation des différents ni- veaux de la base de connaissances. Ces inconvénients provenant de l’utilisation de tech- niques développées pour la tâche de pilotage de programmes, la mise au point d’outils d’intelligence artificielle – moteur d’inférence et langage associé – dédiés spécifique- ment à la tâche de calage de modèles numériques a été décidée. Le nouveau prototype développé à partir de ces outils – nommé CRMA-2 – permet à l’expert de s’affran- chir de l’écriture dans la base de connaissances du niveau générique – représenté par l’ontologie OH et par le paradigme de calage de modèles – et de représenter uni- quement les connaissances du domaine et les connaissances spécifiques au code utilisé. Nous disposons donc à présent d’un outil opérationnel d’assistance au calage destiné à un utilisateur final. La réalisation du calage d’un modèle hydraulique à l’aide de cet outil ne nécessite de la part de cet utilisateur ni connaissances sur le calage en tant que procédure générique, ni connaissances poussées en hydraulique fluviale 1-D, ni surtout de connaissances sur le code de calcul M utilisé. Cette affirmation doit être tempérée sur deux points : d’une part, l’assistance fournie par le système n’est pas complète sur l’ensemble des sous-tâches du calage, comme nous l’avons précisé dans la section 5.3.3. D’autre part, les connaissances implémentées sont loin d’être exhaustives et le système ne peut bien entendu pas prétendre prendre en compte l’ensemble des situations de calage qui peuvent se présenter en hydraulique fluviale unidimensionnelle.

Les limites d’utilisation de ce système peuvent fort heureusement être repoussées grâce à la modularité fournie au prototype CRMA-2 : l’extension de la base de connais- sances sur laquelle il est bâti peut ainsi permettre d’appréhender aisément de nouvelles situations de calage. Les fonctionnalités actuelles de ces prototypes permettent en outre déjà leur utilisation pour des cas de calage profondément différents, comme le montre l’application de CRMA-1 à deux cas d’étude dans les chapitres suivants.

Troisième partie

Chapitre 6

Calage d’un modèle de la Lèze

(( Tout le monde raisonne sur l’hydraulique, mais il est peu de personnes qui l’entendent. )) Chevalier D B1

D

   , nous nous attachons à la mise en œuvre opération- nelle du système d’assistance au calage que nous avons développé. Ce chapitre présente le premier des deux cas d’étude qui ont servi de terrain d’expérimentation pour notre premier prototype : le calage d’un modèle de la rivière Lèze. Le chapitre suivant présentera quant à lui le calage d’un modèle de la rivière Hogneau. Ces deux cas d’étude diffèrent de par le domaine d’application visé des modèles, mais aussi par les données événementielles disponibles pour caler chacun d’entre eux. Ces deux cas d’étude constituent donca priori de bons candidats pour tester notre prototype.

Nous détaillons dans ce chapitre tout d’abord le cadre de l’étude ainsi que les spé- cificités du calage du modèle de la Lèze. Nous développons ensuite le déroulement de ce calage à l’aide du prototype CRMA-1 ainsi que les retours d’expérience afférents. Nous proposons enfin une extension du système d’assistance au calage.

6.1

Présentation du cas d’étude

Cette section s’attache à décrire le bief modélisé de la rivière Lèze (voir la figure 6.1), l’événement de crue utilisé, ainsi que le modèle numérique que nous nous proposons de caler. Nous nous attardons ensuite sur les spécificités de ce calage, relatifs au domaine d’application visé et à la nature des données d’entrée.