پلانر کیست؟ توضیح بده.
پلانر (که با وجود اینکه مخفف نیست، به‌طور معمول در نشریات به صورت PLANNER دیده می‌شود) یک زبان برنامه‌نویسی است که توسط کارْل هِوْیت در دانشگاه ام‌آی‌تی طراحی شده‌است و برای اولین بار در سال ١٩۶٩ به چاپ رسید. در ابتدا، زیر مجموعه‌هایی مثل میکرو پلانر و پیکو پلانر پیاده‌سازی شدند و سپس کل زبان در Popler پیاده‌سازی شد. مشتقاتی مثل QA4, Conniver, QLISP و Ether (نگاه کنید به جامعه علمی Metaphor) در دهه ١٩٧٠ ابزارهای مهمی در تحقیقات هوش مصنوعی بودند، که البته در تحولات اقتصادی مانند KEE و ART تأثیرگذار بودند.رویکرد پروسه‌ای در مقابل رویکرد منطقی.رویکرد پروسه‌ای و منطقی دو الگو مهم برای تولید سیستم معنایی نرم‌افزار بودند. رویکرد پروسه‌ای در Lisp [McCarthy "et al." 1962] که در آن پروسه‌های بازگشتی بر روی ساختار لیست عمل می‌کردند پیاده شد.رویکرد منطقی نیز به روش اثبات یکنواخت حل قضیه resolution theorem provers [Robinson 1965] پیاده شد. بر اساس رویکرد منطقی، در ترکیب پروسه‌ای اطلاعات آن "تقلب" محسوب می‌شد [Green 1969].پروسه تعبیه اطلاعات.Planner برای اهداف پروسه تعبیه اطلاعات [Hewitt 1971] اختراع شد و ردی بود بر ترکیب پروسه‌ای اطلاعات [Robinson 1965] که در آن:همه چیز به فرم Clausal تبدیل می‌شد. تبدیل همه اطلاعات به فرم clausal form مشکل ساز بود برای اینکه ساختارهای زیرین اطلاعات را محو می‌ساخت.سپس برای بدست آوردن استدلال از ترکیب اضافه کردن فرم Clausal به تناقص قضیه استفاده می‌کرد تا آن را اثبات کند. استفاده از این ترکیب به عنوان تنها قانون استنتاج مشکل ساز بود، به این دلیل که ساختار زیرین اثبات محو می‌شد. همینطور استفاده از اثبات با تناقض نیز مشکل ساز بود زیرا مسئله axiomatizations تمامی محدوده‌های اطلاعات متناقض در مسئله می‌شدند.Planner یک گونه هیبریدی مابین الگوی پروسه‌ای و منطقی بود زیرا آن قدرت برنامه پذیری را با دلایل منطقی مخلوط کرده بود.Planner یک تفسیر جملات منطقی را برجسته ساخت که در آن مفهوم فرم (P implies Q) می‌تواند به فرم‌های پروسه‌ای زیر ترجمه شوند:با احترام به سیستم طبیعی استنتاج منطقی در رشد Planner تأثیرگذار بود (به خصوص آن یکی که به وسیلهٔ Frederic Fitch [1952] درست شد)پیاده سازی Micro-Planner.یک زیر مجموعه به نام Micro-Planner توسط Gerry Sussman, Eugene Charniak و Terry Winograd [Sussman, Charniak, and Winograd 1971] پیاده‌سازی شد و در برنامه فهمیدن زبان طبیعی SHRDLU ی Winograd کار Eugene Charniak در مفهوم داستانی و کار Thorne McCarty در دلایل قانونی و دیگر پروژه‌ها استفاده شد. Micro-Planner یک هیجان زیاد در زمینه AI به وجود آورد و همچنین یک مباحثه و جدال به وجود آورد زیرا پیشنهاد جایگزینی برای روش منطقی کرد که یکی از روش‌های پایه‌ای AI بود. در SRI Jeff Rulifson, Jan Derksen و Richard Waldinger QA4 را پیشرفت دادند که بر روی سازنده‌ها در Planner ساخته شده و یک مکانیسم متنی را معرفی کردند که خاصیت ماژولی را در پایگاه‌های داده به ارمغان می‌آورد. Earl Sacerdotiو Rene Reboh به پیشرفت QLISP و گسترش QA4 را در INTERLISP دست زدند و استدلالی برنامه ریز مانند embedded شده در یک زبان پروسه‌ای و توسعه یافته در محیط‌های برنامه‌نویسی ارائه کردند. QLISP توسط Richard Waldinger, Karl Levitt برای تصدیق برنامه استفاده شد و توسط Earl Sacerdoti برای برنامه‌ریزی و monitoring اجرا استفاده گشت و همچنین توسط Jean-Claude Latombe برای طراحی‌های به کمک کامپیوتر استفاده شد، توسط Richard Fikes بازیابی استقرایی و توسط Steven Coles برای سیستم خبره ابتدایی که در مدل‌های اقتصادی مورد کاربرد است استفاده شد.کامپیوترها گران بودند و آن‌ها تنها یک پردازنه ضعیف و حافظه‌هایی کم حجم در مقایسه با حال در دسترس داشتنند و به همین دلیل Planner برخی بهبودها را مانند زیر اتخاذ کرد:ردیابی رو به عقب [Golomb, Baumert 1965] برای صرفه جویی در استفاده از زمان و حجم ذخیره شده اتخاذ شد و این کار را با کار روی ذخیره‌سازی تنها امکان در یک زمان انجام می‌داد.نام منحصر به فردی برای صرفه جویی در فضا و زمان فرض شد با فرض آن که نام‌های مختلف مراجعه‌کننده به اجسام مختلف هستند اتخاذ شد. برای مثال اسامی مثل Peking, Beijing فرض شد که به اشیاء متفاوتی اشاره می‌کنند.یک فرض جهان شمول را می‌توان با تست مشروط پیاده‌سازی کرد در حالی که تلاش برای اثبات یک هدف جامع شکست خورده‌است. بعدها این ظرفیت به اشتباه "نفی به عنوان شکست" خوانده شد زیرا برای هدف G این امکان موجود بود که گفته شود : "اگر تلاش برای اثبات G با شکست مواجه شد پس منفی G صحیح است.کنترل اختلاف ساختار.حافظه کامپیوترها نسبت به استانداردهای امروزی بسیار کوچک بود زیرا حافظه بسیار گران بود و در آن زمان از هیدرواکسید آهن ساخته می‌شد. به همین دلیل Planner استفاده معمول از ساختار کنترلی backtracking را اتخاذ کرد تا در استفاده از حافظه کامپیوتر صرفه جویی شود. به این روش کامپیوتر در هر زمان تنها یک امکان را در کاوش جایگزینی دنبال می‌کرد.یک پیاده‌سازی تصمیم‌گیری در Micro-Planner عواقب مایه تاسفی را در بر داشت. Lisp تصمیم گرفت که از جناس برنامه‌نویسی شناسایی صفر استفاده کند، یک لیست خالی با صفر منطقی (در مکان حافظه 0) زیرا تست کرد برای صفر از هرچیز دیگری سریع تر بود. به دلیل این جناس، تست کردن برای صفر در برنامه‌نویسی Lisp بسیار معمول بود. در Micro-Planner این جناس را تمدید دادند تا از صفر به عنوان یک سیگنال برای آغاز پس‌گرد (الگوریتم) استفاده کنند. در Micro-Planner معمول بود که برنامه‌هایی بنویسند تا عملیاتی روی تمامی اعضای یک لیست انجام دهد و این به وسیله یک حلقه انجام می‌شد که روی عنصر اول هر لیست پردازش می‌کرد و سپس به ابتدای حلقه بازمی‌گشت تا خالی بودن حلقه را آزمایش کند. اگر لیست خالی بود آنگاه برنامه کار خود را ادامه می‌داد با اجرا کردن چیزهای دیگر. چنین برنامه‌ای بعد از اجرای تمام پروسه‌ها هیچگاه لیست را خالی نمی‌یافت زیرا وقتی آخرین پروسه اجرا می‌شد و لیست ریست می‌شد صفر به عنوان یک مقدار بازگردانده می‌شد. مترجم Micro-Planner این را به عنوان سیگنالی برای آغاز Backtracking در نظر می‌گرفت و شروع به باز گرداندن تمام المان‌های پروسه شده لیست می‌کرد! مرد بیصدا تأسیس شد [Fahlman 1973] .بدین وسیله و چندین راه دیگر Backtracking اثبات کرد که سنگین است، Hewitt در تز خود بعضی این جایگزینی‌ها را دنبال کرد.ساختار کنترلی مویین.مطابق با Hewitt [2006], Peter Landin یک ساختار کنترلی قویتر معرفی کرد که از اپراتور J برای پرش استفاده می‌کرد و می‌توانست یک Goto غیر محلی به میان رویه مورد درخواست انجام دهد. در واقع اپراتور J می‌توانست به میان رویه‌ای که مقدار خود را باز گردانده پرش کند. Drew McDermott و Gerald Sussman این روش Peter Landin را ساختار کنترلی مویین نامیدند و از آن در فرم goto غیر محلی در زبان‌های برنامه‌نویسی Conniver استفاده کردند. Scott Fahlman از Conniver در سیستم Planner خویش برای روبات سازنده Taskها استفاده کرد و این به آنچه اکنون re-invocable continuationsمرتبط است.ساختارهای کنترلی الگوهای ارسال پیام هستند.Hewitt گزارش کرد که : ... ما یافتیم که بدون متعلقات " ساختار کنترلی مویین" (مثل لیست‌های امکان، goto غیر محلی، مقدار دهی به متغیرهای داخلی دیگر پروسه‌ها در Conniver ) عمل کنیم... به نظر می‌رسد که قراردادهای ارسال پیام ساختار بهتری ارائه می‌دهند مبنای بصری بیشتر برای ساختن سیستم ارتباطی نیاز به یک ماژول حل مشکل قوی برای همکاری مؤثرتر دارد. مدل بازیگر Actor model مبنایی برای حل مسائل ساختار کنترلی هوش مصنوعی ارائه می‌کند . و این زمان قابل توجهی جهت پیشرفت متودولوژی برنامه‌نویسی مدل بازیگر می‌گیرد. در واقع، پیاده‌سازی ارتباط جامعه علمی scientific community metaphor نیاز به ارسال پیام پیچیده‌ای دارد که هنوز پایه برخی تحقیقات است.پیدایش پرولوگ.جرالد جی ساسمن [Sussman, Winograd and (Charniak 1971), سیمور پاپرت (Minsky و Terry Winograd (Winograd 1971) در ادینبرو اخباری را پخش کردند مبنی بر اینکه Micro-Planner و SHRDLUدر حل روش اثبات یکنواخت دارای مشکل است که آن پایه منطق Edinburgh بود.در دانشگاه Edinburgh، Bruce Anderson زیر مجموعه‌ای از Micro-Planner را به نام Pico-Planner (Anderson 1972) , Julian Davies (1973) اجرا کرد که در اصل تمام Planner را پیاده کرد.به گفته Donald MacKenzie :Pat Hayes تأثیر بازدید از Papert تا Edinburgh را یاداور می‌شد که تبدیل شده بود به " قلب منطق هوش مصنوعی " و به استناد همکار MIT , Papert آقای Carl Hewitt : در نقد روش حل غالب Papert eloquently گفته "و حداقل یک نفر به خاطر Papert بالا رفت " [MacKenzie 2001 pg 82.]تحولات بالا ایجاد تنش در میان منطق Edinburgh کرد و این تنش‌ها در زمانی که آکادمی علوم بریتانیا فردی را به نام Sir James Lighthill برای نوشتن گزارشی از تحقیقات هوش مصنوعی مامور کرد تشدید شد.در گزارش Lighthill resulting report, McCarthy 1973] به شدت بحرانی و SHRDLU مطلوب ذکر شده.Pat Hayes به استندفورد رفت و در آنجا Planner را دید و در بازگشت سعی کرد که بر دوستش Bob Kowalski اثر بگذارد و Planner را وارد کار مشترکشان بر روی اثبات قضیه آتوماتا کندپرولوگ جنبه‌های زیر را از Micro-Planner در بر گرفت: