صفر تا صد مدل سازی گروبی gurobi در پایتون python (بخش دوم)

 

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

بیشتر بخوانید

صفر تا صد مدل سازی گروبی gurobi در پایتون python (بخش اول)

 

با کامنت‌هایی که از دوستان عزیز گرفتم متوجه شدم که بسیاری در مراحل اجرای کدهای گروبی gurobi تحت زبان برنامه‌نویسی پایتون python به مشکل بر می‌خورند. در این پست و پست بعدی صفر تا صد اجرای یک مساله زنجیره تامین ساده تک سطحی و در هر مرحله احتمال بروز برخی مشکلات را بررسی می‌کنیم.

بیشتر بخوانید

بهینه سازی و فناوری پردازش گرافیکی GPU

 

توسعه دهندگان بسته‌های بهینه‌سازی در سال‌های اخیر فناوری پردازش موازی parallel computing به کمک کارت های گرافیکی نسل پیشرفته و قابلیت GPU computing را با حساسیت بالایی پیگیری می‌کنند. محدودیت‌های جدی در حل مسایل برنامه‌ریزی خطی linear programming، عدد صحیح integer programming و درجه دو quadratic programming با استفاده از پردازش GPU وجود دارد. شایان ذکر است که این امر تا این لحظه محقق نشده است. دلایل متعددی برای عدم تحقق این پدیده ‌می‌توان عنوان کرد. این محدودیت‌ها در این پست بحث و بررسی می‌شود.

بیشتر بخوانید

الگوریتم آزادسازی لاگرانژ در گروبی Gurobi

 

آزاد سازی لاگرانژ Lagrangian Relaxation یکی از تکنیک‌های ابتکاری رایج در حل مسائل بهینه‌سازی ترکیبیاتی است. این الگوریتم که مبتنی بر قضیه لاگرانژ است با آزادسازی همه یا برخی از محدودیت‌های مسئله، اطلاعاتی از جواب بهینه مسئله اصلی فراهم می‌کند. در این پست قصد داریم تکنیک آزادسازی لاگرانژ را بر روی مسئله تخصیص تعمیم‌یافته Generalized Assignment Problem به کمک نرم‌افزار Gurobi در پلتفرم پایتون پیاده‌سازی نماییم. هدف این مسئله بیشینه نمودن میزان تخصیص هر تسهیل به گره تقاضا به شرط محدودیت‌های متناظر است.

بیشتر بخوانید

دوره آموزشی

 

 

دوره آموزشی بهینه‌سازی مبتنی بر شی‌گرایی

 

هدف از این دوره آشنایی دانشجویان با بسته‌های نرم‌افزاری متن‌باز برنامه‌نویسی و بهینه‌سازی است. بدین جهت، ابتدا مقدمات برنامه‌نویسی شی‌گرا به کمک زبان‌های برنامه‌نویسی جاوا JAVA یا پایتون PYTHON معرفی و در ادامه با ایجاد اتصال بین پلتفرم‌های بهینه‌سازی چون GUROBI، DIPpy، Symphoni و … و یکی از زبان‌های برنامه‌نویسی شی‌گرا، مسایل کاربردی مختلف کدنویسی می‌شوند. پلتفرم‌های شی‌گرا یکی از پایه‌های اصلی محاسباتی در علوم داده‌ای Data Sciences به شمار می‌آیند. تنها هدف اصلی این دوره بهینه‌سازی مسایل کلاسیک نیست؛ در گام اول پیاده‌سازی الگوریتم‌های مقیاس‌پذیر و پیشرفته یکی از اهداف مهم این دوره است. در گام بعدی تبدیل ایده‌های داده‌ای به کمک ابزارهای بهینه‌سازی و فراکاوی Analytics به طرح‌ها و سامانه‌های کسب‌وکاری ارزشمند، مد نظر می‌باشد.

 

 

توجه !
فایل‌های دوره آموزشی برای کاربرانی که در دوره‌های آموزشی شرکت کرده اند قابل استفاده می‌باشند.

 

این محتوا برای اعضا قابل مشاهده است. لطفا وارد شوید

 

نصب نرم افزار گروبی Gurobi و یکپارچگی با پایتون Python

در این پست قصد داریم نحوه نصب نرم افزار گروبی را در رابط کاربری Anaconda قدم به قدم تشریح کنیم.

ابتدا به سایت زیر مراجعه کرده و با توجه به سیستم عامل و معماری توسعه (۶۴ بیتی یا ۳۲ بیتی)، نرم‌افزار را دانلود نمایید.

توصیه می شود که از Anaconda با نسخه پایتون ۳٫۷ استفاده شود. نرم‌افزار کاملا از نسخه پایتون ۳٫۷ پشتیبانی می‌کند.

https://www.anaconda.com/downloads

بیشتر بخوانید

آشنایی با برنامه ریزی مخروطی درجه دوم

رده خاصی از مسائل غیرخطی، جز دسته مسائل برنامه ریزی مخروطی درجه دوم (second order conic programs) قرار می‌گیرند که در زمینه‌های متعدد علوم کنترل، سرمایه‌گذاری، علوم مهندسی و پزشکی و عیره کاربرد دارند. امروزه با پیشرفت علوم رایانشی، این دسته مسایل با استفاده از الگوریتم‌های تخصصی نقطه درونی (interior point) که در اکثر نرم‌افزارهای تجاری توسعه داده شده‌اند قابل حل هستند.

 

بیشتر بخوانید