gear.gms : 기어트레인 디자인

설명

복합 기어트레인은 특정 목표를 달성하도록 설계되었습니다.
드라이버 샤프트와 피동 샤프트 사이의 기어비. 목표
기어트레인 설계의 핵심은 기어의 톱니 수를 구하는 것입니다.
4개의 기어를 사용하고 1/6.931의 필수 기어비를 얻습니다.

소형 모델 유형 :MINLP


카테고리 : 무료 슬롯 사이트 모델 라이브러리


메인 파일 : gear.gms

$title 기어트레인 설계 (GEAR,SEQ=203)

$onText
복합 기어 트레인은 특정 목표를 달성하도록 설계되었습니다.
드라이버 샤프트와 피동 샤프트 사이의 기어비. 목표
기어트레인 설계의 핵심은 기어의 톱니 수를 구하는 것입니다.
4개의 기어를 사용하고 1/6.931의 필수 기어비를 얻습니다.

Deb, K 및 Goyal, M, 다음을 사용하여 엔지니어링 설계 최적화
결합된 유전자 검색. Back, T, Ed, Proceedings of the
제7차 유전 알고리즘 국제회의. 1997년,
521-528쪽.

키워드: 혼합 정수 비선형 계획법, 공학, 기어열 설계
$offText

옵션 optCr = 1e-5;

정수변수
   '각 기어의 톱니 수(정수)'
   f '각 기어의 톱니 수(정수)'
   b '각 기어의 톱니 수(정수)'
   d '각 기어의 톱니 수(정수)';

변수 z '목적변수';

방정식
   obj '목적 함수'
   Sym1 '대칭'
   Sym2 '대칭';

스칼라
   invgratio '필요한 기어비의 역수' / 6.931 /
   minteeth '최소 치아 수' / 12 /
   maxteeth '최대 치아 수' / 60 /;

a.lo = 민트치아; a.up = 맥치아;
f.lo = 민트치아; f.up = 맥치아;
b.lo = 민트치아; b.up = 맥치아;
d.lo = 민트치아; d.up = 맥치아;

obj.. z =e= 1 + sqr(invgratio - (a*f)/(b*d));

Sym1..d =g= b;

Sym2.. a =g= f;

* 단순한 하한보다 더 나은 출발점
a.l = (최대치 - 최소치)/2;
f.l = (최대치 - 최소치)/2;
b.l = (최대치 - 최소치)/2;
d.l = (최대치 - 최소치)/2;

모델 m1 / 모두 /;

z를 최소화하는 minlp를 사용하여 m1을 해결합니다.

스칼라
   calcinvratio '용액 비율'
   오류 '절대 오류';

calcinvratio = (a.l*f.l)/(b.l*d.l);
오류 = ABS(calcinvratio - invgratio);

calcinvratio, invgratio, 오류 표시;