설명
둘 사이에 매달려 있는 길이 L의 (균일한 밀도의) 사슬을 찾으세요 최소한의 위치 에너지를 갖는 점. 이 모델은 COPS 벤치마킹 제품군에서 나온 것입니다. 참조http://www-unix.mcs.anl.gov/~more/cops/.이산화 간격 수는 다음을 사용하여 지정할 수 있습니다. 명령줄 매개변수 --nh. COPS 성능 테스트가 완료되었습니다. nh = 50, 100, 200, 400에 대해 보고됨
대형 모델 유형 :NLP
카테고리 : 무료 슬롯 모델 라이브러리
메인 파일 : chain.gms
$title 행잉 체인 COPS 2.0 #3 (CHAIN,SEQ=231)
$onText
두 개 사이에 매달려 있는 길이 L의 (균일한 밀도의) 사슬을 구합니다.
최소한의 위치 에너지를 갖는 점.
이 모델은 COPS 벤치마킹 제품군에서 나온 것입니다.
http://www-unix.mcs.anl.gov/~more/cops/를 참조하세요.
이산화 간격 수는 다음을 사용하여 지정할 수 있습니다.
명령줄 매개변수 --nh. COPS 성능 테스트가 완료되었습니다.
nh = 50, 100, 200, 400에 대해 보고됨
Dolan, E D 등, JJ, 벤치마킹 최적화
COPS가 포함된 소프트웨어. 기술. 대표, 수학과 컴퓨터
과학부, 2000.
Cesari, L, 최적화 - 이론 및 응용. 스프링거
출판사, 1983.
키워드: 비선형 프로그래밍, 공학, 매달린 사슬 문제, 전차선
$offText
$설정되지 않은 경우 nh $set nh 50
nh / i0*i%nh% / 설정;
별칭(nh,i);
스칼라
L '매달린 체인의 길이' / 4 /
a 't=0에서의 체인 높이(왼쪽)' / 1 /
b 't=1에서의 체인 높이(왼쪽)' / 3 /
tf '[0 tf]에 정의된 ODE' / 1 /
h '균일한 간격 길이'
n '하위 구간의 수'
최소;
if(b > a, tmin = 0.25; else tmin = 0.75;);
n = 카드(nh) - 1;
h = tf/n;
변수
x(i) '체인의 높이'
u(i) 'x의 파생물'
에너지 '잠재에너지';
방정식
객체
x_eqn(i)
길이_eqn;
OBJ..
에너지 =e= 0.5*h*sum(nh(i+1), x(i)*sqrt(1 + sqr(u(i))) + x(i+1)*sqrt(1 + sqr(u(i+1))));
x_eqn(i+1)..
x(i+1) =e= x(i) + 0.5*h*(u(i) + u(i+1));
길이_eqn..
0.5*h*sum(nh(i+1), sqrt(1+sqr(u(i))) + sqrt(1+sqr(u(i+1)))) =e= L;
x.fx('i0') = a;
x.fx('i%nh%') = b;
x.l(i) = 4*abs(b-a)*((ord(i) - 1)/n)*(0.5*((ord(i) - 1)/n) - tmin) + a;
u.l(i) = 4*abs(b-a)*(((ord(i) - 1)/n) - tmin);
모델 체인 / 모두 /;
$if set workSpace chain.workSpace = %workSpace%
에너지를 최소화하는 nlp를 사용하여 체인을 해결합니다.