| Line 15... |
Line 15... |
| 15 |
}
|
15 |
}
|
| 16 |
\section{Structure}{
|
16 |
\section{Structure}{
|
| 17 |
Objects of class \code{"simplex"} are implemented as a list with the
|
17 |
Objects of class \code{"simplex"} are implemented as a list with the
|
| 18 |
following components.
|
18 |
following components.
|
| 19 |
|
19 |
|
| - |
|
20 |
\describe{
|
| 20 |
\item{soln}{
|
21 |
\item{soln}{
|
| 21 |
The values of \code{x} which optimize the objective function under
|
22 |
The values of \code{x} which optimize the objective function under
|
| 22 |
the specified constraints provided those constraints are jointly feasible.
|
23 |
the specified constraints provided those constraints are jointly feasible.
|
| 23 |
}
|
24 |
}
|
| 24 |
\item{solved}{
|
25 |
\item{solved}{
|
| 25 |
This indicates whether the problem was solved. A value of \code{-1}
|
26 |
This indicates whether the problem was solved. A value of \code{-1}
|
| 26 |
indicates that no feasible solution could be found. A value of
|
27 |
indicates that no feasible solution could be found. A value of
|
| 27 |
\code{0} that the maximum number of iterations was reached without
|
28 |
\code{0} that the maximum number of iterations was reached without
|
| 28 |
termination of the second stage. This may indicate an unbounded
|
29 |
termination of the second stage. This may indicate an unbounded
|
| 29 |
function or simply that more iterations are needed. A value of
|
30 |
function or simply that more iterations are needed. A value of
|
| 30 |
\code{1} indicates that an optimal solution has been found.
|
31 |
\code{1} indicates that an optimal solution has been found.
|
| 31 |
}
|
32 |
}
|
| 32 |
\item{value}{
|
33 |
\item{value}{
|
| 33 |
The value of the objective function at \code{soln}.
|
34 |
The value of the objective function at \code{soln}.
|
| 34 |
}
|
35 |
}
|
| 35 |
\item{val.aux}{
|
36 |
\item{val.aux}{
|
| 36 |
This is \code{NULL} if a feasible solution is found. Otherwise it is
|
37 |
This is \code{NULL} if a feasible solution is found. Otherwise it is
|
| 37 |
a positive value giving the value of the auxiliary objective
|
38 |
a positive value giving the value of the auxiliary objective
|
| 38 |
function when it was minimized.
|
39 |
function when it was minimized.
|
| 39 |
}
|
40 |
}
|
| 40 |
\item{obj}{
|
41 |
\item{obj}{
|
| 41 |
The original coefficients of the objective function.
|
42 |
The original coefficients of the objective function.
|
| 42 |
}
|
43 |
}
|
| 43 |
\item{a}{
|
44 |
\item{a}{
|
| 44 |
The objective function coefficients re-expressed such that the basic
|
45 |
The objective function coefficients re-expressed such that the basic
|
| 45 |
variables have coefficient zero.
|
46 |
variables have coefficient zero.
|
| 46 |
}
|
47 |
}
|
| 47 |
\item{a.aux}{
|
48 |
\item{a.aux}{
|
| 48 |
This is \code{NULL} if a feasible solution is found. Otherwise it is the
|
49 |
This is \code{NULL} if a feasible solution is found. Otherwise it is the
|
| 49 |
re-expressed auxiliary objective function at the termination of the first
|
50 |
re-expressed auxiliary objective function at the termination of the first
|
| 50 |
phase of the simplex method.
|
51 |
phase of the simplex method.
|
| 51 |
}
|
52 |
}
|
| 52 |
\item{A}{
|
53 |
\item{A}{
|
| 53 |
The final constraint matrix which is expressed in terms of the
|
54 |
The final constraint matrix which is expressed in terms of the
|
| 54 |
non-basic variables. If a feasible solution is found then this will
|
55 |
non-basic variables. If a feasible solution is found then this will
|
| 55 |
have dimensions \code{m1+m2+m3} by \code{n+m1+m2}, where the final
|
56 |
have dimensions \code{m1+m2+m3} by \code{n+m1+m2}, where the final
|
| 56 |
\code{m1+m2} columns correspond to slack and surplus variables. If
|
57 |
\code{m1+m2} columns correspond to slack and surplus variables. If
|
| 57 |
no feasible solution is found there will be an additional
|
58 |
no feasible solution is found there will be an additional
|
| 58 |
\code{m1+m2+m3} columns for the artificial variables introduced to
|
59 |
\code{m1+m2+m3} columns for the artificial variables introduced to
|
| 59 |
solve the first phase of the problem.
|
60 |
solve the first phase of the problem.
|
| 60 |
}
|
61 |
}
|
| 61 |
\item{basic}{
|
62 |
\item{basic}{
|
| 62 |
The indices of the basic (non-zero) variables in the solution.
|
63 |
The indices of the basic (non-zero) variables in the solution.
|
| 63 |
Indices between \code{n+1} and \code{n+m1} correspond to slack
|
64 |
Indices between \code{n+1} and \code{n+m1} correspond to slack
|
| 64 |
variables, those between \code{n+m1+1} and \code{n+m2} correspond to
|
65 |
variables, those between \code{n+m1+1} and \code{n+m2} correspond to
|
| 65 |
surplus variables and those greater than \code{n+m2} are artificial
|
66 |
surplus variables and those greater than \code{n+m2} are artificial
|
| 66 |
variables. Indices greater than \code{n+m2} should occur only if
|
67 |
variables. Indices greater than \code{n+m2} should occur only if
|
| 67 |
\code{solved} is \code{-1} as the artificial variables are discarded in
|
68 |
\code{solved} is \code{-1} as the artificial variables are discarded in
|
| 68 |
the second stage of the simplex method.
|
69 |
the second stage of the simplex method.
|
| 69 |
}
|
70 |
}
|
| 70 |
\item{slack}{
|
71 |
\item{slack}{
|
| 71 |
The final values of the \code{m1} slack variables which arise when
|
72 |
The final values of the \code{m1} slack variables which arise when
|
| 72 |
the "<=" constraints are re-expressed as the equalities
|
73 |
the "<=" constraints are re-expressed as the equalities
|
| 73 |
\code{A1\%*\%x + slack = b1}.
|
74 |
\code{A1\%*\%x + slack = b1}.
|
| 74 |
}
|
75 |
}
|
| 75 |
\item{surplus}{
|
76 |
\item{surplus}{
|
| 76 |
The final values of the \code{m2} surplus variables which arise when
|
77 |
The final values of the \code{m2} surplus variables which arise when
|
| 77 |
the "<=" constraints are re-expressed as the equalities \code{A2\%*\%x -
|
78 |
the "<=" constraints are re-expressed as the equalities \code{A2\%*\%x -
|
| 78 |
surplus = b2}.
|
79 |
surplus = b2}.
|
| 79 |
}
|
80 |
}
|
| 80 |
\item{artificial}{
|
81 |
\item{artificial}{
|
| 81 |
This is NULL if a feasible solution can be found. If no solution
|
82 |
This is NULL if a feasible solution can be found. If no solution
|
| 82 |
can be found then this contains the values of the \code{m1+m2+m3}
|
83 |
can be found then this contains the values of the \code{m1+m2+m3}
|
| 83 |
artificial variables which minimize their sum subject to the
|
84 |
artificial variables which minimize their sum subject to the
|
| 84 |
original constraints. A feasible solution exists only if all of the
|
85 |
original constraints. A feasible solution exists only if all of the
|
| 85 |
artificial variables can be made 0 simultaneously.
|
86 |
artificial variables can be made 0 simultaneously.
|
| - |
|
87 |
}
|
| 86 |
}
|
88 |
}
|
| 87 |
}
|
89 |
}
|
| 88 |
\seealso{
|
90 |
\seealso{
|
| 89 |
\code{\link{print.simplex}}, \code{\link{simplex}}
|
91 |
\code{\link{print.simplex}}, \code{\link{simplex}}
|
| 90 |
}
|
92 |
}
|