ilpBinaryTN: ILP method used to optimise a model

View source: R/ilpBinaryTN.R

ilpBinaryTNR Documentation

ILP method used to optimise a model

Description

This function is the ilp method to be used to optimise a model by fitting to data for time point 2, that should follow optimisation based on time point 1.

Usage

ilpBinaryTN(cnolist, 
                        model, 
                        sizeFac = 0.0001, 
                        mipGap = 0, 
                        relGap = 0, 
                        timelimit = 3600, 
                        cplexPath, 
                        method = "quadratic",
                        numSolutions = 100, 
                        limitPop = 500, 
                        poolIntensity = 0, 
                        poolReplace = 2,
                        timeIndices = c(1, 2))

Arguments

cnolist

a CNOlist on which the score is based (based on valueSignals[[2]], i.e. data at time 1)

model

a model structure, as created by readSIF, normally pre-processed but that is not a requirement of this function

sizeFac

the scaling factor for the size term in the objective function, default to 0.0001

mipGap

the absolute tolerance on the gap between the best integer objective and the objective of the best node remaining. When this difference falls below the value of this parameter, the linear integer optimization is stopped. Default set to 0

relGap

the relative tolerance on the objective value for the solutions in the solution pool. Solutions that are worse (either greater in the case of a minimization, or less in the case of a maximization) than the incumbent solution by this measure are not kept in the solution pool. Default set to 0

timelimit

the maximum optimisation time in seconds, default set to 3600

cplexPath

the path where the cplex solver is stored. Default set to "~/Documents/cplex"

method

the method of writing the objective function (quadratic/linear). Default set to "quadratic"

numSolutions

the number of solutions to save

limitPop

the number of solutions to be generated. Default set to 500

poolIntensity

the Intensity of solution searching. Default set to 4

timeIndices

the time indeces to optimize. Default set to timeIndices=c(1, 2)

poolReplace

pool replacement strategy, consult CPLEX manual for details.

Value

This function returns a list with elements:

bitstringILPAll

the list of all optimal bitstrings identified

bScore

the best score for each set of bitstrings

time_cplex_only

the time it took for cplex to solve the problem

total_time

the total time for the pipeline to run (writing problem + solving problem + retrieving solutions)

stringsTolScores

the scores of the above-mentioned strings

Author(s)

E Gjerga, H Koch

References

Alexander Mitsos, Ioannis N. Melas, Paraskeuas Siminelakis, Aikaterini D. Chairakaki, Julio Saez-Rodriguez, and Leonidas G. Alexopoulos. Identifying Drug Effects via Pathway Alterations using an Integer Linear Programming Optimization Formulation on Phosphoproteomic Data. PLoS Comput Biol. 2009 Dec; 5(12): e1000591.

Examples



# Toy Exampple
data("ToyModel", package="CellNOptR")
data("CNOlistToy", package="CellNOptR")
pknmodel = ToyModel
cnolist = CNOlist(CNOlistToy)
model = preprocessing(data = cnolist, model = pknmodel, compression = TRUE, expansion = TRUE)
plotModel(model = model, CNOlist = cnolist)

# Training to data - ILP
## Not run: 
resILP = ilpBinaryTN(cnolist = cnolist, model = model)

## End(Not run)

saezlab/CellNOptR documentation built on April 16, 2024, 5:21 a.m.