©
Linear Programming: random (3)
Solves Linear Programming problems. UNDER CONSTRUCTION
2024.Nov.29 01:25:46
Constr.s, variables Rows and columns in the matrix.
RHS LBound Common RHS lower bound (... ≥ RHS LBound).
Optimizing engine   Linear Programming engine
Distribution     0-1 distributions
Rise "Rise" (∈ [0, 1.5]), iff 'gen-U-quadratic'.
Trials (N),* seed   Monte Carlo trials and seed (0: unrepeatable).
Points; xL, xR; yM (n: autoscale) Plot: n. of points; left, right limits; y max.
Show values Show graph coordinates.
Solves many, N, Linear Programming problems of the form min∑j xj (i.e., c = 1), subject to "≥ 1" (≥ RHS LBound) with random constraint matrix (figures: example with 4 constraints and 5 variables; and negative and positive skewness).

objfun constr    skew

Computation can be through: Python 'linprog'; CPLEX (from Fortran); and Gurobi (from Python).

For the (symmetric) triangular, it is: x = √(r/2) for r ≤ ½, and x = 1 − √[(1−r)/2], otherwise, from F1 = 2x² and F2 = −2x² + 4x − 1 .

*Excessive N leads to time out.

Languages used: PHP, for the web page; Python for management and 'linprog'; Fortran 90 to call CPLEX; and 'gnuplot', for plotting.

Draws plots of: (i) frequency of the objective function values, and a "shadow" Gaussian with same mean and standard deviation; and (ii) distribution of aij.


Computation structure — A PHP file (this page: 'P-tLinProg.php') calls (via 'action=...') an intermediate PHP file ('TLinProg.php'), which (through $_POST) sends the problem data as command line arguments to a Python script. This last does the computing, and makes 'subprocess' calls to 'gnuplot', for the final (temporary) webpage.

Keywords: PHP, Python script, subprocess, CPLEX, Gurobi, gnuplot.

References: Plate: LinProgRand

• (Wikipedia) PHP (from Personal Home Page)

• Python scipy.optimize.linprog, accessed 31-May-2024.

• icSoftComp2024, 6.th International Conference on Soft Computing and its Engineering Applications, Bangkok (Thailand), 10–12 Dec 2024.

• 1879-03-14: Einstein, Albert (†1955-04-18, 76 yrs.).

 
 
Valid HTML 5! IST http://web.tecnico.ulisboa.pt/~mcasquilho/compute/icSoftComp2024/three/P-tLinProg.php
Created: 2024-03-14 — Last modified: 2024-11-28