IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

R Discussion :

Algorithme du voyageur de commerce


Sujet :

R

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Algorithme du voyageur de commerce
    Bonjour,

    Je cherche à faire tourner les algorithmes suivants :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    maketsp=function(nCities)
    {
        positions = 2*runif(nCities,2)-1
        distances = matrix(rep(0,(nCities*nCities),nCities,nCities)) 
        for (i in seq(nCities))
        {
            for (j in seq(i+1,nCities))
            {
                distances[i,j] = sqrt((positions[i,0] - positions[j,0])**2 + (positions[i,1] - positions[j,1])**2)
                distances[j,i] = distances[i,j]
                print (distances)
            }
        }
    }
    Le code d'erreur est le suivant :

    Error in positions[i, 0] : incorrect number of dimensions
    In addition: Warning message:
    In runif(nCities, 2) : NAs produced
    Je ne vois pas comment implémenter la matrice distance

    Le deuxième algorithme est le suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    greedy=function(distances)
    {
        nCities = seq(1,distances)
        distanceTravelled = 0
     
        cityOrder = seq(0,nCities)
        cityOrder[0] = runif(nCities)
        distances[,cityOrder[0]] = Inf
     
        for ( i in seq(nCities-1))
        {
            cityOrder[i+1] = wich.min(distances[cityOrder[i],])
            distanceTravelled  = distances[cityOrder[i],cityOrder[i+1]]
            dist[,cityOrder[i+1]] = Inf
            distanceTravelled = distances[cityOrder[nCities-1],0]
            return(cityOrder)
            return(distanceTravelled)
        }
    }
    L'erreur est la suivante :

    Error in seq.default(0, nCities) : 'to' must be of length 1
    Les objets sont des matrices mais je ne sais pas comment les implémenter.
    Dernière modification par Invité ; 19/03/2014 à 21h53. Motif: [CODE] mon code [/CODE] (sélection du code puis bouton # de l'éditeur)

Discussions similaires

  1. Réponses: 6
    Dernier message: 17/12/2015, 17h42
  2. Algorithme du Voyageur de Commerce ou TSP en FORTRAN
    Par MINOTE dans le forum Fortran
    Réponses: 0
    Dernier message: 20/12/2009, 10h30
  3. Voyageur de commerce & algorithme glouton
    Par tagsOf dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 27/11/2009, 22h15
  4. Application d'un algorithme génétique au voyageur de commerce
    Par khayyam90 dans le forum Algorithmes et structures de données
    Réponses: 0
    Dernier message: 11/12/2008, 14h21
  5. Voyageur de commerce
    Par senke dans le forum Algorithmes et structures de données
    Réponses: 8
    Dernier message: 27/09/2002, 12h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo