1. 적용규칙을 표시하기
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | /* 규칙 기반의 검색 */ while (1) { contflag = NO; /* 규칙을 차례대로 조사함 */ for (i = 0; i < rulepointer; ++i) { /* 조건부와 일치하면 결론부를 WM에 복사 */ if ((match(i) == YES) && (check[i] == NO)) { contflag = YES; check[i] = YES; strcpy(wm[wmpointer++], rulebase[i].res); printf("WM의 상태..규칙 [%d] 적용\n", i+1); putwm(); } } ------------------------------------------------------------- void printrule() { int i; for (i = 0; i < rulepointer; ++i) { printf("rule %d\n", i+1); printf("cond1 : %s\n", rulebase[i].cond1); printf("cond2 : %s\n", rulebase[i].cond2); printf("cond3 : %s\n", rulebase[i].cond3); printf("res : %s\n\n", rulebase[i].res); } } | cs |
2. 지식 베이스를 달리하여 여러 가지 질문에 대해 추론해 보기
if 술이 있다 then 술
if 술 and 탄산이 없다 then 소주
if 소주 and 자몽 then 자몽에 이슬
if 소주 and 블루베리 then 좋은데이 블루베리
if 소주 and 유자 then 좋은데이 유자
if 술 and 탄산이 있다 then 맥주
if 맥주 and 에일 then 스타우트
if 맥주 and 라거 then 필스너
ex.txt – 조건 파일
ifdata1.txt – 데이터 파일
ifthen1.c – c 파일
'대학교 > 2.AI_인공지능' 카테고리의 다른 글
AI.6 n-gram (0) | 2017.04.21 |
---|---|
AI5. 유전알고리즘 (0) | 2017.04.21 |
AI3.프레임 (0) | 2017.04.21 |
AI 2.경험적탐색 (0) | 2017.04.21 |
AI1. 맹목적탐색 (0) | 2017.04.21 |