حل مساله ی سودوکو با ژنتیک
سلام
من دارم روی مساله سودوکوی 9*9 کار میکنم . می خوام با ژنتیک حلش کنم. هر کروموزم من 81 متغیر داره . که هر کدوم اونها از 1 تا 9 می تونن مقدار داشته باشن. خوب اول کار یک سری از این متغیر ها رو مساله به ما می ده.
تا الان 2 بار برنامه ش رو نوشتم در هر کدوم از اونا تابع هدفم همگراه نمیشه. تابع هدفم تعداد تداخل های هر عدد با مشابه های خودش در سطر وستون و مربع خودشه . بنابراین وقتی تابع هدفم مقدار صفر برای یک کروموزوم برگدوند کارم تمومه .
از روش cross point برای تولید نسل استفاده کردم و لی فکر کنم بدرد نخوره ... چون ممکنه توازن مساله رو به هم بزنه . منظورم این که تعداد هر عدد که باید 9 تا باشه رو نقض می کنه.
روش جهش من این که دو تا نقطه انتخاب می کنم و مقدارش رو با هم عوض می کنم ولی با این شرط که این دو نقطه نقطه های داده شده ی اولیه نباشند.
مشکل من با روش ادغام هست ... به نظرتون چی کار کنم؟
|