Intelligent Systems II · TEE · papers

Q2(b) Fuzzy washing-machine controller [10]

Re-examination · 25 Jun 2024

Actual historical paper ·100 marks attempted /140 offered · Q1 compulsory + any four of Q2–Q7. Source defects and solution assumptions are explicitly identified.

Question. Q2(b) [10 marks · 2024-06-25]

Design a domestic washing-machine controller with Dirt and Grease inputs, both 0–100, and Wash time output 0–100. Use low/medium/high input terms and very short/short/medium/high/very high output terms. Derive rules, support the design with graphs and show that larger dirt gives longer wash time. Defuzzify for Dirt=60% and Grease=70%.

Answer

Given

Dirt=60, Grease=70; ranges 0–100; three input terms and five output terms.

To find

A complete controller: membership graphs, rules, inference and crisp output.

Formula and why it applies

Fuzzification translates measured values into degrees. Min implements AND, max combines rules, and centroid converts the fuzzy output to one numerical command.

\alpha_r=\min(\mu_{A_r}(x),\mu_{B_r}(y)),\quad z^*=\frac{\int z\mu_{out}(z)\,dz}{\int\mu_{out}(z)\,dz}LaTeX: \alpha_r=\min(\mu_{A_r}(x),\mu_{B_r}(y)),\quad z^*=\frac{\int z\mu_{out}(z)\,dz}{\int\mu_{out}(z)\,dz}

Solution

Step 1. Specify the inputs and output

Dirt and Grease each span 0–100. Use low=left shoulder (0,0,50), medium=triangle (0,50,100), high=right shoulder (50,100,100). Output is wash-time index on 0–100; larger means longer washing. The question gives no physical time unit, so do not invent minutes.

Swipe across the diagram to read its labels ↔
Explicit design assumption: overlapping low, medium and high input memberships, covering the full 0–100 range.
Diagram: Explicit design assumption: overlapping low, medium and high input memberships, covering the full 0–100 range.. Labels: Explicit design assumption: overlapping low, medium and high input memberships, covering the full 0–100 range. | 0 | 10 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | 90 | 100 | 0 | 0.25 | 0.5 | 0.75 | 1 | Low | Medium | High | μ(x)
Explicit design assumption: overlapping low, medium and high input memberships, covering the full 0–100 range.
Swipe across the diagram to read its labels ↔
Five assumed output descriptors. Endpoint descriptors are shoulders, so 0 and 100 remain covered.
Diagram: Five assumed output descriptors. Endpoint descriptors are shoulders, so 0 and 100 remain covered.. Labels: Five assumed output descriptors. Endpoint descriptors are shoulders, so 0 and 100 remain covered. | 0 | 10 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | 90 | 100 | 0 | 0.25 | 0.5 | 0.75 | 1 | Very short | Short | Medium | High | Very high | μ(x)
Five assumed output descriptors. Endpoint descriptors are shoulders, so 0 and 100 remain covered.
Step 2. Define all nine IF–THEN rules
Dirt / GreaseLowMediumHigh
LowVery shortShortMedium
MediumShortMediumHigh
HighMediumHighVery high

Greater dirt or grease never reduces the rule consequent. This implements the requested monotonic relationship.

Step 3. Fuzzify the two crisp readings
InputLow membershipMedium membershipHigh membership
Dirt=6004/51/5
Grease=7003/52/5

For Dirt=60: low=max(0,(50−60)/50)=0; medium=(100−60)/50=0.8; high=max(0,(60−50)/50)=0.2. For Grease=70: low=0, medium=(100−70)/50=0.6, high=(70−50)/50=0.4.

Step 4. Fire every active rule with minimum
DirtGreaseAND strengthOutput descriptor
MediumMediummin(0.8, 0.6) = 0.6Medium
MediumHighmin(0.8, 0.4) = 0.4High
HighMediummin(0.2, 0.6) = 0.2High
HighHighmin(0.2, 0.4) = 0.2Very high

The other rules have a zero antecedent membership and therefore fire at zero.

Step 5. Aggregate rules and clip each output membership
DescriptorMaximum firing strength
Very short0.0
Short0.0
Medium0.6
High0.4
Very high0.2
\mu_{out}(z)=\max_r\min(\alpha_r,\mu_{B_r}(z))LaTeX: \mu_{out}(z)=\max_r\min(\alpha_r,\mu_{B_r}(z))
Swipe across the diagram to read its labels ↔
Clipped consequents are combined using maximum; overlapping areas are counted once for the centroid.
Diagram: Clipped consequents are combined using maximum; overlapping areas are counted once for the centroid.. Labels: Clipped consequents are combined using maximum; overlapping areas are counted once for the centroid. | 0 | 10 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | 90 | 100 | 0 | 0.25 | 0.5 | 0.75 | 1 | Aggregated output | μ(x)
Clipped consequents are combined using maximum; overlapping areas are counted once for the centroid.
Step 6. Calculate centroid area and first moment

Split the upper outline at every corner and intersection. On a segment [a, b] with endpoint heights u and v, integrate the straight line. This counts overlap once.

A=(b-a)\frac{u+v}{2},\qquad M=aA+\frac{(b-a)^2(u+2v)}6,\qquad z^*=\frac{\sum M}{\sum A}LaTeX: A=(b-a)\frac{u+v}{2},\qquad M=aA+\frac{(b-a)^2(u+2v)}6,\qquad z^*=\frac{\sum M}{\sum A}
Segment [a, b]Heights [u, v]Area AMoment M
[25, 40][0, 0.6]4.500000157.500000
[40, 50][0.6, 0.6]6.000000270.000000
[50, 60][0.6, 0.6]6.000000330.000000
[60, 65][0.6, 0.4]2.500000155.833333
[65, 75][0.4, 0.4]4.000000280.000000
[75, 80][0.4, 0.4]2.000000155.000000
[80, 90][0.4, 0.4]4.000000340.000000
[90, 95][0.4, 0.2]1.500000138.333333
[95, 100][0.2, 0.2]1.00000097.500000
z^*=\frac{1924.166667}{31.500000}\approx 61.084656LaTeX: z^*=\frac{1924.166667}{31.500000}\approx 61.084656
Step 7. Demonstrate the longer-wash response

Hold grease fixed at 70 and repeat the same minimum, maximum and centroid steps for three dirt readings. This compares outputs without changing the rules or membership graphs.

DirtGreaseExact centroidWash-time index
20701925/4146.951220
607011545/18961.084656
80706580/9966.464646

The calculated wash-time index increases from 46.951220 to 61.084656 to 66.464646 as dirt rises from 20 to 60 to 80. These comparisons demonstrate the requested behavior for the stated test inputs. At the target reading (60,70), only medium, high and very-high consequents fire.

Final answer. With the stated membership functions and rules, the output is 61.084656 on the given 0–100 scale.