<HTML> <div id=“content”><!– Start Inhalt –>
<div class=rightwindow>
<H1>Installing CAPRI, software requirements and concept</H1>
<H2>Software concept</H2>
<div style=“float:right;padding:20px;”><a href=“/images/softwareConcept.jpg”><img style=“text-decoration: none;border: none” src=“/images/softwareConcept.jpg”/></a></P></div>
<P>CAPRI is based wherever possible on free-ware software to reduce
costs of using the modelling system. An important exception is the <A
HREF=“http://www.gams.com” target=“_parent”>GAMS</A> modelling language.
The methodology of CAPRI requires performing and stable software able to
solve large-scale non-linear optimization problems, and GAMS offers
interfaces to these so-called solvers. Additionally, GAMS is a language
designed specifically to support eonomic modelling. Numeric values in
the CAPRI production chain are produced entirely by a sequence of GAMS
programs. That reduces learning costs, and allows applying uniform
solutions to coding, data and meta data handling and code documentation.
GAMS.com typically offers interested parties a time limited test
license, so that researchers who take part in a CAPRI training session
can run CAPRI during the session even without possessing their own
license.</P>
<P>However, any results generated by
the different work steps of CAPRI can be loaded and shown as tables,
graphs and maps without the need to license third party software such as
GAMS. Being written in Java, the CAPRI GUI requires a <A
HREF=“http://www.java.com/en/download/manual.jsp” target=“_parent”>Java
Run Time Engine (JRE)</A>, Version 6 or higher.</P>
<P>The different tasks in the work flow of CAPRI such as a simulation
run are defined as objects with specific properties such as “base year”,
“simulation year” or “Member States included”. These properties are set
before starting such a task, either interactively by the <A
HREF=“/dokuwiki/doku.php?id=capri:gui:gui”>Graphical User Interface</A> or by the <A
HREF=“../docs/batch.pdf”>batch execution facility</A>. The tasks are
executed as GAMS programs. Each task generates a set of results, which
can be accessed by other tasks or exploited by the user. The properties
of the result set (file name and location, logical structure, symbol
comprised ..) can be queried from the task. Each set of results
comprises <A HREF=“../docs/meta.pdf”>meta data</A> (when, how, by whom).
The meta data allow e.g. to check if the outdated results are present in
a CAPRI installation.</P>
<H2>CAPRI is hosted in a software versioning system</H2>
<P>Whereas early versions of CAPRI were distributed via FTP or CD,
CAPRI is now based on a <B>software version system</B>. The
versioning system is especially important for the CAPRI coders
who contribute as a distributed network to the maintenance and
further development of CAPRI. But it offers also major benefits
for those who are solely interesting in running simulations
or even only exploiting results.</P>
<P>The versioning system is based on a central server repository and
local working copies. The server keeps track of all changes in the code
(the versioning). Each time a coder adds new or changed pieces of code
to the server repository - a process called “commit” - the versioning
number is increased. The old version of the changed pieces is kept, so
that all these incremental changes can be tracked, and roll-backs are
possible. The system also allows to develop in parallel different
branches, or to “freeze” certain versions. The concept of the
versioning system is well described in the <A
HREF=“../docs/TortoiseSVN-1.5.5-en.pdf”>user manual</A> of tortoiseSVN,
the recommended tool for CAPRI users.</P>
<P><I>Note:</I></P>
<P>The GUI of CAPRI also access the versioning system and allows:<P>
<UL>
<LI>Updating an existing CAPRI installation to the newest versions from the server</LI>
<LI>Checking time stamp inconsistencies, using the meta information comprised in the data sets</LI>
<LI>And includes vesioning information about GAMS sources used in the HTML documentation of the GAMS code</LI>
</UL>
<H2>Requirements</H2>
<P>Before you start the installing CAPRI and using its Graphical User Interface,
you should hence ensure that the <B>following software is installed on you computer</B></P>
<UL>
<LI>The <A HREF="http://tortoisesvn.tigris.org/" target="_parent">Tortoise SVN</A> client to communicate with the SVN server (freeware).</LI>
<LI>The <A HREF="http://www.java.com/en/download/manual.jsp" target="_parent">Java Run Time</A>, Version 6 or higher (freeware).</LI>
<LI>For those wanting to run CAPRI, <A HREF="http://www.gams.com" target="_parent">GAMS</A>, version 22.6 or higher (commercial software, license required). The data base, baseline
and results of existing scenarios can be analyzed without a GAMS licence).
</LI>
</UL>
<P>CAPRI allows for some tailored downloads. If you install the full product with a checkout from the SVN server, you will require in the range of 5 GigaByte
of free disk space to do so, and a fast internet access; installation on a file server is possible. Many user will at the beginning be mostly interested to explore existing scenarios to learn about the possibilities of the system, the CAPRI network therefore offfers the possibility to download the material from the last training session. It is recommended to have at least 1 GByte of RAM to run CAPRI. Very old computers or rather small netbooks (e.g. with ATOM processors) have proven to be of limited use for working with a large-scale modelling system such as CAPRI.</P>
<H2>Installation procedure</H2>
<P>Before you start the installing CAPRI and using its Graphical User Interface,
you should hence ensure that the <B>following software is installed on you computer</B></P>
<UL>
<LI>The <A HREF="http://www.java.com/en/download/manual.jsp" target="_parent">Java Run Time</A>, Version 6 or higher.</LI>
<LI>For those wanting to run CAPRI, <A HREF="http://www.gams.com" target="_parent">GAMS</A>, version 22.6 or higher, along with a valid license file.</LI>
<LI>For those wanting to contribute code, the <A HREF="http://tortoisesvn.tigris.org/" target="_parent">Tortoise SVN</A> client to communicate with the SVN server.</LI>
</UL>
<P>The first step in the installation of CAPRI after the necessary third
party products are installed on the computer (see below) is a so-called
“checkout” (see e.g. the <A HREF=“../docs/TortoiseSVN-1.5.5-en.pdf”>user
manual</A> of Tortoise SVN). It generates the local copy of CAPRI on the
computer of the user: all GAMS programs, input and result data and also
the necessary files to start the GUI are copied from the versioning
server to a local directory. In order to do so, you need a high-speed
internet connection, about 6 Gbyte of free disk space, and the access
details for the SVN-Server. Later, you can then keep your installation
automatically synchronized to the server with “updates”. Those
contributing to the code development of CAPRI also “commit” their
changes to the server. The software versioning system in use is <A
HREF=“http://subversion.tigris.org/”>SVN</A>, and the local client
recommended is <A HREF=“http://tortoisesvn.tigris.org/”
target=“_parent”>Tortoise SVN</A>. The client is seamlessly integrated
in the windows explorer so that all basic operations can be executed
with mouse clicks. The status for the directory and the files of the
local copy is shown by icons, so that one sees already in the windows
explorer any changes in the local copy since the last update.</P>
<H2>Acknowledgments</H2>
<P>The CAPRI GUI is programmed based on the following software components:</P>
<UL>
<LI>The <A HREF="http://java.sun.com/" target="_parent">JAVA</A> programming language</LI>
<LI>The <A HREF="http://svnkit.com/">SVNKIT</A> library to assess the <A HREF="http://subversion.tigris.org/" target="_parent">SVN software
versioning control system</A> from the GUI</LI>
<LI>The <A HREF=“http://www.jfree.org/jfreechart/” target=“_parent”>JFreeChart</A> library to embed graphics in the exploitation tools</LI>
<LI>The <A HREF=“http://www.gams.com” target=“_parent”>GDX API</A> to access GAMS GDX files</LI>
<LI>The <A HREF=“http://graphics.stanford.edu/papers/flow_map_layout/flow_map_layout.pdf”>flow map API</A> developped by Doantam Phan</LI>
<LI>The <A HREF=“http://www.cs.waikato.ac.nz/ml/weka/”>WEKA</A> machine learning library</LI>
<LI>Some parts of the <A HREF=“http://geotools.org/”>geotools</A> library for Shapefile processing</LI>
</UL>
<P>We would like to thank all who have contributed
to these products. The GUI itself was developed by Wolfgang
Britz, with contributions of Alexander Gocht. But its current
format and functionally would not be possible without the
feedback and contributions of the CAPRI network, and the
experiences gained over decades by staff at ILR, Bonn,
especially Hans-Josef Greuel and Andrea Zintl.</P>
</div><!-- Ende RightWindow -->
</div><!-- Ende content -->
</HTML>