Fuzzy Logic - วิธีที่จะบรรลุการควบคุมโดยอาศัยข้อมูลที่ไม่ถูกต้อง

ลองใช้เครื่องมือของเราเพื่อกำจัดปัญหา





ในยุคของการควบคุมแบบดิจิทัลนี้อุปกรณ์เกือบทุกชิ้นจะถูกควบคุมโดยใช้ การควบคุมแบบดิจิทัล ระดับโดยใช้ 1 และ 0 แต่แค่คิดว่าการคิดว่าผลลัพธ์ของกระบวนการรายวันที่คุณพบเจอนั้นเป็นเรื่องไม่ถูกต้อง แต่ขึ้นอยู่กับสองสถานะของอินพุตเท่านั้น ไม่แน่นอน ลองนึกภาพแม่ของคุณทำอาหารอร่อย ๆ และคุณก็ไม่สามารถหยุดตัวเองจากการชมเชยเธอ แล้วอาหารจะอร่อยได้อย่างไร? ด้วยการเติมส่วนผสมในปริมาณและสัดส่วนที่เหมาะสมแน่นอน แล้วเธอจะจัดการอย่างไร? ด้วยความรู้เชิงตัวเลขที่สมบูรณ์แบบเกี่ยวกับปริมาณ? ไม่เสมอ. เธอทำสิ่งนั้นด้วยความคิดที่เป็นที่รู้จักซึ่งมาพร้อมกับประสบการณ์ นี่คือที่มาของแนวคิดของตรรกะการควบคุมที่ใช้องศาของสถานะอินพุตแทนที่จะเป็นตัวอินพุตเองซึ่งเป็นตรรกะที่ไม่ต้องการอินพุตที่สมบูรณ์แบบ แต่ใช้ได้กับการประมาณค่าอินพุตโดยทั่วไปเท่านั้น นี่คือตรรกะที่คลุมเครือ

Fuzzy Logic คืออะไร?

ฟัซซีลอจิกเป็นระบบควบคุมพื้นฐานที่อาศัยระดับของสถานะของอินพุตและเอาต์พุตขึ้นอยู่กับสถานะของอินพุตและอัตราการเปลี่ยนแปลงของสถานะนี้ กล่าวอีกนัยหนึ่งระบบฟัซซีลอจิกทำงานบนหลักการของการกำหนดเอาต์พุตเฉพาะขึ้นอยู่กับความน่าจะเป็นของสถานะของอินพุต




Fuzzy Logic เกิดขึ้นได้อย่างไร

Fuzzy Logic ได้รับการพัฒนาในปีพ. ศ. 2508 โดย Lotfi Zadeh ที่มหาวิทยาลัยแคลิฟอร์เนียเบิร์กลีย์เพื่อใช้เป็นวิธีการดำเนินการของคอมพิวเตอร์ตามค่าธรรมชาติแทนที่จะเป็นค่าไบนารี เริ่มแรกถูกใช้เป็นวิธีการประมวลผลข้อมูลและต่อมาเริ่มใช้เป็นกลยุทธ์การควบคุม

Fuzzy Logic ทำงานอย่างไร

ฟัซซีลอจิกทำงานบนแนวคิดของการตัดสินใจผลลัพธ์ตามสมมติฐาน มันทำงานตามชุด แต่ละชุดแสดงถึงตัวแปรทางภาษาที่กำหนดสถานะที่เป็นไปได้ของผลลัพธ์ แต่ละสถานะที่เป็นไปได้ของอินพุตและระดับการเปลี่ยนแปลงของสถานะเป็นส่วนหนึ่งของชุดขึ้นอยู่กับการคาดการณ์ผลลัพธ์ มันทำงานบนหลักการของ If-else-the นั่นคือถ้า A และ B จากนั้น Z



สมมติว่าเราต้องการควบคุมระบบที่เอาต์พุตสามารถอยู่ที่ใดก็ได้ในเซต X โดยมีค่าทั่วไป x เช่นนั้น x เป็นของ X พิจารณาเซต A ที่เป็นเซตย่อยของ X เพื่อให้สมาชิกทั้งหมดของ A อยู่ ช่วงเวลา 0 และ 1 เซต A เรียกว่าเซตฟัซซีและค่าของ fถึง(x) ที่ x หมายถึงระดับการเป็นสมาชิกของ x ในเซตนั้น ผลลัพธ์จะพิจารณาจากระดับการเป็นสมาชิกของ x ในชุด การกำหนดสมาชิกภาพนี้ขึ้นอยู่กับสมมติฐานของเอาต์พุตขึ้นอยู่กับอินพุตและอัตราการเปลี่ยนแปลงของอินพุต

ชุดฟัซซี่เหล่านี้แสดงเป็นกราฟิกโดยใช้ฟังก์ชันการเป็นสมาชิกและผลลัพธ์จะถูกตัดสินตามระดับความเป็นสมาชิกในแต่ละส่วนของฟังก์ชัน ความเป็นสมาชิกของชุดจะถูกตัดสินโดยตรรกะ IF-Else


