(reset)

==> f-0     (initial-fact) CF 1.00

FuzzyCLIPS> (run   1)

FIRE    1 start: f-0                                  ç initial rule gets info from user

Initial Cold Valve Position? [0.0 to 1.0]: 1

Initial Hot Valve Position? [0.0 to 1.0]: .7

Initial Temperature (Celcius) of cold water input? [5 to 65]: 10

Initial Temperature (Celcius) of hot water input? [5 to 65]: 40

Initial Pressure (kPa) of cold water input? [42 to 100]: 50

Initial Pressure (kPa) of hot water input? [42 to 100]: 60

Simulating ... coldValveChange: 0.0 hotValveChange: 0.0  ç Simulation is a function that handles calculations

Output Flow is 41.000 litres/sec

Output Temp is 25.366 degrees C

==> f-1     (outFlow ???) CF 1.00                     ç Simulation function does these asserts

      ( (40.5 0.0) (41.0 1.0) (41.5 0.0)  )

 

==> f-2     (outTemp ???) CF 1.00

      ( (25.27 0.0) (25.37 1.0) (25.47 0.0)  )

 

FuzzyCLIPS> (run   1)                                 ç target is flow of 12 and temp of 36

FIRE    1 cold_strong: f-2,f-1                        V- amount of match of LHS clauses -V

debug in cold_strong how cold is it? membership: 0.3853658536585365 how strong is it? membership: 1.0

==> f-3     (change_vh ???) CF 1.00                         conclusions are “clipped” based on min of LHS match

      ( (-0.05 0.0) (-0.03061 0.3878) (0.03061 0.3878) (0.05 0.0)  )          (never get all of the way up to 1.0)

 

==> f-4     (change_vc ???) CF 1.00

      ( (-0.347 0.3878) (-0.25 0.0)  )

 

FuzzyCLIPS> (run   1)

FIRE    1 defuzzification-and-control: f-4,f-3,f-2,f-1      ç retracts facts and simulates effects of change

<== f-4     (change_vc ???) CF 1.00

      ( (-0.347 0.3878) (-0.25 0.0)  )

 

<== f-3     (change_vh ???) CF 1.00

      ( (-0.05 0.0) (-0.03061 0.3878) (0.03061 0.3878) (0.05 0.0)  )

 

<== f-2     (outTemp ???) CF 1.00

      ( (25.27 0.0) (25.37 1.0) (25.47 0.0)  )

 

<== f-1     (outFlow ???) CF 1.00

      ( (40.5 0.0) (41.0 1.0) (41.5 0.0)  )

                              V-- essentially a pct change in the valves (universe of discourse for change)

Simulating ... coldValveChange: -0.6486801026610218 hotValveChange: 8.670440111052134e-019

Cold Valve Position = 0.377, Hot  Valve Position = 0.700

Output Flow is 28.545 litres/sec

Output Temp is 32.070 degrees C

==> f-5     (outFlow ???) CF 1.00

      ( (28.05 0.0) (28.55 1.0) (29.05 0.0)  )

 

==> f-6     (outTemp ???) CF 1.00

      ( (31.97 0.0) (32.07 1.0) (32.17 0.0)  )

 

FuzzyCLIPS> (run   1)                                 Not as cold now, changes are clipped lower

FIRE    1 cold_strong: f-6,f-5

debug in cold_strong how cold is it? membership: 0.1171939725059343 how strong is it? membership: 1.0

==> f-7     (change_vh ???) CF 1.00

      ( (-0.05 0.0) (-0.04396 0.1207) (0.04396 0.1207) (0.05 0.0)  )

 

==> f-8     (change_vc ???) CF 1.00

      ( (-0.2802 0.1207) (-0.25 0.0)  )

 

FuzzyCLIPS> (run   1)

FIRE    1 defuzzification-and-control: f-8,f-7,f-6,f-5

<== f-8     (change_vc ???) CF 1.00

      ( (-0.2802 0.1207) (-0.25 0.0)  )

 

<== f-7     (change_vh ???) CF 1.00

      ( (-0.05 0.0) (-0.04396 0.1207) (0.04396 0.1207) (0.05 0.0)  )

 

