# FOLP_Posib: Solves a fuzzy objective linear programming problem using... In FuzzyLP: Fuzzy Linear Programming

## Description

The goal is to solve a linear programming problem having Trapezoidal Fuzzy Numbers as coefficients in the objective function (f(x)=c1*x1+…+cn*xn).

Max f(x) or Min f(x)

s.t.: Ax<=b

`FOLP.posib` uses a possibilistic approach. This approach is based on Trapezoidal Fuzzy Numbers arithmetic, so the whole objective may be considered as a Fuzzy Number itself. Defining a notion of maximum for this kind of numbers (a weighted average of the minimum and maximum of the support of the Trapezoidal number).

## Usage

 `1` ```FOLP.posib(objective, A, dir, b, maximum = TRUE, w1 = 0.5) ```

## Arguments

 `objective` A vector (c1, c2, ..., cn) of Trapezoidal Fuzzy Numbers with the objective function coefficients f(x)=c1*x1+…+cn*xn. Note that any of the coefficients may also be Real Numbers. `A` Technological matrix of Real Numbers. `dir` Vector of strings with the direction of the inequalities, of the same length as `b`. Each element of the vector must be one of "=", ">=", "<=", "<" or ">". `b` Vector with the right hand side of the constraints. `maximum` `TRUE` to maximize the objective function, `FALSE` to minimize the objective function. `w1` Weight to be used, `w2` is calculated as `w2=1-w1`. `w1` must be in the interval `[0,1]`.

## Value

`FOLP.posib` returns the solution for the given weights if the solver has found it or NULL if not.

## References

Dubois, D. and Prade, H. Operations in fuzzy numbers. International Journal of Systems Science, 9:613-626, 1978.

## See Also

`FOLP.ordFun`, `FOLP.multiObj`, `FOLP.interv`, `FOLP.strat`

## Examples

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13``` ```## maximize: [0,2,3]*x1 + [1,3,4,5]*x2 ## s.t.: x1 + 3*x2 <= 6 ## x1 + x2 <= 4 ## x1, x2 are non-negative real numbers obj <- c(FuzzyNumbers::TrapezoidalFuzzyNumber(0,2,2,3), FuzzyNumbers::TrapezoidalFuzzyNumber(1,3,4,5)) A<-matrix(c(1, 1, 3, 1), nrow = 2) dir <- c("<=", "<=") b <- c(6, 4) max <- TRUE FOLP.posib(obj, A, dir, b, maximum = max, w1=0.2) ```

FuzzyLP documentation built on April 11, 2021, 5:06 p.m.