Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม

ความแตกต่างระหว่าง Forward และ Backward Reasoning ใน AI


Forward Reasoning (การให้เหตุผลไปข้างหน้า)

  • Data-driven Task
  • เริ่มจากข้อมูลใหม่ (New Data)
  • วัตถุประสงค์: หา Conclusion ที่ตามมา
  • ใช้ Opportunistic Approach
  • ไหลจาก Cause → Effect (Incipient → Consequence)
  • Inference Engine Search Knowledge Base จากข้อมูลที่มี ตาม Constraints
  • Constraints ต้อง Match Current State
  • ขั้นตอน: ให้ Constraints → Search Rules → Select Rule ที่ Match → ผลลัพธ์สร้าง Condition ใหม่ → Add & Process ซ้ำ → หยุดถ้าไม่มี Condition ใหม่
  • อาจช้า
  • Top-down Reasoning

Backward Reasoning (การให้เหตุผลย้อนกลับ)

  • Goal-driven Task
  • เริ่มจาก Conclusions ที่ไม่แน่ใจ
  • วัตถุประสงค์: หา Facts ที่ Support Conclusions
  • ใช้ Conservative Approach
  • ไหลจาก Effect → Cause (Consequence → Incipient)
  • System เลือก Goal State Reason ย้อนกลับ
  • ขั้นตอน: เลือก Goal State & Rules → สร้าง Sub-goals จาก Rule ที่ต้อง Satisfy → Set Initial Conditions ให้ Satisfy Sub-goals → Match Established States กับ Initial State → ถ้า Match Goal = Solution มิฉะนั้น Reject Goal
  • Test Rules น้อยกว่า
  • ให้ Data น้อยกว่า
  • Bottom-up Reasoning
  • Initial Goals น้อย Rules เยอะ
  • Based on Decision จาก Initial State
  • Decision-driven / Goal-driven Inference Technique