In previous posts I have demonstrated how to solve linear programs in R using lpSolve – or in Python using SciPy.optimize. In this coding example I want to show how to conduct simple linear optimization using the FuzzyLP package.

FuzzyLP is a package for “fuzzy” linear programming, i.e. linear optimization under uncertainty. In later posts I will show how to conduct fuzzy linear programming using FuzzyLP in R. This post focuses on a simple linear program that can be solved using the standard simplex algorithm.

The problem to solve is stated below in scalar syntax:

This problem can be solved by describing it in vector-matrix syntax, i.e. in the following form:

**c** is the coefficient vector of the objective function. **x** is the vector containing the optimization variables. **A** is the coefficient matrix of the linear constraints and **b** is the vector containing the constraint values.

In below coding example these vectors and matrices are defined in R and the problem is modelled and solved using crispLP, a function contained by FuzzyLP package. crispLP will solve the problem using the standard simplex algorithm.

```
#install.packages("FuzzyLP")
library(FuzzyLP)
```

```
# define vectors and matrices that describe the problem at hand
c <- c(3,4)
A <- matrix(c(1,1),nrow=1)
dir <- c("<=")
b <- c(1)
# using crispLP from FuzzyLP to solve the problem; since it is a maximization problem "maximum" has to be TRUE
solution <- crispLP(objective = c,
A = A,
dir = dir,
b = b,
maximum = TRUE)
```

`## [1] "Solution is optimal."`

```
# output solution
solution
```

```
## x1 x2 objective
## [1,] 0 1 4
```

## Leave a Reply