Free cookie consent management tool by TermsFeed Policy Generator

Changes between Version 19 and Version 20 of Documentation/Howto/OptimizeExternalApplications


Ignore:
Timestamp:
06/10/10 12:51:09 (14 years ago)
Author:
mkofler
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Documentation/Howto/OptimizeExternalApplications

    v19 v20  
    150150Also shown in the class diagram are a number of converters that are used to convert HeuristicLab data types, such as the variables that contain the solution representation, to a `SolutionMessage`. The `SolutionMessageBuilder` is the class that contains a number of converters and allows the `ExternalEvaluator` to construct the message. Which converter shall be used can be configured in the GUI when creating the `ExternalEvaluationProblem` and the converters are naturally extensible. A user can define an own converter implementing `IItemToSolutionMessageConverter` and add it to the `SolutionMessageBuilder` in the GUI. By default the `SolutionMessageBuilder` is configured with all the converters that can be seen which in turn cover all the data types in the !HeuristicLab.Data namespace. The solution representations in !HeuristicLab.Encodings are derived from those, so the converters also cover them too. But any solution representation not derived directly from one of the objects in !HeuristicLab.Data naturally requires an own converter (e.g. !HeuristicLab.Encodings.!SymbolicExpressionTree is such a type). Next in the class diagram is the `EvaluationServiceClient` which holds a Channel and allows the `ExternalEvaluator` to communicate with the remote process. Finally, there is a class that describes the `ExternalEvaluationPRoblem` itself, as well as the `QualityMessage` (the expected answer from the service) and the `SolutionMessage`. These two are automatically created by parsing the !ExternalEvaluationMessages.proto file with the compiler tools of Google's protocol buffer framework.
    151151
     152[=#Tutorial]
    152153== Tutorial ==
    153154