SLD o'lchamlari - SLD resolution

SLD o'lchamlari (Tanlangan chiziqli aniqlik bandning rezolyutsiyasi) asosiy hisoblanadi xulosa qilish qoidasi ichida ishlatilgan mantiqiy dasturlash. Bu takomillashtirish qaror, bu ikkalasi ham tovush va rad etish to'liq uchun Shoxning gaplari.

SLD xulosa qoidasi

Maqsad bandi berilgan:

tanlangan so'zma-so'z bilan va kirishning aniq bandi:

ijobiy literal (atom) birlashtiradi atom bilan tanlangan so'zma-so'z , SLD rezolyutsiyasi yana bir maqsad bandini keltirib chiqaradi, unda tanlangan harfiy yozuv kirish punktining salbiy harflari va birlashtiruvchi almashtirish bilan almashtiriladi qo'llaniladi:

Oddiy holatda, propozitsion mantiqda atomlar va bir xil va birlashtiruvchi almashtirish bo'sh. Ammo, umuman olganda, ikkita literalni bir xil qilish uchun birlashtiruvchi almashtirish zarur.

"SLD" nomining kelib chiqishi

"SLD rezolyutsiyasi" nomi Maarten van Emden tomonidan kiritilgan noma'lum xulosa qoidasi uchun berilgan Robert Kovalski.[1] Uning nomi SL piksellar sonidan kelib chiqqan,[2] bu mantiqning cheklanmagan gap shakli uchun ham to'laligicha, ham rad etish bilan yakunlanadi. "SLD" "Belgilangan bandlar bilan SL piksellar sonini" degan ma'noni anglatadi.

SL va SLD-ning ikkalasida ham "L" piksellar sonini tasdiqlash quyidagi bandlarning chiziqli ketma-ketligi bilan cheklanishi mumkinligini anglatadi:

qaerda "yuqori band" kirish so'zi va boshqa har qanday gap ota-onasi oldingi band bo'lgan rezolyutsiyadir . Agar oxirgi band bo'lsa, bu isbot bu bo'sh band.

SLD-da, ketma-ketlikdagi barcha gaplar maqsad, ikkinchisi esa kirish so'zidir. SL piksellar sonida, boshqa ota-ona yoki kirish bandi yoki ketma-ket oldingi bobokalondir.

SL va SLD-larda "S" har qanday bandda yagona so'zma-so'z hal qilinganligini anglatadi tanlov qoidasi yoki tanlov funktsiyasi bilan noyob tanlangan narsadir. SL piksellar sonida tanlangan so'zma-so'zlar ushbu moddaga yaqinda kiritilgan so'zlar bilan cheklangan. Eng sodda holatda, bunday "birinchi-so'ng" tanlov funktsiyasini literallarni yozish tartibi bilan belgilash mumkin. Prolog. Biroq, SLD piksellar sonini tanlash funktsiyasi SL piksellar soniga va Prologga qaraganda ancha umumiydir. To'g'ridan-to'g'ri tanlanishi mumkin bo'lgan cheklov yo'q.

SLD piksellar sonini hisoblash bilan izohlash

Klausal mantiqda, SLD-ning rad etilishi, jumlalar kiritilgan to'plamni qondirib bo'lmaydiganligini ko'rsatadi. Biroq, mantiqiy dasturlashda SLD rad etish hisoblash sharhiga ega. Yuqori band subgoallar birikmasini inkor etish sifatida talqin qilinishi mumkin . Ushbu bandning kelib chiqishi dan yordamida hosila bo'ladi orqaga qarab fikr yuritish, maqsadni qisqartirish protsedurasi sifatida kirish bandidan foydalangan holda yangi sub-maqsadlar to'plami. Birlashtiruvchi almashtirish ikkalasi ham tanlangan subgoaldan protsedura tanasiga uzatadi va bir vaqtning o'zida protsedura boshidan chiqishni qolgan tanlanmagan subgoallarga uzatadi. Bo'sh gap oddiygina subgoallarning bo'sh to'plamidir, bu yuqori qismdagi subgoallarning boshlang'ich birikmasi hal qilinganligini bildiradi.

SLD qaror strategiyalari

SLD piksellar sonini to'g'ridan-to'g'ri belgilaydi qidirish daraxti boshlang'ich maqsad bandi daraxtning ildizi bilan bog'liq bo'lgan muqobil hisoblashlar. Daraxtdagi har bir tugun uchun va dasturdagi har qanday aniq band uchun tugun bilan bog'langan maqsad punktida tanlangan harf bilan birlashtiriladigan, SLD piksellar sonini bilan olingan maqsad bandi bilan bog'liq bo'lgan tugun mavjud.

Farzandlari bo'lmagan barg tuguni muvaffaqiyatli tugun hisoblanadi, agar unga tegishli maqsad bandi bo'sh band bo'lsa. Agar u bilan bog'langan maqsad bandi bo'sh bo'lmasa, lekin tanlangan so'zma-so'z hech qanday kirish bandining ijobiy harflari bilan birlashtirilsa, bu muvaffaqiyatsizlik tuguni.

