إشكاليات تحليل الشعر عروضيا عن طريق الحاسوب ؟

منذ أن أصابتني حمى العروض في الشعر قبل بضع سنوات , وأنا أحمل هاجسا يؤرقني ويستنزف طاقاتي بغية دمج معرفتي في علوم الحاسوب مع العروض لانتاج برنامج شعري يستطيع تحليل الشعر ومعرفة البحر الشعري المستعمل.
إن بحور الشعر السته عشر هي بمثابه طلاسم مخفيه عن العامه , وتمنّعها ينبع من القدرات الرياضيه المطلوبه من صاحبها عدا عن كثرة المصطلحات والتفرعات من القوانين, مما يؤدي الى أن من يريد أن يعرف هذا العلم عليه أن يتفرغ لبضعة أشهر على الأقل حتى يستطيع أن يسبح في هذا العلم, ويحتاج الى بضع سنوات ليصبح متمكّنا.
وحين نتحدث عن تعريف الحاسوب بهذا العلم فالصوره تختلف تماما, ففي المكان الذي يخفق به البشر اليوم وهو كثرة التفرعات والامكانيات يسهل على الحاسوب القيام بملايين العمليات الحسابيه في الثانيه واحضار النتائج فورا.
ولكن الحاسوب يخفق أينما وجدت عدة خيارات ممكنه, فالحاسوب لا يستطيع أن يشغل معرفة اضافيه غير التي قد علمه اياها المبرمج بعكس العقل البشري الذي يكمل النواقص بسلاسة.
وعودة لموضوع حديثنا فإنّنا حين نوّد تعليم الحاسوب العروض فالمشكله الأولى التي تواجهنا هي مشكلة التشكيل !

التشكيل
إن أغلب النصوص في اللغة العربيه التي يكتبها البشر (بما فيها هذا النص) هي نصوص غير مشكله, وحين يقرأ الأنسان هذا النص فأنه يستطيع معرفة التشكيل في أغلب الكلمات حتى دون أن يكون خبيرا بقواعد اللغة العربيه.
أما بالنسبة للحاسوب فيجب إيجاد طريقه لتعليمه ذلك, لنأخذ مثلا كلمة "كتب"
دعونا ندرس إمكانيات تشكيلها :
1. كَتَّب الأستاذ طلابه درسهم
2. هنالك كُتُبٌ كثيرة في المكتبه
3. كُتًبُ المكتبة متنوعة
4. كَتَبَ الطالب درسه
أنا ذكرت 4 إمكانيات مختلفه عروضيا دون أن أذكر الإمكانيات التي تتشابه عروضيا وتختلف من ناحية تشكيل.
لكي يستطيع الحاسوب أن يحزر التشكيل الملائم هنالك حلّان يتمّمان بعضهما بعضا
1. قاعدة بيانات بكل كلمات اللغه العربيه مشكّله
عندما نقابل كلمة كتب نبحث في قاعدة البيانات عن إمكانيات تشكيلها فنجد مجموعه من الإمكانيات بالإمكان عندها إمّا سؤال المستخدم أو الإستعانه ب 2
2. كتابة برنامج يستطيع إعراب الجمله
فحين نعرف أن كتب في "كتب الطالب درسه" هي فعل ماضي غير متعدي, نستطيع ان نبحث في قاعدة البيانات لنعرف أنّ الكلمه كتب تشكيلها هو كَتَبَ.
وهذا البرنامج بحد ذاته مشروع لا أعتقد أنه يوجد له حل كامل وذلك يعود مرّه أخرى لتعدد الإمكانيات , ومن معرفتي المتواضعه لا يوجد اليوم برنامج "جيّد بما فيه الكفايه" لديه تلك القدرات.


الكتابة العروضيه

