Presentation is loading. Please wait.

Presentation is loading. Please wait.

Ontology-based optimization modeling tool for distributed and ad-hoc business problems 2012.12.13 Piao Guangyuan.

Similar presentations


Presentation on theme: "Ontology-based optimization modeling tool for distributed and ad-hoc business problems 2012.12.13 Piao Guangyuan."— Presentation transcript:

1 Ontology-based optimization modeling tool for distributed and ad-hoc business problems 2012.12.13 Piao Guangyuan

2 2 1.Introduction 2.Related Works 3.Ontology-based Optimization Modeling Tool using SWCL 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise 5.Conclusion  Contents

3 3 1.Introduction 1.1. Background of the research 1.2. Why this research is needed? 1.3. Scopes and objectives of the research 2. Related Works 3. Ontology-based Optimization Modeling Tool using SWCL 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise 5. Conclusion  Contents

4 1). Supporting System for Shopping Decision Making based on Semantic Web Constraint Language (2006), Youn, Suk Hee 2). Application of Semantic Web Constraint Language SWCL for Virtual Enterprise (2007), Jeong, Kyunbum 4  Background of the research  Semantic Web - The Semantic Web is a "man-made woven web of data" that facilitates machines to understand the semantics, or meaning, of information on the World Wide Web  SWCL and the applications - Semantic Web Constraint Language (SWCL) was proposed in 2006 with the vision of complementing the constraints on data and concepts represented by ontology. - The Application of SWCL for decision making in internet shopping environment was proposed by Youn, Suk Hee 1) with an implementation of a shopping agent in the Semantic Web environment in 2006. - Jeong, Kynbum 2), 2007 proposed to apply SWCL based on OWL to be possible interchanging constraints information among each other in the virtual enterprise and more flexible. 1. Introduction

5 5 The SWCL Syntax is uncomfortable to read and write Users need high level of knowledge in OWL All constraints related to objective are need to be defined manually It would be a tedious work to deal with expressing many constraints Difficult to generate and evaluate SWCL as well as inconvenient to users apply it to real problems.  Why this research is needed? 1. Introduction

6 6 Develop Optimization Modelling Tool to facilitate the usage of Ontology and SWCL Objectives Develop translation algorithm from SWCL to solver’s code Develop Optimization Modelling Tool based on Protégé Choose IBM Ilog Cplex Optimization Studio as the solver Apply SWCL to cope with linear problem Scopes  Objectives and Scopes of the research

7 7 Semantic Web Optimized Solution Optimized Solution with MemVendor2 ?  Objective with Virtual Enterprise scenario 1. Introduction constraint

8 8 Optimization Modeling Using SWCL Manually Optimization Modeling Using SWCL Manually Optimization Modeling Using SWCL in Protégé Optimization Modeling Using SWCL in Protégé Ilog statement Reference manually Reference with OWL API Detect related constraints automatically Select related constraints manually  Contributions 1. Introduction SMART Engine Ontology

9 9 1.Introduction 2. Related Works 2.1. Semantic Web 2.2. OWL2.0 2.3. SWRL 2.4. SWCL 2.5. Drawbacks of SWCL 3. Ontology-based Optimization Modeling Tool using SWCL 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise 5. Conclusion  Contents

10 10  Semantic Web - The Semantic Web is the extension of the World Wide Web that enables people to share content beyond the boundaries of applications and websites.  OWL 2.0 - OWL 2 Web Ontology Language (OWL) is a Semantic Web language designed to represent rich and complex knowledge about things, groups of things, and relations between things.  SWRL - Semantic Web Rule Language (SWRL) is a language based on a combination of the OWL DL and OWL Lite sublanguages of the OWL Web Ontology Language with the Unary/Binary Datalog RuleML sublanguages of the Rule Markup Language. Example: hasParent(?x1,?x2) ∧ hasBrother(?x2,?x3) ⇒ hasUncle(?x1,?x3) 2. Related works  Semantic Web, OWL 2.0 and SWRL

11 11  The Purpose of SWCL - Representing mathematical expressions about constraints in the Semantic Web. - OWL and SWRL cannot support what relates mathematical expressions. - SWCL is the extended version of OWL, because of it’s data connection with OWL classes and properties in SWCL expressions. 2. Related works  SWCL (Semantic Web Constraint Language) Country Province xsd:positiveInteger populationValue partOf Fig. 1. Country and province classes and the relationship of them