SLD rezolyutsiyasi, qidiruv daraxtini o'rganish uchun qidiruv strategiyasini belgilamasligi sababli, deterministik emas. Prolog birinchi navbatda daraxtning chuqurligini qidirib topadi, bir vaqtning o'zida bitta novda, muvaffaqiyatsizlik tuguniga duch kelganda orqaga burilib. Chuqurlik-birinchi izlash hisoblash resurslaridan foydalanishda juda samarali, ammo qidiruv maydonida cheksiz tarmoqlar mavjud bo'lsa va qidirish strategiyasi ularni cheklangan filiallardan afzalroq qidirsa: hisoblash tugamaydi. Boshqa birinchi qidirish strategiyalari, shu jumladan kengligi birinchi, eng yaxshisi va bog'langan va bog'langan qidirish ham mumkin. Bundan tashqari, qidiruv ketma-ketlikda amalga oshirilishi mumkin, bir vaqtning o'zida bitta tugun yoki parallel ravishda ko'plab tugunlar bir vaqtning o'zida.

SLD rezolyutsiyasi, avvalroq aytib o'tilgan ma'noda deterministik emas, chunki tanlov qoidasi xulosa chiqarish qoidasi bilan belgilanmaydi, lekin alohida qaror qabul qilish protsedurasi bilan belgilanadi, bu dasturni bajarish jarayonining dinamikasiga sezgir bo'lishi mumkin.

SLD piksellar sonini qidirish maydoni turli xil filiallar muqobil hisob-kitoblarni aks ettiradigan daraxtdir. Propozitsion mantiqiy dasturlarda SLDni umumlashtirish mumkin, shunda qidirish maydoni an bo'ladi va-yoki daraxt, ularning tugunlari subgoallarni ifodalovchi bitta literallar bilan belgilanadi va tugunlar birlashma yoki disjunksiya bilan birlashtiriladi. Umumiy holda, qo'shma subgoallar o'zgaruvchini bo'lishadigan bo'lsa, va-yoki daraxtni tasvirlash yanada murakkablashadi.

Misol

Mantiqiy dasturni hisobga olgan holda:

q: - p

p

va eng yuqori darajadagi maqsad:

q

qidiruv maydoni bitta filialdan iborat bo'lib, unda q ga kamayadi p bu subgoallarning bo'sh to'plamiga qisqartirilib, muvaffaqiyatli hisoblash to'g'risida signal beradi. Bunday holda, dastur juda sodda, chunki tanlov funktsiyasi uchun hech qanday rol yo'q va hech qanday qidiruvga ehtiyoj qolmaydi.

Gap mantiqida dastur quyidagi jumlalar bilan ifodalanadi:

va eng yuqori darajadagi maqsad bitta salbiy tom ma'noda maqsad bandi bilan ifodalanadi:

Qidiruv maydoni bitta inkordan iborat:

qayerda bo'sh bandni ifodalaydi.

Agar dasturga quyidagi band qo'shilgan bo'lsa:

q: - r

unda qidiruv maydonida barg tuguni bo'lgan qo'shimcha filial bo'ladi r muvaffaqiyatsiz tugun. Prolog-da, agar ushbu band asl dasturning old qismiga qo'shilgan bo'lsa, u holda Prolog qidiruv makonining filiallari tekshirilish tartibini aniqlash uchun bandlarning yozilish tartibidan foydalanadi. Prolog birinchi navbatda ushbu yangi filialni sinab ko'radi, muvaffaqiyatsizlikka uchraydi va keyin orqaga qaytadi va asl dasturning bitta filialini tekshiradi va muvaffaqiyatga erishadi.

Agar band

p: - p

Endi dasturga qo'shildi, keyin qidiruv daraxti cheksiz filialni o'z ichiga oladi. Agar avval ushbu band sinab ko'rilgan bo'lsa, u holda Prolog cheksiz ko'chadan o'tib, muvaffaqiyatli filialni topa olmas edi.

SLDNF

SLDNF[3] bilan ishlash uchun SLD piksellar sonining kengaytmasi inkor etishmovchilik sifatida. SLDNF-da maqsadli bandlar inkorni o'z ichiga olishi mumkin, chunki bu shaklda aytilganidek, muvaffaqiyatsizlikka uchragan , agar ular o'zgaruvchisiz bo'lsa, ularni tanlash mumkin. Bunday o'zgaruvchisiz literal tanlansa, mos kelmaydigan literaldan boshlab SLDNF rad etilishi mavjudligini aniqlash uchun subproof (yoki subkompyuter) harakat qilinadi. yuqori band sifatida. Tanlangan subgoal subproof muvaffaqiyatsiz bo'lsa muvaffaqiyatga erishadi va agar subproof muvaffaqiyatga erishsa muvaffaqiyatsiz bo'ladi.

Shuningdek qarang

Adabiyotlar

  1. ^ Robert Kovalski Mantiqni dasturlash tili sifatida taxmin qiling Memo 70, sun'iy intellekt bo'limi, Edinburg universiteti. 1973. Shuningdek, IFIP Kongressi ishlarida, Stokgolm, North Holland Publishing Co., 1974, 569-574-betlar.
  2. ^ Robert Kovalski va Donald Kuehner, Tanlash funktsiyasi bilan chiziqli aniqlik Sun'iy aql, jild. 2, 1971, 227-60 betlar.
  3. ^ Kshishtof Apt va Maarten van Emden, Mantiqiy dasturlash nazariyasiga qo'shgan hissalari, Hisoblash texnikasi assotsiatsiyasi jurnali. Vol, 1982 - portal.acm.org

Tashqi havolalar

  • [1] Hisoblashning bepul onlayn lug'atidan ta'rif