دوستان
آخرین مطالب
دیگر موارد
 

در این مطلب قصد داریم تا sttement ها یا بیانیه های زبان برنامه نویسی gams را شرح دهیم.

هر عبارت در GAMS به یکی از دو گروه طبقه بندی می شود:

  • statement ها و عبارات تعریفی
  • statement های اجرایی

یک statement کلاس یک نماد را توصیف می کند. اغلب مقادیر اولیه در یک statement ارائه می شود، سپس ممکن است آن را یک تعریف نامیده شود. تعیین روابط نمادین برای یک معادله یک تعریف است. statement و عبارات تعریفی عبارتند از:

دستورات اجرایی دستورالعمل هایی برای انجام اقداماتی مانند تبدیل داده ها، راه حل مدل و تولید گزارش هستند. statement های اجرایی عبارتند از:

 

توجه داشته باشید در حالی که یک انتساب یک دستور اجرایی است، نماد سمت چپ تخصیص را نیز تعریف می کند.

اگرچه آزادی زیادی در مورد ترتیب قرار دادن عبارات در برنامه GAMS وجود دارد، اما معمولاً از ترتیبات خاصی استفاده می شود. دو نوع متداول در ادامه مورد بحث قرار می گیرند.



:: برچسب‌ها: کد نویسی با گمس, GAMS, انجام پروژه با GAMS, بهینه سازی
ن : شهرام
ت : یکشنبه پانزدهم اسفند ۱۴۰۰

یکی از سبک‌های رایج سازمان‌دهی عبارات GAMS، داده‌ها را در ابتدا قرار می‌دهد و سپس مدل و دستورات راه‌حل را قرار می‌دهد.

Style 1:
Data:
Set declarations and definitions
Parameter declarations and definitions
Assignments
Displays
Model:
Variable declarations
Equation declarations
Equation definitions
Model definition(s)
Solution:
Solve(s)
Displays

در این سبک از سازماندهی، مجموعه ها در درجه اول قرار می گیرند. سپس داده ها با عبارات پارامتر، اسکالر و جدول مشخص می شوند. سپس، مدل با اعلان‌های متغیر، اعلان‌های معادله، تعاریف معادله و یک یا چند عبارت مدل تعریف می‌شود. در نهایت، مدل است / مدل ها حل شده و نتایج نمایش داده می شود. برای این سبک می توان به مدل trnsport اشاره کرد

سبک دوم با قرار دادن مدل قبل از داده ها بر مدل تأکید می کند. این یک دستور به ویژه زمانی مفید است که مدل به طور مکرر با مجموعه داده های مختلف حل شود.

Style 2:
Model:
Set declarations
Parameter declarations
Variable declarations
Equation declaration
Equation definition
Model definition
Data:
Set definitions
Parameter definitions
Assignments
Displays
Solution:
Solve
Displays

در اینجا، بین اعلام و تعریف جدایی وجود دارد. به عنوان مثال، مجموعه ها و پارامترها ممکن است ابتدا با عبارات زیر اعلام شوند:

Set       c         "crops" ;
Parameter yield(c)  "crop yield" ;

بعداً می توان آنها را با عبارات زیر تعریف کرد:

Set        c        / wheat, clover, beans / ;
Parameter  yield(c) / wheat     1.5
                      clover    6.5
                      beans     1.0  / ;

عبارت اول اعلام می کند که شناسه c یک مجموعه است و عبارت بعدی عناصر این مجموعه را تعریف می کند. به همین ترتیب، در عبارت دوم بازده به عنوان یک پارامتر اعلام می شود و بعداً داده های مربوطه داده می شود.

توجه داشته باشید

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



:: برچسب‌ها: کد نویسی با گمس, GAMS, انجام پروژه با GAMS
ن : شهرام
ت : یکشنبه پانزدهم اسفند ۱۴۰۰
 
موضوعات
برچسب ها
آرشیو مطالب
امكانات جانبي