Presentation on theme: "Expert Systems 14 1 Configuration: Xcon Yesterday I couldn't spell engineer, now I are one. This is a joke In this lecture: 1.PSM Propose-and-Apply for."— Presentation transcript:
Expert Systems 14 1 Configuration: Xcon Yesterday I couldn't spell engineer, now I are one. This is a joke In this lecture: 1.PSM Propose-and-Apply for Construction 2.XS Case study: Xcon 3.PSM Case study: RIME
Expert Systems 14 2 Classification of XS tasks Attempt to classify existing systems? Interpretation Diagnosis, Prediction, Identification Medical, Legal, … Answer is value for single variable; suitable for top-down Monitoring Design Proof, Plan, Plant Technical, Scientific Answer is a collection of values; suitable for bottom-up STRIPS, Xcon, Piquar, VT, …
Expert Systems 14 3 Construction as a sequence of choices The design problem: Design is represented by a collection of choices Feasibility and efficacy can be checked for the full design General Problem Solver? Search space is collection of all possible combinations Move through search space Properties of GPS approach: Uninformed Expensive Ordering of the choices: irrelevant and fixed Self-assembly furniture: Is my part set consistent? Will the final assembly satisfy all my wishes?
Expert Systems 14 4 Wish fulfilment as Bin Packing Two cabinets, 2 meters high Wishes: clothes part, shoes, TV, books, together 4 meters Subproblems: Partition into 2 equal sets Position each item When positioning piece by piece End with 20+30 space for 50 sized item End with TV at ceiling In general, it is not possible to know if the current set of choices can be extended to a full design Specific theorem: If all sizes divide each other (eg., 20, 40, 120 cm) 1.Pick largest item that fits 2.Position it at multiple of size Never needs to revise! Theorem suggests Choose a right place for your item (step 2): object choice Select the right choice to make (step 1): plan choice Order of variable instantiations is relevant!
Expert Systems 14 5 Propose and? Revise, Fix, or Apply… Backtracking: When overconstrained, undo choices in reverse order Backjumping: undo several Works irrespective of choice order Course Zoekalgoritmen Propose and Revise: When overconstrained, undo choice that caused problem, keeping later choices Need to keep track of effects of individual choices Class 13: VT/SALT Propose and Apply Avoid undoos by making careful choices Sometimes in two stages Select what choice to make Select value for this choice Highly informed strategy 1.Requires knowledge of what choice can be made safely 2.Requires insight of what choice can be made safely XCON: Level 1 (VT is “smarter”)
Expert Systems 14 6 XCON: Expert Configurer Stages of Expert System building Identification: Problems, data, goals, company, people… Conceptualization: Characterize different kinds of concepts and relations Formalization: Express character of search Implementation: Build the system in executable form Testing and Evaluation: Does it do what we wanted? Maintenance Adapt to changing environment or requirements
Expert Systems 14 7 Phase 1: Identification DEC, Digital Equipment Corporation Large computer manufacturer, started 1957 Catalogue has 40.000 different parts Buyer (with Sales Rep) sends order, typically 100 parts Delivery and assembly by DEC personnel Too often, part collection does not allow installation Too often, installed computer does not meet requirements Remedy: Completely assemble and test system in factory Automate configuration problem; attempts with procedural languages were unsuccessful XS approach started around 1980
Expert Systems 14 8 Phase 2: Conceptualization Con.. what?
Expert Systems 14 9 Phase 3: Formalization Configuration engineers could talk well to Knowledge Engineers of the CSDG Could explain in what stage which component should be configured how This was expressed in production rules IF c1, c2 c3 THEN a1, a2, a3 Configuration stage was explicitly represented as data: current goal or context Changing contexts moved configuration process through all stages
Expert Systems 14 10 Phase 4: Implementation into system R1 Language: OPS5 (similar to CLIPS) Conflict Resolution: MEA (extends Lex / Specificity) Means-Ends Analysis: order by recency of first condition IF c1, c2 THEN.. is now different from IF c2, c1 THEN Contexts are treated as special by putting them first End-task is unspecific, thus executed last Use MEA + Spec to concentrate on subtasks: IF g1, x, y THEN assert barify// Signal necessity of subtask IF barify, a THEN p, q// Two rules perform the task IF barify, b THEN r, s// of barification per se IF barify THEN retract barify// Termination when ready
Expert Systems 14 11 Control by Matching No knowledge model Designers thought in terms of object choices: Put device x in location z Condition: z is best location for x But also: it is suitable to locate x now Planning and object choices are implicitly combined Complicated rules Avg 6 condition elements Avg 5 tests per c.e. Avg 4 actions per rule 30 tests on avg for 10k rules! Rule R1a-unmounted-ubx-options IF current goal is to mount options into containers system is not VAX11/780 an RL102 disk is unconfigured this disk must be connected to a controller there is a controller on a unibus there is a disk cabinet top space for disks is unused THEN mark disk and top space used create connection between disk, controller, and cabinet create labels for output diagram
Expert Systems 14 12 Algorithmic control embedded in rules To locate device X, propose locations and test them until X is located Locate(X): while X isn’t placed doPropose L if L suits X Place X in L else cancel L IFgoal is testCond andnot Placed(X,?) THEN set goal proposeLoc IFgoal is proposeLoc andLoc 1.. i were prop ed THENPropose i+1 as L andset goal useorcancel IFgoal is useorcancel andL is suitable for X THENassert Place(X,L) andset goal testCond IF goal is useorcancel THENset goal testCond IF goal is to locate X THEN set goal to testCond IF goal is testCond andPlaced(X,?) THENretract goal testCond
Expert Systems 14 13 Phase 5: Quality and Testing of R1 Field test after 1 year, production after another year Accuracy over 95%: No more pre-assembly was necessary! The installed configurations are optimized: Buyers are happier because they see better products Less retraining of staff on product changes: Quicker change of production Net return to Digital is estimated to 40M$ per year. But this name… Yesterday I couldn’t spell engineer, and now I … Field name: XCON
Expert Systems 14 14 Biological System Components Users of XCON Sales: Use for quotations and ensure technical validity of orders (XSEL) Manufacturing: Check installability of order, guide assembly instructions and diagnostics Field service: Easy assembly at customer’s site (XFL) Development: Anticipate integration problems for new products The system found more use than what it was designed for Key Roles Champion: Vision, belief in technology, influence on sponsor. Sponsor: Has interest in problem and control over resources: money & people Manager: Keeps parties together, goals realistic Knowledge Engineer: AI and Knowledge Software Engineer: Manage traditional parts, versions, architecture Experts: Provide domain knowledge Users: Feedback on fit in business process
Expert Systems 14 15 The Data of XCON Five data bases: 1.Components: Holds 30k parts, 25 to 125 attributes 2.Container: Extra data on backplanes and cabinets, size and slots. 3.Diagrams: 1200 ASCII arts for use in output diagrams 4.Questions: Motivate and ask data from user, eg. Do you already have …? 5.Configuration: Consultation data like input and diagrams
Expert Systems 14 16 Configuration Systems Development Group Size 59 members in 1989: 6 KE’s develop new AI and XS techniques Tool vs. Application development 27 KE’s maintain the operational system 6 testers solve user problems, document, test, set quality targets. 16 programmers monitor and extent the architecture. 4 researchers watch ongoing advanced technology A Knowledge Engineer’s Day Start with fresh coffee and fresh build Modify, add, delete, test rules and DB items Save the good ones, GOTO home Nightly rebuild of system (eg., RETE graph) Official release: Quarterly In-between additional release in case of important product release or announcement.
Expert Systems 14 17 Success Factors Real and serious business problem Connection between technologists and supported business (Why do a Minor with your CS Major programme…) DEC was open to new techniques and the way it would change their business (cp. Optiver) Experimental technique (expert systems) was not only used but also developed CSDG, Experts, and Users speak the same language
Expert Systems 14 18 Phase 6: Maintenance grew out of hand Needs for maintenance Computer industry is highly innovative: new components User community expands and expectations rise System complexity: multi- CPU, Networked systems Yearly rewrite 40% of rules Rules are complicated Interaction between rules is extremely complicated The learning curve … has been as high as 12 months … (i.e., for their contribution to outweigh the drain on others of training them) OPS5 Configuration problem Expert systems XCON
Expert Systems 14 19 Knowledge Conceptualization: RIME R1’s Implicits Made Explicit Separate plan knowledge (when to make a choice) from object knowledge (what choice to make) Algorithmic Expression: sequencing, conditionals, loops Situation Recognition: simple situations allow planning and deciding a choice in one rule Deliberate Decision: Meta-Rules express plan knowledge Propose alternatives Eliminate by pairwise comparison Select alternative and apply it RIME keeps track of these different types of knowledge and compiles it into a set of OPS5 rules
Expert Systems 14 20 Knowledge Elicitation in RIME If, in the stage ofconfiguring the peripherals there is choice betweenselecting a device andselecting a container under what conditions would you eliminateselecting a container Domain independent, Problem Solving Method driven questions Domain dependent terminology, provided and understood by expert designing the cable plan planning the power sockets planning the telephone lines
Expert Systems 14 21 Example RIME rules IF step is configuring, eliminate by pairwise comparison selecting a device was proposed selecting a container was proposed size of a remaining device exceeds space in some container THEN eliminate selecting a container IF step is configuring, propose alternatives there is an unconfigured device no container was chosen no other device that can hold it was chosen selecting a container wasn’t proposed yet no problems for selecting containers were identified THEN propose selecting a container Goal can shift from orientation on devices to orientation on containers
Expert Systems 14 22 Effects of RIME Technology Goal of RIME was to have simpler rules that were easier to manage This actually happened Increase in number of rules was small due to reusability of simple, general rules Number of firings during consultation increased a lot due to smaller steps taken in each rule No decrease in performance was noticed due to more efficient processing of simple rules Average processing time for one order: one minute
Expert Systems 14 23 Interaction with Tool Development 10 persons develop and observe new technologies Big projects include home-grown development tools Contributions to scientific journals and conferences: OPS5 variant: VAX OPS5 Code organisation and management Rule compilation and checking Automatic testing and On-line User feedback CSDG is both 1.a test bed for new AI/XS technologies 2.a production shop for keeping a crucial business system operational
Expert Systems 14 24 The end of Digital and XCON Digital sold chip division to Intel in 1997 Complete company was bought by Compaq in 1998 Compaq was acquired by Hewlett-Packard in 2002 Support and use of XCON was stopped in the early nineties. Why? “It did the work of 75 people but it took 150 to maintain it” Standardization of computer parts made configuration task easier A better configuration solution was developed
Expert Systems 14 25 Impact of RIME/XCON on later developments Use of Elicitation Tools has become common practice Such tools can bridge the gap between knowledge and their implementation as rule (cp. Façade templates) Knowledge structure model can be made explicit in the tool and guide the knowledge elicitation by providing the expert with questions in a context Success stimulated XS applications Literature VE Barker, DE O’Connor, J Bachant, E Soloway, Expert Systems for Configuration at Digital: XCON and Beyond, http://portal.acm.org/ft_gateway.cfm?id=62067&type=pdf http://portal.acm.org/ft_gateway.cfm?id=62067&type=pdf Jackson, Chapter 14