linopt::Transparent::userstep
--
perform a user defined simplex steplinopt::Transparent::userstep(
tableau, basvar,
nonbasbar)
performs a user defined simplex step in the
tableau
with the pivot element defined by
basvar
and nonbasvar
.
linopt::Transparent::userstep(tableau, basvar,
nonbasbar)
tableau |
- | a simplex tableau of domain type
linopt::Transparent |
basvar |
- | a basic variable represented by an identifier that has to leave the basis |
nonbasvar |
- | a non-basic variable represented by an identifier that has to enter the basis |
a simplex tableau of domain type
linopt::Transparent
.
linopt::Transparent
, linopt::Transparent::autostep
,
linopt::Transparent::convert
,
linopt::Transparent::dual_prices
,
linopt::Transparent::phaseI_tableau
,
linopt::Transparent::result
,
linopt::Transparent::simplex
,
linopt::Transparent::suggest
linopt::Transparent::userstep
returns the next simplex
tableau which is calculated by the user defined simplex step.We execute the simplex step given by the pivot element
(slk[1],x)
:
>> k := [[x + y >= 2], x, NonNegative]: t:= linopt::Transparent(k); linopt::Transparent::userstep(t, slk[1], x)
+- -+ | "linopt", "restr", slk[1], x, y | | | | "obj", 0, 0, 1, 0 | | | | slk[1], -2, 1, -1, -1 | +- -+ +- -+ | "linopt", "restr", slk[1], x, y | | | | "obj", -2, 1, 0, -1 | | | | x, 2, -1, 1, 1 | +- -+
If we specify a wrong pivot element, we will get an error message:
>> k := [{3*x + 4*y - 3*z <= 23, 5*x - 4*y - 3*z <= 10, 7*x + 4*y + 11*z <= 30}, -x + y + 2*z, NonNegative]: t:= linopt::Transparent(k); linopt::Transparent::userstep(t, x, y)
+- -+ | "linopt", "restr", slk[1], slk[2], slk[3], z, x, y | | | | "obj", 0, 0, 0, 0, 2, -1, 1 | | | | slk[1], 30, 1, 0, 0, 11, 7, 4 | | | | slk[2], 10, 0, 1, 0, -3, 5, -4 | | | | slk[3], 23, 0, 0, 1, -3, 3, 4 | +- -+ Error: No correct pivot element specified [linopt::Transpare\ nt::userstep]
>> delete k, t:
Papadimitriou, Christos H; Steiglitz, Kenneth: Combinatorial Optimization; Algorithms and Complexity. Prentice-Hall, 1982.
Nemhauser, George L; Wolsey, Laurence A: Integer and Combinatorial Optimization. New York, Wiley, 1988.
Salkin, Harvey M; Mathur, Kamlesh: Foundations of Integer Programming. North-Holland, 1989.
Neumann, Klaus; Morlock, Martin: Operations-Research. Munich, Hanser, 1993.
Duerr, Walter; Kleibohm, Klaus: Operations Research; Lineare Modelle und ihre Anwendungen. Munich, Hanser, 1992.
Suhl, Uwe H: MOPS - Mathematical OPtimization System. European Journal of Operational Research 72(1994)312-322. North-Holland, 1994.
Suhl, Uwe H; Szymanski, Ralf: Supernode Processing of Mixed Integer Models. Boston, Kluwer Academic Publishers, 1994.