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

อัลกอริทึมทางพันธุกรรมคืออะไร?


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

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

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

ขั้นตอนวิธีทางพันธุกรรมมีดังต่อไปนี้ -

  • สุ่มเลือกผู้ปกครองได้

  • ใช้สำหรับสร้างใหม่ผ่านครอสโอเวอร์

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

  • สามารถเลือกผู้รอดชีวิตเพื่อคนรุ่นต่อไปได้ผ่านบริการฟิตเนส

  • การกลายพันธุ์คือบริการที่เปลี่ยนแอตทริบิวต์ที่เลือกแบบสุ่มของเอนทิตีที่เลือกแบบสุ่มในการดำเนินการต่อไปนี้

  • สามารถทำซ้ำได้จนกว่าจะถึงระดับความฟิตที่กำหนดหรือจำนวนการวนซ้ำในปัจจุบัน

  • พารามิเตอร์อัลกอริทึมทางพันธุกรรมประกอบด้วยขนาดประชากร อัตราครอสโอเวอร์ และอัตราการกลายพันธุ์

ข้อดีของขั้นตอนวิธีทางพันธุกรรม

ข้อดีของอัลกอริธึมทางพันธุกรรมมีดังนี้ −

  • อัลกอริธึมทางพันธุกรรมสามารถเข้าถึงได้มากเพื่อสร้างและตรวจสอบ ซึ่งสร้างความน่าสนใจอย่างมากหากใช้

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

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

ข้อเสียของขั้นตอนวิธีทางพันธุกรรม

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

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

  • นอกจากนี้ยังมีการตรวจสอบขนาดของชุดข้อมูลที่สามารถพิจารณาได้ด้วยอัลกอริธึมทางพันธุกรรม

  • สำหรับชุดข้อมูลขนาดใหญ่มาก การสุ่มตัวอย่างจะมีความสำคัญ ซึ่งนำไปสู่ผลลัพธ์หลายรายการจากการรันหลายชุดในชุดข้อมูลที่เท่ากัน