سمينار : بهينه سازي در سيستم هاي نرم افزاري با تاکيد بر الگوريتم هاي جستجو
چکیده
نرم افزار مي تواند به هر موقعيتي که در آن مجموعه مراحل رويه اي خاصي به نام الگوريتم تعريف مي شود، اطلاق گردد ( به استثناي نرم افزارهاي سيستم هاي خبره و شبکه هاي عصبي ). توسعه مقولات کلي بامعني براي کاربردهاي نرم¬افزاري تا حدي مشکل است. با رشد پيچيدگي نرم افزار مرزبندي بسيار دقيق نرم افزارها، ناپديد مي گردد. نواحي نرم افزاري زير، وسعت کاربردهاي بالقوه را نشان مي دهد :
• نرم افزار سيستمي : نرم افزار سيستمي، مجموعه اي از برنامه هاست که براي خدمت رساني به ساير برنامه ها نوشته شده است. بعضي نرم افزارهاي سيستمي (مانند کامپايلرها و ويرايشگرها) ساختارهاي اطلاعاتي پيچيده ولي محدودي را پردازش مي کنند. ساير کاربردهاي سيستمي (مانند اجزاي سيستم عامل، درايورها و پردازشگرهاي ارتباطات راه دور) داده هاي نامحدود گسترده اي را پردازش مي نمايند. در هر دو مورد، حوزه نرم افزار سيستمي، توسط اين ويژگي ها تعيين مي گردد، تعامل زياد با سخت افزار، استفاده زياد توسط چندين کاربر، عمليات همروند که نياز به زمانبندي، مديريت منبع و مديريت پردازش دارد، ساختار داده هاي پيچيده و رابطهاي خارجي چندگانه.
• نرم افزار بي درنگ : نرم افزاري که رويدادهايي که در جهان واقع اتفاق مي افتد را کنترل، نظارت و تحليل مي کند. عناصر نرم افزار بي درنگ شامل بخش جمع آوري کننده اطلاعات (که اطلاعات را از محيط خارجي جمع آوري و شکل دهي مي کند)، بخش تحليل (که اطلاعات را به شکل موردنياز کاربر تبديل مي کند) و بخش کنترل/خروجي که به محيط خارج پاسخ داده و بخش نظارت است که ساير بخشها را به گونه اي هماهنگ مي¬کند که پاسخ بي¬درنگ ( بين 1 ميلي ثانيه تا 1 ثانيه) فراهم شود.
• نرم افزار تجاري : پردازش اطلاعات تجاري بزرگ ترين حوزه کاربرد نرم افزاري است. اين سيستمهاي مديريت اطلاعات به يک يا چند پايگاه داده بزرگ اطلاعات تجاري دسترسي دارند.کاربردهاي اين حوزه، داده هاي موجود را به روشي ساختاردهي مجدد مي کنند که عمليات تجاري يا تصميم گيري مديريتي را تسهيل کنند. علاوه بر کاربرد پردازش داده مرسوم، کاربردهاي نرم افزار تجاري، محاسبات متعامل را هم شامل مي شوند.
• نرم افزار علمي و مهندسي : اين نوع نرم افزار توسط الگوريتم هاي معمول عددي مشخص مي گردند ولي کاربردهاي جديد حوزه علمي و مهندسي، از الگوريتم هاي عددي مرسوم دور مي گردند. طراحي به کمک کامپيوتر، شبيه سازي سيستم و ساير کاربردهاي متعامل به تدريج به ويژگيهاي نرم افزار سيستمي و بي درنگ اضافه مي شوند.
• نرم افزار نهفته : محصولات هوشمند امروزه بسيار رايجند. نرم افزار نهفته، در حافظه خواندني قرار مي گيرد و براي کنترل محصولات و سيستم ها به کار مي رود. سيستم نهفته مي تواند اعمال اختصاصي و خيلي محدودي را انجام دهد و يا عملکرد و قابليت کنترل کافي را فراهم مي نمايد ( مثل توابع ديجيتال در اتومبيل مانند کنترل سوخت و سيستم هاي ترمز )
• نرم افزار کامپيوترهاي شخصي : فروش نرم افزار کامپيوتر شخصي، در طول دو دهه گذشته رونق گرفته است. پردازش کلمه، صفحه گسترده ها، گرافيک کامپيوتري، چندرسانه اي، سرگرمي، مديريت پايگاه داده، کاربردهاي مالي تجاري و شخصي و دسترسي به پايگاه داده تعداد اندکي از اين کاربردهاست.
• نرم افزار مبتني بر وب : صفحات وب بازيابي شده توسط کاوشگر، نرم افزاري است که دستورات اجرايي و داده را به کار مي برد. در اصل شبکه به يک کامپيوتر عظيم تبديل شده که منبع نرم افزاري تقريبا نامحدودي را فراهم مي کند که مي تواند توسط يک مودم براي همه در دسترس باشد.
• نرم افزار هوش مصنوعي : اين نرم افزارها از الگوريتم هاي غيرعددي براي حل مسايل پيچيده که براي محاسبه و تحليل ساده و سرراست نيستند، بهره مي برند. سيستم هاي خبره که سيستم هاي مبتني بر دانش هم ناميده مي شوند، تشخيص الگو (تصوير و صوت)، شبکه هاي عصبي هوشمند و بازيها، کاربردهاي رايجي دراين مقوله هستند.
در اين گزارش ابتدا به بررسي تعاريف مختلف بهينه سازي پرداخته و سپس تعريف مورد قبول که پايه بخشهاي بعدي قرار ميگيرد انتخاب مي شود. سپس به معرفي تکنيک هاي مورد استفاده در سيستم هاي نرم افزاري پرداخته و تمرکز مطالب بر روي تکنيک جستجو قرار مي گيرد.
يکي از (و قطعاُ مهمترين) مفاهيم مطرح در تحقيق عمليات مفهوم بهينه سازي است. بهينه سازي را ميتوان تخصيص منابع به مصارف به بهترين شکل ممکن تعريف کرد. نکته اساسي در اين تعريف رسيدن به بهترين تخصيص ممکن است، بطوريکه تخصيصي بهتر از آن وجود نداشته باشد. استفاده از روشهاي اوليه بهينه سازي شامل برنامه ريزي خطي ، برنامه ريزي عدد صحيح ، برنامه ريزي پويا ، و برنامه ريزي غير خطي با مشکلاتي همراه بود و مهمترين اين مشکلات وقت گير بودن حل مسائل بزرگ با آنها بود. به گونه اي که حتي با تکنولوژيهاي محاسباتي پيشرفته امروزي حل يک مساله با ابعاد وسيع با تکنيکهاي ذکر شده به چندين سال زمان نياز دارد. بروز اين مشکل به توهماتي که در ابتداي شکل گيري دانش تحقيق در عمليات، مبني بر حل بهينه تمام مسائل دنيا با استفاده از اين دانش، ايجاد شده بود پايان داد. بروز اين مشکل، همچنين، سبب شد محققان مجبور به تعديل انتظارات خود از اين دانش جديد در يافتن بهترين جواب ممکن شوند و به جوابهايي به اندازه کافي خوب، که حتي درمورد مسائل با ابعاد بزرگ نيز در مدت زمان منطقي ميتوان به آنها رسيد، اکتفا کنند.
درباره :
گزارش سمينار ,
|