Chapitre 2 Optimisation en nombres entiers - PowerPoint PPT Presentation

1 / 40
About This Presentation
Title:

Chapitre 2 Optimisation en nombres entiers

Description:

Un algorithme H est une e-approximation pour le probl me de minimisation P avec ... o k est la constante de Boltzmann. k=1,380 662 10-23 joules/degr ... – PowerPoint PPT presentation

Number of Views:59
Avg rating:3.0/5.0
Slides: 41
Provided by: michelbi9
Category:

less

Transcript and Presenter's Notes

Title: Chapitre 2 Optimisation en nombres entiers


1
Chapitre 2Optimisation en nombres entiers
  • Optimisation B
  • Génie Mécanique

2
ApproximationHeuristiques

3
Approximation
  • Idée trouver une solution sous-optimale
    rapidement et mesurer sa qualité
  • Définition
  • Un algorithme H est une e-approximation pour le
    problème de minimisation P avec coût optimal Z
    si, pour toute instance de P, lalgorithme
    fonctionne en temps polynomial et identifie une
    solution admissible de coût ZH telle que
  • ZH (1e)Z

4
Approximation
  • Exemple couverture minimale
  • Soit un graphe G(V,E)
  • V est lensemble des nuds
  • E est lensemble des arêtes
  • Trouver le plus petit ensemble de nuds C?V tel
    que chaque arête du graphe ait au moins une
    extrémité dans C. On dit que C couvre les arêtes.
  • Problème très difficile (NP-complet)

5
Approximation
  • Algorithme simple
  • C ?
  • Tant que E? ?
  • Choisir une arête (u,v) de E
  • Ajouter u et v à C
  • Supprimer u et v ainsi que les arêtes incidentes

6
Approximation
7
Approximation
8
Approximation
9
Approximation
10
Approximation
11
Approximation
12
Approximation
13
Approximation
14
Approximation
  • Cet algorithme va trouver un ensemble de nuds
    couvrant toutes les arêtes
  • Chaque arête choisie par lalgorithme sera
    couverte par un nud différent de C
  • Ces arêtes nont aucun nud en commun
  • Si on prend une couverture quelconque, elle devra
    contenir au moins un nud de chaque arête
    choisie.
  • La couverture optimale ne peut donc pas être plus
    petite que la moitié de C.
  • Il sagit dune 1-approximation

15
Approximation
  • Pire des cas

Solution optimale
  • Solution de lalgorithme 8 nuds (CV)
  • Solution optimale 4 nuds

16
Heuristiques
  • Définition
  • Une heuristique est une technique qui cherche une
    bonne solution (i.e. presque optimale) en un
    temps de calcul raisonnable sans être capable de
    garantir ni loptimalité ni ladmissibilité.

17
Heuristiques
  • La plupart des heuristiques sont basées sur la
    notion de voisinage.
  • Un voisinage est lensemble des solutions
    obtenues à partir dune solution donnée en
    effectuant un petit nombre de transformations
    simples.
  • La définition de voisinage dépend du problème.

18
Heuristiques
  • Exemple
  • Pour un programme linéaire en variables 0/1, le
    voisinage dune solution (x1,,xn) est
    lensemble des (y1,,yn) telles que
  • yi xi si i?k
  • yk 1-xk
  • pour un k donné.

19
Heuristiques
  • Optimisation locale
  • Soit une solution xc
  • Répéter
  • Choisir x voisin de xc tel que f(x) lt f(xc)
  • Remplacer xc par x
  • Jusquà ce que f(x) gt f(xc) pour tout x voisin de
    xc.

20
Heuristiques
  • Notes
  • Facile à implémenter
  • Potentiellement lent
  • Trouve un minimum local

21
Heuristiques
  • Recuit simulé
  • Motivation thermodynamique
  • La structure dun solide refroidi dépend de la
    vitesse de refroidissement
  • A température T, la probabilité dune
    augmentation dénergie damplitude E est donnée
    par
  • Prob(E) exp(-E/kT)
  • où k est la constante de Boltzmann
  • k1,380 662 10-23 joules/degré absolu

22
Heuristiques
  • Algorithme de recuit simulé
  • Soit une solution initiale xc
  • Soit une température initiale T0
  • Soit une fonction de réduction de température a
  • Répéter
  • Répéter k fois
  • Choisir au hasard un voisin x de xc
  • d f(x) f(xc)
  • Si d lt 0 alors xc x
  • Sinon
  • choisir r aléatoirement entre 0 et 1
  • Si r lt exp(-d/T) alors xc x
  • T a(T)

23
Heuristiques
  • Notes
  • Algorithme aléatoire
  • Chaque exécution peut produire une solution
    différente
  • Exemple
  • f(x)4 - 19.0167x 36.39167x2-25.2917x3
    8.041667x4-1.19167x5 0.066667x6

24
(3.1045,1.9741)
(0.4052,0.7909)
(5.5541,-1.1628)
25
Heuristiques
  • Paramètres utilisés
  • xc 3
  • T0 10000
  • a(T) T / tred
  • k 100
  • Définition du voisinage de x
  • x-0.1,x0.1
  • Résultats obtenus sur 100 exécutions

26
0.4
3.1
5.6
27
0.4
3.1
5.6
28
0.4
3.1
5.6
29
0.4
3.1
5.6
30
Heuristiques
  • Notes
  • Plus la température est diminuée lentement, plus
    la probabilité de trouver le minimum global
    augmente.
  • Les paramètres présentés ici sont loin dêtre
    optimaux.
  • La méthode peut requérir énormément de temps
    calcul.

31
Heuristiques
  • Algorithme génétique
  • Utilise, à chaque itération, un ensemble de
    solutions, appelé population.
  • Chaque individu de cette population est codé en
    un ensemble de k symboles, appelé chromosome.
  • Exemple notation binaire
  • Individu 19 Chromosome 10011
  • Pour chaque chromosome x, on peut calculer son
     aptitude , son  niveau de qualité  f(x)

32
Heuristiques
  • Algorithme génétique
  • Initialisation définir une population initiale
    P(0)
  • A chaque itération k
  • Sélection
  • Evolution
  • Mutation

33
Heuristiques
  • Sélection
  • Pour chaque chromosome xi?P(k), on définit
  • pi f(xi)/?y?P(k)f(y)
  • Cela définit une loi de probabilité sur la
    population.
  • Choisir les individus reproducteurs aléatoirement
    selon cette loi de probabilité.

34
Heuristiques
  • Sélection (exemple)
  • maximiser f(x)x3-60x2900x100

35
Heuristiques
  • Sélection (exemple)

36
Heuristiques
  • Evolution
  • Deux parents sont choisis aléatoirement
  • On effectue un croisement
  • On sélectionne aléatoirement un emplacement i
    entre 1 et k
  • On échanges les  gênes  des deux parents situés
    après lemplacement i
  • On remplace les parents par les  enfants 

37
Heuristiques
  • Evolution (exemple)
  • Parents 4 et 1
  • (21) 10101 10111 (23)
  • (19) 10011 10001 (17)

38
Heuristiques
  • Mutation
  • On change les symboles de chaque chromosome avec
    une probabilité pm (souvent très petite)

39
Heuristiques
  • Mutation (exemple)
  • pm0.1

40
Heuristiques
  • Notes
  • Énormément de variantes possibles
  • Il faut adapter les processus de sélection,
    dévolution et de mutation à chaque problème
    spécifique
Write a Comment
User Comments (0)
About PowerShow.com