12 12 Fig. 2. SWCL structure 2. Related works  SWCL (Semantic Web Constraint Language)

13 13 2. Related works  SWCL Abstract Syntax

14 14 2. Related works The SWCL Syntax present is difficult to read and write Users need high level of knowledge in OWL It would be a tedious work to deal with expressing many constraints  Drawbacks of SWCL In order to cope with these problems…

15 15 1.Introduction 2. Related Works 3. Ontology-based Optimization Modeling Tool using SWCL 3.1. Architecture of Optimization Modeling Tool 3.2. Constraint Editor 3.3. Optimization Model Constructor 3.4. Optimization Modeling Language Translator 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise 5. Conclusion  Contents

16 16 Ontology-based Optimization Modeling Tool IBM Ilog Cplex Optimization Studio IBM Ilog Cplex Optimization Studio Protégé 4.1 Protégé 4.1 API OWL API Optimization Model Constructor Constraint Editor User Interface Objective Identification Constraint Identification Decision Variable Identification Optimization Model Identification Optimization Modeling Language Translator OWL/ SWCL Statement OWL/ SWCL Statement Ilog Statement 3.Ontology-based Optimization Modeling Tool using SWCL  Architecture of Optimization Modeling Tool

17 17 The constraint editor of OMT which can help users Manipulate SWCL more straightforward Create, retrieve, update, delete SWCL easily Refer to resources in Protégé intuitively For the reasons, we develop Optimization Modeling Tool as a plug-in of Protégé… 3.Ontology-based Optimization Modeling Tool using SWCL  Constraint Editor

18 Apply Manchester Syntax in variable’s class expressions which is 18 Designed to produce a syntax that was concise Designed for writing OWL class expressions Less verbose, quicker to write and easier to read  Manchester Syntax - The Manchester OWL syntax is a user-friendly syntax for OWL 2 descriptions 3.Ontology-based Optimization Modeling Tool using SWCL  Constraint Editor – Adapting Manchester Syntax Fig. 3. Class expression for variable x

19 19 Fig. 4. The Manchester OWL Syntax Class Constructors x partOf VALUE ?y  Constraint Editor – Adapting Manchester Syntax 3.Ontology-based Optimization Modeling Tool using SWCL

20 20 3.Ontology-based Optimization Modeling Tool using SWCL  Constraint Editor – Refer to classes and properties in Protégé easily Fig. 5. Screenshot of Protégé

21 21 3.Ontology-based Optimization Modeling Tool using SWCL  Constraint Editor Adapting Manchester Syntax Referring resources in Protégé Fig. 6. Screenshot of Constriant Editor

22 22 Ontology-based Optimization Modeling Tool IBM Ilog Cplex Optimization Studio IBM Ilog Cplex Optimization Studio Protégé 4.1 Protégé 4.1 API OWL API Optimization Model Constructor Constraint Editor User Interface Objective Identification Constraint Identification Decision Variable Identification Optimization Model Identification Optimization Modeling Language Translator OWL/ SWCL Statement OWL/ SWCL Statement Ilog Statement 3.Ontology-based Optimization Modeling Tool using SWCL  Architecture of Optimization Modeling Tool

23 23  Optimization Model Constructor 3.Ontology-based Optimization Modeling Tool using SWCL  Objective Identification - The step identifies the user’s objective for the optimization model.  Constraint Identification -Once the objective is given, the constraints related to the objective should be identified automatically.  Decision Variable Identification - In this step, for all factors, we first examine whether its value is exist. If this is the case, the factor is called “constant factor”; otherwise, it is identified as “decision variable factor”  Optimization Model Identification - We identify which kind of programming model (e.g., linear programming problem, constraint logic problem, constraint satisfaction problem) is given in this step.

24 24  Optimization Model Constructor – Objective Identification 3.Ontology-based Optimization Modeling Tool using SWCL Fig. 7. Screenshot of Objective View

25 25 Constraint04 Constraint03 Constraint01 Constraint06 Constraint02 Constraint05 Objective After objective identified based on classes and properties from Ontology, the constraints related to the objective should be identified automatically. Constraint07 Constraint08  Optimization Model Constructor – Constraint Identification 3.Ontology-based Optimization Modeling Tool using SWCL

