TomSym provides the function ezsolve, which needs minimal input to solve an optimization problem: only the objective function and constraints. For example, the miqpQG example from the tomlab quickguide is reduced to the following:

toms integer x

toms y

objective = -6*x + 2*x^2 + 2*y^2 - 2*x*y;

constraints = {x+y<=1.9, x>=0, y>=0};

solution = ezsolve(objective,constraints)

Ezsolve calls tomDiagnose to determine the problem type, getSolver to find an appropriate solver, and then sym2prob, tomRun and getSolution in sequence to obtain the solution.

Advanced users might not use ezsolve, and instead call sym2prob and tomRun directly. This gives the possibility to modify the Prob struct and set flags for the solver.