전문가시스템 (Expert System)
태그 :
- 개념
- - 인간이 특정분야에 대하여 가지고 있는 전문적인 지식을 정리하고 표현하여 컴퓨터에 기억시킴으로써, 일반인도 이 전문지식을 이용할 수 있도록 하는 시스템 - 특정 문제 영역에서 그 영역의 인간 전문가가 의사 결정을 내리는 것과 유사하게 동작하는 컴퓨터 시스템
Ⅰ. 전문가시스템(Expert System)의 개요
가. 전문가시스템(Expert System)의 정의
- 인간이 특정분야에 대하여 가지고 있는 전문적인 지식을 정리하고 표현하여 컴퓨터에 기억시킴으로써, 일반인도 이 전문지식을 이용할 수 있도록 하는 시스템
- 특정 문제 영역에서 그 영역의 인간 전문가가 의사 결정을 내리는 것과 유사하게 동작하는 컴퓨터 시스템
Ⅱ. 전문가시스템 구조, 개발 도구 및 개발 과정
가. 전문가시스템 구조
구성요소 |
설명 |
비고 |
설명기관 |
-전문가시스템이 내는 결론에 대해 설명해줌 |
-기존 시스템과의 핵심 차별점 |
추론기관 |
-Inference Engine -지식기반으로 정보를 추론하여 전달 |
-정방향 추론 -역방향 추론 |
지식획득시스템 |
-Knowledge Acquisition System -전문가와의 인터뷰나 문헌자료 등을 수집하고 정리하여 컴퓨터에 입력하는 과정 |
-자동지식습득으로 변화 |
지식베이스 |
-Knowledge Base -Semantic Network를 이용 |
- if-then-else 규칙 |
Ⅲ. 전문가시스템 개발 언어 도구
개발도구 |
설명 |
문제지향언어(PASCAL, FORRAN) |
- 규칙을 바탕으로한 논리 처리 - 과학, 수학계산, 상업분야 등 |
심볼처리언어(LISP, PROLOG) |
- 리스트 형태로 나타낸 심볼을 처리 - 인공지능 분야 |
Ⅳ. 전문가시스템 개발 과정
번호 |
개발 과정 |
설명 |
1 |
문제정의 |
주어진 문제의 유형과 범위, 개발작업에 참여할 인력,전문가, 소요될 시간, 컴퓨터 시설 등을 함께 고려 |
2 |
개념설정 |
-정의된 문제를 해결하기 위해 필요한 개념을 정립하고 각 개념 사이의 관계와 제어기능을 정의 |
3 |
정형화 |
-중요한 개념과 지식을 정형화하여 표현 |
4 |
구현 |
-표현된 지식을 프로그래밍하는 단계로써 자료구조,추론과정, 프로그램 제어,하부 시스템들의 통합 등을 고려 |
5 |
검증 |
-개발된 시스템이 처음 정의한 요구사항대로 만들어졌는가 평가 |
전문가가 가지고 있는 지식을 인위적으로 컴퓨터에게 부여하여 그 방면에 비전문가라 할지라도 그러한 전문가의 지식을 이용하여 상호 대화를 통하여 원하는 결과를 얻는 일종의 자문형 컴퓨터 시스템
Ⅴ. 인간과 전문가 시스템의 비교
Factor |
인간 |
Expert system |
이용가능한 시간 |
workday (일하는 시간만) |
always |
이용가능한 공간 |
local (제한적) |
anywhere availability (어디서나) |
안전성 |
irreplaceable (회복불능) |
replaceable (교체가능) |
Perishable (사멸가능성) |
yes |
no |
성능 |
variable (변화가능) |
consistent (항상 일정함) |
속도 |
variable (변화가능) |
consistent (보통 더 빠르다) |
비용 |
high |
affordable (알맞은) |
Ⅵ. 지식수집방법
관찰 |
문제토의 |
시스템 정련 |
문제 분석 |
시스템 검증 |
문제 서술 |