moved utilities and contribution in branchez
git-svn-id: svn://scm.gforge.inria.fr/svnroot/paradiseo@2183 331e1502-861f-0410-8da2-ba01fb791d7f
BIN
branches/utilities/trunk/archives/htdocs-website-paradiseo-11012008.tar.gz
Executable file
BIN
branches/utilities/trunk/archives/paradisEO-0.2b.tar.gz
Executable file
BIN
branches/utilities/trunk/archives/paradisEO-old-sebastien.tar.gz
Executable file
15352
branches/utilities/trunk/flyer/flyer_paradiseo_3.pdf
Normal file
17
branches/utilities/trunk/grid/environment/paradiseo.env
Executable file
|
|
@ -0,0 +1,17 @@
|
|||
name = paradiseo
|
||||
id =
|
||||
version = 2
|
||||
description = Paradiseo
|
||||
author = clive.canape@inria.fr
|
||||
filebase = file:///home/lille/ccanape/paradiseo.tgz
|
||||
filesite = file://grid5000/postinstall/sid-x64-base-1.0-post.tgz
|
||||
size =
|
||||
initrdpath = /boot/initrd.img-2.6.18-3-amd64
|
||||
kernelpath = /boot/vmlinuz-2.6.18-3-amd64
|
||||
kernelparam =
|
||||
fdisktype = 83
|
||||
filesystem = ext2
|
||||
siteid = 1
|
||||
optsupport = 0
|
||||
user = ccanape
|
||||
|
||||
BIN
branches/utilities/trunk/grid/image/paradiseo.tgz
Executable file
BIN
branches/utilities/trunk/grid/install/sid-x64-base-1.0-post.tgz
Executable file
93
branches/utilities/trunk/grid/scripts/deploy.sh
Executable file
|
|
@ -0,0 +1,93 @@
|
|||
#! /bin/bash
|
||||
|
||||
function exe()
|
||||
{
|
||||
if [ -e $1 ];
|
||||
then
|
||||
kadeploy -e paradiseo -f $1 -p $2
|
||||
rm $1
|
||||
PIDS="$PIDS $!"
|
||||
fi
|
||||
}
|
||||
|
||||
`cat $OAR_NODEFILE | uniq > machines`
|
||||
NODEFILE=machines
|
||||
PIDS=""
|
||||
N=0
|
||||
for i in `cat machines`;
|
||||
do
|
||||
name=${i%-*r}
|
||||
if [ "$name" = "azur" ];then
|
||||
echo $i >>machineAzur
|
||||
let $[N+=1]
|
||||
fi
|
||||
|
||||
if [ "$name" = "sol" ];then
|
||||
echo $i >>machineSol
|
||||
let $[N+=1]
|
||||
fi
|
||||
|
||||
if [ "$name" = "helios" ];then
|
||||
echo $i >>machineHelios
|
||||
let $[N+=1]
|
||||
fi
|
||||
|
||||
if [ "$name" = "chti" ];then
|
||||
echo $i >>machineChti
|
||||
let $[N+=1]
|
||||
fi
|
||||
|
||||
if [ "$name" = "chicon" ];then
|
||||
echo $i >>machineChicon
|
||||
let $[N+=1]
|
||||
fi
|
||||
|
||||
if [ "$name" = "capricorne" ];then
|
||||
echo $i >>machineCapricorne
|
||||
let $[N+=1]
|
||||
fi
|
||||
|
||||
if [ "$name" = "sagittaire" ];then
|
||||
echo $i >>machineSagittaire
|
||||
let $[N+=1]
|
||||
fi
|
||||
|
||||
if [ "$name" = "gdx" ];then
|
||||
echo $i >>machineGdx
|
||||
let $[N+=1]
|
||||
fi
|
||||
|
||||
if [ "$name" = "node" ];then
|
||||
echo $i >>machineNode
|
||||
let $[N+=1]
|
||||
fi
|
||||
|
||||
if [ "$name" = "grelon" ];then
|
||||
echo $i >>machineGrelon
|
||||
let $[N+=1]
|
||||
fi
|
||||
|
||||
if [ "$name" = "grillon" ];then
|
||||
echo $i >>machineGrillon
|
||||
let $[N+=1]
|
||||
fi
|
||||
|
||||
done
|
||||
|
||||
exe machineSol sda3
|
||||
exe machineAzur hda3
|
||||
exe machineHelios sda3
|
||||
exe machineChti sda3
|
||||
exe machineChicon sda3
|
||||
exe machineCapricorne hda3
|
||||
exe machineSagittaire sda3
|
||||
exe machineGdx sda3
|
||||
exe machineNode sda3
|
||||
exe machineGrelon sda3
|
||||
exe machineGrillon sda3
|
||||
wait $PIDS
|
||||
MASTER=`head -n 1 $OAR_NODEFILE`
|
||||
scp -o StrictHostKeyChecking=no machines root@${MASTER}:/home/g5k/machines
|
||||
echo "You can connect to the Master : $MASTER"
|
||||
|
||||
|
||||
7
branches/utilities/trunk/grid/scripts/launch.sh
Executable file
|
|
@ -0,0 +1,7 @@
|
|||
if [ $# -eq 2 ];then
|
||||
oarsub -I -t deploy -l nodes=$1,walltime=0$2:00:00
|
||||
else
|
||||
echo "Usage : launch.sh <node-number> <time>"
|
||||
exit 0;
|
||||
fi
|
||||
|
||||
BIN
branches/utilities/trunk/images/cmake_1.JPG
Executable file
|
After Width: | Height: | Size: 81 KiB |
BIN
branches/utilities/trunk/images/cmake_1.bmp
Executable file
|
After Width: | Height: | Size: 2.3 MiB |
BIN
branches/utilities/trunk/images/cmake_2.JPG
Executable file
|
After Width: | Height: | Size: 121 KiB |
BIN
branches/utilities/trunk/images/ex-lesson1-print.png
Normal file
|
After Width: | Height: | Size: 158 KiB |
BIN
branches/utilities/trunk/images/ex-lesson1-print2.png
Normal file
|
After Width: | Height: | Size: 149 KiB |
BIN
branches/utilities/trunk/images/exemple_execution_gnuplot.png
Normal file
|
After Width: | Height: | Size: 71 KiB |
BIN
branches/utilities/trunk/images/flyer-images/Image1.png
Normal file
|
After Width: | Height: | Size: 46 KiB |
BIN
branches/utilities/trunk/images/flyer-images/Image10.png
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
branches/utilities/trunk/images/flyer-images/Image11.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
branches/utilities/trunk/images/flyer-images/Image13.png
Normal file
|
After Width: | Height: | Size: 235 KiB |
BIN
branches/utilities/trunk/images/flyer-images/Image2.png
Normal file
|
After Width: | Height: | Size: 42 KiB |
BIN
branches/utilities/trunk/images/flyer-images/Image3.png
Normal file
|
After Width: | Height: | Size: 89 KiB |
BIN
branches/utilities/trunk/images/flyer-images/Image5.png
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
branches/utilities/trunk/images/flyer-images/Image6.png
Normal file
|
After Width: | Height: | Size: 5.8 KiB |
BIN
branches/utilities/trunk/images/flyer-images/Image7.png
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
branches/utilities/trunk/images/flyer-images/Image8.png
Normal file
|
After Width: | Height: | Size: 13 KiB |
BIN
branches/utilities/trunk/images/flyer-images/Image9.png
Normal file
|
After Width: | Height: | Size: 21 KiB |
BIN
branches/utilities/trunk/images/flyer-images/ImageTuning10.png
Normal file
|
After Width: | Height: | Size: 17 KiB |
BIN
branches/utilities/trunk/images/flyer-images/ImageTuning11.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
branches/utilities/trunk/images/flyer-images/ImageTuning7.png
Normal file
|
After Width: | Height: | Size: 7.8 KiB |
BIN
branches/utilities/trunk/images/flyer-images/ImageTuning9.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
branches/utilities/trunk/images/flyer-images/Thumbs.db
Normal file
BIN
branches/utilities/trunk/images/icones/ParadisEO.ico
Normal file
|
After Width: | Height: | Size: 5.6 KiB |
BIN
branches/utilities/trunk/images/icones/ParadisEO2.ico
Normal file
|
After Width: | Height: | Size: 5.6 KiB |
BIN
branches/utilities/trunk/images/images.zip
Normal file
BIN
branches/utilities/trunk/images/main.jpeg
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
branches/utilities/trunk/images/main_paradiseo.jpeg
Normal file
|
After Width: | Height: | Size: 8.8 KiB |
BIN
branches/utilities/trunk/images/paradisEO_small.png
Normal file
|
After Width: | Height: | Size: 6.4 KiB |
BIN
branches/utilities/trunk/images/print-home-site.png
Normal file
|
After Width: | Height: | Size: 124 KiB |
BIN
branches/utilities/trunk/images/print-home-site1.jpg
Normal file
|
After Width: | Height: | Size: 116 KiB |
BIN
branches/utilities/trunk/images/print-stat1.png
Normal file
|
After Width: | Height: | Size: 53 KiB |
BIN
branches/utilities/trunk/images/rouage.jpg
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
branches/utilities/trunk/images/schema-main-paradiseo.jpeg
Normal file
|
After Width: | Height: | Size: 7.4 KiB |
BIN
branches/utilities/trunk/images/schema-main-paradiseo.png
Normal file
|
After Width: | Height: | Size: 8.9 KiB |
BIN
branches/utilities/trunk/images/schema_paradieo1.png
Normal file
|
After Width: | Height: | Size: 237 KiB |
BIN
branches/utilities/trunk/images/vc++_1.JPG
Executable file
|
After Width: | Height: | Size: 112 KiB |
BIN
branches/utilities/trunk/images/vc++_1.bmp
Executable file
|
After Width: | Height: | Size: 2.3 MiB |
BIN
branches/utilities/trunk/images/vc++_2.JPG
Executable file
|
After Width: | Height: | Size: 112 KiB |
72
branches/utilities/trunk/mySimpleApplication/CMakeLists.txt
Normal file
|
|
@ -0,0 +1,72 @@
|
|||
|
||||
######################################################################################
|
||||
### 0) Include the install configuration file where are defined the main variables
|
||||
######################################################################################
|
||||
|
||||
INCLUDE(${CMAKE_SOURCE_DIR}/install.cmake)
|
||||
|
||||
######################################################################################
|
||||
|
||||
|
||||
######################################################################################
|
||||
### 1) Set your application properties
|
||||
######################################################################################
|
||||
|
||||
# Define your project name
|
||||
PROJECT(mySimpleApplication)
|
||||
|
||||
######################################################################################
|
||||
|
||||
|
||||
######################################################################################
|
||||
### 2) Include the sources
|
||||
######################################################################################
|
||||
|
||||
INCLUDE_DIRECTORIES(${PARADISEO_EO_SRC_DIR}/src
|
||||
${PARADISEO_MO_SRC_DIR}/src
|
||||
${PARADISEO_MOEO_SRC_DIR}/src
|
||||
${PARADISEO_PEO_SRC_DIR}/src)
|
||||
|
||||
######################################################################################
|
||||
|
||||
|
||||
######################################################################################
|
||||
### 3) Specify where CMake can find the libraries
|
||||
######################################################################################
|
||||
|
||||
# Link with the EO library directory, only if you need it
|
||||
LINK_DIRECTORIES(${PARADISEO_EO_BIN_DIR}/lib)
|
||||
|
||||
# Link with the MOEO library directory, only if you need it
|
||||
LINK_DIRECTORIES(${PARADISEO_MOEO_BIN_DIR}/lib)
|
||||
|
||||
# Link with the PEO library directory, only if you need it
|
||||
LINK_DIRECTORIES(${PARADISEO_PEO_BIN_DIR}/lib)
|
||||
|
||||
######################################################################################
|
||||
|
||||
|
||||
|
||||
######################################################################################
|
||||
### 4) Define your target: just an executable here
|
||||
######################################################################################
|
||||
|
||||
ADD_EXECUTABLE(mySimpleApplication mySimpleApplication.cpp)
|
||||
|
||||
######################################################################################
|
||||
|
||||
|
||||
######################################################################################
|
||||
### 5) Link the librairies for your executable
|
||||
######################################################################################
|
||||
|
||||
# Only if you need to link libraries
|
||||
TARGET_LINK_LIBRARIES(mySimpleApplication eo eoutils)
|
||||
|
||||
######################################################################################
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
82
branches/utilities/trunk/mySimpleApplication/README
Normal file
|
|
@ -0,0 +1,82 @@
|
|||
==========================================================================================
|
||||
INFORMATION
|
||||
==========================================================================================
|
||||
|
||||
PARADISEO (PARallel and DIStributed Evolving Objects) is a white-box object-oriented
|
||||
framework dedicated to the flexible design of metaheursitics.
|
||||
|
||||
This package is especially designed to help anyone who uses ParadisEO to build his
|
||||
own application.
|
||||
|
||||
|
||||
==========================================================================================
|
||||
RELEASE
|
||||
==========================================================================================
|
||||
|
||||
The current release of the "mySimpleApplication" package is 1.0.
|
||||
|
||||
|
||||
==========================================================================================
|
||||
WEBSITE
|
||||
==========================================================================================
|
||||
|
||||
Please visit our website at http://paradiseo.gforge.inria.fr.
|
||||
|
||||
|
||||
==========================================================================================
|
||||
BUGS
|
||||
==========================================================================================
|
||||
|
||||
You can find the ParadisEO's bug tracker at:
|
||||
|
||||
http://gforge.inria.fr/tracker/?atid=663&group_id=145&func=browse
|
||||
|
||||
|
||||
==========================================================================================
|
||||
CONTACT
|
||||
==========================================================================================
|
||||
|
||||
For any question or for help, please write us at: paradiseo-help@lists.gforge.inria.fr.
|
||||
|
||||
|
||||
==========================================================================================
|
||||
DEPENDENCIES
|
||||
==========================================================================================
|
||||
|
||||
ParadisEO uses EO, a templates-based, ANSI-C++ compliant evolutionary computation library.
|
||||
It contains classes for almost any kind of evolutionary computation you might come up to - at
|
||||
least for the ones we could think of.
|
||||
EO Website:
|
||||
http://eodev.sourceforge.net/.
|
||||
EO is distributed under the GNU Lesser General Public License:
|
||||
http://www.gnu.org/copyleft/lesser.html
|
||||
|
||||
|
||||
==========================================================================================
|
||||
LICENSE
|
||||
==========================================================================================
|
||||
|
||||
ParadisEO is governed by the CeCILL license under French law and
|
||||
abiding by the rules of distribution of free software. You can use,
|
||||
modify and/ or redistribute the software under the terms of the CeCILL
|
||||
license as circulated by CEA, CNRS and INRIA at the following URL
|
||||
"http://www.cecill.info".
|
||||
|
||||
As a counterpart to the access to the source code and rights to copy,
|
||||
modify and redistribute granted by the license, users are provided only
|
||||
with a limited warranty and the software's author, the holder of the
|
||||
economic rights, and the successive licensors have only limited liability.
|
||||
|
||||
In this respect, the user's attention is drawn to the risks associated
|
||||
with loading, using, modifying and/or developing or reproducing the
|
||||
software by the user in light of its specific status of free software,
|
||||
that may mean that it is complicated to manipulate, and that also
|
||||
therefore means that it is reserved for developers and experienced
|
||||
professionals having in-depth computer knowledge. Users are therefore
|
||||
encouraged to load and test the software's suitability as regards their
|
||||
requirements in conditions enabling the security of their systems and/or
|
||||
data to be ensured and, more generally, to use and operate it in the
|
||||
same conditions as regards security.
|
||||
The fact that you are presently reading this means that you have had
|
||||
knowledge of the CeCILL license and that you accept its terms.
|
||||
|
||||
326
branches/utilities/trunk/mySimpleApplication/index.html
Normal file
|
|
@ -0,0 +1,326 @@
|
|||
|
||||
<!DOCTYPE html
|
||||
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
|
||||
<!--
|
||||
//
|
||||
// 2005-12-01 ksc Initial release
|
||||
//
|
||||
-->
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<title>Build My Simple Application</title>
|
||||
|
||||
<link rel='stylesheet' title="A Bit Modern" href='http://paradiseo.gforge.inria.fr/pub/skins/abitmodern/inria.css' type='text/css' />
|
||||
<script type="text/javascript">
|
||||
<!-- //
|
||||
browser_type = navigator.appName;
|
||||
if (browser_type == "Microsoft Internet Explorer") {
|
||||
document.write("<link href='http://paradiseo.gforge.inria.fr/pub/skins/abitmodern/inria-ie.css' rel='stylesheet' type='text/css' />");
|
||||
}
|
||||
//-->
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<!-- Logo -->
|
||||
<table border="0" width="100%" cellspacing="0" cellpadding="0">
|
||||
<tr>
|
||||
<td><a href="/"><img src="http://paradiseo.gforge.inria.fr/pub/skins/abitmodern/images/logo.png" border="0" alt="" width="198" height="52" /></a></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table border="0" width="100%" cellspacing="0" cellpadding="0">
|
||||
<tr>
|
||||
<td align="left" bgcolor="#E0E0E0" width="9"><img src="http://paradiseo.gforge.inria.fr/pub/skins/abitmodern/images/tabs/topleft.png" height="9" width="9" alt="" /></td>
|
||||
<td bgcolor="#E0E0E0" width="30"><img src="http://paradiseo.gforge.inria.fr/pub/skins/abitmodern/images/clear.png" width="30" height="1" alt="" /></td>
|
||||
<td align="right" bgcolor="#E0E0E0" width="9"><img src="http://paradiseo.gforge.inria.fr/pub/skins/abitmodern/images/tabs/topright.png" height="9" width="9" alt="" /></td>
|
||||
</tr>
|
||||
|
||||
<!-- Outer body row -->
|
||||
<tr>
|
||||
<td bgcolor="#E0E0E0"><img src="http://paradiseo.gforge.inria.fr/pub/skins/abitmodern/images/clear.png" width="10" height="1" alt="" /></td>
|
||||
<td valign="top" width="100%" bgcolor="#E0E0E0" >
|
||||
|
||||
<!-- Inner Tabs / Shell -->
|
||||
<table border="0" width="100%" cellspacing="0" cellpadding="0">
|
||||
<tr>
|
||||
<td align="left" bgcolor="#ffffff" width="9"><img src="http://paradiseo.gforge.inria.fr/pub/skins/abitmodern/images/tabs/topleft-inner.png" height="9" width="9" alt="" /></td>
|
||||
<td bgcolor="#ffffff"><img src="http://paradiseo.gforge.inria.fr/pub/skins/abitmodern/images/clear.png" width="1" height="1" alt="" /></td>
|
||||
<td align="right" bgcolor="#ffffff" width="9"><img src="http://paradiseo.gforge.inria.fr/pub/skins/abitmodern/images/tabs/topright-inner.png" height="9" width="9" alt="" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td bgcolor="#ffffff"><img src="http://paradiseo.gforge.inria.fr/pub/skins/abitmodern/images/clear.png" width="10" height="1" alt="" /></td>
|
||||
<td valign="top" width="100%" bgcolor="white">
|
||||
|
||||
<!-- -->
|
||||
<!-- BODY -->
|
||||
<!-- -->
|
||||
|
||||
|
||||
<div id='head'>
|
||||
<div id='logo'><img src="../img/paradisEO_small.png"/></div>
|
||||
<div id='page-title'>Paradiseo</div>
|
||||
<!--div id='page-subtitle'>BuildMySimpleApplication</div-->
|
||||
<div id='page-actions'><ul><li class='browse'><a accesskey='' class='selflink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.BuildMySimpleApplication'>View</a>
|
||||
</li><li class='edit'><a accesskey='e' rel='nofollow' class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.BuildMySimpleApplication?action=edit'>Edit</a>
|
||||
</li><li class='diff'><a accesskey='h' rel='nofollow' class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.BuildMySimpleApplication?action=diff'>History</a>
|
||||
</li><li class='upload'><a accesskey='ak_attach' rel='nofollow' class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.BuildMySimpleApplication?action=upload'>Attach</a>
|
||||
</li><li class='print'><a accesskey='' rel='nofollow' class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.BuildMySimpleApplication?action=print'>Print</a>
|
||||
</li></ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id='content'>
|
||||
<div id='col-left'>
|
||||
<!--PageLeftFmt-->
|
||||
<div id='sidebar'><p class='sidehead'> <strong><a class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.Home'>Home</a></strong>
|
||||
</p><ul><li> <a class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.News'>> News</a>
|
||||
</li><li> <a class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.AssociatedEvents'>> Associated events</a>
|
||||
</li></ul><p class='vspace sidehead'> <strong><a class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.Documentation'>Documentation</a></strong>
|
||||
</p><ul><li><a class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.API'>> API doc</a>
|
||||
</li><li><a class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.DesignConcepts'>> Design concepts</a>
|
||||
</li><li><a class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.Tutorials'>> Tutorials</a>
|
||||
</li><li><a class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.FAQ'>> FAQ</a>
|
||||
</li><li><a class='urllink' href='http://gforge.inria.fr/forum/?group_id=145' rel='nofollow'>> Forum</a>
|
||||
</li><li><a class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.MailingList'>> Mailing lists</a>
|
||||
</li><li><a class='urllink' href='http://gforge.inria.fr/tracker/?atid=663&group_id=145&func=browse' rel='nofollow'>> Bug tracking</a>
|
||||
</li></ul><p class='vspace sidehead'> <strong><a class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.Download'>Download</a></strong>
|
||||
</p>
|
||||
<p class='vspace sidehead'> <strong><a class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Contributions.Index'>Contribution repository</a></strong>
|
||||
</p>
|
||||
<p class='vspace sidehead'> <strong><a class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.Publications'>Publi & appli</a></strong>
|
||||
</p>
|
||||
<p class='vspace sidehead'> <strong><a class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.Team'>Team</a></strong>
|
||||
</p>
|
||||
<p class='vspace'><span style='display: none;'> <strong><a class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.Applications'>Applications</a></strong> </span>
|
||||
<br /><span style='display: none;'> sidehead <strong><a class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.Features'>Features</a></strong> </span>
|
||||
<br /><span style='display: none;'> sidehead <strong><a class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.License'>License</a></strong> </span>
|
||||
<br /><span style='display: none;'> sidehead<strong><a class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.Contact'>Contact</a></strong> </span>
|
||||
</p>
|
||||
<p class='vspace' style='text-align: right;'> <span style='font-size:83%'><a class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Site.SideBar?action=edit'>edit</a></span>
|
||||
</p>
|
||||
</div>
|
||||
<!--/PageLeftFmt-->
|
||||
</div>
|
||||
<div id='col-right'>
|
||||
<!--PageText-->
|
||||
<div id='wikitext'>
|
||||
<h1><big>Build a simple application using <span class='wikiword'>ParadisEO</span></big></h1>
|
||||
<h2><big>Introduction</big></h2>
|
||||
<p>There are many steps required to produce a <span class='wikiword'>ParadisEO</span>-based program. As <span class='wikiword'>ParadisEO</span> is a C++ library, any "main" file containing the basic instructions of your program is expected to be first <strong>compiled</strong>. The way the program should be compiled depends on the environment. For example on Unix platforms, some "Makefiles" allow an automatic compilation of a C++ source file and the generation of the "makefiles" themselves is achieved by <a class='urllink' href='http://www.cmake.org/' rel='nofollow'>CMake</a>. <span class='wikiword'>CMake</span> manages the software compilation process and it can be used with several generators:
|
||||
</p>
|
||||
<div class='vspace'></div><dl><dd><ul><li><strong><span style='color: blue;'>Visual Studio 8 2005 </span></strong> (Win32 + Win64) projects
|
||||
</li><li><strong><span style='color: blue;'>Visual Studio 7 .NET 2003 </span></strong> projects
|
||||
</li><li><strong><span style='color: blue;'>Visual Studio 7 and 6</span></strong> projects
|
||||
</li><li><strong><span style='color: blue;'><span class='wikiword'>NMake</span></span></strong> Makefiles
|
||||
</li><li><strong><span style='color: blue;'><span class='wikiword'>MinGW</span></span></strong> Makefiles
|
||||
</li><li><strong><span style='color: blue;'>Borland</span></strong> Makefiles
|
||||
</li><li><strong><span style='color: blue;'><span class='wikiword'>KDevelop</span></span></strong> projects
|
||||
</li><li><strong><span style='color: blue;'>Unix</span></strong> Makefiles
|
||||
</li><li><strong><span style='color: blue;'>Xcode</span></strong> Projects
|
||||
</li><li><strong><span style='color: blue;'>MSYS</span></strong> Makefiles
|
||||
</li><li><strong><span style='color: blue;'><span class='wikiword'>WMake</span></span></strong> Makefiles
|
||||
</li></ul></dd></dl><p class='vspace'>A package containing all the required files has been developped for any user who wants to build his own application easily. In this case, we suppose this application to be only made of a "main.cpp" file (no specific components). The content of the package is pre-filled so that a user has just to paste his algorithm in the cpp-file and change one variable.
|
||||
</p>
|
||||
<div class='vspace'></div><h2><big>"mySimpleApplication" package's content</big></h2>
|
||||
<p>The package contains the following files:
|
||||
</p>
|
||||
<div class='vspace'></div><ul><li><strong>install.cmake</strong>: Contains variables that specify where <span class='wikiword'>ParadisEO</span> has been installed.
|
||||
</li><li><strong>mySimpleApplication.cpp</strong> : A C++ main containing the algorithm
|
||||
</li><li><strong>README</strong>: Contains basic information
|
||||
</li><li><strong><span class='wikiword'>CMakeLists</span>.txt</strong>: The only <span class='wikiword'>CMake</span> configuration file
|
||||
</li><li><strong>index.html</strong>: The content of the current web-page
|
||||
</li></ul><p class='vspace'><span style='color: red;'><strong>It can be downloaded from </span><a class='wikilink' href='http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.Here'>here</a></strong>.
|
||||
</p>
|
||||
<div class='vspace'></div><h2><big>Adapt the package</big></h2>
|
||||
<p>Here, we give the steps to custom the package for any application.
|
||||
</p>
|
||||
<p class='vspace'><em>Note: For further help about <span class='wikiword'>CMake</span>, see the <a class='urllink' href='http://www.cmake.org/HTML/Documentation.html' rel='nofollow'>CMake documentation</a></em>.
|
||||
</p>
|
||||
<p class='vspace'><br />
|
||||
</p><div style='color: black; font-size: 8pt; background-color: #99CCFF;' >
|
||||
<h3><ins>Step 1 : Develop your algorithm</ins></h3>
|
||||
</div>
|
||||
<p>You just have to edit the <strong><em>mySimpleApplication.cpp</em></strong> and implement your code.
|
||||
</p>
|
||||
<div class='vspace'></div><div style='color: black; font-size: 8pt; background-color: #CCFFCC;' >
|
||||
<ol><li>include <iostream>
|
||||
</li></ol><p>/// #include < file >
|
||||
</p>
|
||||
<p class='vspace'>/// Use functions from namespace std ?
|
||||
<br />using namespace std;
|
||||
</p>
|
||||
<p class='vspace'>int main(int argc, char **argv)
|
||||
<br />{
|
||||
</p><pre> /// Your code ...
|
||||
cout << "I'm a simple application linked with <span class='wikiword'>ParadisEO</span>" << endl ;
|
||||
|
||||
return 1;
|
||||
</pre><p class='vspace'>}'
|
||||
</p></div>
|
||||
<p class='vspace'><br />
|
||||
</p><div style='color: black; font-size: 8pt; background-color: #99CCFF;' >
|
||||
<h3><ins>Step 2 : Change the <span class='wikiword'>ParadisEO</span>-path in "install.cmake"</ins></h3>
|
||||
</div>
|
||||
<p class='vspace'>When <span class='wikiword'>ParadisEO</span> has been configured in the standard way (the global package containing all the modules has been installed), just replace "myDirectory" by the absolute path to <span class='wikiword'>ParadisEO</span> the section n°1:
|
||||
</p>
|
||||
<div class='vspace'></div><div style='color: black; font-size: 8pt; background-color: #ffffcc;' >
|
||||
<dl><dd><dl><dd><dl><dd><div class='indent'>SET(PARADISEO_DIR <strong>"myDirectory"</strong> CACHE PATH "<span class='wikiword'>ParadisEO</span> directory" FORCE)
|
||||
</div></dd></dl></dd></dl></dd></dl></div>
|
||||
<p class='vspace'>... replaced (for example) by:
|
||||
</p>
|
||||
<div class='vspace'></div><div style='color: black; font-size: 8pt; background-color: #ffffcc;' >
|
||||
<dl><dd><dl><dd><dl><dd><div class='indent'>SET(PARADISEO_DIR <strong>"/home/john/paradiseo-ix86-1.0"</strong> CACHE PATH "<span class='wikiword'>ParadisEO</span> directory" FORCE)
|
||||
</div></dd></dl></dd></dl></dd></dl></div>
|
||||
<p class='vspace'><span style='color: red;'><strong>Warning: Under Windows, the path to <span class='wikiword'>ParadisEO</span> must be given with double-backslashes</strong>:</span>
|
||||
</p><div style='color: black; font-size: 8pt; background-color: #ffcc33;' >
|
||||
<p>SET(PARADISEO_DIR <strong>"E:<big>\\</big>soft<big>\\</big>paradiseo-ix86-1.0"</strong> CACHE PATH "<span class='wikiword'>ParadisEO</span> directory" FORCE)
|
||||
</p></div>
|
||||
<p class='vspace'><span style='color: green;'><strong>If you have simply installed <span class='wikiword'>ParadisEO</span> using the provided install script, go to the next step.</strong></span>
|
||||
</p>
|
||||
<p class='vspace'><strong><em>Advanced configuration</em></strong>: <br />
|
||||
<br />If the modules of <span class='wikiword'>ParadisEO</span> have been deployed separately, the path to each module (EO, MO, MOEO and PEO) can also be specified. Here's an example for EO, <em>PARADISEO_EO_SRC_DIR</em> refers to the EO sources, <em>PARADISEO_EO_BIN_DIR</em> is the directory where EO has been compiled.
|
||||
</p>
|
||||
<div class='vspace'></div><div style='color: black; font-size: 9pt; background-color: #ffffcc;' >
|
||||
<dl><dd><dl><dd><dl><dd><div class='indent'>SET(PARADISEO_EO_SRC_DIR "${PARADISEO_DIR}/paradiseo-eo" CACHE PATH
|
||||
<dl><dd><dl><dd><dl><dd><dl><dd><dl><dd><div class='indent'>"<span class='wikiword'>ParadisEO</span>-EO source directory" FORCE)
|
||||
</div></dd></dl></dd></dl></dd></dl></dd></dl></dd></dl></div><div class='indent'>SET(PARADISEO_EO_BIN_DIR "${PARADISEO_DIR/paradiseo-eo/build" CACHE PATH
|
||||
<dl><dd><dl><dd><dl><dd><dl><dd><dl><dd><div class='indent'>"<span class='wikiword'>ParadisEO</span>-EO binary directory" FORCE)
|
||||
</div></dd></dl></dd></dl></dd></dl></dd></dl></dd></dl></div></dd></dl></dd></dl></dd></dl></div>
|
||||
<p class='vspace'>A third section is added to automatically set the flags required when using the package under Visual Studio 8. It has no effect for all the other cases.
|
||||
</p>
|
||||
<p class='vspace'><br />
|
||||
</p><div style='color: black; font-size: 8pt; background-color: #99CCFF;' >
|
||||
<h3><ins>Step 3 : Adapt the <span class='wikiword'>CMakeLists</span>.txt</ins></h3>
|
||||
</div>
|
||||
<div class='vspace'></div><ul><li>Give your project name in the section n°1 :
|
||||
</li></ul><div class='vspace'></div><div style='color: black; font-size: 9pt; background-color: #ffffcc;' >
|
||||
<dl><dd><dl><dd><dl><dd><div class='indent'>PROJECT(mySimpleApplication)
|
||||
</div></dd></dl></dd></dl></dd></dl></div>
|
||||
<div class='vspace'></div><ul><li>Specify the source directories to include
|
||||
</li></ul><div class='vspace'></div><div style='color: black; font-size: 9pt; background-color: #ffffcc;' >
|
||||
<dl><dd><dl><dd><dl><dd><div class='indent'>INCLUDE_DIRECTORIES(${PARADISEO_EO_SRC_DIR}/src
|
||||
<dl><dd><dl><dd><dl><dd><dl><dd><dl><dd><dl><dd><dl><dd><dl><dd><div class='indent'>${PARADISEO_MO_SRC_DIR}/src
|
||||
</div><div class='indent'>${PARADISEO_MOEO_SRC_DIR}/src
|
||||
</div><div class='indent'>${PARADISEO_PEO_SRC_DIR}/src)
|
||||
</div></dd></dl></dd></dl></dd></dl></dd></dl></dd></dl></dd></dl></dd></dl></dd></dl></div></dd></dl></dd></dl></dd></dl></div>
|
||||
<p class='vspace'>For example, if you only use <span class='wikiword'>ParadisEO</span>-EO sources, just set:
|
||||
</p><div style='color: black; font-size: 9pt; background-color: #ffffcc;' >
|
||||
<dl><dd><dl><dd><dl><dd><div class='indent'>INCLUDE_DIRECTORIES(${PARADISEO_EO_SRC_DIR}/src
|
||||
</div></dd></dl></dd></dl></dd></dl></div>
|
||||
<div class='vspace'></div><ul><li>Specify where are the libraries (for the linker)
|
||||
</li></ul><div class='vspace'></div><div style='color: black; font-size: 9pt; background-color: #ffffcc;' >
|
||||
<dl><dd><dl><dd><dl><dd><div class='indent'>LINK_DIRECTORIES(${PARADISEO_EO_BIN_DIR}/lib)
|
||||
</div><div class='indent'>LINK_DIRECTORIES(${PARADISEO_MOEO_BIN_DIR}/lib)
|
||||
</div><div class='indent'>LINK_DIRECTORIES(${PARADISEO_PEO_BIN_DIR}/lib)
|
||||
</div></dd></dl></dd></dl></dd></dl></div>
|
||||
<p class='vspace'>For example, if you only use <span class='wikiword'>ParadisEO</span>-EO and <span class='wikiword'>ParadisEO</span>-MOEO libraries, just set:
|
||||
</p><div style='color: black; font-size: 9pt; background-color: #ffffcc;' >
|
||||
<dl><dd><dl><dd><dl><dd><div class='indent'>LINK_DIRECTORIES(${PARADISEO_EO_BIN_DIR}/lib)
|
||||
</div><div class='indent'>LINK_DIRECTORIES(${PARADISEO_MOEO_BIN_DIR}/lib)
|
||||
</div></dd></dl></dd></dl></dd></dl></div>
|
||||
<div class='vspace'></div><ul><li>Define your executable: give the executable name + the name of the cpp file
|
||||
</li></ul><div style='color: black; font-size: 9pt; background-color: #ffffcc;' >
|
||||
<dl><dd><dl><dd><dl><dd><div class='indent'>ADD_EXECUTABLE(mySimpleApplication mySimpleApplication.cpp)
|
||||
</div></dd></dl></dd></dl></dd></dl></div>
|
||||
<p class='vspace'>Important: If you change the name of the cpp file "mySimpleApplication.cpp", don't forget to give the right name for the ADD_EXECUTABLE command.
|
||||
</p>
|
||||
<div class='vspace'></div><ul><li>Specify the libraries that should be linked to build your executable (for example, for Unix Makefiles, the option used to give the linked libraries is "-L < a path to the lib>")
|
||||
</li></ul><div style='color: black; font-size: 9pt; background-color: #ffffcc;' >
|
||||
<dl><dd><dl><dd><dl><dd><div class='indent'>TARGET_LINK_LIBRARIES(mySimpleApplication lib1 lib2 ...)
|
||||
</div></dd></dl></dd></dl></dd></dl></div>
|
||||
<p class='vspace'>An example using the "eo" and "eoutils" of <span class='wikiword'>ParadisEO</span>-EO is:
|
||||
</p><div style='color: black; font-size: 9pt; background-color: #ffffcc;' >
|
||||
<dl><dd><dl><dd><dl><dd><div class='indent'>TARGET_LINK_LIBRARIES(mySimpleApplication <strong>eo eoutils</strong>)
|
||||
</div></dd></dl></dd></dl></dd></dl></div>
|
||||
<p class='vspace'>Important: If you change the name of the executable (see a few lines above), don't forget to replace <strong><em>"mySimpleApplication</em></strong> " by the right name in:
|
||||
</p>
|
||||
<div class='vspace'></div><div style='color: black; font-size: 9pt; background-color: #ffffcc;' >
|
||||
<dl><dd><dl><dd><dl><dd><div class='indent'>TARGET_LINK_LIBRARIES(<strong><em>mySimpleApplication</em></strong> eo eoutils)
|
||||
</div></dd></dl></dd></dl></dd></dl></div>
|
||||
<p class='vspace'><br />
|
||||
</p><div style='color: black; font-size: 8pt; background-color: #99CCFF;' >
|
||||
<h3><ins>Step 4 : Launch the build process and compile</ins></h3>
|
||||
</div>
|
||||
<p class='vspace'>There are two ways to build and compile your program:
|
||||
</p><div class='indent'>- Compile it in the source directory, that means where your main cpp file is
|
||||
</div><div class='indent'>- Compile it somewhere else in order to have on one hand the source files, on the other the rest (makefiles of configuration file, ".o" files, the executable itself). This way is called <strong><em> out-source-build</em></strong> and is highly recommended.
|
||||
</div><p class='vspace'>Moreover, you should know in advance the kind of generator you want <span class='wikiword'>CMake</span> to use.
|
||||
</p>
|
||||
<p class='vspace'>For an "out-source-build", let's suppose your application's source file is located in <span style='color: green;'> <strong>/home/john/mySimpleApplication</strong></span> and you want to build it in <span style='color: red;'> <strong>/home/john/mySimpleApplication/build</strong></span> for <strong><span style='color: blue;'>Visual Studio 8 2005 </span></strong> :
|
||||
</p>
|
||||
<p class='vspace'>(<em>Note: The "build" directory exists if the archive, we would advise you to build your program in it</em>.)
|
||||
</p>
|
||||
<p class='vspace'>From <strong><span style='color: red;'>/home/john/mySimpleApplication/build</span></strong>, simply run (from a terminal/console)
|
||||
</p><div style='color: black; font-size: 8pt; background-color: #ffffcc;' >
|
||||
<dl><dd><dl><dd><div class='indent'><strong>cmake <span style='color: green;'>/home/john/mySimpleApplication</span> -G<span style='color: blue;'>"Visual Studio 8 2005"</span></strong>
|
||||
</div></dd></dl></dd></dl></div>
|
||||
<p class='vspace'>The generic call for <span class='wikiword'>CMake</span> is:
|
||||
</p><div style='color: black; font-size: 8pt; background-color: #ffffcc;' >
|
||||
<dl><dd><dl><dd><div class='indent'><strong>cmake <span style='color: green;'><path to the sources> </span> -G<span style='color: blue;'>"<generator name>"</span></strong>
|
||||
</div></dd></dl></dd></dl></div>
|
||||
<p class='vspace'>Then :
|
||||
</p>
|
||||
<p class='vspace'>- Go in <strong><span style='color: red;'>/home/john/mySimpleApplication/build</span></strong>
|
||||
<br />- Compile your program using the appropriate tool. Examples:
|
||||
</p><dl><dd><dl><dd><div class='indent'>--> If you chose the Unix Makefiles generator, enter "make"
|
||||
</div><div class='indent'>--> If you chose Visual Studio generator, open the generated solution/project and compile
|
||||
</div><div class='indent'>--> ...
|
||||
</div></dd></dl></dd></dl>
|
||||
<p class='vspace'><br />
|
||||
<br /><strong> For further help and information, feel free to send us an email at <a class='urllink' href='mailto:paradiseo-help@lists.gforge.inria.fr' rel='nofollow'>paradiseo-help@lists.gforge.inria.fr</a> </strong>.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<!--PageFooterFmt-->
|
||||
<div id='footer'>abitmodernCopyright
|
||||
    
|
||||
|
||||
|
||||
<!--a href="http://paradiseo.gforge.inria.fr/index.php?n=Paradiseo.BuildMySimpleApplication?action=pdf" title="Read this web page on format .pdf" ><acronym title="Portable Document Format" lang="en">PDF version </acronym></a-->
|
||||
|
||||
</div> <!--/PageFooterFmt-->
|
||||
</div>
|
||||
<div class='clearfix'></div>
|
||||
</div>
|
||||
<div class='clearfix'></div>
|
||||
|
||||
<!-- -->
|
||||
<!-- END BODY -->
|
||||
<!-- -->
|
||||
|
||||
|
||||
</td>
|
||||
<td width="10" bgcolor="#ffffff"><img src="http://paradiseo.gforge.inria.fr/pub/skins/abitmodern/images/clear.png" width="2" height="1" alt="" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="left" bgcolor="#E0E0E0" width="9"><img src="http://paradiseo.gforge.inria.fr/pub/skins/abitmodern/images/tabs/bottomleft-inner.png" height="11" width="11" alt="" /></td>
|
||||
<td bgcolor="#ffffff"><img src="http://paradiseo.gforge.inria.fr/pub/skins/abitmodern/images/clear.png" width="1" height="1" alt="" ></td>
|
||||
<td align="right" bgcolor="#E0E0E0" width="9"><img src="http://paradiseo.gforge.inria.fr/pub/skins/abitmodern/images/tabs/bottomright-inner.png" height="11" width="11" alt="" /></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
</TABLE>
|
||||
|
||||
|
||||
</td>
|
||||
<td width="10" bgcolor="#E0E0E0"><img src="http://paradiseo.gforge.inria.fr/pub/skins/abitmodern/images/clear.png" width="2" height="1" alt="" /></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td align="left" bgcolor="#E0E0E0" width="9"><img src="http://paradiseo.gforge.inria.fr/pub/skins/abitmodern/images/tabs/bottomleft.png" height="9" width="9" alt="" /></td>
|
||||
<td bgcolor="#E0E0E0"><img src="http://paradiseo.gforge.inria.fr/pub/skins/abitmodern/images/clear.png" width="1" height="1" alt="" /></td>
|
||||
<td align="right" bgcolor="#E0E0E0" width="9"><img src="http://paradiseo.gforge.inria.fr/pub/skins/abitmodern/images/tabs/bottomright.png" height="9" width="9" alt="" /></td>
|
||||
|
||||
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
50
branches/utilities/trunk/mySimpleApplication/install.cmake
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
|
||||
|
||||
#########################################################################################################
|
||||
# 1) ParadisEO install: SIMPLE Configuration
|
||||
#########################################################################################################
|
||||
|
||||
# Here, just specify PARADISEO_DIR : the directory where ParadisEO has been installed
|
||||
SET(PARADISEO_DIR "myDirectory" CACHE PATH "ParadisEO directory" FORCE)
|
||||
|
||||
#########################################################################################################
|
||||
|
||||
|
||||
|
||||
#########################################################################################################
|
||||
# 2) ParadisEO install: ADVANCED Configuration
|
||||
#########################################################################################################
|
||||
|
||||
SET(PARADISEO_EO_SRC_DIR "${PARADISEO_DIR}/paradiseo-eo" CACHE PATH "ParadisEO-EO source directory" FORCE)
|
||||
SET(PARADISEO_EO_BIN_DIR "${PARADISEO_DIR}/paradiseo-eo/build" CACHE PATH "ParadisEO-EO binary directory" FORCE)
|
||||
|
||||
SET(PARADISEO_MO_SRC_DIR "${PARADISEO_DIR}/paradiseo-mo" CACHE PATH "ParadisEO-MO source directory" FORCE)
|
||||
SET(PARADISEO_MO_BIN_DIR "${PARADISEO_DIR}/paradiseo-mo/build" CACHE PATH "ParadisEO-MO binary directory" FORCE)
|
||||
|
||||
SET(PARADISEO_MOEO_SRC_DIR "${PARADISEO_DIR}/paradiseo-moeo" CACHE PATH "ParadisEO-MOEO source directory" FORCE)
|
||||
SET(PARADISEO_MOEO_BIN_DIR "${PARADISEO_DIR}/paradiseo-moeo/build" CACHE PATH "ParadisEO-MOEO binary directory" FORCE)
|
||||
|
||||
SET(PARADISEO_PEO_SRC_DIR "${PARADISEO_DIR}/paradiseo-peo" CACHE PATH "ParadisEO-PEO source directory" FORCE)
|
||||
SET(PARADISEO_PEO_BIN_DIR "${PARADISEO_DIR}/paradiseo-peo/build" CACHE PATH "ParadisEO-PEO binary directory" FORCE)
|
||||
#########################################################################################################
|
||||
|
||||
|
||||
|
||||
######################################################################################
|
||||
### 3) OPTIONNAL: Windows advanced config - especially for Microsoft Visual Studio 8
|
||||
######################################################################################
|
||||
|
||||
IF(CMAKE_CXX_COMPILER MATCHES cl)
|
||||
IF(NOT WITH_SHARED_LIBS)
|
||||
IF(CMAKE_GENERATOR STREQUAL "Visual Studio 8 2005")
|
||||
SET(CMAKE_CXX_FLAGS "/nologo /W3 /Gy")
|
||||
SET(CMAKE_CXX_FLAGS_DEBUG "/MTd /Z7 /Od")
|
||||
SET(CMAKE_CXX_FLAGS_RELEASE "/MT /O2")
|
||||
SET(CMAKE_CXX_FLAGS_MINSIZEREL "/MT /O2")
|
||||
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "/MTd /Z7 /Od")
|
||||
SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /SUBSYSTEM:CONSOLE")
|
||||
|
||||
ENDIF(CMAKE_GENERATOR STREQUAL "Visual Studio 8 2005")
|
||||
ENDIF(NOT WITH_SHARED_LIBS)
|
||||
ENDIF(CMAKE_CXX_COMPILER MATCHES cl)
|
||||
######################################################################################
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
|
||||
#include <iostream>
|
||||
// #include < file >
|
||||
|
||||
// Use functions from namespace std ?
|
||||
using namespace std;
|
||||
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
// Your code ...
|
||||
cout << "I'm a simple application linked with ParadisEO" << endl ;
|
||||
|
||||
return 1;
|
||||
|
||||
}
|
||||
|
||||
BIN
branches/utilities/trunk/poster/Dolphin.jpg
Normal file
|
After Width: | Height: | Size: 76 KiB |
BIN
branches/utilities/trunk/poster/EO(2).png
Normal file
|
After Width: | Height: | Size: 60 KiB |
BIN
branches/utilities/trunk/poster/EO.png
Normal file
|
After Width: | Height: | Size: 69 KiB |
BIN
branches/utilities/trunk/poster/Hybrid(2).png
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
branches/utilities/trunk/poster/Hybrid.png
Normal file
|
After Width: | Height: | Size: 31 KiB |
BIN
branches/utilities/trunk/poster/MO.png
Normal file
|
After Width: | Height: | Size: 47 KiB |
BIN
branches/utilities/trunk/poster/MOEO.png
Normal file
|
After Width: | Height: | Size: 73 KiB |
4670
branches/utilities/trunk/poster/bandeau.ai
Normal file
BIN
branches/utilities/trunk/poster/logo_paradiseo_grand.png
Normal file
|
After Width: | Height: | Size: 145 KiB |
BIN
branches/utilities/trunk/poster/modules.png
Normal file
|
After Width: | Height: | Size: 53 KiB |
8084
branches/utilities/trunk/poster/paradiseo.ai
Normal file
4039
branches/utilities/trunk/poster/paradiseo.pdf
Normal file
BIN
branches/utilities/trunk/poster/parallel(2).png
Normal file
|
After Width: | Height: | Size: 48 KiB |
BIN
branches/utilities/trunk/poster/parallel.png
Normal file
|
After Width: | Height: | Size: 58 KiB |
8248
branches/utilities/trunk/poster/postere.ai
Normal file
613
branches/utilities/trunk/poster/sketchEO.eps
Normal file
|
|
@ -0,0 +1,613 @@
|
|||
%!PS-Adobe-2.0 EPSF-2.0
|
||||
%%Title: /home/jeremie/Bureau/uml/dia/sketchEO.dia
|
||||
%%Creator: Dia v0.96.1
|
||||
%%CreationDate: Fri Oct 3 11:21:28 2008
|
||||
%%For: humeau
|
||||
%%Orientation: Portrait
|
||||
%%Magnification: 1.0000
|
||||
%%BoundingBox: 0 0 674 396
|
||||
%%BeginSetup
|
||||
%%EndSetup
|
||||
%%EndComments
|
||||
%%BeginProlog
|
||||
[ /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
|
||||
/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
|
||||
/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
|
||||
/.notdef /.notdef /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quoteright
|
||||
/parenleft /parenright /asterisk /plus /comma /hyphen /period /slash /zero /one
|
||||
/two /three /four /five /six /seven /eight /nine /colon /semicolon
|
||||
/less /equal /greater /question /at /A /B /C /D /E
|
||||
/F /G /H /I /J /K /L /M /N /O
|
||||
/P /Q /R /S /T /U /V /W /X /Y
|
||||
/Z /bracketleft /backslash /bracketright /asciicircum /underscore /quoteleft /a /b /c
|
||||
/d /e /f /g /h /i /j /k /l /m
|
||||
/n /o /p /q /r /s /t /u /v /w
|
||||
/x /y /z /braceleft /bar /braceright /asciitilde /.notdef /.notdef /.notdef
|
||||
/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
|
||||
/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
|
||||
/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
|
||||
/space /exclamdown /cent /sterling /currency /yen /brokenbar /section /dieresis /copyright
|
||||
/ordfeminine /guillemotleft /logicalnot /hyphen /registered /macron /degree /plusminus /twosuperior /threesuperior
|
||||
/acute /mu /paragraph /periodcentered /cedilla /onesuperior /ordmasculine /guillemotright /onequarter /onehalf
|
||||
/threequarters /questiondown /Agrave /Aacute /Acircumflex /Atilde /Adieresis /Aring /AE /Ccedilla
|
||||
/Egrave /Eacute /Ecircumflex /Edieresis /Igrave /Iacute /Icircumflex /Idieresis /Eth /Ntilde
|
||||
/Ograve /Oacute /Ocircumflex /Otilde /Odieresis /multiply /Oslash /Ugrave /Uacute /Ucircumflex
|
||||
/Udieresis /Yacute /Thorn /germandbls /agrave /aacute /acircumflex /atilde /adieresis /aring
|
||||
/ae /ccedilla /egrave /eacute /ecircumflex /edieresis /igrave /iacute /icircumflex /idieresis
|
||||
/eth /ntilde /ograve /oacute /ocircumflex /otilde /odieresis /divide /oslash /ugrave
|
||||
/uacute /ucircumflex /udieresis /yacute /thorn /ydieresis] /isolatin1encoding exch def
|
||||
/cp {closepath} bind def
|
||||
/c {curveto} bind def
|
||||
/f {fill} bind def
|
||||
/a {arc} bind def
|
||||
/ef {eofill} bind def
|
||||
/ex {exch} bind def
|
||||
/gr {grestore} bind def
|
||||
/gs {gsave} bind def
|
||||
/sa {save} bind def
|
||||
/rs {restore} bind def
|
||||
/l {lineto} bind def
|
||||
/m {moveto} bind def
|
||||
/rm {rmoveto} bind def
|
||||
/n {newpath} bind def
|
||||
/s {stroke} bind def
|
||||
/sh {show} bind def
|
||||
/slc {setlinecap} bind def
|
||||
/slj {setlinejoin} bind def
|
||||
/slw {setlinewidth} bind def
|
||||
/srgb {setrgbcolor} bind def
|
||||
/rot {rotate} bind def
|
||||
/sc {scale} bind def
|
||||
/sd {setdash} bind def
|
||||
/ff {findfont} bind def
|
||||
/sf {setfont} bind def
|
||||
/scf {scalefont} bind def
|
||||
/sw {stringwidth pop} bind def
|
||||
/tr {translate} bind def
|
||||
|
||||
/ellipsedict 8 dict def
|
||||
ellipsedict /mtrx matrix put
|
||||
/ellipse
|
||||
{ ellipsedict begin
|
||||
/endangle exch def
|
||||
/startangle exch def
|
||||
/yrad exch def
|
||||
/xrad exch def
|
||||
/y exch def
|
||||
/x exch def /savematrix mtrx currentmatrix def
|
||||
x y tr xrad yrad sc
|
||||
0 0 1 startangle endangle arc
|
||||
savematrix setmatrix
|
||||
end
|
||||
} def
|
||||
|
||||
/mergeprocs {
|
||||
dup length
|
||||
3 -1 roll
|
||||
dup
|
||||
length
|
||||
dup
|
||||
5 1 roll
|
||||
3 -1 roll
|
||||
add
|
||||
array cvx
|
||||
dup
|
||||
3 -1 roll
|
||||
0 exch
|
||||
putinterval
|
||||
dup
|
||||
4 2 roll
|
||||
putinterval
|
||||
} bind def
|
||||
/Times-Roman-latin1
|
||||
/Times-Roman findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Times-Italic-latin1
|
||||
/Times-Italic findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Times-Bold-latin1
|
||||
/Times-Bold findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Times-BoldItalic-latin1
|
||||
/Times-BoldItalic findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/AvantGarde-Book-latin1
|
||||
/AvantGarde-Book findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/AvantGarde-BookOblique-latin1
|
||||
/AvantGarde-BookOblique findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/AvantGarde-Demi-latin1
|
||||
/AvantGarde-Demi findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/AvantGarde-DemiOblique-latin1
|
||||
/AvantGarde-DemiOblique findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Bookman-Light-latin1
|
||||
/Bookman-Light findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Bookman-LightItalic-latin1
|
||||
/Bookman-LightItalic findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Bookman-Demi-latin1
|
||||
/Bookman-Demi findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Bookman-DemiItalic-latin1
|
||||
/Bookman-DemiItalic findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Courier-latin1
|
||||
/Courier findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Courier-Oblique-latin1
|
||||
/Courier-Oblique findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Courier-Bold-latin1
|
||||
/Courier-Bold findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Courier-BoldOblique-latin1
|
||||
/Courier-BoldOblique findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Helvetica-latin1
|
||||
/Helvetica findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Helvetica-Oblique-latin1
|
||||
/Helvetica-Oblique findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Helvetica-Bold-latin1
|
||||
/Helvetica-Bold findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Helvetica-BoldOblique-latin1
|
||||
/Helvetica-BoldOblique findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Helvetica-Narrow-latin1
|
||||
/Helvetica-Narrow findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Helvetica-Narrow-Oblique-latin1
|
||||
/Helvetica-Narrow-Oblique findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Helvetica-Narrow-Bold-latin1
|
||||
/Helvetica-Narrow-Bold findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Helvetica-Narrow-BoldOblique-latin1
|
||||
/Helvetica-Narrow-BoldOblique findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/NewCenturySchoolbook-Roman-latin1
|
||||
/NewCenturySchoolbook-Roman findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/NewCenturySchoolbook-Italic-latin1
|
||||
/NewCenturySchoolbook-Italic findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/NewCenturySchoolbook-Bold-latin1
|
||||
/NewCenturySchoolbook-Bold findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/NewCenturySchoolbook-BoldItalic-latin1
|
||||
/NewCenturySchoolbook-BoldItalic findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Palatino-Roman-latin1
|
||||
/Palatino-Roman findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Palatino-Italic-latin1
|
||||
/Palatino-Italic findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Palatino-Bold-latin1
|
||||
/Palatino-Bold findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Palatino-BoldItalic-latin1
|
||||
/Palatino-BoldItalic findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/Symbol-latin1
|
||||
/Symbol findfont
|
||||
definefont pop
|
||||
/ZapfChancery-MediumItalic-latin1
|
||||
/ZapfChancery-MediumItalic findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
/ZapfDingbats-latin1
|
||||
/ZapfDingbats findfont
|
||||
dup length dict begin
|
||||
{1 index /FID ne {def} {pop pop} ifelse} forall
|
||||
/Encoding isolatin1encoding def
|
||||
currentdict end
|
||||
definefont pop
|
||||
28.346000 -28.346000 scale
|
||||
-12.695000 -8.110000 translate
|
||||
%%EndProlog
|
||||
|
||||
|
||||
0.100000 slw
|
||||
[] 0 sd
|
||||
0.678431 0.847059 0.901961 srgb
|
||||
n 22.125000 -1.407500 m 22.125000 -0.007500 l 26.585000 -0.007500 l 26.585000 -1.407500 l f
|
||||
0.000000 0.000000 1.000000 srgb
|
||||
n 22.125000 -1.407500 m 22.125000 -0.007500 l 26.585000 -0.007500 l 26.585000 -1.407500 l cp s
|
||||
/Helvetica-Bold-latin1 ff 0.700000 scf sf
|
||||
0.000000 0.000000 0.000000 srgb
|
||||
(eoEasyEA) 22.375000 -0.580000 m
|
||||
dup sw 3.960000 exch sub
|
||||
8 div exch 0.0 exch
|
||||
gs 1 -1 sc ashow gr
|
||||
0.678431 0.847059 0.901961 srgb
|
||||
n 24.285000 -2.107500 m 24.285000 -1.107500 l 26.985000 -1.107500 l 26.985000 -2.107500 l f
|
||||
[1.000000] 0 sd
|
||||
[0.300000] 0 sd
|
||||
0.000000 0.000000 1.000000 srgb
|
||||
n 24.285000 -2.107500 m 24.285000 -1.107500 l 26.985000 -1.107500 l 26.985000 -2.107500 l cp s
|
||||
/Courier-latin1 ff 0.560000 scf sf
|
||||
0.000000 0.000000 0.000000 srgb
|
||||
(:EOT) 24.585000 -1.605000 m
|
||||
dup sw 1.400000 exch sub
|
||||
4 div exch 0.0 exch
|
||||
gs 1 -1 sc ashow gr
|
||||
0.100000 slw
|
||||
[] 0 sd
|
||||
1.000000 1.000000 1.000000 srgb
|
||||
n 21.745000 -5.090000 m 21.745000 -3.690000 l 26.935000 -3.690000 l 26.935000 -5.090000 l f
|
||||
0.000000 0.000000 1.000000 srgb
|
||||
n 21.745000 -5.090000 m 21.745000 -3.690000 l 26.935000 -3.690000 l 26.935000 -5.090000 l cp s
|
||||
/Helvetica-BoldOblique-latin1 ff 0.700000 scf sf
|
||||
0.000000 0.000000 0.000000 srgb
|
||||
(eoContinue) 21.995000 -4.262500 m
|
||||
dup sw 4.690000 exch sub
|
||||
10 div exch 0.0 exch
|
||||
gs 1 -1 sc ashow gr
|
||||
1.000000 1.000000 1.000000 srgb
|
||||
n 24.635000 -5.790000 m 24.635000 -4.790000 l 27.335000 -4.790000 l 27.335000 -5.790000 l f
|
||||
[0.300000] 0 sd
|
||||
[0.300000] 0 sd
|
||||
0.000000 0.000000 1.000000 srgb
|
||||
n 24.635000 -5.790000 m 24.635000 -4.790000 l 27.335000 -4.790000 l 27.335000 -5.790000 l cp s
|
||||
/Courier-latin1 ff 0.560000 scf sf
|
||||
0.000000 0.000000 0.000000 srgb
|
||||
(:EOT) 24.935000 -5.287500 m
|
||||
dup sw 1.400000 exch sub
|
||||
4 div exch 0.0 exch
|
||||
gs 1 -1 sc ashow gr
|
||||
0.100000 slw
|
||||
[] 0 sd
|
||||
1.000000 1.000000 1.000000 srgb
|
||||
n 29.120000 -1.352500 m 29.120000 0.047500 l 35.992500 0.047500 l 35.992500 -1.352500 l f
|
||||
0.000000 0.000000 1.000000 srgb
|
||||
n 29.120000 -1.352500 m 29.120000 0.047500 l 35.992500 0.047500 l 35.992500 -1.352500 l cp s
|
||||
/Helvetica-BoldOblique-latin1 ff 0.700000 scf sf
|
||||
0.000000 0.000000 0.000000 srgb
|
||||
(eoReplacement) 29.370000 -0.525000 m
|
||||
dup sw 6.372500 exch sub
|
||||
13 div exch 0.0 exch
|
||||
gs 1 -1 sc ashow gr
|
||||
1.000000 1.000000 1.000000 srgb
|
||||
n 33.692500 -2.052500 m 33.692500 -1.052500 l 36.392500 -1.052500 l 36.392500 -2.052500 l f
|
||||
[0.300000] 0 sd
|
||||
[0.300000] 0 sd
|
||||
0.000000 0.000000 1.000000 srgb
|
||||
n 33.692500 -2.052500 m 33.692500 -1.052500 l 36.392500 -1.052500 l 36.392500 -2.052500 l cp s
|
||||
/Courier-latin1 ff 0.560000 scf sf
|
||||
0.000000 0.000000 0.000000 srgb
|
||||
(:EOT) 33.992500 -1.550000 m
|
||||
dup sw 1.400000 exch sub
|
||||
4 div exch 0.0 exch
|
||||
gs 1 -1 sc ashow gr
|
||||
0.100000 slw
|
||||
[] 0 sd
|
||||
1.000000 1.000000 1.000000 srgb
|
||||
n 12.745000 -1.390000 m 12.745000 0.010000 l 19.450000 0.010000 l 19.450000 -1.390000 l f
|
||||
0.000000 0.000000 1.000000 srgb
|
||||
n 12.745000 -1.390000 m 12.745000 0.010000 l 19.450000 0.010000 l 19.450000 -1.390000 l cp s
|
||||
/Helvetica-BoldOblique-latin1 ff 0.700000 scf sf
|
||||
0.000000 0.000000 0.000000 srgb
|
||||
(eoPopEvalFunc) 12.995000 -0.562500 m
|
||||
dup sw 6.205000 exch sub
|
||||
13 div exch 0.0 exch
|
||||
gs 1 -1 sc ashow gr
|
||||
1.000000 1.000000 1.000000 srgb
|
||||
n 17.150000 -2.090000 m 17.150000 -1.090000 l 19.850000 -1.090000 l 19.850000 -2.090000 l f
|
||||
[0.300000] 0 sd
|
||||
[0.300000] 0 sd
|
||||
0.000000 0.000000 1.000000 srgb
|
||||
n 17.150000 -2.090000 m 17.150000 -1.090000 l 19.850000 -1.090000 l 19.850000 -2.090000 l cp s
|
||||
/Courier-latin1 ff 0.560000 scf sf
|
||||
0.000000 0.000000 0.000000 srgb
|
||||
(:EOT) 17.450000 -1.587500 m
|
||||
dup sw 1.400000 exch sub
|
||||
4 div exch 0.0 exch
|
||||
gs 1 -1 sc ashow gr
|
||||
0.100000 slw
|
||||
[] 0 sd
|
||||
1.000000 1.000000 1.000000 srgb
|
||||
n 22.445000 2.810000 m 22.445000 4.210000 l 26.372500 4.210000 l 26.372500 2.810000 l f
|
||||
0.000000 0.000000 1.000000 srgb
|
||||
n 22.445000 2.810000 m 22.445000 4.210000 l 26.372500 4.210000 l 26.372500 2.810000 l cp s
|
||||
/Helvetica-BoldOblique-latin1 ff 0.700000 scf sf
|
||||
0.000000 0.000000 0.000000 srgb
|
||||
(eoBreed) 22.695000 3.637500 m
|
||||
dup sw 3.427500 exch sub
|
||||
7 div exch 0.0 exch
|
||||
gs 1 -1 sc ashow gr
|
||||
1.000000 1.000000 1.000000 srgb
|
||||
n 24.072500 2.110000 m 24.072500 3.110000 l 26.772500 3.110000 l 26.772500 2.110000 l f
|
||||
[0.300000] 0 sd
|
||||
[0.300000] 0 sd
|
||||
0.000000 0.000000 1.000000 srgb
|
||||
n 24.072500 2.110000 m 24.072500 3.110000 l 26.772500 3.110000 l 26.772500 2.110000 l cp s
|
||||
/Courier-latin1 ff 0.560000 scf sf
|
||||
0.000000 0.000000 0.000000 srgb
|
||||
(:EOT) 24.372500 2.612500 m
|
||||
dup sw 1.400000 exch sub
|
||||
4 div exch 0.0 exch
|
||||
gs 1 -1 sc ashow gr
|
||||
0.100000 slw
|
||||
[] 0 sd
|
||||
1.000000 1.000000 1.000000 srgb
|
||||
n 17.242900 5.789290 m 17.242900 7.189290 l 22.905400 7.189290 l 22.905400 5.789290 l f
|
||||
0.000000 0.000000 1.000000 srgb
|
||||
n 17.242900 5.789290 m 17.242900 7.189290 l 22.905400 7.189290 l 22.905400 5.789290 l cp s
|
||||
/Helvetica-BoldOblique-latin1 ff 0.700000 scf sf
|
||||
0.000000 0.000000 0.000000 srgb
|
||||
(eoTransform) 17.492900 6.616790 m
|
||||
dup sw 5.162500 exch sub
|
||||
11 div exch 0.0 exch
|
||||
gs 1 -1 sc ashow gr
|
||||
1.000000 1.000000 1.000000 srgb
|
||||
n 20.605400 5.089290 m 20.605400 6.089290 l 23.305400 6.089290 l 23.305400 5.089290 l f
|
||||
[0.300000] 0 sd
|
||||
[0.300000] 0 sd
|
||||
0.000000 0.000000 1.000000 srgb
|
||||
n 20.605400 5.089290 m 20.605400 6.089290 l 23.305400 6.089290 l 23.305400 5.089290 l cp s
|
||||
/Courier-latin1 ff 0.560000 scf sf
|
||||
0.000000 0.000000 0.000000 srgb
|
||||
(:EOT) 20.905400 5.591790 m
|
||||
dup sw 1.400000 exch sub
|
||||
4 div exch 0.0 exch
|
||||
gs 1 -1 sc ashow gr
|
||||
0.100000 slw
|
||||
[] 0 sd
|
||||
1.000000 1.000000 1.000000 srgb
|
||||
n 25.720300 5.810000 m 25.720300 7.210000 l 29.765300 7.210000 l 29.765300 5.810000 l f
|
||||
0.000000 0.000000 1.000000 srgb
|
||||
n 25.720300 5.810000 m 25.720300 7.210000 l 29.765300 7.210000 l 29.765300 5.810000 l cp s
|
||||
/Helvetica-BoldOblique-latin1 ff 0.700000 scf sf
|
||||
0.000000 0.000000 0.000000 srgb
|
||||
(eoSelect) 25.970300 6.637500 m
|
||||
dup sw 3.545000 exch sub
|
||||
8 div exch 0.0 exch
|
||||
gs 1 -1 sc ashow gr
|
||||
1.000000 1.000000 1.000000 srgb
|
||||
n 27.465300 5.110000 m 27.465300 6.110000 l 30.165300 6.110000 l 30.165300 5.110000 l f
|
||||
[0.300000] 0 sd
|
||||
[0.300000] 0 sd
|
||||
0.000000 0.000000 1.000000 srgb
|
||||
n 27.465300 5.110000 m 27.465300 6.110000 l 30.165300 6.110000 l 30.165300 5.110000 l cp s
|
||||
/Courier-latin1 ff 0.560000 scf sf
|
||||
0.000000 0.000000 0.000000 srgb
|
||||
(:EOT) 27.765300 5.612500 m
|
||||
dup sw 1.400000 exch sub
|
||||
4 div exch 0.0 exch
|
||||
gs 1 -1 sc ashow gr
|
||||
0.100000 slw
|
||||
[] 0 sd
|
||||
0 slj
|
||||
0 slc
|
||||
n 22.905400 6.489290 m 24.408750 6.489290 l 24.408750 5.518945 l s
|
||||
[] 0 sd
|
||||
0 slj
|
||||
0 slc
|
||||
1.000000 1.000000 1.000000 srgb
|
||||
n 24.408750 4.260366 m 24.648750 4.960366 l 24.408750 5.660366 l 24.168750 4.960366 l ef
|
||||
0.100000 slw
|
||||
[] 0 sd
|
||||
0 slj
|
||||
0 slc
|
||||
0.000000 0.000000 0.000000 srgb
|
||||
n 24.408750 4.260366 m 24.648750 4.960366 l 24.408750 5.660366 l 24.168750 4.960366 l cp s
|
||||
/Courier-latin1 ff 0.560000 scf sf
|
||||
0.100000 slw
|
||||
[] 0 sd
|
||||
0 slj
|
||||
0 slc
|
||||
n 24.340000 -3.690000 m 24.340000 -2.548750 l 24.355000 -2.548750 l 24.355000 -2.666079 l s
|
||||
[] 0 sd
|
||||
0 slj
|
||||
0 slc
|
||||
1.000000 1.000000 1.000000 srgb
|
||||
n 24.355000 -1.407500 m 24.115000 -2.107500 l 24.355000 -2.807500 l 24.595000 -2.107500 l ef
|
||||
0.100000 slw
|
||||
[] 0 sd
|
||||
0 slj
|
||||
0 slc
|
||||
0.000000 0.000000 0.000000 srgb
|
||||
n 24.355000 -1.407500 m 24.115000 -2.107500 l 24.355000 -2.807500 l 24.595000 -2.107500 l cp s
|
||||
0.100000 slw
|
||||
[] 0 sd
|
||||
0 slj
|
||||
0 slc
|
||||
n 29.120000 -0.652500 m 27.852500 -0.652500 l 27.852500 -0.707500 l 27.843579 -0.707500 l s
|
||||
[] 0 sd
|
||||
0 slj
|
||||
0 slc
|
||||
1.000000 1.000000 1.000000 srgb
|
||||
n 26.585000 -0.707500 m 27.285000 -0.947500 l 27.985000 -0.707500 l 27.285000 -0.467500 l ef
|
||||
0.100000 slw
|
||||
[] 0 sd
|
||||
0 slj
|
||||
0 slc
|
||||
0.000000 0.000000 0.000000 srgb
|
||||
n 26.585000 -0.707500 m 27.285000 -0.947500 l 27.985000 -0.707500 l 27.285000 -0.467500 l cp s
|
||||
0.100000 slw
|
||||
[] 0 sd
|
||||
0 slj
|
||||
0 slc
|
||||
n 24.408750 2.059646 m 24.408750 1.026073 l 24.355000 1.026073 l 24.355000 1.251079 l s
|
||||
[] 0 sd
|
||||
0 slj
|
||||
0 slc
|
||||
1.000000 1.000000 1.000000 srgb
|
||||
n 24.355000 -0.007500 m 24.595000 0.692500 l 24.355000 1.392500 l 24.115000 0.692500 l ef
|
||||
0.100000 slw
|
||||
[] 0 sd
|
||||
0 slj
|
||||
0 slc
|
||||
0.000000 0.000000 0.000000 srgb
|
||||
n 24.355000 -0.007500 m 24.595000 0.692500 l 24.355000 1.392500 l 24.115000 0.692500 l cp s
|
||||
0.100000 slw
|
||||
[] 0 sd
|
||||
0 slj
|
||||
0 slc
|
||||
n 19.450000 -0.690000 m 20.762361 -0.690000 l 20.762361 -0.707500 l 20.816143 -0.707500 l s
|
||||
[] 0 sd
|
||||
0 slj
|
||||
0 slc
|
||||
1.000000 1.000000 1.000000 srgb
|
||||
n 22.074722 -0.707500 m 21.374722 -0.467500 l 20.674722 -0.707500 l 21.374722 -0.947500 l ef
|
||||
0.100000 slw
|
||||
[] 0 sd
|
||||
0 slj
|
||||
0 slc
|
||||
0.000000 0.000000 0.000000 srgb
|
||||
n 22.074722 -0.707500 m 21.374722 -0.467500 l 20.674722 -0.707500 l 21.374722 -0.947500 l cp s
|
||||
0.100000 slw
|
||||
[] 0 sd
|
||||
0 slj
|
||||
0 slc
|
||||
n 25.670047 6.510000 m 24.408750 6.510000 l 24.408750 5.518945 l s
|
||||
[] 0 sd
|
||||
0 slj
|
||||
0 slc
|
||||
1.000000 1.000000 1.000000 srgb
|
||||
n 24.408750 4.260366 m 24.648750 4.960366 l 24.408750 5.660366 l 24.168750 4.960366 l ef
|
||||
0.100000 slw
|
||||
[] 0 sd
|
||||
0 slj
|
||||
0 slc
|
||||
0.000000 0.000000 0.000000 srgb
|
||||
n 24.408750 4.260366 m 24.648750 4.960366 l 24.408750 5.660366 l 24.168750 4.960366 l cp s
|
||||
showpage
|
||||
BIN
branches/utilities/trunk/poster/sketchEO.png
Normal file
|
After Width: | Height: | Size: 31 KiB |
|
|
@ -0,0 +1,64 @@
|
|||
|
||||
######################################################################################
|
||||
### 1) Project properties
|
||||
######################################################################################
|
||||
|
||||
# set the project name
|
||||
PROJECT(paradisEO-practices)
|
||||
|
||||
# check cmake version compatibility
|
||||
CMAKE_MINIMUM_REQUIRED(VERSION 2.4 FATAL_ERROR)
|
||||
|
||||
# regular expression checking
|
||||
INCLUDE_REGULAR_EXPRESSION("^.*$" "^$")
|
||||
|
||||
# set a language
|
||||
ENABLE_LANGUAGE(CXX)
|
||||
ENABLE_LANGUAGE(C)
|
||||
|
||||
#####################################################################################
|
||||
|
||||
|
||||
######################################################################################
|
||||
### 2) Include the main configuration variables
|
||||
######################################################################################
|
||||
|
||||
# Need the config file whose full path is given thanks to the "config" variable
|
||||
INCLUDE("install.cmake")
|
||||
|
||||
######################################################################################
|
||||
|
||||
|
||||
######################################################################################
|
||||
### 3) Paths checking
|
||||
######################################################################################
|
||||
|
||||
IF(WIN32)
|
||||
SET (ABSOLUTE_PATH_REGEX "^[A-Z]:|^[a-z]:")
|
||||
ELSE(WIN32)
|
||||
SET (ABSOLUTE_PATH_REGEX "^/")
|
||||
ENDIF(WIN32)
|
||||
|
||||
SET(REQUIRED_PATHS "EO_SRC_DIR" "EO_BIN_DIR" "MO_SRC_DIR" "MO_BIN_DIR")
|
||||
FOREACH (path ${REQUIRED_PATHS})
|
||||
IF(EXISTS ${${path}})
|
||||
MESSAGE (STATUS "Using ${path}=${${path}}")
|
||||
ELSE(EXISTS ${${path}})
|
||||
MESSAGE (FATAL_ERROR "\n Cannot find \"${${path}}\". Please, fill \"${config}\" with a correct value")
|
||||
ENDIF(EXISTS ${${path}})
|
||||
|
||||
IF(NOT ${${path}} MATCHES "${ABSOLUTE_PATH_REGEX}")
|
||||
MESSAGE (FATAL_ERROR "${${path}} MUST BE an absolute path")
|
||||
ENDIF(NOT ${${path}} MATCHES "${ABSOLUTE_PATH_REGEX}")
|
||||
ENDFOREACH (path ${REQUIRED_PATHS})
|
||||
######################################################################################
|
||||
|
||||
|
||||
######################################################################################
|
||||
### 6) Where must cmake go now ?
|
||||
######################################################################################
|
||||
|
||||
SUBDIRS(tsp lesson2 lesson3 lesson4 lesson5)
|
||||
|
||||
######################################################################################
|
||||
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
|
||||
|
||||
PARADISEO (PARallel and DIStributed Evolving Objects) is a white-box object-oriented framework dedicated to the flexible design of metaheursitics. Based on EO, this template-based, ANSI-C++ compliant computation library is portable across both Windows system and sequential platforms (Unix, Linux, MacOS, etc.).
|
||||
|
||||
WEBSITE: http://paradiseo.gforge.inria.fr
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,61 @@
|
|||
|
||||
#####################################################################################
|
||||
### Manage the build type
|
||||
#####################################################################################
|
||||
# the user should choose the build type on windows environments,excepted under cygwin (default=none)
|
||||
SET(CMAKE_DEFAULT_BUILD_TYPE "Release" CACHE STRING "Variable that stores the default CMake build type" FORCE)
|
||||
|
||||
FIND_PROGRAM(MEMORYCHECK_COMMAND
|
||||
NAMES purify valgrind
|
||||
PATHS
|
||||
"/usr/local/bin /usr/bin [HKEY_LOCAL_MACHINE\\SOFTWARE\\Rational Software\\Purify\\Setup;InstallFolder]"
|
||||
DOC "Path to the memory checking command, used for memory error detection.")
|
||||
IF(NOT CMAKE_BUILD_TYPE)
|
||||
SET( CMAKE_BUILD_TYPE
|
||||
${CMAKE_DEFAULT_BUILD_TYPE} CACHE STRING
|
||||
"Choose the type of build, options are: Debug Release RelWithDebInfo MinSizeRel."
|
||||
FORCE)
|
||||
ENDIF(NOT CMAKE_BUILD_TYPE)
|
||||
|
||||
IF(WIN32 AND NOT CYGWIN)
|
||||
IF(CMAKE_CXX_COMPILER MATCHES cl)
|
||||
IF(NOT WITH_SHARED_LIBS)
|
||||
IF(CMAKE_GENERATOR STREQUAL "Visual Studio 8 2005")
|
||||
SET(CMAKE_CXX_FLAGS "/nologo /W3 /Gy")
|
||||
SET(CMAKE_CXX_FLAGS_DEBUG "/MTd /Z7 /Od")
|
||||
SET(CMAKE_CXX_FLAGS_RELEASE "/MT /O2")
|
||||
SET(CMAKE_CXX_FLAGS_MINSIZEREL "/MT /O2")
|
||||
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "/MTd /Z7 /Od")
|
||||
SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /SUBSYSTEM:CONSOLE")
|
||||
ENDIF(CMAKE_GENERATOR STREQUAL "Visual Studio 8 2005")
|
||||
ENDIF(NOT WITH_SHARED_LIBS)
|
||||
ENDIF(CMAKE_CXX_COMPILER MATCHES cl)
|
||||
ELSE(WIN32 AND NOT CYGWIN)
|
||||
IF(CMAKE_COMPILER_IS_GNUCXX)
|
||||
SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -O0 -g -Wall -Wextra")
|
||||
SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O2")
|
||||
SET(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} -O6")
|
||||
ENDIF(CMAKE_COMPILER_IS_GNUCXX)
|
||||
ENDIF(WIN32 AND NOT CYGWIN)
|
||||
|
||||
IF(CMAKE_BUILD_TYPE MATCHES Debug)
|
||||
ADD_DEFINITIONS(-DCMAKE_VERBOSE_MAKEFILE=ON)
|
||||
ENDIF(CMAKE_BUILD_TYPE MATCHES Debug)
|
||||
|
||||
#####################################################################################
|
||||
|
||||
|
||||
##########################################################################################################################################
|
||||
### ParadisEO Install Configuration
|
||||
### The path to the modules EO and MO must be specified above.
|
||||
##########################################################################################################################################
|
||||
|
||||
SET(EO_SRC_DIR "E:\\temp\\ParadisEO\\paradiseo-eo" CACHE PATH "ParadisEO-EO source directory" FORCE)
|
||||
SET(EO_BIN_DIR "E:\\temp\\ParadisEO\\paradiseo-eo\\build" CACHE PATH "ParadisEO-EO binary directory" FORCE)
|
||||
|
||||
SET(MO_SRC_DIR "E:\\temp\\ParadisEO\\paradiseo-mo" CACHE PATH "ParadisMO-MO source directory" FORCE)
|
||||
SET(MO_BIN_DIR "E:\\temp\\ParadisEO\\paradiseo-mo\\build" CACHE PATH "ParadisMO-MO binary directory" FORCE)
|
||||
|
||||
###########################################################################################################################################
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,216 @@
|
|||
\documentclass[a4paper]{article}
|
||||
|
||||
\usepackage[english]{babel}
|
||||
\usepackage{epsf}
|
||||
\usepackage{amssymb}
|
||||
\usepackage{here}
|
||||
\usepackage{comment}
|
||||
\usepackage{graphicx}
|
||||
|
||||
\topmargin -2.5cm
|
||||
\textheight 25,5cm
|
||||
\textwidth 16cm
|
||||
\oddsidemargin 0cm
|
||||
\evensidemargin 0cm
|
||||
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Fichier entete
|
||||
%\input /usr/local/home/gisEns/fseynhae/Ens/Entete.tex
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
||||
|
||||
\begin{document}
|
||||
|
||||
\textbf{ParadisEO Practices} {\copyright Franck Seynhaeve,
|
||||
Jean-Charles Boisson, Thomas Legrand} \Large{\textbf{\\\\
|
||||
Lesson 1: Install ParadisEO and the practices}}
|
||||
|
||||
\normalsize
|
||||
|
||||
\vspace{-0,3cm}
|
||||
|
||||
\section{The ParadisEO platform}
|
||||
|
||||
\medskip
|
||||
|
||||
ParadisEO\footnote{http$\,:$//paradiseo.gforge.inria.fr/} (PARallel and DIStributed Evolving Objects) is a white-box
|
||||
object-oriented framework dedicated to the flexible design of metaheuristics.
|
||||
Based on EO\footnote{\tt http$\,:$//eodev.sourceforge.net/} (Evolutionary Computation Framework),
|
||||
this template-based,
|
||||
ANSI-C++ compliant computation library is portable across both Windows
|
||||
system and sequential platforms (Unix, Linux, MacOS, etc.).
|
||||
|
||||
\smallskip
|
||||
ParadisEO can be used under several environments as the build process (CMake)
|
||||
is able to generate:
|
||||
\begin{itemize}
|
||||
\item[$\bullet$] Visual Studio 8 2005 (Win32 + Win64) projects
|
||||
\item[$\bullet$] Visual Studio 7 .NET 2003 projects
|
||||
\item[$\bullet$] Visual Studio 7 and 6 projects
|
||||
\item[$\bullet$] NMake Makefiles
|
||||
\item[$\bullet$] MinGW Makefiles
|
||||
\item[$\bullet$] Borland Makefiles
|
||||
\item[$\bullet$] KDevelop projects
|
||||
\item[$\bullet$] Unix Makefiles
|
||||
\item[$\bullet$] Xcode Projects
|
||||
\item[$\bullet$] MSYS Makefiles
|
||||
\item[$\bullet$] WMake Makefiles
|
||||
\end{itemize}
|
||||
|
||||
\smallskip
|
||||
Paradiseo is composed of several packages that constitute a global framework.
|
||||
|
||||
\begin{center}
|
||||
\end{center}
|
||||
|
||||
\begin{itemize}
|
||||
\item[$\bullet$] Paradiseo-EO provides tools for the development of population-based metaheuristic:
|
||||
\begin{itemize}
|
||||
\item[$\ast$] Genetic algorithm
|
||||
\item[$\ast$] Genetic programming
|
||||
\item[$\ast$] Particle Swarm Optimization
|
||||
\item[$\ast$] ...
|
||||
\end{itemize}
|
||||
\item[$\bullet$] Paradiseo-MO provides tools for the development of single solution-based metaheuristics:
|
||||
\begin{itemize}
|
||||
\item[$\ast$] Hill-Climbing
|
||||
\item[$\ast$] Tabu Search
|
||||
\item[$\ast$] Simulated annealing
|
||||
\item[$\ast$] Incremental evaluation, partial neighbourhood
|
||||
\item[$\ast$] ...
|
||||
\end{itemize}
|
||||
\item[$\bullet$] Paradiseo-MOEO provides tools for the design of Multi-objective metaheuristics:
|
||||
\begin{itemize}
|
||||
\item[$\ast$] MO fitness assignment shemes (the ones used in NSGA-II, IBEA ...)
|
||||
\item[$\ast$] MO diversity assignment shemes (sharing, crowding)
|
||||
\item[$\ast$] Elitism
|
||||
\item[$\ast$] Performance metrics (contribution, entropy ...)
|
||||
\item[$\ast$] Easy-to-use standard evolutionary algorithms (NSGA-II, IBEA ...)
|
||||
\item[$\ast$] ...
|
||||
\end{itemize}
|
||||
\item[$\bullet$] Paradiseo-PEO provides tools for the design of parallel and distributed metaheuristics:
|
||||
\begin{itemize}
|
||||
\item[$\ast$] Parallel evaluation
|
||||
\item[$\ast$] Parallel evaluation function
|
||||
\item[$\ast$] Island model
|
||||
\item[$\ast$] Cellular model
|
||||
\end{itemize}
|
||||
\end{itemize}
|
||||
|
||||
\smallskip
|
||||
Furthermore, Paradiseo also introduces tools for the design of distributed, hybrid and cooperative models:
|
||||
\begin{itemize}
|
||||
\item[$\bullet$] High level hybrid metaheuristics: coevolutionary and relay model
|
||||
\item[$\bullet$] Low level hybrid metaheuristics: coevolutionary and relay model
|
||||
\end{itemize}
|
||||
|
||||
|
||||
|
||||
\section{Installation}
|
||||
|
||||
\subsection{ParadisEO}
|
||||
|
||||
The practices require ParadisEO to be installed on your
|
||||
computer. You can easily process to the installation:
|
||||
|
||||
\begin{itemize}
|
||||
\item[$\bullet$] Make sure to have the following tools
|
||||
available in your environment:
|
||||
|
||||
\hspace{1cm}$\vartriangleright$ {\tt CMake}
|
||||
\\\hspace*{1cm}$\vartriangleright$ {\tt Tar} or a similar extractor
|
||||
|
||||
\item[$\bullet$] Download ParadisEO (choose the {\tt tar.gz} file)
|
||||
from:
|
||||
\\\hspace*{1cm}$\vartriangleright$ {\tt http$\,:$//www2.lifl.fr/OPAC/Paradiseo/licence/FrmDownload.php}
|
||||
|
||||
\item[$\bullet$] Extract the content of the archive:
|
||||
\\\hspace*{1cm}$\vartriangleright$ Put the archive {\tt
|
||||
paradiseo-ix86-1.0.tar.gz} in the directory of your
|
||||
choice. Let's suppose you put it in \textbf{{\tt
|
||||
/home/me/software}}
|
||||
\\\hspace*{1cm}$\vartriangleright$ Extract it by entering
|
||||
the following line in a terminal: {\tt tar xzf paradiseo-ix86-1.0.tar.gz}
|
||||
|
||||
\item[$\bullet$] Install it:
|
||||
\\\hspace*{1cm}$\vartriangleright$ {\tt bash installParadiseo.sh} or {\tt sh
|
||||
installParadiseo.sh} if your shell is a "sh" one
|
||||
\\\hspace*{1cm}$\vartriangleright$ \textbf{Select your generator (Unix Makefiles recommended) }
|
||||
\\\hspace*{1cm}$\vartriangleright$ \textbf{Select the minimum installation mode by choosing the \emph{basic install} }
|
||||
|
||||
|
||||
\end{itemize}
|
||||
|
||||
|
||||
\subsection{The archive dedicated to the practices}
|
||||
|
||||
To start with the practices, you have to install the archive
|
||||
called {\tt paradiseo\_practices\_0208.tgz} that you have been
|
||||
given. This archive is also available for download at
|
||||
{\tt http$\,:$//paradiseo.gforge.inria.fr}.\\\\
|
||||
\textbf{ Let's suppose you have installed ParadisEO
|
||||
into the {\tt /home/me/software} directory. Each time
|
||||
it appears, you are to replace this path with the one
|
||||
corresponding to your ParadisEO installation directory.
|
||||
}
|
||||
\\\\When the archive has been extracted, please go in the
|
||||
{\tt practices} directory and edit the {\tt install.cmake}
|
||||
file:
|
||||
|
||||
\begin{itemize}
|
||||
\item[$\bullet$] Fill the {\tt EO\_SRC\_DIR} variable with the path to ParadisEO-EO :
|
||||
|
||||
\hspace{1cm}{\tt /home/me/software/ParadisEO/paradiseo-eo}
|
||||
\item[$\bullet$] Fill the {\tt EO\_BIN\_DIR} variable with the path to
|
||||
ParadisEO-EO build directory :
|
||||
|
||||
\hspace{1cm}{\tt /home/me/software/ParadisEO/paradiseo-eo/build}
|
||||
\item[$\bullet$] Fill the {\tt MO\_SRC\_DIR} variable with the path to ParadisEO-MO :
|
||||
|
||||
\hspace{1cm}{\tt /home/me/software/ParadisEO/paradiseo-mo}
|
||||
\item[$\bullet$] Fill the {\tt MO\_BIN\_DIR} variable with the path to
|
||||
ParadisEO-MO build directory :
|
||||
|
||||
\hspace{1cm}{\tt /home/me/software/ParadisEO/paradiseo-mo/build}
|
||||
\end{itemize}
|
||||
|
||||
\medskip
|
||||
Then, go in the {\tt build} directory and run :
|
||||
|
||||
\hspace{1cm}{\tt cmake ../}
|
||||
|
||||
\medskip
|
||||
You can now compile the practices using: {\tt make}
|
||||
|
||||
|
||||
\section{Archive content}
|
||||
|
||||
At the top level of the {\tt practices} directory, you must have:
|
||||
\begin{itemize}
|
||||
|
||||
\item[$\bullet$] {\bf tsp/src}: Contains the sources required to solve the TSP
|
||||
problem using ParadisEO. The associated benchmarks are in the
|
||||
{\bf benchs} directory.
|
||||
|
||||
\item[$\bullet$] {\bf lesson1}: ParadisEO installation practice, contains {\tt lesson1.pdf}.
|
||||
|
||||
\item[$\bullet$] {\bf lesson2}: Contains an implementation of the Hill-Climbing
|
||||
{\tt hill\_climbing.cpp} and the corresponding tutorial {\tt lesson2.pdf}.
|
||||
|
||||
\item[$\bullet$] {\bf lesson3}: Contains an implementation of a tabu
|
||||
search {\tt tabu\_search.cpp} and the corresponding tutorial {\tt lesson3.pdf}.
|
||||
|
||||
\item[$\bullet$] {\bf lesson4}: Contains an implementation of the
|
||||
Simulated Annealing {\tt simulated\_annealing.cpp} and the corresponding
|
||||
tutorial {\tt lesson4.pdf}.
|
||||
|
||||
\item[$\bullet$] {\bf lesson5}: Contains an implementation of a
|
||||
genetic algorithm {\tt gen\_algo.cpp} .
|
||||
|
||||
\item[$\bullet$] {\bf build}: Contains the built targets and
|
||||
the executables (subdirectories {\bf lesson1},
|
||||
{\bf lesson2}, {\bf lesson3}, {\bf lesson4} and {\bf lesson5}).
|
||||
|
||||
\end{itemize}
|
||||
|
||||
\end{document}
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
|
||||
|
||||
######################################################################################
|
||||
### 1) Include the sources
|
||||
######################################################################################
|
||||
|
||||
INCLUDE_DIRECTORIES(${EO_SRC_DIR}/src)
|
||||
INCLUDE_DIRECTORIES(${EO_SRC_DIR}/src/utils)
|
||||
INCLUDE_DIRECTORIES(${MO_SRC_DIR}/src)
|
||||
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/tsp/src)
|
||||
######################################################################################
|
||||
|
||||
|
||||
######################################################################################
|
||||
### 2) Specify where CMake can find the libraries
|
||||
######################################################################################
|
||||
|
||||
LINK_DIRECTORIES(${EO_BIN_DIR}/lib ${CMAKE_BINARY_DIR}/tsp/src)
|
||||
|
||||
######################################################################################
|
||||
|
||||
|
||||
######################################################################################
|
||||
### 3) Define your target(s): just an executable here
|
||||
######################################################################################
|
||||
|
||||
ADD_EXECUTABLE(hill_climbing hill_climbing.cpp)
|
||||
|
||||
ADD_DEPENDENCIES(hill_climbing tsp)
|
||||
######################################################################################
|
||||
|
||||
|
||||
######################################################################################
|
||||
### 4) Link the librairies for your target(s)
|
||||
######################################################################################
|
||||
|
||||
TARGET_LINK_LIBRARIES(hill_climbing tsp eo eoutils)
|
||||
|
||||
######################################################################################
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,67 @@
|
|||
// -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*-
|
||||
|
||||
// "hill_climbing.cpp"
|
||||
|
||||
// (c) OPAC Team, LIFL, 2003-2006
|
||||
|
||||
/* LICENCE TEXT
|
||||
|
||||
Contact: paradiseo-help@lists.gforge.inria.fr
|
||||
*/
|
||||
|
||||
#include <mo.h>
|
||||
|
||||
#include <graph.h>
|
||||
#include <route.h>
|
||||
#include <route_eval.h>
|
||||
#include <route_init.h>
|
||||
|
||||
#include <two_opt.h>
|
||||
#include <two_opt_init.h>
|
||||
#include <two_opt_next.h>
|
||||
#include <two_opt_incr_eval.h>
|
||||
|
||||
int
|
||||
main (int __argc, char * __argv [])
|
||||
{
|
||||
if (__argc != 2) {
|
||||
|
||||
std :: cerr << "Usage : ./hill_climbing [instance]" << std :: endl ;
|
||||
return 1 ;
|
||||
}
|
||||
|
||||
srand (1000) ;
|
||||
|
||||
Graph :: load (__argv [1]) ; // Instance
|
||||
|
||||
Route route ; // Solution
|
||||
|
||||
RouteInit init ; // Sol. Random Init.
|
||||
init (route) ;
|
||||
|
||||
RouteEval full_eval ; // Full. Eval.
|
||||
full_eval (route) ;
|
||||
|
||||
std :: cout << "[From] " << route << std :: endl ;
|
||||
|
||||
/* Tools for an efficient (? :-))
|
||||
local search ! */
|
||||
|
||||
TwoOptInit two_opt_init ; // Init.
|
||||
|
||||
TwoOptNext two_opt_next ; // Explorer.
|
||||
|
||||
TwoOptIncrEval two_opt_incr_eval ; // Eff. eval.
|
||||
|
||||
//moFirstImprSelect <TwoOpt> two_opt_select ;
|
||||
moBestImprSelect <TwoOpt> two_opt_select ;
|
||||
//moRandImprSelect <TwoOpt> two_opt_select ;
|
||||
|
||||
moHC <TwoOpt> hill_climbing (two_opt_init, two_opt_next, two_opt_incr_eval, two_opt_select, full_eval) ;
|
||||
hill_climbing (route) ;
|
||||
|
||||
std :: cout << "[To] " << route << std :: endl ;
|
||||
|
||||
return 0 ;
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,96 @@
|
|||
\documentclass[a4paper]{article}
|
||||
|
||||
\usepackage[english]{babel}
|
||||
\usepackage{epsf}
|
||||
\usepackage{amssymb}
|
||||
\usepackage{here}
|
||||
\usepackage{comment}
|
||||
\usepackage{graphicx}
|
||||
|
||||
\topmargin -2.5cm
|
||||
\textheight 25,5cm
|
||||
\textwidth 16cm
|
||||
\oddsidemargin 0cm
|
||||
\evensidemargin 0cm
|
||||
|
||||
|
||||
\begin{document}
|
||||
|
||||
\textbf{ParadisEO Practices} {\copyright Franck Seynhaeve,
|
||||
Jean-Charles Boisson, Thomas Legrand} \Large{\textbf{\\\\
|
||||
Lesson 2: Implement a Hill-Climbing using ParadisEO}}
|
||||
|
||||
\normalsize
|
||||
|
||||
\vspace{-0,3cm}
|
||||
|
||||
\section{Example}
|
||||
|
||||
The archive {\tt paradiseo\_practices\_0208.tgz} installed
|
||||
on your computer contains a Hill-Climbing implemented using ParadisEO-MO~
|
||||
(see {\tt hill\_climbing} in the {\bf build/lesson2} directory).
|
||||
|
||||
\medskip
|
||||
To run it, please go in {\bf build/lesson2} and start the program {\tt hill\_climbing} by giving
|
||||
one of the TSP instances located in {\bf tsp/benchs}.
|
||||
|
||||
|
||||
\medskip
|
||||
When entering {\tt ./hill\_climbing ../../tsp/benchs/berlin52.tsp}, you should end up with the
|
||||
following outputs:
|
||||
|
||||
\smallskip
|
||||
\noindent
|
||||
\texttt{>> Loading [../../tsp/benchs/eil101.tsp]} \\
|
||||
\texttt{[From] -3435 101 36 55 54 65 50 80 14 27 46 15 93 58 78 47 99 64 68}\\
|
||||
\texttt{49 72 81 82 76 41 16 66 30 29 83 95 71 38 35 19 5 63 26 43 96 79 52}\\
|
||||
\texttt{59 69 7 56 37 3 32 28 9 13 1 91 31 73 11 40 62 17 24 45 88 6 85 22}\\
|
||||
\texttt{18 20 44 94 12 33 60 89 74 42 97 21 100 57 77 92 98 51 2 25 75 10 86}\\
|
||||
\texttt{8 23 67 70 34 90 87 48 53 0 39 4 84 61}\\
|
||||
\texttt{[To] -708 101 36 97 91 58 95}\\
|
||||
\texttt{98 92 84 99 90 43 13 37 85 15 60 16 83 4 59 82 44 7 45 35 48 63 10}\\
|
||||
\texttt{18 46 47 81 17 51 26 27 25 39 57 52 100 88 5 93 94 12 1 56 86 96 41}\\
|
||||
\texttt{42 14 40 21 73 71 72 20 3 55 74 22 66 38 24 54 53 23 28 78 2 76 67}\\
|
||||
\texttt{79 11 75 68 0 49 32 80 77 33 50 8 34 70 64 65 19 29 69 31 89 62 9 30}\\
|
||||
\texttt{87 6 61}\\
|
||||
|
||||
The printed-out results show for the initial best solution and the final one~:
|
||||
\\ \hspace*{0.5cm}-the length of the route
|
||||
\\ \hspace*{0.5cm}-the number of cities
|
||||
\\ \hspace*{0.5cm}-the route itself (notice that the city index starts from 0).
|
||||
|
||||
|
||||
\section{Tabu search}
|
||||
|
||||
Study the {\tt hill\_climbing.cpp} file located in the {\bf lesson2} directory
|
||||
using~:
|
||||
\begin{itemize}
|
||||
\item[$\bullet$] the ParadisEO-MO API documentation available at~:
|
||||
|
||||
\hspace{1cm}http$\,:$//paradiseo.gforge.inria.fr/addon/paradiseo-mo/doc/index.html
|
||||
\item[$\bullet$] the source files located in the {\bf tsp/src/} directory
|
||||
\end{itemize}
|
||||
|
||||
\section{Customize the Hill CLimbing}
|
||||
|
||||
Make a backup (copy) of the cpp file {\tt tabuhill\_climbing.cpp}. You can now modify the
|
||||
original {\tt hill\_climbing.cpp} and use the existing makefiles to compile it.
|
||||
|
||||
Edit and modify the {\tt hill\_climbing.cpp} file~:
|
||||
\begin{itemize}
|
||||
\item[$\bullet$] Try to tune a few parameters (random seed
|
||||
and the move selector) and observe the changes on the final
|
||||
solution.
|
||||
|
||||
\end{itemize}
|
||||
|
||||
\smallskip
|
||||
To compile {\tt hill\_climbing.cpp}, you should use the
|
||||
command {\tt make} from {\bf build/lesson2}.
|
||||
|
||||
\medskip
|
||||
Finally, test your modifications on several TSP instances ({\tt berlin52},
|
||||
{\tt eil101} ...) and compare the results you get.
|
||||
|
||||
|
||||
\end{document}
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
|
||||
|
||||
######################################################################################
|
||||
### 1) Include the sources
|
||||
######################################################################################
|
||||
|
||||
INCLUDE_DIRECTORIES(${EO_SRC_DIR}/src)
|
||||
INCLUDE_DIRECTORIES(${EO_SRC_DIR}/src/utils)
|
||||
INCLUDE_DIRECTORIES(${MO_SRC_DIR}/src)
|
||||
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/tsp/src)
|
||||
######################################################################################
|
||||
|
||||
|
||||
######################################################################################
|
||||
### 2) Specify where CMake can find the libraries
|
||||
######################################################################################
|
||||
|
||||
LINK_DIRECTORIES(${EO_BIN_DIR}/lib ${CMAKE_BINARY_DIR}/tsp/src)
|
||||
|
||||
######################################################################################
|
||||
|
||||
|
||||
######################################################################################
|
||||
### 3) Define your target(s): just an executable here
|
||||
######################################################################################
|
||||
|
||||
ADD_EXECUTABLE(tabu_search tabu_search.cpp)
|
||||
|
||||
ADD_DEPENDENCIES(tabu_search tsp)
|
||||
######################################################################################
|
||||
|
||||
|
||||
######################################################################################
|
||||
### 4) Link the librairies for your target(s)
|
||||
######################################################################################
|
||||
|
||||
TARGET_LINK_LIBRARIES(tabu_search tsp eo eoutils)
|
||||
|
||||
######################################################################################
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,96 @@
|
|||
\documentclass[a4paper]{article}
|
||||
|
||||
\usepackage[english]{babel}
|
||||
\usepackage{epsf}
|
||||
\usepackage{amssymb}
|
||||
\usepackage{here}
|
||||
\usepackage{comment}
|
||||
\usepackage{graphicx}
|
||||
|
||||
\topmargin -2.5cm
|
||||
\textheight 25,5cm
|
||||
\textwidth 16cm
|
||||
\oddsidemargin 0cm
|
||||
\evensidemargin 0cm
|
||||
|
||||
|
||||
|
||||
\begin{document}
|
||||
|
||||
\textbf{ParadisEO Practices} {\copyright Franck Seynhaeve,
|
||||
Jean-Charles Boisson, Thomas Legrand} \Large{\textbf{\\\\
|
||||
Lesson 4: Implement a simulated annealing using ParadisEO}}
|
||||
|
||||
\normalsize
|
||||
|
||||
\vspace{-0,3cm}
|
||||
|
||||
\section{Example}
|
||||
|
||||
The archive {\tt paradiseo\_practices\_0208.tgz} installed
|
||||
on your computer contains a simulated annealing implemented using ParadisEO-MO~
|
||||
(see {\tt simulated\_annealing} in the {\bf build/lesson4} directory).
|
||||
|
||||
\medskip
|
||||
To run it, please go in {\bf build/lesson4} and start the program {\tt simulated\_annealing} by giving
|
||||
one of the TSP instances located in {\bf tsp/benchs}.
|
||||
|
||||
|
||||
\medskip
|
||||
When entering {\tt ./simulated\_annealing ../../tsp/benchs/berlin52.tsp}, you should end up with the
|
||||
following outputs:
|
||||
|
||||
\smallskip
|
||||
\noindent
|
||||
\texttt{>> Loading [../../tsp/benchs/eil101.tsp]}\\
|
||||
\texttt{[From] -3347 101 84 20 57 71 92 19 59 10 30 55 27 63 36 26 18 21 46}\\
|
||||
\texttt{72 96 35 39 24 29 86 60 40 34 48 67 38 13 0 5 11 16 83 49 50 6 7 87}\\
|
||||
\texttt{1 53 90 74 52 58 15 8 95 25 68 61 70 65 45 33 79 23 62 4 37 91 85 78}\\
|
||||
\texttt{89 47 69 28 32 66 80 75 94 41 100 44 73 22 9 76 64 97 31 88 51 93 43}\\
|
||||
\texttt{2 3 14 56 99 12 82 81 42 17 54 98 77}\\
|
||||
\texttt{[To] -697 101 84 90 99 36 97}\\
|
||||
\texttt{ 92 60 15 85 37 43 13 41 42 14 56 86 1 40 21 73 72 20 71 74 55 22 66}\\
|
||||
\texttt{ 38 3 24 54 53 23 28 78 80 8 50 32 2 76 67 79 11 75 49 0 68 26 100 52}\\
|
||||
\texttt{ 27 25 39 57 12 93 94 96 91 58 98 95 5 88 51 17 82 59 4 83 16 44 7 45}\\
|
||||
\texttt{ 46 35 48 63 18 47 81 6 87 61 10 62 89 31 9 30 69 29 19 65 70 64 34}\\
|
||||
\texttt{ 33 77}\\
|
||||
|
||||
|
||||
The printed-out results show for the initial best solution and the final one~:
|
||||
\\ \hspace*{0.5cm}-the length of the route
|
||||
\\ \hspace*{0.5cm}-the number of cities
|
||||
\\ \hspace*{0.5cm}-the route itself (notice that the city index starts from 0).
|
||||
|
||||
|
||||
\section{Study the simulated annealing dedicated components}
|
||||
|
||||
Study the {\tt simulated\_annealing.cpp} file located in the {\bf lesson4} directory
|
||||
using~:
|
||||
\begin{itemize}
|
||||
\item[$\bullet$] the ParadisEO-MO API documentation available at~:
|
||||
|
||||
\hspace{1cm}http$\,:$//paradiseo.gforge.inria.fr/addon/paradiseo-mo/doc/index.html
|
||||
\item[$\bullet$] the source files located in the {\bf tsp/src/} directory
|
||||
\end{itemize}
|
||||
|
||||
\section{Customize the simulated annealing}
|
||||
|
||||
Make a backup (copy) of the cpp file {\tt simulated\_annealing.cpp}. You can now modify the
|
||||
original {\tt simulated\_annealing.cpp} and use the existing makefiles to compile it.
|
||||
|
||||
Edit and modify the {\tt simulated\_annealing.cpp} file~:
|
||||
\begin{itemize}
|
||||
\item[$\bullet$] Change the cooling schedule components and parameters.
|
||||
\item[$\bullet$] Customize the temperature decrease process and try to obtain another good solution.
|
||||
\end{itemize}
|
||||
|
||||
\smallskip
|
||||
To compile {\tt simulated\_annealing.cpp},you should use the
|
||||
command {\tt make} from {\bf build/lesson4}.
|
||||
|
||||
\medskip
|
||||
Finally, test your modifications on several TSP instances ({\tt berlin52},
|
||||
{\tt eil101} ...) and compare the results you get.
|
||||
|
||||
|
||||
\end{document}
|
||||
|
|
@ -0,0 +1,70 @@
|
|||
// -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*-
|
||||
|
||||
// "tabu_search.cpp"
|
||||
|
||||
// (c) OPAC Team, LIFL, 2003-2006
|
||||
|
||||
/* LICENCE TEXT
|
||||
|
||||
Contact: paradiseo-help@lists.gforge.inria.fr
|
||||
*/
|
||||
|
||||
#include <mo.h>
|
||||
|
||||
#include <graph.h>
|
||||
#include <route.h>
|
||||
#include <route_eval.h>
|
||||
#include <route_init.h>
|
||||
|
||||
#include <two_opt.h>
|
||||
#include <two_opt_init.h>
|
||||
#include <two_opt_next.h>
|
||||
#include <two_opt_incr_eval.h>
|
||||
#include <two_opt_tabu_list.h>
|
||||
|
||||
int
|
||||
main (int __argc, char * __argv [])
|
||||
{
|
||||
if (__argc != 2)
|
||||
{
|
||||
std :: cerr << "Usage : ./tabu_search [instance]" << std :: endl ;
|
||||
return 1 ;
|
||||
}
|
||||
|
||||
Graph :: load (__argv [1]) ; // Instance
|
||||
|
||||
Route route ; // Solution
|
||||
|
||||
RouteInit init ; // Sol. Random Init.
|
||||
init (route) ;
|
||||
|
||||
RouteEval full_eval ; // Full. Eval.
|
||||
full_eval (route) ;
|
||||
|
||||
std :: cout << "[From] " << route << std :: endl ;
|
||||
|
||||
/* Tools for an efficient (? :-))
|
||||
local search ! */
|
||||
|
||||
TwoOptInit two_opt_init ; // Init.
|
||||
|
||||
TwoOptNext two_opt_next ; // Explorer.
|
||||
|
||||
TwoOptIncrEval two_opt_incr_eval ; // Eff. eval.
|
||||
|
||||
TwoOptTabuList tabu_list ; // Tabu List
|
||||
//moSimpleMoveTabuList<TwoOpt> tabu_list(10);
|
||||
//moSimpleSolutionTabuList<TwoOpt> tabu_list(10);
|
||||
|
||||
moNoAspirCrit <TwoOpt> aspir_crit ; // Aspiration Criterion
|
||||
|
||||
moGenSolContinue <Route> cont (10000) ; // Continuator
|
||||
|
||||
moTS <TwoOpt> tabu_search (two_opt_init, two_opt_next, two_opt_incr_eval, tabu_list, aspir_crit, cont, full_eval) ;
|
||||
tabu_search (route) ;
|
||||
|
||||
std :: cout << "[To] " << route << std :: endl ;
|
||||
|
||||
return 0 ;
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
|
||||
|
||||
######################################################################################
|
||||
### 1) Include the sources
|
||||
######################################################################################
|
||||
|
||||
INCLUDE_DIRECTORIES(${EO_SRC_DIR}/src)
|
||||
INCLUDE_DIRECTORIES(${EO_SRC_DIR}/src/utils)
|
||||
INCLUDE_DIRECTORIES(${MO_SRC_DIR}/src)
|
||||
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/tsp/src)
|
||||
######################################################################################
|
||||
|
||||
|
||||
######################################################################################
|
||||
### 2) Specify where CMake can find the libraries
|
||||
######################################################################################
|
||||
|
||||
LINK_DIRECTORIES(${EO_BIN_DIR}/lib ${CMAKE_BINARY_DIR}/tsp/src)
|
||||
|
||||
######################################################################################
|
||||
|
||||
|
||||
######################################################################################
|
||||
### 3) Define your target(s): just an executable here
|
||||
######################################################################################
|
||||
|
||||
ADD_EXECUTABLE(simulated_annealing simulated_annealing.cpp)
|
||||
|
||||
ADD_DEPENDENCIES(simulated_annealing tsp)
|
||||
######################################################################################
|
||||
|
||||
|
||||
######################################################################################
|
||||
### 4) Link the librairies for your target(s)
|
||||
######################################################################################
|
||||
|
||||
TARGET_LINK_LIBRARIES(simulated_annealing tsp eo eoutils)
|
||||
|
||||
######################################################################################
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,95 @@
|
|||
\documentclass[a4paper]{article}
|
||||
|
||||
\usepackage[english]{babel}
|
||||
\usepackage{epsf}
|
||||
\usepackage{amssymb}
|
||||
\usepackage{here}
|
||||
\usepackage{comment}
|
||||
\usepackage{graphicx}
|
||||
|
||||
\topmargin -2.5cm
|
||||
\textheight 25,5cm
|
||||
\textwidth 16cm
|
||||
\oddsidemargin 0cm
|
||||
\evensidemargin 0cm
|
||||
|
||||
|
||||
\begin{document}
|
||||
|
||||
\textbf{ParadisEO Practices} {\copyright Franck Seynhaeve,
|
||||
Jean-Charles Boisson, Thomas Legrand} \Large{\textbf{\\\\
|
||||
Lesson 4: Implement a tabu search using ParadisEO}}
|
||||
|
||||
\normalsize
|
||||
|
||||
\vspace{-0,3cm}
|
||||
|
||||
\section{Example}
|
||||
|
||||
The archive {\tt paradiseo\_practices\_0208.tgz} installed
|
||||
on your computer contains a tabu search implemented using ParadisEO-MO~
|
||||
(see {\tt tabu\_search} in the {\bf build/lesson4} directory).
|
||||
|
||||
\medskip
|
||||
To run it, please go in {\bf build/lesso4} and start the program {\tt tabu\_search} by giving
|
||||
one of the TSP instances located in {\bf tsp/benchs}.
|
||||
|
||||
|
||||
\medskip
|
||||
When entering {\tt ./tabu\_search ../../tsp/benchs/berlin52.tsp}, you should end up with the
|
||||
following outputs:
|
||||
|
||||
\smallskip
|
||||
\noindent
|
||||
\texttt{>>> Loading [../../tsp/benchs/eil101.tsp]}\\
|
||||
\texttt{> [From] -3347 101 84 20 57 71 92 19 59 10 30 55 27 63 36 26 18 21 46}\\
|
||||
\texttt{>72 96 35 39 24 29 86 60 40 34 48 67 38 13 0 5 11 16 83 49 50 6 7 87}\\
|
||||
\texttt{>1 53 90 74 52 58 15 8 95 25 68 61 70 65 45 33 79 23 62 4 37 91 85 78}\\
|
||||
\texttt{>89 47 69 28 32 66 80 75 94 41 100 44 73 22 9 76 64 97 31 88 51 93 43}\\
|
||||
\texttt{>2 3 14 56 99 12 82 81 42 17 54 98 77}\\
|
||||
\texttt{>[To] -703 101 84 92 98 95 58}\\
|
||||
\texttt{>91 36 97 90 99 41 86 96 94 12 93 5 88 17 51 68 0 49 76 75 27 26 100}\\
|
||||
\texttt{>52 57 39 25 11 79 67 2 78 28 23 53 54 24 3 38 66 22 55 74 21 40 73}\\
|
||||
\texttt{>71 20 72 1 56 14 42 13 43 37 85 15 60 4 59 82 83 16 44 45 7 81 6 47}\\
|
||||
\texttt{>18 46 35 48 63 10 62 89 31 9 61 87 30 69 29 19 50 32 80 8 70 65 64}\\
|
||||
\texttt{>34 33 77}\\
|
||||
|
||||
The printed-out results show for the initial best solution and the final one~:
|
||||
\\ \hspace*{0.5cm}-the length of the route
|
||||
\\ \hspace*{0.5cm}-the number of cities
|
||||
\\ \hspace*{0.5cm}-the route itself (notice that the city index starts from 0).
|
||||
|
||||
|
||||
\section{Study the tabu search dedicated components}
|
||||
|
||||
Study the {\tt tabu\_search.cpp} file located in the {\bf lesson4} directory
|
||||
using~:
|
||||
\begin{itemize}
|
||||
\item[$\bullet$] the ParadisEO-MO API documentation available at~:
|
||||
|
||||
\hspace{1cm}http$\,:$//paradiseo.gforge.inria.fr/addon/paradiseo-mo/doc/index.html
|
||||
\item[$\bullet$] the source files located in the {\bf tsp/src/} directory
|
||||
\end{itemize}
|
||||
|
||||
\section{Customize the tabu search}
|
||||
|
||||
Make a backup (copy) of the cpp file {\tt tabu\_search.cpp}. You can now modify the
|
||||
original {\tt tabu\_search.cpp} and use the existing makefiles to compile it.
|
||||
|
||||
Edit and modify the {\tt tabu\_search.cpp} file~:
|
||||
\begin{itemize}
|
||||
\item[$\bullet$] Try to tune a few parameters of the tabu search.
|
||||
\item[$\bullet$] Change the initialization of the solution by
|
||||
modifying the file {\tt route\_init.cpp}.
|
||||
\end{itemize}
|
||||
|
||||
\smallskip
|
||||
To compile {\tt tabu\_search.cpp},you should use the
|
||||
command {\tt make} from {\bf build/lesson4}.
|
||||
|
||||
\medskip
|
||||
Finally, test your modifications on several TSP instances ({\tt berlin52},
|
||||
{\tt eil101} ...) and compare the results you get.
|
||||
|
||||
|
||||
\end{document}
|
||||
|
|
@ -0,0 +1,67 @@
|
|||
// -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*-
|
||||
|
||||
// "simulated_annealing.cpp"
|
||||
|
||||
// (c) OPAC Team, LIFL, 2003-2006
|
||||
|
||||
/* LICENCE TEXT
|
||||
|
||||
Contact: paradiseo-help@lists.gforge.inria.fr
|
||||
*/
|
||||
|
||||
#include <mo.h>
|
||||
|
||||
#include <graph.h>
|
||||
#include <route.h>
|
||||
#include <route_eval.h>
|
||||
#include <route_init.h>
|
||||
|
||||
#include <two_opt.h>
|
||||
#include <two_opt_rand.h>
|
||||
#include <two_opt_incr_eval.h>
|
||||
|
||||
int
|
||||
main (int __argc, char * __argv [])
|
||||
{
|
||||
if (__argc != 2)
|
||||
{
|
||||
std :: cerr << "Usage : ./simulated_annealing [instance]" << std :: endl ;
|
||||
return 1 ;
|
||||
}
|
||||
|
||||
Graph :: load (__argv [1]) ; // Instance
|
||||
|
||||
Route route ; // Solution
|
||||
|
||||
RouteInit init ; // Sol. Random Init.
|
||||
init (route) ;
|
||||
|
||||
RouteEval full_eval ; // Full. Eval.
|
||||
full_eval (route) ;
|
||||
|
||||
std :: cout << "[From] " << route << std :: endl ;
|
||||
|
||||
/* Tools for an efficient (? :-))
|
||||
local search ! */
|
||||
|
||||
TwoOptRand two_opt_rand ; // Route Random. Gen.
|
||||
|
||||
TwoOptIncrEval two_opt_incr_eval ; // Eff. eval.
|
||||
|
||||
TwoOpt move ;
|
||||
|
||||
moExponentialCoolingSchedule cool_sched (0.1, 0.98) ; // Exponential Cooling Schedule
|
||||
//moLinearCoolingSchedule cool_sched (0.1, 0.5) ; // Linear Cooling Schedule
|
||||
|
||||
moGenSolContinue <Route> cont (1000) ; /* Temperature Descreasing
|
||||
will occur each 1000
|
||||
iterations */
|
||||
|
||||
moSA <TwoOpt> simulated_annealing (two_opt_rand, two_opt_incr_eval, cont, 1000, cool_sched, full_eval) ;
|
||||
simulated_annealing (route) ;
|
||||
|
||||
std :: cout << "[To] " << route << std :: endl ;
|
||||
|
||||
return 0 ;
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
|
||||
|
||||
######################################################################################
|
||||
### 1) Include the sources
|
||||
######################################################################################
|
||||
|
||||
INCLUDE_DIRECTORIES(${EO_SRC_DIR}/src)
|
||||
INCLUDE_DIRECTORIES(${EO_SRC_DIR}/src/utils)
|
||||
INCLUDE_DIRECTORIES(${MO_SRC_DIR}/src)
|
||||
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/tsp/src)
|
||||
######################################################################################
|
||||
|
||||
|
||||
######################################################################################
|
||||
### 2) Specify where CMake can find the libraries
|
||||
######################################################################################
|
||||
|
||||
LINK_DIRECTORIES(${EO_BIN_DIR}/lib ${CMAKE_BINARY_DIR}/tsp/src)
|
||||
|
||||
######################################################################################
|
||||
|
||||
|
||||
######################################################################################
|
||||
### 3) Define your target(s): just an executable here
|
||||
######################################################################################
|
||||
|
||||
ADD_EXECUTABLE(gen_algo gen_algo.cpp)
|
||||
|
||||
ADD_DEPENDENCIES(gen_algo tsp)
|
||||
######################################################################################
|
||||
|
||||
|
||||
######################################################################################
|
||||
### 4) Link the librairies for your target(s)
|
||||
######################################################################################
|
||||
|
||||
TARGET_LINK_LIBRARIES(gen_algo tsp eo eoutils)
|
||||
|
||||
######################################################################################
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,64 @@
|
|||
// -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*-
|
||||
|
||||
// "gen_algo.cpp"
|
||||
|
||||
#include <eoEasyEA.h>
|
||||
#include <eoGenContinue.h>
|
||||
#include <eoStochTournamentSelect.h>
|
||||
#include <eoSGATransform.h>
|
||||
#include <eoSelectNumber.h>
|
||||
|
||||
#include "graph.h"
|
||||
#include "route.h"
|
||||
#include "route_init.h"
|
||||
#include "route_eval.h"
|
||||
#include "order_xover.h"
|
||||
#include "partial_mapped_xover.h"
|
||||
#include "city_swap.h"
|
||||
|
||||
int main (int __argc, char * __argv []) {
|
||||
|
||||
if (__argc != 2) {
|
||||
|
||||
std :: cerr << "Usage : ./gen_algo [instance]" << std :: endl ;
|
||||
return 1 ;
|
||||
}
|
||||
|
||||
Graph :: load (__argv [1]) ; // Instance
|
||||
|
||||
RouteInit init ; // Sol. Random Init.
|
||||
|
||||
RouteEval full_eval ; // Full Evaluator
|
||||
|
||||
eoPop <Route> pop (100, init) ; // Population
|
||||
apply <Route> (full_eval, pop) ;
|
||||
|
||||
std :: cout << "[From] " << pop.best_element () << std :: endl ;
|
||||
|
||||
eoGenContinue <Route> cont (1000) ; /* Continuator (A fixed number of
|
||||
1000 iterations */
|
||||
|
||||
eoStochTournamentSelect <Route> select_one ; // Selector
|
||||
|
||||
eoSelectNumber <Route> select (select_one, 100) ;
|
||||
|
||||
// OrderXover cross ; // Order Crossover
|
||||
PartialMappedXover cross ;
|
||||
|
||||
CitySwap mut ; // City Swap Mutator
|
||||
|
||||
eoSGATransform <Route> transform (cross, 1, mut, 0.01) ;
|
||||
|
||||
eoElitism <Route> merge (1) ; // Use of Elistism
|
||||
|
||||
eoStochTournamentTruncate <Route> reduce (0.7) ; // Stoch. Replacement
|
||||
|
||||
eoEasyEA <Route> ea (cont, full_eval, select, transform, merge, reduce) ;
|
||||
|
||||
ea (pop) ;
|
||||
|
||||
std :: cout << "[To] " << pop.best_element () << std :: endl ;
|
||||
|
||||
return 0 ;
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,98 @@
|
|||
\documentclass[a4paper]{article}
|
||||
|
||||
\usepackage[english]{babel}
|
||||
\usepackage{epsf}
|
||||
\usepackage{amssymb}
|
||||
\usepackage{here}
|
||||
\usepackage{comment}
|
||||
\usepackage{graphicx}
|
||||
|
||||
\topmargin -2.5cm
|
||||
\textheight 25,5cm
|
||||
\textwidth 16cm
|
||||
\oddsidemargin 0cm
|
||||
\evensidemargin 0cm
|
||||
|
||||
|
||||
\begin{document}
|
||||
|
||||
\textbf{ParadisEO Practices} {\copyright Franck Seynhaeve,
|
||||
Jean-Charles Boisson, Thomas Legrand} \Large{\textbf{\\\\
|
||||
Lesson 5: Implement a genetic algorithm using ParadisEO}}
|
||||
|
||||
\normalsize
|
||||
|
||||
\vspace{-0,3cm}
|
||||
|
||||
\section{Example}
|
||||
|
||||
The archive {\tt paradiseo\_practices\_0208.tgz} installed
|
||||
on your computer contains a genetic algorithm implemented using ParadisEO-EO~
|
||||
(see {\tt gen\_algo} in the {\bf build/lesson5} directory).
|
||||
|
||||
\medskip
|
||||
To run it, please go in {\bf build/lesson5} and start the program {\tt gen\_algo} by giving
|
||||
one of the TSP instances located in {\bf tsp/benchs}.
|
||||
|
||||
\medskip
|
||||
When entering {\tt ./gen\_algo ../../tsp/benchs/berlin52.tsp}, you should end up with the
|
||||
following outputs:
|
||||
|
||||
\texttt{>> Loading [../../tsp/benchs/eil101.tsp]}\\
|
||||
\texttt{[From] -3176 101 5 72 27 77 20 82 23 14 91 17 60 50 43 99 18 34 69}\\
|
||||
\texttt{76 22 38 25 88 36 40 7 55 74 42 67 53 11 62 61 92 58 93 19 70 33 32}\\
|
||||
\texttt{86 48 47 4 97 73 95 79 85 66 65 24 13 89 8 26 96 56 28 39 80 37 49}\\
|
||||
\texttt{78 12 1 98 46 31 57 10 30 90 71 75 81 16 45 29 41 100 51 21 52 59 15}\\
|
||||
\texttt{64 44 94 54 9 6 3 0 87 63 2 84 83 35 68 STOP in eoGenContinue:}\\
|
||||
\texttt{Reached maximum number of generations [1000/1000]}\\
|
||||
\texttt{[To] -1564 101 60}\\
|
||||
\texttt{17 81 59 5 94 43 42 14 40 13 15 82 45 46 35 51 26 100 74 38 24 22 21}\\
|
||||
\texttt{54 23 66 86 99 44 87 64 34 57 25 32 75 80 29 79 67 53 3 1 58 95 97}\\
|
||||
\texttt{90 85 37 83 16 92 91 36 41 96 93 52 56 12 33 77 70 30 88 39 20 72 71}\\
|
||||
\texttt{ 31 62 89 61 49 2 8 18 6 10 9 0 68 78 28 27 76 11 73 55 50 65 19 69}\\
|
||||
\texttt{48 63 47 7 4 98 84}\\
|
||||
|
||||
|
||||
\medskip
|
||||
|
||||
The printed-out results show for the initial best solution and the final one~:
|
||||
\\ \hspace*{0.5cm}-the length of the route
|
||||
\\ \hspace*{0.5cm}-the number of cities
|
||||
\\ \hspace*{0.5cm}-the route itself (notice that the city index starts from 0).
|
||||
|
||||
|
||||
\section{Study the genetic algorithm dedicated components}
|
||||
|
||||
Study the {\tt gen\_algo.cpp} file located in the {\bf lesson5} directory
|
||||
using~:
|
||||
\begin{itemize}
|
||||
\item[$\bullet$] the ParadisEO-EO API documentation available at~:
|
||||
|
||||
\hspace{1cm}http$\,:$//eodev.sourceforge.net/eo/doc/html/index.html
|
||||
|
||||
\item[$\bullet$] the source files located in the {\bf tsp/src/} directory
|
||||
\end{itemize}
|
||||
|
||||
|
||||
\section{Customize the GA}
|
||||
|
||||
Make a backup (copy) of the cpp file {\tt gen\_algo.cpp}. You can now modify the
|
||||
original {\tt gen\_algo.cpp} and use the existing makefiles to compile it.
|
||||
|
||||
Edit and modify the {\tt gen\_algo.cpp} file~:
|
||||
\begin{itemize}
|
||||
\item[$\bullet$] Try to tune a few parameters of the GA
|
||||
(selection criteria, stopping criteria ...).
|
||||
\item[$\bullet$] Then, try to change the initialization of the population
|
||||
by applying one of the local searches on each individual.
|
||||
\end{itemize}
|
||||
|
||||
\smallskip
|
||||
To compile {\tt gen\_algo.cpp},you should use the
|
||||
command {\tt make} from {\bf build/lesson5}.
|
||||
|
||||
\medskip
|
||||
Finally, test your modifications on several TSP instances ({\tt berlin52},
|
||||
{\tt eil101} ...) and compare the results you get.
|
||||
|
||||
\end{document}
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
|
||||
######################################################################################
|
||||
### 1) Where must cmake go now ?
|
||||
######################################################################################
|
||||
|
||||
SUBDIRS(src)
|
||||
|
||||
######################################################################################
|
||||
|
||||
|
|
@ -0,0 +1,536 @@
|
|||
535
|
||||
36.49 7.49
|
||||
57.06 9.51
|
||||
30.22 48.14
|
||||
5.15 -3.56
|
||||
34.59 -106.37
|
||||
57.12 -2.12
|
||||
16.45 -99.45
|
||||
5.36 -0.1
|
||||
28.56 -13.36
|
||||
8.59 38.48
|
||||
12.5 45.02
|
||||
-34.48 138.38
|
||||
30.23 -9.33
|
||||
56.18 12.51
|
||||
36.4 -4.3
|
||||
40.38 8.17
|
||||
35.11 -3.5
|
||||
41.55 8.48
|
||||
-37.01 174.47
|
||||
38.17 -0.34
|
||||
36.42 3.13
|
||||
36.11 37.14
|
||||
35.14 -101.42
|
||||
31.58 35.59
|
||||
52.18 4.46
|
||||
61.1 -149.59
|
||||
39.57 32.41
|
||||
51.11 4.28
|
||||
17.08 -61.47
|
||||
43.37 13.22
|
||||
29.38 35.01
|
||||
59.39 17.55
|
||||
15.18 38.55
|
||||
-25.14 -57.31
|
||||
23.58 32.47
|
||||
37.54 23.44
|
||||
33.46 -84.31
|
||||
12.3 -70.01
|
||||
24.26 54.28
|
||||
36.55 30.48
|
||||
26.16 50.38
|
||||
40.29 50.01
|
||||
39.11 -76.4
|
||||
10.48 -74.52
|
||||
-16.11 -52.3
|
||||
10.25 45.01
|
||||
41.18 2.05
|
||||
32.22 -64.42
|
||||
41.56 -72.41
|
||||
40.39 17.57
|
||||
44.49 20.19
|
||||
9.21 34.31
|
||||
32.06 20.16
|
||||
52.29 13.24
|
||||
48.27 -4.25
|
||||
-19.48 3.45
|
||||
33.49 35.29
|
||||
54.39 -6.14
|
||||
35.48 -101.22
|
||||
4.24 18.31
|
||||
13.04 -59.3
|
||||
60.17 5.13
|
||||
44.48 -68.5
|
||||
33.14 44.14
|
||||
45.4 9.24
|
||||
33.34 -86.45
|
||||
52.27 -1.45
|
||||
42.33 9.29
|
||||
45.48 -108.37
|
||||
43.28 -1.32
|
||||
13.21 -16.4
|
||||
-3.19 29.19
|
||||
13.55 100.36
|
||||
12.38 -8.02
|
||||
55.44 9.09
|
||||
44.32 11.18
|
||||
12.57 77.4
|
||||
-15.41 34.58
|
||||
27.13 56.22
|
||||
-27.25 153.05
|
||||
44.5 -0.43
|
||||
4.42 -74.09
|
||||
50.47 -1.51
|
||||
19.05 72.52
|
||||
67.16 14.22
|
||||
42.22 -71
|
||||
53.03 8.48
|
||||
41.08 16.47
|
||||
46.55 7.3
|
||||
51.31 -2.35
|
||||
50.54 4.29
|
||||
-15.52 -47.55
|
||||
47.35 7.32
|
||||
48.1 16.13
|
||||
47.27 19.15
|
||||
-34.49 -58.32
|
||||
42.55 -78.38
|
||||
44.3 26.06
|
||||
49.27 2.07
|
||||
-4.15 15.15
|
||||
39.15 9.04
|
||||
30.08 31.24
|
||||
23.11 113.16
|
||||
33.33 -7.4
|
||||
-11.54 22.45
|
||||
4.49 -52.22
|
||||
52.13 0.11
|
||||
-35.19 149.12
|
||||
10.36 -66.59
|
||||
22.39 88.27
|
||||
52.5 -1.19
|
||||
49.01 2.33
|
||||
43.33 6.57
|
||||
45.4 -0.19
|
||||
39.37 19.55
|
||||
50.52 7.09
|
||||
41.59 -87.54
|
||||
41.48 12.36
|
||||
9.34 -13.37
|
||||
41.25 -81.51
|
||||
3.26 -76.25
|
||||
42.31 8.48
|
||||
-28.02 145.37
|
||||
7.11 79.53
|
||||
40.04 -83.04
|
||||
33.22 -7.35
|
||||
48.07 7.22
|
||||
44.22 28.29
|
||||
45.4 -0.19
|
||||
6.21 2.23
|
||||
55.37 12.39
|
||||
-33.58 18.36
|
||||
37.28 15.04
|
||||
10.27 -75.31
|
||||
-26.25 146.14
|
||||
39 17.05
|
||||
12.12 -68.57
|
||||
39.09 -84.2
|
||||
39.03 -84.2
|
||||
51.24 -3.12
|
||||
29.11 -81.03
|
||||
23.46 90.23
|
||||
14.45 42.59
|
||||
32.5 -96.51
|
||||
33.25 36.31
|
||||
-6.53 39.12
|
||||
42.34 18.16
|
||||
-29.58 30.57
|
||||
38.51 -77.02
|
||||
28.34 77.07
|
||||
39.46 -104.53
|
||||
32.46 -96.24
|
||||
26.16 50.1
|
||||
47.16 5.05
|
||||
33.52 10.47
|
||||
14.45 -17.3
|
||||
4.01 9.43
|
||||
19.08 30.26
|
||||
25.16 51.34
|
||||
49.22 0.1
|
||||
-8.45 115.1
|
||||
51.08 13.46
|
||||
-12.25 130.52
|
||||
42.14 -83.32
|
||||
42.13 -83.21
|
||||
53.26 -6.15
|
||||
51.17 6.45
|
||||
25.15 55.2
|
||||
0.03 32.26
|
||||
45.32 4.18
|
||||
55.57 -3.22
|
||||
51.27 5.23
|
||||
31.48 -106.16
|
||||
52.5 -1.19
|
||||
48.19 6.04
|
||||
40.07 33
|
||||
40.09 82.4
|
||||
40.42 -74.1
|
||||
50.44 -3.25
|
||||
-34.49 -58.32
|
||||
64.49 -147.51
|
||||
37.01 -7.58
|
||||
-11.35 27.31
|
||||
59.54 10.37
|
||||
41.49 12.15
|
||||
14.35 -61
|
||||
33.56 45.8
|
||||
-4.23 15.26
|
||||
43.49 11.12
|
||||
8.37 -13.12
|
||||
41.26 15.32
|
||||
50.02 8.34
|
||||
44.12 12.04
|
||||
-21.13 27.29
|
||||
28.27 -13.52
|
||||
53.29 -1
|
||||
-19.27 29.52
|
||||
54.23 18.28
|
||||
60.12 11.05
|
||||
24.57 10.1
|
||||
-22.5 -43.15
|
||||
55.52 -4.26
|
||||
45.22 5.2
|
||||
7.09 41.43
|
||||
44.25 8.5
|
||||
57.4 18.18
|
||||
41.54 2.46
|
||||
37.11 -3.47
|
||||
47 15.26
|
||||
51.09 -0.11
|
||||
14.34 -90.32
|
||||
46.14 6.07
|
||||
-2.09 -79.53
|
||||
52.28 9.42
|
||||
53.38 10
|
||||
60.19 24.58
|
||||
35.2 25.11
|
||||
30.2 120.51
|
||||
22.19 114.12
|
||||
31.4 6.09
|
||||
35.33 139.46
|
||||
21.2 -157.55
|
||||
29.59 -95.28
|
||||
38.57 -77.27
|
||||
43.06 -78.57
|
||||
38.52 1.22
|
||||
47.34 -97.27
|
||||
50.21 30.55
|
||||
-25.44 -54.28
|
||||
39.44 -86.17
|
||||
40.59 28.49
|
||||
38.17 27.1
|
||||
21.3 39.12
|
||||
49.13 -2.12
|
||||
40.38 -73.46
|
||||
11.33 43.1
|
||||
-6.09 106.51
|
||||
-26.08 28.15
|
||||
-3.22 36.38
|
||||
45.28 -73.44
|
||||
12.03 8.31
|
||||
34.34 69.12
|
||||
63.59 -22.37
|
||||
-1.58 30.08
|
||||
22.34 120.17
|
||||
24.54 67.09
|
||||
-6.18 155.43
|
||||
17.56 -76.48
|
||||
50.05 19.47
|
||||
15.36 32.33
|
||||
27.42 85.22
|
||||
3.08 101.33
|
||||
29.13 47.58
|
||||
-8.51 13.14
|
||||
10.36 -66.59
|
||||
36.04 -115.09
|
||||
33.56 -118.24
|
||||
53.52 -1.39
|
||||
48.58 2.27
|
||||
0.27 9.25
|
||||
34.52 33.38
|
||||
43.11 0
|
||||
59.49 30.17
|
||||
36.51 -2.22
|
||||
51.24 12.25
|
||||
51.25 12.14
|
||||
6.1 1.15
|
||||
40.46 -73.52
|
||||
33.57 -118.24
|
||||
50.38 5.27
|
||||
51.09 -0.11
|
||||
51.28 -0.27
|
||||
50.34 3.05
|
||||
-12.01 -77.07
|
||||
45.27 9.16
|
||||
38.46 -9.08
|
||||
46.13 14.28
|
||||
35.3 12.37
|
||||
48.14 14.11
|
||||
51.28 -0.27
|
||||
6.35 3.2
|
||||
27.56 -15.23
|
||||
-16.3 -68.11
|
||||
53.21 -2.53
|
||||
6.1 1.15
|
||||
51.53 -0.22
|
||||
-25.55 32.34
|
||||
-15.2 28.27
|
||||
4.27 114
|
||||
49.37 6.12
|
||||
-17.49 25.49
|
||||
25.41 32.43
|
||||
45.44 4.56
|
||||
13 80.11
|
||||
40.29 -3.34
|
||||
31.52 -4.13
|
||||
53.21 -2.16
|
||||
-3.04 -60
|
||||
10.34 -71.44
|
||||
-4.02 39.36
|
||||
46.22 15.47
|
||||
39.18 -94.44
|
||||
28.32 -81.2
|
||||
23.36 58.17
|
||||
44.25 8.5
|
||||
-37.44 144.54
|
||||
24.31 39.42
|
||||
-37.41 144.51
|
||||
19.26 -99.04
|
||||
12.07 -86.11
|
||||
2.01 45.19
|
||||
25.48 -80.17
|
||||
20.56 -89.41
|
||||
45.27 9.16
|
||||
35.45 10.45
|
||||
39.07 -94.36
|
||||
35.52 14.29
|
||||
4.11 73.32
|
||||
47.45 7.26
|
||||
55.33 13.22
|
||||
54.31 -1.25
|
||||
14.31 121.01
|
||||
55.58 37.25
|
||||
43.35 3.58
|
||||
-25.55 32.34
|
||||
-8.58 125.13
|
||||
43.26 5.13
|
||||
-20.26 57.41
|
||||
51.21 1.21
|
||||
44.53 -93.13
|
||||
53.52 27.33
|
||||
50.55 5.47
|
||||
29.59 -90.16
|
||||
-26.31 31.19
|
||||
48.08 11.42
|
||||
-34.5 -56.02
|
||||
45.38 8.43
|
||||
49.05 6.08
|
||||
-17.45 177.27
|
||||
40.53 14.18
|
||||
25.02 -77.28
|
||||
-1.19 36.56
|
||||
43.4 7.13
|
||||
55.02 -1.41
|
||||
45.56 6.06
|
||||
12.08 15.02
|
||||
32.56 129.56
|
||||
35.09 36.17
|
||||
13.29 2.1
|
||||
18.06 -15.57
|
||||
-13 28.39
|
||||
58.35 16.15
|
||||
35.45 140.23
|
||||
47.09 -1.36
|
||||
49.3 11.05
|
||||
52.41 1.17
|
||||
40.38 -73.46
|
||||
55.28 10.2
|
||||
46.26 30.41
|
||||
26.21 127.46
|
||||
35.26 -97.46
|
||||
40.54 9.31
|
||||
41.07 -95.55
|
||||
41.14 -8.41
|
||||
41.59 -87.54
|
||||
51.5 -8.29
|
||||
28.26 -81.19
|
||||
35.38 -0.37
|
||||
48.43 2.23
|
||||
34.47 135.27
|
||||
60.12 11.05
|
||||
51.12 2.52
|
||||
44.34 26.06
|
||||
12.21 -1.31
|
||||
43.26 -5.5
|
||||
18.34 -72.17
|
||||
48.43 2.23
|
||||
40.05 116.36
|
||||
-31.56 115.58
|
||||
4.52 7.02
|
||||
37.08 -76.3
|
||||
39.52 -75.15
|
||||
33.26 -112.01
|
||||
55.52 -4.26
|
||||
46.35 0.18
|
||||
40.3 -80.14
|
||||
-5.15 39.49
|
||||
39.33 2.44
|
||||
38.1 13.06
|
||||
11.33 104.51
|
||||
36.49 11.58
|
||||
-9.27 147.13
|
||||
10.36 -61.21
|
||||
9.05 -79.23
|
||||
50.06 14.16
|
||||
43.41 10.24
|
||||
42.26 14.11
|
||||
16.16 -61.32
|
||||
9.03 -79.24
|
||||
43.23 -0.25
|
||||
45.39 12.12
|
||||
31.37 -8.03
|
||||
34.03 -6.45
|
||||
-8.08 -34.55
|
||||
38.04 15.39
|
||||
64.08 -21.57
|
||||
16.54 96.09
|
||||
49.19 4.03
|
||||
36.23 28.07
|
||||
-29.43 -53.42
|
||||
-22.5 -43.15
|
||||
45.13 14.35
|
||||
44.01 12.37
|
||||
48.04 -1.44
|
||||
6.14 -10.22
|
||||
41.49 12.15
|
||||
14.1 145.15
|
||||
-32.55 -60.47
|
||||
51.57 4.26
|
||||
24.42 46.44
|
||||
33.37 73.06
|
||||
6.3 -58.15
|
||||
15.29 44.13
|
||||
13.42 -89.07
|
||||
32.44 -117.11
|
||||
-23 -47.08
|
||||
29.32 -98.28
|
||||
-17.56 31.06
|
||||
48.31 -24.8
|
||||
-33.23 -70.47
|
||||
42.54 -8.25
|
||||
33.14 44.14
|
||||
18.26 -69.4
|
||||
47.27 -122.18
|
||||
27 14.27
|
||||
37.33 126.48
|
||||
51.34 0.42
|
||||
-4.4 55.31
|
||||
37.37 -122.23
|
||||
31.12 121.2
|
||||
25.21 55.24
|
||||
16.45 -22.57
|
||||
1.21 103.54
|
||||
37.22 -121.56
|
||||
43.49 18.2
|
||||
9.58 -84.16
|
||||
9.59 -84.12
|
||||
18.26 -66.01
|
||||
40.31 22.58
|
||||
41.58 21.38
|
||||
40.53 -111.57
|
||||
36.58 -25.1
|
||||
52.42 -8.55
|
||||
42.42 23.24
|
||||
43.32 16.18
|
||||
-12.54 -38.2
|
||||
38.45 -90.22
|
||||
51.33 0.14
|
||||
59.39 17.55
|
||||
48.41 9.13
|
||||
38.54 16.15
|
||||
58.53 5.38
|
||||
55.58 37.25
|
||||
37.26 -5.54
|
||||
48.32 7.38
|
||||
52.22 13.3
|
||||
-33.56 151.1
|
||||
29.33 52.36
|
||||
47.48 13
|
||||
40.31 17.24
|
||||
41.19 69.24
|
||||
28.29 -16.2
|
||||
38.31 -28.43
|
||||
43.11 0
|
||||
28.29 -16.2
|
||||
14.02 -87.14
|
||||
52.29 13.24
|
||||
35.41 51.19
|
||||
41.2 19.47
|
||||
32.4 13.09
|
||||
43.37 1.23
|
||||
32.01 34.53
|
||||
22.49 5.27
|
||||
0.23 6.43
|
||||
35.43 -5.55
|
||||
-18.48 47.29
|
||||
33.56 8.06
|
||||
-24.42 -53.42
|
||||
25.04 121.33
|
||||
37.55 12.29
|
||||
51.23 -2.43
|
||||
45.12 7.39
|
||||
45.5 13.28
|
||||
45.39 12.12
|
||||
47.26 0.43
|
||||
36.18 -95.52
|
||||
36.51 10.14
|
||||
52.34 13.18
|
||||
35.33 139.46
|
||||
35.54 -83.53
|
||||
40.62 13.11
|
||||
-0.08 -78.29
|
||||
12.41 101.01
|
||||
13.45 -60.57
|
||||
44.55 4.58
|
||||
43.14 27.49
|
||||
45.3 12.21
|
||||
-23 -47.08
|
||||
48.07 16.33
|
||||
39.29 -0.29
|
||||
41.42 -4.51
|
||||
45.24 10.53
|
||||
38.57 -77.27
|
||||
52.1 20.58
|
||||
36.45 -6.04
|
||||
53.19 -113.35
|
||||
44.53 -63.31
|
||||
45.41 -74.02
|
||||
45.19 -75.4
|
||||
46.48 -71.24
|
||||
42.16 -82.58
|
||||
48.57 -54.34
|
||||
45.28 -73.44
|
||||
49.11 -123.1
|
||||
49.55 -97.14
|
||||
51.07 -114.01
|
||||
47.37 -52.45
|
||||
43.41 -79.38
|
||||
44.06 15.21
|
||||
45.45 16.04
|
||||
41.4 -1.03
|
||||
-6.13 39.13
|
||||
47.28 8.33
|
||||
51.33 0.14
|
||||
24.58 91.53
|
||||
|
|
@ -0,0 +1,53 @@
|
|||
52
|
||||
565 575
|
||||
25 185
|
||||
345 750
|
||||
945 685
|
||||
845 655
|
||||
880 660
|
||||
25 230
|
||||
525 1000
|
||||
580 1175
|
||||
650 1130
|
||||
1605 620
|
||||
1220 580
|
||||
1465 200
|
||||
1530 5
|
||||
845 680
|
||||
725 370
|
||||
145 665
|
||||
415 635
|
||||
510 875
|
||||
560 365
|
||||
300 465
|
||||
520 585
|
||||
480 415
|
||||
835 625
|
||||
975 580
|
||||
1215 245
|
||||
1320 315
|
||||
1250 400
|
||||
660 180
|
||||
410 250
|
||||
420 555
|
||||
575 665
|
||||
1150 1160
|
||||
700 580
|
||||
685 595
|
||||
685 610
|
||||
770 610
|
||||
795 645
|
||||
720 635
|
||||
760 650
|
||||
475 960
|
||||
95 260
|
||||
875 920
|
||||
700 500
|
||||
555 815
|
||||
830 485
|
||||
1170 65
|
||||
830 610
|
||||
605 625
|
||||
595 360
|
||||
1340 725
|
||||
1740 245
|
||||
|
|
@ -0,0 +1,102 @@
|
|||
101
|
||||
41 49
|
||||
35 17
|
||||
55 45
|
||||
55 20
|
||||
15 30
|
||||
25 30
|
||||
20 50
|
||||
10 43
|
||||
55 60
|
||||
30 60
|
||||
20 65
|
||||
50 35
|
||||
30 25
|
||||
15 10
|
||||
30 5
|
||||
10 20
|
||||
5 30
|
||||
20 40
|
||||
15 60
|
||||
45 65
|
||||
45 20
|
||||
45 10
|
||||
55 5
|
||||
65 35
|
||||
65 20
|
||||
45 30
|
||||
35 40
|
||||
41 37
|
||||
64 42
|
||||
40 60
|
||||
31 52
|
||||
35 69
|
||||
53 52
|
||||
65 55
|
||||
63 65
|
||||
2 60
|
||||
20 20
|
||||
5 5
|
||||
60 12
|
||||
40 25
|
||||
42 7
|
||||
24 12
|
||||
23 3
|
||||
11 14
|
||||
6 38
|
||||
2 48
|
||||
8 56
|
||||
13 52
|
||||
6 68
|
||||
47 47
|
||||
49 58
|
||||
27 43
|
||||
37 31
|
||||
57 29
|
||||
63 23
|
||||
53 12
|
||||
32 12
|
||||
36 26
|
||||
21 24
|
||||
17 34
|
||||
12 24
|
||||
24 58
|
||||
27 69
|
||||
15 77
|
||||
62 77
|
||||
49 73
|
||||
67 5
|
||||
56 39
|
||||
37 47
|
||||
37 56
|
||||
57 68
|
||||
47 16
|
||||
44 17
|
||||
46 13
|
||||
49 11
|
||||
49 42
|
||||
53 43
|
||||
61 52
|
||||
57 48
|
||||
56 37
|
||||
55 54
|
||||
15 47
|
||||
14 37
|
||||
11 31
|
||||
16 22
|
||||
4 18
|
||||
28 18
|
||||
26 52
|
||||
26 35
|
||||
31 67
|
||||
15 19
|
||||
22 22
|
||||
18 24
|
||||
26 27
|
||||
25 24
|
||||
22 27
|
||||
25 21
|
||||
19 21
|
||||
20 26
|
||||
18 18
|
||||
35 35
|
||||