โดยทั่วไปตัวแปรของชุดคือสถานะของอินพุตและระดับของการเปลี่ยนแปลงของอินพุตและความเป็นสมาชิกของเอาต์พุตขึ้นอยู่กับตรรกะของการทำงาน AND ของสถานะของอินพุตและอัตราการเปลี่ยนแปลงของอินพุต สำหรับระบบอินพุตหลายตัวแปรยังสามารถเป็นอินพุตที่แตกต่างกันและเอาต์พุตอาจเป็นผลลัพธ์ที่เป็นไปได้ของการดำเนินการ AND ระหว่างตัวแปร

ระบบควบคุมฟัซซี่

ระบบควบคุมฟัซซีประกอบด้วยส่วนประกอบต่อไปนี้:

ระบบควบคุมฟัซซี่ลอจิก

ระบบควบคุมฟัซซี่ลอจิก

Fuzzifier ซึ่งแปลงค่าที่วัดได้หรือตัวแปรอินพุตในรูปแบบตัวเลขให้เป็นตัวแปรทางภาษา

ตัวควบคุม ทำการดำเนินการฟัซซีลอจิกในการกำหนดผลลัพธ์ตามข้อมูลทางภาษา ดำเนินการให้เหตุผลโดยประมาณตามวิธีการตีความของมนุษย์เพื่อให้บรรลุตรรกะการควบคุม ตัวควบคุมประกอบด้วยฐานความรู้และกลไกการอนุมาน ฐานความรู้ประกอบด้วยฟังก์ชันการเป็นสมาชิกและกฎที่คลุมเครือซึ่งได้มาจากความรู้เกี่ยวกับการทำงานของระบบตามสภาพแวดล้อม

Defuzzifier แปลงเอาต์พุตที่คลุมเครือนี้เป็นเอาต์พุตที่ต้องการเพื่อควบคุมระบบ

ระบบควบคุมแบบง่ายโดยใช้ Fuzzy Logic เพื่อควบคุมความเร็วของพัดลมขึ้นอยู่กับอุณหภูมิของอินพุต

สมมติว่าคุณต้องการควบคุมความเร็วของพัดลมขึ้นอยู่กับอุณหภูมิของห้อง สำหรับคนธรรมดาทั่วไปถ้าอุณหภูมิของห้องสูงเกินไปจนรู้สึกร้อนเกินไปความเร็วพัดลมจะเพิ่มขึ้นจนเต็มค่า หากรู้สึกร้อนเล็กน้อยความเร็วพัดลมจะเพิ่มขึ้นในระดับปานกลาง หากรู้สึกหนาวเกินไปความเร็วพัดลมจะลดลงอย่างมาก

ดังนั้นจะทำให้คอมพิวเตอร์ของคุณทำสิ่งนี้ได้อย่างไร

นี่คือวิธีที่เราจะบรรลุเป้าหมายนี้:

การควบคุมความเร็วพัดลมตามอินพุตอุณหภูมิ

การควบคุมความเร็วพัดลมตามอินพุตอุณหภูมิ

  • เซ็นเซอร์อุณหภูมิจะวัดค่าอุณหภูมิของห้อง ค่าที่ได้รับจะถูกนำมาและกำหนดให้กับตัวกรอง
  • ตัวกรองจะกำหนดตัวแปรทางภาษาสำหรับค่าที่วัดได้แต่ละค่าและอัตราการเปลี่ยนแปลงของค่าที่วัดได้

ตัวอย่างเช่นหากค่าที่วัดได้คือ40⁰Cขึ้นไปแสดงว่าห้องนั้นร้อนเกินไป

ถ้าค่าที่วัดได้อยู่ระหว่าง30⁰Cถึง40⁰Cแสดงว่าห้องนั้นค่อนข้างร้อน

ถ้าค่าที่วัดได้คือ 22 ถึง28⁰Cแสดงว่าห้องอยู่ในระดับปานกลาง

ถ้าค่าที่วัดได้คือ 10 ถึง20⁰Cแสดงว่าห้องนั้นเย็น

หากค่าที่วัดได้ต่ำกว่า 10 แสดงว่าห้องนั้นเย็นเกินไป

  • ขั้นตอนต่อไปเกี่ยวข้องกับการทำงานของฐานความรู้ซึ่งมีข้อมูลของฟังก์ชันสมาชิกเหล่านี้รวมทั้งฐานกฎ

ตัวอย่างเช่นหากห้องร้อนเกินไปและห้องร้อนขึ้นอย่างรวดเร็วให้ตั้งความเร็วพัดลมเป็นสูง

หากห้องร้อนเกินไปและห้องร้อนขึ้นอย่างช้าๆให้ตั้งความเร็วพัดลมให้น้อยกว่าสูง

  • ขั้นตอนต่อไปเกี่ยวข้องกับการแปลงตัวแปรเอาต์พุตทางภาษานี้ให้เป็นตัวแปรตัวเลขหรือตัวแปรเชิงตรรกะที่ใช้ขับเคลื่อนพัดลม ไดรเวอร์มอเตอร์ .
  • ขั้นตอนสุดท้ายเกี่ยวข้องกับการควบคุมความเร็วของพัดลมโดยให้อินพุตที่เหมาะสมกับไดรเวอร์มอเตอร์พัดลม

ดังนั้นนี่คือภาพรวมโดยย่อของ Fuzzy Logic สามารถเพิ่มอินพุตเพิ่มเติมได้