슬롯 머신gms : 가장 큰 작은 다각형 COPS 2.0 #1

설명

nv 변이 있는 다각형 중에서 최대 면적의 다각형을 찾습니다.
직경 d <= 1.

이 모델은 COPS 벤치마킹 제품군에서 나온 것입니다.
참조http://www-unix.mcs.anl.gov/~more/cops/.변의 수는 명령줄 매개변수를 사용하여 지정할 수 있습니다
--nv. COPS 성능 테스트는 nv = 25, 50, 75에 대해 보고되었습니다.
100

대형 모델 유형 :NLP


카테고리 : 슬롯 머신 모델 라이브러리


메인 파일 : 슬롯 머신gms

$title 가장 큰 작은 다각형 COPS 2.0 #1 (슬롯 머신SEQ=229)

$onText
nv 변을 갖는 다각형 중에서 최대 면적의 다각형을 찾습니다.
직경 d <= 1.

이 모델은 COPS 벤치마킹 제품군에서 나온 것입니다.
http://www-unix.mcs.anl.gov/~more/cops/를 참조하세요.

측면 수는 명령줄 매개변수를 사용하여 지정할 수 있습니다.
--nv. COPS 성능 테스트는 nv = 25, 50, 75에 대해 보고되었습니다.
100

Dolan, E D 등, JJ, 벤치마킹 최적화
COPS가 포함된 소프트웨어. 기술. 대표, 수학과 컴퓨터
과학부, 2000.

Graham, R L, 가장 큰 작은 육각형. J. 콤빈. 목. 18 (1975),
165-170.

게이, D, AMPL 모델.

키워드: 비선형 프로그래밍, 수학
$offText

$설정되지 않은 경우 nv $set nv 25

i '면' 설정 / i1*i%nv% /;

별칭(i,j);

양수 변수
   r(i) '극 반경(고정 정점까지의 거리)'
   theta(i) '극각(고정 방향에서 측정)';

변수polygon_area;

방정식
   객체
   거리(i,j)
   주문한(i);

OBJ..
   Polygon_area =e= 0.5*sum(j(i + 1), r(i + 1)*r(i)*sin(theta(i + 1) - theta(i)));

주문했어요(i+1)..
   세타(i) =l= 세타(i + 1);

거리(i,j)$(ord(j) > ord(i))..
   sqr(r(i)) + sqr(r(j)) - 2*r(i)*r(j)*cos(세타(j) - 세타(i)) =l= 1;

r.up(i) = 1;
theta.up(i) = 파이;

r.fx('i%nv%') = 0;
theta.fx('i%nv%') = 파이;

r.l(i) = 4*ord(i)*(카드(i) + 1 - ord(i))/sqr(카드(i) + 1);
theta.l(i) = pi*ord(i)/card(i);

모델 다각형 / 모두 /;

$if set workSpace 폴리곤.workSpace = %workSpace%

Polygon_area를 최대화하는 nlp를 사용하여 다각형을 해결합니다.