You are on page 1of 45

Hệ

Hệ chuyên
chuyên gia
gia
Expert
Expert Systems
Systems

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 1
Chương 4.

XÂY DỰNG
HỆ CHUYÊN GIA ỨNG DỤNG

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 2
4.0 Development life cycle

1. Project initialization
2. System analysis and design
3. Rapid prototyping
4. System development
5. Implementation
6. Postimplementation

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 3
4.1 Project Initialization

„ Problem definition
„ Need assessment
„ Evaluation of alternative solutions
„ Verification of an expert systems approach
„ Consideration of managerial issues

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 4
4.2 System analysis and design

„ Conceptual design and plan


„ Development strategy
„ Sources of knowledge
„ Computing resources
„ Feasibility study
„ Cost-benefit analysis

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 5
4.3 Rapid prototyping

„ Building a small prototype


„ Testing, improving, expanding
„ Demonstrating and analyzing feasibility
„ Completing design

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 6
4.4 System development

„ Completing the knowledge base


„ Testing, evaluating, and improving knowledge
base
„ Planning for integration

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 7
4.5 Implementation

„ Acceptance by user
„ Installation, demonstration, deployment
„ Orientation, training
„ Security
„ Documentation
„ Integration, field testing

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 8
4.6 Postimplementation

„ Operation
„ Maintenance and upgrades
„ Periodic evaluation

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 9
4.1 Project Initialization

„ Problem definition and Need assessment


• What is problem?
• What are the real needs?
• Write a clear statement of it and provide as
much supporting information as possible
• The best way to understand the problem or
need is to conduct a kind of formal study
called need assessment

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 10
4.1 Project Initialization

„ Evaluation of alternative solutions


• Using Experts
• Education and Training
• Packaged Knowledge
• Conventional Software
• Bying Knowledge on the Internet

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 11
4.1 Project Initialization

„ Verification of an expert system approach (other


alternatives are not approriate does not mean
that an ES is necessary)
• Requirements for ES development
• Justification for ES development
• Appropriateness of the ES

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 12
4.1 Project Initialization

• Requirements for ES development


• The task does not require common sense.
• The task requires only cognitive, not physical, skills.
• There is at least one genuine expert who is willing to cooperate.
• Expert involved can articulate their methods of problem solving.
• Expert involved can agree on the knowledge and the solution
approach to the problem .
• The task is not too difficult

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 13
4.1 Project Initialization

• Requirements for ES development (cont.)


• The task is well understood and defined clearly.
• The task definition is fairly stable.
• Conventional (algorithmic) computer solution techniques are not
satisfactory.
• Incorrect or nonoptimal results generated by the ES can be
tolerated.
• Data and test cases are available.
• The task’s vocabulary has no more than a couple of hundred
concepts.

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 14
4.1 Project Initialization

• Justification for ES development


• The solution to the problem has a high payoff.
• The ES can preserve scarce human expertise, so it will
not be lost.
• Expertise is needed in many locations
• Expertise is nedded in hostile or hazardous
environments.

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 15
4.1 Project Initialization

• Justification for ES development (cont.)


• The expertise improves performance or quality.
• The system can be used for training.
• The ES solution can be drived faster than that which a
human can provide.
• The ES is more consistent or accurate than a human.

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 16
4.1 Project Initialization

• Appropriateness of the ES
• Natural of the problem: The problem should have a
symbolic structure and heuristics should be available
for its solution. It is desirable that the task be
decomposable

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 17
4.1 Project Initialization

• Appropriateness of the ES (cont.)


• Complexity of the task: The task should be neither too
easy nor too difficult for a human expert
• Scope of the problem: The problem should be of a
manageable size; it also should have some practical
value.

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 18
4.1 Project Initialization

„ Consideration of managerial issues


• Selling the project: all interested parties and especially top
management must be convinced of the project’s value.
• Identifying a champion: Someone in top management must
sponsor the project strongly.
• Level of top management support.
• End-user involvement, support, and training.
• Availability of financing.
• Availability of other resources.
• Legal and other potential constraints

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 19
4.2 System analysis and Design

