Initiële waarden
>995-7/8
NGT GEODESIA
meer variabelen wordt een constraint genoemd (zie kader).
Een constraint tussen twee of meer variabelen specificeert
een deelverzameling van het cartesisch produkt van de be
treffende variabelen-domeinen. Een constraint tussen de
twee variabelen f;en Vj wordt gegeven door een deelverzame
ling van DjxDj waarin combinaties van waarden zitten, die
geldig zijn volgens die constraint. Zo'n deelverzameling heet
een „tuple". De verzameling van de domeinen van alle varia
belen is (S).
Om de inhoud van constraints te verduidelijken, volgt hier
een voorbeeld. Stel er moet een aantal woningen (u>tot) wor
den gerealiseerd. Er worden twee soorten woningen onder
scheiden: vrije sectorwoningen (wvs) en sociale sector
woningen (wss). De vrije sectorwoningen hebben een totale
opbrengst (ovs), waarbij iedere kavel 50 000 oplevert; de
sociale sectorwoningen hebben een totale opbrengst (oss),
waarbij ieder kavel 20 000,- geeft. De totale opbrengsten
van alle woningtypen zijn otot. De zes genoemde variabelen
hebben alle het domein [0,°°]. Stel dat ten hoogste honderd
woningen mogen worden gerealiseerd en dat er minstens
evenveel sociale sectorwoningen als vrije sectorwoningen
moeten worden gerealiseerd. De volgende constraints zijn
dan te definiëren:
Wtot 100
wvs wss
Wvs wss
Ovs 50.000 *wvs
Oss 20.000 *wss
O tot - °lis+ °ss-
Hieruit komen onder andere als cartesisch produkten voort:
Dwtot x Dwvs x Dwss
Dw,,s x Dwss
Dom x Dwvs
Doss x Dwss
Dotot x Do,,s x Doss.
Binnen de constraints kunnen één of meer variabelen voor
komen, die men wil optimaliseren. Hier zouden dit de totale
opbrengsten kunnen zijn. De constraint die deze variabele
bevat, heet de doelstellingsconstraint. Een systeem kan meer
dere van deze constraints bevatten. Zo zou men niet alleen
het saldo kunnen optimaliseren, maar ook de hoeveelheid
groen of de oppervlakte bestaande bedrijvigheid. In fig. 1
wordt het netwerk van constraints alsmede de variabelen
weergegeven. De variabelen worden gerepresenteerd door
ronde knooppunten en de constraints door rechthoekige
knooppunten.
De eerste stap voor het maken van een grondgebruiksanalyse
en van een grondexploitatie is het vaststellen van de grenzen.
In eerste instantie zijn dit in het voorbeeld de domeinen voor
alle variabelen. Die worden gesteld op [0,°°]\ immers men
kan niet minder dan niets van een bepaalde variabele produ
ceren en het maximum is nog niet bekend. De oplossings
ruimte (5) die hieruit voorkomt, is:
S Dwtot x Dwvs x Dwss x Dotot x Dom x Doss
- [0,°o] x [0,°°] x 0,°o] x [0,°°] x [0, ooj x [o, °°J.
Constraint based reasoning
Voor het opstellen van een grondexploitatie en bij een
grondgebruiksanalyse is altijd een groot aantal constraints
aanwezig. Zo zal een deel van de aanleg van de riolering
altijd aan de aanleg van verharding voorafgaan. Hetzelfde
geldt voor groen waarvan de aanleg meestal op die van
verharding volgt. Dergelijke constraints zullen „stan
daard" in een systeem kunnen worden ondergebracht. De
constraints zijn altijd aanwezig. Bij gebruik kan hiervan
worden uitgegaan.
Een systeem dat constraint based reasoning ondersteunt,
opent met de verschillende constraints. Die zijn aan te
passen en aan te vullen. Zo ontstaat het totaal van alle
constraints die voor een bepaalde locatie van belang zijn.
Zo kan men stellen dat een busbaan vóór eind 1996 moet
zijn aangelegd of dat het budget in 1996 niet meer dan
5 miljoen gulden is. Daarnaast kan men een volgorde
aangeven tussen de aanleg van de busbaan en de overige
ontwikkeling van een locatie.
Daarna begint het systeem de ruimte binnen de con
straints te bepalen. Na de nodige heen en weer gaande
bewegingen en rekening houdend met de doelstellings
functies vindt het systeem een oplossing of blijkt er geen
oplossing mogelijk te zijn. Daarbij wordt gekeken of aan
de voorwaarden wordt voldaan en worden de activiteiten
in de juiste volgorde gezet.
Nadat het systeem met een bepaald resultaat of geen
resultaat terugkomt, kan de gebruiker het resultaat en de
onderliggende gegevens inzien. Daarnaast kan de gebrui
ker uitleg krijgen over de manier waarop een fasering is
verkregen en de redenen waarom bepaalde hoeveelheden
in verschillende intervallen gefaseerd zijn.
Als deze uitkomsten worden vergeleken
met de constraints omtrent woningaan
tallen en dergelijke, dan is natuurlijk
meteen al te zien dat er in de oplos
singsruimte tuples (verzamelingen van
waarden) voorkomen, die niet geldig
zijn. Bijvoorbeeld de variabele wtot mag
geen waarde groter dan 100 krijgen.
Het idee is om S) te bepalen door de
oplossingsruimte te verkleinen door
ongeldige tuples te verwijderen. Hier
voor zijn verschillende technieken in te
zetten, zoals Waltzfiltering [2]. Hierbij
worden van het domein van iedere va
riabele steeds de grenzen aangepast. De
aanpassing vindt plaats door formule
ring van een constraint die het verband
weergeeft tussen de maximale en mini
male grenzen van variabelen en door
vervolgens de maximale en minimale
waarden van de variabelen in de con
straint in te vullen. Eén variabele vormt
de aanleiding voor het formuleren van
de constraint en de bestaande con
straints (fig. 1) die met die variabele te
maken hebben, vormen de basis voor
de nieuwe constraint. Zo zal, als men
het maximum van een variabele ovs
nodig heeft, in een vergelijking als
338