Dagliyan, O., F. Uney-Yuksektepe, I.H. Kavakli and M. Turkay, Optimization Based Tumor Classification from Microarray Gene Expression Data, PLoS ONE, 6(2), e14579 (2011).

Before the run, make sure that you have GAMS&MATLAB interface. To install the interface please
read "doc.pdf" in the "matgams.zip" file. Also, GAMS and CPLEX licences are needed to run the code.

To run the code:

Open "driver_nfold.m" for n-fold-cross-validation or "driver_testset.m" for test-set. Then just click on
"run". The percentage accuracy will be on the command window of MATLAB.

In driver_nfold.m you can change the fold by changing the variable “fold=10”. On test set, you
should enter the number of samples in training and test set. Please delete the generated files after
you run "driver_testset.m".

This matlab("driver_nfold.m" or "driver_testset.m") file takes the "input.xls" as input and prepares
input files of GAMS scripts, and then calls gams scripts.
Input format should be the same as is in "input.xls".

Please look at "TestResult_New.txt" for more detailed results such as predicted classes of each
sample and corresponding boxes.

There are 16 intersection elimination scripts(all are same); however, you dont need to use all of them.
The number of intersection elimination scripts that you should use depend on the complexity of the
data. If you dont change anything, the code will use 16 of them, though some may be unnecessary.
However the result wont change.
 

Optimization scripts:

For all data sets: Supplementary.rar

For individual data sets:

Leukemia.rar

Prostate cancer.rar

Prostate cancer outcome.rar

DLBCL.rar

Lymphoma.rar

SRBCT.rar