26 26 initialize decision variable factors set empty initialize relevant factors set empty initialize identified constraint set empty for all Objective TermBlocks for all Factors if Factor is “decision variable factor” set {Factor’s class expression, property} as a pair add the pair to decision variable factors set endif endfor repeat for all Constraints for all Factors in Constraint if Factor is exist in decision variables set add Constraint to identified constraint set if relevant factors in the Constraint is “decision variable” set {Factor’s class expression, property} as a pair add the pair to relevant factors set endif endfor set decision variable factors set as relevant factors set set relevant factors set empty until decision variable factors set is empty  Optimization Model Constructor – Constraint Identification 3.Ontology-based Optimization Modeling Tool using SWCL

27 27 minimize Add factor to decision variable factors set Add to identified constraints set 2 2 3 3 Add to relevant factors set Set as decision variable factors set, empty relevant factors set 4 4 Repeat until decision variable factors set is empty 5 5 if factor value is not exist if the factor exist in decision variable factors set 1 1 if factor value is not exist  Optimization Model Constructor – Constraint Identification 3.Ontology-based Optimization Modeling Tool using SWCL

28 28 for all individuals in variable if individual has no property value the individual‘s property value is decision value endif endfor v1Consumption11 Constant Decision Variable v1Consumption12 v1Consumption11.hasConsumptionAmount factor value exist  Optimization Model Constructor – Decision Variable Identification 3.Ontology-based Optimization Modeling Tool using SWCL

29 29 Ontology-based Optimization Modeling Tool IBM Ilog Cplex Optimization Studio IBM Ilog Cplex Optimization Studio Protégé 4.1 Protégé 4.1 API OWL API Optimization Model Constructor Constraint Editor User Interface Objective Identification Constraint Identification Decision Variable Identification Optimization Model Identification Optimization Modeling Language Translator OWL/ SWCL Statement OWL/ SWCL Statement Ilog Statement 3.Ontology-based Optimization Modeling Tool using SWCL  Architecture of Optimization Modeling Tool

30 30 OWL/SWCL Statement Constraint03 Constraint01 Constraint06 Objective Constraint02 Ilog Statement  Optimization Modeling Language Translator 3.Ontology-based Optimization Modeling Tool using SWCL

31 31 initialize VariableDeclaration String to "" initialize ObjectiveTo String to "" for all Objective TermBlocks initialize Objective TermBlock String to "" for all individuals in Parameter for all factors in individual initialize Factor String to "“ if factor's variable has the value in factor's property append the value to Factor String else declare the variable with property's name appending individual's name append the variable to Factor String endif append Factor String to Objective TermBlock endfor append Objective TermBlock String to ObjectiveTo String endfor  Optimization Modeling Language Translator - Objective 3.Ontology-based Optimization Modeling Tool using SWCL

32 32 v1Consumption11 Factor Value (30) Property Name + Individual Name (hasConsumptionAmountv1Consumption11) Termblock String Factor String minimize v1Consumption12 v1Consumption44 … v1Consumption11.hasConsumptionAmount v1Consumption11.hasConsumptionCost factor value exist  Optimization Modeling Language Translator - Objective 3.Ontology-based Optimization Modeling Tool using SWCL

33 33 for all qualifiers initialize LHS String to "" for all LHS TermBlocks initialize LHS TermBlock String to "" if there is no Parameter for all factors initialize Factor String to "" if factor's variable has the value in factor's property append the value to Factor String else declare the variable with property's name appending individual's name append the variable to Factor String endif endfor append Factor String to LHS TermBlock String else for all individuals in Parameter for all factors in individual initialize Factor String to "" if factor's variable has the value in factor's property append the value to Factor String else declare the variable with property's name appending individual's name append the variable to Factor String endif endfor endif append LHS TermBlock String to LHS String endfor  Optimization Modeling Language Translator - Constraints 3.Ontology-based Optimization Modeling Tool using SWCL

34 34 v=v1 v2 v3 v4 w=v1Week1 v1Week2 v1Week3 v1Week4 v1Consumption11 Termblock String v1Consumption12 v1Consumption14 … Factor Value Property Name + Individual Name Factor String v1Consumption11.hasConsumptionAmount factor value exist check declared variables, if not exist  Optimization Modeling Language Translator - Constraints 3.Ontology-based Optimization Modeling Tool using SWCL

