تلرانس در ناحیه شدنی

در بیشتر مسائلی که با آنها سر و کار داریم، محدودیت ها محدودیت های سخت نام دارند. به عبارتی وقتی میگوییم که عبارت سمت چپ باید از عبارت سمت راست کوچکتر باشد، این امر قطعی است و ما اجازه ی تخطی از آن را نخواهیم داد. توجه بفرمایید که تخطی […]

تلرانس متغیرهای integer در گمز

هدف از حل مدلهای MIP رسیدن به یک جواب شدنی و بهینه است که باید متغیرهای integer دخیل در آن مقادیر صحیحی به خود بگیرند. در پاره ای از اوقات پیش می آید که در خروجی گمز مشاهده می شود که یک متغیر مثلا عددی نزدیک به صفر (مثلا ۳ […]

نمایش symbol های گمز و نمادهایی که زائد تعریف شده اند

در پاره ای از اوقات تمایل داریم که تمامی نمادهایی را که در گمز تعریف کرده ایم را به صورت یکجا و دسته بندی شده مشاهده کنیم. مثلا مایلیم ببینیم که چه مجموعه، پارامتر و یا محدودیتی تعریف کرده ایم. برای اینکار در قسمت commond window (نواری که در بالای […]

ایجاد یک فایل GDX در گمز و نوشتن داده روی آن توسط دستور put

ایجاد فایل GDX و نوشتن داده روی آن راه های متفاوتی دارد، یک از این راه ها استفاده از دستور put است. کد زیر را در نظر بگیرید: در کد فوق ما ابتدا یک مجموعه و دو پارامتر a,b را تعریف کرده ایم، سپس توسط دستور file یک فایل به […]

انواع حلقه در گمز | GAMS loops

مانند هر زبان برنامه نویسی دیگر در گمز نیز حلقه ها انواع مختلفی دارند که بسته به کاربرد باید از یک یا ترکیبی از آنها استفاده نمود. در این تاپیک این حلقه ها به طور مختصر و مفید آموزش داده شده اند. در صورت وجود هر گونه سوالی در بخش […]

دستور solve

پس از تعریف مدل، نوبت به دستورات مربوط به حل مدل می رسد. همچنین همانطور که قبلا ذکر شد، نرم افزار GAMS خود یک نرم افزار solver نیست بلکه حل مدل ها را از طریق دیگر نرم افزارهایی که در آن تعبیه شده است انجام می دهد.

انتخاب نوع solver

مدل هایی که در GAMS نوشته می شوند به طور مستقیم با استفاده از برنامه های دیگر نظیر Cplex, Baron, Lingo و… حل می شوند. هر مدلی که می نویسید باید و باید solver مربوطه را نیز مشخص کنید. این عمل به دو صورت امکان پذیر است.

دستورات نهایی مدل

یک مدل پس از ورود به محیط نرم افزار، نیازمند گذاره هایی تحت عنوان نام گذاری مدل و حل مدل خواهد بود. همچنین دستورات دلخواه دیگر مانند display نیز جزء دستورات نهایی مدل می باشند که در این بخش به تشریح آنها خواهیم پرداخت.