11const matrizMin = require ( './app/models/matriz minimizar/matrizMin' ) ;
22const mathjs = require ( 'mathjs' ) ;
33
4+ //#region Maximizar
5+
6+ // var numDecisionVar = 3; // Quantidade de variáveis de decisão
7+ // var numConstraintVar = 3; // Quantidade de variáveis de restrição
8+
9+ // var line1 = [1, 1, 1, 100];
10+ // var line2 = [10, 4, 5, 600];
11+ // var line3 = [2, 2, 6, 300];
12+ // var line4 = [-10, -6, -4];
13+ // var matriz = new matrizMin(numConstraintVar + 1, numDecisionVar + 1);
14+ // for (var i = 0; i < numConstraintVar + 1; i++)
15+ // {
16+ // switch (i)
17+ // {
18+ // case 0:
19+ // matriz.addInput(line1, i);
20+ // break;
21+ // case 1:
22+ // matriz.addInput(line2, i);
23+ // break;
24+ // case 2:
25+ // matriz.addInput(line3, i);
26+ // break;
27+ // case 3:
28+ // matriz.addInput(line4, i);
29+ // break;
30+ // }
31+ // }
32+
33+ //#endregion
34+
35+ //#region Minimizar
436
537var numDecisionVar = 2 ; // Quantidade de variáveis de decisão
638var numConstraintVar = 2 ; // Quantidade de variáveis de restrição
739
840var matriz = new matrizMin ( numConstraintVar + 1 , numDecisionVar + 1 ) ;
941
10- // MIN Z = 2 *x1 - 3*x2
11- //MAX Z = -2*x1 + 3*x2
12- var line1 = [ 1 , 1 , 1 , 100 ] ;
13- var line2 = [ 10 , 4 , 5 , 600 ] ;
14- var line3 = [ 2 , 2 , 6 , 300 ] ;
15- var line4 = [ - 10 , - 6 , - 4 ] ;
42+ var line1 = [ 4 , - 1 , 6 ] ;
43+ var line2 = [ 1 , 1 , 4 ] ;
44+ var Z = [ + 2 , - 3 ] ;
1645
17- for ( var i = 0 ; i < numConstraintVar + 1 ; i ++ )
46+ for ( var i = 0 ; i < numConstraintVar + 1 ; i ++ )
1847{
1948 switch ( i )
2049 {
@@ -25,45 +54,26 @@ for (var i = 0; i < numConstraintVar + 1; i++)
2554 matriz . addInput ( line2 , i ) ;
2655 break ;
2756 case 2 :
28- matriz . addInput ( line3 , i ) ;
29- break ;
30- case 3 :
31- matriz . addInput ( line4 , i ) ;
57+ matriz . addInput ( Z , i ) ;
3258 break ;
3359 }
34- }
35- // var line1 = [4,-1,6];
36- // var line2 = [1,1,4];
37- // var Z = [+2, -3];
60+ }
61+
62+ //#endregion
3863
39- // for (var i = 0; i < numConstraintVar +1; i++)
40- // {
41- // switch (i)
42- // {
43- // case 0:
44- // matriz.addInput(line1, i);
45- // break;
46- // case 1:
47- // matriz.addInput(line2, i);
48- // break;
49- // case 2:
50- // matriz.addInput(Z, i);
51- // break;
52- // }
53- // }
5464matriz . print ( ) ;
5565
5666var simplexFrame = matrizMin . generateSimplexFrame ( matriz ) ;
5767
5868simplexFrame . print ( ) ;
59-
69+ var typeSimplex = 'min' //Coloque max ou min
6070var iteratorCount = 0 ;
6171//http://www.phpsimplex.com/pt/teoria_metodo_simplex.htm
6272while ( true )
6373{
6474 if ( simplexFrame . checkRowZ ( ) == true ) {
6575 iteratorCount ++ ;
66- simplexFrame = matrizMin . generateNewSimplexFrame ( simplexFrame ) ;
76+ simplexFrame = matrizMin . generateNewSimplexFrame ( simplexFrame , typeSimplex ) ;
6777 simplexFrame . print ( ) ;
6878 }
6979 else
0 commit comments