<== f-6     (outTemp ???) CF 1.00

      ( (31.97 0.0) (32.07 1.0) (32.17 0.0)  )

 

<== f-5     (outFlow ???) CF 1.00

      ( (28.05 0.0) (28.55 1.0) (29.05 0.0)  )

 

Simulating ... coldValveChange: -0.6324928123545163 hotValveChange: 0.0

Cold Valve Position = 0.157, Hot  Valve Position = 0.700

Output Flow is 24.147 litres/sec

Output Temp is 36.090 degrees C

==> f-9     (outFlow ???) CF 1.00

      ( (23.65 0.0) (24.15 1.0) (24.65 0.0)  )

 

==> f-10    (outTemp ???) CF 1.00

      ( (35.99 0.0) (36.09 1.0) (36.19 0.0)  )

 

FuzzyCLIPS> (run   1)                     ç have gotten temp into line, still need to work on flow

FIRE    1 OK_strong: f-10,f-9

debug in OK_strong how OK is temp? membership: 0.9549669210894933 how strong is it? membership: 0.9317697278008481

==> f-11    (change_vh ???) CF 1.00

      ( (-0.25 0.0) (-0.1566 0.9344) (-0.1402 0.9344) (0.0 0.0)  )

 

==> f-12    (change_vc ???) CF 1.00

      ( (-0.25 0.0) (-0.1566 0.9344) (-0.1402 0.9344) (0.0 0.0)  )

 

FuzzyCLIPS> (run   1)

FIRE    1 defuzzification-and-control: f-12,f-11,f-10,f-9

<== f-12    (change_vc ???) CF 1.00

      ( (-0.25 0.0) (-0.1566 0.9344) (-0.1402 0.9344) (0.0 0.0)  )

 

<== f-11    (change_vh ???) CF 1.00

      ( (-0.25 0.0) (-0.1566 0.9344) (-0.1402 0.9344) (0.0 0.0)  )

 

<== f-10    (outTemp ???) CF 1.00

      ( (35.99 0.0) (36.09 1.0) (36.19 0.0)  )

 

<== f-9     (outFlow ???) CF 1.00

      ( (23.65 0.0) (24.15 1.0) (24.65 0.0)  )

 

Simulating ... coldValveChange: -0.1332660140306179 hotValveChange: -0.1332660140306179

Cold Valve Position = 0.139, Hot  Valve Position = 0.617

Output Flow is 21.300 litres/sec

Output Temp is 36.090 degrees C

==> f-13    (outFlow ???) CF 1.00

      ( (20.8 0.0) (21.3 1.0) (21.8 0.0)  )

 

==> f-14    (outTemp ???) CF 1.00

      ( (35.99 0.0) (36.09 1.0) (36.19 0.0)  )

 

FuzzyCLIPS> (run   1)

FIRE    1 OK_strong: f-14,f-13

debug in OK_strong how OK is temp? membership: 0.9549669210895004 how strong is it? membership: 0.7040039540538914

==> f-15    (change_vh ???) CF 1.00

      ( (-0.25 0.0) (-0.1785 0.7154) (-0.1073 0.7154) (0.0 0.0)  )

 

==> f-16    (change_vc ???) CF 1.00

      ( (-0.25 0.0) (-0.1785 0.7154) (-0.1073 0.7154) (0.0 0.0)  )

 

FuzzyCLIPS> (run   1)

FIRE    1 defuzzification-and-control: f-16,f-15,f-14,f-13

<== f-16    (change_vc ???) CF 1.00

      ( (-0.25 0.0) (-0.1785 0.7154) (-0.1073 0.7154) (0.0 0.0)  )

 

<== f-15    (change_vh ???) CF 1.00

      ( (-0.25 0.0) (-0.1785 0.7154) (-0.1073 0.7154) (0.0 0.0)  )

 

<== f-14    (outTemp ???) CF 1.00

      ( (35.99 0.0) (36.09 1.0) (36.19 0.0)  )

 

<== f-13    (outFlow ???) CF 1.00

      ( (20.8 0.0) (21.3 1.0) (21.8 0.0)  )

 

Simulating ... coldValveChange: -0.1322823833280585 hotValveChange: -0.1322823833280585

Cold Valve Position = 0.123, Hot  Valve Position = 0.548

Output Flow is 18.907 litres/sec

Output Temp is 36.090 degrees C

==> f-17    (outFlow ???) CF 1.00

      ( (18.41 0.0) (18.91 1.0) (19.41 0.0)  )

 

==> f-18    (outTemp ???) CF 1.00

      ( (35.99 0.0) (36.09 1.0) (36.19 0.0)  )

 

FuzzyCLIPS> (run   1)

FIRE    1 OK_strong: f-18,f-17

debug in OK_strong how OK is temp? membership: 0.9549669210894933 how strong is it? membership: 0.5125529971647501

==> f-19    (change_vh ???) CF 1.00

      ( (-0.25 0.0) (-0.1969 0.5313) (-0.0797 0.5313) (0.0 0.0)  )

 

==> f-20    (change_vc ???) CF 1.00

      ( (-0.25 0.0) (-0.1969 0.5313) (-0.0797 0.5313) (0.0 0.0)  )

 

FuzzyCLIPS> (run   1)

FIRE    1 defuzzification-and-control: f-20,f-19,f-18,f-17

<== f-20    (change_vc ???) CF 1.00

      ( (-0.25 0.0) (-0.1969 0.5313) (-0.0797 0.5313) (0.0 0.0)  )

 

<== f-19    (change_vh ???) CF 1.00

      ( (-0.25 0.0) (-0.1969 0.5313) (-0.0797 0.5313) (0.0 0.0)  )

 

<== f-18    (outTemp ???) CF 1.00

      ( (35.99 0.0) (36.09 1.0) (36.19 0.0)  )

 

<== f-17    (outFlow ???) CF 1.00

      ( (18.41 0.0) (18.91 1.0) (19.41 0.0)  )

 

Simulating ... coldValveChange: -0.1308404378631508 hotValveChange: -0.1308404378631508

Cold Valve Position = 0.110, Hot  Valve Position = 0.490

Output Flow is 16.890 litres/sec

Output Temp is 36.090 degrees C

==> f-21    (outFlow ???) CF 1.00

      ( (16.39 0.0) (16.89 1.0) (17.39 0.0)  )

 

==> f-22    (outTemp ???) CF 1.00

      ( (35.99 0.0) (36.09 1.0) (36.19 0.0)  )

 

FuzzyCLIPS> (run   1)

FIRE    1 OK_strong: f-22,f-21

debug in OK_strong how OK is temp? membership: 0.9549669210894933 how strong is it? membership: 0.3511882155568648

==> f-23    (change_vh ???) CF 1.00

      ( (-0.25 0.0) (-0.2124 0.3761) (-0.05642 0.3761) (0.0 0.0)  )

 

==> f-24    (change_vc ???) CF 1.00

      ( (-0.25 0.0) (-0.2124 0.3761) (-0.05642 0.3761) (0.0 0.0)  )

 

FuzzyCLIPS> (run   1)

FIRE    1 defuzzification-and-control: f-24,f-23,f-22,f-21

<== f-24    (change_vc ???) CF 1.00

      ( (-0.25 0.0) (-0.2124 0.3761) (-0.05642 0.3761) (0.0 0.0)  )

 

<== f-23    (change_vh ???) CF 1.00

      ( (-0.25 0.0) (-0.2124 0.3761) (-0.05642 0.3761) (0.0 0.0)  )

 

<== f-22    (outTemp ???) CF 1.00

      ( (35.99 0.0) (36.09 1.0) (36.19 0.0)  )

 

<== f-21    (outFlow ???) CF 1.00

      ( (16.39 0.0) (16.89 1.0) (17.39 0.0)  )

 

Simulating ... coldValveChange: -0.1293387487795013 hotValveChange: -0.1293387487795013

Cold Valve Position = 0.099, Hot  Valve Position = 0.440

Output Flow is 15.180 litres/sec

Output Temp is 36.090 degrees C

==> f-25    (outFlow ???) CF 1.00

      ( (14.68 0.0) (15.18 1.0) (15.68 0.0)  )

 

==> f-26    (outTemp ???) CF 1.00

      ( (35.99 0.0) (36.09 1.0) (36.19 0.0)  )

 

FuzzyCLIPS> (run   1)

FIRE    1 OK_strong: f-26,f-25

debug in OK_strong how OK is temp? membership: 0.9549669210895004 how strong is it? membership: 0.2143926868213787

==> f-27    (change_vh ???) CF 1.00

      ( (-0.25 0.0) (-0.2255 0.2446) (-0.03669 0.2446) (0.0 0.0)  )

 

==> f-28    (change_vc ???) CF 1.00

      ( (-0.25 0.0) (-0.2255 0.2446) (-0.03669 0.2446) (0.0 0.0)  )

 

FuzzyCLIPS> (run   1)

FIRE    1 defuzzification-and-control: f-28,f-27,f-26,f-25

<== f-28    (change_vc ???) CF 1.00

      ( (-0.25 0.0) (-0.2255 0.2446) (-0.03669 0.2446) (0.0 0.0)  )

 

<== f-27    (change_vh ???) CF 1.00

      ( (-0.25 0.0) (-0.2255 0.2446) (-0.03669 0.2446) (0.0 0.0)  )

 

<== f-26    (outTemp ???) CF 1.00

      ( (35.99 0.0) (36.09 1.0) (36.19 0.0)  )

 

<== f-25    (outFlow ???) CF 1.00

      ( (14.68 0.0) (15.18 1.0) (15.68 0.0)  )

 

Simulating ... coldValveChange: -0.1279155818620019 hotValveChange: -0.1279155818620019

Cold Valve Position = 0.089, Hot  Valve Position = 0.398

Output Flow is 13.719 litres/sec

Output Temp is 36.094 degrees C

==> f-29    (outFlow ???) CF 1.00

      ( (13.22 0.0) (13.72 1.0) (14.22 0.0)  )

 

==> f-30    (outTemp ???) CF 1.00

      ( (35.99 0.0) (36.09 1.0) (36.19 0.0)  )

 

FuzzyCLIPS> (run   1)

FIRE    1 OK_strong: f-30,f-29

debug in OK_strong how OK is temp? membership: 0.9529939814573112 how strong is it? membership: 0.09749703938521293

==> f-31    (change_vh ???) CF 1.00

      ( (-0.25 0.0) (-0.2368 0.1322) (-0.01983 0.1322) (0.0 0.0)  )

 

==> f-32    (change_vc ???) CF 1.00

      ( (-0.25 0.0) (-0.2368 0.1322) (-0.01983 0.1322) (0.0 0.0)  )

 

FuzzyCLIPS> (run   1)

FIRE    1 defuzzification-and-control: f-32,f-31,f-30,f-29

<== f-32    (change_vc ???) CF 1.00

      ( (-0.25 0.0) (-0.2368 0.1322) (-0.01983 0.1322) (0.0 0.0)  )

 

<== f-31    (change_vh ???) CF 1.00

      ( (-0.25 0.0) (-0.2368 0.1322) (-0.01983 0.1322) (0.0 0.0)  )

 

<== f-30    (outTemp ???) CF 1.00

      ( (35.99 0.0) (36.09 1.0) (36.19 0.0)  )

 

<== f-29    (outFlow ???) CF 1.00

      ( (13.22 0.0) (13.72 1.0) (14.22 0.0)  )

 

Simulating ... coldValveChange: -0.1266136162054744 hotValveChange: -0.1266136162054744

Cold Valve Position = 0.080, Hot  Valve Position = 0.361

Output Flow is 12.446 litres/sec

Output Temp is 36.135 degrees C

Shower is under control!

Would you like to change some parameters? n

==> f-33    (outFlow ???) CF 1.00

      ( (11.95 0.0) (12.45 1.0) (12.95 0.0)  )

 

==> f-34    (outTemp ???) CF 1.00

      ( (36.03 0.0) (36.13 1.0) (36.23 0.0)  )

 

[PRCCODE4] Execution halted during the actions of defrule defuzzification-and-control.

FuzzyCLIPS>