Hi,
I found a set of programs at
http://www.ticalc.org and converted them
to Simplex.tns in the Files section.
Here is what the author had to say about the original TI-89 programs:
------------------------------------------------------------------------------------------
SIMPLEX ALGORITHM on the TI89
Four programs are provided to implement the SIMPLEX ALGORITHM on TI
calculators; ZSIMPLEX, SIMPLEX, XSIMPLEX, and XSIMPCFG. After the
programs are installed on the calculator, the Tableaux Matrix, mat,
must be entered either directly or by the matrix editor. Three
examples will be used to illustrate the Tableaux in different cases.
Since these algorithms use the "Big M" method, the Tableaux must be
constructed accordingly.
Notes: < really means <= (less than or equal to)
> really means >= (greater than or equal to)
Example 1:
Maximize: Z = 3x + 5y
Subject to: x < 4
2y < 12
3x + 2y < 18
With the introduction of slack variables, the resulting Tableaux is
-3 -5 0 0 0 0
1 0 1 0 0 4
0 2 0 1 0 12
3 2 0 0 1 18
The solution may be obtained by running the program SIMPLEX(mat). The
TI89 display will be:
DONE
The answer has been stored to the variable, ANSWER, which contains the
list
{36. 2. 6. 2. 0 0}
The maximum value for Z will be 36 when the objective variables, the
next two entries in list ANSWER, take the values x = 2 and y = 6.
The values for the three slack variables are also included in the
list. The Tableaux matrix may be viewed by recalling the variable,
mat, to the home screen.
If the student would prefer to step through the solution process from
one Tableaux to the next then enter the Tableaux matrix, mat, as
previously described. Now run XSIMPLEX(mat)->mat. The next Tableaux
will be computed and displayed. The cursor keys can be used to scroll
through the resulting Tableaux.
-3 0 0 5/2 0 30
1 0 1 0 0 4
0 1 0 1/2 0 6
3 0 0 -1 1 6
If the Tableaux has negative entries in the top row, press [ENTER]
to run XSIMPLEX(mat)->mat again. Continue pressing [ENTER] and
scrolling the resulting matrix until the Tableaux is in the final
form.
0 0 0 3/2 1 36
0 0 1 1/3 -1/3 2
0 1 0 1/2 0 6
1 0 0 -1/3 1/3 2
The resulting values for Z and the objective variables may be read
directly from the matrix, mat. Note that the original Tableaux
Matrix, mat, is changed by both of these programs. It is a good idea
to back it up under another name, bak, before running the programs.
Example 2:
Maximize: Z = 3x + 5y
Subject to: x < 4
2y < 12
3x + 2y = 18
With the introduction of an artificial variable to account for the
equality, the resulting Tableaux, mat, is
-3 -5 0 0 1000 0
1 0 1 0 0 4
0 2 0 1 0 12
3 2 0 0 1 18
1000 is added to the objective function to mark the column containing
the artificial variable as per the "Big M" method. When SIMPLEX(mat)
is run the result is stored to the variable ANSWER as before and we
have the list:
{36. 2. 6. 2. 0 0}
If we prefer to step through the solution process, we must run
XSIMPCFG(mat)->mat once initially to configure the Tableaux and enable
it to handle the Big M.(1000).
-3003 -2005 0 0 0 -18000
1 0 1 0 0 4
0 2 0 1 0 12
3 2 0 0 1 18
Then run XSIMPLEX(mat)->mat repeatedly until the Tableaux is in its
final form.
0 0 0 3/2 1001 36
1 0 0 -1/3 1/3 2
0 0 1 1/3 -1/3 2
0 1 0 1/2 0 6
Example 3:
Minimize: Z = .4x + .5y
Subject to: .3x + .1y < 2.7 .5x + .5y = 6
.6x + .4y > 6
With the introduction of a surplus variable to account for the (>=)
(greater than or equal to) in the last equation, the resulting
Tableaux is
.4 .5 0 1000 0 1000 0
.3 .1 1 0 0 0 2.7
.5 .5 0 1 0 0 6
.6 .4 0 0 -1 1 6
1000 is added to the objective function to mark the columns
containing the artificial variables as per the "Big M" method and -1
marks the surplus variable column. The problem has been transformed
from a minimize problem to a maximize problem by taking the negative
of the objective function. When SIMPLEX is run the result is:
{-5.25 7.5 4.5 0 0 .3 0}
Since we started by taking the negative of the objective function we
must now take the negative of Z to obtain the actual minimum value
5.25. This minimum value is achieved when the variables are x = 7.5
and y = 4.5.
To step through the successive Tableaux we must first run
XSIMPCFG(mat)->mat to configure the Big M's and then repeatedly run
XSIMPLEX(mat)->mat as in Example 2. The final Tableaux is:
0 0 .5 998.9 0 1000 -5.25
1 0 5. -1. 0 0 7.5
0 0 1. .6 1 -1 .3
0 1 -5. 3. 0 0 4.5
This process may be automated somewhat by running the program
ZSIMPLEX(). This program sets up a menu from which all the choices
just described may be easily made. Install all the programs to the
same directory on your calculator.
Send questions or comments to:
Scott Campbell
camp...@fnbnet.net
------------------------------------------------------------------------------------------
I placed the document into My Library for my PC based version of the
software but still cannot get this to work.
Can someone please help?
Luke Setzer