بهینه‌سازی با استفاده از نرم‌افزار GAMS

آبـی

کاربر بیش فعال
کاربر ممتاز
با سلام،

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

با تشکر!
 

juvefans

کاربر فعال تالار مهندسی برق ,
کاربر ممتاز
سلام
دوستان من یک سوال داشتم .
در این کد که در این آدرس موجود هست ، مثال 4e کتاب هست . من چطوری میتونم اون جدول خروجی کتاب که توانهای تولیدی هر واحد رو مشاهده کنم ؟ در خروجی چی باید بنویسم ؟

http://www.gams.com/modlib/libhtml/dispatch.htm

اگر ممکنه در مورد بخش های این کد کمی راهنمایی بفرمایید .:)
ممنون:gol:
 

آبـی

کاربر بیش فعال
کاربر ممتاز
سلام
دوستان من یک سوال داشتم .
در این کد که در این آدرس موجود هست ، مثال 4e کتاب هست . من چطوری میتونم اون جدول خروجی کتاب که توانهای تولیدی هر واحد رو مشاهده کنم ؟ در خروجی چی باید بنویسم ؟

http://www.gams.com/modlib/libhtml/dispatch.htm

اگر ممکنه در مورد بخش های این کد کمی راهنمایی بفرمایید .:)
ممنون:gol:

سلام دوست عزیز، :gol:
صورت سوال رو بذارید که بدونم دقیقاً چی مد نطرتونه.
 

juvefans

کاربر فعال تالار مهندسی برق ,
کاربر ممتاز
سلام
دوستان فایلی به عنوان مثال از نحوه تعریف شبکه قدرت در نرم افزار gams دارید ؟ ( چون در کدهای موجود در اینترنت کاری به سوسپدانس و .. ندارند )

اطلاعات موجود ژنراتورها :
PGmax
PGmin

خطوط شبکه :
Rij
Xij
Bij(sh)
تعداد خط بین دو باس
ظرفیت حداکثر هر خط انتقال

هدف : تعیین مقدار تلفات ( پخش بار ساده که با دست یا هر نرم افزاری انجام میدیم ) و تعیین تعداد خطوط لازم برای احداث TNEP

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

خیلی ممنون :gol:
 

juvefans

کاربر فعال تالار مهندسی برق ,
کاربر ممتاز
یک سوال داشتم : اعداد مختلط در این نرم افزار چطوری تعریف میشن ؟
 

آبـی

کاربر بیش فعال
کاربر ممتاز
سلام
دوستان فایلی به عنوان مثال از نحوه تعریف شبکه قدرت در نرم افزار gams دارید ؟ ( چون در کدهای موجود در اینترنت کاری به سوسپدانس و .. ندارند )

اطلاعات موجود ژنراتورها :
PGmax
PGmin

خطوط شبکه :
Rij
Xij
Bij(sh)
تعداد خط بین دو باس
ظرفیت حداکثر هر خط انتقال

هدف : تعیین مقدار تلفات ( پخش بار ساده که با دست یا هر نرم افزاری انجام میدیم ) و تعیین تعداد خطوط لازم برای احداث TNEP

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

خیلی ممنون :gol:

سلام، :gol:
عذر می‌خوام دوست عزیز بابت این که دیر جواب می‌دم؛ خودم هم درگیر امتحانا و پروژه‌ها هستم.
می‌تونید کتاب Nonlinear Optimization Applications Using the GAMS Technology از آقای Neculai Andrei رو ببینید. کاربردهای GAMS توی صنایع مختلف رو با مثال تشریح کرده که فصل مربوط به برقش (فصل 6) می‌تونه بهتون کمک کنه.
پیروز و سربلند باشید!
 

آبـی

کاربر بیش فعال
کاربر ممتاز
یک سوال داشتم : اعداد مختلط در این نرم افزار چطوری تعریف میشن ؟
معمولاً مرسوم نیست که بطور مستقیم از اعداد مختلط استفاده بشه؛ چون این کار نیازمند استفاده از Solverهای مخصوص هستش و بطبع باعث افزایش پیچیدگی و کندتر شندن روند حل می‌شه. پس با تکنیک‌های خاصی، دو بخش حقیقی و موهومی رو از هم جدا می‌کنن و مابقی ماجرا...
برای کسب اطلاعات بیشتر، می‌تونید از فایل زیر استفاده کنید:

[h=3]Solving Systems of Linear Equations with GAMS[/h]
 

juvefans

