مقاله‌ی زیر به همراه خلاصه آن در وب‌سایت ویکیپدیا آمده است. موضوع آن را مشخص کنید

مقاله: به‌طور نمونه، یک الگوریتم حریصانه برای حل مسئله‌ای با زیرساختار بهینه به کار می‌رود، اگر بتوان به کمک استقراء ثابت کرد که در هر مرحله بهینه است. اگر هیچ الگوریتم حریصانه مناسبی وجود نداشته باشد و مسئله نتواند زیر مسئله‌های هم پوشانی را نشان دهد، غالبا یک جستجوی ساده اما طولانی برای زمان راه‌حل صورت می‌گیرد که بهترین جایگزین خواهد بود. در کاربرد برنامه نویسی پویا برای بهینه‌سازی ریاضیات، قاعده بهینه‌سازی richard bellman بر اساس این ایده است که به منظور حل یک مسئله بهینه‌سازی پویا از برخی دوره‌های زمانی آغازگر (t) تا برخی دوره‌های پایانی (t) باید زیرمسائل از زمان بعد (s) حل شوند به‌طوری‌که t<s<t باشد. این یک مثال از زیرساختار بهینه است. قاعده بهینه‌سازی برای به دست آوردن معادله bellman به کار می‌رود که نشان می‌دهد چگونه مقدار مسئله شروع‌شده از (t) به مقدار مسئله شروع‌شده از (s) مرتبط است. یافتن کوتاه‌ترین مسیر برای سفر بین دو شهر با ماشین را مورد ملاحظه قرار دهید. چنین مثالی احتمالا برای نشان دادن زیر ساختار بهینه است. یعنی اگر کوتاه‌ترین مسیر از شهر سیاتل به لس انجلس از مسیر پورتلند و سپس ساکرامنتو عبور کند، پس کوتاه‌ترین مسیر از پورتلند به لوس انجلس باید از ساکرامنتو عبور کند. یعنی این مسئله که چگونه از پورتلند به لوس انجلس برسیم درون مسئله رسیدن از سیاتل به لوس انجلس قرار می‌گیرد. یک تعریف رسمی‌تر برای زیرساخت بهینه می‌توان ارائه داد. اگر یک مسئله مجموئه‌ای ازجایگزین‌ها باشد و هر جایگزین دارای هزینه خود (c (a باشد. وظیفه ما یافتن مجموعه‌ای از جایگزین‌هاست که (c (a را به حداقل برساند. فرض کنید که بتوان جایگزین‌ها را به زیر مجموعه‌هایی تقسیم کرد که هر زیرمجموعه دارای هزینه خاص خودش باشد و هر جایگزین فقط به یک زیرمجموعه متعلق باشد. همان طور که کمینه‌های کل تابع هزینه، که محدود به همان زیرمجموعه هستند، را می‌توان به دست آورد، کمینه‌های هر یک از این توابع را نیز می‌توان به دست آورد. اگر این کمینه‌ها مطابق با هر زیر مجموعه باشند، بنابراین تقریبا مشخص است که کمینه کلی نمی‌تواند از مجموعه کامل جایگزین‌ها جدا شود. اگر پس از تعداد محدودی از این کاهش‌ها مسئله جزئی و ناچیز شود، پس مسئله دارای یک زیرساختار بهینه است. 
خلاصه: در علوم کامپیوتر یک مسئله به نام زیر ساختار بهینه (به انگلیسی: optimal substructure) وجود دارد. این ویژگی برای تعیین کارایی برنامه نویسی پویا و الگوریتم‌های حریصانه در یک مسئله است. 
موضوع:
زير ساختار بهينه