35 35 1.Introduction 2. Related Works 3. Ontology-based Optimization Modeling Tool using SWCL 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise 4.1. Virtual Enterprise problem 4.2. Constraints sharing among vendors 4.3. Virtual Enterprise Ontology Modeling 4.4. Optimization Modeling with Optimization Modeling Tool 4.5. Translated Ilog code from SWCL 4.6. Get optimal objective of VE problem 5. Conclusion  Contents

36 36 - Product: PC - BOM (Bill of Material): PC – 2 memories, 1 CPU - PC demands: 1 st week: 30, 2 nd week: 20, 3 rd week: 35, 4 th week: 40  Virtual Enterprise - Virtual Enterprise (VE) is a temporary alliance of companies that shares resources to respond to business opportunities better. Obtaining an optimal production schedule for a VE’s supply chain is usually the most important factor for its success.  Virtual Enterprise Problem 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise Fig. 4. Virtual Enterprise

37 37 Vendor 1 (Memory Vendor) Vendor 3 (CPU Vendor) Vendor 4 (Assembly Vendor) Capacity(Week1) 90 대 70 대 50 대 Capacity(Week2) 80 대 60 대 Capacity(Week3) 90 대 75 대 65 대 Capacity(Week4) 90 대 70 대 50 대 Own Demand (Week1) 20 대 0대0대 0대0대 Own Demand (Week2) 0대0대 10 대 20 대 Own Demand (Week3) 10 대 0대0대 Own Demand (Week4) 0대0대 10 대 0대0대 Production Cost 50$/ 대 70$/ 대 30$/ 대 Inventory Cost 5$/ 대 10$/ 대 Fig. 8. Virtual Enterprise Problem  Virtual Enterprise Problem 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise

38 38  Constraint-1: Producing amount should less or equal than the produce capability in that week.  Constraint-2: Demand in the week should less or equal than the sum of spending amount.  Constraint-3: The demand of CPU vendors should greater or equal to assembly company’s producing amount. :Prodout p produced at i-th week and comsumed at j-th week by k-th company :The maximum production capacity at i-th week of k-th company for p :Own demand at i-th week of k-th company for p :Virtual Enterprise demant at i-th week of k-th company for p  Constraints sharing among vendors 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise

39 39  Constraint-4: The demand of Memory vendors should greater or equal to two times of assembly company’s producing amount.  Total Cost :Unit production cost of p-th product in k-th company :Unit inventory cost per week of p-th product in k-th company  Constraints sharing among vendors 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise

40 40 Inverse Properties: hasConsumptionVendor ↔ hasConsumption hasDemandVendor ↔ hasDemand hasCapacityVendor ↔ hasCapacity hasDemandWeek ↔ hasDemand hasSpendWeek ↔ hasSpendConsumption hasProduceWeek ↔ hasProduceConsumption Consumption Capacity Demand Vendor Week int MemoryVendor CPUVendor AssemblyVendor subClassOf hasDemandVendor hasCapacityVendor hasConsumptionVendorhasProduceWeek hasCapacityWeek hasOwnDemandhasVeDemand hasDemandWeek hasProduceCapability hasConsumptionCosthasConsumptionAmount hasSpendWeek  Virtual Enterprise Ontology Modeling 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise

41  Constraint-1: Producing amount should less or equal than the produce capability in that week.  Constraint-2: Demand in the week should less or equal than the sum of spending amount. 41 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise  Constraints sharing among vendors

42 42  Constraint-3: The demand of CPU vendors should greater or equal to assembly company’s producing amount.  Constraint-4: The sum of demands of memory vendors should greater or equal to assembly company’s producing amount. 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise  Constraints sharing among vendors

43 minimize 43  Objective: Minimize the total cost of all vendors 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise  Objective from user

44 44 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise  Optimization Modeling with Optimization Modeling Tool

45 45  Optimization Modeling with Optimization Modeling Tool 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise

46 46  Virtual Enterprise with Memory Vendor 1 Semantic Web constraint

