مقدمهاي بر بهينهسازي Introduction to Optimization
مقدمه در طراحي، ساخت و نگهداري هرسيستم بايد تصميمات تکنولوژيکي و مديريتي بسياري گرفته شود. هدف نهايي از چنين تصميماتي کمينهکردن تلاش لازم و يا بيشينه کردن سود مورد نظر است. تلاش لازم يا سود مورد نظر در هر وضعيت عملي را ميتوان به صورت تابعي از متغيرهاي تصميم مشخص بيان کرد. بنابراين بهينهسازي را ميتوان به عنوان فرايند يافتن شرايطي که مقدار بيشينه يا کمينه يک تابع را بدست مي دهد، تعريف کرد.
مقدمه (ادامه) اگر نقطه x منطبق بر مقدار بيشينه تابع f(x) باشد، اين نقطه برمقدار کمينه تابع – f(x) هم منطبق است. پس بدون از دست دادن کليت، ميتوان بهينهسازي را به معناي کمينهسازي در نظرگرفت، زيرا بيشينه يک تابع را ميتوان با جستجوي کمينه منفي آن تابع پيدا کرد.
بيان رياضي يک مسئله بهينهسازي به طور کلي يک مسئله کمينهسازي رياضي را ميتوان به صورت زير نوشت: X يک بردار n بعدي است و بردار طراحي (Design Vector) ناميده مي شود. f(X) تابع هدف (Objective Function) و gj(X) و lj(X) به ترتيب قيدهاي نامساوي (Inequality Constraint) و قيدهاي مساوي (Equality Constraint) هستند.
بيان رياضي يک مسئله بهينهسازي (ادامه) مسئلهاي که در بالا بيان شد يک مسئله بهينهسازي مقيد ناميده ميشود. برخي از مسائل داراي قيد نيستند و ميتوان آنها را به صورت زير بيان کرد: چنين مسائلي را مسائل بهينهسازي نامقيد گويند.
بردار طراحي هر سيستم با مجموعهاي از کميتها بيان ميشود. همه کميتهايي که به صورت متغير بر رفتار سيستم تاثير ميگذارند، متغير طراحي (Design Variable) ناميده ميشوند. اين متغيرها را باxi نشان مي دهيم که i=1, 2, … ميباشد.
فضاي طراحي Design Space يک فضاي n بعدي مشخص را که هر محور مختصات آن بيانگر يک متغير طراحي xi که i=1, 2, … است، در نظر بگيريد. چنين فضائي را فضاي طراحي گويند. هر نقطه در اين فضاي n بعدي، يک نقطه طراحي ناميده مي شود. اين نقطه يک جواب امکانپذير يا امکان ناپذير را براي مسئله طراحي ارائه ميکند.
قيدهاي طراحي در بسياري از مسائل عملي نميتوان متغيرهاي طراحي را به دلخواه انتخاب کرد، بلکه اين متغيرها بايد ويژگيهاي عملي مشخص و ديگر نيازمنديها را برآورده نمايند. قيدهايي را که بايد به منظور تهيه يک طرح مورد قبول برآورده شوند، قيدهاي طراحي گويند. يک مسئله بهينهسازي را که تنها داراي قيدهاي نامساوي gj(X)≤0 است در نظر بگيريد. مجموعه مقادير X که در رابطه gj(X)=0 صدق کنند، يک ابرصفحه (Hypersurface) را در فضاي طراحي تشکيل ميدهند که به آن سطح قيد (Constraint Surface) گويند. اين ابرصفحه خود يک زيرفضاي (n-1) بعدي است که n تعداد متغيرهاي طراحي را نشان ميدهد.
قيدهاي طراحي سطح قيد، فضاي طراحي را به دو ناحيه تقسيم ميکند. در يک ناحيه gj(X)<0 و در ديگري gj(X)>0 است. بنابراين نقاطي که بر روي ابرصفحه قرار دارند، به طور بحراني در قيد صدق ميکنند. در حاليکه نقاط واقع در ناحيه gj(X)>0 در ناحيه امکانناپذير(Infeasible Region) يا غيرقابل قبول و نقاطي که در ناحيه gj(X)<0 قرار دارند در ناحيه امکانپذير (Feasible Region) يا قابلقبول هستند.
فضاي طراحي دو بعدي ناحيه امکانناپذير با خطوط هاشوردار مشخص شده است. يک نقطه طراحي را که بر روي يک يا چند سطح قيد قرار دارد، نقطه مرزي (Bound Point) و قيد مربوطه را قيد فعال (Active Constraint) گويند. نقاط طراحي که بر روي هيچ يک از سطوح قيد قرار ندارند، نقاط آزاد (Free Point) ناميده ميشوند.
تابع هدف تنها قابل قبول بودن يک طرح مورد نظر نيست. هدف از بهينهسازي، انتخاب بهترين طرح از بين طرحهاي قابل قبول موجود مي باشد. بنابراين بايد معياري براي مقايسه طرحهاي قابل قبول مختلف و انتخاب بهترين آنها تعيين شود. چنين معياري که طرح نسبت به آن بهينه ميشود به صورت تابعي از متغيرهاي طراحي بيان ميشود که تابع معيار و يا تابع هدف ناميده میشود. انتخاب تابع هدف به طبيعت مسئله بستگي دارد. در مسائل طراحي سازههاي هواپيماها و فضاپيماها معمولا کمينهسازي وزن به عنوان تابع هدف درنظرگرفته ميشود. در طرحهاي مهندسي سازه، تابع هدف معمولاً کمينهسازي هزينه است و در طراحي سيستمهاي مکانيکي هدف بيشينهکردن بازده مکانيکي است.
مسئله برنامهريزي چندهدفه Multi Objective Programming Problem در بعضي حالات لازم است که بيش از يک معيار به طور همزمان برآورده شوند. براي مثال در انتقال يک توان مشخص توسط يک جفت چرخدنده ممکن است چرخدندهها را براي وزن کمينه و بازده بيشينه طراحيکنيم. يک مسئله بهينهسازي با توابع هدف چندگانه را با عنوان يک مسئله برنامهريزي چندهدفه ميشناسند. يک راه ساده براي حل چنين مسائلي اين است که تابع هدف به عنوان ترکيب خطي از توابع هدف چندگانه در نظر گرفته شود. يعني اگر f1(x) و f2(x)دو تابع هدف ممکن باشند، براي بهينهسازي، يک تابع هدف جديد به صورت زير در نظر مي گيريم: f(x)=α1f1(x)+ α2f2(x) α1 و α2 ضرايب ثابتي هستند که مقادير آنها بيانگر اهميت يا وزن يک تابع هدف نسبت به ديگري است.
سطوح تابع هدف مکان همه نقاطي که در "مقدار ثابت= c = f(x) " صدق ميکنند، يک ابرصفحه را در فضاي طراحي تشکيل ميدهد. به ازاي هر مقدار ثابت c يکي از اين سطوح وجود دارد. با رسم سطوح تابع هدف همراه با سطوح قيدها به آساني ميتوان نقطه بهينه را پيدا کرد. اما وقتي تعداد متغيرهاي طراحي بيش از دو يا سه متغير باشد، سطوح قيدها و تابع هدف پيچيده ميشوند و حتي نميتوان آنها را مشاهده کرد. در اين حال مسئله بايد تنها به عنوان يک مسئله کاملاً رياضي حل شود.
فرموله کردن فرموله کردن مسئله: تبديل يک مسئله بهينهسازي واقعي به يک مسئله بهينهسازي رياضي
مثال 1-1 يک بنگاه توليدي، دو محصول A و B را با استفاده از دو منبع محدود توليد ميکند. حداکثر 1000 واحد از منبع 1 و 250 واحد از منبع 2 در هفته موجود است. توليد يک واحد از محصول A به يک واحد از منبع 1 و 0/2 واحد از منبع 2 ، و توليد هر واحد از محصول B به 0/5 واحد از منبع 1 و 0/5 واحد از منبع 2 نياز دارد. هزينه هر واحد از منبع 1، 0.375-0.00005u1 است که u1 تعداد واحد هاي به کار رفته از اين منبع ميباشد. هزينه هر واحد از منبع 2 ، 0.75-0.0001u2 است که u2 تعداد واحدهاي به کار رفته از منبع 2 است. قيمت هاي فروش هر واحد از محصولات A و B به صورت زير داده شده است: که xA و xB به ترتيب تعداد واحدهاي فروخته شده از محصولات A و B است. با فرض اينکه بنگاه بتواند همه واحدهاي ساخته شده را بفروشد، مسئله بيشينه کردن سود در يک هفته را فرمولبندي کنيد.
مثال 1-1 (ادامه) متغيرهاي طراحي را تعداد واحدهاي ساخته شده از A و B فرض کنيد. بردار طراحي عبارتست از: مقدار مورد نياز از منبع 1، (xB 0/5+xA) و از منبع 2، (xB0/5+xA0/2) در هفته است. قيدهاي منابع عبارتند از: کرانهاي پايين براي متغيرهاي طراحي عبارتند از:
مثال 1-1 (ادامه) هزينه کل منابع 1 و 2 در هفته به صورت زير ميباشد: و کل درآمد از فروش محصولات A وB ، در هفته عبارتست از:
مثال 1-1 (ادامه) سود کل با کاستن هزينه کل از درآمد کل به دست ميآيد. چون تابع هدف که بايد کمينه شود، عبارت از منفي سود در يک هفته است، پس f(X) به صورت زير خواهد بود: همچنين قيدها را نيز ميتوان به صورت استاندارد زير نوشت: