OPERATIONS RESEARCH AS A SERVICE
Mehdi Sheikhalishahi, Demetrio Lagan
`
a and Lucio Grandinetti
Department of Electronics, Computer and System Sciences, University of Calabria, Rende (CS), Italy
Keywords:
Operations Research, Cloud Computing, Online Services.
Abstract:
In this paper, we propose cloud solutions to provide Operations Research services to scientists. Currently,
users must install Operations Research software tools or develop algorithms in order to tackle their problems.
1 INTRODUCTION
Cloud computing is outsourcing of IT resources such
as software, hardware, etc. in which dynamically
scalable and often virtualized resources are provided
as a service over the Internet. The main concept in the
cloud is an infrastructure that provides on-demand,
instant and elastic resources or services over the Inter-
net, usually at the scale and reliability of a data center.
The future of software is in the cloud. It is our vi-
sion that by combining Operations Research(OR) and
cloud computing technologies, OR cloud will make a
wider audience able to easily access and benefit from
the increasing number of OR services. Researchers
are familiar with OR tools, but with OR cloud we can
offer a much simpler and faster method for doing Op-
erations Research.
Our OR cloud mission is similar to Globus On-
line that is a hosted service to automate the tasks
associated with moving files between sites. It does
not require custom infrastructure, Globus Online is
software-as-a-service that can be used today without
building these features yourself. However, Operations
Research is a much more complex science than file
transfer, thus to develop a general-purpose and com-
plete solution, PaaS and IaaS cloud models should be
exploited.
Obtaining, configuring, and maintaining solvers
for numerous optimization classes is an expensive
and time consuming proposition. Additionally, op-
timization problems often require significant comput-
ing time. Running multiple problem instances, each
requiring substantial CPU resources, on a client ma-
chine such as a laptop, is not practical. The ability
to solve optimization problems in a distributed en-
vironment is an ideal solution. Lack of standards in
OR world, makes the development of OR as a ser-
vice difficult. In OR world, there are numerous mod-
eling languages with their own format, diverse prob-
lem instances with their own representation, various
solvers with different APIs, results, etc. With OR in
the cloud, scientists would benefit from the following
advantages: No IT Required: requires no software in-
stalls or complex IT infrastructures, Give users a tool
that simplifies dealing with OR, Automates the time-
consuming and error-prone activity of doing OR such
as manual tasks, so users can stay focused on what is
most important: their research, Provide users with di-
rect access to a wide variety of OR tools and services
without the need to install, configure, or upgrade soft-
ware on her computer., Enable better collaboration
among users, Get the service up and running in min-
utes, Handling and managing of users’ dataset such
as Graph, Matrix, Network, etc., Validating and con-
verting users’ dataset into other data structures With
OR cloud, users simply specify their OR problem and
some other information e.g. which math program-
ming model they would like to use, which methods.
They will do this through a few questions. Then the
OR cloud will provision the best OR environment for
that OR problem. Next parts of this paper are orga-
nized as follows. Section 2 presents some background
information on the topic. Then, Section 3 goes over
related work. Section 4 discusses operations research
cloud solution.
2 BACKGROUND
Currently, if a researcher wants to solve an specific
problem of her research area, she would need to pass
480
Sheikhalishahi M., Laganà D. and Grandinetti L..
OPERATIONS RESEARCH AS A SERVICE.
DOI: 10.5220/0003961704800483
In Proceedings of the 2nd International Conference on Cloud Computing and Services Science (CLOSER-2012), pages 480-483
ISBN: 978-989-8565-05-1
Copyright
c
2012 SCITEPRESS (Science and Technology Publications, Lda.)
through the following steps: (1) developing or find-
ing the right and the most efficient model, algorithm,
tool and software; (2) installation; (3) configuration;
(4) deployment; (5) test (6) usage. In this paper, we
consider operations research and we provide cloud so-
lutions to address the aforementioned challenges in
solving OR problems for OR community.
The first and the main obstacle in usage of soft-
ware, tools, and source code repositories is their in-
stallation and then their configuration management.
Users need to install and deploy them in order to use
them. This is a big challenge for user community of
any scientific field. The second difficulty of scientists
is the usage of a software and a service. In addition,
some questions such as whether a software is a good
one for a problem, whether a software is optimized for
a problem, etc. are very important for scientists in or-
der to solve their problems with the most efficient and
optimal methods. In addition, installation, configura-
tion, and deployment of these OR tools, software and
services is a time-consuming task. By transforming
all these bundles in the cloud we can instantiate them
faster and users will get rid of all the difficult tasks.
As a result, time to solutions will be faster than be-
fore.
There are many tools, software and services in the
market and open source software in free software to
offer appropriate solutions for various OR commu-
nity. We have diverse set of OR problems, diverse
set of models, methods, etc., etc. One solution, one
piece of software, one interface, one tools, one math
programming model does not suit the needs of all op-
erations research users. Thus, if for an OR department
we only use one OR software tool such as CPLEX,
we cannot say that all OR users will be able to use
it to solve their problems, also in the future perhaps
will be more problems which cannot be solved by
CPLEX. Therefore, we need to provide to an OR user
a suitable and customized OR environment in order to
model their problems with the most appropriate and
optimized math programming model (e.g. algebraic
lang.), and then select the best and the most efficient
method to solve their problems. This OR environment
depends on the focus of research activity. In sum, the
OR cloud should be general-purpose and rich enough
in order to address the needs of all OR user commu-
nity or a large part of them.
In order to provide customized OR environment
to a user according to its need, problem, and so on,
we need to develop an OR-aware interface as an ab-
straction layer over OR tools, software, mathemati-
cal programming models, methods, algorithms, etc.
An OR-aware interface at the highest level of cloud
will determine the user needs based on a few ques-
tions and then will prepare the most efficient OR en-
vironment for that user. In cases that there are more
than an option, this interface will suggest to user the
best possible options. This abstraction layer will be
implemented as part of SaaS solution of OR.
In order to implement an OR cloud system with
the aforementioned features, IaaS and SaaS cloud
paradigms should be exploited as well.
3 RELATED WORK
Globus Online (Online, ) is among the first cloud so-
lutions for scientists, it makes robust file transfer ca-
pabilities accessible to any researcher with an Inter-
net connection and a laptop. Globus manages the en-
tire file transfer operation: monitoring performance,
retrying failed transfers, recovering from faults au-
tomatically whenever possible, and reporting status.
Users cite Globus Online as their preferred service
since it is Easy, Fast, Secure, Reliable and Research-
focused.
NEOS (Czyzyk et al., 1998) is an Online opti-
mization service which has been widely used by the
OR community for over a decade. A central server
maintains and queues job submissions for solvers that
run on a variety of workstations scattered around the
Internet. The main drawback of NEOS is its central
server paradigm.
At first, submissions were MPS-format files for
linear problems and C or Fortran programs for non-
linear ones, but now the great majority of submis-
sions are in high-level modeling languages, pre-
dominantly AMPL (AMP, ) and GAMS (GAM,
). Submissions through the NEOS web portal
(neos.mcs.anl.gov/neos/solvers) remain popular, and
they can also be made by sending XML text files
through email. The latest NEOS release features a
NEOS API that permits all server functions to be ac-
cessed through remote function calls using the XML-
RPC protocols (www.xmlrpc.com). This has brought
NEOS more in line with the precepts of SOA and
has made it much easier to integrate into optimiza-
tion modeling environments. Nevertheless, its de-
sign still adheres in many respect to the central server
paradigm. Also NEOS employs whatever file for-
mats are supported by the various solvers; the over
40 solvers in the NEOS lineup require instance inputs
of about a dozen different kinds. Similarly there is no
NEOS standard format for communicating options to
solvers or communicating results from solvers.
In (Fourer et al., 2010), authors present a dis-
tributed optimization environment (Optimization Ser-
vices or OS) in which solvers, modeling languages,
OPERATIONSRESEARCHASASERVICE
481
Table 1: Traditional OR solution vs. its corresponding OR cloud solution.
Traditional OR solution Provisioning actions and time Cloud OR solution Provisioning actions and time
Developer tools I.C.D.T.B long IaaS, SaaS B short
Documentation B short SaaS:OR-aware cloud interface B short
Graphs I.C.D.T.B long IaaS, PaaS B short
Interfaces I.C.D.T.B long IaaS, PaaS, SaaS B short
Modeling systems I.C.D.T.B long IaaS, PaaS B short
Metaheuristics I.C.D.T.B long IaaS, PaaS B short
Optimization utility I.C.D.T.B long IaaS, PaaS B short
registries, analyzers, and simulation engines are im-
plemented as services. It defines standards for decen-
tralized optimization on the Internet: representation
of optimization instances, results, and solver options;
communication between clients and solvers; and dis-
covery and registration of optimization-related soft-
ware using Web Services. The OS project addresses
NEOS weaknesses.
In all, while OS provides online distributed op-
timization services as a SaaS cloud, but it is not a
complete cloud solution. Users will not be able to
build their own OR applications if they cannot be of-
fered by SaaS solution. In order to approach a more
complete solution, IaaS and PaaS cloud paradigms are
suggested to be used in this paper.
4 OPERATIONS RESEARCH
CLOUD SOLUTIONS
In the previous section we enumerated various OR
projects, tools, software packages, libraries, etc. in
OR world. We would like to reuse and to exploit al-
ready available solutions in OR world with the help
of IaaS, PaaS and SaaS cloud paradigms to build OR
cloud solutions. SaaS paradigm suits to reuse soft-
ware without significant changes such as tuning con-
figuration parameters, while when we want to build
new OR applications based on available OR solutions
and our development, IaaS and PaaS paradigms are
the right choice, for example to link a model to an in-
terface and exploit our specific OR algorithm for an
specific OR problem.
Table 1 provides some information on the cor-
responding cloud solution for each category of the
aforementioned OR projects in the previous section,
and compare the provisioning time and actions of tra-
ditional OR projects vs. OR cloud solutions.
In addition to free software resources, there are
many enterprise OR tools such as CPLEX that can be
hosted in the cloud. With these rich set of OR re-
sources that are hosted in the cloud, OR cloud will be
able to intelligently offer OR services for OR commu-
nity. In the provisioning column we use the first letter
of provisioning actions to represent them i.e. I. for
installation, C. for configuration, D. for deployment,
T. for test, and B. for boot. This table 1 demonstrates
applicability of cloud paradigms to OR world. Unlike
traditional OR solution with this, OR world would be
available online without significant attempt to provi-
sion OR environment.
Figure 1 presents a high level architecture of OR
cloud. OR-aware interface is an abstraction layer over
OR tools, software, mathematical programming mod-
els, methods, algorithms, etc. An OR-aware interface
at the highest level of cloud will determine the user
needs based on a few questions and then will provide
the most efficient OR environment for that user, like
in (Fourer et al., 2010) that Optimization problems
are solved automatically with minimal input from the
user. Users only need a definition of the optimization
problem; all additional information required by the
optimization solver is determined automatically. In
cases that there are more than an option, this interface
will suggest to user the best possible options. This
abstraction layer will be implemented as part of SaaS
solution of OR. In (Fourer et al., 2010), if users are not
sure of the type of optimization problem, they should
consult the Optimization Tree of the NEOS Guide for
information on optimization problems. However, we
move this action to the cloud i.e. OR-aware interface
layer. The choice of solver is then dictated by the lan-
guage used to define the optimization problem.
At IaaS we have a number of Virtual Appliances
abstracted as Virtual Machines (VM). IaaS VMs are
developed by reusing available OR tools. They are
prepared by OR experts of various fields of OR.
These VMs contain customized OR environments for
different OR problems. We reuse OR tools, soft-
wares, services, open source software, etc. in order
to build these VMs. With development environment
(Platform-as-a-Service) on the cloud, users will be
able to develop their own OR applications by exploit-
ing already available OR tools, algorithms, methods
in the cloud. Like any cloud effort, standardization
at the interface and data levels are very important, for
example open standards for data interchange.
CLOSER2012-2ndInternationalConferenceonCloudComputingandServicesScience
482
Figure 1: Operations Research cloud architecture.
REFERENCES
Ampl. http://www.ampl.com.
Gams. http://www.gams.com.
Czyzyk, J., Mesnier, M. P., and Mor
´
e, J. J. (1998). The neos
server. IEEE Comput. Sci. Eng., 5:68–75.
Fourer, R., Ma, J., and Martin, R. K. (2010). Optimization
services: A framework for distributed optimization.
Operations Research, 58(6):1624–1636.
Online, G. Globus online project. http://
www.globusonline.org/.
OPERATIONSRESEARCHASASERVICE
483