Variable neighborhood search

Variable neighborhood search(VNS) ถูกสร้างขึ้นโดย Pierre Hansen และ Nenad Mladenovic ใน ปี 1999 ซึ่งหลักการตั้งในพัฒนาการทำ Local search  ให้มีหลักการที่แน่นอน และ เพิ่มประสิทธิภาพการทำงานของ Algorithm หลัก สำหรับปัญหาที่มีขนาดใหญ่ ซึ่ง VNS ซึ่งสร้างมาเพื่อเป็นตัว Local search ซึ่งขั้นตอนการทำงานจะง่าย ไม่ซับซ้อน ซึ่งมีขั้นตอนการทำงานดังนี้ คือ

1. กำหนดค่าของ จำนวนรอบการทำงาน ใน 1 iteration ซึ่งจะเท่ากับจำนวน รอบการทำงานใน 1 iteration ซ่งผ่านการเรียงผลเฉลยแล้ว

2 การ Shanking จะเป็นการสุ่ม เพื่อจะกำหนดจุดที่จะทำการเปลี่ยนแปลง

3 การ neighborhood search จะสลับตำแหน่งรอบตัวของตัวที่ Shanking

4 นำค่าที่ได้ เปรียบเทียบคำตอบกับผลเฉลยตัวเดิมก่อนการ Shanking ถ้าดีกว่าจะยอมให้มีการสลับตำแหน่ง