• Aucun résultat trouvé

Chapitre IV --- Amélioration d’un aménagement

4. Modification d’un aménagement

4.2. Cheminement dans l’espace des solutions

Nous avons vu en introduction que le mécanisme général d'exploration de l'espace des solutions est une recherche locale : la solution courante engendre une nouvelle solution et ceci se poursuit sous le contrôle d'heuristiques qui seront présentées dans la section suivante. Maintenant que les opérateurs de modification sont connus, on peut décrire plus précisément la manière dont la prochaine solution courante est obtenue et la définition de la notion de solution voisine :

- si l'opération échoue, par exemple parce qu'elle provoquerait une superposition de deux pièces, il n'y a pas eu de progression dans l'espace des solutions donc on recommence le processus de construction de la prochaine solution à partir de � ;

- sinon la validité réglementaire de la nouvelle solution est vérifiée, par évaluation des critères associés. Il suffit qu'un des critères ne soit pas satisfaits pour rejeter la solution et donc, à nouveau, on relance le processus à partir de � ;

- à ce stade, la construction a réussi et on a une nouvelle solution courante. Cette fois, il y a donc eu un pas dans l'espace des solutions. On évalue alors les critères qui traduisent les besoins du futur occupant. Si un besoin n'est pas satisfait, la note du logement vaut 0 et l'évaluation peut être interrompue ;

- sinon, on procède à une évaluation des critères (binaires ou gradués) qui correspondent aux souhaits et on agrège les notes partielles obtenues en une note globale.

Nous pouvons à présent définir de manière plus formelle la notion d'espace de solutions. Toute instanciation de la structure de données (même avec des valeurs farfelues) est une solution. Parmi les solutions, celles dont 1) les pièces ne se chevauchent pas et se trouvent à l’intérieur du contour extérieur et dont 2) le contour extérieur n’a pas été déformé forment l’espace des solutions

géométriquement valides. A l'intérieur de ce domaine, il y a un sous-ensemble qui répond au deuxième niveau d’exigence. Il s’agit du domaine des aménagements qui respectent les normes imposées par le législateur. Nous l’appelons espace des solutions réglementaires. À son tour, ce domaine comporte un sous-ensemble qui est celui des aménagements qui obtiennent une note non nulle à l'évaluation. On parle ici de l’espace des solutions partiellement (note dans ]0, 1[) ou parfaitement (note égale à 1) adaptées à l’occupant et l'objectif est de trouver un optimum de ce dernier ensemble. Dans ce qui suit, nous nous contenterons de dire « solutions adaptées » plutôt que « solutions partiellement ou parfaitement adaptées à l’occupant ».

Vision conceptuelle de l’espace des solutions

Autrement dit, si on rapproche le processus de construction de la prochaine solution courante rappelé plus haut et ces définitions, on constate que l'on se déplace dans l'espace des solutions adaptées. On aurait pu choisir de tolérer des incursions dans l'espace des solutions non réglementaires, voire dans les solutions invalides d'un point de vue géométrique. Nous n'avons pas fait ce choix de crainte que les réparations de la solution courante ne prennent trop de temps (l'unité de temps, dans ce cas, étant l'application d'un modificateur). En effet, nous verrons dans la présentation détaillée des

Solutions adaptées Solutions réglementaires Solutions géométriquement valides

La section « discussion » donne quelques éléments sur d'autres stratégies que le hasard pour le choix du modificateur à appliquer.

Ouvrons une parenthèse. D'un point de vue formel, et bien que cela n'ait pas d'application immédiate dans ce qui suit, le processus complet d'obtention de l'aménagement optimal peut être décrit en programmation mathématique. Un premier modèle consiste à considérer les aspects géométriques, réglementaires, les besoins et les souhaits comme des contraintes, l'objectif étant de maximiser la fonction � = FC. �C