47 47 dvar int+ hasConsumptionAmountv1Consumption11; dvar int+ hasConsumptionAmountv1Consumption12; dvar int+ hasConsumptionAmountv1Consumption13; dvar int+ hasConsumptionAmountv1Consumption14; ; … … minimize 50*hasConsumptionAmountv1Consumption11+55*hasConsumptionAmountv1Consumption12+…+30*hasConsumptionAmountv4Consumption44; subject to { hasConsumptionAmountv1Consumption11+hasConsumptionAmountv1Consumption12+hasConsumptionAmountv1Consumption13+hasConsum ptionAmountv1Consumption14<=90; hasConsumptionAmountv1Consumption23+hasConsumptionAmountv1Consumption24+hasConsumptionAmountv1Consumption22<=80; hasConsumptionAmountv1Consumption33+hasConsumptionAmountv1Consumption34<=90; hasConsumptionAmountv1Consumption44<=90; hasConsumptionAmountv3Consumption11+hasConsumptionAmountv3Consumption14+hasConsumptionAmountv3Consumption12+hasConsum ptionAmountv3Consumption13<=70; hasConsumptionAmountv3Consumption22+hasConsumptionAmountv3Consumption23+hasConsumptionAmountv3Consumption24<=80; hasConsumptionAmountv3Consumption33+hasConsumptionAmountv3Consumption34<=75; hasConsumptionAmountv3Consumption44<=70; … } 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise  Translated Ilog code from SWCL

48 48 hasConsumptionAmountv1Consumption11 = 90; hasConsumptionAmountv1Consumption12 = 0; hasConsumptionAmountv1Consumption13 = 0; hasConsumptionAmountv1Consumption14 = 0; hasConsumptionAmountv1Consumption22 = 70; hasConsumptionAmountv1Consumption23 = 10; hasConsumptionAmountv1Consumption24 = 0; hasConsumptionAmountv1Consumption33 = 90; hasConsumptionAmountv1Consumption34 = 0; hasConsumptionAmountv1Consumption44 = 80; hasConsumptionAmountv3Consumption11 = 35; hasConsumptionAmountv3Consumption12 = 0; hasConsumptionAmountv3Consumption13 = 0; hasConsumptionAmountv3Consumption14 = 0; hasConsumptionAmountv3Consumption22 = 45; hasConsumptionAmountv3Consumption23 = 0; hasConsumptionAmountv3Consumption24 = 0; hasConsumptionAmountv3Consumption33 = 45; hasConsumptionAmountv3Consumption34 = 0; hasConsumptionAmountv3Consumption44 = 50; hasConsumptionAmountv4Consumption11 = 30; hasConsumptionAmountv4Consumption12 = 5; hasConsumptionAmountv4Consumption13 = 0; hasConsumptionAmountv4Consumption14 = 0; hasConsumptionAmountv4Consumption22 = 35; hasConsumptionAmountv4Consumption23 = 0; hasConsumptionAmountv4Consumption24 = 0; hasConsumptionAmountv4Consumption33 = 45; hasConsumptionAmountv4Consumption34 = 0; hasConsumptionAmountv4Consumption44 = 40; hasVeDemandv1DemandWeek1 = 70; hasVeDemandv1DemandWeek2 = 70; hasVeDemandv1DemandWeek3 = 90; hasVeDemandv1DemandWeek4 = 80; hasVeDemandv3DemandWeek1 = 35; hasVeDemandv3DemandWeek2 = 35; hasVeDemandv3DemandWeek3 = 45; hasVeDemandv3DemandWeek4 = 40; Solution (optimal) with objective 34000 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise  Get optimal objective of VE problem

49 49 Semantic Web  Virtual Enterprise with Memory Vendor 1,2 constraint

50 50 dvar int+ hasConsumptionAmountv1Consumption11; dvar int+ hasConsumptionAmountv1Consumption12; dvar int+ hasConsumptionAmountv1Consumption13; dvar int+ hasConsumptionAmountv1Consumption14; ; … … minimize 50*hasConsumptionAmountv1Consumption11+55*hasConsumptionAmountv1Consumption12+…+30*hasConsumptionAmountv4Consumption44; subject to { hasConsumptionAmountv1Consumption11+hasConsumptionAmountv1Consumption12+hasConsumptionAmountv1Consumption13+hasConsum ptionAmountv1Consumption14<=90; hasConsumptionAmountv1Consumption23+hasConsumptionAmountv1Consumption24+hasConsumptionAmountv1Consumption22<=80; hasConsumptionAmountv1Consumption33+hasConsumptionAmountv1Consumption34<=90; hasConsumptionAmountv1Consumption44<=90; hasConsumptionAmountv2Consumption14+hasConsumptionAmountv2Consumption13+hasConsumptionAmountv2Consumption12+hasConsum ptionAmountv2Consumption11<=90; hasConsumptionAmountv2Consumption23+hasConsumptionAmountv2Consumption22+hasConsumptionAmountv2Consumption24<=100; hasConsumptionAmountv2Consumption34+hasConsumptionAmountv2Consumption33<=90; hasConsumptionAmountv2Consumption44<=85; … } 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise  Translated Ilog code from SWCL

