Inscription / Connexion Nouveau Sujet
Niveau Master
Partager :

Recuit Simulé

Posté par
johntrump
09-12-16 à 00:38

Bonjour,

Je suis à la recherche d'une idée d'une application du recuit simulé, j'ai pensé au problème du sac à dos mais on m'a dit que j'aurai du mal a calculer la probabilité d'acceptation (algorithme de métropolis) à cause de la probabilité stationnaire ou je sais pas...

J'ai déjà appliqué le recuit simulé sur le problème du voyageur mais je n'ai pas vraiment compris mathématiquement, je sais qu'on avait une matrice en abscisse et ordonnée les numéro des ville et la valeur était la distance des villes V[i,j]=d(i,j) :

Citation :
##############   Algorithme du recuit #################################################
n <- 200000  //Nombre d'itération
N <- 40 // Nombre de ville
beta <- 0.002 //paramètre ????
g_old <- 1:N //Vecteur contenant l'ordre des villes qui contient le trajet
g_best <- 1:N //Vecteur contenant l'ordre des villes qui contient le trajet

Hg <- function(G){ //Calcul de la distance du trajet du vecteur G qui comporte l'ordre des villes
  H <- V[G[N]+1,1]+V[G[1],1]
  for (i in 1: (N-1)) {
    H <- H + V[G[i],G[i+1]]
  }
  return(H)
}

H_old <- Hg(g_old) //Calcul de la distance du trajet g_old
resultat <- 1:n
for (j in 1:n) {
  beta_j <- beta*sqrt(j)
  point <- sample(1:N,2) //permutation de deux points du vecteur g_old
  g_new <-  g_old
  g_new[point[1]] <-g_old[point[2]]  
  g_new[point[2]] <-g_old[point[1]]  

# calcul H_new, la distance du nouveau vecteur dont deux point de g_old ont été permuté
  H_new <- Hg(g_new)
  alpha <-  min(exp(-beta_j*(H_new-H_old)),1) //algo de metropolis
  u <- runif(1,0,1)
  if (H_new < H_old){
    g_best <- g_new
  }
  if (u<alpha){
    g_old <- g_new
    H_old <- H_new
  }
  
  resultat[j] <- H_old
}


Je me demandais si je pouvais le faire avec le problème du sac a dos...



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1741 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !