Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
在 CPLEX 优化器中是否可以使用 c++ api 通过变量名获取变量的索引?我找不到任何合适的方法来做到这一点。请帮忙。
我有 [IloNumVarArray vars;] 变量来按名称存储变量。
vars[i].getName(); // 给出索引 i 处的变量名
有没有像 vars.getIndex(name) 这样的方法,可以给出变量的索引?
如果您使用的是可调用库 C++ API,则有查找列索引的函数,给定列名:
int CPXgetcolindex(CPXCENVptr env, CPXCLPptr lp, const char * lname_str, int * index_p)
看:
http://pic.dhe.ibm.com/infocenter/cosinfoc/v12r4/index.jsp?topic=%2Filog.odms.cplex.help%2Frefcallablelibrary%2Fhtml%2Ffunctions%2FCPXaddmipstarts.html
CPLEX 中没有类似的东西。
您始终可以迭代数组并比较名称以取回您的变量。如果您需要更好的性能,您可以使用地图。