51 51 hasConsumptionAmountv1Consumption11 = 20; hasConsumptionAmountv1Consumption12 = 0; hasConsumptionAmountv1Consumption13 = 0; hasConsumptionAmountv1Consumption14 = 0; hasConsumptionAmountv1Consumption22 = 0; hasConsumptionAmountv1Consumption23 = 0; hasConsumptionAmountv1Consumption24 = 0; hasConsumptionAmountv1Consumption33 = 10; hasConsumptionAmountv1Consumption34 = 0; hasConsumptionAmountv1Consumption44 = 0; hasConsumptionAmountv2Consumption11 = 70; hasConsumptionAmountv2Consumption12 = 0; hasConsumptionAmountv2Consumption13 = 0; hasConsumptionAmountv2Consumption14 = 0; hasConsumptionAmountv2Consumption22 = 90; hasConsumptionAmountv2Consumption23 = 0; hasConsumptionAmountv2Consumption24 = 0; hasConsumptionAmountv2Consumption33 = 90; hasConsumptionAmountv2Consumption34 = 0; hasConsumptionAmountv2Consumption44 = 80; hasConsumptionAmountv3Consumption11 = 30; hasConsumptionAmountv3Consumption12 = 0; hasConsumptionAmountv3Consumption13 = 0; hasConsumptionAmountv3Consumption14 = 0; hasConsumptionAmountv3Consumption22 = 50; hasConsumptionAmountv3Consumption23 = 0; hasConsumptionAmountv3Consumption24 = 0; hasConsumptionAmountv3Consumption33 = 45; hasConsumptionAmountv3Consumption34 = 0; hasConsumptionAmountv3Consumption44 = 50; hasConsumptionAmountv4Consumption11 = 30; hasConsumptionAmountv4Consumption12 = 0; hasConsumptionAmountv4Consumption13 = 0; hasConsumptionAmountv4Consumption14 = 0; hasConsumptionAmountv4Consumption22 = 40; hasConsumptionAmountv4Consumption23 = 0; hasConsumptionAmountv4Consumption24 = 0; hasConsumptionAmountv4Consumption33 = 45; hasConsumptionAmountv4Consumption34 = 0; hasConsumptionAmountv4Consumption44 = 40; hasVeDemandv1DemandWeek1 = 0; hasVeDemandv1DemandWeek2 = 0; hasVeDemandv1DemandWeek3 = 0; hasVeDemandv1DemandWeek4 = 0; hasVeDemandv2DemandWeek1 = 60; hasVeDemandv2DemandWeek2 = 80; hasVeDemandv2DemandWeek3 = 90; hasVeDemandv2DemandWeek4 = 80; hasVeDemandv3DemandWeek1 = 30; hasVeDemandv3DemandWeek2 = 40; hasVeDemandv3DemandWeek3 = 45; hasVeDemandv3DemandWeek4 = 40; Solution (optimal) with objective 31600. It’s better working with MemVendor2 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise  Get optimal objective of VE problem

52 52 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise  Get minimal cost for vendor 1 minimize

53 53 dvar int+ hasConsumptionAmountv1Consumption11; dvar int+ hasConsumptionAmountv1Consumption12; dvar int+ hasConsumptionAmountv1Consumption13; dvar int+ hasConsumptionAmountv1Consumption14; ; … … minimize 50*hasConsumptionAmountv1Consumption11+55*hasConsumptionAmountv1Consumption12+…+50*hasConsumptionAmountv1Consumption44; subject to { hasConsumptionAmountv1Consumption11+hasConsumptionAmountv1Consumption12+hasConsumptionAmountv1Consumption13+hasConsum ptionAmountv1Consumption14<=90; hasConsumptionAmountv1Consumption23+hasConsumptionAmountv1Consumption24+hasConsumptionAmountv1Consumption22<=80; hasConsumptionAmountv1Consumption33+hasConsumptionAmountv1Consumption34<=90; hasConsumptionAmountv1Consumption44<=90; hasConsumptionAmountv2Consumption14+hasConsumptionAmountv2Consumption13+hasConsumptionAmountv2Consumption12+hasConsum ptionAmountv2Consumption11<=90; hasConsumptionAmountv2Consumption23+hasConsumptionAmountv2Consumption22+hasConsumptionAmountv2Consumption24<=100; hasConsumptionAmountv2Consumption34+hasConsumptionAmountv2Consumption33<=90; hasConsumptionAmountv2Consumption44<=85; … } 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise  Translated Ilog code from SWCL

