برنامه ریزی سلسله مراتبی Hierarchical

برنامه ریزی سلسله مراتبی Hierarchical
روش های برنامه ریزی و حل مسئله های هوش مصنوعی، با مجموعه ثابتی از فعالیت های اتمیک کار میکنند. فعالیت ها می توانند در یک دنباله یا شبکه های انشعاب در کنار یکدیگر قرار گیرند، الگوریتم های مدرن می توانند جواب هایی را تولید کنند که شامل هزاران فعالیت هستند.
برای برنامه ریزی هایی که توسط مغز انسان انجام می شوند، فعالیت های اتمیک، فعال سازی ماهیچه هستند. تقریبا 103 ماهیچه برای فعالیت وجود دارند (تا 639 ماهیچه شمارش شدند ولی اغلب آنها از چندین واحد کوچک تشکیل شدند)، فعالسازی آنها را می توان در حدود ده برابر در ثانیه مدوله کرد، بطور کلی در حدود 109 ثانیه زنده و بیدار هستیم. بنابراین زندگی انسان تقریبا شامل 1013 فعالیت است. حتی اگر برنامه ریزی خود را به افق های زمانی کمتری محدود کنیم، یک برنامه ریزی مشروح موتور می تواند شامل 1010 فعالیت باشد . این تعداد خیلی بیشتر از 103 است.
برای پر کردن این فاصله، سیستم های AI باید همان کاری را انجام دهند که انسان ها انجام می دهند، یعنی برنامه ریزی را در سطوح بالاتری از انتزاع ارائه دهند. هر یک از فعالیت ها نیز می توانند بیشتر تجزیه شوند، تا به سطحی از فعالیت ها برسیم که بدون نیاز به تولید جملات ضروری ، اجرا شوند. بنابراین فعالیت خاصی تا قبل از فاز اجرا در سطح انتزاع باقی می ماند.
در اینجا به جنبه تجزیه سلسله مراتبی می پردازیم که ایده ای است که تقریبا تمام تلاش ها برای مدیریت بر پیچیدگی را در برمی گیرد.برای مثال نرم افزار پیچیده از سلسله مراتبی از زیر روال ها یا کلاس اشیا ایجاد میشود. فایده مهم ساختار سلسله مراتبی این است که در هر سلسله مراتب یک کار محاسباتی، ماموریت یا وظیفه مدیریتی به چند فعالیت کوچکتر در سطح پایین تر تقسیم می شود و در نتیجه هزینه محاسباتی یافتن روش درست برای چیدمان آن فعالیت ها در مسئله اصلی اندک است. از طرف دیگر روش های غیرسلسله مراتبی هر وظیفه را به تعداد زیادی فعالیت انفرادی تبدیل می کند. برای مسئله های بزرگ این کار کاملا غیرعملی است.