Communications entre les systèmes de CAO et les systèmes experts à bases de connaissances en bâtiment

Communications entre les systèmes de CAO et les
systèmes experts à bases de connaissances en bâtiment

Couplage CAO-IA

Ce chapitre expose la partie théorique de la thèse. On commence par décrire les méthodes classiques utilisées traditionnellement pour souligner quelques points remarquables concernant les données géométriques simples; nous essaierons après d’illustrer le concept de fonctions d’analyse à travers des exemples très didactiques. Puis nous présentons notre approche, les principes de bases, les moyens de réalisation, les points forts et les points faibles, ainsi qu’une extension du modèle proposé pour une utilisation plus générale par (‘implementation de contraintes. 

Les méthodes classiques

Le dessin moyen de communication

Le dessin est un message émis par l’architecte et reçu par l’architecte et par les autres participants à l’acte de conception. Le message graphique sera interprété pour en tirer les différentes sortes d’informations [LEBAHAR J.C. 83]. Le dessin parait donc le moyen du concepteur pour partager l’information, surtout que la conception fait intervenir plusieurs acteurs et repose énormément sur la communication des idées. Les idées sont concrétisées par le dessin de plans cotés, et commentés, de coupes de façades ou autres vues de détails nécessaires pour la compréhension du projet.

Codage et décodage du dessin

Analysons plus profondément cette phase de communication: Si l’architecte passe un plan décrivant le projet à l’ingénieur, ce qui est mis en commun peut être décomposé en deux parties: -le dessin d’un plan (accompagné éventuellement de descriptifs). -La connaissance nécessaire pour lire un plan. Il ne faut pas confondre cette connaissance avec l’expertise propre de l’ingénieur, c’est plutôt le moyen de décoder le plan. Un plan est un codage spécial de l’information, et le décodage est nécessaire pour extraire cette information.Ainsi l’homme essaie de décoder un plan, ou plutôt de l’interpréter pour en tirer les informations dont il a besoin. A < ^ \ UV liste de locaux liste de parois fig. 

Le décodage d’un dessin

Un plan contient beaucoup d’informations sémantiques sur le projet codées en termes d’entités géométriques (lignes, arcs, hachures,…) L’interprétation des informations à partir des entités géométriques peut changer d’un acteur à un autre suivant ses points de vues ou son intérêt dans le projet; Ê :T » fig.

Pian simple

Si un architecte interprète ce plan, il verra des locaux communicants, des parois, des cloisons, des portes, des surfaces de déplacement,… Par contre, un ingénieur de structure sera attiré par les coins, les intersections de murs qui représentent des endroits potentiels pour l’implantation de ces poteaux, et il verra l’espace du local comme la portée entre nu d’appuis pour ses poutres.

Conclusion

L’informatisation des moyens de conception a porté surtout sur l’instrumentation de la phase de dessin du projet; cependant, la partie d’interprétation d’entités géométriques en entités plus riches en sémantique n’a toujours pas été implémentée. Chapitre 4 Couplage CAO-IA 38 Pour modéliser cette nouvelle information, on va ajouter à la classe d’objet cube les champs au dessus et au dessous qui contiendront respectivement l’objet au dessus et l’objet au dessous s’ils existent. Cependant qui va remplir ces champs et comment? De même la donnée ajoutée va augmenter la taille des objets et la quantité d’informations devient tout de suite énorme pour peu de connaissances. A chaque déplacement d’un objet dans la scène il faut remettre à jour tous les champs touchés. On pense alors à équiper l’objet cube par une méthode de vérification mathématique, de lancer de rayon par exemple, pour pouvoir vérifier s’il y a ou non un objet au dessus ou en dessous. La fonction sera déclenchée à chaque appel au champ correspondant; on peut même aller plus loin en éliminant le champ et en transformant la méthode en une requête qui ramène l’objet au dessus quand elle est envoyée en message à l’objet. La base de données devient moins volumineuse, plus dynamique et sa mise à jour plus simple car il suffit de mettre à jour les entités géométriques sans s’inquiéter du reste. On va essayer d’étendre cette notion de fonction pour qu’elle puisse ramener des objets complexes qui n’ont pas été stockés. Essayons une autre manipulation de la scène avant: plaçons le cube 1 et le cube 2 au même niveau puis plaçons le prisme de façon à reposer sur les deux cubes. LP fig. 4.6 Une deuxième vue de la scène On peut tout de suite remarquer qu’un portique s’est formé, une information sémantiquement riche. Pour stocker cette nouvelle information, on est de nouveau tenté de créer une classe portique qui décrit un portique; cependant qui va instancier cette classe, et quand? N’oublions pas aussi que le nombre et la nature d’interprétations potentielles d’informations géométriques complexes est généralement difficile à prédire. En effet, différents experts regardant la scène verront l’objet complexe et l’interpréteront à leur manière [BILLET A. et AL 87], [CAMMARATA S. et AL 84], [WING J. et AL 85]. Un expert qui s’intéresse à assembler verra la scène de la façon suivante:  fig. 4.7 Scène vue par assemblage alors qu’un expert qui s’intéresse à découper verra la scène de la façon suivante: ^y\ fig. Scène vue par découpage si j’impose une façon de représenter les objets, une limite rigide va vite s’établir, à moins qu’une redondance dans la description puisse prendre en compte toutes les représentations possibles, cela au prix de l’augmentation de la taille de la base de données et au prix d’un temps de saisie multiplié par le nombre de représentations. Ne serait il pas important d’avoir une base de données simple et chacun pourra la lire et l’interpréter par ses propres moyens à l’aide de méthodes qui décrivent comment rechercher ce dont il a besoin? 

Exemple de données géométriques simples en 2D

Imaginons qu’un modeleur 2D ne connait qu’une seule sorte d’entité géométrique 2D: le segment (défini par ses extémités). Un utilisateur ne peut saisir que des segments et la base de données graphique du modeleur ne stocke que la topologie de segment. Supposons que l’utilisateur saisit les segments dans la configuration suivante: Chapitre 4 Couplage CAO-IA 40 A O D fig. 4.9 Des figures simples Dans le premier cas on a des segments qui forment un triangle, dans le deuxième cas ils forment un quadrilatère, et dans le troisième cas un carré. On peut saisir à l’aide d’un modeleur pareil autant de formes complexes que possible, mais le problème reste que le modeleur ne stocke que des segments et les informations de haut niveau tel que carré ou triangle ne sont pas stockées. On peut par contre créer des fonctions d’analyses qui permettent d’extraire à partir des entités géométriques simples des objets plus complexes. On peut par exemple décrire un triangle comme une suite de trois segments dont les extrémités coincident deux à deux et qui forment un pourtour fermé, ou bien un quadrilatère comme une suite de quatre segments …, et un carré comme un quadrilatère dont les quatres segments sont deux à deux parallèles, tous de même longueur et formant des angles droits. L’abstraction des objets géométriques est obtenue par les définitions de ces objets sous forme procédurale dynamique et non sous forme d’attributs statiques. Cette représentation permet à chaque utilisateur de définir à sa façon les objets dont il a besoin d’extraire. Equipé de ces fonctions d’analyses tel que décrites plus haut ce même modeleur est maintenant capable de restituer des informations complexes autres que celles qui sont stockées dans sa base simple.

Concept d’analyseurs

On peut étendre cette approche exposé plus haut à des modeleurs 3D, qui traitent plutôt de la volumétrie, et plus particulièrement celle du bâtiment. Bien que le modèle 3D dans la machine soit virtuel, sa puissance de représentation n’est guère inférieure à celle d’une vraie maquette. Une personne sait facilement interpréter une maquette, peut-on espérer doter la machine de fonctions qui lui permettent d’interpréter ce modèle? On peut imaginer que le modeleur 3D ne stocke dans sa base de données que des entités de volumes simples, leurs topologies (prisme, cube,…), leurs textures (plein, vide, transparent, …), et leurs positions dans le plan. En partant du principe que vide et plein sont des notions de bases connues par le système, on peut définir des entités plus complexes tel que paroi, local, ou cloison. Une paroi peut être définie comme un assemblage de volumes pleins con tig us séparant deux espaces vides; Un espace de local peut être défini comme un ensemble de vides contigus et délimités par des éléments pleins formant l’enveloppe. 

Analyseurs et fonctions

A travers les deux exemples avant on peut noter les deux aspects suivants: -la capacité de tirer des informations sémantiques à partir de données géométriques simples permet de simplifier la représentation d’un modèle dans une base de données. -des fonctions dynamiques qui peuvent ramener des objets géométriques complexes (paroi, espace d’un local,…) ou des informations (au dessus, en dessous, …) permettent à la base de données d’être dynamique et facilite sa mise à jour. Nous allons essayer de combiner ces deux concepts d’analyseurs et de fonctions pour les exploiter dans le domaine du bâtiment. Des fonctions d’analyseurs permettent de scanner une base de données géométrique simple contenant des volumes décrits simplement pour en tirer des informations complexes riches en sémantiques tel que paroi, local, communication,…

Présentation de notre approche

Choix du système

On a vu que les données dynamiques qui évoluent tout au long de la phase de conception sont surtout des informations spatiales et géométriques décrivant le projet (espace local, communication, ouvertures,…). C’est dans cette partie des données que le maintien de cohérence et de la consistance des données est la plus critique. Elle représente aussi la majeure partie du projet qui peut être saisie à l’aide d’un système de CAO. Dans notre approche, on a essayé d’expérimenter les concepts de fonctions analyseurs. Pour cela notre système de CAO est constitué d’une base de données simples, géométriques et sémantiquement pauvres; ce système est par contre équipé d’un ensemble de fonctions d’analyse spatial et géométrique pour la reconnaissance d’entités sémantiques. On verra dans ce qui suit comment sont traités les informations géométriques et les informations non géométriques.

 Les informations géométriques

 Représentation

Les informations géométriques qui peuvent être saisies à l’aide du modeleur de CAO sont des volumes élémentaires; la texture (i.e. la nature des volumes) est la principale distinction entre ces éléments. Les textures utilisées sont: -vide, pour représenter les espaces vides  -plein, pour représenter une partie d’une enveloppe (mur, plafond …) -transparent, pour représenter des ouvertures (portes ou fenêtres,…) Aucune autre information de haut niveau ou d’ordre sémantique n’est ajoutée à la description des données. Un projet est alors un ensemble de volumes de textures vides, pleins ou transparents et qui sont positionnés dans un système d’axes; l’ensemble est appelé « univers ». La notion mur, cloison ou linteau n’est ni mentionnée ni saisie ni désignée dans la base de données. Bien sûr le modeleur est équipé d’outils pour la manipulation graphique des volumes. On a des fonctions de création, de modification, d’extraction, de déplacement,…; un objet particulier appelé curseur permet de réaliser ces fonctions interactivement d’une façon graphique sur l’écran; il sert aussi de dispositif de pointage à l’intérieur du modèle géométrique. En parallèle, et pour faciliter la saisie, certaines fonctions de saisie complexes ont été implémentés; par exemple une fonction creer-local qui permet de créer les volumes nécessaires pour la représentation de la volumétrie d’un local en forme de parallélépipède en lui fournissant ses dimensions; il faut insister sur le fait que cette fonction ne crée aucune information pour stocker la notion local, mais se contente de créer la volumétrie, i.e. les volumes élémentaires de la géométrie du local. Avec les fonctions de haut niveau on peut piloter le logiciel de CAO à l’aide de commandes simples tel que creer-local ou creer-paroi. Les fonctions de pilotage et les fonctions d’analyse assurent la communication dans les deux sens avec le modeleur. On peut y stocker puis restituer de l’information à l’aide d’un langage évolué manipulant des entités sémantiques et ne stockant que des informations géométriques simples. L’outil est aussi muni des fonctions classiques de visualisation en perspective et en plan de l’univers ou d’une partie de celui-ci afin de faciliter la saisie et la compréhension du projet.

Les fonctions d’analyse

Au dessus du noyau physique géométrique, un ensemble de fonctions d’analyseurs est construit formant une surcouche. Ces fonctions sont capables d’identifier différentes notions de haut niveau riches en sémantiques tel que plafond, murs, cloisons, linteaux,… 

Choix des fonctions

On stocke les informations pour pouvoir les restituer et les utiliser dans des processus de calcul ou de vérification. Les modules des programmes de calcul ont besoin de paramètres en entrée (input) pour produire des résultats ou des sorties (output)

Table des matières

Chapitre 1 Introduction
1.1 Cadre général
1.2 Description du problème
1.3 Plan et avancement de la thèse
1.4 Déroulement de la thèse
1.5 Le présent document
Chapitre 2 CAO et architecture
2.1 Avant la CAO les méthodes classiques
2.1.1 introduction
2.1.2 Rôle du dessin et des outils graphiques
2.1.3 Résolution graphique et représentation
2.1.4 Le rôle du dessin dans la communication
2.1.5 Conclusion
2.2 La CAO en architecture
2.2.1 Introduction
2.2.2 La modélisation géométrique
2.2.2.1 La modélisation bidimensionelle
2.2.2.2 La modélisation tridimensionelle
Modèle en fil de fer
Modèle surfacique
Modèle solide
2.2.3 Fonctions graphiques 1
2.2.4 Représentation des données
2.2.5 Manipulation de données sémantiques
2.2.6 Approches de modélisation
Exemple
2.2.7 Création des versions ou historique
2.2.8 Echange de données
2.3 Logiciels existants
2.3.1 CAO et saisie graphique
2.3.2 Utilitaires couplés ou intégrés
2.3.3 Limites de ces utilitaires
2.3.4 Limites des logiciels de CAO
2.4 Vers une CAO intelligente
2.4.1 Evolution des recherches en CAO
2.4.1.1 L’intégration de représentations multiples
2.4.1.2 La conception paramétrique et variationnelle
2.4.1.3 Intégration de l’orienté-objet
2.5 Conclusion
CHAPITRE 3 Conception et IA
3.1 La conception
3.1.1 Généralités
3.1.2 Les composantes de la conception
3.1.3 Les modes de conception
3.1.4 La conception en architecture
3.1.5 Conclusion
3.2 L’intelligence artificielle
3.2.1 Environnement et techniques de PIA
3.2.1.1 La représentation par la logique
3.2.1.2 Les langages à objet
3.2.1.3 Les systèmes experts
3.2.1.4 Les bases de données en IA
3.2.2 L’utilisation de PIA en conception
3.2.2.1 Les systèmes experts en conception
3.2.2.2 Limites de ces systèmes
3.3 Essais existants les systèmes intégrés
3.3.1 Introduction
3.3.2 Types de données en bâtiment
3.3.2.1 Données géométriques
3.3.2.2 Données de contexte
3.3.2.3 Contraintes et critères de performance
3.3.3 Rôle des outils de CAO
3.3.4 Base de données objet et bases de données géométriques
3.3.4.1 Première solution
coupler un modeleur de CAO avec une base de données
objet
Couplage dans le sens base de données objet, outil de
CAO
Couplage dans le sens outil de CAO, base de données
objet
3.3.4.2 Deuxième solution enrichir la base de données du modeleur par des entités
riches en sémantiques
3.3.5 Limites de ces approches
CHAPITRE 4 Couplage CAO-IA
4.1 Les méthodes classiques
4.1.1 Le dessin moyen de communication
4.1.2 Codage et décodage du dessin
4.1.3 Conclusion
4.2 Concept de données géométriques simples
4.2.1 Essais sur les modeleurs intelligents
4.2.2 Exemple de données géométriques simples en 2D 3
4.2.3 Concept d’analyseurs
4.2.4 Analyseurs et fonctions
4.3 Présentation de notre approche
4.3.1 Choix du système
4.3.2 Les Informations géométriques
4.3.2.1 Représentation
4.3.2.2 Les fonctions d’analyse
4.3.2.2.1 Choix des fonctions
4.3.2.2.2 Principe des fonctions
4.3.2.2.3 Définitions multiples pour une même
fonction
4.3.2.2.4 Appels de fonctions emboîtés
4.3.2.2.5 Fonctions utilitaires
4.3.2.3 Langage de requête pour une base de données
géométrique
4.3.2.4 Le maintien de cohérence
4.3.2.5 Extensibilité et modularité
4.3.3 Les informations non géométriques
4.3.3.1 Les informations indépendantes de la géométrie
4.3.3.2 Les informations dépendant du projet et de la
géométrie
4.3.3.3 Les informations indépendantes du projet
4.3.4 Le problème de compatibilité
4.4 Extension du modèle
4.4.1 Les objets incomplets
4.4.2 Les contraintes
4.4.2.1 Représentation des contraintes
4.4.2.2 Problème de satisfaction automatique de contraintes
4.4.2.3 Maintien de cohérence
la vérification des contraintes
4.4.2.4 Contraintes imposées et contraintes inférées
4.4.2.5 Les contraintes considérés dans notre essai
4.4.3 Exemples d’utilisation
4.4.3.1 Utilisation des contraintes en vérification
4.4.3.2 Utilisation des contraintes en conception
4.4.3.2.1 Décomposition du problème en sous
problèmes
4.4.3.2.2 Scénario de conception
4.4.3.2.3 Génération et test de solution
4.4.3.2.4 Maintien d’arbre d’états et de versions
4.4.3.2.5 Interaction et automatisation
4.5 Conclusion
4.5.1 Limites et extensions possibles
CHAPITRE 5 Réalisation logicielle
5.1 Introduction
5.2 Outils et environnement
5.2.1 Présentation de SMECI
5.2.1.1 Représentation des connaissances en SMECI
5.2.1.1.1 Représentation des objets
5.2.1.1.2 Les catégories
5.2.1.1.3 Les prototypes
5.2.1.1.4 Les objets
5.2.1.1.5 Méthodes ou messages
5.2.1.1.6 Remarque
5.2.1.2.Le raisonnement dans SMECI
5.2.1.2.1 Règles de production
5.2.1.2.2 Le format des règles
5.2.1.2.3 Structuration du raisonnement
5.2.1.2.4 Le moteur d’inférence
5.2.1.3 Conclusion
5.3 Les informations géométriques
5.3.1 L’outil de CAO intégré
5.3.1.1 Introduction
5.3.1.2 Le modèle implemento
5.3.1.2.1 La catégorie « voxel »
Remarques
5.3.1.2.2 La catégorie « univers »
Les instances de la catégorie univers
Les méthodes associées à la classe univers
5.3.1.2.3 La catégorie « curseur »
Les méthodes associées à la catégorie « curseur »
5.3.1.2.4 Les autres catégories et objets de l’outil de
CAO
La catégorie « point »
La catégorie « cube3d »
Les méthodes associées à cube3d
La catégorie « cube2d »
Les méthodes associées à cube2d
Les catégories « fenêtre », « vue » et « environnement »
5.3.2 Les fonctions d’analyse géométriques
5.3.2.1 Fonctions de saisie et fonctions de requêtes
5.3.2.2 Choix des fonctions
5.3.2.3 Les fonctions de bas niveau et de haut niveau
5.3.2.4 Les entités définies
5.3.2.5 Les hypothèses de départ
5.3.2.6 Les entités définies pour un local
5.3.2.6.1 L’espace intérieur d’un local
5.3.2.6.2 L’enveloppe d’un local
5.3.2.6.3 Les parois d’un local
5.3.2.6.4 Les ouvertures d’un local
5.3.2.6.5 L’espace extérieur du projet
5.3.2.6.6 Parois extérieures et intérieures
5.3.2.6.7 Ouvertures extérieures et intérieures
5.3.2.6.8 Cloison commune entre deux locaux
5.3.2.6.9 Communication entre deux locaux
5.3.2.6.10 Les orientations des parois et des
ouvertures
5.3.2.7 Les entités définies pour le projet
5.3.2.8 Requêtes complexes à partir de requêtes simples
5.3.2.9 Requêtes pour les attributs d’un local
5.3.3 Les fonctions de haut niveau
5.4 Les informations non géométriques
5.4.1 Catégories et objets non géométriques
5.4.2 Les informations indépendantes de la géométrie du projet
5.4.2.1 La catégorie site du bâtiment
5.4.3 Les informations non géométriques dépendant de la géométrie du projet
5.4.3.1 la catégorie local
5.4.3.2 Les méthodes associées à la catégorie univers
5.4.4 Les informations indépendantes du projet ou catalogues
5.4.4.1 La catégorie « composition »
5.4.4.2 Les méthodes pour instancier « composition »
5.4.5 La fonction information ou comment faire le lien entre une entité et une composition
5.5 Les objets incomplets et les contraintes
5.5.1 Introduction
5.5.2 La catégorie « cntrnt »
5.5.2.1 Les fonctions pour instancier des contraintes
5.5.2.2 Les fonctions de vérification de contraintes
5.6 Conclusion
Chapitre 6 Applications
6.1 Introduction
6.2 Première application
6.2.1 La saisie d’un projet
6.2.2 Le postage des contraintes
6.2.3 La saisie de la volumétrie
6.2.4 La vérification des contraintes
6.3 Deuxième application
la construction d’un réseau analogique à partir de la saisie géométrique
6.4 Troisième application
Le robot mobile simulation de déplacement et calcul de trajectoire
6.5 Quatrième application
Système expert pour la conception d’un circuit de chauffage hydraulique
6.5.1 L’emplacement des radiateurs
6.5.2 Le choix du circuit hydraulique
6.5.3 Exemple
Chapitre
Conclusion
7.1 Travail effectué
7.1.1 Modeleurs intelligents et données géométriques
7.1.2 Modèles de connaissance
7.2 Points délicats du système
7.3 Utilisations et extensions possibles
Bibliographie

projet fin d'etudeTélécharger le document complet

Télécharger aussi :

Laisser un commentaire

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