Home

The Application of Intelligent Knowledge Based Systems in Building

image

Contents

1. ver_listr done fi total_no_wins 0 no_windows forall j upto nsur do no win no windows i j total_no_wins expr total_no_wins 0 no_win 0 no_windows no_windows no_win 0 done no_windows if test O total no wins gt 0 then forall j upto nsur do no win no windows i j if test O no_win gt 0 then forall k upto no_win do win_xzdxdz window i j k win_xzdxdz done fi done fi total_no_doors 0 no_doors forall j upto nsur do no dr no doors i j total no doors expr total_no_doors no_dr 0 no_doors no_doors no_dr 0 done no_doors if test O total no doors gt 0 then forall j upto nsur do no_dr no_doors i j if test O no_dr gt 0 then 52 fi forall k upto no_dr do door_xzdxdz door i door_xzdxdz done done fi insolation data zone i if X insolation_data X then ife_z i shd else insolation_data fi ife_z i geo on done B EOI Final report IKBS in Building Design j k insolation data To explain the syntax consider the first 12 lines of this script Line Content Purpose 1 3 4 5 8 9 10 11 12 13 etc imp lt lt EOI 6 a a nz no zones nokey forall i upto nz 0 do 96 zsht zone type i if test X zsht Xrec then Comments Command to run ESPimp with input taken from this
2. 13 2 Creating Form Sets It is envisaged that all IFe users will be presented with the same initial form with subsequent forms tailored to their individual needs The template or definition file corresponding to this initial form has been installed as ife lib uc initial forms master and is reproduced here in annotated format to demonstrate the use of the syntax Syntax Associated Data Meaning new desk name IFe 2 2a of September 1989 Beginning of the master or desk form definition all other forms 21 shade data font label font application font origin size help border selection border end desk new form name shade origin size data font label font application font border selection border end form new field name type origin size label string label position help description Final report IKBS in Building Design white fonts fixedwidthfonts serif b 10 fonts fixedwidthfonts cour b 10 fonts fixedwidthfonts cour r 10 32 132 46 This is the IFe master form End of desk form definition chat area 63 1 5 74 17 fonts fixedwidthfonts serif r 10 fonts fixedwidthfonts serif r 10 fonts fixedwidthfonts serif r 10 2 2 chat user character 0 5 1 5 7314 Feedback fit above This is a text area for general c
3. uorj3 paud vorieqosur UId63 voriotpaid Burpeye pusqc3 sajnpow Ayan sajnpow juawaseuew sTS eue pue wuawabeuew q p 21112 211945 Juawabevew q p equavodwos ywerd 331d 453 Yowobtuve q p sarod 10045 quowabevew q p 9v0119NI 1809 UOJ JS Q p sapysadosd mopujn Q P uo 8yosUs bu peys saseqeiep q p ayap aowa Q p 3uouodeo jue d q p setyjoud Qq p 9U0r 2n1 9U02 8 80da02 Q P 9901120138002 OAT TET Id 0 suopjeqnqe s31udej6 sonmeis vor 1e501123U spe qsue pue 124028J n 01 nods aoueTeq ssew pus 12u8 snoouej ners 1011002 Jaen n Japun uorje mw 9 sn0j06 J dajs oar pue porJad uorjs hers Aue 9 npsuos OsqUOD jue d Butp rnq kua 9uj6ua uo jepneys SWISS voridp2289p jue d Sutpt1nq voriturJap Al yews jeoqydes6 serae bury ytp naq BAT Wadesed Guyysaya eap pny U0 192900 ae 9012 U wesboid juswabeuew ynduy duiqs3 suop3e nqei pue srs wue 18913913039 eqdsrp teotydex6 uor3eboi193uT 1 n931 uoT1vst nsTA fo Q9 TeA Ore SapijrT TOvj andano jo joarp19A V HISasa Aq P 8310531 43 UT pazRD0 3 n 81 wop3P nw s BY uo s33e1odo YOTYA uvi6oid 3nd3no ay sy d 39 3uT1 uve Je suotienba jo 38 burj nso1 ayy Buyaqos snoeue3 nugS vay pue suorsuauTp aoeds puv 9wT3 1940 suorat butJowsaqUT pie u ng q BoURTeq JPY v bupyu10j19d pou uova 103 3sei93UT JO S3ujo
4. Date Started left hidden On form start up do not show this concept 24 help description end field new field name type origin size label label position start help description end field new field name type origin size label string label position help description end field new field name type origin size label string label position help description selection border border end field new field name Final report IKBS in Building Design Date of first session for this project This field gives the start date for the work on this project session integer 57 5 5 21 string left hidden Session number of this consultation This field is used to identify subsequent sessions targeted on an active project Field type Session Number project character 13 6 5 471 Project Name left Project name or identifier This field is used to identify the project so that the data can be subsequently retrieved used m focus label Field type a label only that is no input required 19 5 9 5 00 Focus for discussion fit above Push a button to change topic of discussion These buttons switch the focus of discussion to the requested topic The relevant forms will be displayed below existing ones may disappear It is suggested that buttons are wo
5. 3puoom au8A BTTIUL st Dur3eeudeao E euoz 9u3 Jo SNED UL Z STEIOL 3 5e33xe 43ndur Juerd on uor32eAuo2 e egans enbedo peog Tenses eArI3284u0 peo AeTOS quTod a1 TeuUISQUT uor35npuoo 1000 IEBU1e3xe uor3onpuoo 100g eTeju2e2ut uor35npuoo oputmn jeu2e1xe 1UOTJONPUCD nmopurin PROT ATE UOTIETIQUSA PROT ATE VOTIEIITTIUI Ueue4our de3s eur4 and4no de4s eur3 uorqernurs uquom LT ed o3 uzu LI nom potaed Unopyeeq Jaus ES HEELS 79h B Eg ShOTT 39 179 LTO LI LT FAT LI T ANTEA WHWIXeW 9uoZ Z anje4dedue3 queqrnsey out de3s eut4j andano deys swtz uotzepnwits ed T 3e S ITNSe1 107 gndqno uor4eb5oaaeaqu I 93 9Tqe3 Asewwns euoz E 9uoz peTdnd50 UT san250 e101e18u3 Butge yd no S10 squedn 5o 10 squedn550 10 peiepao sued petdn250 J euoz Burx2eu oi perdn22o 30N J s euoz burs52u noil seuoz Durnorro3 ul le e E kA os S e OEE EES yuo ee SS SS Sle tal Figure 5 Output from the comfort assessment script The methodology is obviously more involved Only the more salient features of the scripts are discussed here since much effort would be required to fully explain the subtleties of script syntax The interested reader should consult the appropriate Unix manual entry man sh in s and symbols and the variable substitutions Although the sub scripts
6. Because the requirements of these three user types were kept firmly in mind during its design stage the IFe can potentially handle any desired user type Unfortunately the resources available only permitted the second category to be implemented in any great detail Another orthogonal categorisation is based on the user s level of expertise In the field of building performance modelling experience to date tends to classify users into two categories the expert and the novice note that the novice is usually an expert in his own field the term is here used only in the context of computer modelling The requirements of these two classes of user differ substantially The expert as usual is concerned with speed and flexibility of input direct control of the operation of each module of the system and access to all the resultant output in a structured but flexible manner The novice also as usual wants a clear and coherent interface where the system provides guidance on options and their implications error trapping and recovery and presents results in an easy to understood manner As well as distinct classes of user there are 3 distinct facets of the modelling process each raising its own set of problems for the user These are data input model control and result interpretation Data Input One of the basic difficulties facing designers is the sheer quantity of data required to describe a building and manipulate a model Not only is gatheri
7. Designer Here the model has typically to deal with the earlier stages of the design process characterised by high level abstract concepts incremental and exploratory definition of the issues lack of focus from the system viewpoint tentative data missing information and so on What is required is a feel for the building performance notification about potential trouble spots and information on the consequences of alternative design decisions The Engineer Complementary to the above once the overall design decisions have been made there is a wealth of hard concrete information and a set of well defined objectives albeit within each objective there is a designer type activity to be carried out The task thus becomes the utilisation of appropriate elements of the appraisal system to provide hard information upon which to make engineering decisions and provide feedback on the performance of the proposed building Normally the appraisal system matches this task quite well but the user does not want to have to deal with the complexity and obtuseness of specific computer programs The Modeller Here the user is probably very familiar with the appraisal system and requires almost direct access to its functionality The only help required is perhaps straightforward assistance with 3 Final report IKBS in Building Design data preparation both by providing standard data and by providing sensible default values to minimise data input
8. Then the Unix program clear is invoked to clear the window in which the script will run All run time variables are then assigned a default value before being reassigned as appropriate on the basis of the command line options established by the Appraisal Handler Summary information is then output before the ESP simulation is requested by issuing the command sim Since the script will have no user interaction ESPsim s standard output and input are redirected In this case standard output is discarded put to dev null while standard input is taken from the script itself lt lt until the tilde character is encountered The ESP simulation is now performed against the driver commands of lines X through Y These commands are identical to those that would be entered if the system was being operated interactively The 6 informs ESPsim that it will be operating in script mode and so internally it reassigns its output channels to enable text and graphics outputs to be captured separately In this script no results library is created Instead ESPsim s summary output feature is invoked so that the final result passed back to the Application Handler is a file containing the following information ESP Script 1 Heating Plant Sizing Climate file usr2 ife lib tmp climate Configuration file usr2 ife lib tmp building Configuration description ESP standard test Control file name usr2 ife lib tmp control Building save option No res
9. are designed to work together they can be used independently For example to get an energy balance for a particular zone script 2 could be invoked lt lt i eS gt s order to fully grasp the data redirections used throughout the ghout This is set in iferc c C Shell or The environment variable Fe HOME is used throu 49 Final report IKBS in Building Design Aferc b Bourne Shell to define the home directory of the IFe This allows the ESP files to exist in and the script to run from any directory Any variables used must then be exported so that other scripts can use them For example here IFe HOME is exported The echo program is used throughout to write to a trace file comfort trace in order to provide a complete record of the performance assessment It is the Appraisal Handler s job to determine which if any of the command line options h i 0 f c b p t or d should be invoked and to supply the corresponding arguments At the start of script 1 variables are assigned their default values The command line is then scanned to determine what substitutions are appropriate For example comfort i set o 25 would cause the script to execute with standard effective temperature defined as the comfort index with a temperature level of 25 C defined as the overheating cut off Obviously there are many premutations ESPsim is now run to determine the building s behaviour against the default cli
10. awk script selects the zones with overheating problems and sorts them into descending order The temperature used to indicate overheating is obtained from a recode in the file containing OHT nn where nn is the temp If this record doesn t exist a default is used Script comfort_worstz provides the OHT record This script is totally dependent of the formats used by ESPout Its output is used by the script comfort_awk_worstz If ESPout changes this script may have to be modified and if this script is changed script comfort_worstz may require modification BEGIN ORS OHT 25 nz 0 1 OHT S OHT 2 1 1 9 if 2 gt OHT PT nz 2 PZ nz 1 nz END for 120 i lt nz i Stop print writing NL Assume default temp as showing overheating Pick up overheating temp from comfort_worstz Select line starting with no Ist no is zone number 2nd no is max temp Only save o heat zones Exchange sort temps 47 Final report IKBS in Building Design for j i 1 j lt nz j and assoc zones if PT i lt PT jD f tmp PT i PT i PT j PT j tmp tmp PZ i PZ i PZ j PZ j tmp for 120 i lt nz i print zone nos 1 line print PZ 1 printf Wn Th KKK Script f eek This awk script selects the worst energy flowpaths contributing to the zone overheating and prints them currently any n
11. by the Knowledge Handler this might suggest that the current user conceptualisation is inappropriate The above should give a feel for the potential of the User Handler to monitor the user interaction Of course the difficult question is deciding what to do about the conclusions Above we just make recommendations to the user and leave it to her him to make the decisions Extra information such as the user s goals and the rate of progress towards achieving them or the proportion of irrelevant information volunteered could be made available to help the user model to make the decisions itself This is a major research area 13 4 2 Modifying the User Interaction On start up after an explicit user request or as the result of a user model recommendation it may become necessary to change the way the user interaction is being handled Corresponding to the different ways of categorising the user given in Section 2 it may be wished to modify that aspect of the user interaction to a simpler or to a more sophisticated manner The easiest course of action from the User Handler s point of view is to change the 32 Final report IKBS in Building Design level of expertise the user is assumed to possess This is handled within the Knowledge Handler By posting a user level Tuple to the Knowledge Handler the quantity and content of the feedback to the user will be changed see the feedback predicate described in Section 13 3 Furthermore the
12. comfort_trace out gt gt dir tmp comfort_trace 2 gt dev null lt lt 6 comfort_results y n a dir tmp comfort_persp_in f echo gt gt dir tmp comfort_trace echo comfort running viewer to get perspective gt gt dir tmp comfort_trace echo dir tmp comfort trace viewer dir tmp comfort trace 2 gt dir tmp comfort_persp_out lt lt 6 S dir tmp comfort persp in v S b display graph mv dir tmp comfort_persp_out dir tmp comfort graph tektool Ws 850 706 Wp 200 100 WP 1078 750 W1 perspective view r comfort graph sun amp Get zone temperatures from script s20_worstz echo dir tmp comfort trace echo comfort spawning new window with comfort worstz running dir tmp comfort trace echo dir tmp comfort trace shelltool dir binsh comfort_worstz W1 worst zone Wp 10 12 Wh 22 WP 1080 512 WL worst amp while test f comfort lock Hang around until lock file appears do 41 Final report IKBS in Building Design sleep 5 done It s here check for overheating lock file identifies zone if test s comfort_lock then Lock file has worst zone in it echo gt gt dir tmp comfort_trace echo comfort spawning new window with comfort_cause running gt gt dir tmp comfort_trace echo gt gt dir tmp comfort_trace shelltool dir binsh comfort_cause W1 cause Wp 10 412 Wh 27 WP 1080 592 WL cause amp fi KK KK Scr
13. field name type style origin size label string label position selection border border menu help description Final report IKBS in Building Design suggestions and session status info It scrolls so previous messages can be recovered 0 0 End of field definition Change the parent form to be in this case the desk form user_name Name of concept subsequently referred to by the Dialogue Handler as user_name alpha Field type here an alphanumeric field plus a 13 1 5 251 string Your Name left Put the label to the left of the concept field You should enter your name here This field is used to maintain a chronological record of the individuals working on the project user type popup Field type here a pop up selections of icons defined by files of the name given under the menu entry below and located in directory ife lib icons If these icon files do not exist then the file names are shown key The style of the pop up icon 40 1 5 64 64 pixels Field size in pixels User type fit above 0 8 engineer Icon file names or pop up panel architect labels modeller User type engineer architect or modeller This button identifies the currently selected user type This dictates the style and content of the forms to be displayed during this session An attempt will be made to ask only for information liable to be available t
14. file bm output n gt file ORS OFS lines beginning with file change the output file default bm output file print file 2 n next matches Blackboard querys ie lines of the form n no zones are converted into a query of the u_cpt area of the Blackboard for the data associated with no zones 96 print echo query u opt for i 4 i lt NF i print i print 2 amp 1 read junk junk junk for i 4 i lt NF i printf junk printf 2 lt amp 0O n next match literal data ie lines completely enclosed in quotes print echo 0 gt gt file n next 4 54 Final report IKBS in Building Design match special for loops ie lines of the form forall i upto n forall J l upto Vt print 2 1 n print while 2 print expr 2 1 Ill true amp amp print 2 It 4 Wn next matches everything else eg variable assignment if for switch cmds etc 5f print 0 Wn next This filtering is equivalent to awk f pat_fil DDS where pat_fil is the preceding awk pattern file Secondly and finally the output script bm output is passed to a Bourne Shell and executed This results in the final data set The Data Handler is run once the Knowledge Handler and Appraisal Handler have collected the necessary data on the Blackboard If several data files are requi
15. file until string EOI is encountered ESPimp required the terminal type to be defined Here we choose non graphics mode 6 At this stage in ESPimp a menu appears We choose option a which allows us to define zone geometry We now ask the Blackboard for the number of zones in the problem Note that requests to the Blackboard are preceded with a the concept to be matched follows the and the result is assigned to the variable preceding the The string nokey is part of the Blackboard Tuple We now establish a Shell forall loop to process each zone The first piece of zone information required by ESPimp is the shape type and so we ask the Blackboard If the shape type is rectangular we proceed with that ESPimp option Apart from the use of normal shell syntax the things to note are the usefulness of the forall syntax extension and the retrieval of data from the Blackboard using the syntax It should be clear that in order to retrieve data from the Blackboard the format of that data must be known Mismatches between the data held on the Blackboard and that required by the package can cause some complexity in the script For example in the script above the Blackboard does 53 Final report IKBS in Building Design not hold the total number of windows for each zone but holds the number per surface Thus in the script each surface has to be polled once to calculate the total number of windows and aga
16. i OZF 1 Occupied Zone Found WZ i break else echo Not occupied fi done if test X OZF X then No impb error exit echo Worst discomfort therefore occurs in unoccupied zone WZ fi echo echo Zone summary table follows echo cat dir tmp comfort_pt echo WZ gt dir tmp comfort_lock Put WZ in lock file for comfort_cause echo echo Graphs of zone performance will appear in separate windows echo Type ctl c to terminate read xa Hang around until told to go away Th KK KK Script eke ek echo I will now determine the cause of the 43 Final report IKBS in Building Design echo discomfort in the worst zone echo echo A zone energy balance follows Get worst zone from lock file or user if no lock file if test X comfort lock X then comfort results dir tmp comfort results echo n Zone to be examined read WZ else WZ cat comfort_lock fi echo dir tmp comfort trace echo comfort cause started worst zone is WZ S dir tmp comfort trace echo dir tmp comfort trace Now get frequency distribution echo gt gt dir tmp comfort_trace echo comfort cause get freq dist from out gt gt dir tmp comfort_trace echo graphpic is graphpic gt gt dir tmp comfort_trace echo gt gt dir tmp comfort_trace out gt gt dir tmp comfort_trace 2 gt dir tmp comfort_graph lt lt 6 comfort results b n 4 1 WZ
17. science expertise required and so allow a greater number of application specialists to work with the IFe directly In the last case a simple schema definition language could be defined which is capable of handling the requirements of the IFe as well as the STEP data exchange standard 18 The Blackboard would then be enhanced by the addition of a mechanism to search the schema so that clients can request specific data without specifying where in the schema it is stored This would greatly increase the efficiency with which new or existing clients could be serviced and by reducing the need to know about the data structuring used by other clients will further improve the IFe s modularity This in turn would ensure that major new components such as new appraisal methodologies or user conceptualisations could be added more easily in future Other potential refinements include 55 Final report IKBS in Building Design e the development of a plan recognition function for the Appraisal Handler to enable it to address the wider less focussed appraisal objectives characteristic of users such as architects and e further work on the User Handler to endow it with genuine use modelling capabilities Much further work will also be required to ensure that the Ife meets the diverse needs of the building design community and to ensure that the system offers a sufficiently generalised range of performance appraisals This can be achieved by e Adding ne
18. syntax is listed in the following table Field Attribute Option Description new end desk start end of desk root form definition form start end of form definition 26 parent form name type start origin size shade label string label position label font data font application font menu border selection border field form name or for desk any unique character string alpha num character integer real date popup button file graphics label menu viewer visible hidden xy X y pixels Xy X y pixels white light grey mid grey dark grey black left hatching right hatching any character string left right above left below left above right above fit above fit below fit right fit left font name font name font name menu entries separated by a newline x X Final report IKBS in Building Design start end of field definition to return form or field definition to being relative to named form assigns a name to a field or form assigns a data template to a field alphanumeric field character field integer only real only system date set pop up edit facility displays a stack of images or text displays one image or text from a list allows a file identifier to be loaded from a directory browser raster graphics field non editable text field displays dynamic menu displays single viewer pic file defines the field state on start up dis
19. torecover and present statistics on comfort prevailing in uncomfortable areas e to determine the cause of the problem and e to provide a comprehensive report on comfort performance including problem causes With reference to figure 4 which shows the program modules of the ESP system this script is constructed as five interrelating sub scripts The first sub script performs a simulation before spawning a number of new windows required later for results reportage The second recovers the state variables which quantify comfort and groups zones according to whether or not they violate the comfort criteria Summary statistics on the worst zone offenders are then output The third script investigates the cause of any discomfort The last two scripts are special in that they exist to compliment the Unix process awk in essence they control the extraction of information such as the cause of discomfort or the location of the worst zone from the data sets transferred to awk from the ESP modules The actual scripts are as follows Th KKK Script exe Comfort Assessment Version 1 4 of January 1988 clear Test to determine if Fe directory path has been set up in cshre file if test X dir X then echo Please source iferc_b Bourne Shell or iferc_c C Shell IKBS in Building Design Final report 37 vorjorpaid s2p112d03d oput CUIM q63 wopiatpaid mory 116 e dS Vopj3rpajd 10 28 naja 1 Ad 3
20. value of the concept isn t set until the user confirms the default or explicitly sets the value Usually it is much simpler for the user to confirm a default than to input the same value For example to handle the concept of time the referenced time zone must be known Assuming GMT is the most likely the Knowledge Handler can send the Tuple suggest user time zone GMT The Forms Program will display this value in a different font to indicate that it has not been input by the user offer user In some cases the Knowledge Handler may be able to make extensive inferences about a 18 Final report IKBS in Building Design subset of the possible values for a concept but can still handle the others For example if the user selects a material that is described in one of the databases available to the Knowledge Handler it need not ask for the material properties If any other material is selected the user will have to supply this information One option open to the Knowledge Handler is to offer the user a list of the known materials using the Tuple offer user material type paper wood brick concrete stone gt In the Forms Program this menu appears when the right mouse button is down over the label of the concept In summary the requests currently acceptable to the Dialogue Handler are Request new_dialog tell_user suggest_user offer_user focus_user unfocus_user ask_user unask_user new_query
21. what is already known about the problem from previous inputs a Knowledge Base can deduce what concept values are sensible that is intelligent input validation and how to derive appropriate default values for concepts required by the target application but not addressed directly by the active user conceptualisation that is intelligent defaulting These Knowledge Bases are also responsible for coordinating the user dialogue often a user conceptualisations will require its own unique dialogue This is achieved by including Prolog code to provide feedback help and guidance to the user To this end a Knowledge 9 Final report IKBS in Building Design Base contains knowledge about the meta concept to which it relates and about the capabilities of the Dialogue Handler in terms of its control syntax The construction of these Knowledge Bases and their insertion into the IFe is explained in Section 13 1 when the Knowledge Bases corresponding to a particular user conceptualisation are considered in detail 7 The User Handler Like the Knowledge Handler this module is an autonomous inference engine based on a Prolog interpreter Its function is to set the appropriate user conceptualisation on the basis of a user s class and level within a class This ensures that the subsequent IFe session is tailored to the user s skill level and that the appropriate level of guidance feedback or help can be given by the Knowledge Handler during the session A
22. which in turn contain any number of images held in exrep format Exrep files are generated from a source bitmap typically but not necessarily a Sun raster using the conv raster conversion program file ife bin conv The browse facility allows for example design exemplars to be offered to an IFe user so that entire models can be defined without the need to explicitly enter topographical and topological information It would also permit 29 Final report IKBS in Building Design related attribute data constructional information and the like to be stored and retrieved This would require the incorporation of an additional predicate within the bld spec knowledge base 13 3 Creating Installing User Conceptualisations The mechanism by which the IFe selects between different user conceptualisations is described in section 13 4 In essence the directory ife lib uc contains one subdirectory for each user conceptualisation This directory is given the same name as the conceptualisation for example engineer When the User Model wishes to utilise a particular user conceptualisation it creates a symbolic link ife lib uc uc which points to the required directory If the user conceptualisation changes during a session the User Handler will change this link accordingly When the user first focuses on a meta concept the focus concept predicate accesses the required predicates by re consulting the Prolog file of the same name in ife lib uc
23. 1 Final report IKBS in Building Design The Application of Intelligent Knowledge Based Systems in Building Design Final Report for EPSRC Grant GR E 18018 Professor J A Clarke ESRU University of Strathclyde D Mac Randal Informatics Rutherford Appleton Laboratory J Rutherford ABACUS University of Strathclyde November 1989 Abstract Over the past decade a new generation of design tool has emerged which has the potential to simulate any building as an integrated environmental and energy system While powerful at their core these computer models suffer from several user interface limitations This report describes an attempt to solve these problems by developing an Intelligent Front End IFE for building performance appraisal in general The architecture of the developed system termed IFe to distinguish it from the general case is described and the use of the system is explained by demonstrating its application in the context of the ESP system for building performance prediction 1 Introduction Throughout the 80s several building modelling systems have emerged which can address the range of cost and performance issues of interest to building designers from realistic visualisations to a detailed appraisal of the operational performance of the energy lighting and control systems In response there have been many attempts to transfer the technology into practice There are two main incentives for this Firstly buildings are complex mech
24. 1n32vjnueu wpy3uoss9 pue w107 xriivM UT St pow 3usuoduoo suotidr12sap 3usuoduwo2 Burureiuos Iep 3usuoduo Juerd y sheuew o3 uviboid y 039 93467 f3uvdno20 woij upeb ieoq bup iwA w73 y3 Bupupjop sva rjo1d oqzy2eds 399fo1d 10 piwpuejs jo i1equnu Aue Buryurejuo esvqeiep se TjO1d upef penses e abeuew 03 werboid y escqeivp soATjruy1d y woij pojowljx siueua s woij p wioj SUOTIONIIsUCD peie e T3 nw a3psgoduos stoya Bupurequoo qezep p 3v s1 32a 01d puoses w jo bupy33tpe pue uop37919 9u3 aorte oste q ya uwv1bo1d STU 3uows 9 snoou bowou Snosuv 92 jo 1equnu e jo Aaqatseywe pue 3yap3diosqe iv os 3veu 27jT22ds apsuep 3rAT32npuoo seg31edoid wogs qdouieq 943 Buyupe3uo2 aseqejep suop32n13su002 sAT3Tuy1d ens ep Ajrpow a30913 ebeuew 03 wu1boid y Seqvivp 3ueuodwo 3ue d pue o 7joid uteb penses uop23n13su05 03 953239 oJpj7wo3n pue spuewwoo bupjjTyp sAT32vieju jo e5uwi w epn oug seTiTQl 2v 39430 MWISdS3 eupbus uopie nu s 3q3 03 1973713 10 9 T 3nd3no uv uy pagroot Buyeq 210j6q AIAI sbuer 9 qve3do29 upu37 pue 31 wboQ qu norq3 passe2o1d ynduy su suejry TIY ouga 1040 po3u nugs pue eauen jut I9yIv n wos 03 pazoatqns eq o3 x1o jeu quejd bupp ynq peurquoo 943 JO UOTITUTJOp ap32v123uf OI saorte yogya weiboid y aya jo 3nogsa msasa WI2453 UTAdSa apeasa Janasa surdsa Pusqsa Idasa o1dqsg dutaga epnjouy ow
25. 9 Final report IKBS in Building Design echo timesteps t timestep echo Default comfort i d o 28 p 17 7 17 7 c clm67 exit fi echo files used echo echo Problem building echo Climate climate echo Analysis period from start to finish echo Comfort index is comfort index at oh_tmp echo echo Simulation commencing please wait echo rm f comfort results Might be user defined file rm f comfort_lock Simulate using parameters saving output for analysis echo gt gt dir tmp comfort_trace echo comfort run sim gt gt dir tmp comfort_trace echo gt gt dir tmp comfort_trace sim gt gt dir tmp comfort_trace lt lt 6 climate 1 building y 1 3 comfort_results start finish timesteps S n M gt eho echo echo Simulation complete analysis commencing output echo directed to separate windows if test comfort_index res then comfort_index d graphpic f 40 Final report IKBS in Building Design fi if test comfort index air then comfort index c graphpic a fi Export required data export comfort_results comfort_lock oh_tmp comfort_index graphpic Get perspective from out amp viewer rm f dir tmp comfort_persp_in echo gt gt dir tmp comfort_trace echo comfort running out to get viewer input file gt gt dir tmp comfort_trace echo gt gt dir tmp
26. Knowledge Handler may modify the questions being asked of the user or even omit some questions altogether depending on the assumed expertise of the user Similarly there is the potential to ask the Dialogue Handler to modify the style of the interactions by switching to a question answer format rather than form filling Of more interest here is the modification of the user conceptualisation underlying the Knowledge and Dialogue Handlers As mentioned earlier each user conceptualisation consists of a set of knowledge bases together with a matched set of forms These are held in a directory called after the user type to which they apply e g engineer architect and so on However the Knowledge and Dialogue Handlers both access these files via fixed pathnames ife lib uc uc kbs in the case of the Knowledge Handler The second uc directory is actually a symbolic link pointing to a user conceptualisation directory engineer for example By changing this link the User Handler can switch the current user conceptualisation to an alternative From that point on the new conceptualisation is used whenever the Knowledge or the Dialogue Handlers want to interact with the user All existing input stored on the Blackboard is preserved The only thing left to do is to ask the Knowledge Handler to redisplay the existing data in accordance with the new user conceptualisation The mechanism to achieve this is shown in the following predicate which performs the ini
27. Meaning Switch to an new interaction program Inform the user about something Suggest an appropriate value for a concept Present sensible options to the user Direct the user to a new meta concept Finish addressing a particular meta concept Request a specific piece of data Withdraw a request for data Ask an unexpected question Example Run the map program Set the contents of a concept field Set or re set a field s default value Set menu options Display a form Hide a displayed form Display a concept field Hide a displayed concept field Create a new concept field 13 1 3 Built in Utilities This section lists the utility predicates built in to the Knowledge Handler Most of these are given in the Prolog files in ife lib uc initial kbs The files contain File Contents initialise The startup predicate and the command loop that monitors the Blackboard interface Predicates to interact with the Blackboard utilities Various utility predicates master Predicates to handle the master form see later defaults Default facts installation specific Any changes to these files other than adding to the defaults file will necessitate a rebuilding of the Knowledge Handler This is done as follows cd ife lib uc initial kbs nip U128 load_kb kb_initial created Prolog terminated 19 mv kb initial Final report IKBS in Building De
28. Usually but not necessarily each meta concept has its own knowledge base to handle it s collection of concepts If the metaconcept is sufficiently small and simple it could be handled by its parent meta concept At its simplest inside each knowledge base each concept is handled by a number of predicates named after the concept When the user associates a value with a concept for example by typing into the appropriate field on a form the Dialogue Handler posts a concept value s Tuple to the user dialog area on the Blackboard The Knowledge Handler monitors this user dialog area and invokes the predicate named after the concept with the value s as its argument s For example within the currently installed user conceptualisation ife lib uc engineer there is a meta concept of a building form forms building handled by a knowledge base called kbs building Within this meta concept there is the concept of building function which is handled by a predicate called function There may be several similarly named predicates to handle different cases and of course there can be many auxiliary supporting predicates When the user types for example office into the function field on the building form predicates matching function office are invoked see section 13 1 3 for a definition of undefined predicates function Function tried 1st known bld function Function already set to this ie have we
29. _eb Display energy balance Get offending energy flowpaths OHC awk f dir binsh comfort awk eb S dir tmp comfort eb echo echo From this data I have determined that the rank ordered echo cause of the zone WZ discomfort is echo OHC for iin OHC Insert plot commands into GP do case i in Infilt GP GP B s needed to put Wn into GP Vent GP GP m EE WcondE GP GP n 9 Wcondl GP GP n Ne ss DcondE GP GP o 25 DcondI GP GP o 9 Solair GP GP p Ne 2 CasConv GP GP q 9 Surfconv GP GP r Ne s3 Plant GP GP k Ne 2 esac done GP GP Add draw command Get graph of causal flowpaths echo gt gt dir tmp comfort_trace echo comfort cause get causal flowpaths for worst zone from out dir tmp comfort trace echo graphpic is GP dir tmp comfort trace echo dir tmp comfort trace out dir tmp comfort trace 2 dir tmp comfort cause lt lt 6 comfort results y n 46 WZ QQ ARP aa me a GP f echo Final report IKBS in Building Design echo A graph of flowpath interactions will appear echo in the next window Type ctl c to terminate cp dir tmp comfort_cause dir tmp comfort_graph tektool Ws 850 706 Wp 200 100 WP 1078 750 W1 causal flowpaths r dir binsh comfort_graph_sun amp read xb oh KKK Script 4 KKK hang around This
30. already recorded concept 96 X bld function with this value function Function known above failed check function Function valid function uset bld function Function yes so accept it 13 function Function failed feedback bad function check function Function function Function _ function residential function office function factory Final report IKBS in Building Design invalid function check function above let the user know about error fail if invalid is there any pred function among 96 the defaults with this value list of acceptable building functions could be held in separate defaults file The predicate uset posts data to the Blackboard area u_cpt This is the mechanism by which the Knowledge Handler constructs a Tuple to be added to the evolving problem description A related predicate known allows the current that is the latest value of a concept to be recovered from the Blackboard Note the symmetry between the arguments for these two predicates Thus the code for handling one meta concept can be completely independent of the code for handling others Since these predicates operate on any Prolog atom strings numbers even variables there are no in built constraints on the type of information that can be stored on the Blackboard The only constraint is the need for the other Blackboard clients to retrieve the data To this end
31. anisms involving phenomena such as transient conduction and air movement and there is a growing realisation that traditional design tools cannot cope with this complexity Secondly and particularly at the earlier stages of the design process there is a need for rapid feedback on the cost and performance consequences of alternative design scenarios The present system of specialist consultants while adequate for the detailed design and final specification phases fails to provide this immediate ad hoc advice Given these incentives different user types engineers architects educationalist and researchers are attempting to cost effectively harness these models The recent formation of organisations which represent the notion of building performance modelling the International Building Performance Simulation Association 1 in North America and the Building Environmental Performance Analysis Club 2 in the UK the modelling programmes of the UK DEn 3 and US and UK research organisations 4 5 the model validation and development activities of the European Community 6 7 and the workstation model acquisitions of the larger design organisations are offered as signal events in this respect There remains however a major barrier to the effective and routine use of these modelling systems mainly because of shortcomings in their user interface These shortcomings derive predominately from the conflict between the necessity for the model
32. any number of autonomous clients e The user dialogue module is based on a generalised forms manipulation program designed to operate on bit mapped screen technology under X Windows or Sun s Suntools Its function is to manipulate a set of forms which correspond to a particular user conceptualisation e The knowledge handler is implemented as a Prolog inference engine Its mission is to control the forms interface directing the dialogue session and responding to the user s inputs and requests for help e Aform set corresponding to one particular user conceptualisation a moderately proficient Engineer has been developed and the knowledge bases matched to this conceptualisation created e The Appraisal Application and Data Handlers have been configured in a form suitable for but not restricted to use with the ESP system and the requisite scripts installed 12 The IFe Software The IFe system exists as a research prototype which will be refined in the coming months and years As an aid to this refinement process it is the authors hope that others will attempt to apply the system to their particular end user types and application programs This Section describes the nature of the IFe software as distributed Then Section 13 by the use of illustrative examples demonstrates the installation of a new user conceptualisation and the process used to drive application programs An IFe distribution tape will contain the following sub direct
33. associated with the concept Tuples are stored in the order of receipt and are fetched by the Blackboard using pattern matching applied to the 3rd element if a key exists otherwise to the 1st element This approach to information handling means that the Blackboard can accommodate the data handling requirements of any client even those added in future and is able to retrieve information without knowing its structure or meaning 4 2 Client Communication Blackboard clients are divided into two classes those at the user end the Dialogue Knowledge and User Handlers concerned with extracting from the user the building description and the appraisal definition and those at the back end the Appraisal Data and Application Handlers concerned with creating the input data and control instructions to drive the application program s The Tuples corresponding to these two classes are held within separate communication areas on the Blackboard termed the user dialogue and appraisal areas The Blackboard is not just a passive data structure Clients can ask it to create new named areas The various clients can then post Tuples to these areas the name of the poster and the time of posting being recorded with each Tuple Clients can either explicitly ask the Blackboard for information by identifying the area and the Tuple concept or can ask the Blackboard to keep them informed of any new information posted to any particular area First and most impor
34. by the Blackboard and map the commands emanating from the Blackboard to semantically equivalent commands to the Forms Program The Dialogue Handler can easily be extended to cope with many types of user interaction from a simple question answer dialogue to full natural language input It is important to note that one user conceptualisation may involve many concepts many user inputs while another may involve only a few concepts few user inputs By relying on a greater degree of inference in the latter case the function of the Knowledge Handler the power of any application program ESP for example can be offered to both users At the time of writing the Dialogue Handler is able to manipulate a map display program 19 for positional inputs and two geometric modelling programs for geometry definition 20 and perspective view generation 21 The capabilities of the Dialogue Handler are elaborated in Section 13 1 where the role of the Ife knowledge bases is explained 5 1 The Forms Program The objective of the Forms Program is to manipulate a set of forms passed to it by the Dialogue Handler at the dictates of the User Handler which correspond to a given user conceptualisation Any single form is a collection of logically related concepts each one represented graphically by an identifier and an associated answer field It is important to appreciate that the Forms Program does not impart any meaning to a user entry it merely passes on all s
35. c d graphpic 10 tektool Ws 850 706 Wp 200 100 WP 1078 750 W1 frequency distribution r comfort graph sun amp Create graph of temp of worst zone echo dir tmp comfort trace echo comfort cause get graph of worst zone from out dir tmp comfort trace echo dir tmp comfort trace out dir tmp comfort trace 2 gt dir tmp comfort_wzt lt lt 6 comfort results y n 44 Final report IKBS in Building Design WZ on MER WEAR O Draw graph in new window cp dir tmp comfort_wzt dir tmp comfort_graph tektool Ws 850 706 Wp 200 100 WP 1078 750 W1 worst zone profiles r dir binsh comfort_graph_sun amp Get energy balance for worst zone echo gt gt dir tmp comfort_trace echo comfort_cause get energy balance pie from out gt gt dir tmp comfort_trace echo gt gt dir tmp comfort_trace out gt gt dir tmp comfort_trace 2 gt dir tmp comfort_pie lt lt 6 comfort_results cp dir tmp comfort_pie dir tmp comfort_graph tektool Ws 850 706 Wp 200 100 WP 1078 750 W1 causal energy r dir binsh comfort graph sun amp echo dir tmp comfort trace echo comfort cause get energy balance for worst zone from out dir tmp comfort trace echo dir tmp comfort trace out gt gt dir tmp comfort_trace 2 dir tmp comfort eb lt lt 6 comfort results y n b 45 Final report IKBS in Building Design cat dir tmp comfort
36. ceptualisation active It is suggested that the interested reader should study the relationship between these forms the corresponding knowledge bases and the Fe session dialogue 28 Final report IKBS in Building Design Bate 14 00c 1383 Feedback Good afternoon Sir What is the probles this tise is field is ased to identify the required project so the data can the people verking on the project Pa yos to select the type ar of topologies before finally per itting lieited disensioning facility Browse image stack Feedback Project nane Ones own school of archi tectur Deceaber i Sum Mon Tus Wed The Pri Sat Energy Input deciesn tat DM tolar taine 281 Incidental gains 52 3 GJ Solar gains 4 8 G3 MMM Space heating 4 151 1 Figure 3 The engineer user conceptualisation One interesting feature of this user conceptualisation is a geometry browse feature This is established as form bld browse which is invoked from a button on the bld spec form Associated with this button is a Prolog predicate which starts the browse form and posts a Tuple to the Blackboard requesting that the browse program be run The browse program scans a standard directory ife lib uc uc buildings which contain a set of subdirectories corresponding to the different building types deemed appropriate to the current user conceptualisation Within each of these directories may be placed any number of sub directories
37. ckboard known C V known C K V known C W V known C W K V u cpt got C V All keys must be specified As known C V but W indicates where the value came from user supplied invoked when someone else sets a concept value The above are specialisations of to bb A1 to bb Al1 A2 These create and send a Tuple to the Blackboard A1 is the Blackboard area to post to 20 to bb A1 A2 A3 to bb A1 A2 A3 A4 to bb A1 A2 A3 A4 A5 quitrqst Final report IKBS in Building Design A3 is a string usually indicates where the value came from A2 is the concept being posted A4 is a list of keys AS is a list of values Stops the Knowledge Handler The following are general utilities in file utilities refresh C near gen integer X S append H T L member E L Tells the user everything known about the concept Compares positions for close match see definition in file Implements a for loop X 0 S Appends list T to list H to give list L Checks if element E is on the list L The file master contains the predicates to handle the master form defined by ife lib uc initial forms master This form is the top level Fe form which sets up the user type and level gets the problem identification and opens communication with the user via a chat area Once this is established the top level meta concepts bld spec and analysis are enabled Then control passed to the pre
38. corresponds to heating plant sizing and has the following form if test XS IFe HOME X then echo Please set up IFe HOME shell echo variable and export it exit fi clear echo ESP Script 1 Heating Plant Sizing Set up defaults and process command line options results IFe HOME lib tmp results building IFe HOME j lib tmp building climate IFe HOME j lib tmp climate control IFe HOME lib tmp control start 9 1 finishz 15 1 timesteps 2 if test ne 0 then for ido case i in r results 2 shift shift b building 2 shift shift c climate 2 shift shift 0 control 2 shift shift s start 2 shift shift f finish 2 shift shift t timesteps 2 shift shift shift echo Unknown option i echo n Useage lt FN_KEY gt c climate echo b building r results s start echo f finish t timesteps o control exit 2 esac done fi echo echo Files used building echo control echo climate echo Files created none echo echo wait sim gt dev null lt lt run ESPsim redirect i o 6 line X climate 1 building y 1 3 results 35 Final report IKBS in Building Design start finish timesteps 0 the no save option S y control y o n f line Y Firstly the variable IFe HOME is located This defines the home directory of the IFe system where the scripts are located
39. d uww qe sapou Bupaw d Aq auop sp spys butpitaq paje nurs ay JO vn3v319 bieues pue ejuawuoITAUS pue gjorpaid K snonuy3uo2 3T 3u0u212uT 9uT3 pautjap sasn oui ybnoyy sd js pow ay sv aseqezep eopbo ojewy 2 eui w01 po1e40281 9 1939uwiwd wopbo ojwuy 2 SnoriwA JO s npea Ayinoy u3rA uop32unfuoo uy s 3e1sdo pue siuswsaiou 3073 uopie3nduoo v 103 e qveis wuorippuooun Sy onbruysaz ayy uorjeraunua 3T2 duj jo enbruusa UoTS19AUT XTI3eu Juvjeq Jeay v Aq aol bieue sejs nurs goru aurTbua uoT3e nWIS V12U92 au3 BT peujegail 1932uviWd op3ew 3 snojyivA NTA series ouyi qinou eq jo srys eue pue uor3v5137pow uoj3orpei1d Aq uop3ve12 bupaol v a Jep w275o o3vur 2 sui abeuew o3 ue1601d y uopidiosqv pue uop329 J 81 uorestusuel Tt 1940 auyui93ap O3 ue39 9 mopuT polo e ri nu e jo spsAqeue e1329ds v w10j1aed o3 uveiboid y Purpeo pura Aiepunoq 03 peioe qns 239 gyoura sioop saopura buraueseidol q92Uv39TS91 MO q pa329uuoo ST auoz y v 319A u23s s auozr3 nu Aue 3noufbnoiqi 17V jo MOL 9u3 So3v nuTS y ya uvibo1d v euoz Burpirnq Aue butpunog 920 10 y U384j9q 103297 A jA jnduoo 03 wvibozd y S opujyA uqbno1q3 uor3e132ued 1e os Aq pasneo sv s 2ez ns 3ua1edsue13 pue anbedo euiejur jo uopieposug saries our3 oui YOTpeId 03 weiboid v fuop3onijsqo pe ez pue a3T8 Burpunoiins q pasnya 2vj1n 3us1edg uv13 pue anbedo peurazx jo buppeus sory109 our3 ay 39Fp Id o3 uviboid v RIP 19
40. dicates defined in the user conceptualisation files The file ife lib uc initial kbs defaults contains those defaults common to all users of this installation of the IFe such as common locations and their attributes default climate sets analyses and so on This file is consulted at run time when the Knowledge Handler is started so can be added to at any time Finally there are a number of utilities which access the Unix environment external to the IFe Most of these are simple system calls to get a date or a login name for example but some invoke external database systems to extract required information An example of this is conist which accesses a database of materials and their thermo physical properties Since they need operating system facilities these utilities have to be written in C However to the Knowledge Handler they are invoked in exactly the same manner as any other predicate for example getdate Date will instantiate the variable Date to today s date The requests currently acceptable to the Dialogue Handler are Predicate Function getdate D Gets today s date and returns it in D proj exists N S D I L Checks for the existence of a project N and if it exists returns the latest session number S the start date D files containing the current data I and IFe system state L for reloading Converts an integer to a float Puts the value of an environment variable into V flt N F get env var E V
41. e current system all the necessary hooks have been developed to allow the later development of a much more sophisticated user model as and when this proves necessary 30 Final report IKBS in Building Design The User Handler has two main tasks The first is the collection of the information upon which a user model would operate The second is the modification of the interaction with the user in accordance with the recommendations of the user model These will be addressed in turn 13 4 1 Monitoring the User Dialogue The underlying data for this monitoring is clearly the raw user inputs as picked up from the user dialog area on the Blackboard The Dialogue Handler posts here everything the user inputs as a user said Tuple It also posts requests for help as a user help Tuple and any error it detects as a user error Tuple These are picked up by the User Handler and used to trigger the appropriate predicates in the user model The mechanism used is almost identical to the Knowledge Handler as already described in Section 13 3 A typical predicate for analysing the input would be user said Concept don t care about the concept user said Concept value so strip it off user said Concept user said Concept user said Concept handle new user input time Now get current time retract lasttime _Lasttime get time of last user input _Delay is _Now _Lasttime collect info on how long user took to assi
42. e three stages involved in developing a new user conceptualisation 1 the creation of a set of knowledge bases to handle those concepts and meta concepts that is acceptable to this class of user 2 the addition to or enhancement of these knowledge bases to provide the conceptual mapping and inferencing necessary to complete the building appraisal definition and 3 the creation of a matched set of forms presenting the individual concepts in a style which is acceptable to this class of user These three stages are now described in turn 13 1 Creating Knowledge Bases The prerequisite of knowledge base creation is an understanding of Prolog But before explaining the process in any detail it is important to describe the purpose and overall philosophy of these knowledge bases As described earlier the Knowledge Handler has two main functions to carry out building a complete problem definition on the Blackboard and coordinating the dialogue with the user 13 1 1 Building the Problem Description This involves collecting the data input by the user and using it to build in the Blackboard area u cpt a complete problem description As described in Section 4 this is held as concept value Tuples For ease of handling both by the IFe and by the user concepts are collected into related sets called meta concepts Meta concepts can of course refer to subsidiary meta concepts as well as base concepts so that a complete tree can be built up
43. e to deal with them by using different front ends specialised for the context in which they are to be used However even in the more limited scenarios the IFE should be able to establish the user s objectives and generate a suitable problem solving strategy without the user having to spell out every step of the process One of the things which distinguish an IFE from other pieces of software is the need to interface to a back end This requires it to perform the mapping from the user s model of the back end to the back end s model of the user 13 The interface to the user is a fairly conventional if difficult application of established HCI techniques However to interface to a back end requires considerable knowledge about its function and operation At the extreme the IFE has to know as much about the methods of solving the user s problem as the back end Abstracting this knowledge can be as difficult as deriving an expert system to replace the back end Not only does the IFE need to have a good interface to the user it is itself part of the user interface to the back end Hence it must take account of the usual HCI criteria and support a sufficiently rich dialogue to avoid constraining the user s problem solving activity Several of the components of an IFE have already been investigated either in their own right or as part of other research for example plan formation 14 and dialogue handling 15 Although a substantial amount of fu
44. e user to switch the focus of discussion to another meta concept form and back again 7 Install the form set in ife lib uc forms and the knowledge bases in ife lib uc kbs where is the typename for this user conceptualisation 8 Update the user type field on the master form to present the new option in file lib uc initial forms and add the names of users of this type to the User Handler defaults file in file ife lib um kbs there is no need to recompile this knowledge base 9 Test the knowledge base by firstly running nip and invoking the predicates directly and secondly running ife bin ife kh and typing Tuples directly into it See the file ife src tmp bb to kh script for a sample session 10 Finally test the form set by firstly running ife bin forms with the forms and then by running bin ife dh and typing Tuples into it See the file ife src tmp bb to dh script for a sample session 13 4 User Handler The User Handler is like the Knowledge Handler an inference engine based on Prolog Together with its associated knowledge bases it provides the IFe s user modelling function Since the provision of a full user model would be a complete research topic in itself only a fairly rudimentary facility has been developed to date Basically the user is stereotyped according to the categorisation given in Section 2 and based on this a pre defined interaction style content is used While this has proved adequate for th
45. euj dsg estI woo YOTYA se npow ssvqtivp wv1501d nop1 A BY U29433q 3U0 329UUO2 9q3 919 19Q UnOUS Program modules of the ESP system Figure 4 38 Final report IKBS in Building Design exit fi echo Start of comfort script echo echo COMFORT SCRIPT COMMENCES dir tmp comfort trace echo dir tmp comfort trace Set up defaults and process command line options comfort index res Resultant temperature or air oh tmp 28 for air temperature comfort lock S dir tmp comfort lock comfort results dir tmp comfort results building dir defaults defcfg climate dir defaults defclm start 17 7 finish 17 7 timesteps 1 information 0 if test ne 0 then for ido case i in h information 1 shift help information 1 shift i comfort_index 2 shift shift 0 oh tmp 2 shift shift f comfort results 2 shift shift c climate 2 shift shift b building 2 shift shift p start 2 3 shift shift finish 2 3 shift shift shift t timesteps 2 shift shift shift echo Unknown option i Type comfort h exit 2 esac done fi if test information eq 1 then echo echo echo Command line options information h echo comfort index res or air i index echo comfort criteria o criteria echo results file f filename echo climate file c filename echo building b filename echo period p sd sm fd fm 3
46. g For example they may already be displayed on the form when it was first activated Others are only relevant later in the dialogue once some basic information has been entered and considered by the Knowledge Handler In this case the user is explicitly asked for the subsidiary information For example if the user gives an unknown to the Knowledge Handler location for the building the user must be asked for its latitude and longitude This can be done by means of the Tuples ask user latitude ask user longitude Sometimes it is possible to suggest a default value and this can be added as a further element in the Tuple lt ask user latitude 55 7 gt 17 Final report IKBS in Building Design In the Forms Program this request causes a field to be re displayed The field must have been previously defined usually as a hidden field in the form definition file unask user In some cases a concept that the user has been asked to address becomes irrelevant because of subsequent information For example if the user specifies that she he wants an annual simulation it is unnecessary to ask for the simulation s start and finish dates In this case the concept can be removed from the discourse using the Tuples unask user start date gt lt unask user finish date gt In the Forms Program this causes these fields to be hidden new query This is the mechanism by which a new previously undefined concept can be broug
47. gy These rules and relations are established in parameterised form so that they can be determined at script invocation Within the script application programs such as ESP Unix programs such as editors and graphics entities such as window managers can be used to perform the operations required by the methodology The computational path to be followed at any stage in the script will then depend on the performance data to emerge at run time and on the embodied rules In this sense a script can be viewed as a modestly intelligent design assistant with knowledge of how to operate and sequence the various application programs while adhering to an imposed methodology A thorough appreciation of Shell programming can only be obtained from study of the syntax involved and practice As an aid to such a study two ESP scripts are presented here one simple the other comprehensive These have been selected from the following list as currently developed for use within the IFe environment Heating plant sizing Cooling plant sizing Climatic severity assessment Plant control strategy appraisal Condensation report Summer overheating analysis Building zone dimensions take off Comfort analysis Annual energy demand and causal breakdown Solar utilisation report Air flow analysis Perspective view generation Animated view Cost in use report Regulations compliance report 34 Final report IKBS in Building Design The simple script
48. hit chat from the IFe This field is used by the IFe to display non urgent messages are nested relative to this form The name of the desk is The associated data is the title of the parent window which contains the desk for information only Form background colour Font to be used for data Font to be used for labels Font to be used for default data Origin in characters of the specified font size Form size dx and dy in characters A terse help message to be displayed if the help option is selected The line thickness for the form border The line thickness for the form border to be used when the form is selected Start of a new form defined relative to the desk form Name of this form subsequently referred to by the Dialogue Handler as chat area Origin of form in characters relative to the desk form End of form definition Start of a concept definition on previously defined form the parent form Name of concept subsequently referred to by the Dialogue Handler as chat_area chat_user Field type here a character field allowing only character inputs Origin relative to parent form Concept label Put the label above concept field A brief message to be output if the user requests help 22 border selection border end field parent form new field name type origin size label label position help description end field new
49. hop University of Sussex UK 10 11 July 1984 Clarke J A Energy Simulation in Building Design Adam Hilger Ltd Bristol and Boston 1985 Thomas D van Maanen J amp Mead M Eds Specification for Exchange of Product Data Springer Verlag 1989 Standard for Exchange of Product Data STEP ISO Draft Proposal 10303 Dec 1988 Wilson M and Mac Randal D The Map Utility Report IFE SDN5 88 Rutherford Appleton Laboratory Chilton Didcot Oxon UK Stearn D D Vim a geometry input utility ABACUS User Manual University of Strathclyde Glasgow 1988 Stearn D D The Viewer System ABACUS User Manual University of Strathclyde Glasgow 1988 Hutchings A M J ed Prolog User Manual Report AIAI PSGm1 86 AI Applications Institute University of Edinburgh Edinburgh UK Clarke J A et al Project IBIPS Intelligent Building Input for Performance Simulation A Research Proposal to the Commission of the European Communities under the Joule Programme of DGXII 1989 Bourne S R The UNIX System Addison Wesley 1982 57 Appendix A Glossary of Terms Final report IKBS in Building Design Term Meaning Animated Graphics Moving pictures Application Handler The IFe module which executes the required back end application programs Appraisal Definition The script describing how to perform the required appraisal Appraisal Handler The IFe module which coordinates Shell scripts which Asynchronous Process Aut
50. ht to the user s attention In this case not only must the Dialogue Handler be given the concept name it must also be told how to ask the question what syntax checks to apply to the input and so on This is clearly interaction program specific In the Forms Program for example fields are normally defined in the form specification file To create a field not so specified the Tuple supplies the concept name and a string to be parsed by the Forms Program itself new query user age field nname user ageWntype realWn gt tell user This is a request to inform the user of a concepts value It takes 2 arguments the concept name and the value associated with it For example to set the value in the no of zones field to 6 tell user no of zones 6 gt In a number of cases it is necessary to distinguish between different instances of the same concept for example the different zones to which the concept zone name applies In this case the concept name has a appended to it and the 1st argument is the index of the required instance For example to set the name of zone 4 to kitchen tell user zone name 4 kitchen suggest user In many cases the Knowledge Handler can suggest a sensible default value for a concept based on data input so far and built in knowledge Rather than just adopting this default and telling or not telling the user it is possible to suggest to the user that this is an appropriate value The
51. iary meta concept etc This focussing of attention can be complete that is no other concepts meta concepts are available until the user completes quits this meta concept or partial that is a selected subset of other concepts meta concepts are available For example when specifying the construction elements of a zone it would be useful to have access to the geometry specification so that minor change to the geometry can be made without changing the current focus of attention To give a finer level of control each concept can independently be brought to the user s attention or excluded from the collection available for input Thus a collection of concepts can be gone through one at a time giving a question answer style of interaction or they can all be raised at once and the user left to respond in whatever order they wish a command driven interaction style In practice a mix of these would be required because often a concept s value can have implications either on the values acceptable for other concepts or on whether those concepts have any meaning In this case it would be better to wait for the user to set the value of this concept before raising those other concepts affected by it However for other cases letting the user choose the order in which concepts are addressed leads to a much more friendly user interface albeit slightly harder to learn At this low level some other benefits of the knowledge based approach can be ap
52. icquel R Programme PASSYS Status Report Ecole des Mines Sophia Antipolis 1987 Hatten D van ed Proceedings of a Workshop on the Future of Building Performance Modelling EUR Report Reprint March 1988 Mac Randal D and Clarke J A A Proposal to Develop an Intelligent Front End for Building Energy Simulation Science and Engineering Research Council Grant Case for Support 1986 Clarke J A and Mac Randal D The Application of Intelligent Front Ends in Building Design Artificial Intelligence in Engineering pp360 370 Computational Mechanics Press 1987 Ross P The Virtues and Problems of User Modelling Colloquium on Intelligent Knowledge Based Systems the Path to User Friendly Computers Digest 1984 104 Institute of Electrical Engineers Savoy Place London 1984 Kidd A L and Cooper M B Man Machine Interface for an Expert System Proc 3rd BCS Conf on Expert Systems Cambridge UK Dec 1983 Moralee S Intelligent Front Ends Proc Alvey IKBS Research Theme Workshop Cosners House Abingdon England 26 27 September 1983 Bundy A An Architecture for Intelligent Front Ends Proc Alvey IKBS Research Theme Workshop University of Sussex UK 10 11 July 1984 Tate A Generating Project Networks Proc International Joint Conference on Artificial Intelligence Cambridge Mass USA 1979 Alty J L Use of Path Algebras in an Interactive Adaptive Dialogue System Proc Alvey IKBS Research Theme Works
53. in to retrieve the window data This example is rather contrived as it would be simple to modify the Knowledge Handler knowledge base to record this information However it does show how a user conceptualisation created with one modelling package in mind can be used to drive a different one Using this mix of Blackboard querying and Shell programming allows any data structure to be defined It is this script that is then used by the Data Handler to produce the final data set This is achieved in two stages as follows Firstly the Script is filtered by the Unix process aWk against a set of patterns This action substitutes the Blackboard information and modifies the Shell commands to produces a second script which can actually be run Each line of the Data Definition script DDS is read and converted as follows DDS Shell Equivalent Meaning file output file output xyz echo xyz gt file s forall j upto n j 1 nwhile j expr j 1 amp amp j Itn val cpt args echo query read query answer from now on output to a file named output line must only have whitespace outside the quotes copy quoted line literally into the output file equivalent to for i 0 i n itr or do 1 0 n 1 simplifies scripts sends query u cpt cpt args to the Blackboard retrieves answer u_cpt u_set cpt args values assigns values to val The actual pattern set used by awk is as follows BEGIN print
54. ing What do you suggest and Why do you ask type responses It would also be expert enough to devise an appropriate performance assessment methodology and to coordinate model operation against this These were the goals of this project which set out to develop an IFE for computer aided building performance modelling in general The objective 8 9 was to design a machine environment which could act as an expert consultant to assist the user in the problem description phase recognise her his appraisal wishes commission computer analyses and report back on performance all in terms which are acceptable to the given user type and design stage To achieve these goals the IFE has to be an intricate synthesis of user modelling HCI techniques contextual knowledge manipulation and the interface to the possible performance prediction models at its back end In essence the IFe is a generalised machine environment a kind of intelligent user interface management system which can define the mapping from any user s conceptual model of a domain here building performance assessment to the data requirements of any performance prediction model simplified or detailed 2 Model Users and IFEs As mentioned above one of the main objectives of this work was to handle the diverse user types that are found in the field of building performance modelling To do this the spectrum of users has initially been divided into three stereotypes as follows The
55. ion language based on predicate logic Predicates may contain facts knowledge or preconditions A procedure that maps messages from one syntax to another without affecting the semantics A rule is a series of actions to be taken when the specified conditions are met inferencing from information generated by other rules may be used to deduce if the conditions have been met A language for describing data structures used especially for databases An ISO draft standard for Product Data Exchange The IFe Blackboard s unit of information Consists of a list of text fields The command interpreted supplied with the Unix and SunOS operating system A file containing commands which can be executed by the Unix Shell A set of concepts and meta concepts deemed acceptable to a particular user type 59 Final report IKBS in Building Design User End The Dialog Handler the User Handler and parts of the Knowledge Handler User Handler The IFe module for handling to the different user types on User Interface User Interface Management ystem User Model User Type Class The part of a computer program that interacts with the user A computer system that aids the construction of high quality interfaces The data knowledge about the user held in the system and used to provide a personalised interaction style In the IFe the user is stereotyped into standard types for example an architect or an engineer
56. ipt 2 RRR echo I will now locate the worst zone Use out to get max amp min zone temperatures echo dir tmp comfort trace echo comfort worstz get zone comfort temperatures from out dir tmp comfort trace echo comfort index is comfort_index gt gt dir tmp comfort_trace echo dir tmp comfort trace out dir tmp comfort trace 2 dir tmp comfort pt lt lt 6 comfort results y n b comfort index n f Use awk to get overheating zones ranked in PZ PZ echo OHT dir tmp oh tmp cat dir tmp comfort pt awk f dir binsh comfort_awk_pt if test X PZ X then echo Congratulations echo All zones are comfortable according to the selected criteria echo echo echo Zone summary table follows echo cat dir tmp comfort_pt gt dir tmp comfort_lock echo 42 Final report IKBS in Building Design echo echo echo echo Type ctl c to terminate read xa Hang around until told to go away exit 0 Normal exit 0 to indicate no overheating fi echo The following zones rank ordered suffer discomfort PZ Locate worst occupied or worst zone WZ foriin PZ do echo Now checking zone i for occupants if test X WZ X then WZ i Worst Zone fi impb lt lt i if test eq 1 impb error exits if zone occupied then impb error exit echo Occupied echo Worst discomfort therefore occurs in occupied zone
57. istribute First the Blackboard is written in C and so if changed will require a C compiler Second all knowledge manipulation is done using a Prolog interpreter At present this is the NIP system from AIAI at the University of Edinburgh 22 If another interpreter is used this will probably mean that the distributed user conceptualisation will not work although any newly developed conceptualisation will However any modification required should be straightforward as only standard Edinburgh syntax has been used 13 Installing User Conceptualisations Currently there is only one user conceptualisation available corresponding to an individual who is relatively experienced in energy modelling though several more have been proposed 23 This conceptualisation corresponds to a moderately computer literate engineer and is used here as an illustrative example to demonstrate the technique of conceptualisation installation The targeted application which defines the scope of the building description as 12 Final report IKBS in Building Design held on the Blackboard is the ESP system The starting point is to understand the viewpoint of the new user type and to relate this to the data requirements of the application program to be used For example the user may well be able or expect to input directly much of the data required by a model or alternatively a considerable degree of conceptual mapping may be required In any event there ar
58. it in that it is generated by the client and stored with the data There has already been substantial work under the Esprit CAD I project 17 and the ISO standards work on STEP 18 examining the nature of CAD data Unfortunately this does not cover all the types of data that the IFe must handle in particular data about the user and about the required appraisal Furthermore this is designed much like a database schema a predefined data structure to be filled in by an application The Blackboard on the other hand uses a rudimentary schema definition language so that clients can create their own schema as 6 Final report IKBS in Building Design required The IFe unit of information is termed a Tuple and has the form concept tab value for example latitude lt tab gt 56 5 hereinafter denoted concept value A Tuple can be meaningful to one or more client and usually though not necessarily will correspond to a concept understood by the user and or appraisal program when addressing a particular class of problem for example latitude number of rooms or window width in a building modelling context There is no restriction imposed by the Blackboard on the contents of the value field of the Tuple The Tuple as recorded on the Blackboard contains as its 1st element the concept name as its 2nd element the string user set or kb set as its 3rd element the string nokey or a list of keys as its 4th element the value s
59. it is recommended that the convention given with the description of uset in Section 13 1 3 1s followed Having received and validated the user input and recorded it on the Blackboard there is one further task which is performed by the Knowledge Handler From the data just received the previously input data and the in built knowledge it may be possible to make inferences which will remove the need to explicitly ask the user for further data As an example the following code shows how if the user describes the building s environment as one of the known types the relevant exposure index and ground reflectivity can be inferred see section 13 1 3 for a definition of undefined predicates environment Site type known environment Site type environment Site type uset environment Site type exposure Site type Exposure grnd rflct Site type Grnd rflct kset exposure Exposure kset grnd rflct Grnd rflct feedback environment known user said environment Site type feedback environment unknown ask user exposure 1 ask user grnd rflct 2 feedback environment unknown novice chat usr already set yes no new site type accept any site type string have we an exposure or ground ref for this type yes kset them 96 feedback 1f novice unknown site type feedback ask user for expand gr Sorry I don t know what that means Unless you know what
60. ix Shell Script Tj User Conceptualisation of the context within which the concept is being used A system in which knowledge is explicitly represented for example in Prolog clauses An IKBS for teaching uses a user model to adapt the teaching to suit the particular user A file containing the Prolog predicates relating to the concepts and meta concepts The IFe module for knowledge manipulation A collection of concepts which are in themselves a unit an abstract higher level concept A style of programming in which the data not the operations are central usually involves encapsulation of operations with their data abstraction of behaviour into a Class and inheritance of behaviour and code between Classes Searching the Blackboard for a Tuple containing the given text The rules and relations against which a system s performance is evaluated The development of a series of primitive actions that will achieve the desired result The deduction based on the user s input and the user model s data of what the user is trying to achieve A menu associated with a concept s label activated by the left or right mouse button A Blachboard Client who is sending information to the Blackboard for storage A series of preconditions possibly null that must be met for the fact represented by the predicate to be true A style of programming in which the machine is told what to do one instruction at a time A knowledge representat
61. ledge bases 14 Linking to an Application Program The Fe can be made to drive any application program which runs under the Unix operating system To do this a performance assessment script is developed and after testing installed within the ife lib uc appraisals directory where is the name of the user conceptualisation to which the script relates it is envisaged that different users will require different performance assessment methodologies Script invocation is via a Prolog predicate usually but not exclusively matched to a form button see the ife lib uc engineer forms analysis form template file and its ife lib uc engineer kbs analysis matched knowledge base The function of the Appraisal Handler is to manipulate discrete performance assessment methodologies established in parameterised form When an IFe user requests a particular appraisal it is the job of the Appraisal Handler to locate the corresponding methodology script determine the appropriate substitutions for its parameters and post the script to the Blackboard where it will be matched to a corresponding data set posted by the Data Handler before being passed to the Application Handler for execution In the approach the Unix Bourne Shell 24 is used as a pseudo expert system shell Shell scripts are designed to coordinate the operation of any number of application programs against the rules and relations of a particular performance assessment methodolo
62. matic boundary condition Selection of the c option allows the Appraisal Handler to force the use of a user specified climate collection At a certain point in its operation script 1 hangs until a special file is created by script 2 to indicate that it has finished Script 2 will have filled this file with data which identifies those zones which are uncomfortable in terms of the selected criteria If the file is empty all zones are within the comfort range Otherwise script 3 is run to continue the appraisal The suntools command opens a new window according to the specified arguments The tekem program is a graph display utility which is here used to display ESP graphics in a window of any size positioned anywhere on the bit mapped display In script 2 the back quotes cause whatever is between them to be run with the output replacing the quoted string To generate the input for awk the two commands echo and cat are placed in brackets This tells the Shell to execute them sequentially but to treat them as one command as far as the rest of the line is concerned First the echo output is piped to awk and then the cat output is sent down the same pipe This means that the variable PZ will contain the results of the awk process an ordered list of the problem zones in this case The variable WZ is then set to the worst zone that is the first one in the PZ list This zone is then tested for occupants ESPimpb is the ESP process which does this I
63. milate the new meta_concept i e to read amp understand the form by looking at the delay until he she inputs the 1st piece of data focussed _Meta_concept gt we have 1st input for this mc assert mc_assim _Meta_concept _Delay record delay Delay lt 120 Delay gt 20 feedback user assim having difficulties true delay gt 2 mins gt gone to coffee retract focussed Meta concept true wasn t new mc collect info on how often the user vacillates about this concepts value ie cycles through menu values as this indicates uncertainty retract previous_concept _P_c true get last inputs retract penultimate_concept _Pp_c true _Concept P c Concept Pp c retract vacillate Concept No No is 0 New nois _No 1 assert vacillate Concept New no record New no 5 gt 5 changes gt confusion feedback vacil assert vacillate Concept 0 96 reset assert vacillate Concept New no record 31 Final report IKBS in Building Design true wasn t same cpt assert previous concept Concept update assert penultimate concept P c check if the user is having to override the Knowledge Handler often retract no inputs No i No iis 0 knownw Concept __ kb_set gt is overriding kb retract kb_override _Num Num is 0 yes New numis Num 1 New num no 1 5 96limit of 20 overrides feedback override as
64. n is common to all concepts and offers several general options which allow a user to request help ask for an example or instruct the IFe to choose an intelligent default The second right button down is a concept specific menu which can be assigned run time options by the Knowledge Handler 5 1 2 Manipulation The Forms Program is designed to operate on the basis of instructions received from some external process the Dialogue Handler in the case of the IFe This means that the status of any concept or meta concept can be changed at any time For example the options offered on a concept menu or the value associated with a concept can be changed by the Knowledge Handler on the basis of previous user inputs or information received from say the User Handler Alternatively concepts and meta concepts can be focussed de focussed shown hidden in order to direct the user s attention toward or away from a particular concept A whole form set can even be dynamically replaced allowing a user conceptualisation to be changed shifted up or down at the dictates of the User Handler who may for example have detected that the user was having difficulties with the currently focussed concepts as a result of an inappropriate initial user classification The Forms Program also supports animated graphics useful for user feedback when addressing geometrical concepts and dynamic window creation useful for error reporting 6 The Knowledge Handler The fu
65. n of course still address the previous meta concepts The intention is to notify the user that the concepts dealt with by this meta concept are now available for input This is usually a response to a user input for example a request to specify a zone s geometry and has a Tuple like focus user geometry gt In the Forms Program this causes the form with name geometry to be re displayed The current focus of attention is highlighted for easy identification If the form is not already in memory it is loaded from a file of the same name in the form s directory for the current user conceptualisation that is lib uc geometry but see Section 13 1 4 unfocus user This request removes the given meta concept from the domain of discourse It indicates to the user that the included concepts are no longer available for input Its main function is to keep the number of concepts available to the user down to a manageable number for the user A subsidiary benefit is to permit reuse of concept names in different meta concepts For example when the user has finished specifying the zone geometry and moved on to plant specification the zone geometry concepts can be disabled by the Tuple unfocus user geometry gt In the Forms Program this causes the geometry form to be removed from the screen hidden ask user When focusing on a meta concept some concepts are implicit and will be addressed by the user without further promptin
66. nction of the knowledge handler is to manipulate several independent knowledge bases which exist to control the user dialogue collect and validate user entries make whatever inferences are appropriate and to store on the Blackboard a representation or representations of the building and required appraisals This requires a mixture of conventional procedural programming event driven programming and rule based inferencing Of the knowledge representation languages widely available at the present time Prolog is by far the most suitable for these tasks And so the Knowledge Handler is an autonomous inference engine based on a Prolog interpreter It monitors the user dialogue area on the Blackboard in order to obtain the Tuples corresponding to user inputs to convert the Tuple syntax to a Prolog Predicate goal to use this Predicate to validate the user input and by inference to further complete the building appraisal definition The Knowledge Handler also performs the reverse operation namely the filtering out of the Prolog syntax before passing back a new Tuple the result of the invoked predicate to the Blackboard In practice the Knowledge Handler will have access to several Knowledge Bases most of which correspond to a particular meta concept and are loaded when that meta concept form is activated Each of these Knowledge Bases exists to build on the Blackboard that part of the problem definition to which the meta concept relates Based on
67. ndamental research has still to be carried out the results already achieved provide the basic building blocks for the construction of an IFE For the uninitiated Appendix A contains a glossary of terms as used throughout this report 3 The IFe in Outline The IFe system is built from several cooperating modules organised around a central communications module the Blackboard to facilitate multiple use of information These modules run asynchronously and can examine the Blackboard for information posting results back to it Figure 1 shows the IFe architecture 5 Final report IKBS in Building Design appraisal handler Blackboard applications handler dialogue handler forms application maps knowledge data is roerams displays handler handler prog etc knowledge user bases Figure 1 Architecture of the IFe The Fe modules include e A Dialogue Handler to converse with the user in a manner which is tailored to her his conceptual class level of experience and stage reached in the design process e A Knowledge Handler to verify user entries and by inference to complete the building description to the level required by the target application program for example the ESP system 16 was the target program in the IFe prototype e A User Handler to track the user s progress and ensure the system responds in an appropriate manner e An Appraisal Handler to coordinate the performance assessment meth
68. ng this data a time consuming task but frequently the data has not yet been specified as is the case at an early design stage Traditional interfaces tend to offer little help in generating sensible defaults Also due to the complex interrelationships ensuring the integrity of the data can demand very high levels of understanding of the model s theory and mode of operation Without this understanding the importance and hence the required accuracy of an individual piece of data is very difficult to judge As well as the question of what there is also the problem of how to input such a large quantity of highly inter related data The various factors associated with data acquisition together with the user s often idiosyncratic conceptualisation of the inter relationships tend to conflict with the rigid question answer style of input common to many contemporary programs Model Control Generally control of the model does not require sophisticated user interaction The major difficulty is the selection of the computational parameters to produce a sufficient quality and quantity of output to allow a meaningful appraisal of performance in other words what is the most appropriate performance assessment methodology For the novice a lack of understanding of the implications of the selections being made can lead to confusion or even erroneous deductions if the output data is inadequate Result Interpretation It is here that the requirement
69. o expert 10 However most of the user s progress comes through building this mental model of the complete system back end front end and even the hardware Therefore a good front end must be careful not to hinder or sidetrack this process by changing the characteristics of the interface as the session proceeds Instead it should be capable of hastening the process by firstly hiding itself the hardware and any other situational aspects not directly relevant to the user s task and secondly by presenting the underlying concepts of the back end in an easily assimilable form Where the user s model of the back end system is deficient or wrong it should take appropriate remedial action At this level of operation an IFE is encroaching on the field of intelligent tutoring The context in which the system is being used and the underlying motivation of the user must be taken into account 11 12 Evidently the type of help proffered by an IFE will be qualitatively different if the user is a student in a School of Engineering a technician in an architectural practice or a researcher into building physics In the student s case the emphasis will probably be on teaching building physics as an intelligent tutor in the technician s case the emphasis will be on presenting the system as a friendly consultant while in the researcher s case the requirement is for a colleague to help spot errors These scenarios are sufficiently distinct and it is preferabl
70. o you using the internal knowledge 23 end field new field name type style origin size label string label position menu help description end field new field name type origin size label string label position help description end field new field name type origin size label string label position start Final report IKBS in Building Design to provide values for the more technical aspects All feedback given will also reflect this bias user_level button Field type here a two state button offering the options defined under menu below key 50 1 5 64 64 pixels User Level fit above expert novice User level expert or novice This button identifies the currently selected user level This dictates the level and style of help guidance given during the interaction and also influences the content of some of the forms shown An attempt will be made to ask only for information liable to be available to this user using the internal knowledge to provide values for the more esoteric aspects Button states date date Field type here a date field that offers an in built graphical calendar facility 117 0 2 101 Date left Today s date This field is used to time stamp any modifications made during this session It is used to maintain a chronological record of project modifications started date 25 5 5 101
71. odologies e A Data Handler to create from the information supplied by the user and the knowledge handler the building description as required by the application program s to which the IFe is interfaced e An Application Handler to orchestrate an application program against the selected performance assessment methodology and to feed it its required building description data The functions to be handled by the IFe therefore include conversing with the user in the appropriate terminology the Dialogue Handler generating the description of the building the Knowledge Handler collecting organising and storing this data the Blackboard generating the program specific input data set the Data Handler generating the program specific control inputs the Appraisal Handler and invoking the targeted application program the Application Handler 4 The Blackboard This lies at the heart of the system and has two major functions Firstly it stores the data representing the current state of the problem definition as input by a user or inferred by the knowledge handler Secondly it acts as a communication centre for its various clients 4 1 Data Storage Given that clients are autonomous entities and therefore must not be expected to know the data structures required by the other clients the Blackboard must be able to receive arbitrarily structured information from one client and pass this on to another The data structuring is therefore explic
72. on zero flowpath is printed This script is totally dependent of the formats used by ESPout Its output is used by the script comfort_cause If ESPout were to change this script would probably need to be modified and if this script is changed script comfort_cause may require modification BEGIN ORS stop print outputing NL C 0 Infilt Causal Classes C 1 Vent These are in the order that C 2 2 WcondE imp outputs them C 3 WcondI They are printed as shown for C 4 2 Dcond script comfort cause to use C 5 2 DcondI C 6 Solair C 7 Casconv C 8 Surfconv C 9 Plant NOTE ESPout OUTPUTS GAINS amp LOSSES ON LINE AFTER TITLE AND STARTING WITH F 2 0 9 amp amp 3 0 9 amp amp NF 3 G c 2 Select lines with only two L c 3 numbers These are the casual C gains losses in the order output by ESPout 1 No amp amp 2 plant C 9 Correction due to missing gain loss nos if no plant END for 120 i lt 10 i if G i 2 0 Test for o heating contributor print C i Print contributors 1 line print Wn Final report IKBS in Building Design 48 When invoked this script after a computational effort that depends on the complexity of the building and the length of the required simulation will produce the screen image of figure 5 1935 avu 334 Ipuooq puodq puod
73. onomous Inference Engine Autonomous Process Back End Blackboard Blackboard Client Blackboard Communication Area C Concept Data Handler Data Structure Dialogue Handler Dynamic Memory Allocation Dynamic User Modelling Energy Kernel System ESP Event Driven Programming Expert System Form Definition Syntax Forms Program Form Template File Human Computer Interface represent performance assessment methodologies A stand alone program potentially executing in parallel with other programs A program which makes inferences based on the supplied knowledge in the Fe these are Prolog predicates A stand alone program independent of any other program The Application Handler the Appraisal Handler the Data Handler and parts of the Knowledge Handler An active dynamic information store available for clients Sometimes it provides synchronisation between clients An autonomous program which accesses the information on the Blackboard A distinct part of the Blackboard containing a particular category of information An object oriented programming language The user s mental unit of information the smallest data item handled by the IFe The IFe module for formatting data sets as required by any target application program A description of the relationships between a collection of data items which collectively comprise an entity The IFe module for user communication Obtaining extra memory from the ope
74. ories and files arranged as shown within an IFe home directory ife Directory File Content ife bin ife_bb Blackboard ife_dh Dialogue Handler ife_kh Knowledge Handler ife_uh User Handler ife_ah Appraisal Handler ife_bh Data Handler ife_ph Application Program Handler forms Forms Program map Map Program change_cpt_set Script to set user conceptualisation browse Raster fetch program perspective Link to perspective program conlst Construction database utility vim Link to geometry modeller conv Raster conversion program type conv for supported formats ife sys Links to third party binaries sre for licence holders only ife sys bin CC C compiler script cfront C to C compiler main program munch C to C compiler aux program nip Prolog interpreter startup program ife sys lib libC a C function library nip bin Prolog interpreter run time program ife sys include plload h Prolog header file for use with C CC include files for CC ife docs Some IFe reports including this one set in 11 Final report IKBS in Building Design troff format ife src IFe module source ife src tmp 3 Some IFe program driver commands for testing purposes ife src ph A Application Handler source ife src bb Blackboard source ife src dh is Dialogue Handler source ife src forms m Forms Program source ife src bm Data Handler source ife src browse a Browse source ife lib E IFe working files etc ife lib ma
75. plays the field hides the field positions field in parent form character units positions field in pixels field size in parent form character units field size in pixels determines the background shade for forms the default field label position of the label string define the label font define the field font define the application font defines the menu options width of border around fields and forms width of border around fields on 27 description help default value current value previous value icon image Final report IKBS in Building Design text text data data data exrep bitmap file name selection attaches to the description option of the menu associated with a field s label attaches to the help option of the menu associated with a field s label defines the default field data defines the start up field data defines the previous data on the stack defines icon for form Using this syntax it is possible to create a complete hierarchy of nested forms of arbitrary complexity If any given form contains fields which are defined outside the physical boundary of the form then that form will be scrollable The engineering conceptualisation as installed within the IFe has the following forms defined located in ife lib uc engineer forms Form Purpose Invocation analysis Definition of required appraisals Button on Fe master form bld_spec High level building description Button on Fe maste
76. plied In a number of cases the Knowledge Base can infer an intelligent default that is one that takes into account the context in which it is being offered and the data that has already been input by the user This could then be suggested to the user Alternatively or as well the Knowledge Base may have a list of preferred options for example standard constructional elements about which it has a lot of built in knowledge and this list could be offered to the user for perusal Both of these possibilities have been built into the user conceptualisation as currently installed within the IFe The requests currently available for controlling the interaction are as follows 16 Final report IKBS in Building Design new dialog This is a request to initiate a new interaction with the user usually by starting a new interaction program for example the map utility for inputting positions It takes 3 arguments the name of the utility the filename containing the executable binary or shell script and the argument string to be passed to the program For example the Tuple posted on the user dialog area of the Blackboard in order to start the map utility for inputing positions is new dialog ife map prog ife bin map s o e gt Currently only one Forms Program can be run as this can already deal with multiple dialogues in multiple windows focus user This request directs the user s attention to a new meta concept The user ca
77. ps x Maps ife lib startup Definition of Blackboard Dialogue Handler and Application Handler clients ife lib bm_filters Data Handler filters for targeted application program ife lib icons xi Form Icons ife lib um A User model ife lib um kbs User Handler knowledge bases and C utilities ife lib uc User conceptualisations ife lib uc initial Knowledge Handler infrastructure used as IFe start up ife lib uc initial forms master IFe top level form used as IFe start up ife lib uc initial kbs IFe infrastructure knowledge bases and installation specific defaults ife lib uc engineer i Engineer conceptualisation knowledge bases and conceptualisation specific defaults ife lib uc engineer forms Engineer conceptualisation forms ife lib uc engineer kbs ie Engineer conceptualisation knowledge bases ife lib buildings Directories containing raster images of different buildings for use by the browse program ife lib appraisals Appraisal Shell scripts In total about 6 MBytes of disk space will be required to accommodate the system which has been designed to operate on a machine with 8 MBytes RAM 4MBytes RAM minimum Given the prototypical nature of the product it is probable that source code interventions will be required to overcome the inevitable bugs and deficiencies To facilitate this source code is available But note that two aspects of the IFe require proprietary software which it may not be possible to d
78. r form bld_spec_focii bld_browse geometry g form fill vertex list 2d g cad file g draw construction usage connectivity plant control airflow site shading information for example location and function A scrollable form of buttons allowing a user to focus on specific topics such as building geometry construction or operation A building design browse facility Building geometry definition on a zone by zone basis Zone geometry definition by form filling Vertex list form Building geometry definition by importing a foreign CAD file Invoke geometry modeller to define building zone geometry Constructional attribution of defined geometry Zone operation definition Definition of building boundary conditions Definition of plant components and networks Definition of building plant control loops Definition of building leakage and pressure distribution Definition of site obstructions Definition of shading time series Defined on bld_spec Button on bld_spec Button on bld_spec_focii Button on geometry Defined on g_form_fill Button on geometry Button on geometry Button on bld_spec_focii Button on bld_spec_focii Button on bld_spec_focii Button on bld_spec_focii Button on bld_spec_focii Button on bld_spec_focii Button on bld_spec_focii Button on bld_spec_focii Figure 3 shows a typical screen image resulting from an Fe session with the engineering con
79. rating system when it is needed instead of reserving large quantities initially Adapting the system s handling of the user on the basis of the ongoing interaction An object oriented machine environment for the construction of advanced building energy and environmental simulation models A building energy and environmental simulation system A style of programming where the actions taken depend on external events for example user input A rule based system The syntax used to specify the entities fields buttons pop ups etc which represent the concepts associated with a particular user conceptualisation A program which manipulates a set of forms each of which correspond to a particular meta concept A file containing predefined display instructions for each concept The User Interface together with the computer 58 Final report IKBS in Building Design software hardware utilised Inference The deduction of further information from that supplied Intelligent Default A default value for some concept selected on the basis Intelligent Knowledge Based System Intelligent Tutoring System Knowledge Base Knowledge Handler Meta Concept Object Oriented Pattern Matching Performance Assessment Methodology Plan Formation Plan Recognition Pop Up Menu Poster Predicate Procedural Programming Prolog Protocol Converter Rule Based Inferencing Schema Definition Language STEP Tuple Unix Shell Un
80. red they can be prepared one at a time as the data becomes available on the Blackboard Currently the user has to indicate that she he has completed data input although this could of course be inferred by the Knowledge Handler The Knowledge Handler then requests the Blackboard to run the Data Handler by sending it the command see section 14 3 new dialog IFE data handler ife bm data definition script This causes the Blackboard to start the Data Handler client held in the file ife bin ife bm and pass it the Data Definition script name The script which is held in the directory ife lib bm filters is converted to a pure shell script and executed Once the data files have been created and the Shell script exits the Data Handler also dies 16 Future Work The IFe has been conceived and progressed to the research prototype stage in a two year period Given the complexity of the system it will require a further R amp D effort to evolve the IFe into a robust product which can be used routinely by others to create intelligent interfaces for their particular applications and user types In particular the IFe could be refined by improving the efficiency and flexibility of the knowledge handling conceptualisation entry and data manipulation functions In the first two cases this could be achieved by the development of software tools to assist in knowledge base creation and conceptualisation entry This would reduce the level of computing
81. rform this function the Dialogue Handler has several mechanisms at its disposal to achieve interaction with the user The primary mechanism is a generic Forms Program which can manipulate a set of forms which correspond to a given user class and capability level termed a user conceptualisation Each form entity a labelled field a button a multi option pop up etc corresponds to a particular concept within the user conceptualisation in question for example window width number of rooms project name etc Groupings of related concepts are located on the same form to comprise a meta concept such as building geometry construction control system appraisal definition and so on Meta concepts can contain other meta concepts allowing a complete hierarchy to be specified A set of meta concepts forms then defines a particular user conceptualisation in terms of only those related concepts that are deemed acceptable to the user type the conceptualisation represents Via these forms the user can ask about concepts as well as associate values with them Thus the Dialogue Handler is essentially a communication switch and protocol converter sitting between the Forms Program and the Blackboard The Blackboard protocol has been designed to be as generic and extensible as possible and is not tied to the use of the Forms Program It is the responsibility of the Dialogue Handler to map the data generated by the Forms Program into the format required
82. rked through from left to right to minimise specification of redundant information 0 0 b analysis 25 type origin size label position label colour menu start help description selection border border end field new field name type origin size label position label colour menu start help description selection border border end field Final report IKBS in Building Design button 8 10 91 fit above black analysis hidden Select to enter analysis definition mode Colour of label only Only a single state is defined This button switches the focus of discussion to the appraisal specification b_bld_spec button 22 10 91 fit above black building hidden Select to enter building description mode This button switches the focus of discussion to building description 0 1 The result of this template file is shown in figure 2 which can be reproduced by issuing the command forms master 14 Dec 71989 pean Sun Mon Tue Wed Thu Fri Sat Good afternoon Sir What is the problem this time 3 4 5 6 7 1 12 13 18 19 20 21 22 23 25 26 2 28 29 s0 modifications wade during this session It allows a cronological record of the people working on the project to be maintained Figure 2 The form to result from the template file of section 13 2 The complete form creation
83. s of the novice and expert differ most The expert will be trying to detect patterns in and relationships between the different building parameters in an attempt to isolate the dominant causal factors To do this all the data generated by the simulation has to be available and capable of being displayed in juxtaposition with any other data The novice on the other hand merely requires a concise summary of performance preferably in terms of those parameters which are most meaningful to the design team and client Unfortunately due to the nature of the program s output the novice may experience difficulty in relating poor performance to the design parameters under her his control The limited experience of IFEs to date has generated a number of tentative guidelines the Final report IKBS in Building Design main ones being as follows In order to be of much assistance a front end must be able to interact at the user s level This implies that it should have a model of the user s knowledge and problem solving strategies in order to extract all the implicit information and unstated assumptions from the user s statements Considering the misunderstandings that can arise in person to person communication the difficulty of this task will be appreciated However another more tractable function of a user model is to track the user s mental model of the system and react accordingly This of course must adapt as the user progresses from novice t
84. sert kb override 0 reset counter assert kb override New num record true not set by kb user said Concept user said predicates should never fail The first few lines just act to strip off the concept s value since only the fact that the concept has been addressed by the user is of significance The predicate then goes on to extract some statistical information about the user interaction and makes some recommendations This particular predicate doesn t take any action leaving that to the user but clearly it could be enhanced to make decisions and carry them out Three main pieces of information are extracted from the input the rate of interaction the amount of dithering on the user s part and the error rate of the Knowledge Handler s suggestions e A lengthy delay before user responses generally implies either that a reasonable amount of thought is going into the input or that the user has been interrupted If there is a consistently slow response this could indicate that the user is having trouble with what is being asked Consistently slow responses to just one class of concepts could indicate that the requested data is not easily available in the required form e Ifauser is constantly backtracking and changing the last few inputs this might suggests that she he is uncertain either about what is being asked or about the data that is being supplied e Or if the user is constantly overriding the default values suggested
85. sign The predicates of interest for the creation of a new user conceptualisation are given in the following table In this list the variable C is a concept name V is a concept value and K is a list of key values used to discriminate between a collection of identically named concepts for example x coord 1 3 4 15 is the x value of vertex 4 of surface 3 of room 1 Predicate Function startup Starts the Knowledge Handler creates Blackboard areas feedback C invokes a predicate feedback C User level for the appropriate user level currently novice or expert These are supplied in the user conceptualisation alongside the concept see environment example Section 13 1 1 The following post a Tuple to the user dialog area on the Blackboard new dialog Name Command focus usr C unfocus usr C ask user C ask user C V ask user C K ask user C K V unask usr C unask_usr C K tell usr C V tell usr C K V suggest usr C V suggest usr C K V offer usr C V offer usr C K V char usr T Starts a new interaction program called Name using the unix command Command Appends the list of strings T to concept user chat The following post a Tuple on the u_cpt area on the Blackboard uset C V uset C K V kset C V kset C K V Flagged as user set Flagged as knowledge base set The following recover a Tuple from the u cpt area on the Bla
86. ss by easing the learning curve associated with the adoption of the new modelling technologies By giving the profession access to the power of contemporary and future software systems from a single building description achieved from only the information the user is able to give the possibility of truly integrated multi criteria design appraisal is enabled This in turn will allow the designers to make the necessary trade offs in the search for an optimum solution and so arrive at more robust designs 18 Acknowledgements The authors are indebted to the Science and Engineering Research Council for funding this work and to our many research colleagues in the UK and abroad who have been so ready to field trial the product 19 References l IBPSA Bylaws and Charter Statement 2 BEPAC Rules of Association 3 Energy Technology Support Unit Project Brief Performance Analysis Service Harwell Didcot 1987 4 Winkelmann F Developments in Object Orientated Programming in the Area of Building Performance Appraisal Various Publications Simulation Research Group Lawrence Berkeley Laboratory 5 Clarke J A Proposal to the UK SERC to Develop an Energy Kernel System for 56 10 11 12 13 14 15 16 17 18 19 20 2 22 23 24 25 Final report IKBS in Building Design Building Energy Simulation Energy Simulation Research Unit University of Strathclyde Glasgow 1988 G
87. t Long guess lat long near Latitude Longitude Lat Long 0 5 gt 30 miles kset location Location close enough infer from location Location make inferences from loc true V known climate set _ guess climate file need idea of proposed building appraisal known analysis climate requirement Climate type suitable suits analysis requirements climate type Climate set Climate type true no particular analysis requirements yet climate set Climate set Lat Long have we a suitable one near Latitude Longitude Lat Long 1 5 gt 100 miles kset climate set Climate set infer from climate set Climate set true If the user overrides the above inference or resets the location we need to retract all the inferences made above retract_infer position retract u_cpt location retract_infer location 15 Final report IKBS in Building Design retract u_cpt climate set retract infer climate set 13 1 2 Coordinating the User Dialogue The function of the Dialogue Handler and the overall structuring of the dialogue into concepts and meta concepts has already been described Section 4 Basically the Dialogue Handler runs the Forms Program and any other interactions with the user for example the Map Program It does this by monitoring a Blackboard area called user dialog implementing the commands it finds there and posting back the user ac
88. t management program may be used For example the following Shell script is essentially a session with the input management program of ESP called ESPimp mixed with Shell commands and a special syntax which allows information to be extracted from the IFe Blackboard 50 Final report IKBS in Building Design ESP zone geometry file builder version 1 0a of November 1988 Script to build ESP zone geometry input files from data supplied by the IFE building model imp EOI 6 nan a nz no zones nokey forall i upto nz 0 do zsht zone_type i if test X zsht Xrec then AM e rec zo zone origin i zo 0 0 0 zl zone length i zw zone width i zh zone height i zlj zw zh zor zone orientation i zor 0 nsur 6 elif test X zsht Xreg then c reg nsur no surfaces i nw expr nsur 2 nw 0 f ch zone height i f_ch angrot zone orientation i angrot 0 forall j upto nw do jj expr j Sj xyz vertex i jj set echo xyz 1 2 done elif test X zsht Xgen then AM c gen nyver no vertices i nver 0 nsur no surfaces i nsur 0 angrot zone orientation i angrot 0 51 Final report IKBS in Building Design forall j upto nver do xyz vertex i j S xyz done forall j upto nsur do ver_order surface i j set echo ver order
89. t returns O if a zone is unoccupied it does no output The worst zone is then written to the lock file in order to restart script 1 and feed script 3 Finally a perspective view is produced and displayed Script 3 again uses the awk program to determine the cause of any thermal discomfort OHC contains the rank ordered causal list for example Infilt Solair Surfconv for infiltration window solar absorption convected inward to the air and internal surface convection respectively Variable i is set to each string in OHC Then the case adds the ESPout plot command to GP depending on the value of i GP is set to the old GP with the new plot letter and a newline appended The plot letter and Wn are enclosed in quotes to stop the Shell molesting them 15 Preparing Application Data The function of the Data Handler is to prepare the input data set as required by the target application program to which the IFe is front ended What was required was a general mechanism which could be used to do this irrespective of the data and format requirements of the application program The only external action required on the part of a person attempting to configure the IFe is the establishment of a Data Definition script This is a generalised Shell script which defines a typical data preparation session but with the actual data identified as requests to the IFe Blackboard Within the Script an editor might be used to create the data set or conversely some inpu
90. t the present time real dynamic user modelling has not been attempted Instead the user is initially classified from a database or explicit user input and the corresponding user conceptualisation knowledge bases established for use by the Knowledge Handler During a session the user s progress is assessed by monitoring the user dialogue area on the Blackboard in order to determine the number of errors changes of mind backtracks and Knowledge Handler overrides On the basis of this information or upon explicit user request the User Handler can change the user conceptualisation to a more suitable type level From then on the Knowledge Handler will automatically pick up those meta concepts associated with the new user conceptualisation 8 The Appraisal Handler In the current implementation of the IFe the user is explicitly asked to specify her his appraisal objectives in terms that the Appraisal Handler can understand The appraisal possibilities are held within the IFe as discrete parameterised Unix Shell scripts representing a particular performance assessment methodology It is the Appraisal Handler s task to select the appropriate Appraisal Script and based on the information available on the Blackboard to select the values for the parameters These will include the particular application program to be invoked at each stage in the methodology and the appropriate values for the various design or performance parameters on the basis of
91. tant this avoids clients having to poll the Blackboard Second it provides a mechanism whereby two or more clients can create a Blackboard area to serve as a communication channel between them For example the user dialogue area is used to pass information between the Dialogue and Knowledge Handlers in order to validate user inputs and provide essential feedback All Blackboard clients are autonomous processes running asynchronously and the Blackboard does not impose any selection criteria on incoming messages Should it become desirable or necessary to provide some form of scheduling and resource allocation for clients it is envisaged that an area on the Blackboard would be established to act as a control centre 5 The Dialogue Handler This client is responsible for managing and monitoring all user interactions and implementing the level of communication as necessary for a given user and task combination Unlike conventional systems where the interface remains static throughout a session by keeping track of a user s progress the Dialogue Handler can in conjunction with the User and Knowledge Handlers tailor the dialogue to the user s level of expertise and performance history 7 Final report IKBS in Building Design The basic function of the Dialogue Handler is to pass the user s inputs to the user dialogue area on the Blackboard and to pass messages and requests as posted on this area by other Blackboard clients back to the user To pe
92. tial categorisation of the user classif user get login User name find out who user is user type User name User type get their default type u type User type is it already set u_type _ kset if user set it leave it E kset user type User type record new type abolish u type 2 true assert u type User type kset tell usr user type User type name User type User type str change the uc link append IFE HOME Jbin change cpt set User type str Cmd shell Cmd b user level User name User level as for user type u level User level u_level __ kset kset user level User level abolish u_level 1 true assert u_level _User_level tell_usr user_level _User_level tell the KH The current user type is held locally as a u type Prolog fact If it hasn t changed or was set by the user this startup classification predicate shouldn t modify it The modification of the uc link mentioned earlier is actually carried out by a Shell script change cpt set invoked by 33 Final report IKBS in Building Design the Prolog shell _Cmd predicate The default user type is held in a defaults file ife lib um kbs defaults This contains all the user installation data that the user model requires Because it is loaded at run time it can be updated without needing to recompile the user model knowledge base kb um or to modify the Knowledge Handler s know
93. tions To maintain independence from any specific interaction program the Dialogue Handler deals with generic requests such as tell user associate a default with a concept and new dialog invoke a new form or interaction program and converts these into the syntax required by the interaction program usually the Forms Program The Knowledge Handler under the direction of the various knowledge bases available to it uses these requests to interact with the user A major feature of the way the Knowledge Bases are designed independent concepts each handled by a suite of predicates is that there is no predefined order in which they are accessed The user can at any stage and in any order volunteer the data associated with these concepts Since this is potentially confusing for the user difficult to manage in the Knowledge Base and very error prone one aspect of the interaction handling that the Knowledge Handler has to deal with is the overall guidance of the user through all the concepts that are necessary to complete the problem definition The hierarchical organisation of the concepts into meta concepts offers a way of directing the dialogue at a gross level The user can be requested to indicate which meta concept she he wishes to address for example zone geometry and then their attention can be focussed specifically on the concepts appropriate to that meta concept for example zone name orientation origin height walls a subsid
94. to be powerful comprehensive and rigorous to adequately represent the real world complexity while at the same time being simple straightforward and intuitive to facilitate user interaction This situation is exacerbated by the divergence of the conceptual framework of the design orientated model user and the technically orientated model developer To complete this confusion there is the subtly different terminology of the scientific engineering and design professions 2 Final report IKBS in Building Design The current and laudable trend towards user friendly interfaces carries the risk of negating the power and flexibility of models by restricting the interaction to the lowest common denominator user level Two of the major fundamental problems the quantity and nature of the data being manipulated and the expertise and conceptual outlook required of the user apply to a greater or lesser extent to all models Although overcoming these problems will ultimately require truly intelligent systems recent advances in Intelligent Knowledge Based System IKBS and Human Computer Interface HCI techniques offer some scope for medium term alleviation Using these techniques it is possible to construct a user interface which incorporates a significant level of knowledge in relation to building description in the face of real world uncertainty and realistic performance assessment methodologies Such a system would direct a user s line of enquiry allow
95. uc kbs In this way the predicates appropriate for the current user conceptualisation are automatically accessed It should be clear therefore that the naming and positioning of new user conceptualisations in the IFe directory structure is critical In summary there are ten stages in creating a new user conceptualisation as follows 1 Identify the concepts that the user can use to specify the building and the required analysis 2 To help organise the collection and processing of the user inputs collect these concepts into related groups to form a hierarchy of meta concepts It is probable that the identification of concepts in Stage 1 will already have been based on such a hierarchy 3 For each concept write the predicates to validate and store the input These are placed in a file with the same name as the enclosing meta concept 4 Design the form that corresponds to these concepts This requires selecting the best field type text menu button etc to help the user input the data 5 Add the predicates to handle the switch of focus Usually when a meta concept is selected some initialisation is necessary for example it may be appropriate to inform remind the user of the information already held inferred by re displaying the form for example Similarly when a meta concept is de selected this might trigger the calculation of default values for un set concepts 6 Add to the form the necessary fields usually buttons to allow th
96. uch entries to the Dialogue Handler in order to be available to the other IFe modules via the Blackboard It does however type check the user entry There are two distinct aspects to the Forms Program form creation and form manipulation 5 1 1 Creation Each form meta concept is defined by a template file which establishes the form concepts and their relative positioning by the use of a form definition syntax This technique allows any user conceptualisation to be established as a given form set for use when a user of that type is detected by the User Handler Note that to complete a user conceptualisation requires the creation of a matched knowledge base for use by the Knowledge Handler to validate concept values and to make the necessary inferences to complete the building appraisal definition to the required level of detail This process is explained later 8 Final report IKBS in Building Design Forms can be nested to categorise concepts and to provide scrolling regions to accommodate cases where a particular meta concept contains many individual concepts Section 13 2 for example explains a template file and shows the resulting form It also lists the complete form creation syntax All user interactions with a form are controlled by mouse and keyboard inputs The former is used to select a concept the latter to make an entry Two pop up menus activated by the mouse are associated with each concept label The first left button dow
97. ults saved No of warning messages 0 Simulation period 1 day 9th January Start up period 1 day Building time step 1 hr Number of zones 5 Zone time increments 240 Building results file size Not applicable Simulation time 120 secs 36 Result Final report IKBS in Building Design Period simulated 9th January Zone Max Airtemp Min Air temp Max heating Max cooling Heating Cooling C C kW kW energy energy kWh kWh 1 16 00 08 30 6 58 06 30 0 91 08 30 O0 00 30 9 9 0 2 20 00 08 30 7 58 06 30 1 81 08 30 0 00 30 19 6 0 3 20 09 17 30 8 08 06 30 0 89 10 30 O0 00 30 10 4 0 4 16 71 23 30 6 65 09 30 1 78 22 30 0 00 30 3 6 0 5 0 14 13 30 4 22 08 30 0 00 30 0 00 30 0 0 0 All zones Max Temp 20 1 in Zone 3 17 30 hrs Min Temp 4 2 in Zone 5 8 30 hrs Max Heating 1 8 in Zone 2 8 30 hrs Max Cooling 0 in Zone 1 0 30 hrs Total heating energy 43 45 kWh Total cooling energy 0 0 kWh A more comprehensive performance assessment script now follows In this case the script is endowed with more intelligence so that it can make decision on the basis of the predicted performance Its purpose is to undertake a comfort analysis with the following mission e to initiate and control the simulation processing e to seek out building zones which are uncomfortable according to user specified or default comfort criteria e
98. w user conceptualisations to represent the range of possible user types from a practising designer to a student from an educationalist to a legislator and from a client to an occupier This would allow the IFe to satisfy the diverse needs of all potential model users e And extending the performance assessment methodologies to other application programs and domains so that the user can examine the range of cost and performance as a design evolves from inception through the schematic and detailed design phase to completion and post occupancy Finally much of the IFe prototype is in a form suitable for inclusion into the Energy Kernel system 5 This would allow future model developers to rapidly prototype the technical and user interface dimensions of a model modifying both in response to user reaction and technical deficiencies exposed through use 17 Conclusions A prototype IFE has been developed which enables a human sensitive approach to building performance appraisal in the context of the multiplicity of models now emerging from the advanced simulation systems to the regulations orientated structures such as Eurocode This system is operational within a Unix workstation environment and already several groups throughout the world are attempting to apply it The principal advantage of an IFE is that it helps users to deal with the varying scientific engineering and design vocabularies This should help in the technology transfer proce
99. which decisions will be made After this task has been completed the data is posted back to the Blackboard where it is accessed by the Data Handler whose function is to prepare the input data required by the identified programs The form of an Appraisal Script is detailed later 9 The Data Handler This module creates an application specific data set from the building definition as held on the Blackboard It does this on the basis of a Data Definition Script which defines in parameterised manner the data preparation procedure of the targeted program The parameters of this Data Definition Script define the data which must be obtained from the Blackboard By executing this script the Data Handler builds the required data set The creation of these scripts is described by example in Section 15 10 The Applications Handler The Applications Handler passes the Appraisal Script and its matched data set as posted on the Blackboard by the Appraisal and Data Handlers to a Unix Shell where the Appraisal Script is executed The responses from the script can then either be displayed directly or passed back to the Blackboard for communication to the user via the Dialogue Handler 11 Status of the IFe At the present time a prototype IFe is operational on a Sun3 60 under SunOS 3 5 and SunOS 4 0 3 Specifically the following has been achieved 10 Final report IKBS in Building Design e The blackboard is fully developed and is able to interface with
100. you are doing I suggest you select a standard site 14 Final report IKBS in Building Design type from the menu Otherwise you MUST give me an indication of site exposure int 1 7 and a figure for the ground reflectivity real 0 1 Put these in the appropriate boxes on the form use the defaults given if necessary D feedback environment_unknown expert chat_usr What does that mean p exposure urban 4 in defaults file exposure rural 5 exposure city centre 2 grnd rflct city centre 2 grnd rflct urban 2 grnd rflct rural 15 In the above a predicate kset was used in place of uset The only difference between these two is that uset flags the concept as having been explicitly set by the user while kset flags it as having been inferred by the Knowledge Handler User set values cannot be overridden by the Knowledge Handler but of course the user can set any concept to whatever value is required whether or not the Knowledge Handler has asked for the information Clearly the above is targeted at a user who can if necessary supply the exposure index and ground reflectivity For a different user type it would be possible to generate sensible defaults using previous information such as site location Very much more complex inferences may be made infer from position Latitude Longitude known location _ known not known position _Location La

Download Pdf Manuals

image

Related Search

Related Contents

Die Flatrate Diät – Mit einfachen Tricks systematisch zur Wunschfigur  Portaits de dramaturges : notes préliminaires  Conceptronic Optical desktop mouse USB  Manual CM-1100  domoLink domoLink lu x  Schede Tecniche Lavori Quota  Caractéristiques Illustration Données techniques  Istruzioni per l`uso  製品マニュアル  Braun Photo Technik Sappy  

Copyright © All rights reserved.
Failed to retrieve file