Learn R Programming

optiSolve (version 1.0)

print.copValidation: Print Validation of a Solution

Description

Print the validation results for the solution of an optimization problem.

Usage

# S3 method for copValidation
print(x, …)

Arguments

x

The result of function validate.

...

Unused additional arguments.

Value

A list of class copValidation (invisible) with components:

summary

Data frame containing one row for each constraint with the value of the constraint in column Val, the bound for the constraint in column Bound, and column OK states if the constraint is fulfilled. The value of the objective function is shown in the first row. Additional rows contain the values of disabled constraints.

info

Data frame with component valid indicating if all constraints are fulfilled, component solver containing the name of the solver used for optimization, and component status describing the solution as reported by the solver.

var

Data frame with the values of the objective function and constraints at the optimum.

obj.fun

Named numeric value with value and name of the objective function at the optimum.

Details

Print the validation results for the solution of an optimization problem.

See Also

The main function for solving constrained programming problems is solvecop.

Examples

Run this code
# NOT RUN {
### Quadratic programming with linear constraints      ###
### Example from animal breeding                       ###
### where the mean kinship in the offspring is minized ###

data(phenotype)
data(myQ)

A   <- t(model.matrix(~Sex+BV-1, data=phenotype))
rownames(A) <- c("male.cont","female.cont", "Breeding.Value")
val <- c(0.5, 0.5, 0.40)
dir <- c("==","==",">=")

mycop <- cop(f  = quadfun(Q=myQ, d=0.001, name="Kinship", id=rownames(myQ)), 
             lb = lbcon(0,  id=phenotype$Indiv), 
             ub = ubcon(NA, id=phenotype$Indiv),
             lc = lincon(A=A, dir=dir, val=val, id=phenotype$Indiv))

res <- solvecop(mycop, solver="cccp", quiet=FALSE, trace=FALSE)

head(res$x)

Evaluation <- validate(mycop, res, quiet=TRUE)

print(Evaluation)

#            valid solver  status
#             TRUE   cccp optimal
#
#   Variable       Value      Bound    OK?
#   ---------------------------------------
#   Kinship        0.0322 min        :      
#   ---------------------------------------
#   lower bounds   all x  >=  lb     : TRUE 
#   male.cont      0.5    ==  0.5    : TRUE 
#   female.cont    0.5    ==  0.5    : TRUE 
#   Breeding.Value 0.4    >=  0.4    : TRUE 
#   ---------------------------------------

# }

Run the code above in your browser using DataLab