Кіріспе

Сызықтық бағдарламалауға арналған оптималдау бағдарламалық кешені

IBM ILOG CPLEX Optimization Studio (көбінесе жай ғана CPLEX деп аталады) – оптималдау бағдарламалық кешені.

Тарих

CPLEX Optimizer C бағдарламалау тілінде жүзеге асырылған симплекс әдісінің құрметіне аталған, бірақ қазіргі таңда ол математикалық оптимизацияның басқа түрлерін де қолдайды және C-ден өзге де интерфейстерді ұсынады. Оны бастапқыда Роберт Э. Биксби жасады және 1988 жылдан бастап CPLEX Optimization Inc. компаниясы коммерциялық тұрғыда сатты. 1997 жылы оны ILOG компаниясы сатып алды, ал кейіннен 2009 жылдың қаңтар айында ILOG компаниясын IBM сатып алды. CPLEX IBM компаниясымен белсенді түрде дамытылуда.

Ерекшеліктері

IBM ILOG CPLEX Optimizer бүтін сандық бағдарламалау мәселелерін, бастапқы немесе дуалды симплекс әдісінің нұсқаларын немесе кедергілік ішкі нүкте әдісін қолдана отырып, өте үлкен сызықтық бағдарламалау мәселелерін, дөңес және дөңес емес квадраттық бағдарламалау мәселелерін, сондай-ақ дөңес квадраттық шектеулермен берілген мәселелерді (екінші реттік конус бағдарламалау немесе SOCP арқылы шешіледі) шешеді. CPLEX Optimizer-де C++, C# және Java тілдеріне интерфейстерді ұсынатын Concert деп аталатын модельдеу қабаты бар. Сондай-ақ, C интерфейсіне негізделген Python тіліне арналған интерфейс бар. Сонымен қатар, қателерді жою және басқа да мақсаттар үшін дербес Interactive Optimizer атқарылатын файлы ұсынылады. CPLEX Optimizer-ға AIMMS, AMPL, GAMS, OptimJ және TOMLAB сияқты тәуелсіз модельдеу жүйелері арқылы қол жеткізуге болады. Бұдан өзге, AMPL CPLEX CP Optimizer-ге интерфейс ұсынады. Толық IBM ILOG CPLEX Optimization Studio математикалық бағдарламалауға арналған CPLEX Optimizer, шектеулер бағдарламалауға арналған CP Optimizer, Оптимизациялық бағдарламалау тілі (OPL) және тығыз байланысты IDE-ден тұрады.

Шығару тарихы

