فرض کنید مجموعه ای تحت عنوان i داریم که به شکل زیر تعریف شده باشد،
Set i/1*10/;
اگر بخواهید تمامی زیر مجموعه های j عضوی ( مانند {1,2} , {1,3,7} ) را در کد نویسی به کار ببرید چگونه این عمل را انجام می دهید؟
ضمناً مناسب تر است که کامنت های خود، که شامل کد می باشند، را یک بار در GAMS و یا Notepad کد نویسی کرده و سپس به عنوان کامنت ارسال کنید.
با تشکر
مدیریت سایت gamsbook.ir
ایمیل: Support@gamsbook.ir
شماره تماس: 3325-405—0919
سلام
ببخشید اشتراک دو مجموعه در گمز چطور باید بنویسیم؟
سلام
سوالتون رو شفاف تر لطفا مطرح کنین. مثال بیارید
با سلام
محدودیت زیر برای فروشنده ی دوره گرد یالی هست می خواستم بدونم باید چطوری وارد گمزش کنم . تا امشب بیشتر وقت ندارم که کدش کنم .
yk =|s|-1 for all |s|=2,…,n-2 j є ES∑
j є ES زیر سیگما هست و به معنی یالی هایی که عضو زیر تور S هستند است
yk متغییر صفر و یک به معنی اینکه از یال K ام عبور کنیم یا نه
|s| کاردینالتی مجموعه ی S هست
ممنون از پاسخ شما
سلام
محدودیت ساب تور رو سرچ بزنین تو مقالات، معادل این نوشته شده با n, n-1 و u
سلام وقت همگی بخیر
آیا میشه تو گمز یه اندیس تعریف کرد( /k1*k100/) و سه تا زیر مجموعه ازش ساخت(mk,bk,ck) و تو محدودیتی که به گمز میدیم ازش بخوایم هر بار از kهای عضو یک زیر مجموعه استفاده کنه؟
(مثلا سور محدودیت رو jه که 3 عضو داره)
سلام
بله میشه. مثلا می تونین یه اندیس دیگه به اسم i تعریف کنین که از 1 تا 3 تغییر می کنه. بعد یه مجموعه دیگه به اسم rel(i,k تعریف کنین ازش به عنوان شرط تو محدودیت ها استفاده کنین.
یه همچین چیزی میشه. ممکنه نیاز به تغییر داشته باشه.
با سلام.
یک محدودیت دارم برای حذف زیر تور. تمام گره های موجود رو با مجموعه v نشون میدیم. این محدودیت برای تمامی زیر مجموعه های v بجز مجموعه تهی و خود v باید اعمال بشه. بصورت زیر:
sum((i,j),x(i,j))<=(tedad azaie majmue s)-1; be ezay har s zir majmue v, sv, s{}
به چه صورت نوشته می شود؟
سلام
شما از یه محدودیت استاندارد که از مقالات گرفته شده باشه و قطعا درست باشه باید استفاده کنین. من بدون اون فرمول نمیتونم خدمت شما نظری بدم.
با سلام
من میخواهم تمام زیرمجموعه های یک مجموعه را تعریف کنم، از چه دستوری باید در گمز استفاده کنم؟
سلام
مثال زیر نشون میده که k شامل زیر مجموعه های دو عضوی مجموعه ی i هست. برای بقیه مزیر مجموعه ها هم شما باید اندیس های چند بعدی دیگه ای مثل k تعریف کنین. مث k1 که سه بعدیا رو نشون میده.
set i/1*10/;
alias(i,m,j);
set k1(i,j,m),k(i,j);
k(i,j)=yes;
k1(i,j,m)=yes;
حالا اگه شرایط دیگه ای هم داشته باشین میتونین با دلار اعمالش کنین. مث مثال زیر:
k(i,j)$(ord(i) < ord(j)=yes;
امکانش هست جواب این تمرین را هم بگذارید؟
گذاشته بودما. یادم نیست کجاست الان!
ولی تو کامنتای پستای دیگه هست حتما. پیدا کردم میذارم حتما و خبر میدم بهتون.