Trong hệ thống suy diễn tiến, hệ thống kiểm tra cỏc luật và tỡm luật nào cú mọi giả thiết nắm trong bộ nhớ làm việc để chỏy. Quỏ trỡnh này được lặp đi lặp lại. Tuy nhiờn, cú nhiều hơn một luật cú thể chỏy, nhưng khụng được hệ thống xem xột đến. Điều này cú thể dẫn đến cỏc kết luận khỏc nhau.
Vớ dụ ta cú luật sau:
Luật 1: IF Chiều này, đội búng Thể Cụng gặp đội Hàng Khụng Việt Nam AND Tụi cú 50.000 đồng
THEN Tụi sẽ đi xem búng đỏ
Luật 2: IF Chiều nay, tại rạp Thỏng 8 chiếu phim “Gỏi nhảy”
AND Tụi cú 50.000 đồng THEN Tụi sẽ đi xem phim
Giả định rằng giả thiết của cả hai luật trờn đều đỳng. Sử dụng cỏch tiếp cận suy diễn tiến, ta cú tỡm ra hai kết luận “Tụi sẽ đi xem búng đỏ” và “Tụi sẽ đi xem phim” xung đột nhau.
Để giải quyết xung đột trong hệ chuyờn gia, ta sử dụng một số chiến lược giải quyết mõu thuẫn. Một chiến lược đơn giản nhất là hệ thống sẽ ngừng suy diễn khi tỡm ra được một kết luận. Trong vớ dụ trờn, ta cú thể mụ hỡnh kết luận của ta dạng “Tụi sẽ đi ?X” với X là “xem búng đỏ” hoặc “xem phim”. Khi hệ thống tỡm được một giỏ trị cho X vớ dụ như “xem búng đỏ”, quỏ trỡnh suy diễn sẽ dừng lại và hệ thống sẽ gợi ý người sử dụng nờn đi xem búng đỏ. Khi sử dụng chiến lược này, thứ tự cỏc luật cú kết luận là kết luận cần suy diễn rất quan trọng.
Một chiến lược khỏc là dựa trờn mức độ ưu tiờn của cỏc luật. Mỗi luật sẽ được gắn một trọng số biểu hiện mức độ quan trọng của nú. Sử dụng chiến lược này trong suy diễn tiến, hệ thống sẽ kiểm tra mọi luật trong một chu trỡnh và sẽ chỏy luật cú mức độ ưu tiờn cao nhất.
Trong vớ dụ trờn, giỏ định rằng gluật 2 cú độ ưu tiờn cao hơn luật 1. Khi đú hệ thống sẽ chỏy luật 2 và đưa ra kết luận “Tụi sẽ đi xem phim”. Với chiến lược này, thứ tự cỏc luật hoàn toàn khụng quan trọng.
Núi chung cỏc chiến lược này khụng phự hợp cho mọi ứng dụng. Để giải quyết đụng độ cho hầu hết cỏc ứng dụng, người ta đưa ra một loạt cỏcchiến lược giải quyết đụng độ.
Chiến lược giải quyết đụng độ là chiến lược chọn thứ tự luật chỏy khi cú nhiều hơn một luật cú thể chỏy.
Trong cỏc hệ thống cú sử dụng chiến lược giải quyết đụng độ, mụ tơ suy diễn sẽ hoạt động theo quỏ trỡnh bao gồm 3 bước nhận biết - quyết định - hành động trong khi duyệt qua cỏc luật:
1. Nhận biết: Tỡm cỏc luật cú mọi giả thiết phự hợp với cỏc sự kiện đang cú trong bộ nhớ làm việc, cỏc luật này được xỏc định là cú thể chỏy.
3. Hành động: Chỏy luật này và kết luận của luật được thờm vào bộ nhớ làm việc
Bước nhận biết xỏc định luật cú thể chỏy và đặt chỳng vào trong tập đụng độ (conflict set). Bước quyết định sẽ sử dụng một chiến lược để tỡm luật chỏy. Cỏc chiến lược thường được dựng là:
1. Luật đầu tiờn phự hợp trong bộ nhớ làm việc 2. Luật cú mức độ ưu tiờn cao nhất
3. Luật cú nhiều giả thiết
4. Luật cú cỏc giả thiết là cỏc sự kiện mới thờm vào trong bộ nhớ làm việc 5. Khụng chỏy luật đó được chỏy
6. Chỏy mọi luật cú thể chỏy và thờm mỗi kết luận của mỗi luật vào một bộ nhớ làm việc khỏc nhau
Chiến lược thứ nhất được sử dụng trong hầu hết cỏc hệ thống và phụ thuộc vào thứ tự cỏc luật. Trong một số ứng dụng đơn giản, chiến lược này hoạt động hiệu quỏ. Tuy nhiờn, như đó minh hoạ trong vớ dụ trờn chiến lược này cú thể gõy ra một số vấn đề trong một số ứng dụng.
Chiến lược thứ hai sử dụng mức độ ưu tiờn của luật. Chiến lược này nhấn mạnh đến mức độ quan trọng của cỏc luật.
Chiến lược thứ ba sử dụng luật cú nhiều giả thiết. Chiến lược này được dựa trờn một hiện tượng tõm lý là dường như cỏc luật cú nhiều giả thiết đưa ra kết luận đỏng tin cậy hơn cỏc luật cú ớt giả thiết.
Chiến lược thứ tư sử dụng cỏc luật cú cỏc giả thiết là cỏc sự kiện mới thờm vào trong bộ nhớ làm việc. Chiến lược này ỏp dụng cho hệ thống suy diễn với cỏc thụng tin mới được thu thập. Nú dựa vào thời gian xỏc định được một sự kiện trong bộ nhớ làm việc.
Chiến lược thứ năm khụng chỏy cỏc luật đó chỏy nhằm trỏnh trường hợp lặp vụ hạn. Nú thường được sử dụng cựng với cỏc chiến lược khỏc.
Chiến lược thứ sỏu chỏy mọi luật trong tập đụng độ nhưng thờm kết luận của nú vào cỏc bộ nhớ làm việc khỏc nhau. Nú cho phộp hệ thống giữ được cỏc đường suy luận khỏc nhau và xem xột được cỏc giải phỏp khỏc nhau.
Mỗi chiến lược suy diễn trờn đều cung cấp một thứ tự luật để chỏy khỏc nhau. Mỗi chiến lược đều cú ưu, nhược điểm riờng. Lựa chọn chiến lược để chỏy như thế nào cho hiệu quả tuỳ thuộc vào từng hệ thống cụ thể.
3.2.4. Suy diễn lựi3.2.4.1 Định nghĩa 3.2.4.1 Định nghĩa
Chiến lược suy diễn tiến là một kỹ thuật suy diễn phự hợp với cỏc bài toỏn yờu cầu từ cỏc thụng tin đó biết ban đầu, sử dụng suy luận logic rỳt ra cỏc thụng tin mới. Trong cỏc bài toỏn khỏc, chỳng ta bắt đầu với một kết luận và cố gắng chứng minh nú đỳng bằng cỏch thu thập cỏc thụng tin hỗ trợ. Vớ dụ như bỏc sĩ nghi ngờ bệnh nhõn bị nhiễm khuẩn đường hụ hấp. Anh ta cố gắng chứng minh điều này bằng cỏch tỡm ra cỏc triệu chứng thớch hợp. Rừ ràng chiến lược suy diễn tiến khụng thể ỏp dụng trong trường hợp này. Ta phải ỏp dụng một chiến lược suy diễn khỏc hướng mục tiờu. Đú là chiến lược suy diễn lựi.
Chiến lược suy diễn lựi là chiến lược suy diễn cố gắng chứng minh một kết luận bằng cỏch thu thập cỏc thụng tin hỗ trợ.
Hỡnh vẽ 3.3 Sơ đồ suy diễn lựi
Cú luật phự hợp? Thờm giả thiết
của luật vào goal
Cũn goal
KT kết luận tiếp theo
Dừng Đỳng Đỳng Sai Sai Bắt đầu
Kiểm tra luật đầu tiờn Thờm GT vào ds goal Hỏi người dựng và thờm trả lời vào BNLV GT là kết luận của luật khỏc?
Kiểm tra luật tiếp theo Cũn goal? Đỳng Đỳng Sai Sai Goal=KL
Hệ thống suy diễn lựi bắt đầu với một mục tiờu (goal) phải chứng minh. Nú kiểm tra bộ nhớ làm việc để kiểm tra xem goal đó nằm trong bộ nhớ làm việc chưa. Bước này rất cần thiết vỡ cú thể goal đó được chứng minh rồi. Nếu khụng nú sẽ tỡm mọi luật cú goal đứng sau THEN. Cỏc luật dạng này được gọi là cỏc goal rule. Hệ thống sẽ kiểm tra xem cỏc giả thiết của goal rule cú nằm trong bộ nhớ làm việc hay khụng. Cỏc giả thiết của rule goal là kết luận của một luật khỏc nú sẽ được coi là một subgoal. Cỏc giả thiết cũn lại khụng là kết luận của bất cứ luật nào được gọi là cỏc primitive. Hệ thống sẽ yờu cầu người dựng cung cấp thụng tin về primitive này. Cỏc thụng tin do người dựng cung cấp sẽ trợ giỳp cho quỏ trỡnh chứng minh goal ban đầu và cỏc subgoal. Quỏ trỡnh tiếp diễn cho đến khi mọi goal và subgoal đều được kiểm tra.
Đế minh hoạ chiến lược suy diễn lựi ta xột vớ dụ sau: Rule 1:
IF Bệnh nhõn cú dấu hiệu viờm họng
AND Cú bằng chứng cho thấy cơ quan hụ hấp bị nhiễm khuẩn THEN Bệnh nhõn bị nhiễm khuẩn đường hụ hấp
Rule 2:
IF Họng bệnh nhõn bị đỏ
THEN Bệnh nhõn cú dấu hiệu viờm họng Rule 3:
IF Bệnh nhõn cảm thấy khú thở AND Bệnh nhõn bị sốt
THEN Cú bằng chứng cho thấy cơ quan hụ hấp bị nhiễm khuẩn
Mục tiờu đạt ra là phải chứng minh kết luận “Bệnh nhõn bị nhiễm khuẩn đường hụ hấp” tức là kết luận của Rule1. Để chứng minh kết luận này, chiến lược suy diễn lựi bắt đầu bằng cỏch chọn goal rule Rule1. Sau đú nú sẽ chứng minh cỏc giả thiết của luật này. Do cả hai giả thiết của luật này đều là kết luận của luật khỏc nờn chỳng trở thành cỏc sub goal và cần được chứng minh. Để chứng minh “Bệnh nhõn cú dấu hiệu viờm họng”, hệ thống sẽ kiểm tra cỏc giả thiết của Rule2. Để chứng minh “Cú bằng chứng cho thấy cơ quan hụ hấp bị nhiễm khuẩn”, hệ thống sẽ kiểm tra cỏc giả thiết của Rule3. Cỏc giả thiết của cả hai luật này đều khụng là kết luận của bất kỳ luật nào khỏc nờn chỳng là cỏc primitive, cần phải hỏi bệnh nhõn về cỏc giả thiết này. Từ cỏc trả lời của bệnh nhõn ta cú thể xỏc định được kết luận ban đầu “Bệnh nhõn bị nhiễm khuẩn đường hụ hấp” cú đỳng hay khụng.