يحتاج الحاسوب هنا أيضا الى تعلم الكثير من قواعد اللفظ العروضي مثل : كلمات تكتب غير ما تلفض : هذا,الرحمن...
أل التعريف : اختلاف اللفظ بين الأحرف الشمسيه والقمريه
تلك الكلمات هي ليست بمشكله عدى أنه يتوجب احصائها ووضعها في قاعدة بيانات شامله.
يزداد التعقيد حين نتحدّث عن التصريع (مدّ التشكيل في آخر الكلمات الى حروف) أو همزة الوصل والقطع.

فمثلا :
لا أرتضي هذا الهوى لسواكَ
تصبح
لا أرتضي هاذل هوى لسواكا

لذلك يتوجب على برنامج الحاسوب أن ينتبه الى :
1. ألف هذا تلفظ ولا تكتب
2. ,الألف الثانيه في هذا كتبت ولم تلفظ
3. همزة الوصل في ال التعريف كتبت ولم تلفظ
4. اللام في ال التعريف تكتب وتلفظ لأن الهاء حرف قمري
5. تم التصريع في سواكَ لتصبح سواكا.

كل ذلك بالإمكان محاولة برمجته ولكن المشكله تكمن في حالات تصلح فيها أكثر من إمكانيه : فحينما نرى كلمة "والديك"
فهي يمكن أن تكون : والِدَيْكَ
ويمكن أن تكون أيضا : والدّيكُ
لاحظوا الأختلاف الكبير في اللفظ, يستطيع الإنسان أن يحزر الكلمة وفقا للنص, بينما مهما حاولنا فإن الحاسوب سيواجه كلمات في أحسن الأحوال يعرف أنه توجد أكثر من إمكانيه وفي أسوأها لن يعرف ذلك وسيختار الكلمه الخطأ.



الزحافات وتعدد إمكانيات البحر الشعري

بعد أن نتخطى العقبتين الأولى والثانيه (إذا أمكننا ذلك !)
يحتاج الحاسوب الآن الى معرفة الأسباب والأوتاد وفهم الزحافات حتّى يستطيع أن يحزر البيت الشعري,هنالك ملايين الإمكانيات ولكن لحسن حظنا فإن كثرة الإمكانيات ليست بمشكله على الحاسوب ما دامت لا تتعارض, لذلك فالمشكله هنا بسيطه.
بل وتصبح أبسط إذا ما أستعملنا تقنيات العروض الرقمي لأنك لا تحتاج الى تعليم الحاسوب عن عشرات أنواع الزحاف الممكنه بل تعلمه بضع قواعد رياضيه سهله.


الخطأ البشري

ربما هذه هي اصعب مشكله بين المشاكل المطروحه, فحينما نكتب بيتا شعريا مكسورا نتوقع من البرنامج أن يتغاضى عن الخطأ البسيط وأن ينتبه الى التفعيله في كل الأماكن التي لم نخطئ بها فحينما نستبدل
قفا نبك من ذكرى حبيب ومنزل بسقط اللوى بين الدخول فحومل
بهذا :
قفا نبك بذكرى حبيب ومنزل بسقط اللوى بين الدخول فحومل
فإننا نريد البرنامج أن يحزر بحر هذا البيت الشعري ولو كان به هذا الخطأ "البسيط"
لكي يستطيع البرنامج تجاوز الأخطاء علينا تعليمه هذه الأخطاء وكيفية تخطيها. مهما حاولنا ذلك ستكون هنالك أخطاء لم يفكر بها المبرمج ولم يحلم بها أيضا.




الخلاصه
لكي نستطيع كتابة برنامج يستطيع معرفة البحر الشعري علينا تعليمه التشكيل , الكتابه العروضيه, الزحافات وتعدد إمكانيات البحر الشعري, تجاوز الخطأ البشري.
ولكي أكون واضحا هذه مهمة مستحيله.
ما يمكن إنجازه هو برنامج ينجح في ذلك بنسب مرتفعه,فإذ استطعنا مثلا كتابة برنامج يستطيع فعل ذلك بنسبة 99% فذلك سيكون رائعا. وعندما نصل الى 99% ربما سيكون من السهل علينا قفز هوّة المستحيل وعبور ال 1% الإضافيه.

رشيد الحاج عبد