560 likes | 677 Views
CS 785 Fall 2004. Knowledge Acquisition and Problem Solving. Knowledge engineering: Advanced approaches. Gheorghe Tecuci tecuci@gmu.edu http://lac.gmu.edu/. Learning Agents Center and Computer Science Department George Mason University. Overview.
E N D
CS 785 Fall 2004 Knowledge Acquisition and Problem Solving Knowledge engineering: Advanced approaches Gheorghe Tecuci tecuci@gmu.eduhttp://lac.gmu.edu/ Learning Agents Center and Computer Science Department George Mason University
Overview Limits of the classical knowledge engineering approaches Advanced approaches to agent development Learning agent shells A Disciple agent for center of gravity analysis Demo: Use of a Disciple agent as a decision-making assistant Design principles for instructable agents Demo: Training a Disciple agent Research problems and research visions Recommended readings
How are agents built A knowledge engineer attempts to understand how a subject matter expert reasons and solves problems and then encodes the acquired expertise into the agent's knowledge base. The expert analyzes the solutions generated by the agent (and often the knowledge base itself) to identify errors, and the knowledge engineer corrects the knowledge base.
Limiting factors in developing intelligent agents Limited ability to reuse previously developed knowledge The knowledge acquisition bottleneck The knowledge maintenance bottleneck The scalability of the agent building process Finding the right balance between using general tools and developing domain specific modules Portability of the tools and of the developed agents
Overview Limits of the classical knowledge engineering approaches Advanced approaches to agent development Learning agent shells A Disciple agent for center of gravity analysis Demo: Use of a Disciple agent as a decision-making assistant Design principles for instructable agents Demo: Training a Disciple agent Research problems and research visions Recommended readings
Advanced approaches to KB and agent development Problem: Limited ability to reuse previously developed knowledge Solution: Ontology reuse (import, merge, export, OKBC protocol, CYC) Example: Ontologies of military units and equipment developed for a particular military planning agent could be reused by a course of action critiquing agent or other military agent.
Advanced approaches to KB and agent development Problem: The knowledge acquisition bottleneck Solution: Automation of knowledge acquisition through machine learning Example: A subject matter expert teaching an agent through examples and explanations, similarly to how the expert would teach an apprentice.
Advanced approaches to KB and agent development Problem: The knowledge maintenance bottleneck Solution: Use of machine learning methods by the agent, to continuouslyupdate its knowledge base in response to changes in the application domain or in the requirements of the system. Example: A subject matter expert providing feedback to the agentand guiding it to update its knowledge base. Remark: Software maintenance is estimated to be about four times more expensive that software development. With learning agents that are directly taught by humans, there is no longer a distinction between building the agent and maintaining it.
Advanced approaches to KB and agent development Problem: Finding the right balance between using general tools and developing domain specific modules Solution: Customizable learning agent shell. It is applicable to a wide variety of application domains. Requires limited customization. Example: Disciple learning agent shell
Overview Limits of the classical knowledge engineering approaches Advanced approaches to agent development Learning agent shells A Disciple agent for center of gravity analysis Demo: Use of a Disciple agent as a decision-making assistant Design principles for instructable agents Demo: Training a Disciple agent Research problems and research visions Recommended readings
Expert system shell An expert system is a system that can help solve complex, real-world problems, in specific scientific, engineering, medical specialties, etc., by using large bodies of domain knowledge (facts and procedures) obtained from human experts, that have proven useful for solving typical problems in their domain. Expert System Shell An expert system shell is a system that consists of an inference engine for a certain class of tasks (like planning, design, diagnosis, monitoring, prediction, interpretation, etc.) and supports representation formalisms in which a knowledge base can be encoded. Problem Solving Engine EmptyKnowledge Base If the inference engine is adequate for a certain expert task (e.g. planning), then the process of building the expert system is reduced to the building of the knowledge base.
Learning agent shell: definition A learning agent shell is a tool for building agents. It contains a general problem solving engine, a learning engine and an empty knowledge base structured into an object ontology and a set of rules. Building an agent for a specific application consists in customizing the shell for that application and in developing the knowledge base. The learning engine facilitates the building of the knowledge base by subject matter experts and knowledge engineers. Problem Solving Ontology + Rules Interface Learning
Disciple learning agent shell • The Disciple learning agent shell: • can use imported ontological knowledge; • solves problems through task reduction; • can be taught directly by subject matter experts to become a knowledge-based assistant. The expert teaches the agent to perform various tasks in a way that resembles how the expert would teach a person. The agent learns from the expert, building, verifying and improving its knowledge base Mixed-initiative reasoning between the expert that has the knowledge to be formalized and the agent that knows how to formalize it. Problem Solving Ontology + Rules Interface Learning
Main idea of the Disciple mixed-initiative approach The complex knowledge engineering activities, traditionally performed by a knowledge engineer with assistance from a subject matter expert, are replaced with equivalent ones performed by the subject matter expert and a learning agent, through mixed-initiative reasoning, and with limited assistance from the knowledge engineer. KE Define domain model Create ontology Define rules Verify and update rules SME Traditionally With Disciple Define initial model Import and create initial ontology Define and explain examples Critique examples SME SME KE SME Agent Agent SME KE Extend domain model Specify instances Learn ontological elements Learn rules Explain critiques Refine rules SME Agent SME Agent Agent SME Agent Agent
A Disciple agent for action planning Disciple-WA (1997-1998): Estimates the best plan of working around damage to a transportation infrastructure, such as a damaged bridge or road. Disciple-WA demonstrated that a knowledge engineer can use Disciple to rapidly build and update a knowledge basecapturing knowledge from military engineering manuals and a set of sample solutions provided by a subject matter expert. 72% increase of KB size in 17 days Evolution of KB coverage and performance from the pre-repair phase to the post-repair phase. Disciple-WA features: • High knowledge acquisition rate; • High problem solving performance (including unanticipated solutions). • Demonstrated at EFX’98 as part of an integrated application led by Alphatech. Development of Disciple’s KB during evaluation.
A Disciple agent for course of action critiquing Disciple-COA (1998-1999): Identifies strengths and weaknesses in a Course of Action, based on the principles of war and the tenets of army operations. Disciple-COA demonstrated the generality of its learning methods that used an object ontology created by another group (TFS/Cycorp). It also demonstrated that a knowledge engineer and a subject matter expert can jointly teach Disciple. 100% 46% increase of KB size in 8 days Evolution of KB coverage and performance from the pre-repair phase to the post-repair phase for the final 3 evaluation items. Disciple-COA features: • High knowledge acquisition rate; • Better performance than the other evaluated systems; • Better performance than the evaluating experts (many unanticipated solutions). Development of Disciple’s KB during evaluation.
Knowledge acquisition experiment at BCBL, Ft. Leavenworth Questions Answers Do you think that Disciple is a useful tool for Knowledge Acquisition? • Rating 5. Absolutely! The potential use of this tool by domain experts is only limited by their imagination - not their AI programming skills. • 5 • 4 • Yes, it allowed me to be consistent with logical thought. Do you think that Disciple is a useful tool for Problem Solving? • Rating 5. Yes. • 5 (absolutely) • 4 • Yes. As it develops and becomes tailored to the user, it will simplify the tedious tasks. Do you think that Disciple has potential to be used in other tasks you do? • Rating 5. Again the use of the tool is only limited to one’s imagination but potential applications include knowledge bases built to support distance/individual learning, a multitude of decision support tools (not just COA Analysis), and autonomous and semi-autonomous decision makers - all these designed by the domain expert vs an AI programmer. • Absolutely. It can be used to critique any of the BOS's for any mission. • 5 Yes • 4 Were the procedures/ processes used in Disciple compatible with Army doctrine and/or decision making processes? • Rating 5. As a minimum yes, as a maximum—better! • This again was done very well. • 4 • 4 Could Disciple be used to support operational requirements in your organization? • Rating 5. Yes, Absolutely! I’ll take 10 of them! • 5 • 5 • Not at this point of development. Questionnaire All comments consider the fact that Disciple is a research prototype. Degree of agreement with a statement: 1 (not at all) to 5 (very). Showed that a subject matter expert, who does not have prior knowledge engineering experience, can be rapidly trained to teach Disciple to critique COAs, based on a given model of the COA critiquing process. LTC John N. Duquette LTC Jay E. Farwell MAJ Michael P. Bowman MAJ Dwayne E. Ptaschek Disciple COA IKB KB extended with 26 rules and 28 tasks in 3 hours KB development during experimentation.
Overview Limits of the classical knowledge engineering approaches Advanced approaches to agent development Learning agent shells A Disciple agent for center of gravity analysis Demo: Use of a Disciple agent as a decision-making assistant Design principles for instructable agents Demo: Training a Disciple agent Research problems and research visions Recommended readings
Disciple-RKF: An agent for center of gravity analysis Goal: Develop the technology that enables teams of subject matter experts to build integrated knowledge bases and agents incorporating their problem solving expertise. Parallel Agent Training and KB Development Agent Use KBs Integration The mediator team integrates the knowledge bases developed by each subject matter expert and personal Disciple-RKF agent. Each SME teaches a personal Disciple-RKF learning agent how to solve problems, in a way that resembles how the expert would teach a human apprentice. Disciple-RKF with the integrated KB is used in practical applications. Disciple-RKF Assistant Problem solver for a non-expert KB1 ... Disciple-RKF Assistant Expert Assistant of an expert Integrated KB Disciple-RKF Assistant Tutor to a student KBn Expert Successful experiments and transition to the US Army War College Knowledge bases integration experiment at the US Army War College (2003). Disciple agents regularly used in two courses at US Army War College (2001-2004). Three agent training and knowledge bases development experiments (2001, 2002, 2003).
Synergistic collaboration and transition at the USAWC George Mason University - US Army War College Students developed scenarios 319jw Case Studies inCenter of Gravity Analysis Students developed agents 589jw Military Applications of Artificial Intelligence Use of Disciple in a sequence of two joint warfighting courses Military Education& Practice Military Strategy Research Disciple Formalization ofthe Center of Gravity(COG) analysis process ArtificialIntelligence Research Knowledge bases and agent development by subject matter experts, using learning agent technology. Experiments in the USAWC courses.
Sample Domain: Center of Gravity Analysis The center of gravity of an entity (state, alliance, coalition, or group) is the foundation of capability, the hub of all power and movement, upon which everything depends, the point against which all the energies should be directed. Carl Von Clausewitz, On War, 1832. The center of gravity of an entity is its primary source of moral or physical strength, power or resistance. Joe Strange, Centers of Gravity & Critical Vulnerabilities, 1996. If a combatant eliminates or influences the enemy’s strategic center of gravity, then the enemy will lose control of its power and resources and will eventually fall to defeat. If the combatant fails to adequately protect his own strategic center of gravity, he invites disaster. Giles and Galvin, USAWC 1996.
First computational approach to COG analysis • Approach to center of gravity analysis based on the concepts ofcritical capabilities, critical requirements and critical vulnerabilities, which have been recently adopted into the joint military doctrine. Identify COG candidates Test COG candidates Identify potential primary sources of moral or physical strength, power and resistance from: Test each identified COG candidate to determine whether it has all the necessary critical capabilities: Which are the critical capabilities? Are the critical requirements of these capabilities satisfied? If not, eliminate the candidate. If yes, do these capabilities have any vulnerability? Government Military People Economy Alliances Etc.
Student – Disciple collaboration Is guided by Disciple to describe the relevant aspects of a strategic environment. Develops a formal representation of the scenario. Identifies and tests strategic COG candidates. Studies the logic behind COG identification and testing. Generates a COG analysis report. Critiques Disciple’s analysis and finalizes the analysis report. Student Disciple
The student is guided by Disciple to describe the relevant aspects of a strategic environment.
Disciple identifies and tests COG candidates The students study the logic behind COG identification and testing
Spring 2003 scenarios and COGs selected War on Terror 2003 Iraq 2003 Al Qaeda 2003: Terrorist Cells of Al Qaeda Muslim non-state actors neutral to Al Qaeda US Coalition 2003: will of the people of US Muslim non-state actors neutral to Al Qaeda Iraq: Saddam Hussein US led coalition: will of the people of United States will of the people of Great Britain LTC Thomas T. Smith LTC Joseph P. Schweitzer LTC Michael S. Yarmie CDR John J. Welsh North Korea 2003 Israel-PLO 2003 Israel: financial capacity of Israel Palestine: external support from Arab Countries to Palestine Liberation Organization North Korea: military of North Korea US Led Coalition: will of the people of United States COL Douglas J. Lee COL Robert F. Barry COL Christian E. de Graff LTC Robert D. Grymes
Demonstration Strategic leader’s assistant Disciple
Overview Limits of the classical knowledge engineering approaches Advanced approaches to agent development Learning agent shells A Disciple agent for center of gravity analysis Demo: Use of a Disciple agent as a decision-making assistant Design principles for instructable agents Demo: Training a Disciple agent Research problems and research visions Recommended readings
Generality-Power Tradeoff Structure the architecture into a reusable domain-independent learning agent shell and domain specific modules Disciple Agent Learning Agent Shell Graphical User Interface Customized User Interface Knowledge Repository Knowledge Acquisition and Learning Problem Solver Customized Problem Solver Knowledge Base Manager Domain Independent Modules Domain Dependent Plug-in Modules
Cognitive Functions Make separate modules for each cognitive function, such as communication, problem solving, learning, and knowledge management Implement each cognitive module as a collaborative agent, in a mixed-initiative framework Disciple: each module is implemented as a set of collaborative agents
Problem Solving Paradigm Use a general problem solving paradigm, that can be applied to a wide range of application domains and develop a methodology to help the subject matter experts express their reasoning and teach the agent using it Disciple: the task reduction paradigm • A complex problem solving task is performed by: • successively reducing it to simpler tasks; • finding the solutionsof the simplest tasks; • successively composing these solutions until the solution to the initial task is obtained. T1 S1 … T11 S11 T1n S1n … S111 T111 T11m S11m
Question-answering based task reduction Let T1 be the problem solving task to be performed. Finding a solution is an iterative process where, at each step, we consider some relevant information that leads us to reduce the current task to a simpler task or to several simpler tasks. The question Q associated with the current task identifies the type of information to be considered. The answer A identifies that piece of information and leads us to the reduction of the current task. T1 S1 Q1 … S11 A1n A11 S1n T1n T11a S11a T11b S11b … Q11b S11b … S11bm S11b1 A11bm A11b1 … T11b1 T11bm
Task Reduction Example: COG Analysis Rule_1 Rule_2 Rule_3 Rule_4
Knowledge Base Structuring Structure the knowledge base into its more general and reusable components, and its more specific components Disciple: separation between • the ontology that defines the concepts and features from an application domain (which is a more general component and may be reused from existing knowledge repositories) • the set of problem solving rules (which is a more specific component and is learned from the subject matter expert) Knowledge Base Ontology Rules
Disciple: Ontology Fragment A hierarchical representation of the objects and types of objects. A hierarchical representation of the types of features.
Disciple: Example of a Task Reduction Rule We need to Identify and test a strategic COG candidate corresponding to a member of the Allied_Forces_1943 Which is a member of Allied_Forces_1943? EXAMPLE OF REASONING STEP US_1943 Therefore we need to Identify and test a strategic COG candidate for US_1943 LEARNED RULE IF Identify and test a strategic COG candidate corresponding to a member of a force The force is ?O1 IF Identify and test a strategic COG candidate corresponding to a member of the ?O1 Plausible Upper Bound Condition ?O1 is multi_member_force has_as_member ?O2 ?O2 is force QuestionWhich is a member of ?O1 ? Answer?O2 Plausible Lower Bound Condition ?O1 is equal_partners_multi_state_alliance has_as_member ?O2 ?O2 is single_state_force THEN Identify and test a strategic COG candidate for ?O2 THEN Identify and test a strategic COG candidate for a force The force is ?O2 INFORMAL STRUCTURE FORMAL STRUCTURE
Partially Learned Knowledge Allow the representation, use, and refinement of partially learned knowledge Plausible version space (PVS) • Disciple: use of plausible version spaces (PVS) to represent and use partially learned knowledge: • Rules with PVS conditions • Tasks with PVS conditions • Features with the domain and range represented as PVS conditions Universe of Instances Plausible Upper Bound Concept Plausible Lower Bound
Integrated Problem Solving and Learning Develop a methodology where the subject matter expert and the agent solve problems in cooperation and the agent learns from the problem solving contributions of the expert, and from its own problem solving attempts
Disciple: Problem-Solving and Learning We need to 2 1 Identify and test a strategic COG candidate corresponding to a member of the Allied_Forces_1943 Which is a member of Allied_Forces_1943? Learns Provides an example Rule_4 US_1943 Therefore we need to Identify and test a strategic COG candidate for US_1943 … We need to 3 5 Identify and test a strategic COG candidate corresponding to a member of the European_Axis_1943 Applies Rule_4 Which is a member of European_Axis_1943? Refines ? Rule_4 4 Germany_1943 Therefore we need to Identify and test a strategic COG candidate for Germany_1943 Accepts the example Learning Modeling Problem Solving Refining
Integrated Teaching and Learning Develop a methodology where the subject matter expert helps the agent to learn (e.g. by providing examples, hints and explanations), and the agent helps the subject matter expert to teach it (e.g. by asking relevant questions)
Find an explanation of why the example is correct We need to Identify and test a strategic COG candidate corresponding to a member of the Allied_Forces_1943 Which is a member of Allied_Forces_1943? US_1943 Therefore we need to Identify and test a strategic COG candidate for US_1943 The explanation is an approximation of the question and the answer, in the object ontology. has_as_member Allied_Forces_1943 US_1943
Generate the PVS rule We need to Identify and test a strategic COG candidate corresponding to a member of a force The force is Allied_Forces_1943 has_as_member Allied_Forces_1943 US_1943 Therefore we need to Identify and test a strategic COG candidate for a force The force is US_1943 IF Identify and test a strategic COG candidate corresponding to a member of a force The force is ?O1 Rewrite as explanation ?O1 has_as_member ?O2 Most general generalization Plausible Upper Bound Condition ?O1 is multi_member_force has_as_member ?O2 ?O2 is force Condition ?O1 is Allied_Forces_1943has_as_member ?O2 ?O2 is US_1943 Plausible Lower Bound Condition ?O1 is equal_partners_multi_state_alliance has_as_member ?O2 ?O2 is single_state_force Most specific generalization has_as_member domain: multi_member_force range: force THEN Identify and test a strategic COG candidate for a force The force is ?O2
Multistrategy Learning Integrate several learning strategies, taking advantage of their complementary strengths to compensate for each other’s weaknesses
Demonstration Teaching Disciple how to determine whether a strategic leader has the critical capability to be protected. DiscipleDemo
Overview Limits of the classical knowledge engineering approaches Advanced approaches to agent development Learning agent shells A Disciple agent for center of gravity analysis Demo: Use of a Disciple agent as a decision-making assistant Design principles for instructable agents Demo: Training a Disciple agent Research problems and research visions Recommended readings
Present research problem Elaborate a theory, methodology and system for the development of knowledge bases and agents by subject matter experts, with limited assistance from knowledge engineers. IntelligentAgent Knowledge Base
What are the main technical challenges 1. Automating the domain modeling process that consists of making explicit, at an informal level, the way the expert solves problems. 2. Building the initial generic object ontology through import from external repositories and direct elicitation froma subject matter expert. 3. Populating the generic object ontology with instances and relationships that describe a specific situation or scenario. 4. Learning complex problem solving rules directly from a subject matter expert. 5. Learning object concepts that extend the generic ontology directly from a subject matter expert.
How are these challenges addressed • Develop a general approach to domain modeling that allows a subject matter expert to express the way he or she performs a task based on the task reduction paradigm. • Structure the knowledge base into an object ontology that can be imported/reused and a set of problem solving rules that can be learned from a subject matter expert. • Develop methods to import/reuse ontological knowledge from previously developed knowledge bases or repositories. • Develop a learnable knowledge representation that can express partially learned knowledge and can be used in reasoning. • Develop multistrategy learning methods that synergistically integrate several learning strategies. • Develop methods for integrated teaching and learning where the SME helps the agent to learn, and the agent helps the SME to teach it. • Use of plausible reasoning to hypothesize solutions based on incomplete and partially incorrect knowledge.