text2model 0.1.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- text2model/__init__.py +1 -0
- text2model/grammar.mzn +277 -0
- text2model/knowledge_graphs/CSPLib_12.ttl +41 -0
- text2model/knowledge_graphs/CSPLib_14.ttl +51 -0
- text2model/knowledge_graphs/CSPLib_2.ttl +59 -0
- text2model/knowledge_graphs/CSPLib_22.ttl +62 -0
- text2model/knowledge_graphs/CSPLib_28.ttl +28 -0
- text2model/knowledge_graphs/CSPLib_30.ttl +72 -0
- text2model/knowledge_graphs/CSPLib_34.ttl +52 -0
- text2model/knowledge_graphs/CSPLib_39.ttl +51 -0
- text2model/knowledge_graphs/CSPLib_54.ttl +50 -0
- text2model/knowledge_graphs/CSPLib_6.ttl +36 -0
- text2model/knowledge_graphs/CSPLib_8.ttl +53 -0
- text2model/knowledge_graphs/LPWP_128.ttl +79 -0
- text2model/knowledge_graphs/LPWP_232.ttl +95 -0
- text2model/knowledge_graphs/LPWP_53.ttl +58 -0
- text2model/knowledge_graphs/LPWP_66.ttl +52 -0
- text2model/knowledge_graphs/LPWP_85.ttl +95 -0
- text2model/knowledge_graphs/OR_LP_IP_Scheduling_problem_1.ttl +34 -0
- text2model/knowledge_graphs/OR_LP_IP_Scheduling_problem_18.ttl +59 -0
- text2model/knowledge_graphs/OR_LP_IP_Scheduling_problem_2.ttl +43 -0
- text2model/knowledge_graphs/OR_LP_IP_Scheduling_problem_28.ttl +42 -0
- text2model/knowledge_graphs/OR_LP_IP_Scheduling_problem_31.ttl +44 -0
- text2model/knowledge_graphs/OR_LP_IP_Scheduling_problem_4.ttl +48 -0
- text2model/knowledge_graphs/OR_LP_IP_Scheduling_problem_5.ttl +40 -0
- text2model/knowledge_graphs/OR_LP_IP_Scheduling_problem_6.ttl +61 -0
- text2model/knowledge_graphs/OR_LP_IP_Scheduling_problem_8.ttl +54 -0
- text2model/knowledge_graphs/combinatorial_problem_1.ttl +48 -0
- text2model/knowledge_graphs/combinatorial_problem_31.ttl +43 -0
- text2model/knowledge_graphs/combinatorial_problem_32.ttl +39 -0
- text2model/knowledge_graphs/combinatorial_problem_7.ttl +52 -0
- text2model/knowledge_graphs/complexor_AircraftAssignment.ttl +73 -0
- text2model/knowledge_graphs/complexor_AircraftLanding.ttl +53 -0
- text2model/knowledge_graphs/complexor_CFLP.ttl +43 -0
- text2model/knowledge_graphs/complexor_CapacitatedWarehouseLocation.ttl +59 -0
- text2model/knowledge_graphs/complexor_CarSelection.ttl +30 -0
- text2model/knowledge_graphs/complexor_TSP.ttl +52 -0
- text2model/knowledge_graphs/complexor_VRPTW.ttl +67 -0
- text2model/knowledge_graphs/nlp4lp_1.ttl +56 -0
- text2model/knowledge_graphs/nlp4lp_10.ttl +46 -0
- text2model/knowledge_graphs/nlp4lp_11.ttl +57 -0
- text2model/knowledge_graphs/nlp4lp_12.ttl +48 -0
- text2model/knowledge_graphs/nlp4lp_13.ttl +48 -0
- text2model/knowledge_graphs/nlp4lp_14.ttl +82 -0
- text2model/knowledge_graphs/nlp4lp_15.ttl +60 -0
- text2model/knowledge_graphs/nlp4lp_16.ttl +64 -0
- text2model/knowledge_graphs/nlp4lp_17.ttl +72 -0
- text2model/knowledge_graphs/nlp4lp_18.ttl +64 -0
- text2model/knowledge_graphs/nlp4lp_19.ttl +98 -0
- text2model/knowledge_graphs/nlp4lp_2.ttl +103 -0
- text2model/knowledge_graphs/nlp4lp_20.ttl +129 -0
- text2model/knowledge_graphs/nlp4lp_21.ttl +65 -0
- text2model/knowledge_graphs/nlp4lp_22.ttl +72 -0
- text2model/knowledge_graphs/nlp4lp_23.ttl +63 -0
- text2model/knowledge_graphs/nlp4lp_24.ttl +99 -0
- text2model/knowledge_graphs/nlp4lp_25.ttl +77 -0
- text2model/knowledge_graphs/nlp4lp_27.ttl +75 -0
- text2model/knowledge_graphs/nlp4lp_28.ttl +50 -0
- text2model/knowledge_graphs/nlp4lp_29.ttl +63 -0
- text2model/knowledge_graphs/nlp4lp_3.ttl +49 -0
- text2model/knowledge_graphs/nlp4lp_30.ttl +49 -0
- text2model/knowledge_graphs/nlp4lp_31.ttl +35 -0
- text2model/knowledge_graphs/nlp4lp_32.ttl +33 -0
- text2model/knowledge_graphs/nlp4lp_33.ttl +49 -0
- text2model/knowledge_graphs/nlp4lp_34.ttl +67 -0
- text2model/knowledge_graphs/nlp4lp_35.ttl +75 -0
- text2model/knowledge_graphs/nlp4lp_36.ttl +56 -0
- text2model/knowledge_graphs/nlp4lp_37.ttl +52 -0
- text2model/knowledge_graphs/nlp4lp_38.ttl +55 -0
- text2model/knowledge_graphs/nlp4lp_39.ttl +58 -0
- text2model/knowledge_graphs/nlp4lp_4.ttl +64 -0
- text2model/knowledge_graphs/nlp4lp_40.ttl +49 -0
- text2model/knowledge_graphs/nlp4lp_41.ttl +62 -0
- text2model/knowledge_graphs/nlp4lp_42.ttl +49 -0
- text2model/knowledge_graphs/nlp4lp_43.ttl +98 -0
- text2model/knowledge_graphs/nlp4lp_44.ttl +41 -0
- text2model/knowledge_graphs/nlp4lp_45.ttl +56 -0
- text2model/knowledge_graphs/nlp4lp_46.ttl +35 -0
- text2model/knowledge_graphs/nlp4lp_47.ttl +68 -0
- text2model/knowledge_graphs/nlp4lp_48.ttl +74 -0
- text2model/knowledge_graphs/nlp4lp_49.ttl +66 -0
- text2model/knowledge_graphs/nlp4lp_5.ttl +69 -0
- text2model/knowledge_graphs/nlp4lp_50.ttl +51 -0
- text2model/knowledge_graphs/nlp4lp_51.ttl +53 -0
- text2model/knowledge_graphs/nlp4lp_52.ttl +51 -0
- text2model/knowledge_graphs/nlp4lp_53.ttl +55 -0
- text2model/knowledge_graphs/nlp4lp_54.ttl +74 -0
- text2model/knowledge_graphs/nlp4lp_55.ttl +50 -0
- text2model/knowledge_graphs/nlp4lp_56.ttl +67 -0
- text2model/knowledge_graphs/nlp4lp_57.ttl +59 -0
- text2model/knowledge_graphs/nlp4lp_58.ttl +65 -0
- text2model/knowledge_graphs/nlp4lp_6.ttl +63 -0
- text2model/knowledge_graphs/nlp4lp_60.ttl +36 -0
- text2model/knowledge_graphs/nlp4lp_61.ttl +83 -0
- text2model/knowledge_graphs/nlp4lp_62.ttl +44 -0
- text2model/knowledge_graphs/nlp4lp_63.ttl +49 -0
- text2model/knowledge_graphs/nlp4lp_64.ttl +41 -0
- text2model/knowledge_graphs/nlp4lp_65.ttl +78 -0
- text2model/knowledge_graphs/nlp4lp_66.ttl +51 -0
- text2model/knowledge_graphs/nlp4lp_67.ttl +40 -0
- text2model/knowledge_graphs/nlp4lp_7.ttl +53 -0
- text2model/knowledge_graphs/nlp4lp_8.ttl +51 -0
- text2model/knowledge_graphs/nlp4lp_9.ttl +58 -0
- text2model/knowledge_graphs/non_linear_problem_10.ttl +57 -0
- text2model/knowledge_graphs/non_linear_problem_15.ttl +55 -0
- text2model/knowledge_graphs/non_linear_problem_23.ttl +42 -0
- text2model/knowledge_graphs/non_linear_problem_9.ttl +61 -0
- text2model/knowledge_graphs/puzzles_problem_1.ttl +64 -0
- text2model/knowledge_graphs/puzzles_problem_11.ttl +65 -0
- text2model/knowledge_graphs/puzzles_problem_12.ttl +79 -0
- text2model/knowledge_graphs/puzzles_problem_13.ttl +50 -0
- text2model/knowledge_graphs/puzzles_problem_31.ttl +62 -0
- text2model/main.py +771 -0
- text2model/prompts/assembler_prompt.txt +104 -0
- text2model/prompts/code_stitching_prompt.txt +49 -0
- text2model/prompts/code_validation_prompt.txt +36 -0
- text2model/prompts/constraint_generation_prompt.txt +35 -0
- text2model/prompts/cot_prompt.txt +45 -0
- text2model/prompts/global_constraint_prompts/all_different_prompt.txt +67 -0
- text2model/prompts/global_constraint_prompts/count_prompt.txt +75 -0
- text2model/prompts/global_constraint_prompts/cumulative_prompt.txt +88 -0
- text2model/prompts/global_constraint_prompts/global_cardinality_prompt.txt +76 -0
- text2model/prompts/global_constraint_prompts/increasing_prompt.txt +81 -0
- text2model/prompts/global_constraint_prompts/lex_less_prompt.txt +68 -0
- text2model/prompts/grammar_validation_prompt.txt +18 -0
- text2model/prompts/kg_code_generation_prompt.txt +20 -0
- text2model/prompts/kg_generation_prompt.txt +40 -0
- text2model/prompts/objective_generation_prompt.txt +34 -0
- text2model/prompts/parameter_and_variable_generation_prompt.txt +35 -0
- text2model/utils.py +350 -0
- text2model-0.1.0.dist-info/METADATA +221 -0
- text2model-0.1.0.dist-info/RECORD +135 -0
- text2model-0.1.0.dist-info/WHEEL +5 -0
- text2model-0.1.0.dist-info/entry_points.txt +2 -0
- text2model-0.1.0.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
|
2
|
+
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
3
|
+
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
|
4
|
+
@prefix opt: <http://www.example.org/optimization#> .
|
|
5
|
+
|
|
6
|
+
opt:N rdf:type rdfs:Class ;
|
|
7
|
+
rdfs:label "Number of different products" ;
|
|
8
|
+
rdfs:comment "The total number of different products produced by the company." ;
|
|
9
|
+
rdfs:range xsd:integer .
|
|
10
|
+
|
|
11
|
+
opt:AssemblyHour rdf:type rdfs:Class ;
|
|
12
|
+
rdfs:label "Hours required to assemble product i" ;
|
|
13
|
+
rdfs:comment "The number of hours required to assemble each type of product." ;
|
|
14
|
+
rdfs:range xsd:float .
|
|
15
|
+
|
|
16
|
+
opt:TestingHour rdf:type rdfs:Class ;
|
|
17
|
+
rdfs:label "Hours required to test product i" ;
|
|
18
|
+
rdfs:comment "The number of hours required to test each type of product." ;
|
|
19
|
+
rdfs:range xsd:float .
|
|
20
|
+
|
|
21
|
+
opt:MaterialCost rdf:type rdfs:Class ;
|
|
22
|
+
rdfs:label "Material cost for product i" ;
|
|
23
|
+
rdfs:comment "The cost of raw materials required for each type of product." ;
|
|
24
|
+
rdfs:range xsd:float .
|
|
25
|
+
|
|
26
|
+
opt:MaxAssembly rdf:type rdfs:Class ;
|
|
27
|
+
rdfs:label "Maximum total hours available for assembly" ;
|
|
28
|
+
rdfs:comment "The maximum number of hours available for assembly each day." ;
|
|
29
|
+
rdfs:range xsd:integer .
|
|
30
|
+
|
|
31
|
+
opt:MaxTesting rdf:type rdfs:Class ;
|
|
32
|
+
rdfs:label "Maximum total hours available for testing" ;
|
|
33
|
+
rdfs:comment "The maximum number of hours available for testing each day." ;
|
|
34
|
+
rdfs:range xsd:integer .
|
|
35
|
+
|
|
36
|
+
opt:Price rdf:type rdfs:Class ;
|
|
37
|
+
rdfs:label "Selling price for product i" ;
|
|
38
|
+
rdfs:comment "The selling price for each type of product." ;
|
|
39
|
+
rdfs:range xsd:float .
|
|
40
|
+
|
|
41
|
+
opt:MaxOvertimeAssembly rdf:type rdfs:Class ;
|
|
42
|
+
rdfs:label "Maximum overtime hours available for assembly" ;
|
|
43
|
+
rdfs:comment "The maximum number of overtime hours that can be scheduled for assembly." ;
|
|
44
|
+
rdfs:range xsd:integer .
|
|
45
|
+
|
|
46
|
+
opt:OvertimeAssemblyCost rdf:type rdfs:Class ;
|
|
47
|
+
rdfs:label "Overtime cost for assembly per hour" ;
|
|
48
|
+
rdfs:comment "The cost per hour for overtime assembly labor." ;
|
|
49
|
+
rdfs:range xsd:float .
|
|
50
|
+
|
|
51
|
+
opt:MaterialDiscount rdf:type rdfs:Class ;
|
|
52
|
+
rdfs:label "Discount on material cost when a certain threshold is reached" ;
|
|
53
|
+
rdfs:comment "The percentage discount provided by the raw material supplier if the daily bill is above a certain threshold." ;
|
|
54
|
+
rdfs:range xsd:float .
|
|
55
|
+
|
|
56
|
+
opt:DiscountThreshold rdf:type rdfs:Class ;
|
|
57
|
+
rdfs:label "Threshold for the quantity to reach to obtain the material discount" ;
|
|
58
|
+
rdfs:comment "The threshold for the quantity of raw materials to reach to obtain the discount." ;
|
|
59
|
+
rdfs:range xsd:float .
|
|
60
|
+
|
|
61
|
+
opt:Profit rdf:type rdfs:Class ;
|
|
62
|
+
rdfs:label "Daily profit of the company" ;
|
|
63
|
+
rdfs:comment "The daily profit of the company, which is the total revenue minus the total cost." ;
|
|
64
|
+
rdfs:range xsd:float .
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
|
2
|
+
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
3
|
+
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
|
4
|
+
@prefix opt: <http://www.semanticweb.org/ontologies/optimization#> .
|
|
5
|
+
|
|
6
|
+
:Problem a opt:OptimizationProblem ;
|
|
7
|
+
opt:hasObjective :Objective ;
|
|
8
|
+
opt:hasConstraint :Constraint1, :Constraint2 ;
|
|
9
|
+
opt:hasVariable :Variable1 ;
|
|
10
|
+
opt:hasParameter :Parameter1, :Parameter2, :Parameter3, :Parameter4, :Parameter5, :Parameter6, :Parameter7, :Parameter8 .
|
|
11
|
+
|
|
12
|
+
:Parameter1 a opt:Parameter ;
|
|
13
|
+
rdfs:label "O" ;
|
|
14
|
+
rdfs:comment "Number of options" ;
|
|
15
|
+
opt:hasValue "2"^^xsd:integer .
|
|
16
|
+
|
|
17
|
+
:Parameter2 a opt:Parameter ;
|
|
18
|
+
rdfs:label "P" ;
|
|
19
|
+
rdfs:comment "Number of price points" ;
|
|
20
|
+
opt:hasValue "2"^^xsd:integer .
|
|
21
|
+
|
|
22
|
+
:Parameter3 a opt:Parameter ;
|
|
23
|
+
rdfs:label "L" ;
|
|
24
|
+
rdfs:comment "Number of processes" ;
|
|
25
|
+
opt:hasValue "3"^^xsd:integer .
|
|
26
|
+
|
|
27
|
+
:Parameter4 a opt:Parameter ;
|
|
28
|
+
rdfs:label "Allocated" ;
|
|
29
|
+
rdfs:comment "Allocated resources for each option" ;
|
|
30
|
+
opt:hasValue "[8000, 5000]"^^xsd:string .
|
|
31
|
+
|
|
32
|
+
:Parameter5 a opt:Parameter ;
|
|
33
|
+
rdfs:label "Price" ;
|
|
34
|
+
rdfs:comment "Price at each price point" ;
|
|
35
|
+
opt:hasValue "[38, 33]"^^xsd:string .
|
|
36
|
+
|
|
37
|
+
:Parameter6 a opt:Parameter ;
|
|
38
|
+
rdfs:label "Input" ;
|
|
39
|
+
rdfs:comment "Input resources required for each option in each process" ;
|
|
40
|
+
opt:hasValue "[[3, 5], [1, 1], [5, 3]]"^^xsd:string .
|
|
41
|
+
|
|
42
|
+
:Parameter7 a opt:Parameter ;
|
|
43
|
+
rdfs:label "Output" ;
|
|
44
|
+
rdfs:comment "Output produced for each price point in each process" ;
|
|
45
|
+
opt:hasValue "[[4, 3], [1, 1], [3, 4]]"^^xsd:string .
|
|
46
|
+
|
|
47
|
+
:Parameter8 a opt:Parameter ;
|
|
48
|
+
rdfs:label "Cost" ;
|
|
49
|
+
rdfs:comment "Cost for each process" ;
|
|
50
|
+
opt:hasValue "[51, 11, 40]"^^xsd:string .
|
|
51
|
+
|
|
52
|
+
:Variable1 a opt:Variable ;
|
|
53
|
+
rdfs:label "X" ;
|
|
54
|
+
rdfs:comment "Number of times each process is executed" ;
|
|
55
|
+
opt:hasLowerBound "0"^^xsd:float ;
|
|
56
|
+
opt:hasUpperBound "Infinity"^^xsd:float .
|
|
57
|
+
|
|
58
|
+
:Constraint1 a opt:Constraint ;
|
|
59
|
+
rdfs:label "Resource Constraint" ;
|
|
60
|
+
rdfs:comment "The total input resources used by all processes should not exceed the allocated resources" ;
|
|
61
|
+
opt:hasMathematicalExpression "sum(X[i]*Input[i][j] for i in 1..L) <= Allocated[j] for j in 1..O"^^xsd:string .
|
|
62
|
+
|
|
63
|
+
:Constraint2 a opt:Constraint ;
|
|
64
|
+
rdfs:label "Non-negativity Constraint" ;
|
|
65
|
+
rdfs:comment "The number of times each process is executed should be non-negative" ;
|
|
66
|
+
opt:hasMathematicalExpression "X[i] >= 0 for i in 1..L"^^xsd:string .
|
|
67
|
+
|
|
68
|
+
:Objective a opt:Objective ;
|
|
69
|
+
rdfs:label "Revenue Maximization" ;
|
|
70
|
+
rdfs:comment "Maximize the total revenue from all products" ;
|
|
71
|
+
opt:hasMathematicalExpression "maximize sum((sum(Price[j]*Output[i][j] for j in 1..P) - Cost[i])*X[i] for i in 1..L)"^^xsd:string ;
|
|
72
|
+
opt:hasOptimizationDirection opt:Maximize .
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
|
2
|
+
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
3
|
+
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
|
4
|
+
@prefix opt: <http://www.example.org/optimization#> .
|
|
5
|
+
|
|
6
|
+
opt:StockInvestmentProblem a opt:OptimizationProblem ;
|
|
7
|
+
opt:hasParameter opt:N, opt:Bought, opt:BuyPrice, opt:CurrentPrice, opt:FuturePrice, opt:TransactionRate, opt:TaxRate, opt:K ;
|
|
8
|
+
opt:hasVariable opt:SharesToSell ;
|
|
9
|
+
opt:hasConstraint opt:MoneyRaisedConstraint ;
|
|
10
|
+
opt:hasObjective opt:MaximizePortfolioValue .
|
|
11
|
+
|
|
12
|
+
opt:N a opt:Parameter ;
|
|
13
|
+
rdfs:label "Number of different shares" ;
|
|
14
|
+
rdfs:comment "The number of different shares in the investor's portfolio." ;
|
|
15
|
+
rdfs:range xsd:integer .
|
|
16
|
+
|
|
17
|
+
opt:Bought a opt:Parameter ;
|
|
18
|
+
rdfs:label "Amount of each share initially bought" ;
|
|
19
|
+
rdfs:comment "The amount of each share initially bought by the investor." ;
|
|
20
|
+
rdfs:range xsd:float .
|
|
21
|
+
|
|
22
|
+
opt:BuyPrice a opt:Parameter ;
|
|
23
|
+
rdfs:label "Purchase price of each share" ;
|
|
24
|
+
rdfs:comment "The purchase price of each share in the investor's portfolio." ;
|
|
25
|
+
rdfs:range xsd:float .
|
|
26
|
+
|
|
27
|
+
opt:CurrentPrice a opt:Parameter ;
|
|
28
|
+
rdfs:label "Current market price of each share" ;
|
|
29
|
+
rdfs:comment "The current market price of each share in the investor's portfolio." ;
|
|
30
|
+
rdfs:range xsd:float .
|
|
31
|
+
|
|
32
|
+
opt:FuturePrice a opt:Parameter ;
|
|
33
|
+
rdfs:label "Expected future market price of each share" ;
|
|
34
|
+
rdfs:comment "The expected future market price of each share in the investor's portfolio." ;
|
|
35
|
+
rdfs:range xsd:float .
|
|
36
|
+
|
|
37
|
+
opt:TransactionRate a opt:Parameter ;
|
|
38
|
+
rdfs:label "Transaction cost rate per share sold" ;
|
|
39
|
+
rdfs:comment "The transaction cost rate per share sold by the investor." ;
|
|
40
|
+
rdfs:range xsd:float .
|
|
41
|
+
|
|
42
|
+
opt:TaxRate a opt:Parameter ;
|
|
43
|
+
rdfs:label "Capital gains tax rate on the profit from selling shares" ;
|
|
44
|
+
rdfs:comment "The capital gains tax rate on the profit from selling shares by the investor." ;
|
|
45
|
+
rdfs:range xsd:float .
|
|
46
|
+
|
|
47
|
+
opt:K a opt:Parameter ;
|
|
48
|
+
rdfs:label "Amount of money the investor needs to raise" ;
|
|
49
|
+
rdfs:comment "The amount of money the investor needs to raise from selling shares." ;
|
|
50
|
+
rdfs:range xsd:float .
|
|
51
|
+
|
|
52
|
+
opt:SharesToSell a opt:Variable ;
|
|
53
|
+
rdfs:label "Shares to sell" ;
|
|
54
|
+
rdfs:comment "The number of shares to sell in order to raise the required amount of money." ;
|
|
55
|
+
rdfs:range xsd:float .
|
|
56
|
+
|
|
57
|
+
opt:MoneyRaisedConstraint a opt:Constraint ;
|
|
58
|
+
rdfs:label "Money raised constraint" ;
|
|
59
|
+
rdfs:comment "The constraint that the money raised from selling shares, net of capital gains and transaction costs, must be equal to the amount the investor needs to raise." .
|
|
60
|
+
|
|
61
|
+
opt:MaximizePortfolioValue a opt:Objective ;
|
|
62
|
+
rdfs:label "Maximize portfolio value" ;
|
|
63
|
+
rdfs:comment "The objective to maximize the expected value of the investor's portfolio next year." ;
|
|
64
|
+
opt:optimizationType opt:Maximization .
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
|
2
|
+
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
3
|
+
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
|
4
|
+
@prefix opt: <http://www.example.org/optimization#> .
|
|
5
|
+
|
|
6
|
+
opt:Problem a rdfs:Class ;
|
|
7
|
+
rdfs:label "Optimization Problem" .
|
|
8
|
+
|
|
9
|
+
opt:Parameter a rdfs:Class ;
|
|
10
|
+
rdfs:label "Parameter" ;
|
|
11
|
+
rdfs:subClassOf opt:Problem .
|
|
12
|
+
|
|
13
|
+
opt:Variable a rdfs:Class ;
|
|
14
|
+
rdfs:label "Variable" ;
|
|
15
|
+
rdfs:subClassOf opt:Problem .
|
|
16
|
+
|
|
17
|
+
opt:Constraint a rdfs:Class ;
|
|
18
|
+
rdfs:label "Constraint" ;
|
|
19
|
+
rdfs:subClassOf opt:Problem .
|
|
20
|
+
|
|
21
|
+
opt:Objective a rdfs:Class ;
|
|
22
|
+
rdfs:label "Objective" ;
|
|
23
|
+
rdfs:subClassOf opt:Problem .
|
|
24
|
+
|
|
25
|
+
opt:M a opt:Parameter ;
|
|
26
|
+
rdfs:label "Number of months" ;
|
|
27
|
+
rdfs:comment "M = 6" ;
|
|
28
|
+
rdfs:range xsd:integer .
|
|
29
|
+
|
|
30
|
+
opt:I a opt:Parameter ;
|
|
31
|
+
rdfs:label "Number of different oils" ;
|
|
32
|
+
rdfs:comment "I = 5" ;
|
|
33
|
+
rdfs:range xsd:integer .
|
|
34
|
+
|
|
35
|
+
opt:BuyPrice a opt:Parameter ;
|
|
36
|
+
rdfs:label "Buy price of oil i in month m" ;
|
|
37
|
+
rdfs:range xsd:float .
|
|
38
|
+
|
|
39
|
+
opt:SellPrice a opt:Parameter ;
|
|
40
|
+
rdfs:label "Sell price of the products after refining" ;
|
|
41
|
+
rdfs:range xsd:float .
|
|
42
|
+
|
|
43
|
+
opt:IsVegetable a opt:Parameter ;
|
|
44
|
+
rdfs:label "Indicator whether item i is a vegetable oil" ;
|
|
45
|
+
rdfs:range xsd:boolean .
|
|
46
|
+
|
|
47
|
+
opt:MaxVegetableRefiningPerMonth a opt:Parameter ;
|
|
48
|
+
rdfs:label "Total refining capability for vegetable oils per month" ;
|
|
49
|
+
rdfs:range xsd:integer .
|
|
50
|
+
|
|
51
|
+
opt:MaxNonVegetableRefiningPerMonth a opt:Parameter ;
|
|
52
|
+
rdfs:label "Total refining capability for non-vegetable oils per month" ;
|
|
53
|
+
rdfs:range xsd:integer .
|
|
54
|
+
|
|
55
|
+
opt:StorageSize a opt:Parameter ;
|
|
56
|
+
rdfs:label "Storage capacity for raw oil" ;
|
|
57
|
+
rdfs:range xsd:integer .
|
|
58
|
+
|
|
59
|
+
opt:StorageCost a opt:Parameter ;
|
|
60
|
+
rdfs:label "Cost for storing oil per month per ton" ;
|
|
61
|
+
rdfs:range xsd:float .
|
|
62
|
+
|
|
63
|
+
opt:MaxHardness a opt:Parameter ;
|
|
64
|
+
rdfs:label "The maximum hardness allowed for the products after refining" ;
|
|
65
|
+
rdfs:range xsd:float .
|
|
66
|
+
|
|
67
|
+
opt:MinHardness a opt:Parameter ;
|
|
68
|
+
rdfs:label "The minimum hardness required for the products after refining" ;
|
|
69
|
+
rdfs:range xsd:float .
|
|
70
|
+
|
|
71
|
+
opt:Hardness a opt:Parameter ;
|
|
72
|
+
rdfs:label "Hardness of item i" ;
|
|
73
|
+
rdfs:range xsd:float .
|
|
74
|
+
|
|
75
|
+
opt:InitialAmount a opt:Parameter ;
|
|
76
|
+
rdfs:label "Initial amount of items in storage at the beginning of the planning horizon" ;
|
|
77
|
+
rdfs:range xsd:integer .
|
|
78
|
+
|
|
79
|
+
opt:BuyingPolicy a opt:Variable ;
|
|
80
|
+
rdfs:label "Buying policy" .
|
|
81
|
+
|
|
82
|
+
opt:StoringPolicy a opt:Variable ;
|
|
83
|
+
rdfs:label "Storing policy" .
|
|
84
|
+
|
|
85
|
+
opt:ManufacturingPolicy a opt:Variable ;
|
|
86
|
+
rdfs:label "Manufacturing policy" .
|
|
87
|
+
|
|
88
|
+
opt:HardnessConstraint a opt:Constraint ;
|
|
89
|
+
rdfs:label "Hardness constraint" .
|
|
90
|
+
|
|
91
|
+
opt:StorageConstraint a opt:Constraint ;
|
|
92
|
+
rdfs:label "Storage constraint" .
|
|
93
|
+
|
|
94
|
+
opt:RefiningConstraint a opt:Constraint ;
|
|
95
|
+
rdfs:label "Refining constraint" .
|
|
96
|
+
|
|
97
|
+
opt:ProfitMaximization a opt:Objective ;
|
|
98
|
+
rdfs:label "Profit maximization" .
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
|
2
|
+
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
3
|
+
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
|
4
|
+
@prefix dec: <http://www.example.org/dec#> .
|
|
5
|
+
|
|
6
|
+
dec:DEC a rdfs:Class ;
|
|
7
|
+
rdfs:label "Digital Equipment Corporation" .
|
|
8
|
+
|
|
9
|
+
dec:System a rdfs:Class ;
|
|
10
|
+
rdfs:label "System" ;
|
|
11
|
+
rdfs:subClassOf dec:DEC .
|
|
12
|
+
|
|
13
|
+
dec:GP a rdfs:Class ;
|
|
14
|
+
rdfs:label "General Purpose System" ;
|
|
15
|
+
rdfs:subClassOf dec:System .
|
|
16
|
+
|
|
17
|
+
dec:WS a rdfs:Class ;
|
|
18
|
+
rdfs:label "Workstation System" ;
|
|
19
|
+
rdfs:subClassOf dec:System .
|
|
20
|
+
|
|
21
|
+
dec:Price a rdf:Property ;
|
|
22
|
+
rdfs:label "Price" ;
|
|
23
|
+
rdfs:domain dec:System ;
|
|
24
|
+
rdfs:range xsd:float .
|
|
25
|
+
|
|
26
|
+
dec:DiskDrives a rdf:Property ;
|
|
27
|
+
rdfs:label "Disk Drives" ;
|
|
28
|
+
rdfs:domain dec:System ;
|
|
29
|
+
rdfs:range xsd:float .
|
|
30
|
+
|
|
31
|
+
dec:MemoryBoards a rdf:Property ;
|
|
32
|
+
rdfs:label "Memory Boards" ;
|
|
33
|
+
rdfs:domain dec:System ;
|
|
34
|
+
rdfs:range xsd:float .
|
|
35
|
+
|
|
36
|
+
dec:MaxCpu a rdf:Property ;
|
|
37
|
+
rdfs:label "Maximum CPUs" ;
|
|
38
|
+
rdfs:domain dec:DEC ;
|
|
39
|
+
rdfs:range xsd:float .
|
|
40
|
+
|
|
41
|
+
dec:MinDisk a rdf:Property ;
|
|
42
|
+
rdfs:label "Minimum Disk Drives" ;
|
|
43
|
+
rdfs:domain dec:DEC ;
|
|
44
|
+
rdfs:range xsd:float .
|
|
45
|
+
|
|
46
|
+
dec:MaxDisk a rdf:Property ;
|
|
47
|
+
rdfs:label "Maximum Disk Drives" ;
|
|
48
|
+
rdfs:domain dec:DEC ;
|
|
49
|
+
rdfs:range xsd:float .
|
|
50
|
+
|
|
51
|
+
dec:MinMemory a rdf:Property ;
|
|
52
|
+
rdfs:label "Minimum Memory Boards" ;
|
|
53
|
+
rdfs:domain dec:DEC ;
|
|
54
|
+
rdfs:range xsd:float .
|
|
55
|
+
|
|
56
|
+
dec:MaxMemory a rdf:Property ;
|
|
57
|
+
rdfs:label "Maximum Memory Boards" ;
|
|
58
|
+
rdfs:domain dec:DEC ;
|
|
59
|
+
rdfs:range xsd:float .
|
|
60
|
+
|
|
61
|
+
dec:Demand a rdf:Property ;
|
|
62
|
+
rdfs:label "Demand" ;
|
|
63
|
+
rdfs:domain dec:System ;
|
|
64
|
+
rdfs:range xsd:float .
|
|
65
|
+
|
|
66
|
+
dec:DemandGP a rdf:Property ;
|
|
67
|
+
rdfs:label "Demand for General Purpose Systems" ;
|
|
68
|
+
rdfs:domain dec:DEC ;
|
|
69
|
+
rdfs:range xsd:float .
|
|
70
|
+
|
|
71
|
+
dec:DemandWS a rdf:Property ;
|
|
72
|
+
rdfs:label "Demand for Workstation Systems" ;
|
|
73
|
+
rdfs:domain dec:DEC ;
|
|
74
|
+
rdfs:range xsd:float .
|
|
75
|
+
|
|
76
|
+
dec:Preorder a rdf:Property ;
|
|
77
|
+
rdfs:label "Preorder" ;
|
|
78
|
+
rdfs:domain dec:System ;
|
|
79
|
+
rdfs:range xsd:float .
|
|
80
|
+
|
|
81
|
+
dec:AltMemory a rdf:Property ;
|
|
82
|
+
rdfs:label "Alternative Memory" ;
|
|
83
|
+
rdfs:domain dec:DEC ;
|
|
84
|
+
rdfs:range xsd:float .
|
|
85
|
+
|
|
86
|
+
dec:AltCompatible a rdf:Property ;
|
|
87
|
+
rdfs:label "Alternative Memory Compatibility" ;
|
|
88
|
+
rdfs:domain dec:System ;
|
|
89
|
+
rdfs:range xsd:boolean .
|
|
90
|
+
|
|
91
|
+
dec:OptimizationProblem a rdfs:Class ;
|
|
92
|
+
rdfs:label "Optimization Problem" ;
|
|
93
|
+
rdfs:subClassOf dec:DEC .
|
|
94
|
+
|
|
95
|
+
dec:Objective a rdf:Property ;
|
|
96
|
+
rdfs:label "Objective" ;
|
|
97
|
+
rdfs:domain dec:OptimizationProblem ;
|
|
98
|
+
rdfs:range xsd:string .
|
|
99
|
+
|
|
100
|
+
dec:Constraint a rdf:Property ;
|
|
101
|
+
rdfs:label "Constraint" ;
|
|
102
|
+
rdfs:domain dec:OptimizationProblem ;
|
|
103
|
+
rdfs:range xsd:string .
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
|
2
|
+
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
3
|
+
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
|
4
|
+
@prefix opt: <http://www.example.org/optimization#> .
|
|
5
|
+
|
|
6
|
+
opt:OilProductionProblem a opt:OptimizationProblem ;
|
|
7
|
+
opt:hasParameter opt:I, opt:M, opt:BuyPrice, opt:SellPrice, opt:IsVegetable, opt:MaxVegRefiningPerMonth, opt:MaxNonVegRefiningPerMonth, opt:StorageSize, opt:StorageCost, opt:MaxHardness, opt:MinHardness, opt:Hardness, opt:InitialAmount, opt:MinUsage, opt:Dependencies ;
|
|
8
|
+
opt:hasVariable opt:BuyingPolicy, opt:StoringPolicy, opt:ManufacturingPolicy ;
|
|
9
|
+
opt:hasConstraint opt:RefiningCapacityConstraint, opt:StorageCapacityConstraint, opt:HardnessConstraint, opt:InitialAmountConstraint, opt:MinUsageConstraint, opt:DependencyConstraint ;
|
|
10
|
+
opt:hasObjective opt:MaximizeProfit .
|
|
11
|
+
|
|
12
|
+
opt:I a opt:Parameter ;
|
|
13
|
+
rdfs:label "Number of types of oil" ;
|
|
14
|
+
rdfs:comment "The number of different types of oil available for purchase and refining." ;
|
|
15
|
+
rdfs:range xsd:integer .
|
|
16
|
+
|
|
17
|
+
opt:M a opt:Parameter ;
|
|
18
|
+
rdfs:label "Number of months" ;
|
|
19
|
+
rdfs:comment "The number of months over which the optimization problem is considered." ;
|
|
20
|
+
rdfs:range xsd:integer .
|
|
21
|
+
|
|
22
|
+
opt:BuyPrice a opt:Parameter ;
|
|
23
|
+
rdfs:label "Buying price of oil" ;
|
|
24
|
+
rdfs:comment "The price of each type of oil in each month." ;
|
|
25
|
+
rdfs:range xsd:float .
|
|
26
|
+
|
|
27
|
+
opt:SellPrice a opt:Parameter ;
|
|
28
|
+
rdfs:label "Selling price of final product" ;
|
|
29
|
+
rdfs:comment "The price at which the final product is sold." ;
|
|
30
|
+
rdfs:range xsd:float .
|
|
31
|
+
|
|
32
|
+
opt:IsVegetable a opt:Parameter ;
|
|
33
|
+
rdfs:label "Indicator whether good is a vegetable oil or not" ;
|
|
34
|
+
rdfs:comment "An indicator of whether each type of oil is a vegetable oil." ;
|
|
35
|
+
rdfs:range xsd:boolean .
|
|
36
|
+
|
|
37
|
+
opt:MaxVegRefiningPerMonth a opt:Parameter ;
|
|
38
|
+
rdfs:label "Maximum refining capacity for vegetable oil per month" ;
|
|
39
|
+
rdfs:comment "The maximum amount of vegetable oil that can be refined in a month." ;
|
|
40
|
+
rdfs:range xsd:integer .
|
|
41
|
+
|
|
42
|
+
opt:MaxNonVegRefiningPerMonth a opt:Parameter ;
|
|
43
|
+
rdfs:label "Maximum refining capacity for non-vegetable oil per month" ;
|
|
44
|
+
rdfs:comment "The maximum amount of non-vegetable oil that can be refined in a month." ;
|
|
45
|
+
rdfs:range xsd:integer .
|
|
46
|
+
|
|
47
|
+
opt:StorageSize a opt:Parameter ;
|
|
48
|
+
rdfs:label "Storage capacity for raw oil" ;
|
|
49
|
+
rdfs:comment "The maximum amount of raw oil that can be stored." ;
|
|
50
|
+
rdfs:range xsd:integer .
|
|
51
|
+
|
|
52
|
+
opt:StorageCost a opt:Parameter ;
|
|
53
|
+
rdfs:label "Storage cost per unit per month" ;
|
|
54
|
+
rdfs:comment "The cost of storing a unit of raw oil for a month." ;
|
|
55
|
+
rdfs:range xsd:float .
|
|
56
|
+
|
|
57
|
+
opt:MaxHardness a opt:Parameter ;
|
|
58
|
+
rdfs:label "Maximum hardness of final product" ;
|
|
59
|
+
rdfs:comment "The maximum hardness that the final product can have." ;
|
|
60
|
+
rdfs:range xsd:float .
|
|
61
|
+
|
|
62
|
+
opt:MinHardness a opt:Parameter ;
|
|
63
|
+
rdfs:label "Minimum hardness of final product" ;
|
|
64
|
+
rdfs:comment "The minimum hardness that the final product can have." ;
|
|
65
|
+
rdfs:range xsd:float .
|
|
66
|
+
|
|
67
|
+
opt:Hardness a opt:Parameter ;
|
|
68
|
+
rdfs:label "Hardness of good" ;
|
|
69
|
+
rdfs:comment "The hardness of each type of oil." ;
|
|
70
|
+
rdfs:range xsd:float .
|
|
71
|
+
|
|
72
|
+
opt:InitialAmount a opt:Parameter ;
|
|
73
|
+
rdfs:label "Initial amount of oil of each type that's available for processing" ;
|
|
74
|
+
rdfs:comment "The amount of each type of oil that is initially available for processing." ;
|
|
75
|
+
rdfs:range xsd:integer .
|
|
76
|
+
|
|
77
|
+
opt:MinUsage a opt:Parameter ;
|
|
78
|
+
rdfs:label "Minimum usage of oil" ;
|
|
79
|
+
rdfs:comment "The minimum amount of an oil that must be used if it is used in a month." ;
|
|
80
|
+
rdfs:range xsd:integer .
|
|
81
|
+
|
|
82
|
+
opt:Dependencies a opt:Parameter ;
|
|
83
|
+
rdfs:label "Dependencies of goods" ;
|
|
84
|
+
rdfs:comment "A binary table indicating dependencies between different types of oil." ;
|
|
85
|
+
rdfs:range xsd:boolean .
|
|
86
|
+
|
|
87
|
+
opt:BuyingPolicy a opt:Variable ;
|
|
88
|
+
rdfs:label "Buying policy" ;
|
|
89
|
+
rdfs:comment "The policy for buying raw oil." ;
|
|
90
|
+
rdfs:range xsd:float .
|
|
91
|
+
|
|
92
|
+
opt:StoringPolicy a opt:Variable ;
|
|
93
|
+
rdfs:label "Storing policy" ;
|
|
94
|
+
rdfs:comment "The policy for storing raw oil." ;
|
|
95
|
+
rdfs:range xsd:float .
|
|
96
|
+
|
|
97
|
+
opt:ManufacturingPolicy a opt:Variable ;
|
|
98
|
+
rdfs:label "Manufacturing policy" ;
|
|
99
|
+
rdfs:comment "The policy for manufacturing the final product." ;
|
|
100
|
+
rdfs:range xsd:float .
|
|
101
|
+
|
|
102
|
+
opt:RefiningCapacityConstraint a opt:Constraint ;
|
|
103
|
+
rdfs:label "Refining capacity constraint" ;
|
|
104
|
+
rdfs:comment "A constraint on the refining capacity for vegetable and non-vegetable oil." .
|
|
105
|
+
|
|
106
|
+
opt:StorageCapacityConstraint a opt:Constraint ;
|
|
107
|
+
rdfs:label "Storage capacity constraint" ;
|
|
108
|
+
rdfs:comment "A constraint on the storage capacity for raw oil." .
|
|
109
|
+
|
|
110
|
+
opt:HardnessConstraint a opt:Constraint ;
|
|
111
|
+
rdfs:label "Hardness constraint" ;
|
|
112
|
+
rdfs:comment "A constraint on the hardness of the final product." .
|
|
113
|
+
|
|
114
|
+
opt:InitialAmountConstraint a opt:Constraint ;
|
|
115
|
+
rdfs:label "Initial amount constraint" ;
|
|
116
|
+
rdfs:comment "A constraint on the initial amount of each type of oil." .
|
|
117
|
+
|
|
118
|
+
opt:MinUsageConstraint a opt:Constraint ;
|
|
119
|
+
rdfs:label "Minimum usage constraint" ;
|
|
120
|
+
rdfs:comment "A constraint on the minimum usage of each type of oil." .
|
|
121
|
+
|
|
122
|
+
opt:DependencyConstraint a opt:Constraint ;
|
|
123
|
+
rdfs:label "Dependency constraint" ;
|
|
124
|
+
rdfs:comment "A constraint on the dependencies between different types of oil." .
|
|
125
|
+
|
|
126
|
+
opt:MaximizeProfit a opt:Objective ;
|
|
127
|
+
rdfs:label "Maximize profit" ;
|
|
128
|
+
rdfs:comment "The objective is to maximize the profit from selling the final product." ;
|
|
129
|
+
opt:isTypeOf opt:Maximization .
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
|
2
|
+
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
3
|
+
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
|
4
|
+
@prefix opt: <http://www.example.org/optimization#> .
|
|
5
|
+
|
|
6
|
+
opt:M a rdf:Property ;
|
|
7
|
+
rdfs:label "Number of types of machines" ;
|
|
8
|
+
rdfs:range xsd:integer .
|
|
9
|
+
|
|
10
|
+
opt:K a rdf:Property ;
|
|
11
|
+
rdfs:label "Number of types of products" ;
|
|
12
|
+
rdfs:range xsd:integer .
|
|
13
|
+
|
|
14
|
+
opt:I a rdf:Property ;
|
|
15
|
+
rdfs:label "Number of time periods" ;
|
|
16
|
+
rdfs:range xsd:integer .
|
|
17
|
+
|
|
18
|
+
opt:NumMachines a rdf:Property ;
|
|
19
|
+
rdfs:label "Number of machines" ;
|
|
20
|
+
rdfs:range xsd:integer .
|
|
21
|
+
|
|
22
|
+
opt:Profit a rdf:Property ;
|
|
23
|
+
rdfs:label "Profit for product k" ;
|
|
24
|
+
rdfs:range xsd:float .
|
|
25
|
+
|
|
26
|
+
opt:Time a rdf:Property ;
|
|
27
|
+
rdfs:label "Time taken by product k on machine m" ;
|
|
28
|
+
rdfs:range xsd:float .
|
|
29
|
+
|
|
30
|
+
opt:Maintain a rdf:Property ;
|
|
31
|
+
rdfs:label "Maintenance time for machine m in time period i" ;
|
|
32
|
+
rdfs:range xsd:integer .
|
|
33
|
+
|
|
34
|
+
opt:Limit a rdf:Property ;
|
|
35
|
+
rdfs:label "Limit of storing product k for time period i" ;
|
|
36
|
+
rdfs:range xsd:integer .
|
|
37
|
+
|
|
38
|
+
opt:StorePrice a rdf:Property ;
|
|
39
|
+
rdfs:label "Price for storing products" ;
|
|
40
|
+
rdfs:range xsd:float .
|
|
41
|
+
|
|
42
|
+
opt:KeepQuantity a rdf:Property ;
|
|
43
|
+
rdfs:label "Quantity of product k to keep" ;
|
|
44
|
+
rdfs:range xsd:integer .
|
|
45
|
+
|
|
46
|
+
opt:WorkHours a rdf:Property ;
|
|
47
|
+
rdfs:label "Number of working hours" ;
|
|
48
|
+
rdfs:range xsd:float .
|
|
49
|
+
|
|
50
|
+
opt:OptimizationProblem a rdfs:Class ;
|
|
51
|
+
rdfs:label "Optimization Problem" ;
|
|
52
|
+
rdfs:subClassOf rdfs:Resource .
|
|
53
|
+
|
|
54
|
+
opt:OptimizationProblemInstance a opt:OptimizationProblem ;
|
|
55
|
+
opt:M 5 ;
|
|
56
|
+
opt:K 7 ;
|
|
57
|
+
opt:I 6 ;
|
|
58
|
+
opt:NumMachines 4 ;
|
|
59
|
+
opt:Profit 10 ;
|
|
60
|
+
opt:Time 0.5 ;
|
|
61
|
+
opt:Maintain 1 ;
|
|
62
|
+
opt:Limit 500 ;
|
|
63
|
+
opt:StorePrice 0.5 ;
|
|
64
|
+
opt:KeepQuantity 100 ;
|
|
65
|
+
opt:WorkHours 8.0 .
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
|
2
|
+
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
3
|
+
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
|
4
|
+
@prefix opt: <http://www.example.org/optimization#> .
|
|
5
|
+
|
|
6
|
+
opt:M a rdf:Property ;
|
|
7
|
+
rdfs:label "Number of types of machines" ;
|
|
8
|
+
rdfs:range xsd:integer .
|
|
9
|
+
|
|
10
|
+
opt:K a rdf:Property ;
|
|
11
|
+
rdfs:label "Number of types of products" ;
|
|
12
|
+
rdfs:range xsd:integer .
|
|
13
|
+
|
|
14
|
+
opt:I a rdf:Property ;
|
|
15
|
+
rdfs:label "Number of time periods" ;
|
|
16
|
+
rdfs:range xsd:integer .
|
|
17
|
+
|
|
18
|
+
opt:NumMachines a rdf:Property ;
|
|
19
|
+
rdfs:label "Number of machines" ;
|
|
20
|
+
rdfs:range xsd:integer .
|
|
21
|
+
|
|
22
|
+
opt:Profit a rdf:Property ;
|
|
23
|
+
rdfs:label "Profit for each product" ;
|
|
24
|
+
rdfs:range xsd:float .
|
|
25
|
+
|
|
26
|
+
opt:Time a rdf:Property ;
|
|
27
|
+
rdfs:label "Time required to produce each product on each machine" ;
|
|
28
|
+
rdfs:range xsd:float .
|
|
29
|
+
|
|
30
|
+
opt:Downtime a rdf:Property ;
|
|
31
|
+
rdfs:label "Downtime for each machine" ;
|
|
32
|
+
rdfs:range xsd:integer .
|
|
33
|
+
|
|
34
|
+
opt:Limit a rdf:Property ;
|
|
35
|
+
rdfs:label "Limit for each product on constraints" ;
|
|
36
|
+
rdfs:range xsd:integer .
|
|
37
|
+
|
|
38
|
+
opt:StorePrice a rdf:Property ;
|
|
39
|
+
rdfs:label "Price for storing products" ;
|
|
40
|
+
rdfs:range xsd:float .
|
|
41
|
+
|
|
42
|
+
opt:KeepQuantity a rdf:Property ;
|
|
43
|
+
rdfs:label "Quantity of products to keep in store" ;
|
|
44
|
+
rdfs:range xsd:integer .
|
|
45
|
+
|
|
46
|
+
opt:WorkHours a rdf:Property ;
|
|
47
|
+
rdfs:label "Number of work hours available" ;
|
|
48
|
+
rdfs:range xsd:float .
|
|
49
|
+
|
|
50
|
+
opt:OptimizationProblem a rdfs:Class ;
|
|
51
|
+
rdfs:label "Optimization Problem" ;
|
|
52
|
+
rdfs:subClassOf rdfs:Resource .
|
|
53
|
+
|
|
54
|
+
opt:ManufacturingPolicy a rdfs:Class ;
|
|
55
|
+
rdfs:label "Manufacturing Policy" ;
|
|
56
|
+
rdfs:subClassOf opt:OptimizationProblem .
|
|
57
|
+
|
|
58
|
+
opt:ManufacturingPolicy rdfs:subClassOf opt:OptimizationProblem ;
|
|
59
|
+
rdfs:label "Manufacturing Policy" ;
|
|
60
|
+
rdfs:comment "The optimal selling, storing, and manufacturing policy for a company to maximize its profit." .
|
|
61
|
+
|
|
62
|
+
opt:ManufacturingPolicy opt:M "5" ;
|
|
63
|
+
opt:K "7" ;
|
|
64
|
+
opt:I "N/A" ;
|
|
65
|
+
opt:NumMachines "[4, 2, 3, 1, 1]" ;
|
|
66
|
+
opt:Profit "[10, 6, 8, 4, 11, 9, 3]" ;
|
|
67
|
+
opt:Time "array2d(1..6, 1..5, [0.5, 0.1, 0.2, 0.05, 0.0, 0.7, 0.2, 0.0, 0.03, 0.0, 0.0, 0.0, 0.8, 0.0, 0.01, 0.0, 0.3, 0.0, 0.07, 0.0, 0.3, 0.0, 0.0, 0.1, 0.05, 0.5, 0.0, 0.6, 0.08, 0.05])" ;
|
|
68
|
+
opt:Downtime "array2d(1..1, 1..5, [0, 1, 1, 1, 1])" ;
|
|
69
|
+
opt:Limit "array2d(1..7, 1..6, [500, 600, 300, 200, 0, 500, 1000, 500, 600, 300, 100, 500, 300, 200, 0, 400, 500, 100, 300, 0, 0, 500, 100, 300, 800, 400, 500, 200, 1000, 1100, 200, 300, 400, 0, 300, 500, 100, 150, 100, 100, 0, 60])" ;
|
|
70
|
+
opt:StorePrice "0.5" ;
|
|
71
|
+
opt:KeepQuantity "100" ;
|
|
72
|
+
opt:WorkHours "8.0" .
|