CAPRI
images/capri_pic_01.jpg images/capri_pic_02.jpg images/capri_pic_03.jpg

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revisionBoth sides next revision
capri:install [2011/04/11 12:29] 134.110.32.81capri:install [2011/04/11 12:30] 134.110.32.81
Line 1: Line 1:
 + 
 +<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>Currently, CAPRI does not feature a system of tailored downloads, i.e. 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. It is recommended to have at least 1 GByte of RAM to run 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>
 +
 + </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>
  
   
 
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International