- صورتبندی سوال
- الگوریتم بهینهسازی
- محدودیتها
- ایدههای گسترش
- روند اجرا
- نحوه استفاده
- وابستگیها
- نویسندگان
صورت برنامهریزی :
.برنامه ریزی بالا خطی است زیرا قید ها خطی هستند و میتوان تابع هدف را با یک تابع خطی مانند تابع ثابت جایگزین کرد
پس قید ها را همانگونه که هستند با یک تابع هدف خطی دلخواه به
برنامه ریزی بالا را در جومپ پیاده سازی میکنیم.
model = Model(GLPK.Optimizer)
@variable(model,v[1:n])
@constraint(model, l .<= v)
@constraint(model, v .<= u)
@constraint(model, S*v .== mzeros)
@objective(model,Min,1)
optimize!(model)
و سالور یک جواب شدنی برای این برنامه ریزی می یابد.
محدودیتی در این بخش از مسابقه وجود ندارد و با نصب
در صورتی که پکیج های مورد نظر را در جولیا نصب داشته باشید میتوانید فایل نوتبوک مربوط به هر دور مسابقه را به صورت یکجا یا سلول به سلول اجرا کنید. در انتها یک فایل
با اجرای کامل کد خروجی مساله داده میشود و نیازی به فراخوانی مجزای تابعی نخواهید داشت.
برنامه در زبان جولیا نوشته شده و لیست پکیج های مورد نیاز در ادامه آمده است :
MAT
JuMP
GLPK
SparseArrays
LinearAlgebra
DelimitedFiles
در این بخش ابتدا همهی اعضای گروه به صورت مساله فکر کردند و سپس در یک جلسهی اسکایپ به صورت آنلاین، کد این سوال با مشارکت همهی اعضا نوشته شد به طور دقیق تر :
ایده های اولیه، رفع دیباگ، پیشنهاد برای نحوهی نوشتن کد : متین امینی
نوشتن کد و شیر اسکرین : آیدا افشارمحمدیان
ایده برای راه حل مساله و رفع دیباگ: : ملینا مهرانی
