Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
projet-optimisation
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
3
Issues
3
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Aliaume Lopez
projet-optimisation
Commits
1bb139d5
Commit
1bb139d5
authored
Jan 09, 2017
by
Aliaume Lopez
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
prout prout
parent
c56565e1
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
107 additions
and
22 deletions
+107
-22
new_separation.py
new_separation.py
+4
-4
rapport/presentation.tex
rapport/presentation.tex
+78
-18
rapport/rapport_projet_opti.bib
rapport/rapport_projet_opti.bib
+25
-0
No files found.
new_separation.py
View file @
1bb139d5
...
...
@@ -256,9 +256,9 @@ def algorithme_separation(graphe, filename="default_separation_output",epsilon =
sol
=
res
[
"x"
]
value
=
np
.
vdot
(
c
,
sol
)
chemin_majorant
=
convert_to_tour
(
graphe
,
convert_to_edges
(
graphe
,
sol
))
chemin_majorant
=
h
.
heuristique
(
graphe
,
chemin_majorant
)
res
[
"opt*"
]
=
graphe
.
cout_chemin
(
chemin_majorant
)
#
chemin_majorant = convert_to_tour(graphe,convert_to_edges (graphe,sol))
#
chemin_majorant = h.heuristique(graphe, chemin_majorant)
res
[
"opt*"
]
=
0
#
graphe.cout_chemin (chemin_majorant)
affiche
(
res
)
...
...
@@ -372,4 +372,4 @@ def test_separation_on_file (filename):
test_separation_on_file
(
"
berlin52
"
)
test_separation_on_file
(
"
u574
"
)
rapport/presentation.tex
View file @
1bb139d5
...
...
@@ -94,9 +94,12 @@
\frametitle
{
Applications
}
\begin{itemize}
\item
Logistique
\item
Logistique
\item
Réseaux
\item
Robotique
\cite
{
brassai2012optimization
}
\item
Biologie (génétique)
\item
etc...
\item
Machine Learning~: prédiction des fonctions
des protéines
\cite
{
Johnson2006
}
\end{itemize}
\end{frame}
...
...
@@ -105,7 +108,20 @@
\begin{frame}
\frametitle
{
TSPLIB
}
IMMONDE
\begin{block}
{
TSPLIB95
}
TSPLIB is a library of sample instances for the TSP (and related problems) from various sources and of various types.
\end{block}
\begin{exampleblock}
{
Parsing
}
\begin{itemize}
\item
Matrice
\item
Euclidien
\item
Distance GÉO
\end{itemize}
\end{exampleblock}
\end{frame}
...
...
@@ -193,10 +209,10 @@
\begin{block}
{
coucou
}
\begin{figure}
\centering
\subfloat
[Résultat partiel
\label{fig:approx:berlin:approx2}]
{
\subfloat
[Résultat partiel
]
{
\includegraphics
[width=5cm]
{
../images/00154
_
APPROX
_
kroA100
_
glouton.png
}
}
\subfloat
[Résultat final
\label{fig:approx:berlin:approx2}
]
{
\subfloat
[Résultat final ]
{
\includegraphics
[width=5cm]
{
../images/00
_
APPROX
_
kroA100
_
glouton.png
}
}
\caption
{
Algorithme glouton en utilisant les distances
}
...
...
@@ -228,10 +244,10 @@
\begin{exampleblock}
{
Exemple~: Berlin51, 51 points, optimum à 7542
}
\begin{figure}
\centering
\subfloat
[2-Approx
\label{fig:approx:berlin:approx2}
]
{
\subfloat
[2-Approx]
{
\includegraphics
[width=3cm]
{
../images/00
_
APPROX
_
berlin52
_
approx2.png
}
}
\subfloat
[2-Approx + 2OPT
\label{fig:approx:berlin:approx2opt}
]
{
\subfloat
[2-Approx + 2OPT]
{
\includegraphics
[width=3cm]
{
../images/00
_
APPROX
_
berlin52
_
approx2
_
2opt.png
}
}
...
...
@@ -278,14 +294,40 @@
\end{frame}
\begin{frame}
\frametitle
{
Présentation sous forme ILP
}
\begin{exampleblock}
{
Exemple non entier~: ts225
}
\begin{figure}
\centering
\subfloat
[Solution optimale]
{
\includegraphics
[width=4cm]
{
../images/0CVX
_
ts225
_
separationfinie.png
}
}
\subfloat
[Conversion via glouton]
{
\includegraphics
[width=4cm]
{
../images/0CVX
_
ts225
_
approxPL.png
}
}
\caption
{
Programme linéaire sur ts225
}
\end{figure}
\end{exampleblock}
\end{frame}
\begin{frame}
\frametitle
{
Présentation sous forme ILP
}
\begin{alertblock}
{
Nombre de contraintes
}
exponentiel
Retirer les contraites de
\emph
{
sous-tours
}
et ne les ajouter que pour améliorer la solution.
\end{alertblock}
\begin{block}
{
Oracle de séparation
}
c'est la solution
Permet de trouver quelle contrainte ajouter.
\end{block}
\begin{block}
{
Algorithme de séparation
}
\[
v
_
1
\leq
v
_
2
\leq
\dots
\leq
v
^
*
\leq
v
_{
\textrm
{
entier
}}
\]
\end{block}
\end{frame}
...
...
@@ -310,6 +352,22 @@
\end{frame}
\begin{frame}
\frametitle
{
Coupe minimale et séparation
}
\begin{exampleblock}
{
Exemple~:
}
\begin{figure}
\centering
\subfloat
[Sans contraintes (7337)]
{
\includegraphics
[width=4cm]
{
../images/0CVX
_
rd100
_
simple.png
}
}
\subfloat
[Après séparation (7899)]
{
\includegraphics
[width=4cm]
{
../images/0CVX
_
rd100
_
separationfinie.png
}
}
\caption
{
Programme linéaire sur ts225 (7910)
}
\end{figure}
\end{exampleblock}
\end{frame}
\subsection
{
Intégralité ?
}
\section
{
Outils associés
}
...
...
@@ -371,19 +429,21 @@
\begin{frame}
\begin{example}
{
Sur un problème avec 657 points
}
\begin{example
block
}
{
Sur un problème avec 657 points
}
\begin{figure}
\centering
\subfloat
[Solution ($48452$)
\label{fig:approx:berlin:approx2}
]
{
\subfloat
[Solution ($48452$)]
{
\includegraphics
[width=5cm]
{
../images/0CVX
_
d657
_
separationfinie.png
}
}
\subfloat
[Tour associé ($51181$)
\label{fig:approx:berlin:approx2opt}]
{
\subfloat
[Tour associé ($51181$)
]
{
\includegraphics
[width=5cm]
{
../images/0CVX
_
d657
_
approxPL.png
}
}
\caption
{
Le problème d657 de valeur optimale
$
48912
$}
\label
{
fig:pl:d657
}
\end{figure}
\end{example}
\end{exampleblock}
NOTE: Glouton = 60110 / Glouton+2OPT = 50826 / Approx2 = 66343 /
\end{frame}
...
...
@@ -430,13 +490,13 @@ Avec $D_{E'}$ la matirce d'incidence du graphe restreint à $E'$, et $G_{E'}$ la
%
\section*{Bibliographie}
\section*
{
Bibliographie
}
%
\begin{frame}[allowframebreaks]
\begin{frame}
[allowframebreaks]
%
\bibliographystyle{apalike}
%\bibliography{presentation
}
\bibliographystyle
{
apalike
}
\bibliography
{
rapport
_
projet
_
opti
}
%
\end{frame}
\end{frame}
\end{document}
rapport/rapport_projet_opti.bib
View file @
1bb139d5
...
...
@@ -175,3 +175,28 @@
year
=
{2014}
,
volume
=
{abs/1309.6124}
}
@Article
{
Johnson2006
,
author
=
"Johnson, Olin
and Liu, Jing"
,
title
=
"A traveling salesman approach for predicting protein functions"
,
journal
=
"Source Code for Biology and Medicine"
,
year
=
"2006"
,
volume
=
"1"
,
number
=
"1"
,
pages
=
"3"
,
abstract
=
"Protein-protein interaction information can be used to predict unknown protein functions and to help study biological pathways."
,
issn
=
"1751-0473"
,
doi
=
"10.1186/1751-0473-1-3"
,
url
=
"http://dx.doi.org/10.1186/1751-0473-1-3"
}
@article
{
brassai2012optimization
,
title
=
{Optimization of robotic mobile agent navigation}
,
author
=
{Brassai, S{\'a}ndor Tiham{\'e}r and Iantovics, Barna and Enachescu, Calin}
,
journal
=
{Studies in Informatics and Control, ISSN}
,
pages
=
{1220--1766}
,
year
=
{2012}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment