530 likes | 687 Views
WP5: Rule System. CARTIF Brussels, 31 March 2014. WP5 Rule system. Base of knowledge Information of appliances Information of users Request Recipes User evaluations Rule engine: tuning recipes Static: Fuzzy inference methods Dynamic: Reinforcement Learning. NI platform. WP5 Partners.
E N D
WP5: Rule System CARTIF Brussels, 31 March 2014
WP5 Rule system. • Base of knowledge • Information of appliances • Information of users • Request • Recipes • User evaluations • Rule engine: tuning recipes • Static: Fuzzy inference methods • Dynamic: Reinforcement Learning NI platform
WP5 Partners. • UNIMI • ARDUINO • NTUA • CARTIF (leader) • GORENJE • UPV
WP5 Tasks: • T5.1 – Analysis of available devices’ repertoire (CARTIF, ARD) [M7-M15] • T5.2 – Analysis of available operational data (GORE, CARTIF) [M8-M15] • T5.3 – The recipe language (UPV, CARTIF) [M9-M15] • T5.4 – Fuzzy rules generator (CARTIF, NTUA) [M12-M18] • T5.5 – Reinforcement learning tuning (UPV, UNIMI) [M13-M20] • T5.6 – Improvement/upgrade & update procedure (UNIMI, NTUA) [M17-M22] • T5.7 – Early rule system generation (CARTIF, GORE) [M16-M23]
WP5 Deliverables: • D5.1 Ground truth (CARTIF - M15) • D5.2 Fuzzy rules (NTUA – M18) • D5.3 Reinforcement learning (UPV – M20) • D5.4 Open Source contribution procedure (UNIMI – M22) • D5.5 Rule system early generation (CARTIF – M23)
D5.1 Ground Truth • Data acquisition • Device parameters • Instruction vocabulary • Basic recipes • Ack • Operational data • User request • Eahouker evaluation T5.1 and T5.2
Ground Truth • Data acquisition • Device parameters • Instruction vocabulary • Basic recipes • Ack • Operational data • User request • Eahouker evaluation T5.1
Device parameters • Static values • Boolean values • Dynamic values
Instructions vocabulary Example of instructions: Name: Motor Value: ON Time: 30 min --------------------------- Name: Charge water Value: 5 liters Time: False
Basic recipes • Factory standard programs of the manufacturers • Define the operating cycle, its stages and the parameters participating in each phase • Are the base of the new recipes
Basic recipes • Washing machine • Six basic recipes have been identified
Basic recipes • Washing machine • Five phases on the operating cycle: • Prewashing • Washing • Rinsing • Drying • Spinning
Basic recipes • Bread maker • Five recipes differentiated • Six stages
Acknowledge messages (ACK) • Appliance status • Sensor values • Boolean: door, rotor, heater, soap, salt, rinse, etc. • Dynamic: temperature, water, speed, time, etc.
Ground Truth • Data acquisition • Device parameters • Instruction vocabulary • Basic recipes • Ack • Operational data • User request • Eahouker evaluation T5.2
User request Appliance: Dishwasher Type of load: Pots and Pans Degree of soil: Heavy soil Load: Full load “I want to wash a lot of pots and pans very dirty“
User request parameters • Dishwasher • Washing machine
Eahouker evaluations • The eahoukers transmit their satisfaction with the execution of the recipe • Eahouker feedback through a list of parameters trying to answer questions like these: • Are clothes soft or rough? • Has the rising process left traces of cleaning products? • Is there dirt remaining in the cookware?
Eahouker evaluations • Dishwasher criteria
Eahouker evaluations • Dishwasher questionnaire
Eahouker evaluations • Refrigerator/Freezer • Wet: the product are wet or not after some time • Rottenness: the products are rotten after some time • Excessive cool • Excessive power consumption
Conclusions D5.1 • Ground truth • Data from appliances • Sensors, controls, parameters • Default programs • Data from relation with users • Requests • Recipes • Evaluations Base of knowledge
Work carry out in other tasks started in the first period: • T5.3 The recipe language • T5.4 Fuzzy rules generator • T5.5 Reinforcement learning
T5.3 The recipe language • Small vocabulary language – Ontologies • Fuzzy logic terms
Ontological representation of appliance general structure • Identifies the items that the appliance HAS and the items that NEEDS • Show the mechanical settings with all options • Ontologies shared by different appliances • Ontologies to describe processes
Fuzzy logic in: • User request parameters modelled as fuzzy terms • E.g dishwasher: • Type of load (delicateness) • Dirtiness • Load • Output parameters for the recipes • E.g dishwasher: • Temperature • Time • Water
Fuzzy logic terms • User request parameters modelled as fuzzy terms
Fuzzy logic terms • User request parameters modelled as fuzzy terms
Fuzzy logic terms • User request parameters modelled as fuzzy terms
Fuzzy logic terms • Fuzzification. Dishwasher input fuzzy sets.
Fuzzy logic terms • Fuzzification. Dishwasher input fuzzy sets.
Fuzzy logic terms • Fuzzification. Dishwasher output fuzzy sets.
T5.4 Fuzzy Rules Generator • Task divided in two levels • Literature exploration • Datasets appropriated for simulation • Existing rule mining algorithms to be adopted by the fuzzy rules generator • First models for selection/generation of recipes: • Model 1: based on Fuzzy Inference System (FIS) • Model 2: based on Fuzzy Rules Set (FRS)
T5.4 Fuzzy Rules Generator • Two models developed using data from dishwasher questionnaire • Model 1: based on Fuzzy Inference System (FIS) • Numeric values between [0,1] for the input parameters Medium High Low 1 0
T5.4 Fuzzy Rules Generator • Model 1: based on Fuzzy Inference System (FIS) • Input fuzzy sets defined (for each stage of working cycle)
T5.4 Fuzzy Rules Generator • Model 1: based on Fuzzy Inference System (FIS) • Rules obtained by questionnaire: RULE 1 : IF load IS high AND type_load IS crockery THEN program IS quick; RULE 2 : IF dirtiness IS light AND type_load IS glass THEN program IS glasscare; RULE 3 : IF dirtiness IS light AND load IS medium THEN program IS eco; RULE 4 : IF dirtiness IS heavy THEN program IS intensive; RULE 5 : IF load IS medium AND type_load IS glass THEN program IS glasscare; RULE 6 : IF dirtiness IS light AND type_load IS glass THEN program IS glasscare; … • PART classification algorithm to select the most appropriated rules
T5.4 Fuzzy Rules Generator • Model 1: based on Fuzzy Inference System (FIS) Example: RULE 1 : IF load IS high AND type_load IS crockery THEN time IS quick MIN Activation operator Defuzzification Method: CoG Time: 7,50
T5.4 Fuzzy Rules Generator • Model 2: based on Fuzzy Rules Set (FRS) • Input parameters (user request parameters) as linguistic values (3, 5 or 7 values) • Low • Medium • High • Algorithm compares these parameters with all requests stored in the database (EDB)
T5.4 Fuzzy Rules Generator • Model 2: based on Fuzzy Rules Set (FRS) • Two cases: • The same request exists in DDBB and it has a good evaluation SELECTION of the associated recipe and send to the user • It doesn´t exist in DDBB GENERATION of a new recipe
T5.4 Fuzzy Rules Generator • Model 2: based on Fuzzy Rules Set (FRS) • Generation: • Select all rules with some antecedent identical to the request ---------------Case NO available in Database----------------------- ---------------Similar Cases----------------------- HALF_LOAD GLASSWARE LIGHT_SOILGLASS_CARE 4 1 HALF_LOAD POTS_AND_PANS HEAVY_SOILECO 4 1 HALF_LOAD GLASSWARE NORMAL_SOILGLASS_CARE 4 1 HALF_LOAD POTS_AND_PANS MIXED_SOILECO 5 2 HALF_LOAD GLASSWARE MIXED_SOILECO 5 2 HALF_LOAD CROCKERY_AND_CUTLERY MIXED_SOILECO 5 2 FULL_LOAD GLASSWARE MIXED_SOILGLASS_CARE 4 1 HALF_LOAD GLASSWARE MIXED_SOILGLASS_CARE 4 2 HALF_LOAD GLASSWARE NORMAL_SOILGLASS_CARE 4 1 HALF_LOAD DELICATE_CROCKERY NORMAL_SOILHYGIENE 5 1 HALF_LOAD GLASSWARE NORMAL_SOILHYGIENE 5 1 … ********Request info****** *RecipeID:1 * *UserID:1 * *Type_Load:.......... * *Dirtiness: MIXED_SOIL * *Load: HALF_LOAD * ************************
T5.4 Fuzzy Rules Generator • Model 2: based on Fuzzy Rules Set. • User evaluation • Similarity criteria RULES: HALF_LOAD GLASSWARE LIGHT_SOILGLASS_CARE 4 1 HALF_LOAD POTS_AND_PANS HEAVY_SOILECO 4 1 HALF_LOAD GLASSWARE NORMAL_SOILGLASS_CARE 4 1 HALF_LOAD POTS_AND_PANS MIXED_SOILECO 5 2 HALF_LOAD GLASSWARE MIXED_SOILECO 5 2 FULL_LOAD GLASSWARE MIXED_SOILGLASS_CARE 4 1 …
T5.4 Fuzzy Rules Generator • Model 2: based on Fuzzy Rules Set. Taking only the rules where Where: is the value for the parameter of the recipe to be calculated is the value for the user evaluation of the rule is the value for the similarity criteria of the rule