csv2gdx2.gms : CSVRead 예시 2 - CSVRead로 CSV 파일 읽기

설명

이 문제는 다음을 충족하는 최소 비용 배송 일정을 찾습니다.
시장의 요구사항과 공장의 공급품.

CSVRead는 외부 CSV 파일의 모든 데이터를 읽는 데 사용됩니다.
쉼표로 구분된 필드가 있습니다. 컴파일 타임 동안 CSVRead 실행을 사용합니다.
무료 슬롯 사이트 기호로 데이터를 직접 읽습니다.
참고: 이 예에서는 간단한 명령을 사용하여 CSV 데이터를 읽을 수도 있습니다.
추가 전처리를 수행하지 않고 테이블 문을 만듭니다.

이 모델은 "시작하기 예 1 - 읽기"에서 참조됩니다.
CSVRead 설명서의 "CSVRead가 포함된 CSV 파일"입니다.

Dantzig, GB, 3.3장. 선형 프로그래밍 및 확장.
프린스턴 대학 출판부, 뉴저지주 프린스턴, 1963년.

이 공식은 다음에 자세히 설명되어 있습니다.
Rosenthal, RE, 2장: 무료 슬롯 사이트 튜토리얼. 무료 슬롯 사이트: 사용자 가이드.
Scientific Press, 캘리포니아주 레드우드 시티, 1988년.

이러한 이유로 행 번호는 책의 행 번호와 일치하지 않습니다.
댓글.

키워드: 선형 계획법, 운송 문제, 스케줄링,
          CSVRead, 데이터 교환, 무료 슬롯 사이트 언어 기능

카테고리 : 무료 슬롯 사이트 데이터 유틸리티 라이브러리


메인 파일 : csv2gdx2.gms 포함: csv2gdx2.gms

$title CSVRead 예 2 - CSVRead로 CSV 파일 읽기(CSV2GDX2,SEQ=111)

$onText
이 문제는 다음을 충족하는 최소 비용 배송 일정을 찾습니다.
시장의 요구사항과 공장의 공급품.

CSVRead는 외부 CSV 파일의 모든 데이터를 읽는 데 사용됩니다.
쉼표로 구분된 필드가 있습니다. 컴파일 타임 동안 CSVRead 실행을 사용합니다.
무료 슬롯 사이트 기호로 데이터를 직접 읽습니다.
참고: 이 예에서는 간단한 명령을 사용하여 CSV 데이터를 읽을 수도 있습니다.
추가 전처리를 수행하지 않고 테이블 문을 만듭니다.

이 모델은 "시작하기 예 1 - 읽기"에서 참조됩니다.
CSVRead 설명서의 "CSVRead가 포함된 CSV 파일"입니다.

Dantzig, GB, 3.3장. 선형 프로그래밍 및 확장.
프린스턴 대학 출판부, 뉴저지주 프린스턴, 1963년.

이 공식은 다음에 자세히 설명되어 있습니다.
Rosenthal, RE, 2장: 무료 슬롯 사이트 튜토리얼. 무료 슬롯 사이트: 사용자 가이드.
Scientific Press, 캘리포니아주 레드우드 시티, 1988년.

이러한 이유로 행 번호는 책의 행 번호와 일치하지 않습니다.
댓글.

키워드: 선형 계획법, 운송 문제, 스케줄링,
          CSVRead, 데이터 교환, 무료 슬롯 사이트 언어 기능
$offText

$onEcho > distance.csv
,뉴욕,시카고,토피카
시애틀,2.5,1.7,1.8
샌디에이고,2.5,1.8,1.4
$offEcho

$onEcho > 용량.csv
,용량
시애틀, 350
샌디에이고,600
$offEcho

$onEcho > 수요.csv
,수요
뉴욕, 325
시카고,300
토피카,275
$offEcho

세트
   나는 '통조림 식물'
   j '시장';

매개변수 d(i,j) '거리(천 마일)';

$callTool csvread distance.csv id=d Dimids=i,j index=1 값=2..lastCol useHeader=y 추적=0
$ifE errorLevel<>0 $abort distance.csv를 읽는 데 문제가 있습니다!

i, j, d를 표시하고;

매개변수
   a(i) '경우에 따라 식물 i의 용량'
   b(j) '경우에 따라 시장 j의 수요';

$callTool csvread 용량.csv id=a 색인=1 값=2 useHeader=y 추적=0
$ifE errorLevel<>0 $abort 용량.csv를 읽는 데 문제가 있습니다!

$callTool csvread Demand.csv id=b 색인=1 값=2 useHeader=y 추적=0
$ifE errorLevel<>0 $abort Demand.csv를 읽는 데 문제가 있습니다!

디스플레이 a, b;

스칼라 f '1,000마일당 케이스당 운임(달러)' / 90 /;

매개변수 c(i,j) '케이스당 운송 비용(단위: 수천 달러)';
c(i,j) = f*d(i,j)/1000;

변수
   x(i,j) '케이스의 선적 수량'
   z '총 운송 비용(천 달러)';

양수 변수 x;

방정식
   비용 '목적 함수 정의'
   Supply(i) '공장 i의 공급 제한을 준수합니다.'
   수요(j) '시장 j의 수요를 충족';

비용.. z =e= sum((i,j), c(i,j)*x(i,j));

공급(i).. sum(j, x(i,j)) =l= a(i);

수요(j)..sum(i, x(i,j)) =g= b(j);

모델 운송 / 모두 /;

z를 최소화하는 lp를 사용하여 전송을 해결합니다.

x.l, x.m을 표시합니다.