mipstopexpr1.gms : mip stop 표현 테스트

설명

이 기능을 지원하는 솔버의 솔버 링크 옵션 'mipstopexpr'을 테스트합니다.
밉 중지 표현식은 중지 공식화에 높은 유연성을 제공합니다.
분기 및 바인딩 기준.

기고자: Renke Kuhlmann, 2020년 10월

소형 모델 유형 :무료 슬롯


카테고리 : 무료 슬롯 테스트 라이브러리


메인 파일 : mipstopexpr1.gms

$title 'mip 중지 표현 테스트' (MIPSTOPEXPR1,SEQ=834)
$if not '%무료 슬롯mip%' == '' $set 솔버 %무료 슬롯mip%
$설정되지 않은 경우 솔버 $set 솔버 구로비
$onText
이 기능을 지원하는 솔버의 솔버 링크 옵션 'mipstopexpr'을 테스트합니다.
밉 중지 표현식은 중지 공식화에 높은 유연성을 제공합니다.
분기 및 바인딩 기준.

기고자: Renke Kuhlmann, 2020년 10월
$offText

$call gamslib -q 272

$call.checkErrorLevel 게임 dicex.gms lo=%무료 슬롯lo% 솔버=%solver% --nosolve=1 s=0

$onEcho > %solver%.opt
mipstopexpr "nodusd >= 1 && objval < 10000 || nodusd >= 2"
$offEcho

$onEcho > dicex_solve.gms
옵션 resLim = 50, optCr = 0.0, optCa = 0.99, 스레드 = 1;
wnx를 최대화하는 mip를 사용하여 diceU를 해결합니다.
abort$(diceU.solvestat <> %solveStat.terminatingBySolver% and diceU.solvestat <> %solveStat.userInterrupt%) '잘못된 해석 통계';
abort$(diceU.modelstat <> %modelStat.integerSolution% 및 diceU.modelstat <> %modelStat.noSolutionReturned%
    및 diceU.modelstat <> %modelStat.intermediateNonInteger% 및 diceU.modelstat <> %modelstat.IntermediateNonOptimal%) '잘못된 모델 통계';
abort$(diceU.nodusd > 2) '잘못된 노드 수';
$offEcho

$call.checkErrorLevel 게임 dicex_solve.gms lo=%무료 슬롯lo% 솔버=%solver% optfile=1 r=0

$onEcho > %solver%.opt
mipstopexpr "nodusd > abc"
$offEcho

$onEcho > dicex_solve.gms
옵션 resLim = 50, optCr = 0.0, optCa = 0.99, 스레드 = 1;
wnx를 최대화하는 mip를 사용하여 diceU를 해결합니다.
abort$(diceU.solvestat < %solveStat.setupFailure%) '잘못된 해석 통계';
$offEcho

$call.checkErrorLevel 게임 dicex_solve.gms lo=%무료 슬롯lo% 솔버=%solver% optfile=1 r=0