Optimization Services

 

 

 

 

 

 

 

 

 

OSP as an interdisciplinary protocol between CS and OR

The Optimization Services Protocol is entirely based on SOAP . Short for Simple Object Access Protocol, SOAP is a lightweight XML-based messaging protocol used to encode the information in Web service request and response messages. SOAP messages are independent of any operating system or protocol and may be transported using a variety of Internet protocols, including SMTP, MIME, and HTTP, although nearly always it is using HTTP. Generally, the protocols under the network layer belong to the area of Electrical Engineering, and the protocols above the network layer belong to the area of Computer Science. In this regard, SOAP is naturally a Computer Science protocol.

Although SOAP defines a set of rules for structuring messages, it does not specify the actual content of the messages. In that sense SOAP is a generic and domain-independent protocol. OSP takes on the task of specification of the content in the domain area of Operations Research. The nature of bridging protocols in two separate areas, Computer Science and Operations Research, classifies OSP as an interdisciplinary protocol. In an actual data packet, all the contents specified in OSP are inside a SOAP envelope. As both OSP and SOAP are XML based protocols, this is equivalent to saying that OSP contents are child elements of a SOAP parent element (Figure 1‑7). For example, the Optimization Services hookup Language (OShL) sub-protocol of OSP specifies that OS compatible solvers should provide an invocation in the form:
String solve(String instance);

in which the input string “instance” has to follow the representation format specified by the Optimization Services instance Language (OSiL) and the output string has to follow the representation format specified by the Optimization Services result Language (OSrL).

osProtocol2