กลับไปหน้าบทความ

อ่าน 3 นาที

ตัวดำเนินการทางพันธุกรรม

ตัวดำเนินการทางพันธุกรรมคือตัวดำเนินการที่ใช้ในอัลกอริธึมวิวัฒนาการ (EA) เพื่อนำทางอัลกอริธึมไปสู่การแก้ปัญหาที่กำหนด มีตัวดำเนินการหลักสามประเภท (...

ตัวดำเนินการทางพันธุกรรม

ตัวดำเนินการทางพันธุกรรมคือตัวดำเนินการที่ใช้ในอัลกอริธึมวิวัฒนาการ (EA) เพื่อนำทางอัลกอริธึมไปสู่การแก้ปัญหาที่กำหนด มีตัวดำเนินการหลักสามประเภท ( การกลายพันธุ์การผสมข้ามและการคัดเลือก ) ซึ่งต้องทำงานร่วมกันเพื่อให้อัลกอริธึมประสบความสำเร็จ[ 1 ]ตัวดำเนินการทางพันธุกรรมใช้เพื่อสร้างและรักษาความหลากหลายทางพันธุกรรม (ตัวดำเนินการกลายพันธุ์) รวมโซลูชันที่มีอยู่ (หรือที่เรียกว่าโครโมโซม ) เข้าเป็นโซลูชันใหม่ (การผสมข้าม) และเลือกโซลูชัน (การคัดเลือก) [ 2 ] [ 3 ]

ตัวแทนคลาสสิกของอัลกอริธึมเชิงวิวัฒนาการ ได้แก่อัลกอริธึมทางพันธุกรรมกลยุทธ์วิวัฒนาการการเขียนโปรแกรมทางพันธุกรรมและการเขียนโปรแกรมเชิงวิวัฒนาการในหนังสือของเขาที่กล่าวถึงการใช้การเขียนโปรแกรมทางพันธุกรรมเพื่อเพิ่มประสิทธิภาพของปัญหาที่ซับซ้อน นักวิทยาศาสตร์คอมพิวเตอร์John Kozaได้ระบุตัวดำเนินการ 'การผกผัน' หรือ 'การเรียงสับเปลี่ยน' ไว้ด้วย อย่างไรก็ตาม ประสิทธิภาพของตัวดำเนินการนี้ไม่เคยได้รับการพิสูจน์อย่างแน่ชัด และตัวดำเนินการนี้แทบจะไม่ถูกกล่าวถึงในสาขาการเขียนโปรแกรมทางพันธุกรรม[ 4 ]อย่างไรก็ตามสำหรับปัญหาเชิงการจัดเรียง ตัวดำเนินการเหล่านี้และตัวดำเนินการอื่นๆที่ปรับให้เหมาะกับการเรียงสับเปลี่ยนมักถูกใช้โดย EA อื่นๆ[ 5 ] [ 6 ]

ตัวดำเนินการกลายพันธุ์ (หรือคล้ายการกลายพันธุ์) เรียกว่า ตัวดำเนินเอก ภาคเนื่องจากทำงานบนโครโมโซมเพียงครั้งละหนึ่งตัวเท่านั้น ในทางตรงกันข้าม ตัวดำเนินครอสโอเวอร์เรียกว่าตัวดำเนินทวิภาค เนื่องจากทำงานบนโครโมโซมสองตัวในแต่ละครั้ง โดยการรวมโครโมโซมที่มีอยู่สองตัวเข้าเป็นโครโมโซมใหม่หนึ่งตัว[ 7 ] [ 8 ]

ผู้ปฏิบัติงาน

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

การคัดเลือก

ตัวดำเนินการคัดเลือกจะให้ความสำคัญกับโซลูชันผู้สมัครที่ดีกว่า (โครโมโซม) ทำให้สามารถส่งต่อ 'ยีน' ของตนไปยังรุ่นถัดไป ( การวนซ้ำ ) ของอัลกอริทึมได้ โซลูชันที่ดีที่สุดจะถูกกำหนดโดยใช้ฟังก์ชันวัตถุประสงค์ บางรูปแบบ (หรือที่เรียกว่า ' ฟังก์ชันความเหมาะสม ' ในอัลกอริทึมวิวัฒนาการ) ก่อนที่จะส่งต่อไปยังตัวดำเนินการครอสโอเวอร์ มีวิธีการต่างๆ ในการเลือกโซลูชันที่ดีที่สุด เช่นการคัดเลือกตามสัดส่วนความเหมาะสมและการคัดเลือกแบบทัวร์นาเมนต์ [ 9 ] ตัวดำเนินการคัดเลือกเพิ่มเติมหรือตัวดำเนินการเดียวกันจะถูกใช้เพื่อกำหนดบุคคลที่จะถูกเลือกเพื่อสร้างรุ่นพ่อแม่ถัดไป ตัวดำเนินการคัดเลือกยังอาจรับประกันว่าโซลูชันที่ดีที่สุดจากรุ่นปัจจุบันจะกลายเป็นสมาชิกของรุ่นถัดไปโดยไม่เปลี่ยนแปลง[ 10 ]ซึ่งเรียกว่าลัทธิชนชั้นสูงหรือการคัดเลือกแบบชนชั้นสูง[ 2 ] [ 11 ] [ 12 ]

ครอสโอเวอร์

ครอสโอเวอร์คือกระบวนการนำโซลูชันหลัก (โครโมโซม) มากกว่าหนึ่งรายการมาสร้างโซลูชันลูก โดยการรวมส่วนต่างๆ ของโซลูชันที่ดีเข้าด้วยกัน อัลกอริทึมวิวัฒนาการมีแนวโน้มที่จะสร้างโซลูชันที่ดีกว่า[ 2 ]เช่นเดียวกับการเลือก มีวิธีการต่างๆ มากมายสำหรับการรวมโซลูชันหลักเข้าด้วยกัน รวมถึงตัวดำเนินการการรวมขอบ (ERO) และวิธีการครอสโอเวอร์แบบ 'ตัดและต่อ' และ 'ครอสโอเวอร์แบบสม่ำเสมอ' วิธีการครอสโอเวอร์มักถูกเลือกให้ตรงกับตัวแทนของโซลูชันบนโครโมโซมอย่างใกล้ชิด ซึ่งอาจมีความสำคัญเป็นพิเศษเมื่อตัวแปรถูกจัดกลุ่มเข้าด้วยกันเป็นบล็อกตัวสร้างซึ่งอาจถูกรบกวนโดยตัวดำเนินการครอสโอเวอร์ที่ไม่เคารพ ในทำนองเดียวกัน วิธีการครอสโอเวอร์อาจเหมาะสมเป็นพิเศษสำหรับปัญหาบางอย่าง ERO ถือเป็นตัวเลือกที่ดีสำหรับการแก้ปัญหาพนักงานขายเดินทาง[ 13 ]

การกลายพันธุ์

ตัวดำเนินการกลายพันธุ์ส่งเสริมความหลากหลายทางพันธุกรรมในหมู่โซลูชันและพยายามป้องกันไม่ให้อัลกอริธึมวิวัฒนาการลู่เข้าสู่ค่าต่ำสุดเฉพาะที่โดยการหยุดไม่ให้โซลูชันอยู่ใกล้กันมากเกินไป ในการกลายพันธุ์กลุ่มโซลูชันปัจจุบัน โซลูชันที่กำหนดอาจเปลี่ยนแปลงไปเล็กน้อยหรือทั้งหมดจากโซลูชันก่อนหน้า[ 14 ]ด้วยการกลายพันธุ์โซลูชัน อัลกอริธึมวิวัฒนาการสามารถเข้าถึงโซลูชันที่ดีขึ้นได้โดยใช้ตัวดำเนินการกลายพันธุ์เพียงอย่างเดียว[ 2 ]อีกครั้ง อาจใช้วิธีการกลายพันธุ์ที่แตกต่างกัน ซึ่งมีตั้งแต่การกลายพันธุ์บิต แบบง่าย (การพลิกบิตแบบสุ่มในโครโมโซมสตริงไบนารีด้วยความน่าจะเป็นต่ำ) ไปจนถึงวิธีการกลายพันธุ์ที่ซับซ้อนกว่าซึ่งยีนในโซลูชันจะถูกเปลี่ยนแปลง ตัวอย่างเช่น โดยการเพิ่มค่าสุ่มจากการกระจายแบบเกาส์เซียนให้กับค่าของยีนปัจจุบัน เช่นเดียวกับตัวดำเนินการครอสโอเวอร์ วิธีการกลายพันธุ์มักจะถูกเลือกให้ตรงกับการแสดงโซลูชันภายในโครโมโซม[ 14 ] [ 3 ]

ตัวดำเนินการรวม

ในขณะที่ตัวดำเนินการแต่ละตัวทำหน้าที่ปรับปรุงโซลูชันที่สร้างขึ้นโดยอัลกอริทึมวิวัฒนาการโดยทำงานแยกกัน ตัวดำเนินการจะต้องทำงานร่วมกันเพื่อให้อัลกอริทึมประสบความสำเร็จในการค้นหาโซลูชันที่ดี[ 3 ]การใช้ตัวดำเนินการเลือกเพียงอย่างเดียวจะทำให้ประชากรโซลูชันเต็มไปด้วยสำเนาของโซลูชันที่ดีที่สุดจากประชากร หากใช้ตัวดำเนินการเลือกและครอสโอเวอร์โดยไม่มีตัวดำเนินการกลายพันธุ์ อัลกอริทึมจะมีแนวโน้มที่จะลู่เข้าสู่ค่าต่ำสุดเฉพาะที่นั่นคือ โซลูชันที่ดีแต่ไม่เหมาะสมที่สุดสำหรับปัญหา การใช้ตัวดำเนินการกลายพันธุ์เพียงอย่างเดียวจะนำไปสู่การเดินแบบสุ่มผ่านพื้นที่การค้นหา เฉพาะการใช้ตัวดำเนินการทั้งสามร่วมกันเท่านั้นที่อัลกอริทึมวิวัฒนาการจะกลายเป็นอัลกอริทึมการค้นหาทั่วโลกที่ทนต่อสัญญาณรบกวน ซึ่งให้โซลูชันที่ดีสำหรับปัญหาที่กำลังพิจารณา[ 2 ]

ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Genetic_operator&oldid=1356401228 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ ตัวดำเนินการทางพันธุกรรม

ตัวดำเนินการทางพันธุกรรมคือตัวดำเนินการที่ใช้ในอัลกอริธึมวิวัฒนาการ (EA) เพื่อนำทางอัลกอริธึมไปสู่การแก้ปัญหาที่กำหนด มีตัวดำเนินการหลักสามประเภท (...

ผู้ปฏิบัติงาน

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

การคัดเลือก

ตัวดำเนินการคัดเลือกจะให้ความสำคัญกับโซลูชันผู้สมัครที่ดีกว่า (โครโมโซม) ทำให้สามารถส่งต่อ 'ยีน' ของตนไปยังรุ่นถัดไป ( การวนซ้ำ ) ของอัลกอริทึมได้ โซลูชันที่ดีที่สุดจะถูกกำหนดโดยใช้ ฟังก์ชันวัตถุประสงค์ บางรูปแบบ (หรือที่เรียกว่า ' ฟังก์ชันความเหมาะสม '...

ครอสโอเวอร์

ครอสโอเวอร์คือกระบวนการนำโซลูชันหลัก (โครโมโซม) มากกว่าหนึ่งรายการมาสร้างโซลูชันลูก โดยการรวมส่วนต่างๆ ของโซลูชันที่ดีเข้าด้วยกัน อัลกอริทึมวิวัฒนาการมีแนวโน้มที่จะสร้างโซลูชันที่ดีกว่า [ 2 ] เช่นเดียวกับการเลือก มีวิธีการต่างๆ...