설명
물리적 문제는 육각형의 면적을 최대화하는 것입니다. 직경은 1보다 작거나 같아야 합니다. Himmelblau의 공식화 특정 고정 변수 때문에 여기에 제공된 것과 다릅니다. 제거되었습니다. 그러나 여기에 제시된 공식이 더 자연스럽습니다. 그리고 이해하기 더 쉽습니다. 하나의 꼭지점이 고정되어 있다는 점을 이용합니다. 원점에서 벡터 스칼라 곱을 사용하여 면적을 계산합니다. 모든 삼각형은 원점에서 시작됩니다. 따라서 x(1)과 y(1)의 모든 항은 대수식을 단순화하면 사라집니다. 문제는 다른 여러 곳에서 나타납니다. W. Hock의 예 108과 K. Schittkowski: 비선형 계획법 코드 테스트 예제, 강의 경제 및 수학 시스템 노트, 187, Springer Verlag, 1981, P. E. Gill, W. Murray, M. A. Saunders 및 M. Wright: SOL/NPSOL 사용자 가이드: 비선형용 FORTRAN 패키지 프로그래밍, 기술. Rep. 83-12, 스탠포드 운영 연구부 대학.
소형 모델 유형 :NLP
카테고리 : 슬롯 나라 모델 라이브러리
메인 파일 : himmel16.gms
$title 육각형 테스트 문제의 영역 (HIMMEL16,SEQ=36)
$onText
물리적 문제는 육각형의 면적을 최대화하는 것입니다.
직경은 1보다 작거나 같아야 합니다. Himmelblau의 공식화
특정 고정 변수 때문에 여기에 제공된 것과 다릅니다.
제거되었습니다. 그러나 여기에 제시된 공식이 더 자연스럽습니다.
그리고 이해하기 더 쉽습니다. 하나의 꼭지점이 고정되어 있다는 점을 이용합니다.
원점에서 벡터 스칼라 곱을 사용하여 면적을 계산합니다.
모든 삼각형은 원점에서 시작됩니다. 따라서 x(1)과 y(1)의 모든 항은
대수식을 단순화하면 사라집니다.
문제는 다른 여러 곳에서 나타납니다. W. Hock의 예 108과
K. Schittkowski: 비선형 계획법 코드 테스트 예제, 강의
경제 및 수학 시스템 노트, 187, Springer Verlag, 1981,
P. E. Gill, W. Murray, M. A. Saunders 및
M. Wright: SOL/NPSOL 사용자 가이드: 비선형용 FORTRAN 패키지
프로그래밍, 기술. Rep. 83-12, 스탠포드 운영 연구부
대학.
Himmelblau, DM, 문제 번호 16. 응용 비선형 프로그래밍에서.
1972년 뉴욕 맥그로 힐.
키워드: 비선형 프로그래밍, 수학, NLP 테스트 문제, Hock-Schittkowski 컬렉션
$offText
i '6개 포인트에 대한 인덱스' / 1*6 /를 설정합니다.
별칭(i,j);
변수
x(i) "점의 x 좌표"
y(i) "점의 y 좌표"
Area(i) "i번째 삼각형의 면적 ( 0 -> p(i) -> p(i++1) -> 0"
totarea "육각형의 전체 면적";
방정식
areadef(i) '삼각형 i의 영역 정의.'
maxdist(i,j) 'i와 j 사이의 최대 거리'
obj1 '목적의 첫 번째 정의'
obj2 '목적의 두 번째 정의';
maxdist(i,j)$(ord(i) < ord(j)).. sqr(x(i) - x(j)) + sqr(y(i) - y(j)) =l= 1;
areadef(i)..area(i) =e= 0.5*(x(i)*y(i++1) - y(i)*x(i++1));
obj1..totarea =e= 0.5*sum(i, x(i)*y(i++1) - y(i)*x(i++1));
obj2..totarea =e= sum(i,area(i));
모델
작은 / maxdist, obj1 /
대형/maxdist, obj2,areadef/;
* 초기 조건
x.fx("1") = 0;
y.fx("1") = 0;
y.fx("2") = 0;
x.l("2") = 0.5;
x.l("3") = 0.5;
x.l("4") = 0.5;
x.l("5") = 0;
x.l("6") = 0;
y.l("3") = 0.4;
y.l("4") = 0.8;
y.l("5") = 0.8;
y.l("6") = 0.4;
totarea를 최대화하는 nlp를 사용하여 큰 문제를 해결합니다.