Как использовать случайную функцию в cplex - PullRequest
0 голосов
/ 18 июня 2020

Как я могу генерировать новое случайное число каждый раз, когда я запускаю его со случайной функцией в Cplex, потому что он генерирует только случайное число для меня и ничего не меняет каждый раз, когда я его запускаю?

1 Ответ

0 голосов
/ 18 июня 2020

В OPL вы можете использовать функцию rand

int v;

execute
{
  v=(new Date().getMilliseconds());
}

int sr=srand(v); // OPL random seed

execute
 {
 sr;
 writeln("OPL random seed=",sr);
 writeln(Opl.rand(10));
 }

 int inputData[i in 1..10]=rand(10);

execute
{
  writeln(inputData);
}

int inputData2[i in 1..50]=50+rand(51);

execute
{
  writeln(inputData2);
}

каждый раз будет давать разные результаты

Еще в https://community.ibm.com/community/user/datascience/communities/community-home/digestviewer/viewthread?GroupId=5557&MID=87124&CommunityKey=ab7de0fd-6f43-47a9-8261-33578a231bb7&tab=digestviewer

...