انقلاب بلاک چین،‌ اقتصاد مقاومتی و زنجیره های تامین

دنیا در حال تغییر است. انسان‌ها و جوامع پذیرفته‌اند که ثروت واقعی زمان و انرژی آن‌هاست. برای تبادل این ثروت به ابزارهای قراردادی نیاز داریم. یکی از این ابزارها ارز یا به نحوی پول است. از قدیم‌الایام، وجود واسطه‌ها جهت معامله‌ی پول و یا هر کالا یا خدمت باارزش دیگری امری ضروری و حیاتی بود، زیرا تنها راه‌کار ممکن برای ایجاد ارزش‌افزوده و اعتماد بین طرفین بودند. این واسطه‌ها اغلب به‌واسطه‌ی اعتماد طرفین، مفسده‌های اقتصادی و تجاری به بار می‌آوردند. حال سؤال مطرح این است که آیا یک فرایند تبادل ثروت، بدون واسطه‌گر نیز می‌تواند شکل گیرد؟ در سال‌های اخیر یک راهکار جدید جهت حذف واسطه‌ها فراهم شده که با بهره‌گیری از ظرفیت‌های دنیای مجازی، منجر به تسهیل در مبادلات ارزی گشته است. این فناوری جدید زنجیره‌ی بلوک‌ها Blockchains نام دارد که در تقابل با پایگاه‌داده‌های سنتی قرار گرفته و داده‌ها به‌جای اینکه در جداول رابطه‌ای ذخیره شوند، در بلوکی از داده ذخیره می‌شوند. هر بلوک شناسه‌ی داده‌ای منحصربه‌فردی به نام هش Hash تولید می‌شود. این هَش حاوی تمام داده‌های جاری و قدیمی تراکنش‌ها است. زنجیره بلوکی یک فناوری متن‌باز است و متعلق به شخصی خاص نیست.

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

بهینه سازی مبتنی بر داده Data Driven Optimization

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

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

محدودیت های تنبل در CPLEX


بسته به شرایط فضای شدنی و تابع هدف، محدودیت‌ها عملکردهای متفاوتی از خود نشان می‌دهند: محدودیت‌های کارکردی، غیرکارکردی، الزام‌آور، غیرالزام‌آور، فعال، زائد و غیره. محدودیت‌های دیگری نیز در این فضا قابل ارائه است که برخی از خواص محدودیت‌های سنتی را دارا هستند: هم الزام‌آور و هم غیرالزام‌آور. جای تعجب نیست که چنین محدودیت‌هایی در علم بهینه‌سازی محاسباتی نقش‌آفرینی می‌کنند. یک دسته از این محدودیت‌ها به محدودیت‌های تنبل lazy constraints مشهور هستند. در این پست قصد داریم این دسته محدودیت‌ها را معرفی و با ویژگی‌ها و کارکردهای آن در نرم‌افزار CPLEX آشنا شویم.

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

تحقیق در عملیات: خلط جایگاه پژوهش و توسعه و تاثیر آن در معرفت پژوهشی

«تاکید بیش از حد بر روی شرایط رقابتی توسعه‌ی الگوریتم‌های سریع، اصولا غیرعقلانی بوده و در درازمدت بینشی جهت دستیابی به الگوریتم‌‌های مفید در پی نخواهد داشت.»، جان هوکر [۱]. مهمترین معضل شرایط رقابتی توسعه‌ی الگوریتم‌های کارا، ایجاد شرایط منصفانه جهت مقایسه است. شاید اولین ایده‌ای که به نظر می‌رسد این است که الگوریتم‌های پیشنهادی بر روی رایانه‌هایی با قدرت پردازش مساوی یا با قابلیت تنظیم اجرا شوند. لیکن فایق گشتن بر ابعاد پنهانی این معضل مانند مهارت‌های کدنویسی و تنظیمات اولیه قدری طاقت‌فرسا خواهد بود.

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

مساله حداکثر برش MAXCUT: مقایسه رهاسازی نیمه معین Semi-definite programming با رهاسازی خطی


