X1 , X2 - ghobaei.ir

Download Report

Transcript X1 , X2 - ghobaei.ir

‫هوش مصنوعي‬
‫فصل پنجم‬
‫مسائل ارضای محدوديت‬
‫هوش مصنوعي‬
‫‪Artificial Intelligence‬‬
‫فهرست‬
‫‪‬ارضای محدوديت چيست؟‬
‫‪‬جست و جوی عقبگرد برای ‪CSP‬‬
‫‪‬بررس ی پيشرو‬
‫‪‬پخش محدوديت‬
‫مسائل ارضای محدوديت‬
‫ارضای محدوديت (‪ )CSP‬چيست؟‬
‫‪‬مجموعه متناهی از متغيرها؛ ‪X1, X2, …, Xn‬‬
‫‪‬مجموعه متناهی از محدوديتها؛ ‪C1, C2, …, Cm‬‬
‫‪‬دامنه های ناتهی برای هر يک از متغيرها؛ ‪DX1,DX2,…,DXn‬‬
‫‪‬هر محدوديت ‪ Ci‬زيرمجموعه ای از متغيرها و ترکيبهای ممکنی از مقادير برای آن زيرمجموعه ها‬
‫‪‬هر حالت با انتساب مقاديری به چند يا تمام متغيرها تعريف ميشود‬
‫‪‬انتسابی که هيچ محدوديتی را نقض نکند‪ ،‬انتساب سازگار نام دارد‬
‫‪‬انتساب کامل آن است که هر متغيری در آن باشد‬
‫‪ ‬راه حل ‪ CSP‬يک انتساب کامل است اگر تمام محدوديتها را برآورده کند‬
‫‪‬بعض ی از ‪CSP‬ها به راه حلهايي نياز دارند که تابع هدف را بيشينه کنند‬
‫مسائل ارضای محدوديت‬
‫مثال ‪ :CSP‬رنگ آميزی نقشه‬
‫متغيرها‪WA, NT, Q, NSW, V, SA, T :‬‬
‫دامنه‪{ :‬آبی‪ ،‬سبز‪ ،‬قرمز} = ‪Di‬‬
‫محدوديتها‪ :‬دو منطقه مجاور‪ ،‬همرنگ نيستند‬
‫مثال‪ WA ≠ NT :‬يعنی )‪ (WA,NT‬عضو‬
‫{(قرمز‪,‬سبز(‪),‬قرمز‪,‬آبی(‪),‬سبز‪,‬قرمز)‪،‬‬
‫(سبز‪,‬آبی(‪),‬آبی‪,‬قرمز(‪),‬آبی‪,‬سبز)}‬
‫مسائل ارضای محدوديت‬
‫راه حل انتساب مقاديری است که محدوديتها را ارضا کند‬
‫مسائل ارضای محدوديت‬
‫گراف محدوديت‬
‫‪‬در گراف محدوديت‪:‬‬
‫‪‬گره ها‪ :‬متغيرها‬
‫‪‬يالها‪ :‬محدوديتها‬
‫‪‬گراف برای ساده تر کردن‬
‫جست و جو بکار ميرود‬
‫متغیرها در یک مسله ‪CSP‬‬
‫در هر مسله ‪ CSP‬مجموعه ای متناهی از متغیرها وجود دارد آنها را با حروف زیر می شناسیم ‪:‬‬
‫‪X1 , X2 , … , Xn‬‬
‫در مسئله رنگ آمیزی استرالیا متغیرها اسم ایاالت و استان ها می باشند ‪:‬‬
‫} ‪{ WA , NT , Q , NSW , V , SA , T‬‬
‫دامنه یک متغیر در یک مسله ‪CSP‬‬
‫در هر مسله ‪ CSP‬متغیرها نمی توانند هر مقداری بگیرند بلکه مقادیری که متغیرها‬
‫می توانند بگیرند دامنه میگویم آنها را با عالئم زیر نشان می دهیم ‪:‬‬
‫‪DX1 , DX2 , … , DXn‬‬
‫در مسئله رنگ آمیزی استرالیا با سه رنگ قرمز و سبز و آبی دامنه هر متغیر میشود ‪:‬‬
‫} ‪{ Red , Blue , Green‬‬
‫محدودیت یک متغیر در یک مسله ‪CSP‬‬
‫برای هر مسله ‪ CSP‬یک سری محدودیت ها تعریف میشود ما آنها را با عالئم زیر نشان می دهیم ‪:‬‬
‫‪C 1 , C 2 , … , Cm‬‬
‫در مسئله رنگ آمیزی استرالیا با سه رنگ قرمز و سبز و آبی محدودیت به شکل زیر تعریف میشود ‪:‬‬
‫دو منطقه مجاور‪ ،‬همرنگ نيستند‬
‫حالت در یک مسله ‪CSP‬‬
‫هر حالت با انتساب مقاديری به چند يا تمام متغیرها تعريف ميشود ‪:‬‬
‫} ‪{ WA = Red , NT = Green , Q = Red , NSW = Green , V = Red, SA = Blue , T = Green‬‬
‫گراف محدودیت در یک مسله ‪CSP‬‬
‫برای ساده سازی بهتر است یک گراف داشته باشیم با قرارداد زیر ‪:‬‬
‫الف ) هر متغیر را یگ راس در نظر بگیرید ‪.‬‬
‫ب ) محدودیت ها را با یال نشان دهیم ‪.‬‬
‫‪NT‬‬
‫‪Q‬‬
‫‪WA‬‬
‫‪SA‬‬
‫‪NSW‬‬
‫‪V‬‬
‫گراف محدودیت مسئله‬
‫‪T‬‬
‫انتساب کامل در یک مسله ‪CSP‬‬
‫انتساب کامل آن است که هر متغیری در آن باشد‬
‫یک مثال از انتساب کامل ‪:‬‬
‫} ‪{ WA = Red , NT = Green ,Q = Red , NSW = Green , V = Red, SA = Green,T = Green‬‬
‫یک مثال از انتساب غیر کامل ‪:‬‬
‫} = ‪NSW = Green , V = Red , SA = Blue , T‬‬
‫‪Q= ,‬‬
‫‪NT = ,‬‬
‫‪{ WA = Red ,‬‬
‫از طرفی انتسابی که هيچ محدوديتی را نقض نکند‪ ،‬انتساب سازگار نام دارد مانند ‪:‬‬
‫} ‪{ WA = Red , NT = Green , Q = Red , NSW = Green , V = Red, SA = Blue , T = Green‬‬
‫مسائل ارضای محدوديت‬
‫مثال ‪ :CSP‬رمزنگاری‬
‫متغيرها‪F,T,U,W,R,O,X1,X2,X3:‬‬
‫محدوديتها‪ F,T,U,R,O,W :‬مخالفند‬
‫دامنه‪9{:‬و‪8‬و‪7‬و‪6‬و‪5‬و‪4‬و‪3‬و‪2‬و‪1‬و‪}0‬‬
‫‪... - O+O=R+10.X1 -‬‬
‫‪:Cryptarithmetic‬‬
‫در مسائل کريپتاريتمتيک‪ ،‬حروف به جاي ارقام مينشينند و هدف يافتن جايگزيني از اعداد براي حروف‬
‫ً‬
‫است که مجموع نتيجه از نظر رياض ي درست باشد‪ .‬معموال هر حرف بايد به جاي يک رقم مختلف‬
‫بنشينند‪.‬‬
‫مثال‪:‬‬
‫‪F=2, O=9, R=7, etc.‬‬
‫‪29786‬‬
‫‪FORTY‬‬
‫‪+ 850‬‬
‫‪+ TEN‬‬
‫‪+ 850‬‬
‫‪+ TEN‬‬
‫‪----------‬‬
‫‪----------‬‬
‫‪31486‬‬
‫‪SIXTY‬‬
‫مسائل ارضای محدوديت‬
‫‪‬نمايش حالتها در ‪ CSP‬از الگوی استانداردی پيروی ميکند‬
‫‪‬برای ‪ CSP‬ميتوان فرمول بندی افزايش ي ارائه کرد‪:‬‬
‫‪‬حالت اوليه‪ :‬انتساب خالی{} که در آن‪ ،‬هيچ متغيری مقدار ندارد‬
‫‪‬تابع جانشين‪ :‬انتساب يک مقدار به هر متغير فاقد مقدار‪ ،‬به شرطی که با‬
‫متغيرهايي که قبال مقدار گرفتند‪ ،‬متضاد نباشند‬
‫‪‬آزمون هدف‪ :‬انتساب فعلی کامل است‬
‫‪‬هزينه مسير‪ :‬هزينه ثابت برای هر مرحله‬
‫چند نکته در ‪CSP‬‬
‫ساده ترین نوع ‪ CSP‬زمانی می شود که متغیرها گسسته و دامنه آنها متناهی باشد ‪.‬‬
‫مثال ‪ :‬در هشت وزیر متغیرها {‪ }v1 , v2 , v3 , … , v8‬و دامنه {‪ }1, 2 , 3 , … , 8‬می باشد‬
‫{ ‪} v1=4 , v2=2 , v3=8 , v4=6 , v5=1 , v6=3 , v7=5 , v8= 7‬‬
‫{ ‪} v1=5 , v2=3 , v3=7 , v4=4 , v5=5 , v6=6 , v7=7 , v8= 6‬‬
‫برای ‪ CSP‬ميتوان فرمول بندی افزايش ي ارائه کرد‬
‫حالت اوليه‪ :‬انتساب خالی{} که در آن‪ ،‬هيچ متغیری مقدار ندارد‪.‬‬
‫تابع جانشین‪ :‬انتساب يک مقدار به هر متغیر فاقد مقدار‪ ،‬به شرطی که با‬
‫متغیرهايي که قبال مقدار گرفتند‪ ،‬متضاد نباشند‪.‬‬
‫آزمون هدف‪ :‬انتساب فعلی کامل است‪.‬‬
‫هزينه مسیر‪ :‬هزينه ثابت برای هر مرحله‪.‬‬
‫مسئله چهار وزیر را فرمول بندی افزايش ي می کنیم‬
‫حالت اوليه‪ :‬انتساب خالی{} که در آن‪ ،‬هيچ متغیری مقدار ندارد‪.‬‬
‫{ = ‪, v4‬‬
‫= ‪v3‬‬
‫‪,‬‬
‫= ‪, v2‬‬
‫= ‪}v1‬‬
‫مسئله چهار وزیر را فرمول بندی افزايش ي می کنیم‬
‫تابع جانشین‪ :‬انتساب يک مقدار به هر متغیر فاقد مقدار‪ ،‬به شرطی که با متغیرهايي که قبال مقدار گرفتند‪ ،‬متضاد‬
‫نباشند‪.‬‬
‫تابع جانشین فراخوانی شد‬
‫{ = ‪, v4‬‬
‫‪,‬‬
‫= ‪v3‬‬
‫‪, v2 = 1‬‬
‫= ‪}v1‬‬
‫تابع جانشین دوباره فراخوانی شد‬
‫{ = ‪, v4‬‬
‫‪,‬‬
‫‪v3 = 3‬‬
‫‪, v2 = 1‬‬
‫= ‪}v1‬‬
‫تابع جانشین دوباره فراخوانی شد‬
‫{ = ‪, v4‬‬
‫‪v3 = 3‬‬
‫‪,‬‬
‫‪, v2 = 1‬‬
‫‪}v1 =4‬‬
‫مسئله چهار وزیر را فرمول بندی افزايش ي می کنیم‬
‫آزمون هدف‪ :‬انتساب فعلی آیا کامل است‪.‬‬
‫تابع جانشین فراخوانی شو د‬
‫انتساب کامل نیست پس‬
‫تابع جانشین فراخوانی شود‬
‫{ = ‪}v1 =2 , v2 = , v3 = , v4‬‬
‫تابع جانشین فراخوانی شو د‬
‫انتساب کامل نیست پس‬
‫تابع جانشین فراخوانی شود‬
‫{ = ‪}v1 =2 , v2 = 4 , v3 = , v4‬‬
‫تابع جانشین فراخوانی شو د‬
‫انتساب کامل نیست پس‬
‫تابع جانشین فراخوانی شود‬
‫{ = ‪}v1 =2 , v2 = 4 , v3 =1 , v4‬‬
‫تابع جانشین فراخوانی شو د‬
‫چون انتساب کامل ا ست پس‬
‫تابع جانشین فراخوانی نمی شود‬
‫و وارد فاز محاسبه‬
‫هزینه میشویم‬
‫{ ‪}v1 =2 , v2 = 4 , v3 =1 , v4 =3‬‬
‫‪C= C1+C2+C3+C4= 1+ 1 + 1 + 1= 4‬‬
‫مسائل ارضای محدوديت‬
‫جست و جوی عقبگرد برای ‪CSP‬‬
‫‪‬جست و جوی عمقي‬
‫‪‬انتخاب مقادير يک متغير در هر زمان و عقبگرد در صورت عدم وجود‬
‫مقداری معتبر برای انتساب به متغير‬
‫‪‬يک الگوريتم ناآگاهانه است‬
‫‪‬برای مسئله های بزرگ کارآمد نيست‬
‫مسائل ارضای محدوديت‬
‫مثال جست و جوی عقبگرد برای ‪CSP‬‬
‫مسائل ارضای محدوديت‬
‫مثال جست و جوی عقبگرد برای ‪CSP‬‬
‫مسائل ارضای محدوديت‬
‫مثال جست و جوی عقبگرد برای ‪CSP‬‬
‫مسائل ارضای محدوديت‬
‫مثال جست و جوی عقبگرد برای ‪CSP‬‬
‫الگوریتم جستجوی عقبگرد چیست ؟‬
‫ترتیب انتخاب متغیرها برای مقدار دادن‬
‫می خواهیم یک مسئله ‪ csp‬را حل کنیم چکاری انجام دهیم که بدون نیاز به عقبگرد به سمت حل‬
‫نهایی رویم ؟‬
‫ً‬
‫مثال در مسئله چهار وزیر کدام انتساب را انجام دهیم ؟‬
‫{ = ‪, v4‬‬
‫= ‪v3‬‬
‫‪}v1 = 1 , v2 = ,‬‬
‫{ = ‪, v4‬‬
‫= ‪v3‬‬
‫‪}v1 = 2 , v2 = ,‬‬
‫{ = ‪, v4‬‬
‫= ‪v3‬‬
‫‪}v1 = 3 , v2 = ,‬‬
‫{ = ‪, v4‬‬
‫= ‪v3‬‬
‫‪}v1 = 4 , v2 = ,‬‬
‫ترتیب انتخاب متغیرها برای مقدار دادن‬
‫یا فرض کنید می خواهیم رنگ آمیزی گراف زیر را تنها با ‪ 3‬رنگ انجام دهیم از کدام راس شروع به رنگ کردن بکنیم تا نیاز‬
‫به سه رنگ بیشتر نشود ؟‬
‫‪3‬‬
‫‪2‬‬
‫‪5‬‬
‫‪4‬‬
‫‪6‬‬
‫‪1‬‬
‫ترتیب انتخاب متغیرها برای مقدار دادن‬
‫قضیه ‪ :‬برای تعیین ترتیب درست انتخاب در مسائل ‪ csp‬از هیوروستیک های زیر استفاده‬
‫میشود ‪:‬‬
‫الف ) هیورستیک ‪MRV‬‬
‫ب ) هیورستیک درجه‬
‫‪NT‬‬
‫‪Q‬‬
‫‪WA‬‬
‫‪SA‬‬
‫‪NSW‬‬
‫‪V‬‬
‫‪T‬‬
‫مسائل ارضای محدوديت‬
‫مقادير باقيمانده کمينه(‪)MRV‬‬
‫‪‬انتخاب متغيری با کمترين مقادير معتبر‬
‫‪‬متغيری انتخاب ميشود که به احتمال زياد‪ ،‬بزودی با شکست مواجه شده و درخت‬
‫جست و جو را هرس ميکند‬
‫هیورستیک درجه‬
‫در ابتدای کار هیورستیک ‪ MRV‬بکار نمی رود زیرا هر ناحیه سه رنگ معتبر دارد ‪ .‬در این مواقع از هیورستیک درجه‬
‫استفاده میکنیم ‪ .‬هیورستیک درجه سعی می کند فاکتور انشعاب‬
‫را برای انتخاب های آینده کم کند ‪ .‬به این منظور متغیری را انتخاب می کند که بیشترین‬
‫محدودیت را روی متغیرهای که انتساب نشده اند ایجاد کند ‪.‬‬
‫‪NT‬‬
‫‪Q‬‬
‫‪WA‬‬
‫‪SA‬‬
‫‪NSW‬‬
‫‪V‬‬
‫‪T‬‬
‫مسائل ارضای محدوديت‬
‫اکتشاف درجه ای‬
‫‪‬سعی ميکند فاکتور انشعاب را در انتخاب آينده کم کند‬
‫‪‬متغيری انتخاب ميکند که در بزرگترين محدوديتهای مربوط به متغيرهای بدون انتساب‬
‫قرار دارد‬
‫مسائل ارضای محدوديت‬
‫اکتشاف مقداری باکمترين محدوديت‬
‫‪‬اين روش مقداری را ترجيح ميدهد که در گراف محدوديت‪ ،‬متغيرهای همسايه به ندرت‬
‫آن را انتخاب ميکنند‬
‫‪‬سعی بر ايجاد بيشترين قابليت انعطاف برای انتساب بعدی متغيرها‬
‫مسائل ارضای محدوديت‬
‫بررس ی پيشرو‬
‫وقتی انتساب به ‪ X‬صورت ميگيرد‪ ،‬فرايند بررس ی پيشرو‪ ،‬متغيرهای بدون‬
‫انتساب مثل ‪ Y‬را در نظر ميگيرد که از طريق يک محدوديت به ‪ X‬متصل‬
‫است و هر مقداری را که با مقدار انتخاب شده برای ‪ X‬برابر است‪ ،‬از‬
‫دامنه ‪ Y‬حذف ميکند‬
‫مسائل ارضای محدوديت‬
‫بررس ی پيشرو‬
‫مسائل ارضای محدوديت‬
‫بررس ی پيشرو‬
‫مسائل ارضای محدوديت‬
‫بررس ی پيشرو‬
‫مسائل ارضای محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{1,2,3,4‬‬
‫‪X1‬‬
‫}‪{1,2,3,4‬‬
‫‪X4‬‬
‫}‪{1,2,3,4‬‬
‫‪X3‬‬
‫}‪{1,2,3,4‬‬
‫‪X1 X2 X3 X4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫مسائل ارضای محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{1,2,3,4‬‬
‫‪X1‬‬
‫}‪{1,2,3,4‬‬
‫‪X4‬‬
‫}‪{1,2,3,4‬‬
‫‪X3‬‬
‫}‪{1,2,3,4‬‬
‫‪X1 X2 X3 X4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫مسائل ارضای محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{ , ,3,4‬‬
‫‪X1‬‬
‫}‪{1,2,3,4‬‬
‫‪X4‬‬
‫} ‪{ ,2,3,‬‬
‫‪X3‬‬
‫}‪{ ,2, ,4‬‬
‫‪X1 X2 X3 X4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫مسائل ارضای محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{ , ,3,4‬‬
‫‪X1‬‬
‫}‪{1,2,3,4‬‬
‫‪X4‬‬
‫} ‪{ ,2,3,‬‬
‫‪X3‬‬
‫}‪{ ,2, ,4‬‬
‫‪X1 X2 X3 X4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫مسائل ارضای محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{ , ,3,4‬‬
‫‪X1‬‬
‫}‪{1,2,3,4‬‬
‫‪X4‬‬
‫} ‪{ ,2, ,‬‬
‫‪X3‬‬
‫} ‪{ , , ,‬‬
‫‪X1 X2 X3 X4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫مسائل ارضای محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{1,2,3,4‬‬
‫‪X1‬‬
‫}‪{ ,2,3,4‬‬
‫‪X4‬‬
‫}‪{1,2,3,4‬‬
‫‪X3‬‬
‫}‪{1,2,3,4‬‬
‫‪X1 X2 X3 X4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫مسائل ارضای محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{ , , ,4‬‬
‫‪X1‬‬
‫}‪{ ,2,3,4‬‬
‫‪X4‬‬
‫}‪{1, ,3,4‬‬
‫‪X3‬‬
‫} ‪{1, ,3,‬‬
‫‪X1 X2 X3 X4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫مسائل ارضای محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{ , , ,4‬‬
‫‪X1‬‬
‫}‪{ ,2,3,4‬‬
‫‪X4‬‬
‫}‪{1, ,3,4‬‬
‫‪X3‬‬
‫} ‪{1, ,3,‬‬
‫‪X1 X2 X3 X4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫مسائل ارضای محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{ , , ,4‬‬
‫‪X1‬‬
‫}‪{ ,2,3,4‬‬
‫‪X4‬‬
‫} ‪{1, ,3,‬‬
‫‪X3‬‬
‫} ‪{1, , ,‬‬
‫‪X1 X2 X3 X4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫مسائل ارضای محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{ , , ,4‬‬
‫‪X1‬‬
‫}‪{ ,2,3,4‬‬
‫‪X4‬‬
‫} ‪{1, ,3,‬‬
‫‪X3‬‬
‫} ‪{1, , ,‬‬
‫‪X1 X2 X3 X4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫مسائل ارضای محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{ , , ,4‬‬
‫‪X1‬‬
‫}‪{ ,2,3,4‬‬
‫‪X4‬‬
‫} ‪{ , ,3,‬‬
‫‪X3‬‬
‫} ‪{1, , ,‬‬
‫‪X1 X2 X3 X4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫مسائل ارضای محدوديت‬
‫مثال‪ :‬مسئله ‪-4‬وزير‬
‫‪X2‬‬
‫}‪{ , , ,4‬‬
‫‪X1‬‬
‫}‪{ ,2,3,4‬‬
‫‪X4‬‬
‫} ‪{ , ,3,‬‬
‫‪X3‬‬
‫} ‪{1, , ,‬‬
‫‪X1 X2 X3 X4‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫مسائل ارضای محدوديت‬
‫پخش محدوديت‬
‫پخش الزام محدوديتهای يک متغير به متغيرهای ديگر‬
‫‪‬مثال‪ :‬پخش محدوديتهای ‪ WA‬و ‪ Q‬به ‪ NT‬و ‪SA‬‬
‫مسائل ارضای محدوديت‬
‫سازگاری يال‬
‫‪‬روش سريعی برای پخش محدود و قويتر از بررس ی پيشرو‬
‫‪‬يال؛ يال جهت دار در گراف محدوديت‬
‫‪‬بررس ی سازگاری يال‬
‫‪‬يک مرحله پيش پردازش‪ ،‬قبل از شروع جستجو‬
‫‪‬يک مرحله پخش ی پس از هر انتساب در حين جستجو‬
‫مسائل ارضای محدوديت‬
‫مثال‪ :‬سازگاری يال‬
‫‪ SA  NSW‬سازگار است اگر‬
‫‪SA=blue and NSW=red‬‬
‫مسائل ارضای محدوديت‬
‫مثال‪ :‬سازگاری يال‬
‫‪ NSW  SA ‬سازگار است اگر‬
‫‪SA=blue and NSW=red‬‬
‫???=‪NSW=blue and SA‬‬
‫‪ ‬يال ميتواند سازگار شود با حذف ‪ blue‬از ‪NSW‬‬
‫مسائل ارضای محدوديت‬
‫مثال‪ :‬سازگاری يال‬
‫‪ ‬يال ميتواند سازگار شود با حذف ‪ blue‬از ‪NSW‬‬
‫‪ ‬حذف ‪ red‬از ‪V‬‬
‫مسائل ارضای محدوديت‬
‫مثال‪ :‬سازگاری يال‬
‫‪ ‬يال ميتواند سازگار شود با حذف ‪ blue‬از ‪NSW‬‬
‫‪ ‬حذف ‪ red‬از ‪V‬‬
‫‪ ‬تکرار تا هيچ ناسازگاری باقی نماند‬
‫مسائل ارضای محدوديت‬
‫سازگاری ‪K‬‬
‫‪‬سازگاری يال تمام ناسازگاريهای ممکن را مشخص نميکند‬
‫‪‬با روش سازگاری‪ ،K‬شکلهای قويتری از پخش را ميتوان تعريف کرد‬
‫‪‬در ص ووورتی ‪ CSP‬س ووازگاری‪ K‬اس ووت‪ ،‬ک ووه ب ورای ه وور ‪ k-1‬متغي وور و ب ورای ه وور‬
‫انتساب سازگار با آن متغيرها‪ ،‬يک مقدار سازگار‪ ،‬هميشوه بتوانود بوه متغيور ‪k‬ام‬
‫نسبت داده شود‬
‫مسائل ارضای محدوديت‬
‫‪‬بطور مثال‪:‬‬
‫سازگاری ‪K‬‬
‫‪‬سازگاری‪ :1‬هر متغير با خودش سازگار است(سازگاری گره)‬
‫‪‬سازگاری‪ :2‬مشابه سازگاری يال‬
‫‪‬سازگاری‪ :k‬بسط هر جفت از متغيرهای همجوار به سومين متغير همسايه(سازگاری مسير)‬
‫‪ ‬گراف در صورتی قويا سازگار‪ K‬است که‪:‬‬
‫‪‬سازگار‪ k‬باشد‬
‫‪‬همچنين سازگار‪ k-1‬و سازگار‪ k-2‬و‪ ...‬سازگار ‪ 1‬باشد‬
‫‪‬در اين صورت‪ ،‬مسئله را بدون عقبگرد ميتوان حل کرد‬
‫‪‬پيچيدگی زمانی آن )‪ O(nd‬است‬
‫مسائل ارضای محدوديت‬
‫جست و جوی محلی در مسائل ارضای محدوديت‬
‫‪‬بسياری از ‪CSP‬ها را بطور کارآمد حل ميکنند‬
‫‪‬حالت اوليه‪ ،‬مقداری را به هر متغير نسبت ميدهد‬
‫‪‬تابع جانشين‪ ،‬تغيير مقدار يک متغير در هر زمان‬
‫‪‬انتخاب مقدار جديد برای يک متغير‬
‫‪‬انتخاب مقداری که کمترين برخورد را با متغيرهای ديگر ايجاد کند(اکتشاف برخورد کم)‬
‫‪ ‬زمان اجرای برخورد کم مستقل از اندازه مسئله است‬
‫‪‬برخورد کم‪ ،‬برای مسئله های سخت نيز کار ميکند‬
‫‪‬جست و جوی محلی ميتواند در صورت تغيير مسئله‪ ،‬تنظيمات ‪ Online‬را‬
‫انجام دهد‬
‫مسائل ارضای محدوديت‬
‫مثال‬
‫راه حل دو مرحله ای برای مسئله ‪8‬وزير با استفاده از کمترين برخورد‬
‫‪‬در هر مرحله‪ ،‬يک وزير برای انتساب مجدد در ستون خودش انتخاب ميگردد‬
‫‪‬تعداد برخوردها در هر مربع نشان داده شده است‬
‫‪‬الگوريتم وزير را به مربعي با کمترين برخورد انتقال ميدهد‪ ،‬بطوريکه گره ها را بطور تصادفی ميشکند‬
71