Précédent   Forum des professionnels en informatique > Autres langages > Algorithmes
Algorithmes Forum d'entraide sur l'algorithmique, l'intelligence artificielle, le traitement numérique d'images et les mathématiques. Avant de poster : Cours d'algorithmique
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/02/2012, 09h53   #1
Membre éprouvé
 
Homme
Ingénieur développement logiciels
Inscription : avril 2009
Messages : 501
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Service public

Informations forums :
Inscription : avril 2009
Messages : 501
Points : 490
Points : 490
Par défaut Recherche de codes postaux dans un rayon de prédéfini

Bonjour,

Je ne savais pas vraiment où poster ce sujet, alors je le place dans une section la plus générale possible. Peut-être en base de données aurait été plus logique.

Bref, je me pose une question à propos des moteur de recherche en fonction d'une distance. Par exemple, fut un temps, sur ebay pour rechercher un objet, on peut donner un code postal et un rayon de recherche.

Ma question est alors, comment cette recherche se fait-elle ? J'imagine qu'il y a une fonction qui renvoie tous les codes postaux dans un rayon de n km. Mais comment elle fonctionne ? Et comment se passe le filtre qui renseigne si oui ou non un filtre est dans le rayon ?
oneagaindoguys est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/02/2012, 16h56   #2
Membre du Club
 
Homme
Développeur .NET
Inscription : février 2012
Messages : 16
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur .NET
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2012
Messages : 16
Points : 42
Points : 42
Citation:
Envoyé par oneagaindoguys Voir le message
Bonjour,

J'imagine qu'il y a une fonction qui renvoie tous les codes postaux dans un rayon de n km. Mais comment elle fonctionne ?
Bonjour,

J'imagine quelque chose comme l'algo ci dessous :
a) Pour chaque département, faire la liste des 8 Plus grandes villes
soit une liste d'environ 700 à 800 villes

b) faire une matrice qui donne la distance entre 2 villes quelconques
soit une matrice à environ 560 000 eléments

c) pour un code postal donné par l'utilisateur du site, en déduire bureau principal de distribution . le Bureau principal de distribution est donné par les 3 premiers caractères du code postal
exemple1 : 34000 ou 34060 ou 34070 ou 34080 = Montpellier

NOTE : Lors de la création du code postal à cinq chiffres en 1972 une circulaire a été envoyée à chaque bureau distributeur pour que les huit principales villes de chaque département français possède un code finissant par 100, 200, 300... jusqu'à 800 et les préfectures se terminant par "000" (source: wikipedia)

d) en utilisant la matrice , et le bureau de distribution fourni, rechercher toutes les villes situés à une distance <= au rayon donné

e) faire la liste de tous les objets situés dans ces villes ou situés dans les villages dont le code postal se référe à un bureau de distribution appartenant à cette liste de villes
cordialement
okaparka est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/02/2012, 19h04   #3
Expert Confirmé Sénior
 
Avatar de Graffito
 
Inscription : janvier 2006
Messages : 4 717
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 4 717
Points : 5 029
Points : 5 029
Bonjour,

Pour implémenter une distance à vol d'oiseau, on peut utiliser les données suivantes pour la France.

L'onglet "Commune" du fichier (1) fournit la correspondance entre code INSEE ("code département" + "code commune") et code postal + nom de commune + ...

Le fichier (2) RGC_2009.TXT fournit à partir du Code INSEE ("DEP" + "COM") les coordonnées géographiques ("LONGI_DMS" + "LATI_DMS").

En croisant les 2 fichiers, on peut associer des coordonnées géorgraphiques à un code postal. Il ne reste plus qu'à faire un simple calcul de distance orthodromique :
d=acos(sin(lat1)*sin(lat2)+cos(lat1)*cos(lat2)*cos(lon1-lon2))
d, lon et lat en radians / 2 * PI radians = 40 000 km

Lien pour le téléchargement des données (1) "2Mo - XLS" et (2) "2Mo - TAB":
http://www.infosig.net/les-donnees-s...-sig-gratuites
__________________
" Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson
Graffito est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/02/2012, 13h24   #4
Membre éprouvé
 
Homme
Ingénieur développement logiciels
Inscription : avril 2009
Messages : 501
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Service public

Informations forums :
Inscription : avril 2009
Messages : 501
Points : 490
Points : 490
Citation:
Envoyé par Graffito Voir le message
Bonjour,

Pour implémenter une distance à vol d'oiseau, on peut utiliser les données suivantes pour la France.

L'onglet "Commune" du fichier (1) fournit la correspondance entre code INSEE ("code département" + "code commune") et code postal + nom de commune + ...

Le fichier (2) RGC_2009.TXT fournit à partir du Code INSEE ("DEP" + "COM") les coordonnées géographiques ("LONGI_DMS" + "LATI_DMS").

En croisant les 2 fichiers, on peut associer des coordonnées géorgraphiques à un code postal. Il ne reste plus qu'à faire un simple calcul de distance orthodromique :
d=acos(sin(lat1)*sin(lat2)+cos(lat1)*cos(lat2)*cos(lon1-lon2))
d, lon et lat en radians / 2 * PI radians = 40 000 km

Lien pour le téléchargement des données (1) "2Mo - XLS" et (2) "2Mo - TAB":
http://www.infosig.net/les-donnees-s...-sig-gratuites
Il s'agit d'une idée ou c'est réellement comme ça que ça fonctionne ?
oneagaindoguys est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/02/2012, 01h20   #5
Expert Confirmé Sénior
 
Avatar de Graffito
 
Inscription : janvier 2006
Messages : 4 717
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 4 717
Points : 5 029
Points : 5 029
Citation:
Il s'agit d'une idée ou c'est réellement comme ça que ça fonctionne ?
Dans la grande majorité des cas, c'est bien le principe.

Trouver la distance par la route suppopse des calculs de plus court chemin qui demandent du temps machine (ainsi qu'une cartographie routière détaillée).
__________________
" Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson
Graffito est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/02/2012, 11h29   #6
Membre éprouvé
 
Homme
Ingénieur développement logiciels
Inscription : avril 2009
Messages : 501
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Service public

Informations forums :
Inscription : avril 2009
Messages : 501
Points : 490
Points : 490
D'accord, merci pour votre aide. Merci pour ces renseignements. Les fichiers sont régulièrement mis à jour ?
oneagaindoguys est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h15.


 
 
 
 
Partenaires

Hébergement Web