کاربر فعال تالار مهندسی برق ,
کاربر ممتاز
سلام، :gol:
عذر می‌خوام دوست عزیز بابت این که دیر جواب می‌دم؛ خودم هم درگیر امتحانا و پروژه‌ها هستم.
می‌تونید کتاب Nonlinear Optimization Applications Using the GAMS Technology از آقای Neculai Andrei رو ببینید. کاربردهای GAMS توی صنایع مختلف رو با مثال تشریح کرده که فصل مربوط به برقش (فصل 6) می‌تونه بهتون کمک کنه.
پیروز و سربلند باشید!

ممنون :smile:

فقط من هرچی دنبال این کتاب گشتم ، نسخه رایگان pdf پیدا نشد . شما لینکی از این کتاب دارید که بتونم پیداش کنم ؟
:que:
 

Ir. A. P

عضو جدید
کاربر ممتاز
سلام
روش های مختلف تعریف ست رو در نرم افزار گمز میخواستم بدونم وقتی عبارتی رو بین دوتا % میذاریم یعنی چی؟
مثلا اینطوری:
/%h /%h_ini% * %h_fin
 

آبـی

کاربر بیش فعال
کاربر ممتاز
سلام
روش های مختلف تعریف ست رو در نرم افزار گمز میخواستم بدونم وقتی عبارتی رو بین دوتا % میذاریم یعنی چی؟
مثلا اینطوری:
/%h /%h_ini% * %h_fin

درود، :gol:
بابت اینکه دیر جواب سوالتون رو میدم، عذر میخوام؛ چند وقتی بود، کسی دیگه مایل به یاد گرفتن این برنامه نبود (!)، این بود که منم به تاپیک سر نزده بودم... خلاصه شرمنده‌ام!
اما راجع به سوالتون؛
تعریف setهای یک بعدی، خیلی ساده‌ست و فکر نمیکنم مشکل خاصی وجود داشته باشه. این نوع ست‌ها رو معمولاً به صورتهای زیر، تعریف می‌کنن:

کد:
set      first     /a, 1, "test", 1990/
که این set رو میده:
کد:
first = {a, 1 , "test" , 1990}

کد:
set      second     /a1*a5, a7, a8*a10/
که این set رو میده:
کد:
second = {a1, a2, a3, a4, a5, a7, a8, a9, a10}

کد:
set      third     /a*d,f/
که این set رو میده:
کد:
third = {a, b, c, d, f}

این setها اشتباه تعریف شدن:
کد:
set illegal1 / a20bc * a10bc /
illegal2 / a1x1 * a9x9 /
illegal3 / a1 * b9 /

برای تمام انواع setها، مثل بقیه مباحث مربوط به این برنامه، یه فایل example وجود داره؛ به اسم sets.gms. برای دیدن نمونه‌های بیشتر میتونید به این فایل مراجه کنید که توی help برنامه، قابل دسترسیه.

پیروز باشید و بمانید!
:gol:
 

Ir. A. P

عضو جدید
کاربر ممتاز

درود، :gol:
بابت اینکه دیر جواب سوالتون رو میدم، عذر میخوام؛ چند وقتی بود، کسی دیگه مایل به یاد گرفتن این برنامه نبود (!)، این بود که منم به تاپیک سر نزده بودم... خلاصه شرمنده‌ام!
اما راجع به سوالتون؛
تعریف setهای یک بعدی، خیلی ساده‌ست و فکر نمیکنم مشکل خاصی وجود داشته باشه. این نوع ست‌ها رو معمولاً به صورتهای زیر، تعریف می‌کنن:

کد:
set      first     /a, 1, "test", 1990/
که این set رو میده:
کد:
first = {a, 1 , "test" , 1990}

کد:
set      second     /a1*a5, a7, a8*a10/
که این set رو میده:
کد:
second = {a1, a2, a3, a4, a5, a7, a8, a9, a10}

کد:
set      third     /a*d,f/
که این set رو میده:
کد:
third = {a, b, c, d, f}

این setها اشتباه تعریف شدن:
کد:
set illegal1 / a20bc * a10bc /
illegal2 / a1x1 * a9x9 /
illegal3 / a1 * b9 /

برای تمام انواع setها، مثل بقیه مباحث مربوط به این برنامه، یه فایل example وجود داره؛ به اسم sets.gms. برای دیدن نمونه‌های بیشتر میتونید به این فایل مراجه کنید که توی help برنامه، قابل دسترسیه.