CZ[ , avec �C : la note suite à l’évaluation du logement � et �C : la variable de décision qui prends 1 quand le logement est choisi et 0 sinon. Le programme mathématique s’écrirait comme suit : �= ��� � = FCZ[C. �C �. � �C F CZ[ = 1 �. �C = 1 � ����������� �� ���� ������� �é��é������� �� �é������������ �. �C = 1 (� ������������ �� ���� �������) �. �C ≤ � (� ������������ �� ���� ���ℎ����) �C ∈ 0,1

Où � ∈ ℝF∗!, � ∈ ℝ"∗!, � ∈ ℝ#∗! avec � est le nombre de logement à évaluer.

Ce n'est pourtant pas une vision satisfaisante car les souhaits ne doivent pas être vus comme des contraintes discriminantes au sens de la programmation mathématique, c'est-à-dire des contraintes qui rendent la solution invalide si elles sont pas respectées. Au contraire, les souhaits doivent permettre de comparer des solutions ; ils doivent donc être intégrés à la fonction objectif, ce qui mène au modèle suivant : �′= ��� � = FCZ[C. �C + �C (� − �. �C ) �. � �C F CZ[ = 1 �. �C = 1 (������� �é��é������� �� �é������������) �. �C = 1 (�������) �C ∈ 0,1

où �C ∈ [0,1] est une pénalité positive, on est pénalisé si la contrainte est non respectée.

Nous refermons à présent cette parenthèse sur la formalisation mathématique et revenons au parcours de l'espace des solutions. Nous avons dit que les solutions rencontrées sont toujours dans l'espace des solutions adaptées ; dans ce qui suit, nous ne parlons donc plus de solutions adaptées mais simplement de solutions. Un des problèmes évoqués en introduction de cette partie sur la modification du logement est de garantir que, si �1 et �2 sont deux solutions quelconques, le jeu d'opérateurs de modification permet, au moins théoriquement, de transformer progressivement �1

en �2 ; la satisfaction de cette propriété, que nous appelons la propriété de puissance de l'ensemble des opérateurs, serait la garantie que, quelle que soit la solution de départ, il serait possible d'atteindre une solution optimale. Nous n'avons pas de preuve formelle de cette propriété mais nous avons des éléments qui vont dans ce sens : pour certains aménagements de départ et d'arrivée très représentatifs, on peut démontrer la possibilité de passer de l'un à l'autre avec notre jeu d'opérateurs. Ces cas représentatifs sont numérotés et énumérés ci-dessous. Nous ne rappellerons pas, dans les

1. La forme d'une pièce peut-elle changer ? Peut-on, par exemple, passer d'une forme rectangulaire à une forme en L ? La réponse est « oui ».

On passe d’une forme rectangulaire à une forme en L au prix de deux insertions consécutives de sommets et de deux déplacements de sommets (Figure 121).

Transformation d’une pièce rectangulaire en une pièce en L

Plus généralement, on passe de n'importe quelle forme à n'importe quelle autre forme en combinant des insertions ou des suppressions de sommets et des déplacements de sommets. Evidemment, les déplacements peuvent être contrariés si les sommets sont partagés avec d'autres pièces ou si des pièces du voisinage interfèrent. Ceci sera traité au point 4. A ce stade, on peut simplement garder à l'esprit qu'une pièce peut être déformée de n'importe quelle manière si elle n'est pas liée, par des partages de sommets ou de murs, avec d'autres pièces.

2. Peut-on faire coulisser une pièce le long d'un mur ? La réponse est « oui », s'il n'y a aucun obstacle. La Figure 122 montre par exemple dans quel ordre appliquer quatre déplacements de sommets à une pièce rectangulaire (�1) pour la faire coulisser jusqu'à son nouvel emplacement, en pointillés. L'ordre importe pour deux raisons. La première est qu'il faut éviter les croisements de murs pendant l'opération. La deuxième est que deux des sommets de �1 sont partagés avec un mur extérieur ; en réalité, ce « mur » extérieur (le mur droit sur la figure) est subdivisé en trois murs, dans la structure de données, et un ordre maladroit dans les déplacements des quatre sommets de �1 pourrait amener ces trois murs à se chevaucher temporairement.

Exemple d’une série de déplacements de sommets pour faire coulisser une pièce

S'il y a des obstacles, c'est-à-dire si, après l'un des déplacements de sommets, la pièce en mouvement a une intersection d'aire non nulle avec une autre pièce, les choses deviennent plus compliquées mais restent possibles. Voir le point 4).

Ce cas en recouvre plusieurs autres, selon la manière dont les pièces sont accolées : par un ou plusieurs sommets ou par un ou plusieurs murs. Dans la Figure 123, la pièce P1 partage par exemple deux murs et un sommet avec le contour extérieur du logement et elle partage deux murs et deux sommets avec la pièce P2.

Partages de sommets et de murs

Dans tous les cas, la réponse reste « oui ».

En cas de partage d'un sommet � (Figure 124-gauche), on applique successivement une scission de sommet et un déplacement. Appelons �1 la pièce à isoler, �2. . . �� les pièces qui partagent S avec �1 et �′ le sommet créé par la scission de S. La scission est faite de sorte que �2, �3 . . . ��

utilisent S mais aussi de sorte que, dans �1, � soit remplacé par �′ (Figure 124-milieu).

Annulation d’un collage par un sommet

On déplace ensuite �′ vers l'intérieur de �1 (Figure 124-droite). Ce déplacement est forcément possible car il n'engendre aucune intersection, dès l'instant que l'amplitude du déplacement est suffisamment faible. Les partages de sommets peuvent donc être supprimés.

En cas de partage d'un mur �, la stratégie est semblable (Figure 125- gauche). Notons que le mur n'est partagé que par deux pièces (�1 et �2 sur la figure) mais que des pièces proches peuvent aussi être concernées (�3 et �4). La séparation est réalisée en appliquant deux fois la procédure d'annulation du partage d'un sommet présentée ci-dessus, une fois pour chaque extrémité du mur partagé (Figure 125- milieu et droite -).

Ceci prouve que la réponse à la question 3) est « oui » ; la manœuvre s'accompagne d'une (légère) déformation de P1 mais cela est sans importance puisque, si l'intention est effectivement d'insérer un couloir, il faut bien gagner de la place quelque part.

4. Peut-on déplacer une pièce de sa position actuelle vers une position valide donnée ?

Une position « valide » doit être comprise comme une position « à laquelle la pièce ne chevaucherait aucune pièce existante ». La réponse est « oui ».

Le cheminement est le suivant :

• on désolidarise la pièce des éventuelles pièces adjacentes en appliquant le raisonnement du point 3,

• on réduit considérablement (à une taille proche du point) la taille de la pièce en appliquant le point 1),

• on détermine un itinéraire allant de la position de départ à la position d'arrivée, ce qui peut impliquer de créer des couloirs entre des pièces (point 3) pour libérer un passage,

• on fait suivre cet itinéraire à la pièce en multipliant les déplacements de sommets,

• arrivé à destination, on fait grandir la pièce à ses dimensions initiales (voir le point 1) ; si la pièce doit partager des sommets ou des murs avec d'autres pièces, on utilise des insertions de sommets dans les pièces auxquelles il faut s'accoler, là où se trouvent déjà les sommets à partager, et on fusionne les paires de sommets superposés.

On conclut donc qu'en utilisant uniquement les opérateurs de modification, on peut amener une pièce à n'importe quel endroit du logement.

5. La topologie du logement peut-elle changer ? Par exemple, peut-on passer de la disposition de la Figure 126-gauche à celle de droite ?

Changement profond de topologie

À nouveau, la réponse est « oui » et on le prouve en appliquant des raisonnements semblables à ceux qui ont été utilisés dans les points précédents.

Pour supprimer la branche verticale de gauche du couloir, on peut par exemple insérer des sommets sur le bord gauche du logement, en vis à vis de � et �. On fusionne ensuite ces deux sommets ainsi que C avec les sommets en vis à vis dans les deux pièces de gauche. La branche de droite du couloir est traitée de la même manière.

Pour faire apparaître la branche médiane du couloir, on utilise le point 3).

Cette énumération de cas n'a pas valeur de preuve. Pour qu'elle en devienne une, il faudrait prouver que toutes ces « macro-modifications » suffisent à transformer n'importe quel agencement en n'importe quel autre. Nous considérons cependant que les chances sont élevées que la propriété de puissance de notre ensemble de modificateurs soit avérée.