2사용 중System.Collections.Generic;
26 문자열wDir = Path.Combine(
".",
"tmp");
27CreateSaveRestart(Path.Combine(wDir,
"tbase"));
30목록<string> 식물 =
신규목록<문자열>()
34목록<string> 시장 =
신규목록<문자열>()
38사전<문자열, 더블> 용량 =
신규사전<문자열, 더블>()
40{
"시애틀", 350.0 }, {
"샌디에고", 600.0 }
42사전<string, double> 수요 =
신규사전<string, double>()
44{
"뉴욕", 325.0 }, {
"시카고", 300.0 }, {
"토피카", 275.0 }
46사전<튜플<문자열, 문자열>,
더블> 거리 =
신규사전<Tuple<문자열, 문자열>,
더블>()
48{
신규튜플<문자열,문자열> (
"시애틀",
"뉴욕"), 2.5 },
49{
신규튜플<문자열,문자열> (
"시애틀",
"시카고"), 1.7 },
50{
신규튜플<문자열,문자열> (
"시애틀",
"토피카"), 1.8 },
51{
신규튜플<문자열,문자열> (
"샌디에이고",
"뉴욕"), 2.5 },
52{
신규튜플<문자열,문자열> (
"샌디에고",
"시카고"), 1.8 },
53{
신규튜플<문자열,문자열> (
"샌디에고",
"토피카"), 1.4 }
57 if(Environment.GetCommandLineArgs().Length > 1)
58ws =
신규 슬롯 커뮤니티작업공간(workingDirectory: wDir, systemDirectory: Environment.GetCommandLineArgs()[1]);
68 GAMSSetj = db.AddSet(
"j", 1,
"시장");
72 슬롯 커뮤니티매개변수a = db.AddParameter(
"a",
"케이스에 있는 식물 i의 용량", i);
76 슬롯 커뮤니티매개변수b = db.AddParameter(
"b",
"경우에 따라 시장 j의 수요", j);
80 슬롯 커뮤니티매개변수d = db.AddParameter(
"d",
"수천 마일 단위의 거리", i, j);
81 foreach(튜플<문자열, 문자열> t
in거리.키)
84 슬롯 커뮤니티매개변수f = db.AddParameter(
"f",
"1,000마일당 케이스당 화물(달러)");
91 GAMSJobt4 = ws.AddJobFromString(GetModelText(), cpBase);
92선택.
정의.추가(
"gdxincname", db.이름);
93opt.AllModelTypes =
"익스프레스";
96Console.WriteLine(
"x("+ Rec.Key(0) +
","+ Rec.Key(1) +
"): 레벨="+ 추천
레벨 +
" 한계="+ 추천
한계);
100 정적 무효CreateSaveRestart(
문자열cp파일이름)
103 if(Environment.GetCommandLineArgs().Length > 1)
104ws =
신규 슬롯 커뮤니티작업공간(workingDirectory: Path.GetDirectoryName(cpFileName), systemDirectory: Environment.GetCommandLineArgs()[1]);
106ws =
신규 슬롯 커뮤니티작업공간(workingDirectory: Path.GetDirectoryName(cpFileName));
119 정적문자열 GetBaseModelText()
128a(i) 경우에 따라 공장 i의 용량 / /
129b(j) 경우에 따라 시장 j의 수요 / /
131천 마일당 케이스당 달러 단위의 스칼라 f 화물 /0/;
133매개변수 c(i,j) 운송 비용(케이스당 수천 달러) ;
135c(i,j) = f * d(i,j) / 1000 ;
146수요(j)는 시장 j의 수요를 충족합니다. ;
148비용 .. z =e= sum((i,j), c(i,j)*x(i,j)) ;
150공급(i) .. 합계(j, x(i,j)) =l= a(i) ;
152수요(j) .. 합계(i, x(i,j)) =g= b(j) ;
156z를 최소화하는 lp를 사용하여 전송을 해결합니다;
166$if 설정되지 않음 gdxincname $abort '제공된 데이터 파일에 대한 포함 파일 이름 없음'
GAMSSet AddSet(문자열 식별자, int 차원, 문자열 설명텍스트="", SetType setType=SetType.multi)
void Run(GAMSOptions gamsOptions=null, GAMSCheckpoint 체크포인트=null, TextWriter 출력=null, Boolean createOutDB=true)
새 GAMSParameterRecord AddRecord(params 문자열[] 키)
새 GAMSSetRecord AddRecord(params 문자열[] 키)
GAMSJob AddJobFromString(문자열 gamsSource, GAMSCheckpoint 체크포인트=null, 문자열 jobName=null)
GAMSDatabase AddDatabase(문자열 데이터베이스 이름=null, 문자열 inModelName=null)
GAMSCheckpoint AddCheckpoint(string checkpointName=null)
GAMSOptions AddOptions(GAMSOptions optFrom=null)
이것은 일련의 튜토리얼 예제 중 11번째 모델입니다. 여기에서는 다음을 보여줍니다: 저장/R을 생성하고 사용하는 방법...