خوارزمية كوك-يونغير-كاسامي Cocke-Younger-Kasami (وتسمى أيضاً CKY) هي خوارزمية تحليل نحوي تنتمي للقواعد النحوية الخالية من السياق في علوم الحاسوب، وقد سميت بإسم مخترعيها، جون كوك ، دانيال يونغير وتاداو كسامي.[1] وهي تستخدم في التحليل من الأسفل إلى الأعلى والبرمجة الديناميكية .
يعمل الإصدار القياسي من الخوارزمية فقط على القواعد الخالية من السياق في نموذج تشومسكي الطبيعي (CNF). ومع ذلك، يمكن تحويل أي قواعد نحوية خالية من السياق إلى قواعد CNF معبرة عن نفس اللغة (Sipser 1997).
تنبع أهمية خوارزمية (CYK) من كفاءتها العالية في مواقف معينة. إذا ما قيمنا كفاءة عملها بواسطة مقياس التعقيد الحسابي Big O، فإن اسوء حالة تشغيل يمكن الحصول عليها في خوارزمية CYK هي ، حيث تمثل n طول الجملة المراد تحليلها فيما تمثل G حجم القواعد ضمن نموذج تشومسكي الطبيعي الذي يتم العمل عليه (Hopcroft & Ullman 1979). ويجعلها هذا إحدى أكثر خوارزميات التحليل النحوي فاعلية، من ناحية التعقيد الحسابي.
النموذج الطبيعي
تتطلب خوارزميات البرمجة الديناميكية تحويل القواعد النحوية الخالية من السياق إلى نموذج تشومسكي الطبيعي (CNF)، لأنها تختبر إمكانيات تجزئة التسلسل الحالي من البيانات إلى النصف يمكن تمثيل أي قواعد نحوية خالية من السياق لا تنشئ سلسلة فارغة في النموذج الطبيعي لتشومسكي وباستخدام قواعد إنتاج النماذج فقط (القواعد المتعلقة بتجزئة الرموز غير الطرفية إلى رموز طرفية) و .
الخوارزمية
تراعي هذه الخوارزمية كل جزء ممكن من الجمل ممكن من الجمل والمجموعات المدخلة ليكون الجزء صحيحا إذا كانت بطول بدءاً من وقابل للتوليد من العنصر غير الطرفي . عند أخذ جملة جزئية بطول (1)، تتجه الخوارزمية نحو الجمل الجزئية بطول (2)، وهكذا. لكل جملة جزئية بطول (2) أو أكثر، تأخذ الخوارزمية كل جزء معتبرة أنه يتكون من جزئين، ثم تقوم بفحص امكانية تطبيق انتاج معين (قاعدة) بحيث أن Q تطابق الجزء الأول، وR تطابق الجزء الثاني، ثم تسجل P على أنها تطابق الجملة الجزئية كلياً. حالما تنتهي العملية، تميز الجملة من خلال القواعد إذا ما كانت الجملة الجزئية التي تتضمن جميع جمل المدخلات تنطبق على القاعدة الأساسية المبتدئة برمز البداية (S غالباً).
مثال
يتم الآن تحليل الجملة (She eats a fish with a fork) "هي تأكل السمكة بالشوكة" باستخدام خوارزمية CYK. في الجدول أدناه، في حيث i هو رقم الصف (يبدأ من أسفل في 1) ، و j هو رقم العمود (يبدأ من اليسار في 1).
توضيح: VP جملة فعلية
NP جملة اسمية
PP جار ومجرور
DET أدوات التعريف والتنكير
N اسم
V فعل
S رمز البداية ورمز القاعدة ككل
S | ||||||
VP | ||||||
S | ||||||
VP | PP | |||||
S | NP | NP | ||||
NP | V, VP | Det. | N | P | Det | N |
she | eats | a | fish | with | a | fork |
المراجع
- "معلومات عن خوارزمية CYK على موقع academic.microsoft.com". academic.microsoft.com. مؤرشف من الأصل في 21 مارس 2020.
- Cocke, John; Schwartz, Jacob T. (April 1970). Programming languages and their compilers: Preliminary notes ( كتاب إلكتروني PDF ) (Technical report) (الطبعة 2nd revised). معهد كورانت لعلوم الرياضيات, NYU.
- Hopcroft, John E.; Ullman, Jeffrey D. (1979). Introduction to Automata Theory, Languages, and Computation. Reading/MA: Addison-Wesley. . Hopcroft, John E.; Ullman, Jeffrey D. (1979). Introduction to Automata Theory, Languages, and Computation. Reading/MA: Addison-Wesley. . Hopcroft, John E.; Ullman, Jeffrey D. (1979). Introduction to Automata Theory, Languages, and Computation. Reading/MA: Addison-Wesley. .
- كاسامي، ت. (1965). خوارزمية فعالة للتعرف على تحليل وبناء الجملة للغات الخالية من السياق (تقرير فني). AFCRL . 65-758.
- Knuth, Donald E. (November 14, 1997). فن برمجة الحاسوب Volume 2: Seminumerical Algorithms (الطبعة 3rd). Addison-Wesley Professional. صفحة 501. . Knuth, Donald E. (November 14, 1997). فن برمجة الحاسوب Volume 2: Seminumerical Algorithms (الطبعة 3rd). Addison-Wesley Professional. صفحة 501. . Knuth, Donald E. (November 14, 1997). فن برمجة الحاسوب Volume 2: Seminumerical Algorithms (الطبعة 3rd). Addison-Wesley Professional. صفحة 501. .
- Lang, Bernard (1994). "Recognition can be harder than parsing". Comput. Intell. 10 (4): 486–494. doi:10.1111/j.1467-8640.1994.tb00011.x.
- Lange, Martin; Leiß, Hans (2009). "To CNF or not to CNF? An Efficient Yet Presentable Version of the CYK Algorithm". Informatica Didactica. 8. مؤرشف من الأصل في 18 ديسمبر 2019.
- Lee, Lillian (2002). "Fast context-free grammar parsing requires fast Boolean matrix multiplication". J. ACM. 49 (1): 1–15. arXiv:. doi:10.1145/505241.505242.
- Sipser, Michael (1997). Introduction to the Theory of Computation (الطبعة 1st). IPS. صفحة 99. . Sipser, Michael (1997). Introduction to the Theory of Computation (الطبعة 1st). IPS. صفحة 99. . Sipser, Michael (1997). Introduction to the Theory of Computation (الطبعة 1st). IPS. صفحة 99. .
- Valiant, Leslie G. (1975). "General context-free recognition in less than cubic time". J. Comput. Syst. Sci. 10 (2): 308–314. doi:10.1016/s0022-0000(75)80046-8.
- Younger, Daniel H. (February 1967). "Recognition and parsing of context-free languages in time n3". Inform. Control. 10 (2): 189–208. doi:10.1016/s0019-9958(67)80007-x.