안녕하세요.
cplex를 사용하던차에 인터넷에서 우연찮게 알게되어 자주 들어와 보고 있습니다.
다름이 아니라, 현재 Visusal Studio 2010에 cplex, concert library를 설치하여 C++ 코딩을 하고 있는데요. 궁금한 것이 몇가지 있어 질문드립니다.
1. Visual Studio 2010에서 cplex를 사용할 수 있도록 환경설정을 할 때 release 모드가 아닌 debug모드에서는 할 수가 없는 것인지요?
2. release모드로 놓고 VS에서 F5를 눌러 debugging모드로 가서 IloNumArray, IloIntArray등과 같이 array에 저장된 값을 보려고 하면 값이 안 나오고 IloNumExprArray-IloExtractableArray~~~ 이런식으로 나와서 값을 볼수가 없습니다. 값을 정확히 보려면 전부 프린트문을 사용해서 출력을 해야만 하는건가요?
3. 인터넷을 찾아봐도 잘 모르겠어서 질문드립니다. 우선 IloIntArray x[][][][] (4차원배열), IloIntVarArray bx[][][](3차원배열), IloArray b[](1차원배열), IloExpr bxSum(env); 로 선언했습니다. 그리고 IloNumVarArray BWU(env, numLinks)는 이미 선언해 두었구요. 3개의 for문(j3, k3, l3)을 돌린 후에 나온 IloExpr형태의 bxSum 값을 BWU[numLinks] 배열에 차례대로 저장하려고 하려고 합니다. 왜냐하면 이 BWU[numLinks] 배열을 뒤에서 다시 불러 사용해야 합니다. 이때 어떻게 하면 bxSum 값을 BWU[] 배열에 저장할 수 있는지요? BWU[i3] == bxSum; 이건 아닌것 같구요. BWU[i3] = bxSum; 라고 하면 에러가 납니다. 해당 코드를 첨부파일에 올렸습니다. 참고해 주시면 감사하겠습니다.
4. 비슷한 질문인데 몇개의 IloNumArray들이 플러스 되고 마이너스 되서 나온 값을 상수값으로 넣고 싶은데요. 예를 들어 M = a[] + b[] - c[] 이렇게 하려면 이때 M을 어떻게 선언해야 하는지요? IloInt M 이라고 하면 되는지요? 이 M이 나중에 1/M 이런식으로 또 다른 수식에 들어가야 하거든요?
그럼, 건강하시고 귀사의 무궁한 발전을 기원합니다.
김주범 드림.
question.txt