برنامه‌ریزی نیمه‌معین semi-definite programming یا به‌اختصار SDP کلاسی از بهینه‌سازی محدب convex optimization است که کاربرد آن در علم تحقیق در عملیات بسیار موفق بوده است. پوسته عدد صحیح مسائل برنامه‌ریزی عدد صحیح را می‌توان با دقت بالایی با برنامه‌ریزی نیمه معین تقریب زد. در این پست قصد داریم به مسئله حداکثر برش MAXCUT در تئوری گراف پرداخته و رهاسازی نیمه‌معین آن را با رهاسازی خطی مقایسه نماییم.

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

نحوه ایجاد متغیر تصمیم چند بعدی در پلتفرم ++C با رابط Concert Technology

در این پست قصد داریم نحوه ایجاد یک دسته متغیر تصمیم سه بعدی را بررسی نماییم. در زبان OPL یک متغیر سه بعدی باینری به صورت زیر تعریف می‌شود:

i in 1..sizeSet1;
j in 1..sizeSet2;
k in 1..sizeSet3;
dvar Boolean x[i][j][k];

در زبان ++C از عبارت <>IloArray می‌توان جهت ایجاد لیستی از متغیرها (یک بردار متغیر تصمیم) و بدین ترتیب ماتریس‌های متغیر چند بعدی بهره گرفت. به عنوان مثال یک دسته متغیر تصمیم سه بعدی به صورت رویه‌ای که در ادامه آمده است، تعریف می‌شود. ابتدا لیست‌های مورد نظر تعریف می‌شود.

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

نصب نرم افزار گروبی (Gurobi) و یکپارچگی با Anaconda

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

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

حتما توجه بفرمایید که در حال حاضر تنها نسخه سازگار پایتون برای استفاده از قابلیت های گروبی نسخه ۲٫۷ می باشد. بنابراین توصیه می شود که از Anaconda با نسخه پایتون ۲٫۷ استفاده شود.

https://www.anaconda.com/downloads

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

معرفی متودولوژی برنامه ریزی محدودیت Constraint Programming

متدولوژی برنامه‌ریزی محدودیت Constraint Programming یا CP، یک فناوری ارضای محدودیت‌ها Constraint Satisfaction است که سابقه‌ی آن به علوم کامپیوتر، برنامه‌ریزی منطقی، تئوری گراف و هوش مصنوعی بر می‌گردد. CP راهکاری موثر و کارا جهت حل و بهینه‌سازی مسایلی که طبیعت ‌آنها تا حدی نامنظم هستند و نمی‌توان آن‌ها را به زبان ریاضی مدل‌سازی کرد. این مسایل شامل پنجره‌های زمانی، مسایل زمان‌بندی و تخصیص یا تعویض عملیات است.

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

رفع مشکل تحدب در مسایل درجه دو در نرم‌افزار IBM Ilog CPLEX

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

CPLEX Error 5002: Q in objective is not positive semi-definite (psd)

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

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

آشنایی با برنامه ریزی هندسی

معرفی و شمای کلی

نظریه برنامه‌ریزی هندسی (Geometric Programming) یا به اختصار GP در سال‌های ۱۹۶۱ الی ۱۹۶۷ توسط فیزیکدان نظری آقای زنر (Clarence Zener) مطرح گردید. هدف از این کار ارائه راهکار مطمئن برای حل مسایل غیرخطی با ساختارهای مشخص بود. متعاقبا در سال‌های بعدی آقای دافین (Richard Duffin) نظریه دوگان را برای حل مسایل غیرخطی در قالب برنامه‌ریزی هندسی ارائه کرد. از طرفی مشخصه‌های ساختاری مسایل برنامه‌ریزی هندسی، محققان و متخصصین حوزه بهینه‌سازی را به سمت طراحی الگوریتم‌های کارا مانند روش نقطه داخلی برای حل این دسته مسایل سوق داده است. به طور کلی مسایل GP دسته‌ی متمایزی از مسایل بهینه‌سازی در مجموعه‌ی برنامه‌ریزی محدب (Convex Programming) هستند.

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