پیروز باشید و بمانید!
:gol:
خواهش میکنم
ممنون از توجه شما:gol:
ولی نتونستم بفهمم عبارتی رو که بین دوتا علامت درصد میذارن یعنی چی؟
 

آبـی

کاربر بیش فعال
کاربر ممتاز
خواهش میکنم
ممنون از توجه شما:gol:
ولی نتونستم بفهمم عبارتی رو که بین دوتا علامت درصد میذارن یعنی چی؟

خواهش می‌کنم. حقیقتش من خودم تا حالا به setی برخورد نکردم که اینجوری که شما می‌فرمایید، تعریف شده باشه و به همین دلیل کاربردش رو اینجا متوجه نمی‌شم. اگه کد خاصی دارید، برام بفرستید تا بررسی کنم.
 

Ir. A. P

عضو جدید
کاربر ممتاز
من فهمیدم یعنی از کسی پرسیدم وقتی یه بازه رو میخوایم تعریف کنیم ب عنوان ست میتونیم تو متلب ابتدا و انتهای بازه رو به صورت استراکچر تعریف کنیم بعد که میخوایم تو گمز فراخوانی کنیم برای خوندن اون استراکچر باید بین دوتا علامت درصد بذاریمش
 

آبـی

کاربر بیش فعال
کاربر ممتاز
من فهمیدم یعنی از کسی پرسیدم وقتی یه بازه رو میخوایم تعریف کنیم ب عنوان ست میتونیم تو متلب ابتدا و انتهای بازه رو به صورت استراکچر تعریف کنیم بعد که میخوایم تو گمز فراخوانی کنیم برای خوندن اون استراکچر باید بین دوتا علامت درصد بذاریمش

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

ممنون بابت اطلاعات خوبتون :gol:
 

amin dd

عضو جدید
سلام
من ی مدل رو ران گرفتم ک تو پنجره no active process چندتا سوال داشتم
مدل من MIP گرفتم ولی نمیفهمم LP status (2) چیه اون وسط
دوم اینکه C_IM رو تعریف کردم ولی نمیفهمم اون خط چیه
مرسی اگه یکی کمک کنه
 

آبـی

کاربر بیش فعال
کاربر ممتاز
سلام
من ی مدل رو ران گرفتم ک تو پنجره no active process چندتا سوال داشتم
مدل من MIP گرفتم ولی نمیفهمم LP status (2) چیه اون وسط
دوم اینکه C_IM رو تعریف کردم ولی نمیفهمم اون خط چیه
مرسی اگه یکی کمک کنه

درود :gol:
هر دو خطاتون مربوطه به اینه که ناحیه ممکن پاسخ مسئله‌تون (Feasible Region) با توجه به قیدهایی که تعریف کردید، از سمتی که بهینه‌سازی قراره انجام بشه، بازه؛ یعنی فضای ممکن، نامتناهیه. در یک کلام، اگه مدلسازیتون دقیقه، برنامه‌تون یه جایی می‌لنگه.
پیروز و سربلند باشید!
 

amin dd

عضو جدید
سلام
من ی برنامه نوشتم
وقتی ی قید رو اضافه میکنم تو result دوتا SolEQU و SolVAR رو نمیده
ولی بدون اون قید ریزالت درست میده

 

ahr69

عضو جدید
با سلام

ببخشید دوستان من در نصب این نرم افزار دچار مشکل شدم license file میخواد لازمه؟کجا باید کپی اش کنم؟
 

amin dd

عضو جدید
سلام
چطوری میتونم اینو تو گمز بنویسم :
w(t,n)=w(t-1,n) c
اون c چیزی نیس. میخاستم اینجا درس بنویسه
 

masood7up

عضو جدید
سلام بچه ها من یه تمرین از گمز دارم بلد نیستم کسی میتونه بهم کمک کنه ؟؟؟
 

hosininasab

عضو جدید
سلام ببخشید این لینک خراب شده میشه یه لینگ جدید بزارین منم استفاده کنم
 

hosininasab

عضو جدید
لینک کتاب خرابه

لینک کتاب خرابه

ممنون :smile:

فقط من هرچی دنبال این کتاب گشتم ، نسخه رایگان pdf پیدا نشد . شما لینکی از این کتاب دارید که بتونم پیداش کنم ؟
:que:


ببخشید لینک کتاب مورد نظر خراب شده می شه لینک جدید بزارین؟ ویا دز صورتت امکان برام ایمیل کنید؟ ممنون
 
آخرین ویرایش توسط مدیر:
بالا