Free cookie consent management tool by TermsFeed Policy Generator

source: misc/tools/ExternalEvaluation/CSharp/ExternalEvaluation.Service/ExternalEvaluationMessages.proto @ 18063

Last change on this file since 18063 was 15014, checked in by pfleck, 8 years ago

Added code and tools for the ExternalEvaluationProblem. (e.g. Java-side evaluation)

File size: 2.4 KB
Line 
1package HeuristicLab.Problems.ExternalEvaluation;
2option java_package = "com.heuristiclab.problems.externalevaluation";
3
4message SolutionMessage {
5  required int32 solutionId = 1;
6 
7  message IntegerVariable {
8    required string name = 1;
9    optional int32 data = 2;
10  }
11  repeated IntegerVariable integerVars = 2;
12 
13  message IntegerArrayVariable {
14    required string name = 1;
15    repeated int32 data = 2;
16    optional int32 length = 3;
17  }
18  repeated IntegerArrayVariable integerArrayVars = 3;
19 
20  message DoubleVariable {
21    required string name = 1;
22    optional double data = 2;
23  }
24  repeated DoubleVariable doubleVars = 4;
25 
26  message DoubleArrayVariable {
27    required string name = 1;
28    repeated double data = 2;
29    optional int32 length = 3;
30  }
31  repeated DoubleArrayVariable doubleArrayVars = 5;
32 
33  message BoolVariable {
34    required string name = 1;
35    optional bool data = 2;
36  }
37  repeated BoolVariable boolVars = 6;
38 
39  message BoolArrayVariable {
40    required string name = 1;
41    repeated bool data = 2;
42    optional int32 length = 3;
43  }
44  repeated BoolArrayVariable boolArrayVars = 7;
45 
46  message StringVariable {
47    required string name = 1;
48    optional string data = 2;
49  }
50  repeated StringVariable stringVars = 8;
51 
52  message StringArrayVariable {
53    required string name = 1;
54    repeated string data = 2;
55    optional int32 length = 3;
56  }
57  repeated StringArrayVariable stringArrayVars = 9;
58 
59  message RawVariable {
60    required string name = 1;
61    optional bytes data = 2;
62  }
63  repeated RawVariable rawVars = 10;
64}
65
66// Nested Extensions http://www.indelible.org/ink/protobuf-polymorphism/
67message QualityMessage {
68  required int32 solutionId = 1;
69  enum Type {
70    SingleObjectiveQualityMessage = 1;
71    MultiObjectiveQualityMessage = 2;
72  }
73  required Type type = 2;
74  extensions 1000 to max;
75}
76
77message SingleObjectiveQualityMessage {
78  extend QualityMessage {
79    required SingleObjectiveQualityMessage qualityMessage = 1000;  // unique QualityMessage extension number
80  }
81  required double quality = 1;
82}
83message MultiObjectiveQualityMessage {
84  extend QualityMessage {
85    required MultiObjectiveQualityMessage qualityMessage = 1001;  // unique QualityMessage extension number
86  }
87  repeated double qualities = 1;
88}
89
90 
91service EvaluationService {
92  rpc EvaluateSingleObjective (SolutionMessage) returns (SingleObjectiveQualityMessage);
93  rpc EvaluateMultiObjectives (SolutionMessage) returns (MultiObjectiveQualityMessage);
94}
Note: See TracBrowser for help on using the repository browser.