54 54 hasConsumptionAmountv1Consumption11 = 20; hasConsumptionAmountv1Consumption12 = 0; hasConsumptionAmountv1Consumption14 = 0; hasConsumptionAmountv1Consumption22 = 0; hasConsumptionAmountv1Consumption23 = 0; hasConsumptionAmountv1Consumption24 = 0; hasConsumptionAmountv1Consumption33 = 0; hasConsumptionAmountv1Consumption34 = 0; hasConsumptionAmountv1Consumption44 = 0; hasConsumptionAmountv1Consumption13 = 70; hasConsumptionAmountv2Consumption14 = 0; hasConsumptionAmountv2Consumption13 = 0; hasConsumptionAmountv2Consumption12 = 80; hasConsumptionAmountv2Consumption11 = 10; hasConsumptionAmountv2Consumption23 = 0; hasConsumptionAmountv2Consumption22 = 100; hasConsumptionAmountv2Consumption24 = 0; hasConsumptionAmountv2Consumption34 = 90; hasConsumptionAmountv2Consumption33 = 0; hasConsumptionAmountv2Consumption44 = 85; hasConsumptionAmountv3Consumption11 = 0; hasConsumptionAmountv3Consumption14 = 0; hasConsumptionAmountv3Consumption12 = 70; hasConsumptionAmountv3Consumption13 = 0; hasConsumptionAmountv3Consumption22 = 80; hasConsumptionAmountv3Consumption23 = 0; hasConsumptionAmountv3Consumption24 = 0; hasConsumptionAmountv3Consumption33 = 75; hasConsumptionAmountv3Consumption34 = 0; hasConsumptionAmountv3Consumption44 = 70; hasConsumptionAmountv4Consumption12 = 0; hasConsumptionAmountv4Consumption11 = 30; hasConsumptionAmountv4Consumption14 = 20; hasConsumptionAmountv4Consumption13 = 0; hasConsumptionAmountv4Consumption24 = 0; hasConsumptionAmountv4Consumption22 = 40; hasConsumptionAmountv4Consumption23 = 20; hasConsumptionAmountv4Consumption33 = 65; hasConsumptionAmountv4Consumption34 = 0; hasConsumptionAmountv4Consumption44 = 50; hasVeDemandv1DemandWeek1 = 0; hasVeDemandv1DemandWeek2 = 0; hasVeDemandv1DemandWeek3 = 0; hasVeDemandv1DemandWeek4 = 0; hasVeDemandv2DemandWeek1 = 0; hasVeDemandv2DemandWeek2 = 0; hasVeDemandv2DemandWeek3 = 0; hasVeDemandv2DemandWeek4 = 0; hasVeDemandv3DemandWeek1 = 0; hasVeDemandv3DemandWeek2 = 0; hasVeDemandv3DemandWeek3 = 0; hasVeDemandv3DemandWeek4 = 0; Solution (optimal) with objective 1000. 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise  Get optimal objective of vendor 1

55 55 1.Introduction 2. Related Works 3. Ontology-based Optimization Modeling Tool using SWCL 4. Applying Ontology-based Optimization Modeling Tool to Virtual Enterprise 5. Conclusion  Contents

56 56  Develop Optimization Modeling Tool to manipulate SWCL simply. - Developed as a plug-in in Protégé which could reference classes and properties directly. - Make the generation process of SWCL straightforward. - CRUD functions have been provided to SWCL. - Adapting Manchester Syntax to write the domain description concisely. -Develop the algorithm to identify decision variable, constraints related to objective automatically. -Translation algorithm from optimization modeling language to Ilog code is developed. 5. Conclusion

57 57 Q & A


Download ppt "Ontology-based optimization modeling tool for distributed and ad-hoc business problems 2012.12.13 Piao Guangyuan."

Similar presentations


Ads by Google