IBM ILOG-ті сатып алғанға дейін CPLEX тобы CPLEX-тің шығарылу тарихын жариялады. + Версиясы Шығарылған күні Негізгі ерекшеліктері 22.1.1 2022 жылдың желтоқсаны Python 3.7 қолдауы тоқтатылды, жаңа шешуші параметр қосылды. 22.1.0 2022 жылдың наурызы Python 3.9 және 3.10 қолдау қосылды, жаңа шешуші параметрлер қосылды. 20.1 2020 жылдың желтоқсаны Ең төменгі баға бағасының тиімділігін арттыру, жаңа "ең төменгі бағаға баса назар аудару" режимі және т.б. 12.10 2019 жылдың желтоқсаны MIP-тің жұмыс істеуін жақсарту және 12.8 нұсқасында енгізілген басқа жалпы кері шақыруларға жалпы тармақталған кері шақыруды қосу. 12.9 2019 жылдың наурызы Көп мақсатты оңтайландыруға тікелей қолдау, кері шақыру функционалдылығын жақсарту. 12.8 2017 жылдың желтоқсаны Жалпыға бірдей кері шақыру, қателерді жоюды жеңілдету үшін API рекордері, subMIP бақылау параметрлері, Download and Go ұсынысы. 12.7 2016 жылдың қарашасы Автоматтандырылған бөгеушілерді ыдырау, модельдеуге көмек құралы, орындаудың өзгермелілігін жақсы бағалау үшін runseeds командасы. 12.6.2 2015 жылдың маусымы Өнімділікті жақсарту (негізінен SOCP, MISOCP, конвекс емес QP үшін), бұлтты негіздегі оңтайландыруға қолдау. 12.6 2013 жылдың желтоқсаны Қиыршық емес QP және MIQP-ды қолдау, MIP-ға арналған тамырдас түйіндегі параллель MIP және көбірек параллельділік. 12.5 2012 жылдың қазаны MIP-нің өнімділігін жақсарту, өнімділік ауытқуының кездейсоқ тұқым параметрі, қашықтағы объект, QCP-ге арналған дуалдар, детерминистік тюнинг құралы. 12.4 2011 жылдың қарашасы Детерминистік уақыт шектеуі қолдау, SOCP-тер үшін дуалдар, Концерттегі квадралық экспрессия API, барлық алгоритмдердегі, бірақ әсіресе MIP-дегі өнімділікті жақсарту. 12.3 2011 жылдың маусымы 64 бит индекстеуді қажет ететін үлкен нөлдік емес санауларды, құрғақ емес QP үшін жергілікті оптималдық және жаһандануды қолдау. 12.2 2010 жылдың маусымы Тамыр түйініндегі қосымша параллелизм, детерминистік параллель бір мезгілде LP-ді оңтайландыру, сонымен қатар кейбір қосымша кедергілер өнімділігін жақсарту және MIP-тердегі шартты емес негіз матрицаларын диагностикалау үшін қосымша құралдар. 12.0 2009 жылдың сәуірі IBM ILOG-ті сатып алғаннан кейінгі алғашқы нұсқа. Python, MATLAB және Excel үшін қосылғыштар кіреді. Детерминистік параллель кедергі де қамтылған. 11.0 2007 жылдың қазаны Аралас бүтін санды бағдарламалау (MIP) модельдерінің өнімділігін арттыру және параллель MIP-ді оңтайландыруды жақсарту. MIP шешімдерінің жиынтық функциясы мен өнімділікті реттеуді енгізу. 10.0 2006 жылдың қаңтары Primal simplex және кедергілік әдістердің, сондай-ақ MIP оптимизаторының өнімділігін жақсарту. Индикаторлық шектеулер мен шешімді жылтырату эвристикасы енгізіліп, іске асырылмайтын талдаудың жетілдірілуі жасалды. 9.0 2003 жылдың желтоқсаны Пермиалдық және қос симплекстік әдістердің және MIP оптимизаторының өнімділігін жақсарту. Ол NET пайдаланушылары үшін ILOG Concert Technology және квадраттық шектеулер бар бағдарламаларды қолдауды қамтиды. 8.0 2002 жылдың шілдесі МИБ-ның тиімділігін арттыру және аралас бүтін сандар квадрациялық бағдарламаларын қолдау. 7.5 2001 жылдың желтоқсаны ILOG Java пайдаланушыларына арналған концерттік технология. 7.0 2000 жылдың қазаны ILOG C++ пайдаланушыларына арналған концерттік технология. 6.5 1999 жылдың наурызы Прималдық және қос симплекстік әдістердің және ILOG CPLEX аралас бүтін сандарды оңтайландырушының өнімділігін айтарлықтай жақсарту. 6.0 1998 жылдың сәуірі Прималдық және қос симплекстік әдістердің және CPLEX кедергілі оптимізатордың өнімділігін айтарлықтай жақсарту. 5.0 1997 жылдың қыркүйегі Жай C++ интеграциясы үшін жаңа жад моделі. 4.0.5 1996 жылғы наурыз CPLEX аралас бүтін санды шешуші енгізілген. 4.0 1995 жылдың желтоқсаны Желіні қауіпсіз қолдануға мүмкіндік беретін жетілдірілген бағдарламалау интерфейсі (API) қайта құрылды. 3.0.8 1995 жылдың наурызы CPLEX кедергілерді шешуші паралельді енгізілген. 3.0 1994 жылдың сәуірі CPLEX кедергілерді шешуші енгізілген. 2.1 1993 жылғы наурыз CPLEX Presolve алгоритмдерін енгізу. 2.0 1992 жылдың сәуірі Жүзеге асыруды жақсарту. 1.2 1991 Екілік симплекс әдісі мен CPLEX аралас бүтін сандарды оңтайландырушыны қолдау. 1.0 1988 Прималдық симплекстік әдіс