„ Conceptual design and plan: general idea of


• What the system look like
• How it is going to solve the problem
• Shows the general capabilities of the system, the
interface, the areas of risk, the required resources,
ancitipated cash flow, the composition of the team,
any other information that is necessary for detailed
design later

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 20
4.2 System analysis and Design

„ Development strategy and methodology


• Do It Yourself
• Hire an Outside Developer
• Enter into a Join Venture

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 21
4.2 System analysis and Design

„ Selecting an expert (both: human and


documented sources)
• Who selects the experts
• How to identify an expert (what characteristics an
expert should exhibit)
• What to do if several experts are needed
• How to motivate the expert to cooperate

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 22
4.2 System analysis and Design
„ Selecting an expert (Ideal Attributes of an expert)
• Experts can see what others cannot
• Exert know how to concentrate on what is important
• Ability to simplify complexities (expert can make sense out of
chaos)
• Strong communication skills (expert know how to demonstrate
their expertise to other)
• Experts know when and when not to follow decision rules
• Experts are not afraid to stand behind their decisions
• Expert know which problem are significant and which are not
• Experts believe in themselves and their abilities

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 23
4.2 System analysis and Design

„ Selecting an expert (Ideal Attributes of an expert. Cont.)


• Experts avoid rigidity in decision strategies.
• Experts know a lot and keep up with the latest developments.
• Experts can do habitually what others have to work at.
• Experts can work effectively under adverse conditions.
• Expert are better able to find novel solutions to problems.
• Experts make decision based on experience.

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 24
4.2 System analysis and Design

„ Selecting an expert (Ideal Attributes of an expert. Cont.)


• Thorough familiarity with the domain, including task expertise
build up over a long period of task performance, knowledge of
the organizations that will be developing and using the ES,
knowledge of the user community , and knowledge of technical
and technological alternatives .
• Knowledge and reputation such that if the ES is able to capture a
portion of the expert’s expertise, the system’s output will have
credibility and authority.

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 25
4.2 System analysis and Design

„ Selecting an expert (Ideal Attributes of an expert. Cont.)


• Commitment of substantial amount of time to the development of
the system, including temporary relocation to the development
site if necessary.
• Capability of communicating his or her knowledge, judgment, and
experience.
• Cooperative, easy to work with and eager to work on the project.
• Interest in computer systems, even if he or she is not acomputer
specialist

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 26
4.2 System analysis and Design
„ Software classification: Technology levels

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 27
4.2 System analysis and Design

„ Building expert systems with tools, four steps:


• The builder uses the tool’s development engine to load the
knowledge base.
• The knowledge base is tested on sample problems using the
inference engine. This is basically a prototyping step done with
the aid of the editor and debugging tools.
• The process is repeated until the system is operational
• The development engine is removed and the specific expert
system is ready for its users

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 28
4.2 System analysis and Design
„ Shells and environments
• Expert systems can be built much faster.
• The programming skill required is much lower.
• All factors together contribute to a cost reduction.
• 2 types of shells: general and domain specific.
• Shells do have limitations and disadvantages.
• Environments are more specialized than languages. They can
increase the productivity of system builders.
• Environments require more programming skills than shells, they
are more flexible.

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 29
4.2 System analysis and Design

„ Feasibility study
• Economic (financial) feasibility:
• Cost of system development
• Cost of maintenance
• Anticipated pay off
• Cash flow analysis
• Risk analysis

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 30
4.2 System analysis and Design

