https://optimization.mccormick.northwestern.edu/api.php?action=feedcontributions&user=Irinabaek&feedformat=atomoptimization - User contributions [en]2021-10-16T20:11:34ZUser contributionsMediaWiki 1.21.3https://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-08T04:34:43Z<p>Irinabaek: /* Method: Flexible Programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty, or an exact value is not critical to the problem. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the membership function (u), which describes the 'grey spectrum' where constraint violation is permitted [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
Continuing with the age analogy - if young ranges from ages 0 to 30, we can define 0 to 18 as being definitely young, so u = 1. However, as we increase the age from there young is not explicitly defined, and can be given lower u values, as these ages are defined as "less young". <br />
<br />
=Method: Flexible Programming=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming will be described here. This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be combined and further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & c^t x \tilde{\ge} z \\<br />
& Ax \tilde{\le} b\\<br />
& x \tilde{\ge} 0<br />
\end{align}<br />
</math><br />
<br />
The two constraints can be combined and the problem is further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & \hat{A}x \; \tilde{\le} \hat{b} \\<br />
\end{align}<br />
</math><br />
<br />
u_o is the membership function for the initial objective while u_i is the membership function for the constraints. These membership functions describe how closely the fuzzy inequalities are satisfied, we can describe the optimal decision to be:<br />
<br />
<math><br />
\max \min {u_i(x)} = \max u_o(x)<br />
</math><br />
<br />
An optimal solution to this problem can be found by solving<br />
<br />
<math><br />
max \; min \; 1- \frac{\hat{A}_i x - b_i}{\Delta b_i} <br />
</math><br />
<br />
A new variable λ is used to construct an LP that can be solved easily. All membership functions must be greater than or equal to λ<br />
<br><br />
<math><br />
\begin{array}{lcl}<br />
\max \lambda \\<br />
s.t. \sum_{k=1}^n c_ix_i \ge z_l + \lambda(z_u - z_l)\\<br />
\sum_{k=1}^n A_{ij}x_i \le b_j + (1-\lambda)\delta b_i\\<br />
x \ge 0\\<br />
0 \le \lambda \le 1 <br />
\end{array}<br />
</math><br />
<br><br />
<br />
Where <math> z_l \text{ is lower bound of flexible objective and} z_u \text{is upper bound of flexible objective.} \bar{A} \; \text{and} \; \bar{b} \; \text{are} \; \bar{a}_{ij} = \hat{a}_{ij}/ \Delta b_i \; \text{and} \; \bar{b}_i = 1 + (\hat(b_i) / \Delta b_i) </math><br />
<br><br />
And n= m+1, total number of constraints including objective function. Furthermore, crisp constraints remain the same and can be included as additional constraints in this maximization problem [1,2]<br />
<br />
=Applications=<br />
Fuzzy programming has several applications, but it is most widely used for air conditioning systems. Since a room cannot go on and off if the specified temperature is not met by 0.1 degrees, there is a range of temperature that is accepted. If the temperature goes below the fuzzy range, the A/C will turn off, whereas if the temperature goes above the fuzzy range, the A/C will turn back on [4].<br />
Fuzzy programming can be applied to anything where the user does not have a strict preference, and the parameters are somewhat flexible, whether it is the number of hours of labor, amount of raw material obtained, price of product sold, how far someone wants to live from work, or the amount of money someone would be willing to spend on a five-star hotel.<br />
<br />
=Example=<br />
This simple example for Water Resources Management [3] shows how triangular fuzzy programs can be applied to real life situations. NO1 and NO2 provide water to other nodes, while A1 and A2 are water consumers. The goal of this problem is to calculate the amount of water that should be supplied to A1 and A2 in order to maximize profit while still meeting the given constraints [3].<br />
<br />
[[File:Water.png]]<br />
<br />
This is the linear problem:<br />
<math><br />
\max x_1 + 1.5x_2 \;\; \text{Revenue from consumers: A1 (1/L), A2 (1.5/L)}<br />
</math><br />
<math><br />
\begin{array}{lcl}<br />
x_1 &\le& 66 \;\; \text{1 amount of water into N1} \\<br />
x_2 &\le& 59 \;\; \text{2 amount of water into N2} \\<br />
x_1 &\le& 49 \;\; \text{3 maximum demand from A1} \\<br />
x_2 &\le& 35 \;\; \text{4 maximum demand from A2} \\<br />
66+59 - 0.7x_1 - x_2 &\ge& 47 \;\; \text{5 at least 47L into N4, 30 percent of A1 enters N3} \\<br />
59-x_2 &\ge& 8 \;\; \text{6 at least 8L into N3} \\<br />
x_1,x_2 &\ge& 0<br />
\end{array}<br />
</math><br />
<br />
The solution to the linear program is: x1 = 49, x2 = 35 and z= 101.5.<br />
<br />
In the fuzzy problem, the maximum demand from water consumers and the minimum amount of water into N3 and N4 are no longer crisp numbers, but have ranges of values that they may possess.<br />
<math><br />
p_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
p_2 = \begin{pmatrix}<br />
35 \\<br />
37 \\<br />
39 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
45 \\<br />
47 \\<br />
49 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
5 \\<br />
8 \\<br />
11 <br />
\end{pmatrix}<br />
</math><br />
<br />
We proceed to set up our membership functions:<br />
<math><br />
u_p1(x1) = <br />
\begin{cases}<br />
1 & {x_1 \le 49} \\<br />
1- \frac{x_1-49}{55-49} & 49 < x_1 \le 55 \\<br />
0 & x1 \ge 55<br />
\end{cases}</math><br />
<br />
<math><br />
u_p2(x1) = <br />
\begin{cases}<br />
1 & {x_1 \le 35} \\<br />
1- \frac{x_1-35}{39-35} & 35 < x_1 \le 39 \\<br />
0 & x1 \ge 39<br />
\end{cases}</math><br />
<br />
Equation 5 from the LP becomes <br />
<math><br />
\begin{array}{lcl}<br />
66+59 - 0.7x_1 - x_2 &\ge& (45,49) \;\; \text{5 at least 47L into N4, 30 percent of A1 enters N3} \\<br />
0.7x_1 + x_2 &\in& (75,105)<br />
\end{array}<br />
</math><br />
and Eqn 6 becomes<br />
<math><br />
x_2 \in (59-11,59-5)<br />
</math><br />
Finally, the objective function becomes<br />
<math><br />
x_1 + 1.5x_2 \in (75,105)<br />
</math><br />
<br />
Following the method described for flexible programming, we set up a new LP<br />
<br />
<math><br />
\max \lambda<br />
</math><br />
<br><br />
<math><br />
\begin{array}{lcl}<br />
x_1 + 1.5x_2 \ge 75 + 30\lambda\\<br />
x_1 &\le& 66 \;\; \text{does not change from LP} \\<br />
x_2 &\le& 59 \;\; \text{does not change from LP} \\<br />
x_1 &\le& 49 + (1-\lambda)6 \\<br />
x_2 &\le& 35 + (1-\lambda)4 \\<br />
0.7x_1 + x_2 &\le &76 + (1-\lambda)5\\<br />
x_2 &\le& 48 + (1-\lambda)6\\<br />
x_1,x_2 &\ge& 0\\<br />
0 \le \lambda \le<br />
\end{array}<br />
</math><br />
<br />
The new, fuzzy, solution is x1= 49.5, x2=35.34, z = 102.5, and λ = 0.912<br />
<br />
=Conclusion=<br />
Although relatively new and constantly developing, fuzzy programming, at least on the linear level, is quite easy to implement. It can be very useful in predicting something, or dealing with numbers that possess uncertainty.<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf<br />
[3] http://www.ewra.net/ew/pdf/EW_2004_7-8_03.pdf<br />
[4] http://aptnk.in/profile/papers/Fuzzy-Logic-Control-of-Air-Conditioners.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-08T04:32:34Z<p>Irinabaek: /* Applications */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty, or an exact value is not critical to the problem. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the membership function (u), which describes the 'grey spectrum' where constraint violation is permitted [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
Continuing with the age analogy - if young ranges from ages 0 to 30, we can define 0 to 18 as being definitely young, so u = 1. However, as we increase the age from there young is not explicitly defined, and can be given lower u values, as these ages are defined as "less young". <br />
<br />
=Method: Flexible Programming=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming will be described here. This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be combined and further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & c^t x \tilde{\ge} z \\<br />
& Ax \tilde{\le} b\\<br />
& x \tilde{\ge} 0<br />
\end{align}<br />
</math><br />
<br />
The two constraints can be combined and the problem is further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & \hat{A}x \; \tilde{\le} \hat{b} \\<br />
\end{align}<br />
</math><br />
<br />
u_o is the membership function for the initial objective while u_i is the membership function for the constraints. These membership functions describe how closely the fuzzy inequalities are satisfied, we can describe the optimal decision to be:<br />
<br />
<math><br />
\max \min {u_i(x)} = \max u_o(x)<br />
</math><br />
<br />
An optimal solution to this problem can be found by solving<br />
<br />
<math><br />
max \; min \; 1- \frac{\hat{A}_i x - b_i}{\Delta b_i} <br />
</math><br />
<br />
A new variable λ is used to construct an LP that can be solved easily. All membership functions must be greater than or equal to λ<br />
<br><br />
<math><br />
\begin{array}{lcl}<br />
\max \lambda \\<br />
s.t. \sum_{k=1}^n c_ix_i \ge z_l + \lambda(z_u - z_l)\\<br />
\sum_{k=1}^n A_{ij}x_i \le b_j + (1-\lambda)\delta b_i\\<br />
x \ge 0\\<br />
0 \le \lambda \le 1 <br />
\end{array}<br />
</math><br />
<br><br />
<br />
Where <math> z_l is lower bound of flexible objective and z_u is upper bound of flexible objective. \bar{A} \; \text{and} \; \bar{b} \; \text{are} \; \bar{a}_{ij} = \hat{a}_{ij}/ \Delta b_i \; \text{and} \; \bar{b}_i = 1 + (\hat(b_i) / \Delta b_i) </math><br />
<br><br />
And n= m+1, total number of constraints including objective function. Furthermore, crisp constraints remain the same and can be included as additional constraints in this maximization problem.<br />
<br />
=Applications=<br />
Fuzzy programming has several applications, but it is most widely used for air conditioning systems. Since a room cannot go on and off if the specified temperature is not met by 0.1 degrees, there is a range of temperature that is accepted. If the temperature goes below the fuzzy range, the A/C will turn off, whereas if the temperature goes above the fuzzy range, the A/C will turn back on [4].<br />
Fuzzy programming can be applied to anything where the user does not have a strict preference, and the parameters are somewhat flexible, whether it is the number of hours of labor, amount of raw material obtained, price of product sold, how far someone wants to live from work, or the amount of money someone would be willing to spend on a five-star hotel.<br />
<br />
=Example=<br />
This simple example for Water Resources Management [3] shows how triangular fuzzy programs can be applied to real life situations. NO1 and NO2 provide water to other nodes, while A1 and A2 are water consumers. The goal of this problem is to calculate the amount of water that should be supplied to A1 and A2 in order to maximize profit while still meeting the given constraints [3].<br />
<br />
[[File:Water.png]]<br />
<br />
This is the linear problem:<br />
<math><br />
\max x_1 + 1.5x_2 \;\; \text{Revenue from consumers: A1 (1/L), A2 (1.5/L)}<br />
</math><br />
<math><br />
\begin{array}{lcl}<br />
x_1 &\le& 66 \;\; \text{1 amount of water into N1} \\<br />
x_2 &\le& 59 \;\; \text{2 amount of water into N2} \\<br />
x_1 &\le& 49 \;\; \text{3 maximum demand from A1} \\<br />
x_2 &\le& 35 \;\; \text{4 maximum demand from A2} \\<br />
66+59 - 0.7x_1 - x_2 &\ge& 47 \;\; \text{5 at least 47L into N4, 30 percent of A1 enters N3} \\<br />
59-x_2 &\ge& 8 \;\; \text{6 at least 8L into N3} \\<br />
x_1,x_2 &\ge& 0<br />
\end{array}<br />
</math><br />
<br />
The solution to the linear program is: x1 = 49, x2 = 35 and z= 101.5.<br />
<br />
In the fuzzy problem, the maximum demand from water consumers and the minimum amount of water into N3 and N4 are no longer crisp numbers, but have ranges of values that they may possess.<br />
<math><br />
p_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
p_2 = \begin{pmatrix}<br />
35 \\<br />
37 \\<br />
39 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
45 \\<br />
47 \\<br />
49 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
5 \\<br />
8 \\<br />
11 <br />
\end{pmatrix}<br />
</math><br />
<br />
We proceed to set up our membership functions:<br />
<math><br />
u_p1(x1) = <br />
\begin{cases}<br />
1 & {x_1 \le 49} \\<br />
1- \frac{x_1-49}{55-49} & 49 < x_1 \le 55 \\<br />
0 & x1 \ge 55<br />
\end{cases}</math><br />
<br />
<math><br />
u_p2(x1) = <br />
\begin{cases}<br />
1 & {x_1 \le 35} \\<br />
1- \frac{x_1-35}{39-35} & 35 < x_1 \le 39 \\<br />
0 & x1 \ge 39<br />
\end{cases}</math><br />
<br />
Equation 5 from the LP becomes <br />
<math><br />
\begin{array}{lcl}<br />
66+59 - 0.7x_1 - x_2 &\ge& (45,49) \;\; \text{5 at least 47L into N4, 30 percent of A1 enters N3} \\<br />
0.7x_1 + x_2 &\in& (75,105)<br />
\end{array}<br />
</math><br />
and Eqn 6 becomes<br />
<math><br />
x_2 \in (59-11,59-5)<br />
</math><br />
Finally, the objective function becomes<br />
<math><br />
x_1 + 1.5x_2 \in (75,105)<br />
</math><br />
<br />
Following the method described for flexible programming, we set up a new LP<br />
<br />
<math><br />
\max \lambda<br />
</math><br />
<br><br />
<math><br />
\begin{array}{lcl}<br />
x_1 + 1.5x_2 \ge 75 + 30\lambda\\<br />
x_1 &\le& 66 \;\; \text{does not change from LP} \\<br />
x_2 &\le& 59 \;\; \text{does not change from LP} \\<br />
x_1 &\le& 49 + (1-\lambda)6 \\<br />
x_2 &\le& 35 + (1-\lambda)4 \\<br />
0.7x_1 + x_2 &\le &76 + (1-\lambda)5\\<br />
x_2 &\le& 48 + (1-\lambda)6\\<br />
x_1,x_2 &\ge& 0\\<br />
0 \le \lambda \le<br />
\end{array}<br />
</math><br />
<br />
The new, fuzzy, solution is x1= 49.5, x2=35.34, z = 102.5, and λ = 0.912<br />
<br />
=Conclusion=<br />
Although relatively new and constantly developing, fuzzy programming, at least on the linear level, is quite easy to implement. It can be very useful in predicting something, or dealing with numbers that possess uncertainty.<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf<br />
[3] http://www.ewra.net/ew/pdf/EW_2004_7-8_03.pdf<br />
[4] http://aptnk.in/profile/papers/Fuzzy-Logic-Control-of-Air-Conditioners.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-08T04:24:38Z<p>Irinabaek: </p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty, or an exact value is not critical to the problem. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the membership function (u), which describes the 'grey spectrum' where constraint violation is permitted [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
Continuing with the age analogy - if young ranges from ages 0 to 30, we can define 0 to 18 as being definitely young, so u = 1. However, as we increase the age from there young is not explicitly defined, and can be given lower u values, as these ages are defined as "less young". <br />
<br />
=Method: Flexible Programming=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming will be described here. This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be combined and further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & c^t x \tilde{\ge} z \\<br />
& Ax \tilde{\le} b\\<br />
& x \tilde{\ge} 0<br />
\end{align}<br />
</math><br />
<br />
The two constraints can be combined and the problem is further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & \hat{A}x \; \tilde{\le} \hat{b} \\<br />
\end{align}<br />
</math><br />
<br />
u_o is the membership function for the initial objective while u_i is the membership function for the constraints. These membership functions describe how closely the fuzzy inequalities are satisfied, we can describe the optimal decision to be:<br />
<br />
<math><br />
\max \min {u_i(x)} = \max u_o(x)<br />
</math><br />
<br />
An optimal solution to this problem can be found by solving<br />
<br />
<math><br />
max \; min \; 1- \frac{\hat{A}_i x - b_i}{\Delta b_i} <br />
</math><br />
<br />
A new variable λ is used to construct an LP that can be solved easily. All membership functions must be greater than or equal to λ<br />
<br><br />
<math><br />
\begin{array}{lcl}<br />
\max \lambda \\<br />
s.t. \sum_{k=1}^n c_ix_i \ge z_l + \lambda(z_u - z_l)\\<br />
\sum_{k=1}^n A_{ij}x_i \le b_j + (1-\lambda)\delta b_i\\<br />
x \ge 0\\<br />
0 \le \lambda \le 1 <br />
\end{array}<br />
</math><br />
<br><br />
<br />
Where <math> z_l is lower bound of flexible objective and z_u is upper bound of flexible objective. \bar{A} \; \text{and} \; \bar{b} \; \text{are} \; \bar{a}_{ij} = \hat{a}_{ij}/ \Delta b_i \; \text{and} \; \bar{b}_i = 1 + (\hat(b_i) / \Delta b_i) </math><br />
<br><br />
And n= m+1, total number of constraints including objective function. Furthermore, crisp constraints remain the same and can be included as additional constraints in this maximization problem.<br />
<br />
=Applications=<br />
Fuzzy programming has several applications, but it is most widely used for air conditioning systems. Since a room cannot go on and off if the specified temperature is not met by 0.1 degrees, there is a range of temperature that is accepted. If the temperature goes below the fuzzy range, the A/C will turn off, whereas if the temperature goes above the fuzzy range, the A/C will turn back on [4].<br />
Fuzzy programming can be applied to anything where the user does not have a strict preference, including problems that require surveys.<br />
It can also be applied to meteorology<br />
<br />
<br />
=Example=<br />
This simple example for Water Resources Management [3] shows how triangular fuzzy programs can be applied to real life situations. NO1 and NO2 provide water to other nodes, while A1 and A2 are water consumers. The goal of this problem is to calculate the amount of water that should be supplied to A1 and A2 in order to maximize profit while still meeting the given constraints [3].<br />
<br />
[[File:Water.png]]<br />
<br />
This is the linear problem:<br />
<math><br />
\max x_1 + 1.5x_2 \;\; \text{Revenue from consumers: A1 (1/L), A2 (1.5/L)}<br />
</math><br />
<math><br />
\begin{array}{lcl}<br />
x_1 &\le& 66 \;\; \text{1 amount of water into N1} \\<br />
x_2 &\le& 59 \;\; \text{2 amount of water into N2} \\<br />
x_1 &\le& 49 \;\; \text{3 maximum demand from A1} \\<br />
x_2 &\le& 35 \;\; \text{4 maximum demand from A2} \\<br />
66+59 - 0.7x_1 - x_2 &\ge& 47 \;\; \text{5 at least 47L into N4, 30 percent of A1 enters N3} \\<br />
59-x_2 &\ge& 8 \;\; \text{6 at least 8L into N3} \\<br />
x_1,x_2 &\ge& 0<br />
\end{array}<br />
</math><br />
<br />
The solution to the linear program is: x1 = 49, x2 = 35 and z= 101.5.<br />
<br />
In the fuzzy problem, the maximum demand from water consumers and the minimum amount of water into N3 and N4 are no longer crisp numbers, but have ranges of values that they may possess.<br />
<math><br />
p_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
p_2 = \begin{pmatrix}<br />
35 \\<br />
37 \\<br />
39 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
45 \\<br />
47 \\<br />
49 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
5 \\<br />
8 \\<br />
11 <br />
\end{pmatrix}<br />
</math><br />
<br />
We proceed to set up our membership functions:<br />
<math><br />
u_p1(x1) = <br />
\begin{cases}<br />
1 & {x_1 \le 49} \\<br />
1- \frac{x_1-49}{55-49} & 49 < x_1 \le 55 \\<br />
0 & x1 \ge 55<br />
\end{cases}</math><br />
<br />
<math><br />
u_p2(x1) = <br />
\begin{cases}<br />
1 & {x_1 \le 35} \\<br />
1- \frac{x_1-35}{39-35} & 35 < x_1 \le 39 \\<br />
0 & x1 \ge 39<br />
\end{cases}</math><br />
<br />
Equation 5 from the LP becomes <br />
<math><br />
\begin{array}{lcl}<br />
66+59 - 0.7x_1 - x_2 &\ge& (45,49) \;\; \text{5 at least 47L into N4, 30 percent of A1 enters N3} \\<br />
0.7x_1 + x_2 &\in& (75,105)<br />
\end{array}<br />
</math><br />
and Eqn 6 becomes<br />
<math><br />
x_2 \in (59-11,59-5)<br />
</math><br />
Finally, the objective function becomes<br />
<math><br />
x_1 + 1.5x_2 \in (75,105)<br />
</math><br />
<br />
Following the method described for flexible programming, we set up a new LP<br />
<br />
<math><br />
\max \lambda<br />
</math><br />
<br><br />
<math><br />
\begin{array}{lcl}<br />
x_1 + 1.5x_2 \ge 75 + 30\lambda\\<br />
x_1 &\le& 66 \;\; \text{does not change from LP} \\<br />
x_2 &\le& 59 \;\; \text{does not change from LP} \\<br />
x_1 &\le& 49 + (1-\lambda)6 \\<br />
x_2 &\le& 35 + (1-\lambda)4 \\<br />
0.7x_1 + x_2 &\le &76 + (1-\lambda)5\\<br />
x_2 &\le& 48 + (1-\lambda)6\\<br />
x_1,x_2 &\ge& 0\\<br />
0 \le \lambda \le<br />
\end{array}<br />
</math><br />
<br />
The new, fuzzy, solution is x1= 49.5, x2=35.34, z = 102.5, and λ = 0.912<br />
<br />
=Conclusion=<br />
Although relatively new and constantly developing, fuzzy programming, at least on the linear level, is quite easy to implement. It can be very useful in predicting something, or dealing with numbers that possess uncertainty.<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf<br />
[3] http://www.ewra.net/ew/pdf/EW_2004_7-8_03.pdf<br />
[4] http://aptnk.in/profile/papers/Fuzzy-Logic-Control-of-Air-Conditioners.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-08T04:06:53Z<p>Irinabaek: /* Method: Flexible Programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty, or an exact value is not critical to the problem. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the membership function (u), which describes the 'grey spectrum' where constraint violation is permitted [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
Continuing with the age analogy - if young ranges from ages 0 to 30, we can define 0 to 18 as being definitely young, so u = 1. However, as we increase the age from there young is not explicitly defined, and can be given lower u values, as these ages are defined as "less young". <br />
<br />
=Method: Flexible Programming=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming will be described here. This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be combined and further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & c^t x \tilde{\ge} z \\<br />
& Ax \tilde{\le} b\\<br />
& x \tilde{\ge} 0<br />
\end{align}<br />
</math><br />
<br />
The two constraints can be combined and the problem is further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & \hat{A}x \; \tilde{\le} \hat{b} \\<br />
\end{align}<br />
</math><br />
<br />
u_o is the membership function for the initial objective while u_i is the membership function for the constraints. These membership functions describe how closely the fuzzy inequalities are satisfied, we can describe the optimal decision to be:<br />
<br />
<math><br />
\max \min {u_i(x)} = \max u_o(x)<br />
</math><br />
<br />
An optimal solution to this problem can be found by solving<br />
<br />
<math><br />
max \; min \; 1- \frac{\hat{A}_i x - b_i}{\Delta b_i} <br />
</math><br />
<br />
A new variable λ is used to construct an LP that can be solved easily. All membership functions must be greater than or equal to λ<br />
<br><br />
<math><br />
\begin{array}{lcl}<br />
\max \lambda \\<br />
s.t. \sum_{k=1}^2 c_ix_i \ge z_l + \lambda(z_u - z_l)\\<br />
\sum_{k=1}^2 A_{ij}x_i \le b_j + (1-\lambda)\delta b\\<br />
x \ge 0\\<br />
0 \le \lambda \le 1 <br />
\end{array}<br />
</math><br />
<br><br />
<br />
where <math> z_l is lower bound of flexible objective and z_u is upper bound of flexible objective. \bar{A} \; \text{and} \; \bar{b} \; \text{are} \; \bar{a}_{ij} = \hat{a}_{ij}/ \Delta b_i \; \text{and} \; \bar{b}_i = 1 + (\hat(b_i) / \Delta b_i) </math><br />
<br><br />
n= m+1, total number of constraints including objective function. Furthermore, crisp constraints remain the same and can be included as additional constraints in this maximization problem.<br />
<br />
=Applications=<br />
<br />
=Examples=<br />
This simple example for Water Resources Management [3] shows how triangular fuzzy programs can be applied to real life situations. NO1 and NO2 provide water to other nodes, while A1 and A2 are water consumers. The goal of this problem is to calculate the amount of water that should be supplied to A1 and A2 in order to maximize profit while still meeting the given constraints.<br />
<br />
[[File:Water.png]]<br />
<br />
This is the linear problem:<br />
<math><br />
\max x_1 + 1.5x_2 \;\; \text{Revenue from consumers: A1 (1/L), A2 (1.5/L)}<br />
</math><br />
<math><br />
\begin{array}{lcl}<br />
x_1 &\le& 66 \;\; \text{1 amount of water into N1} \\<br />
x_2 &\le& 59 \;\; \text{2 amount of water into N2} \\<br />
x_1 &\le& 49 \;\; \text{3 maximum demand from A1} \\<br />
x_2 &\le& 35 \;\; \text{4 maximum demand from A2} \\<br />
66+59 - 0.7x_1 - x_2 &\ge& 47 \;\; \text{5 at least 47L into N4, 30 percent of A1 enters N3} \\<br />
59-x_2 &\ge& 8 \;\; \text{6 at least 8L into N3} \\<br />
x_1,x_2 &\ge& 0<br />
\end{array}<br />
</math><br />
<br />
The solution to the linear program is: x1 = 49, x2 = 35 and z= 101.5<br />
<br />
In the fuzzy problem, the maximum demand from water consumers and the minimum amount of water into N3 and N4 are no longer crisp numbers, but have ranges of values that they may possess.<br />
<math><br />
p_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
p_2 = \begin{pmatrix}<br />
35 \\<br />
37 \\<br />
39 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
45 \\<br />
47 \\<br />
49 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
5 \\<br />
8 \\<br />
11 <br />
\end{pmatrix}<br />
</math><br />
<br />
We proceed to set up our membership functions:<br />
<math><br />
u_p1(x1) = <br />
\begin{cases}<br />
1 & {x_1 \le 49} \\<br />
1- \frac{x_1-49}{55-49} & 49 < x_1 \le 55 \\<br />
0 & x1 \ge 55<br />
\end{cases}</math><br />
<br />
<math><br />
u_p2(x1) = <br />
\begin{cases}<br />
1 & {x_1 \le 35} \\<br />
1- \frac{x_1-35}{39-35} & 35 < x_1 \le 39 \\<br />
0 & x1 \ge 39<br />
\end{cases}</math><br />
<br />
Equation 5 from the LP becomes <br />
<math><br />
\begin{array}{lcl}<br />
66+59 - 0.7x_1 - x_2 &\ge& (45,49) \;\; \text{5 at least 47L into N4, 30 percent of A1 enters N3} \\<br />
0.7x_1 + x_2 &\in& (75,105)<br />
\end{array}<br />
</math><br />
and Eqn 6 becomes<br />
<math><br />
x_2 \in (59-11,59-5)<br />
</math><br />
Finally, the objective function becomes<br />
<math><br />
x_1 + 1.5x_2 \in (75,105)<br />
</math><br />
<br />
Following the method described for flexible programming, we set up a new LP<br />
<br />
<math><br />
\max \lambda<br />
</math><br />
<br><br />
<math><br />
\begin{array}{lcl}<br />
x_1 + 1.5x_2 \ge 75 + 30\lambda\\<br />
x_1 &\le& 66 \;\; \text{does not change from LP} \\<br />
x_2 &\le& 59 \;\; \text{does not change from LP} \\<br />
x_1 &\le& 49 + (1-\lambda)6 \\<br />
x_2 &\le& 35 + (1-\lambda)4 \\<br />
0.7x_1 + x_2 &\le &76 + (1-\lambda)5\\<br />
x_2 &\le& 48 + (1-\lambda)6\\<br />
x_1,x_2 &\ge& 0\\<br />
0 \le \lambda \le<br />
\end{array}<br />
</math><br />
<br />
The new, fuzzy, solution is x1= 49.5, x2=35.34, z = 102.5, and λ = 0.912<br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf<br />
[3] http://www.ewra.net/ew/pdf/EW_2004_7-8_03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-08T04:01:23Z<p>Irinabaek: /* Examples */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty, or an exact value is not critical to the problem. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the membership function (u), which describes the 'grey spectrum' where constraint violation is permitted [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
Continuing with the age analogy - if young ranges from ages 0 to 30, we can define 0 to 18 as being definitely young, so u = 1. However, as we increase the age from there young is not explicitly defined, and can be given lower u values, as these ages are defined as "less young". <br />
<br />
=Method: Flexible Programming=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming will be described here. This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be combined and further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & c^t x \tilde{\ge} z \\<br />
& Ax \tilde{\le} b\\<br />
& x \tilde{\ge} 0<br />
\end{align}<br />
</math><br />
<br />
The two constraints can be combined and the problem is further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & \hat{A}x \; \tilde{\le} \hat{b} \\<br />
\end{align}<br />
</math><br />
<br />
u_o is the membership function for the initial objective while u_i is the membership function for the constraints. These membership functions describe how closely the fuzzy inequalities are satisfied, we can describe the optimal decision to be:<br />
<br />
<math><br />
\max \min {u_i(x)} = \max u_o(x)<br />
</math><br />
<br />
An optimal solution to this problem can be found by solving<br />
<br />
<math><br />
max \; min \; 1- \frac{\hat{A}_i x - b_i}{\Delta b_i} <br />
</math><br />
<br />
A new variable λ is used to construct an LP that can be solved easily. All membership functions must be greater than or equal to λ<br />
<br><br />
<math> \max \lambda \;\;\;\; s.t. \sum_{k=1}^n \bar{A} x + \lambda \le \bar{b}, x \ge 0, 0 \le \lambda \le 1 </math><br />
<br><br />
<br />
where <math> \bar{A} \; \text{and} \; \bar{b} \; \text{are} \; \bar{a}_{ij} = \hat{a}_{ij}/ \Delta b_i \; \text{and} \; \bar{b}_i = 1 + (\hat(b_i) / \Delta b_i) </math><br />
<br><br />
n= m+1, total number of constraints including objective function.<br />
<br />
=Applications=<br />
<br />
=Examples=<br />
This simple example for Water Resources Management [3] shows how triangular fuzzy programs can be applied to real life situations. NO1 and NO2 provide water to other nodes, while A1 and A2 are water consumers. The goal of this problem is to calculate the amount of water that should be supplied to A1 and A2 in order to maximize profit while still meeting the given constraints.<br />
<br />
[[File:Water.png]]<br />
<br />
This is the linear problem:<br />
<math><br />
\max x_1 + 1.5x_2 \;\; \text{Revenue from consumers: A1 (1/L), A2 (1.5/L)}<br />
</math><br />
<math><br />
\begin{array}{lcl}<br />
x_1 &\le& 66 \;\; \text{1 amount of water into N1} \\<br />
x_2 &\le& 59 \;\; \text{2 amount of water into N2} \\<br />
x_1 &\le& 49 \;\; \text{3 maximum demand from A1} \\<br />
x_2 &\le& 35 \;\; \text{4 maximum demand from A2} \\<br />
66+59 - 0.7x_1 - x_2 &\ge& 47 \;\; \text{5 at least 47L into N4, 30 percent of A1 enters N3} \\<br />
59-x_2 &\ge& 8 \;\; \text{6 at least 8L into N3} \\<br />
x_1,x_2 &\ge& 0<br />
\end{array}<br />
</math><br />
<br />
The solution to the linear program is: x1 = 49, x2 = 35 and z= 101.5<br />
<br />
In the fuzzy problem, the maximum demand from water consumers and the minimum amount of water into N3 and N4 are no longer crisp numbers, but have ranges of values that they may possess.<br />
<math><br />
p_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
p_2 = \begin{pmatrix}<br />
35 \\<br />
37 \\<br />
39 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
45 \\<br />
47 \\<br />
49 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
5 \\<br />
8 \\<br />
11 <br />
\end{pmatrix}<br />
</math><br />
<br />
We proceed to set up our membership functions:<br />
<math><br />
u_p1(x1) = <br />
\begin{cases}<br />
1 & {x_1 \le 49} \\<br />
1- \frac{x_1-49}{55-49} & 49 < x_1 \le 55 \\<br />
0 & x1 \ge 55<br />
\end{cases}</math><br />
<br />
<math><br />
u_p2(x1) = <br />
\begin{cases}<br />
1 & {x_1 \le 35} \\<br />
1- \frac{x_1-35}{39-35} & 35 < x_1 \le 39 \\<br />
0 & x1 \ge 39<br />
\end{cases}</math><br />
<br />
Equation 5 from the LP becomes <br />
<math><br />
\begin{array}{lcl}<br />
66+59 - 0.7x_1 - x_2 &\ge& (45,49) \;\; \text{5 at least 47L into N4, 30 percent of A1 enters N3} \\<br />
0.7x_1 + x_2 &\in& (75,105)<br />
\end{array}<br />
</math><br />
and Eqn 6 becomes<br />
<math><br />
x_2 \in (59-11,59-5)<br />
</math><br />
Finally, the objective function becomes<br />
<math><br />
x_1 + 1.5x_2 \in (75,105)<br />
</math><br />
<br />
Following the method described for flexible programming, we set up a new LP<br />
<br />
<math><br />
\max \lambda<br />
</math><br />
<br><br />
<math><br />
\begin{array}{lcl}<br />
x_1 + 1.5x_2 \ge 75 + 30\lambda\\<br />
x_1 &\le& 66 \;\; \text{does not change from LP} \\<br />
x_2 &\le& 59 \;\; \text{does not change from LP} \\<br />
x_1 &\le& 49 + (1-\lambda)6 \\<br />
x_2 &\le& 35 + (1-\lambda)4 \\<br />
0.7x_1 + x_2 &\le &76 + (1-\lambda)5\\<br />
x_2 &\le& 48 + (1-\lambda)6\\<br />
x_1,x_2 &\ge& 0\\<br />
0 \le \lambda \le<br />
\end{array}<br />
</math><br />
<br />
The new, fuzzy, solution is x1= 49.5, x2=35.34, z = 102.5, and λ = 0.912<br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf<br />
[3] http://www.ewra.net/ew/pdf/EW_2004_7-8_03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-08T03:56:29Z<p>Irinabaek: </p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty, or an exact value is not critical to the problem. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the membership function (u), which describes the 'grey spectrum' where constraint violation is permitted [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
Continuing with the age analogy - if young ranges from ages 0 to 30, we can define 0 to 18 as being definitely young, so u = 1. However, as we increase the age from there young is not explicitly defined, and can be given lower u values, as these ages are defined as "less young". <br />
<br />
=Method: Flexible Programming=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming will be described here. This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be combined and further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & c^t x \tilde{\ge} z \\<br />
& Ax \tilde{\le} b\\<br />
& x \tilde{\ge} 0<br />
\end{align}<br />
</math><br />
<br />
The two constraints can be combined and the problem is further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & \hat{A}x \; \tilde{\le} \hat{b} \\<br />
\end{align}<br />
</math><br />
<br />
u_o is the membership function for the initial objective while u_i is the membership function for the constraints. These membership functions describe how closely the fuzzy inequalities are satisfied, we can describe the optimal decision to be:<br />
<br />
<math><br />
\max \min {u_i(x)} = \max u_o(x)<br />
</math><br />
<br />
An optimal solution to this problem can be found by solving<br />
<br />
<math><br />
max \; min \; 1- \frac{\hat{A}_i x - b_i}{\Delta b_i} <br />
</math><br />
<br />
A new variable λ is used to construct an LP that can be solved easily. All membership functions must be greater than or equal to λ<br />
<br><br />
<math> \max \lambda \;\;\;\; s.t. \sum_{k=1}^n \bar{A} x + \lambda \le \bar{b}, x \ge 0, 0 \le \lambda \le 1 </math><br />
<br><br />
<br />
where <math> \bar{A} \; \text{and} \; \bar{b} \; \text{are} \; \bar{a}_{ij} = \hat{a}_{ij}/ \Delta b_i \; \text{and} \; \bar{b}_i = 1 + (\hat(b_i) / \Delta b_i) </math><br />
<br><br />
n= m+1, total number of constraints including objective function.<br />
<br />
=Applications=<br />
<br />
=Examples=<br />
This simple example for Water Resources Management [3] shows how triangular fuzzy programs can be applied to real life situations. NO1 and NO2 provide water to other nodes, while A1 and A2 are water consumers. The goal of this problem is to calculate the amount of water that should be supplied to A1 and A2 in order to maximize profit while still meeting the given constraints.<br />
<br />
[[File:Water.png]]<br />
<br />
This is the linear problem:<br />
<math><br />
\max x_1 + 1.5x_2 \;\; \text{Revenue from consumers: A1 (1/L), A2 (1.5/L)}<br />
</math><br />
<math><br />
\begin{array}{lcl}<br />
x_1 &\le& 66 \;\; \text{1 amount of water into N1} \\<br />
x_2 &\le& 59 \;\; \text{2 amount of water into N2} \\<br />
x_1 &\le& 49 \;\; \text{3 maximum demand from A1} \\<br />
x_2 &\le& 35 \;\; \text{4 maximum demand from A2} \\<br />
66+59 - 0.7x_1 - x_2 &\ge& 47 \;\; \text{5 at least 47L into N4, 30 percent of A1 enters N3} \\<br />
59-x_2 &\ge& 8 \;\; \text{6 at least 8L into N3} \\<br />
x_1,x_2 &\ge& 0<br />
\end{array}<br />
</math><br />
<br />
The fuzzy problem involves equations 3 and 4 being set as fuzzy triangular numbers, and the minimum amount of water into N3 and N4 become fuzzy values as well.<br />
<math><br />
p_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
p_2 = \begin{pmatrix}<br />
35 \\<br />
37 \\<br />
39 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
45 \\<br />
47 \\<br />
49 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
5 \\<br />
8 \\<br />
11 <br />
\end{pmatrix}<br />
</math><br />
<br />
We proceed to set up our membership functions:<br />
<math><br />
u_p1(x1) = <br />
\begin{cases}<br />
1 & {x_1 \le 49} \\<br />
1- \frac{x_1-49}{55-49} & 49 < x_1 \le 55 \\<br />
0 & x1 \ge 55<br />
\end{cases}</math><br />
<br />
<math><br />
u_p2(x1) = <br />
\begin{cases}<br />
1 & {x_1 \le 35} \\<br />
1- \frac{x_1-35}{39-35} & 35 < x_1 \le 39 \\<br />
0 & x1 \ge 39<br />
\end{cases}</math><br />
<br />
Equation 5 from the LP becomes <br />
<math><br />
\begin{array}{lcl}<br />
66+59 - 0.7x_1 - x_2 &\ge& (45,49) \;\; \text{5 at least 47L into N4, 30 percent of A1 enters N3} \\<br />
0.7x_1 + x_2 &\in& (75,105)<br />
\end{array}<br />
</math><br />
and Eqn 6 becomes<br />
<math><br />
x_2 \in (59-11,59-5)<br />
</math><br />
Finally, the objective function becomes<br />
<math><br />
x_1 + 1.5x_2 \in (75,105)<br />
</math><br />
<br />
Following the method described for flexible programming, we set up a new LP<br />
<br />
<math><br />
\max \lambda<br />
</math><br />
<br><br />
<math><br />
\begin{array}{lcl}<br />
x_1 + 1.5x_2 \ge 75 + 30\lambda\\<br />
x_1 &\le& 66 \;\; \text{does not change from LP} \\<br />
x_2 &\le& 59 \;\; \text{does not change from LP} \\<br />
x_1 &\le& 49 + (1-\lambda)6 \\<br />
x_2 &\le& 35 + (1-\lambda)4 \\<br />
0.7x_1 + x_2 &\le &76 + (1-\lambda)5\\<br />
x_2 &\le& 48 + (1-\lambda)6\\<br />
x_1,x_2 &\ge& 0\\<br />
0 \le \lambda \le<br />
\end{array}<br />
</math><br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf<br />
[3] http://www.ewra.net/ew/pdf/EW_2004_7-8_03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-08T03:52:28Z<p>Irinabaek: </p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty, or an exact value is not critical to the problem. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the membership function (u), which describes the 'grey spectrum' where constraint violation is permitted [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
Continuing with the age analogy - if young ranges from ages 0 to 30, we can define 0 to 18 as being definitely young, so u = 1. However, as we increase the age from there young is not explicitly defined, and can be given lower u values, as these ages are defined as "less young". <br />
<br />
=Method: Flexible Programming=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming will be described here. This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be combined and further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & c^t x \tilde{\ge} z \\<br />
& Ax \tilde{\le} b\\<br />
& x \tilde{\ge} 0<br />
\end{align}<br />
</math><br />
<br />
The two constraints can be combined and the problem is further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & \hat{A}x \; \tilde{\le} \hat{b} \\<br />
\end{align}<br />
</math><br />
<br />
u_o is the membership function for the initial objective while u_i is the membership function for the constraints. These membership functions describe how closely the fuzzy inequalities are satisfied, we can describe the optimal decision to be:<br />
<br />
<math><br />
\max \min {u_i(x)} = \max u_o(x)<br />
</math><br />
<br />
An optimal solution to this problem can be found by solving<br />
<br />
<math><br />
max \; min \; 1- \frac{\hat{A}_i x - b_i}{\Delta b_i} <br />
</math><br />
<br />
A new variable λ is used to construct an LP that can be solved easily. All membership functions must be greater than or equal to λ<br />
<math> \max \lambda \;\;\;\; s.t. \sum_{k=1}^n \bar{A} x + \lambda \le \bar{b}, x \ge 0, 0 \le \lambda \le 1 </math><br />
<br />
where <math> \bar{A} \; \text{and} \; \bar{b} \; \text{are} \; \bar{a}_{ij} = \hat{a}_{ij}/ \Delta b_i \; \text{and} \; \bar{b}_i = 1 + (\hat(b_i) / \Delta b_i) </math><br />
<br />
n= m+1, total number of constraints including objective function.<br />
<br />
=Applications=<br />
<br />
=Examples=<br />
This simple example for Water Resources Management [3] shows how triangular fuzzy programs can be applied to real life situations. NO1 and NO2 provide water to other nodes, while A1 and A2 are water consumers. The goal of this problem is to calculate the amount of water that should be supplied to A1 and A2 in order to maximize profit while still meeting the given constraints.<br />
<br />
[[File:Water.png]]<br />
<br />
This is the linear problem:<br />
<math><br />
\max x_1 + 1.5x_2 \;\; \text{Revenue from consumers: A1 (1/L), A2 (1.5/L)}<br />
</math><br />
<math><br />
\begin{array}{lcl}<br />
x_1 &\le& 66 \;\; \text{1 amount of water into N1} \\<br />
x_2 &\le& 59 \;\; \text{2 amount of water into N2} \\<br />
x_1 &\le& 49 \;\; \text{3 maximum demand from A1} \\<br />
x_2 &\le& 35 \;\; \text{4 maximum demand from A2} \\<br />
66+59 - 0.7x_1 - x_2 &\ge& 47 \;\; \text{5 at least 47L into N4, 30 percent of A1 enters N3} \\<br />
59-x_2 &\ge& 8 \;\; \text{6 at least 8L into N3} \\<br />
x_1,x_2 &\ge& 0<br />
\end{array}<br />
</math><br />
<br />
The fuzzy problem involves equations 3 and 4 being set as fuzzy triangular numbers, and the minimum amount of water into N3 and N4 become fuzzy values as well.<br />
<math><br />
p_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
p_2 = \begin{pmatrix}<br />
35 \\<br />
37 \\<br />
39 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
45 \\<br />
47 \\<br />
49 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
5 \\<br />
8 \\<br />
11 <br />
\end{pmatrix}<br />
</math><br />
<br />
We proceed to set up our membership functions:<br />
<math><br />
u_p1(x1) = <br />
\begin{cases}<br />
1 & {x_1 \le 49} \\<br />
1- \frac{x_1-49}{55-49} & 49 < x_1 \le 55 \\<br />
0 & x1 \ge 55<br />
\end{cases}</math><br />
<br />
<math><br />
u_p2(x1) = <br />
\begin{cases}<br />
1 & {x_1 \le 35} \\<br />
1- \frac{x_1-35}{39-35} & 35 < x_1 \le 39 \\<br />
0 & x1 \ge 39<br />
\end{cases}</math><br />
<br />
Equation 5 from the LP becomes <br />
<math><br />
\begin{array}{lcl}<br />
66+59 - 0.7x_1 - x_2 &\ge& (45,49) \;\; \text{5 at least 47L into N4, 30 percent of A1 enters N3} \\<br />
0.7x_1 + x_2 &\in& (75,105)<br />
\end{array}<br />
</math><br />
and Eqn 6 becomes<br />
<math><br />
x_2 \in (59-11,59-5)<br />
</math><br />
Finally, the objective function becomes<br />
<math><br />
x_1 + 1.5x_2 \in (75,105)<br />
</math><br />
<br />
Following the method described for flexible programming, we set up a new LP<br />
<br />
<math><br />
\max \lambda<br />
</math><br />
<math><br />
\begin{array}{lcl}<br />
x_1 + 1.5x_2 \ge 75 + 30\lambda\\<br />
x_1 &\le& 66 \;\; \text{does not change from LP} \\<br />
x_2 &\le& 59 \;\; \text{does not change from LP} \\<br />
x_1 &\le& 49 + (1-\lambda)6 \\<br />
x_2 &\le& 35 + (1-\lambda)4 \\<br />
0.7x_1 + x_2 &\le &76 + (1-\lambda)5\\<br />
x_2 &\le& 48 + (1-\lambda)6\\<br />
x_1,x_2 &\ge& 0\\<br />
0 \le \lambda \le<br />
\end{array}<br />
</math><br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf<br />
[3] http://www.ewra.net/ew/pdf/EW_2004_7-8_03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-08T03:50:45Z<p>Irinabaek: /* Examples */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty, or an exact value is not critical to the problem. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the membership function (u), which describes the 'grey spectrum' where constraint violation is permitted [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
Continuing with the age analogy - if young ranges from ages 0 to 30, we can define 0 to 18 as being definitely young, so u = 1. However, as we increase the age from there young is not explicitly defined, and can be given lower u values, as these ages are defined as "less young". <br />
<br />
=Method: Flexible Programming=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming will be described here. This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be combined and further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & c^t x \tilde{\ge} z \\<br />
& Ax \tilde{\le} b\\<br />
& x \tilde{\ge} 0<br />
\end{align}<br />
</math><br />
<br />
The two constraints can be combined and the problem is further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & \hat{A}x \; \tilde{\le} \hat{b} \\<br />
\end{align}<br />
</math><br />
<br />
u_o is the membership function for the initial objective while u_i is the membership function for the constraints. These membership functions describe how closely the fuzzy inequalities are satisfied, we can describe the optimal decision to be:<br />
<br />
<math><br />
\max \min {u_i(x)} = \max u_o(x)<br />
</math><br />
<br />
An optimal solution to this problem can be found by solving<br />
<br />
<math><br />
max \; min \; 1- \frac{\hat{A}_i x - b_i}{\Delta b_i} <br />
</math><br />
<br />
A new variable λ is used to construct an LP that can be solved easily. All membership functions must be greater than or equal to λ<br />
<math> \max \lambda \;\;\;\; s.t. \sum_{k=1}^n \bar{A} x + \lambda \le \bar{b}, x \ge 0, 0 \le \lambda \le 1 </math><br />
<br />
where <math> \bar{A} \; \text{and} \; \bar{b} \; \text{are} \; \bar{a}_{ij} = \hat{a}_{ij}/ \Delta b_i \; \text{and} \; \bar{b}_i = 1 + (\hat(b_i) / \Delta b_i) </math><br />
<br />
n= m+1, total number of constraints including objective function.<br />
<br />
=Applications=<br />
<br />
=Examples=<br />
This simple example for Water Resources Management [3] shows how triangular fuzzy programs can be applied to real life situations. NO1 and NO2 provide water to other nodes, while A1 and A2 are water consumers. The goal of this problem is to calculate the amount of water that should be supplied to A1 and A2 in order to maximize profit while still meeting the given constraints.<br />
<br />
[[File:Water.png]]<br />
<br />
This is the linear problem:<br />
<math><br />
\max x_1 + 1.5x_2 \;\; \text{Revenue from consumers: A1 (1/L), A2 (1.5/L)}<br />
</math><br />
<math><br />
\begin{array}{lcl}<br />
x_1 &\le& 66 \;\; \text{1 amount of water into N1} \\<br />
x_2 &\le& 59 \;\; \text{2 amount of water into N2} \\<br />
x_1 &\le& 49 \;\; \text{3 maximum demand from A1} \\<br />
x_2 &\le& 35 \;\; \text{4 maximum demand from A2} \\<br />
66+59 - 0.7x_1 - x_2 &\ge& 47 \;\; \text{5 at least 47L into N4, 30 percent of A1 enters N3} \\<br />
59-x_2 &\ge& 8 \;\; \text{6 at least 8L into N3} \\<br />
x_1,x_2 &\ge& 0<br />
\end{array}<br />
</math><br />
<br />
The fuzzy problem involves equations 3 and 4 being set as fuzzy triangular numbers, and the minimum amount of water into N3 and N4 become fuzzy values as well.<br />
<math><br />
p_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
p_2 = \begin{pmatrix}<br />
35 \\<br />
37 \\<br />
39 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
45 \\<br />
47 \\<br />
49 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
5 \\<br />
8 \\<br />
11 <br />
\end{pmatrix}<br />
</math><br />
<br />
We proceed to set up our membership functions:<br />
<math><br />
u_p1(x1) = <br />
\begin{cases}<br />
1 & {x_1 \le 49} \\<br />
1- \frac{x_1-49}{55-49} & 49 < x_1 \le 55 \\<br />
0 & x1 \ge 55<br />
\end{cases}</math><br />
<br />
<math><br />
u_p2(x1) = <br />
\begin{cases}<br />
1 & {x_1 \le 35} \\<br />
1- \frac{x_1-35}{39-35} & 35 < x_1 \le 39 \\<br />
0 & x1 \ge 39<br />
\end{cases}</math><br />
<br />
Equation 5 from the LP becomes <br />
<math><br />
66+59 - 0.7x_1 - x_2 \ge (45,49) \;\; \text{5 at least 47L into N4, 30 percent of A1 enters N3} \\<br />
0.7x_1 + x_2 \in (75,105)<br />
</math><br />
and Eqn 6 becomes<br />
<math><br />
x_2 \in (59-11,59-5)<br />
</math><br />
Finally, the objective function becomes<br />
<math><br />
x_1 + 1.5x_2 \in (75,105)<br />
</math><br />
<br />
Following the method described for flexible programming, we set up a new LP<br />
<br />
<math><br />
\max \lambda<br />
</math><br />
<math><br />
\begin{array}{lcl}<br />
x_1 + 1.5x_2 \ge 75 + 30\lambda\\<br />
x_1 &\le& 66 \;\; \text{does not change from LP} \\<br />
x_2 &\le& 59 \;\; \text{does not change from LP} \\<br />
x_1 &\le& 49 + (1-\lambda)6 \\<br />
x_2 &\le& 35 + (1-\lambda)4 \\<br />
0.7x_1 + x_2 \le 76 + (1-\lambda)5<br />
x_2 \le 48 + (1-\lambda)6<br />
x_1,x_2 &\ge& 0\\<br />
0 \le \lambda \le<br />
\end{array}<br />
</math><br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf<br />
[3] http://www.ewra.net/ew/pdf/EW_2004_7-8_03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-08T03:47:15Z<p>Irinabaek: /* Method: Flexible Programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty, or an exact value is not critical to the problem. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the membership function (u), which describes the 'grey spectrum' where constraint violation is permitted [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
Continuing with the age analogy - if young ranges from ages 0 to 30, we can define 0 to 18 as being definitely young, so u = 1. However, as we increase the age from there young is not explicitly defined, and can be given lower u values, as these ages are defined as "less young". <br />
<br />
=Method: Flexible Programming=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming will be described here. This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be combined and further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & c^t x \tilde{\ge} z \\<br />
& Ax \tilde{\le} b\\<br />
& x \tilde{\ge} 0<br />
\end{align}<br />
</math><br />
<br />
The two constraints can be combined and the problem is further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & \hat{A}x \; \tilde{\le} \hat{b} \\<br />
\end{align}<br />
</math><br />
<br />
u_o is the membership function for the initial objective while u_i is the membership function for the constraints. These membership functions describe how closely the fuzzy inequalities are satisfied, we can describe the optimal decision to be:<br />
<br />
<math><br />
\max \min {u_i(x)} = \max u_o(x)<br />
</math><br />
<br />
An optimal solution to this problem can be found by solving<br />
<br />
<math><br />
max \; min \; 1- \frac{\hat{A}_i x - b_i}{\Delta b_i} <br />
</math><br />
<br />
A new variable λ is used to construct an LP that can be solved easily. All membership functions must be greater than or equal to λ<br />
<math> \max \lambda \;\;\;\; s.t. \sum_{k=1}^n \bar{A} x + \lambda \le \bar{b}, x \ge 0, 0 \le \lambda \le 1 </math><br />
<br />
where <math> \bar{A} \; \text{and} \; \bar{b} \; \text{are} \; \bar{a}_{ij} = \hat{a}_{ij}/ \Delta b_i \; \text{and} \; \bar{b}_i = 1 + (\hat(b_i) / \Delta b_i) </math><br />
<br />
n= m+1, total number of constraints including objective function.<br />
<br />
=Applications=<br />
<br />
=Examples=<br />
This simple example for Water Resources Management [3] shows how triangular fuzzy programs can be applied to real life situations. NO1 and NO2 provide water to other nodes, while A1 and A2 are water consumers. The goal of this problem is to calculate the amount of water that should be supplied to A1 and A2 in order to maximize profit while still meeting the given constraints.<br />
<br />
[[File:Water.png]]<br />
<br />
This is the linear problem:<br />
<math><br />
\max x_1 + 1.5x_2 \;\; \text{Revenue from consumers: A1 (1/L), A2 (1.5/L)}<br />
</math><br />
<math><br />
\begin{array}{lcl}<br />
x_1 &\le& 66 \;\; \text{1 amount of water into N1} \\<br />
x_2 &\le& 59 \;\; \text{2 amount of water into N2} \\<br />
x_1 &\le& 49 \;\; \text{3 maximum demand from A1} \\<br />
x_2 &\le& 35 \;\; \text{4 maximum demand from A2} \\<br />
66+59 - 0.7x_1 - x_2 &\ge& 47 \;\; \text{5 at least 47L into N4, 30 percent of A1 enters N3} \\<br />
59-x_2 &\ge& 8 \;\; \text{6 at least 8L into N3} \\<br />
x_1,x_2 &\ge& 0<br />
\end{array}<br />
</math><br />
<br />
The fuzzy problem involves equations 3 and 4 being set as fuzzy triangular numbers, and the minimum amount of water into N3 and N4 become fuzzy values as well.<br />
<math><br />
p_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
p_2 = \begin{pmatrix}<br />
35 \\<br />
37 \\<br />
39 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
45 \\<br />
47 \\<br />
49 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
5 \\<br />
8 \\<br />
11 <br />
\end{pmatrix}<br />
</math><br />
<br />
We proceed to set up our membership functions:<br />
<math><br />
u_p1(x1) = <br />
\begin{cases}<br />
1 & {x_1 \le 49} \\<br />
1- \frac{x_1-49}{55-49} & 49 < x_1 \le 55 \\<br />
0 & x1 \ge 55<br />
\end{cases}</math><br />
<br />
<math><br />
u_p2(x1) = <br />
\begin{cases}<br />
1 & {x_1 \le 35} \\<br />
1- \frac{x_1-35}{39-35} & 35 < x_1 \le 39 \\<br />
0 & x1 \ge 39<br />
\end{cases}</math><br />
<br />
Equation 5 from the LP becomes <br />
<math><br />
66+59 - 0.7x_1 - x_2 &\ge& (45,49) \;\; \text{5 at least 47L into N4, 30 percent of A1 enters N3} \\<br />
0.7x_1 + x_2 \in (75,105)<br />
</math><br />
and Eqn 6 becomes<br />
<math><br />
x_2 \in (59-11,59-5)<br />
</math><br />
Finally, the objective function becomes<br />
<math><br />
x_1 + 1.5x_2 \in (75,105)<br />
</math><br />
<br />
Following the method described for flexible programming, we set up a new LP<br />
<br />
<math><br />
\max \lambda<br />
</math><br />
<math><br />
\begin{array}{lcl}<br />
x_1 + 1.5x_2 \ge 75 + 30\lambda\\<br />
x_1 &\le& 66 \;\; \text{does not change from LP} \\<br />
x_2 &\le& 59 \;\; \text{does not change from LP} \\<br />
x_1 &\le& 49 + (1-\lambda)6 \\<br />
x_2 &\le& 35 + (1-\lambda)4 \\<br />
0.7x_1 + x_2 \le 76 + (1-\lambda)5<br />
x_2 \le 48 + (1-\lambda)6<br />
x_1,x_2 &\ge& 0\\<br />
0 \le \lambda \le<br />
\end{array}<br />
</math><br />
<br />
<br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf<br />
[3] http://www.ewra.net/ew/pdf/EW_2004_7-8_03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-08T03:46:11Z<p>Irinabaek: </p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty, or an exact value is not critical to the problem. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the membership function (u), which describes the 'grey spectrum' where constraint violation is permitted [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
Continuing with the age analogy - if young ranges from ages 0 to 30, we can define 0 to 18 as being definitely young, so u = 1. However, as we increase the age from there young is not explicitly defined, and can be given lower u values, as these ages are defined as "less young". <br />
<br />
=Method: Flexible Programming=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming will be described here. This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be combined and further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & c^t x \tilde{\ge} z \\<br />
& Ax \tilde{\le} b\\<br />
& x \tilde{\ge} 0<br />
\end{align}<br />
</math><br />
<br />
The two constraints can be combined and the problem is further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & \hat{A}x \; \tilde{\le} \hat{b} \\<br />
\end{align}<br />
</math><br />
<br />
u_o is the membership function for the initial objective while u_i is the membership function for the constraints. These membership functions describe how closely the fuzzy inequalities are satisfied, we can describe the optimal decision to be:<br />
<br />
<math><br />
\max \min {u_i(x)} = \max u_o(x)<br />
</math><br />
<br />
An optimal solution to this problem can be found by solving<br />
<br />
<math><br />
max \; min \; 1- \frac{\hat{A}_i x - b_i}{\Delta b_i} <br />
</math><br />
<br />
A new variable λ is used to construct an LP that can be solved easily. All membership functions must be greater than or equal to λ<br />
<math> \max \lambda \;\;\;\; s.t. \bar{A} x + \lambda \le \bar{b}, x \ge 0, 0 \le \lambda \le 1 </math><br />
<br />
where <math> \sum_{k=1}^n \bar{A} \; \text{and} \; \bar{b} \; \text{are} \; \bar{a}_{ij} = \hat{a}_{ij}/ \Delta b_i \; \text{and} \; \bar{b}_i = 1 + (\hat(b_i) / \Delta b_i) </math><br />
<br />
n= m+1, total number of constraints including objective function.<br />
<br />
=Applications=<br />
<br />
=Examples=<br />
This simple example for Water Resources Management [3] shows how triangular fuzzy programs can be applied to real life situations. NO1 and NO2 provide water to other nodes, while A1 and A2 are water consumers. The goal of this problem is to calculate the amount of water that should be supplied to A1 and A2 in order to maximize profit while still meeting the given constraints.<br />
<br />
[[File:Water.png]]<br />
<br />
This is the linear problem:<br />
<math><br />
\max x_1 + 1.5x_2 \;\; \text{Revenue from consumers: A1 (1/L), A2 (1.5/L)}<br />
</math><br />
<math><br />
\begin{array}{lcl}<br />
x_1 &\le& 66 \;\; \text{1 amount of water into N1} \\<br />
x_2 &\le& 59 \;\; \text{2 amount of water into N2} \\<br />
x_1 &\le& 49 \;\; \text{3 maximum demand from A1} \\<br />
x_2 &\le& 35 \;\; \text{4 maximum demand from A2} \\<br />
66+59 - 0.7x_1 - x_2 &\ge& 47 \;\; \text{5 at least 47L into N4, 30 percent of A1 enters N3} \\<br />
59-x_2 &\ge& 8 \;\; \text{6 at least 8L into N3} \\<br />
x_1,x_2 &\ge& 0<br />
\end{array}<br />
</math><br />
<br />
The fuzzy problem involves equations 3 and 4 being set as fuzzy triangular numbers, and the minimum amount of water into N3 and N4 become fuzzy values as well.<br />
<math><br />
p_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
p_2 = \begin{pmatrix}<br />
35 \\<br />
37 \\<br />
39 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
45 \\<br />
47 \\<br />
49 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
5 \\<br />
8 \\<br />
11 <br />
\end{pmatrix}<br />
</math><br />
<br />
We proceed to set up our membership functions:<br />
<math><br />
u_p1(x1) = <br />
\begin{cases}<br />
1 & {x_1 \le 49} \\<br />
1- \frac{x_1-49}{55-49} & 49 < x_1 \le 55 \\<br />
0 & x1 \ge 55<br />
\end{cases}</math><br />
<br />
<math><br />
u_p2(x1) = <br />
\begin{cases}<br />
1 & {x_1 \le 35} \\<br />
1- \frac{x_1-35}{39-35} & 35 < x_1 \le 39 \\<br />
0 & x1 \ge 39<br />
\end{cases}</math><br />
<br />
Equation 5 from the LP becomes <br />
<math><br />
66+59 - 0.7x_1 - x_2 &\ge& (45,49) \;\; \text{5 at least 47L into N4, 30 percent of A1 enters N3} \\<br />
0.7x_1 + x_2 \in (75,105)<br />
</math><br />
and Eqn 6 becomes<br />
<math><br />
x_2 \in (59-11,59-5)<br />
</math><br />
Finally, the objective function becomes<br />
<math><br />
x_1 + 1.5x_2 \in (75,105)<br />
</math><br />
<br />
Following the method described for flexible programming, we set up a new LP<br />
<br />
<math><br />
\max \lambda<br />
</math><br />
<math><br />
\begin{array}{lcl}<br />
x_1 + 1.5x_2 \ge 75 + 30\lambda\\<br />
x_1 &\le& 66 \;\; \text{does not change from LP} \\<br />
x_2 &\le& 59 \;\; \text{does not change from LP} \\<br />
x_1 &\le& 49 + (1-\lambda)6 \\<br />
x_2 &\le& 35 + (1-\lambda)4 \\<br />
0.7x_1 + x_2 \le 76 + (1-\lambda)5<br />
x_2 \le 48 + (1-\lambda)6<br />
x_1,x_2 &\ge& 0\\<br />
0 \le \lambda \le<br />
\end{array}<br />
</math><br />
<br />
<br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf<br />
[3] http://www.ewra.net/ew/pdf/EW_2004_7-8_03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-08T02:43:36Z<p>Irinabaek: </p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty, or an exact value is not critical to the problem. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the membership function (u), which describes the 'grey spectrum' where constraint violation is permitted [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
Continuing with the age analogy - if young ranges from ages 0 to 30, we can define 0 to 18 as being definitely young, so u = 1. However, as we increase the age from there young is not explicitly defined, and can be given lower u values, as these ages are defined as "less young". <br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be combined and further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & c^t x \tilde{\ge} z \\<br />
& Ax \tilde{\le} b\\<br />
& x \tilde{\ge} 0<br />
\end{align}<br />
</math><br />
<br />
The two constraints can be combined and the problem is further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & \hat{A}x \; \tilde{\le} \hat{b} \\<br />
\end{align}<br />
</math><br />
<br />
u_o is the membership function for the initial objective while u_i is the membership function for the constraints. These membership functions describe how closely the fuzzy inequalities are satisfied, we can describe the optimal decision to be:<br />
<br />
<math><br />
\max \min {u_i(x)} = \max u_o(x)<br />
</math><br />
<br />
An optimal solution to this problem can be found by solving<br />
<br />
<math><br />
max \; min \; 1- \frac{\hat{A}_i x - b_i}{\Delta b_i} <br />
</math><br />
<br />
A new variable λ is used to construct an LP that can be solved easily<br />
<br />
<math> \max \lambda \;\;\;\; s.t. \bar{A} x + \lambda \le \bar{b}, x \ge 0, 0 \le \lambda \le 1 </math><br />
<br />
where <math> \bar{A} \; \text{and} \; \bar{b} \; \text{are} \; \bar{a}_{ij} = \hat{a}_{ij}/ \Delta b_i \; \text{and} \; \bar{b}_i = 1 + (\hat(b_i) / \Delta b_i) </math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
This simple example for Water Resources Management [3] shows how triangular fuzzy programs can be applied to real life situations. NO1 and NO2 provide water to other nodes, while A1 and A2 are water consumers. The goal of this problem is to calculate the amount of water that should be supplied to A1 and A2 in order to maximize profit while still meeting the given constraints.<br />
<br />
<math><br />
\max x_1 + 1.5x_2 \;\; \text{Revenue from consumers: A1 (1/L), A2 (1.5/L)}<br />
</math><br />
<br />
<math><br />
\begin{array}{lcl}<br />
x_1 &\le& 66 \;\; \text{amount of water into N1} \\<br />
x_2 &\le& 59 \;\; \text{amount of water into N2} \\<br />
x_1 &\le& 49 \;\; \text{maximum demand from A1} \\<br />
x_2 &\le& 35 \;\; \text{maximum demand from A2} \\<br />
66+59 - 0.7x_1 - x_2 &\ge& 47 \;\; \text{at least 47L into N4, 30 percent of A1 enters N3} \\<br />
59-x_2 &\ge& 8 \;\; \text{at least 8L into N3} \\<br />
x_1,x_2 &\ge& 0<br />
\end{array}<br />
</math><br />
<br />
[[File:Water.png]]<br />
<br />
<math><br />
p_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
p_2 = \begin{pmatrix}<br />
35 \\<br />
37 \\<br />
39 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf<br />
[3] http://www.ewra.net/ew/pdf/EW_2004_7-8_03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-08T02:43:10Z<p>Irinabaek: </p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty, or an exact value is not critical to the problem. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the membership function (u), which describes the 'grey spectrum' where constraint violation is permitted [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
Continuing with the age analogy - if young ranges from ages 0 to 30, we can define 0 to 18 as being definitely young, so u = 1. However, as we increase the age from there young is not explicitly defined, and can be given lower u values, as these ages are defined as "less young". <br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be combined and further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & c^t x \tilde{\ge} z \\<br />
& Ax \tilde{\le} b\\<br />
& x \tilde{\ge} 0<br />
\end{align}<br />
</math><br />
<br />
The two constraints can be combined and the problem is further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & \hat{A}x \; \tilde{\le} \hat{b} \\<br />
\end{align}<br />
</math><br />
<br />
u_o is the membership function for the initial objective while u_i is the membership function for the constraints. These membership functions describe how closely the fuzzy inequalities are satisfied, we can describe the optimal decision to be:<br />
<br />
<math><br />
\max \min {u_i(x)} = \max u_o(x)<br />
</math><br />
<br />
An optimal solution to this problem can be found by solving<br />
<br />
<math><br />
max \; min \; 1- \frac{\hat{A}_i x - b_i}{\Delta b_i} <br />
</math><br />
<br />
A new variable λ is used to construct an LP that can be solved easily<br />
<br />
<math> \max \lambda \;\;\;\; s.t. \bar{A} x + \lambda \le \bar{b}, x \ge 0, 0 \le \lambda \le 1 </math><br />
<br />
where <math> \bar{A} \; \text{and} \; \bar{b} \; \text{are} \; \bar{a}_{ij} = \hat{a}_{ij}/ \Delta b_i \; \text{and} \; \bar{b}_i = 1 + (\hat(b_i) / \Delta b_i) </math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
This simple example for Water Resources Management [3] shows how triangular fuzzy programs can be applied to real life situations. NO1 and NO2 provide water to other nodes, while A1 and A2 are water consumers. The goal of this problem is to calculate the amount of water that should be supplied to A1 and A2 in order to maximize profit while still meeting the given constraints.<br />
<br />
<math><br />
\max x_1 + 1.5x_2 \text{Revenue from consumers: A1 (1/L), A2 (1.5/L)}<br />
</math><br />
<br />
<math><br />
\begin{array}{lcl}<br />
x_1 &\le& 66 \;\; \text{amount of water into N1} \\<br />
x_2 &\le& 59 \;\; \text{amount of water into N2} \\<br />
x_1 &\le& 49 \;\; \text{maximum demand from A1} \\<br />
x_2 &\le& 35 \;\; \text{maximum demand from A2} \\<br />
66+59 - 0.7x_1 - x_2 &\ge& 47 \;\; \text{at least 47L into N4, 30 percent of A1 enters N3} \\<br />
59-x_2 &\ge& 8 \;\; \text{at least 8L into N3} \\<br />
x_1,x_2 &\ge& 0<br />
\end{array}<br />
</math><br />
<br />
[[File:Water.png]]<br />
<br />
<math><br />
p_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
p_2 = \begin{pmatrix}<br />
35 \\<br />
37 \\<br />
39 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf<br />
[3] http://www.ewra.net/ew/pdf/EW_2004_7-8_03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-08T02:42:08Z<p>Irinabaek: /* Examples */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty, or an exact value is not critical to the problem. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the membership function (u), which describes the 'grey spectrum' where constraint violation is permitted [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
Continuing with the age analogy - if young ranges from ages 0 to 30, we can define 0 to 18 as being definitely young, so u = 1. However, as we increase the age from there young is not explicitly defined, and can be given lower u values, as these ages are defined as "less young". <br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be combined and further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & c^t x \tilde{\ge} z \\<br />
& Ax \tilde{\le} b\\<br />
& x \tilde{\ge} 0<br />
\end{align}<br />
</math><br />
<br />
The two constraints can be combined and the problem is further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & \hat{A}x \; \tilde{\le} \hat{b} \\<br />
\end{align}<br />
</math><br />
<br />
u_o is the membership function for the initial objective while u_i is the membership function for the constraints. These membership functions describe how closely the fuzzy inequalities are satisfied, we can describe the optimal decision to be:<br />
<br />
<math><br />
\max \min {u_i(x)} = \max u_o(x)<br />
</math><br />
<br />
An optimal solution to this problem can be found by solving<br />
<br />
<math><br />
max \; min \; 1- \frac{\hat{A}_i x - b_i}{\Delta b_i} <br />
</math><br />
<br />
A new variable λ is used to construct an LP that can be solved easily<br />
<br />
<math> \max \lambda \;\;\;\; s.t. \bar{A} x + \lambda \le \bar{b}, x \ge 0, 0 \le \lambda \le 1 </math><br />
<br />
where <math> \bar{A} \; \text{and} \; \bar{b} \; \text{are} \; \bar{a}_{ij} = \hat{a}_{ij}/ \Delta b_i \; \text{and} \; \bar{b}_i = 1 + (\hat(b_i) / \Delta b_i) </math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
This simple example for Water Resources Management [3] shows how triangular fuzzy programs can be applied to real life situations. NO1 and NO2 provide water to other nodes, while A1 and A2 are water consumers. The goal of this problem is to calculate the amount of water that should be supplied to A1 and A2 in order to maximize profit while still meeting the given constraints.<br />
<br />
<math><br />
\max x_1 + 1.5x_2 \text{Revenue from consumers: A1 (1/L), A2 (1.5/L)}<br />
</math><br />
<br />
<math><br />
\begin{array}{lcl}<br />
x_1 &\le& 66 \text{amount of water into N1} \\<br />
x_2 &\le& 59 \text{amount of water into N2} \\<br />
x_1 &\le& 49 \text{maximum demand from A1} \\<br />
x_2 &\le& 35 \text{maximum demand from A2} \\<br />
66+59 - 0.7x_1 - x_2 &\ge& 47 \text{at least 47L into N4, 30 percent of A1 enters N3} \\<br />
59-x_2 &\ge& 8 \text{at least 8L into N3} \\<br />
x_1,x_2 &\ge& 0<br />
\end{array}<br />
</math><br />
<br />
[[File:Water.png]]<br />
<br />
<math><br />
p_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
p_2 = \begin{pmatrix}<br />
35 \\<br />
37 \\<br />
39 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf<br />
[3] http://www.ewra.net/ew/pdf/EW_2004_7-8_03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-08T02:35:14Z<p>Irinabaek: /* Examples */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty, or an exact value is not critical to the problem. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the membership function (u), which describes the 'grey spectrum' where constraint violation is permitted [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
Continuing with the age analogy - if young ranges from ages 0 to 30, we can define 0 to 18 as being definitely young, so u = 1. However, as we increase the age from there young is not explicitly defined, and can be given lower u values, as these ages are defined as "less young". <br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be combined and further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & c^t x \tilde{\ge} z \\<br />
& Ax \tilde{\le} b\\<br />
& x \tilde{\ge} 0<br />
\end{align}<br />
</math><br />
<br />
The two constraints can be combined and the problem is further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & \hat{A}x \; \tilde{\le} \hat{b} \\<br />
\end{align}<br />
</math><br />
<br />
u_o is the membership function for the initial objective while u_i is the membership function for the constraints. These membership functions describe how closely the fuzzy inequalities are satisfied, we can describe the optimal decision to be:<br />
<br />
<math><br />
\max \min {u_i(x)} = \max u_o(x)<br />
</math><br />
<br />
An optimal solution to this problem can be found by solving<br />
<br />
<math><br />
max \; min \; 1- \frac{\hat{A}_i x - b_i}{\Delta b_i} <br />
</math><br />
<br />
A new variable λ is used to construct an LP that can be solved easily<br />
<br />
<math> \max \lambda \;\;\;\; s.t. \bar{A} x + \lambda \le \bar{b}, x \ge 0, 0 \le \lambda \le 1 </math><br />
<br />
where <math> \bar{A} \; \text{and} \; \bar{b} \; \text{are} \; \bar{a}_{ij} = \hat{a}_{ij}/ \Delta b_i \; \text{and} \; \bar{b}_i = 1 + (\hat(b_i) / \Delta b_i) </math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
This simple example for Water Resources Management [3] shows how triangular fuzzy programs can be applied to real life situations. NO1 and NO2 provide water to other nodes, while A1 and A2 are water consumers. The goal of this problem is to calculate the amount of water that should be supplied to A1 and A2 in order to maximize profit while still meeting the given constraints.<br />
<br />
<math><br />
\max x_1 + 1.5x_2 {Revenue from centers: A1 ($1/L), A2 ($1.5/L)<br />
</math><br />
<br />
<math><br />
\begin{array}{lcl}<br />
x_1 &=& 66 \\ \text{amount of water into N1}<br />
x_2 &=& 59 \\ \text{amount of water into N2}<br />
x_1 &\le& 49 \\ \text{maximum demand from A1} <br />
x_2 &\le& 35 \\ \text{maximum demand from A2} <br />
66+59 - 0.7x_1 - x_2 &\ge& 47 \\ \text{at least 47L into N4, 30% of A1 enters N3} <br />
59-x_2 &\ge& 8 \\ \text{at least 8L into N3} <br />
x_1,x_2 &\ge& 0<br />
\end{array}<br />
</math><br />
<br />
[[File:Water.png]]<br />
<br />
<math><br />
p_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
p_2 = \begin{pmatrix}<br />
35 \\<br />
37 \\<br />
39 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf<br />
[3] http://www.ewra.net/ew/pdf/EW_2004_7-8_03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-08T02:31:33Z<p>Irinabaek: /* Examples */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty, or an exact value is not critical to the problem. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the membership function (u), which describes the 'grey spectrum' where constraint violation is permitted [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
Continuing with the age analogy - if young ranges from ages 0 to 30, we can define 0 to 18 as being definitely young, so u = 1. However, as we increase the age from there young is not explicitly defined, and can be given lower u values, as these ages are defined as "less young". <br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be combined and further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & c^t x \tilde{\ge} z \\<br />
& Ax \tilde{\le} b\\<br />
& x \tilde{\ge} 0<br />
\end{align}<br />
</math><br />
<br />
The two constraints can be combined and the problem is further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & \hat{A}x \; \tilde{\le} \hat{b} \\<br />
\end{align}<br />
</math><br />
<br />
u_o is the membership function for the initial objective while u_i is the membership function for the constraints. These membership functions describe how closely the fuzzy inequalities are satisfied, we can describe the optimal decision to be:<br />
<br />
<math><br />
\max \min {u_i(x)} = \max u_o(x)<br />
</math><br />
<br />
An optimal solution to this problem can be found by solving<br />
<br />
<math><br />
max \; min \; 1- \frac{\hat{A}_i x - b_i}{\Delta b_i} <br />
</math><br />
<br />
A new variable λ is used to construct an LP that can be solved easily<br />
<br />
<math> \max \lambda \;\;\;\; s.t. \bar{A} x + \lambda \le \bar{b}, x \ge 0, 0 \le \lambda \le 1 </math><br />
<br />
where <math> \bar{A} \; \text{and} \; \bar{b} \; \text{are} \; \bar{a}_{ij} = \hat{a}_{ij}/ \Delta b_i \; \text{and} \; \bar{b}_i = 1 + (\hat(b_i) / \Delta b_i) </math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
This simple example for Water Resources Management [3] shows how triangular fuzzy programs can be applied to real life situations. NO1 and NO2 provide water to other nodes, while A1 and A2 are water consumers. The goal of this problem is to calculate the amount of water that should be supplied to A1 and A2 in order to maximize profit while still meeting the given constraints.<br />
<br />
Known:<br />
Water into N1: 66L<br />
Water into N2: 59L<br />
<br />
Max Demand:<br />
A1: 49L<br />
A2: 35L<br />
N3 = N1-A1+ 0.3A1 (Water into N3 is water from N1 plus about 30% of water from A1)<br />
<br />
Minimum flows:<br />
Into N4: 47L<br />
From N2 to N3: 8L<br />
<br />
Revenue from Centers:<br />
A1: $1/L<br />
A2: $1.5/L<br />
<br />
<math><br />
\max x_1 + 1.5x_2<br />
</math><br />
<br />
<math><br />
\begin{array}{lcl}<br />
x_1 &\le& 66 \\<br />
x_2 &\le& 59 \\<br />
x_1 &\le& 49 \\<br />
x_2 &\le& 35 \\<br />
66+59 - 0.7x_1 - x_2 &\ge& 47 \\<br />
59-x_2 &\ge& 8 \\<br />
x_1,x_2 &\ge& 0<br />
\end{array}<br />
</math><br />
<br />
[[File:Water.png]]<br />
<br />
<math><br />
p_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
p_2 = \begin{pmatrix}<br />
35 \\<br />
37 \\<br />
39 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf<br />
[3] http://www.ewra.net/ew/pdf/EW_2004_7-8_03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-08T02:23:18Z<p>Irinabaek: /* Examples */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty, or an exact value is not critical to the problem. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the membership function (u), which describes the 'grey spectrum' where constraint violation is permitted [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
Continuing with the age analogy - if young ranges from ages 0 to 30, we can define 0 to 18 as being definitely young, so u = 1. However, as we increase the age from there young is not explicitly defined, and can be given lower u values, as these ages are defined as "less young". <br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be combined and further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & c^t x \tilde{\ge} z \\<br />
& Ax \tilde{\le} b\\<br />
& x \tilde{\ge} 0<br />
\end{align}<br />
</math><br />
<br />
The two constraints can be combined and the problem is further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & \hat{A}x \; \tilde{\le} \hat{b} \\<br />
\end{align}<br />
</math><br />
<br />
u_o is the membership function for the initial objective while u_i is the membership function for the constraints. These membership functions describe how closely the fuzzy inequalities are satisfied, we can describe the optimal decision to be:<br />
<br />
<math><br />
\max \min {u_i(x)} = \max u_o(x)<br />
</math><br />
<br />
An optimal solution to this problem can be found by solving<br />
<br />
<math><br />
max \; min \; 1- \frac{\hat{A}_i x - b_i}{\Delta b_i} <br />
</math><br />
<br />
A new variable λ is used to construct an LP that can be solved easily<br />
<br />
<math> \max \lambda \;\;\;\; s.t. \bar{A} x + \lambda \le \bar{b}, x \ge 0, 0 \le \lambda \le 1 </math><br />
<br />
where <math> \bar{A} \; \text{and} \; \bar{b} \; \text{are} \; \bar{a}_{ij} = \hat{a}_{ij}/ \Delta b_i \; \text{and} \; \bar{b}_i = 1 + (\hat(b_i) / \Delta b_i) </math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
This simple example for Water Resources Management [3] shows how triangular fuzzy programs can be applied to real life situations. NO1 and NO2 provide water to other nodes, while A1 and A2 are water consumers. The goal of this problem is to calculate the amount of water<br />
<br />
Known:<br />
Water into N1: 66L<br />
Water into N2: 59L<br />
<br />
Max Demand:<br />
A1: 49L<br />
A2: 35L<br />
N3 = N1-A1+ 0.3A1 (Water into N3 is water from N1 plus about 30% of water from A1)<br />
<br />
Minimum flows:<br />
Into N4: 47L<br />
From N2 to N3: 8L<br />
<br />
Revenue from Centers:<br />
A1: $1/L<br />
A2: $1.5/L<br />
<br />
<math><br />
\max x1 + 1.5x2\\<br />
x1 \le 66\\<br />
x2 \le 59\\<br />
x1 \le 49\\<br />
x2 \le 35\\<br />
66+59 - 0.7x1 - x2 \ge 47\\<br />
59-x2 \ge 8\\<br />
x1,x2 \ge 0\\<br />
</math><br />
<br />
[[File:Water.png]]<br />
<br />
<math><br />
p_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
p_2 = \begin{pmatrix}<br />
35 \\<br />
37 \\<br />
39 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
<math><br />
QN_1 = \begin{pmatrix}<br />
49 \\<br />
52 \\<br />
55 <br />
\end{pmatrix}<br />
</math><br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf<br />
[3] http://www.ewra.net/ew/pdf/EW_2004_7-8_03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/File:Water.pngFile:Water.png2015-06-08T02:14:14Z<p>Irinabaek: </p>
<hr />
<div></div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-08T02:12:53Z<p>Irinabaek: /* References */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty, or an exact value is not critical to the problem. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the membership function (u), which describes the 'grey spectrum' where constraint violation is permitted [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
Continuing with the age analogy - if young ranges from ages 0 to 30, we can define 0 to 18 as being definitely young, so u = 1. However, as we increase the age from there young is not explicitly defined, and can be given lower u values, as these ages are defined as "less young". <br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be combined and further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & c^t x \tilde{\ge} z \\<br />
& Ax \tilde{\le} b\\<br />
& x \tilde{\ge} 0<br />
\end{align}<br />
</math><br />
<br />
The two constraints can be combined and the problem is further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & \hat{A}x \; \tilde{\le} \hat{b} \\<br />
\end{align}<br />
</math><br />
<br />
u_o is the membership function for the initial objective while u_i is the membership function for the constraints. These membership functions describe how closely the fuzzy inequalities are satisfied, we can describe the optimal decision to be:<br />
<br />
<math><br />
\max \min {u_i(x)} = \max u_o(x)<br />
</math><br />
<br />
An optimal solution to this problem can be found by solving<br />
<br />
<math><br />
max \; min \; 1- \frac{\hat{A}_i x - b_i}{\Delta b_i} <br />
</math><br />
<br />
A new variable λ is used to construct an LP that can be solved easily<br />
<br />
<math> \max \lambda \;\;\;\; s.t. \bar{A} x + \lambda \le \bar{b}, x \ge 0, 0 \le \lambda \le 1 </math><br />
<br />
where <math> \bar{A} \; \text{and} \; \bar{b} \; \text{are} \; \bar{a}_{ij} = \hat{a}_{ij}/ \Delta b_i \; \text{and} \; \bar{b}_i = 1 + (\hat(b_i) / \Delta b_i) </math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf<br />
[3] http://www.ewra.net/ew/pdf/EW_2004_7-8_03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/File:Agegraph.gifFile:Agegraph.gif2015-06-08T01:14:34Z<p>Irinabaek: Irinabaek uploaded a new version of &quot;File:Agegraph.gif&quot;</p>
<hr />
<div>Young, middle-aged, and old are not strictly defined categories, and may result in overlap.</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-08T01:13:00Z<p>Irinabaek: </p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty, or an exact value is not critical to the problem. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the membership function (u), which describes the 'grey spectrum' where constraint violation is permitted [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
Continuing with the age analogy - if young ranges from ages 0 to 30, we can define 0 to 18 as being definitely young, so u = 1. However, as we increase the age from there young is not explicitly defined, and can be given lower u values, as these ages are defined as "less young". <br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be combined and further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & c^t x \tilde{\ge} z \\<br />
& Ax \tilde{\le} b\\<br />
& x \tilde{\ge} 0<br />
\end{align}<br />
</math><br />
<br />
The two constraints can be combined and the problem is further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & \hat{A}x \; \tilde{\le} \hat{b} \\<br />
\end{align}<br />
</math><br />
<br />
u_o is the membership function for the initial objective while u_i is the membership function for the constraints. These membership functions describe how closely the fuzzy inequalities are satisfied, we can describe the optimal decision to be:<br />
<br />
<math><br />
\max \min {u_i(x)} = \max u_o(x)<br />
</math><br />
<br />
An optimal solution to this problem can be found by solving<br />
<br />
<math><br />
max \; min \; 1- \frac{\hat{A}_i x - b_i}{\Delta b_i} <br />
</math><br />
<br />
A new variable λ is used to construct an LP that can be solved easily<br />
<br />
<math> \max \lambda \;\;\;\; s.t. \bar{A} x + \lambda \le \bar{b}, x \ge 0, 0 \le \lambda \le 1 </math><br />
<br />
where <math> \bar{A} \; \text{and} \; \bar{b} \; \text{are} \; \bar{a}_{ij} = \hat{a}_{ij}/ \Delta b_i \; \text{and} \; \bar{b}_i = 1 + (\hat(b_i) / \Delta b_i) </math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-08T01:12:39Z<p>Irinabaek: </p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty, or an exact value is not critical to the problem. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Age.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the membership function (u), which describes the 'grey spectrum' where constraint violation is permitted [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
Continuing with the age analogy - if young ranges from ages 0 to 30, we can define 0 to 18 as being definitely young, so u = 1. However, as we increase the age from there young is not explicitly defined, and can be given lower u values, as these ages are defined as "less young". <br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be combined and further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & c^t x \tilde{\ge} z \\<br />
& Ax \tilde{\le} b\\<br />
& x \tilde{\ge} 0<br />
\end{align}<br />
</math><br />
<br />
The two constraints can be combined and the problem is further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & \hat{A}x \; \tilde{\le} \hat{b} \\<br />
\end{align}<br />
</math><br />
<br />
u_o is the membership function for the initial objective while u_i is the membership function for the constraints. These membership functions describe how closely the fuzzy inequalities are satisfied, we can describe the optimal decision to be:<br />
<br />
<math><br />
\max \min {u_i(x)} = \max u_o(x)<br />
</math><br />
<br />
An optimal solution to this problem can be found by solving<br />
<br />
<math><br />
max \; min \; 1- \frac{\hat{A}_i x - b_i}{\Delta b_i} <br />
</math><br />
<br />
A new variable λ is used to construct an LP that can be solved easily<br />
<br />
<math> \max \lambda \;\;\;\; s.t. \bar{A} x + \lambda \le \bar{b}, x \ge 0, 0 \le \lambda \le 1 </math><br />
<br />
where <math> \bar{A} \; \text{and} \; \bar{b} \; \text{are} \; \bar{a}_{ij} = \hat{a}_{ij}/ \Delta b_i \; \text{and} \; \bar{b}_i = 1 + (\hat(b_i) / \Delta b_i) </math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-08T00:03:17Z<p>Irinabaek: </p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the membership function that 'grey spectrum' where constraint violation is permitted [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be combined and further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & c^t x \tilde{\ge} z \\<br />
& Ax \tilde{\le} b\\<br />
& x \tilde{\ge} 0<br />
\end{align}<br />
</math><br />
<br />
The two constraints can be combined and the problem is further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & \hat{A}x \; \tilde{\le} \hat{b} \\<br />
\end{align}<br />
</math><br />
<br />
u_o is the membership function for the initial objective while u_i is the membership function for the constraints. These membership functions describe how closely the fuzzy inequalities are satisfied, we can describe the optimal decision to be:<br />
<br />
<math><br />
\max \min {u_i(x)} = \max u_o(x)<br />
</math><br />
<br />
An optimal solution to this problem can be found by solving<br />
<br />
<math><br />
max \; min \; 1- \frac{\hat{A}_i x - b_i}{\Delta b_i} <br />
</math><br />
<br />
A new variable λ is used to construct an LP that can be solved easily<br />
<br />
<math> \max \lambda \;\;\;\; s.t. \bar{A} x + \lambda \le \bar{b}, x \ge 0, 0 \le \lambda \le 1 </math><br />
<br />
where <math> \bar{A} \; \text{and} \; \bar{b} \; \text{are} \; \bar{a}_{ij} = \hat{a}_{ij}/ \Delta b_i \; \text{and} \; \bar{b}_i = 1 + (\hat(b_i) / \Delta b_i) </math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-08T00:01:57Z<p>Irinabaek: </p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the membership function that 'grey spectrum' where constraint violation is permitted [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be combined and further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & c^t x \tilde{\ge} z \\<br />
& Ax \tilde{\le} b\\<br />
& x \tilde{\ge} 0<br />
\end{align}<br />
</math><br />
<br />
The two constraints can be combined and the problem is further simplified to:<br />
<br />
<math><br />
\begin{align}<br />
Find \; x \\<br />
s.t. \; & \hat{A}x \; \tilde{\le} \hat{b} \\<br />
\end{align}<br />
</math><br />
<br />
u_o is the membership function for the initial objective while u_i is the membership function for the constraints. These membership functions describe how closely the fuzzy inequalities are satisfied, we can describe the optimal decision to be:<br />
<br />
<math><br />
\max \min {u_i(x)} = \max u_o(x)<br />
</math><br />
<br />
An optimal solution to this problem can be found by solving<br />
<br />
<math><br />
max \; min \; 1- \frac{\hat{A}_i x - b_i}{\Delta b_i} <br />
</math><br />
<br />
A new variable λ is used to construct an LP that can be solved easily<br />
<br />
<math> \max \lambda \;\;\;\; s.t. \bar{A} x + \lambda \le \bar{b}, x \ge 0, 0 \le \lambda \le 1 </math><br />
<br />
where <math> \bar{A} \; \text{and} \; \bar{b} \; \text{are} \; \bar{a}_ij = \hat{a}_ij/ \Delta b_i \; \text{and} \; \bar{b}_i = 1 + (\hat(b_i) / \Delta b_i) </math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-07T18:25:46Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum' [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. By making the inequalities fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. Furthermore, this fuzzy relation can be interpreted as "essentially smaller than or equal" instead of "smaller than or equal"<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
If the user has a certain objective value they would like to reach, this can be further simplified to:<br />
<br />
<math><br />
Find x \\ <br />
s.t. c^t x tilde{\ge} z \\<br />
\; Ax \tilde{\le} b\\<br />
& x \tilde{ge} 0<br />
</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-07T18:16:02Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum' [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. <br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
By making this relation fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. <br />
<br />
If the user has a certain objective value they would like to reach, this can be further simplified to:<br />
<br />
<math><br />
Find x \\ <br />
s.t. <br />
</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-07T18:12:19Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum' [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters. <br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
By making this relation fuzzy, the user of the program can set an approximate goal to minimize/maximize an objective function rather than a completely realistic value. <br />
<br />
If the user has a certain objective value they would like to reach, this can be further simplified to:<br />
<br />
<math>Find \;x \\ <br />
s.t. c^t x tilde{\ge} z \\<br />
\; Ax \tilde{\le} b\\<br />
& x \tilde{ge} 0<br />
</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T23:09:23Z<p>Irinabaek: /* Logical Reasoning */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum' [1]<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters.<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
This can be further simplified to:<br />
<br />
<math>Find \;x\; s.t. \; Ax \tilde{\le} b</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T23:09:11Z<p>Irinabaek: /* References */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters.<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
This can be further simplified to:<br />
<br />
<math>Find \;x\; s.t. \; Ax \tilde{\le} b</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=<br />
[1] http://www.researchgate.net/profile/Nikolaos_Sahinidis/publication/222687527_Optimization_under_uncertainty_state-of-the-art_and_opportunities/links/5463babb0cf2c0c6aec4f7a8.pdf<br />
[2] http://www.worldacademicunion.com/journal/jus/jusVol01No2paper03.pdf</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T23:08:34Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters.<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
This can be further simplified to:<br />
<br />
<math>Find \;x\; s.t. \; Ax \tilde{\le} b</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T23:08:19Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters.<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
This can be further simplified to finding:<br />
<br />
<math>x s.t. \; Ax \tilde{\le} b</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T23:08:09Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters.<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
This can be further simplified to finding:<br />
<br />
<math>x s.t. \; Ax \tilde{\le} b</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T23:08:00Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters.<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
This can be further simplified to finding:<br />
<br />
<math>x s.t. \; & Ax \tilde{\le} b</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T23:07:48Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters.<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
This can be further simplified to finding:<br />
<br />
<math>x s.t. \; & Ax \tilde{\le} b\</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T23:07:39Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
<br />
We use ~ to identify the fuzzy (or flexible) parameters.<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
This can be further simplified to finding:<br />
<br />
<math>x s.t. \; & Ax \tilde{\le} b\</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T22:21:25Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. \; & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
<br />
We use ~ to identify the fuzzy parameters.<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. \; & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T22:21:02Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<math><br />
\begin{align}<br />
\max c^t x \\<br />
s.t. & Ax \le b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
<br />
We use ~ to identify the fuzzy parameters.<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. & Ax \tilde{\le} b \\<br />
& x \ge 0 <br />
\end{align}<br />
</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T22:17:20Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<br />
We use ~ to identify the fuzzy parameters.<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. & Ax \tilde{\le} b \\<br />
& x \le 0 <br />
\end{align}<br />
</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T22:16:16Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<br />
We use ~ to identify the fuzzy parameters.<br />
<br />
<math><br />
\begin{align}<br />
\widetilde{max} c^t x \\<br />
s.t. & Ax \widetilde{\le} b \\<br />
& x \le 0 <br />
\end{align}<br />
</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T22:14:50Z<p>Irinabaek: /* Logical Reasoning */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<br />
We use ~ to identify the fuzzy parameters.<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. & Ax \tilde{\le} b \\<br />
& x \le 0 <br />
\end{align}<br />
</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T22:14:16Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) =\begin{cases}1 & ax \leq b\\1- \frac{ax-b}{ \Delta b} & b < ax \leq b+ \Delta b \\0 & b + \Delta b < ax \end{cases} <br />
</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<br />
<br />
We use ~ to identify the fuzzy parameters.<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. & Ax \tilde{\le} b \\<br />
& x \le 0 <br />
\end{align}<br />
</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T22:08:28Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) =\begin{cases}1 & ax \leq b\\1- \frac{ax-b}{ \Delta b} & b < ax \leq b+ \Delta b \\0 & b + \Delta b < ax \end{cases} <br />
</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
We use ~ to identify the fuzzy parameters.<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^t x \\<br />
s.t. & Ax \tilde{\le} b \\<br />
& x \le 0 <br />
\end{align}<br />
</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T22:08:11Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) =\begin{cases}1 & ax \leq b\\1- \frac{ax-b}{ \Delta b} & b < ax \leq b+ \Delta b \\0 & b + \Delta b < ax \end{cases} <br />
</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
We use ~ to identify the fuzzy parameters.<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} (c^t)x \\<br />
s.t. & Ax \tilde{\le} b \\<br />
& x \le 0 <br />
\end{align}<br />
</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T22:07:32Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) =\begin{cases}1 & ax \leq b\\1- \frac{ax-b}{ \Delta b} & b < ax \leq b+ \Delta b \\0 & b + \Delta b < ax \end{cases} <br />
</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
We use ~ to identify the fuzzy parameters.<br />
<br />
<math><br />
\tilde{max} (c^t)x \\<br />
s.t. Ax \tilde{\le} b \\<br />
x \le 0 <br />
</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T22:06:00Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) =\begin{cases}1 & ax \leq b\\1- \frac{ax-b}{ \Delta b} & b < ax \leq b+ \Delta b \\0 & b + \Delta b < ax \end{cases} <br />
</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
We use ~ to identify the fuzzy parameters.<br />
<br />
<math><br />
\tilde{max} {c^t}x \\<br />
s.t. Ax \tilde{\le} b \\<br />
x \le 0 <br />
</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T22:05:13Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) =\begin{cases}1 & ax \leq b\\1- \frac{ax-b}{ \Delta b} & b < ax \leq b+ \Delta b \\0 & b + \Delta b < ax \end{cases} <br />
</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
We use ~ to identify the fuzzy parameters.<br />
<br />
<math><br />
\tilde{max} {c^t}x \\<br />
s.t. Ax \tilde{\le} b \\<br />
\quad x \le 0 <br />
</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T22:04:18Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) =\begin{cases}1 & ax \leq b\\1- \frac{ax-b}{ \Delta b} & b < ax \leq b+ \Delta b \\0 & b + \Delta b < ax \end{cases} <br />
</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
We use ~ to identify the fuzzy parameters.<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} {c^t}x \\<br />
s.t. & Ax \tilde{\le} b \\<br />
& x \le 0 <br />
\end{align}<br />
</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T22:03:37Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) =\begin{cases}1 & ax \leq b\\1- \frac{ax-b}{ \Delta b} & b < ax \leq b+ \Delta b \\0 & b + \Delta b < ax \end{cases} <br />
</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
We use ~ to identify the fuzzy parameters.<br />
<br />
<math><br />
\begin{align}<br />
\tilde{max} c^x \\<br />
s.t. & \tilde{\le} b \\<br />
& x \le 0 <br />
\end{align}<br />
</math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T22:02:05Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) =\begin{cases}1 & ax \leq b\\1- \frac{ax-b}{ \Delta b} & b < ax \leq b+ \Delta b \\0 & b + \Delta b < ax \end{cases} <br />
</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
We use ~ to identify the fuzzy parameters.<br />
<br />
<math> \tilde{max} c^x\, \\<br />
s.t. \tilde{\le} b \\<br />
x \le 0 </math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T22:00:30Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) =\begin{cases}1 & ax \leq b\\1- \frac{ax-b}{ \Delta b} & b < ax \leq b+ \Delta b \\0 & b + \Delta b < ax \end{cases} <br />
</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
We use ~ to identify the fuzzy parameters.<br />
<br />
<math> \tilde{max} c^x\ \\<br />
s.t. \tilde{\le } \; b \\<br />
x \le 0 </math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T21:59:49Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) =\begin{cases}1 & ax \leq b\\1- \frac{ax-b}{ \Delta b} & b < ax \leq b+ \Delta b \\0 & b + \Delta b < ax \end{cases} <br />
</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
We use ~ to identify the fuzzy parameters.<br />
<br />
<math> \tilde{max} c^{t}x \\<br />
s.t. \tilde{\leq } \; b \\<br />
x \le 0 </math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaekhttps://optimization.mccormick.northwestern.edu/index.php/Fuzzy_programmingFuzzy programming2015-06-03T21:45:29Z<p>Irinabaek: /* Flexible programming */</p>
<hr />
<div>Author: Irina Baek <br/><br />
Steward: Dajun Yue and Fenqi You<br />
<br />
=Introduction=<br />
Fuzzy programming is one of many optimization models that deal with optimization under uncertainty. This model can be applied when situations are not clearly defined and thus have uncertainty. For example, categorizing people into young, middle aged and old is not completely clear, so overlap of these categories may exist as can be seen in the image below.<br />
<br />
[[File:Agegraph.gif|thumb|right|Young, middle-aged, and old are not strictly defined categories, and may result in overlap.]]<br />
<br />
<br />
=Logical Reasoning=<br />
Unlike binary models, where an event is either black or white, fuzzy programming allows for a grey spectrum between the two extremes. As a result, it increases the possible applications since most situations are not bipolar, but consist of a scale of values. A linear function is often used to describe the 'grey spectrum'.<br />
<br />
<math><br />
u(x) =\begin{cases}1 & ax \leq b\\1- \frac{ax-b}{ \Delta b} & b < ax \leq b+ \Delta b \\0 & b + \Delta b < ax \end{cases} <br />
</math><br />
<br />
=Methods=<br />
There are several types of fuzzy programming that can deal with different situations. Flexible programming and possibilistic programming will be described here.<br />
==Flexible programming==<br />
This type of programming can be applied when there is uncertainty in the coefficient values, and a certain amount of deviation is acceptable. Starting from a typical LP model defined as:<br />
<math><br />
u(x) = <br />
\begin{cases}<br />
1 & {ax \le b} \\<br />
1- \frac{ax-b}{ \Delta b} & b < ax \le b+ \Delta b \\<br />
0 & b + \Delta b < ax<br />
\end{cases}</math><br />
<br />
We use ~ to identify the fuzzy parameters.<br />
<br />
<math> \tilde{max} \quad c^{t}x \\<br />
s.t. \quad \tilde{\leq } \; b \\<br />
x \le 0 </math><br />
<br />
==Possibilistic programming==<br />
In possibilistic programming <br />
<br />
=Applications=<br />
<br />
=Examples=<br />
<br />
=Conclusion=<br />
<br />
=References=</div>Irinabaek