بلانر (لغة برمجة)
بلانر هو لغة برمجة صممها كارل هيويت في معهد ماساتشوستس للتكنولوجيا، ونشرها لأول مرة في ١٩٦٩. نفذ في البداية مجموعة فرعية مثل ميكرو بلانر وبيكو بلانر، ومن ثم تم تنفيذ اللغة بأكملها بشكل أساسي كبوبلر من قبل جوليان ديفيز في جامعة ادنبرة في لغة برمجة POP-2.[1] المشتقات مثل QA4,conniver,QLISP,Ether أدوات مهمة في بحوث ذكاء الاصطناعي في السبعينات، التي أثرت على تطورات التجارية مثل بيئة هندسة المعرفة وأداة الاستدلال التلقائية.
النهج الإجرائي مقابل النهج المنطقي
هناك نهجان رئيسيين في بناء أنظمة البرمجة الدلالية هما الإجرائي والمنطقي. تجسد النهج الإجرائي عن طريق ليسب(لغة برمجة) التي تتميز بالإجراءات المتكررة التي تعمل على تركيب القائمة.
يمثل النهج المنطقي في إجراء الإثبات الموحد للقرار (المنطقي) المستند إلى اكتشافات الاشتقاق (الإثبات) [روبيسون ١٩٦٥]. وفقًا للنموذج المنطقي كان من «الغش» تدخل المعرفة الإجرائية[غرين ١٩٦٩].
الدمج الإجرائي للمعرفة
أُخترع بلانر بهدف دمج الإجرائي للمعرفة [هيويت ١٩٧١] ورفض نهج إجراء اثبات موحد للقرار[روبيسون ١٩٦٥] الذي يعمل على:
1.تحويل كل شيء على شكل عبارة (clausal).تحويل كل المعلومات على شكل عبارات يعد إشكالية لأنه يخفي البنية الأساسية للمعلومات
2.ثم استخدام القرار(المنطقي) لمحاولة الحصول على إثبات عن طريق التناقض عن طريق إضافة شكل العبارة لنفي النظرية المراد إثباتها. يعد استخدام القرار فقط كقاعدة للاستدلال إشكاليًا لأنه يخفي البنية الأساسية للبراهين. أيضًا يعد استخدام الإثبات بالتناقض إشكاليًا لأن البديهيات لجميع المجالات العملية للمعرفة غير متشابهة في العمل.
يعد البلانر نوعًا هيجنًا بين النماذج المنطقية والإجرائية لأنه يجمع بين قابلية البرمجة والتفكير المنطقي. يتميز البلانر بتفسير الإجرائي للجمل المنطقية حيث يمكن تفسير النموذج (Pيعني Q) من الناحية الإجرائية بالطرق التالية باستخدام الاستدعاء الموجه بالنمط:
1.التسلسل إلى الامام (بشكل سابق):
إذا أكد P، أكد Q.
إذا لم يؤكد P، لا يؤكدQ.
2.التسلسل إلى الخلف (بناءًا على ذلك):
إذا كان الهدف Q، الهدف P.
إذا لم يكن الهدف Q، الهدف ليس P.
في هذا الصدد تأثر تطوير البلانر بالأنظمة المنطقية الاستنتاجية الطبيعية[خاصة التي صممها فريدريك فيتش ١٩٥٢].
تنفيذ ميكرو بلانر
تم تنفيذ مجموعة فرعية تسمى ميكرو بلانر بواسطة جيري سوسمان ويوجين شارنياك وتيري فينوغراد في سنة ١٩٧١ وتم استخدامها في برنامج فينوغراد لفهم اللغة الطبيعية برنامج SHRDLU، عمل يوجين شارنياك لفهم القصة، وعمل تورن مكارتي حول التفكير القانوني، وبعض المشاريع الأخرى. أدى ذلك إلى صنع قدر كبير من الإثارة في مجال الذكاء الاصطناعي. كما أثار الجدل لأنه اقترح بديلًا للنهج المنطقي الذي كان أحد نماذج الاساسية للذكاء الاصطناعي.
في معهد ستانفورد للأبحاث طور جيف روليفسون وجان ديركسن وريتشارد فينوغراد QA4 الذي بني على تركيبات في بلانر وقدم سياق آلي لتوفير نمطية للتعبيرات في قاعدة البيانات. طور إيرل ساكردوتي ورينيه ريبو QLISP، وهو امتداد QA4 مضمن في WTERLISP، مما يوفر تفكيرًا شبيهًا ببلانر مضمن في لغة إجرائية وتم تطوير في بيئة برمجية غنية. تم استخدام QLISP بواسطة ريتشارد ولاينغر وكارل ليفيت للتحقق من البرنامج، بواسطة إيرل ساكردوتي للتخطيط ومراقبة التنفيذ، بواسطة جين كلود للتصميم بمساعدة الحاسوب، بواسطة ريتشارد فيكس للاسترجاع الاستنتاجي، ومن قبل ستيفن كولز لنظام خبير مبكر الاستخدام الموجه لنموذج الاقتصاد القياسي.
كانت الحواسيب غالية الثمن ولها معالج بطيء الإشارة وسعة تخزينية صغيرة مقارنة بهذه الايام.
لذلك اعتمد البلانر بعض وسائل الكفاءة بما ذلك ما يلي:
1.تم اعتماد التراجع[جولومب وبيومرت ١٩٦٥] للأقتصاد في استخدام الوقت والتخزين من خلال العمل على إمكانية واحدة فقط في كل مرة في استكشاف البدائل.
2.تم اعتماد اسم فريد لتوفير مساحة والوقت من خلال افترض ان الأسماء المختلفة تشير إلى كائنات مختلفة. على سبيل المثال تم افتراض ان أسماء مثل Peking الاسم السابق لعاصمة جمهورية الصين الشعبية وBeijing اسم عاصمة جمهورية الصين الشعبية في ترجمة الحالية تشير كل منهما إلى كائنات مختلفة.
3.يمكن تنفيذ افتراض العالم المغلق عن طريق الاختبار المشروط ما إذا كانت محاولة إثبات الهدف قد فشلت بشكل شامل. في وقت لاحق، تم إعطاء هذه القدرة الاسم المضلل «النفي كفشل» لأنه بالنسبة لهدف G كان من الممكن أن نقول: إذا فشلت محاولة تحقيق G بشكل شامل، فقم بالتأكيد (ليس G).
مصادر
- Carl Hewitt Middle History of Logic Programming: Resolution, Planner, Prolog and the Japanese Fifth Generation Project ArXiv 2009. أرشيف خي:0904.3036}}
- بوابة علم الحاسوب