„ Feasibility study
• Technical feasibility:
• Interface requirements
• Networking issues
• Availability of knowledge and data
• Security of confidential knowledge
• Knowledge representation scheme
• Hardware/ software availability and compatibility

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 31
4.2 System analysis and Design
„ Feasibility study
• Operational feasibility and impacts:
• Availability of human and other resources
• Priority as compared to other projects
• Need assessment
• Organizational and implementation issues
• Management and user support
• Availability of experts and knowledge engineers
• Legal and other constraints
• Corporate culture
• User environment

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 32
4.2 System analysis and Design
„ Cost – Benefit analysis
Cost (tools, languages, shells; expert; knowledge
engineer, progammer; the time needed for employees to
test, debug, maintain the program; outside consultants)
• A small system (<100 rules): several weeks and require
2-3 people Æ $10,000-$50,000
• A large system (especially for one on a mainframe): Æ
$100,000 – millions dollars

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 33
4.2 System analysis and Design
„ Cost – Benefit analysis
Evaluating the Benefits (more difficult for assessment)
• Some benefits are intangible.
• Often a benefit cannot be precisely related to a single cause.
• Results of a certain action may occur over a long period of time and
are difficult to predict.
• A valuation of benefits includes the assessment of both quantity and
quality.
• The multiplicity of consequences can pose a major problem for
quantification

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 34
4.3 Rapid prototyping and a
demonstration prototype

„ Prototyping has been crucial to the development of many


ES.
„ The prototype helps the builder decide on the structure of
the knowledge base before spending a great amount of time
on building more rules.
„ Rapid prototypingis essential in large systems, because the
cost of a poorly structured and then not used ES can be very
high.

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 35
4.3 Rapid prototyping and a
demonstration prototype

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 36
4.3 Rapid prototyping and a
demonstration prototype

„ Advantages of the Rapid Prototype


• Allows project developer to get a sense of whether it is feasible to
tackle the full application using ES technology.
• Provides a vehicle through which to study the effectiveness of the
knowledge acquisition and representation.
• May identify important gaps or important problems in the proposed
final system.
• Yields a tangible product of the project at an early stage.
• Gives an opportunity to impress system funders with the capabilities
of the system,helping to retain or increase support of the project.
© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 37
4.3 Rapid prototyping and a
demonstration prototype

„ Advantages of the Rapid Prototype (Cont.)


• Allows the possibility of an early midcourse correction of the project
direction based on feedback from management, consulting experts,
and potential users.
• In early development stages, it provides a system that can be field
tested, yielding experience in using, …
• It might provide a system with enough utility that, although not a
final product, may be put in the field on an extended basis. This early
deployment yields benefits, such as giving experience to system
deployers, system operators, system maintainers, and might identify
potential problems early.
© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 38
4.3 Rapid prototyping and a
demonstration prototype
„ Advantages of the Rapid Prototype (Cont.)
• Accelerates the process of knowledge acquisition.
• Makes it easier for experts to criticize existingprograms or provide
exceptions to the rules.
• Makes selling the system to skeptics easier.
• Helps sustain the expert’s interest.
• Help to build user support.
• Provides an idea of the value of the software and the hardware, and
of the degree of the expert’s cooperation.
• Provides information about the initial definition of the problem
domain, the need for the ES, and the like.
© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 39
4.4 System development

„ Completing the knowledge base


„ Testing, evaluating, and improving knowledge
base
„ Planning for integration

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 40
4.3 Rapid prototyping and a
demonstration prototype

The development strategy may be changed (for exp a


consultant may be hire).
The detailed design is also likely to be change.
One or both of the following approaches will be used:
• Continue with prototyping
• Use the structured life-cycle approach

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 41
4.4 System development

„ Building the knowledge base


• Define the Potential Solution
• Define the Input Facts
• Develop an Outline
• Draw a Decision Tree
• Map a Matrix
• Create the Knowledge Base

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 42
4.5 Implementation

„ Acceptance by the User


„ Installation Approaches
„ Demonstration
„ Mode of Deployment
„ Orientatiation and Training
„ Security
„ Documentation
„ Integration and Field Testing

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 43
4.6 Postimplementation

„ Operation
„ Maintenance
„ Upgrading
„ Evaluation

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 44
Hệ
Hệ chuyên
chuyên gia
gia
Expert
Expert Systems
Systems

© 2006 Hồ Cẩm Hà-ĐHSPHN Chương 4: Xây dựng hệ chuyên gia ứng dụng 45

You might also like