Using single or int16 variables instead of double for Cplex in Matlab

4 visualizaciones (últimos 30 días)
I need to solve a mixed integer problem using Cplex in MATLAB. At the momemnt the size of matrix of coefficient is really large (around 19 GB), which prevents Matlab to solve the problem. However, the type of this matrix is double, which I do not need this precision. The problem is that when I change this matrix (or all other matrices) to single or int16, I receive the error message "Error using cplexmilp (null)". Could you please help me to solve this problem? Thanks!

Respuesta aceptada

Jordan Ross
Jordan Ross el 9 de En. de 2017
Hello Milad,
As I understand you are trying to pass int16 and single data types to the IBM CPLEX solver from MATLAB. As far as I can tell, it seems that the IBM CPLEX solver only takes in the double data type from MATLAB. See the following documentation from IBM which it talks about taking in doubles from MATLAB: https://www.ibm.com/support/knowledgecenter/en/SSSA5P_12.6.3/ilog.odms.cplex.help/CPLEX/MATLAB/topics/gs_use.html?view=embed
  1 comentario
Milad
Milad el 9 de En. de 2017
Thank you Jordan, Yes,I also found it out! I had to use sparse to deal with the problem.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Performance and Memory en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by