Procédé, programme d'ordinateur et machine de tri postal automatisé
La présente invention concerne un tri postal automatisé.
Des machines automatiques de tri postal comportent couramment une glissière dans laquelle • -un courrier progresse, ainsi que des capteurs relevant sur le courrier des informations. • Ces informations peuvent être par exemple un code postal de l'adresse de destination, ou encore un poids du courrier. Ainsi, de tels capteurs déterminent, notamment par pesée du courrier et/ou par lecture optique et reconnaissance de caractères, le poids, le code postal précité, ou autre, en tant que valeurs qui sont alors associées à des critères de .tri. La machine comporte alors une pluralité de réceptacles, en tant que bacs de tri, en aval de la glissière principale et, en fonction des valeurs captées et associées aux critères de tri, le courrier est acheminé vers l'un des réceptacles.
Actuellement, les machines existantes assurent un tri par rapport à un seul critère ou, au mieux, par rapport à deux critères à la fois. En outre, aucune machine existante ne garantit un non-recouvrement de toutes les combinaisons possibles de critères, ce qui est susceptible, bien entendu, de générer des erreurs de tri.
La présente invention vient améliorer la situation.
L'un des buts de la présente invention est de garantir la prise en compte de l'exhaustivité des combinaisons possibles de critères.
Un autre but de la présente invention est de garantir le non-recouvrement de l'ensemble des combinaisons possibles de critères.
Elle propose à cet effet tout d'abord un procédé d'automatisation de tri postal, dans lequel : a) on définit une pluralité de critères de tri; b) on sélectionne une ou plusieurs valeurs possibles à affecter à chaque critère; et c) on forme au moins une fonction booléenne dans laquelle les valeurs possibles associées à des critères distincts sont combinées par l'opérateur logique "ET", tout en autorisant une combinaison par l'opérateur logique "OU", entre tout ou partie des valeurs possibles associées à un même critère.
Ainsi, on comprendra qu'en appliquant aux valeurs de critères de tri les combinaisons logiques telles que définies en référence à l'étape c) ci-avant, on permet un choix exhaustif de critères de tri différents tout en garantissant un non-recouvrement des combinaisons possibles entre valeurs de critère.
Le procédé au sens de l'invention est destiné à être mis en œuvre par ordinateur judicieusement programmé. A ce titre, la présente invention vise aussi un programme d'ordinateur pour la mise en œuvre du procédé, stocké dans
une mémoire d'un ordinateur ou sur un support amovible destiné à coopérer avec un lecteur que comporte l'ordinateur. Le programme au sens de l'invention comporte de préférence : • une table de données comportant une pluralité de valeurs possibles de critères de tri, et •' des instructions : al) pour inviter un utilisateur, à l'initialisation du programme, à sélectionner dans la table une pluralité de critères de tri, ainsi qu'une ou plusieurs valeurs possibles à affecter à chaque critère de tri ; et bl) pour former au moins une fonction booléenne dans laquelle les valeurs sélectionnées qui sont associées à des critères distincts sont combinées par l'opérateur logique "ET".
L'ordinateur précité, lui-même, peut être un équipement d'une machine automatique de .tri postal, comprenant par ailleurs : une glissière principale dans laquelle un courrier est destiné à progresser, des capteurs agencés dans cette glissière principale et destinés à relever sur le courrier un jeu de valeurs associées à des critères de tri,
- une pluralité de réceptacles en aval de la glissière principale, et des moyens destinés à orienter le courrier vers un réceptacle.
L'ordinateur comporte, de préférence, des circuits d'entrée aptes à recevoir des signaux représentatifs des valeurs relevées précitées, des circuits de sortie pour commander les moyens d'orientation du courrier, et une mémoire dans laquelle est stocké un programme d'ordinateur comportant, au sens de l'invention, des instructions pour :
• estimer, pour chaque jeu de valeurs relevées, une fonction booléenne combinant les valeurs relevées par l'opérateur logique "ET", et
• affecter une valeur de réceptacle à la valeur estimée.
D'autres caractéristiques et avantages de l'invention apparaîtront à l'examen de la description détaillée ci- après, et des dessins annexés sur lesquels : la figure 1 illustre une machine de tri postal au sens de l'invention, la figure 2 représente schématiquement la table de données qu'utilise le programme d'ordinateur pour la mise en œuvre du procédé au sens de l'invention, la figure 3 représente un exemple d'organigramme du programme au sens de l'invention, les figures 4a à 4f sont des copies d'écran d'une interface homme/machine invitant un utilisateur à définir ses choix monocritères de séparation pour des critères de tri respectifs tels que la destination, l'affranchissement, le format, l'urgence, etc, la figure 5 est une copie d'écran représentant quelques choix de séparation multicritères (colonne de gauche) et la combinaison de valeurs correspondante d'un choix
de séparation multicritère sélectionné (colonne de droite) , la figure 6 est une copie d'écran d'une interface homme/machine invitant l'utilisateur .à compléter, s'il le souhaite, notamment des séparations multicritères incomplètes, et
- la figure 7 est une copie d'écran représentant, en logique booléenne, l'une des séparations multicritères choisies par l'utilisateur.
On se réfère tout d'abord à la figure 1 sur laquelle on a représenté une machine de tri multicritère au sens de l'invention. Une machine de ce type traite le courrier déposé dans les boîtes aux lettres sur la voie publique ou en façade des établissements postaux.
Le traitement se décompose en plusieurs étapes dont les principales sont les suivantes : ségrégation du courrier (séparation par taille des envois) ,
- redressage du courrier (mise des plis dans le même sens) ,
- oblitération du courrier, et le tri du courrier, proprement dit.
La machine automatique assurant en particulier le tri postal, référencée 2 sur la figure 1, comporte une glissière principale, munie par exemple d'un tapis roulant 20 animé par un ou plusieurs galets rotatifs 21, et dans laquelle un courrier 1 est destiné à progresser. La machine 2 comporte en outre un banc 22 de capteurs,
notamment optiques 221 avec reconnaissance de caractères, pour relever sur le courrier un jeu de valeurs associées à des critères de tri. Préférentiellement, on prévoit, au moins trois critères de tri parmi au moins, de façon, non exhaustive :
- une indication de destination 10, telle que le code postal de la destination, ou autre, un format de courrier, notamment un format d'enveloppe,
- une urgence, - un affranchissement 11 ou un type d'affranchissement du courrier postal 1, éventuellement la présence ou non d'un code à barre, et éventuellement la présence ou non d'une indexation antérieure.
La machine comporte en outre une pluralité de réceptacles 25a, 25b, 25c, par exemple dans le prolongement de glissières secondaires respectives 24a, 24b, 24c qui sont disposées en aval de la glissière principale 20. Enfin, la machine comporte des moyens 23a, 23b, par exemple des taquets rotatifs, destinés à orienter le courrier 1 vers une glissière secondaire et, de là, vers l'un des réceptacles .
Préférentiellement, la rotation des taquets 23a, 23b est pilotée par un ordinateur 26 muni, de façon classique, d'une unité centrale 266, d'une interface homme/machine incluant par exemple un écran 262 et des moyens de saisie tels qu'un clavier 263 et une souris 264. Plus particulièrement, l'ordinateur est équipé de circuits d'entrée 265, reliés par exemple à une carte PCMCIA, pour
recevoir des signaux de mesures obtenues par les capteurs du banc 22, ainsi que des circuits de sortie 261 pour piloter les taquets rotatifs 23a, 23b, en fonction de l'estimation d'une fonction booléenne combinant des valeurs représentatives des mesures menées par les capteurs précités. A cet effet, l'ordinateur 26 comporte en outre une mémoire, par exemple permanente ROM 268, dans laquelle est stocké un programme d'ordinateur au sens de l'invention qui sera décrit plus loin en référence à la figure 3. On indique simplement ici qu'une variante consiste à prévoir le programme d'ordinateur sur un support amovible qui est destiné à coopérer avec un lecteur 267 que comporte l'ordinateur 26, ou, de façon équivalente, à prévoir un téléchargement du programme à partir d'un site distant, notamment via une interface de communication vers un réseau de type Internet. L'ordinateur 26 comporterait alors une telle interface de communication, telle qu'un modem (non représenté sur la figure 1) .
En se référant à la figure 3, le programme au sens de l'invention comporte, de manière générale :
• une table de données 40 comportant une pluralité de valeurs possibles de critères de tri qui seront décrites en référence à la figure 2, et
• des instructions : al) pour inviter un utilisateur (étapes 31, 33, ...,
34), à l'initialisation du programme, à sélectionner dans la table une pluralité de critères de tri, ainsi qu'une ou plusieurs valeurs possibles à affecter à chaque critère de tri; et
bl) pour former au moins une fonction booléenne (étapes 32a, 32b) dans laquelle les valeurs sélectionnées qui sont associées à des critères distincts sont combinées par l'opérateur logique "ET".
En se référant à la figure 2, les valeurs possibles de critères CPl, CP2, ..., GPN,- CP(N+1), Fl, F2, ..., Ul, -U2 sont de préférence répertoriées dans la table de données 40 selon une arborescence' comportant : - des répertoires principaux 41, 42, ..., 43 associés chacun à un critère tel que le code postal de destination du courrier, son format, son urgence, ou autres, et des valeurs et/ou des sous-répertoires (411 à 432) associés chacun respectivement à une ou plusieurs valeurs possibles d'un même critère, telles que des valeurs détaillant les codes postaux, des valeurs détaillant le format, des valeurs détaillant l'urgence
(en l'espèce la valeur Ul pour un pli urgent et la valeur U2 pour un pli non urgent), ou autre.
On décrit maintenant en détail cette table 40 représentée sur la figure 2. Pour renseigner la table 40, on prévoit une pluralité de critères, tels que le code postal de destination du courrier, dans un répertoire principal 41, le format du courrier dans un répertoire principal 42, d'autres critères notamment la présence d'un code barre ou non sur l'enveloppe et, enfin, un critère d'urgence du courrier, dans un répertoire principal 43. Chacun de ces répertoires principaux se décompose en répertoires secondaire ou "sous-répertoires". Par exemple, le code
postal de destination peut inclure des codes postaux génériques tels que l'indicatif du département (44, 75), dans des sous-répertoires respectifs (411 et 412) . Un sous-répertoire 411 peut inclure, lui-même, un autre sous- répertoire secondaire 4111, 4112, désignant le détail du code postal de destination (44001, 44002, 75001, 75002) .
En outre, ce code postal peut se décomposer en centre de tri, si une lecture optique avec reconnaissance de caractères de l'adresse du destinataire est prévue. Finalement, à chaque centre de tri ou, plus généralement, à chaque code postal détaillé, on associe une valeur CPl, CP2, CPN, etc, qui sera combinée en logique booléenne à d'autres valeurs Fl, F2, ou encore Ul, U2, par l'opérateur logique "ET", au sens de l'invention. On indique simplement que les valeurs Fl, F2 peuvent être, par exemple, relatives à un type de format (A4, dans le sous- répertoire 422, ou A8 dans le sous-répertoire 421) . D'autres types de valeurs Ul ou U2 peuvent simplement désigner des valeurs telles que "VRAI" (noté, dans l'exemple représenté sur la figure 2, "OUI" relatives au sous-répertoire 431), ou encore "FAUX" (noté, dans l'exemple représenté sur la figure "2, "NON" relatives au sous-répertoire 432) .
Ainsi, dans l'exemple représenté sur la figure 2, on prévoit au moins trois critères, tels que le code postal de destination 41, le format du courrier 42 et l'urgence du courrier 43. Bien entendu, d'autres critères peuvent être prévus, comme on le voit en référence aux figures 4a à 4f représentant des copies d'écran qui apparaissent, sur
une interface homme/machine, lors de la mise en œuvre du programme d'ordinateur au sens de l'invention. Par exemple, la figure 4a indique les différents codes postaux de destination (colonne de droite CD) , pour deux sous- répertoires principaux associés respectivement à deux villes (Nantes et Rennes dans la colonne centrale CC) , tandis- que le critère principal sélectionné pour éditer ces détails de code postaux et de destination est présenté dans la colonne de gauche CG, en particulier en sélectionnant la rubrique "DESTINATION".
Sur la figure 4b, il apparaît qu'en sélectionnant la rubrique "AFFRANCHISSEMENT" des critères principaux, un choix de sous-répertoires apparaît (colonne du centre CC) , avec une proposition d'affranchissement par timbre poste ou par carte réponse "T" (où l'affranchissement n'a pas à être payé par l'émetteur du courrier) . Les valeurs associées à ce critère sont présentées dans la colonne de droite CD et peuvent être sélectionnées par l'utilisateur du logiciel en vue pour préparer le plan monocritère associé à ce critère "AFFRANCHISSEMENT".
De même, la figure 4c représente une copie d'écran qui apparaît lorsque l'utilisateur cherche à définir la séparation monocritère relative au critère "FORMAT" du courrier. La figure 4d représente un exemple de séparation relative au critère d'urgence. La figure 4e représente une copie d'écran lorsque l'utilisateur établit des séparations monocritères par rapport à un critère SIO (de présence ou non de code barre sur le courrier) . Enfin, la figure 4f représente une copie d'écran qui apparaît
lorsque l'utilisateur cherche à établir une séparation relative au critère de réexpédition.
On comprendra ainsi qu'à chaque étape du déroulement du logiciel, l'interface homme/machine (par exemple l'ordinateur et l'écran associé 262), propose à l'utilisateur de sélectionner une ou plusieurs valeurs de critère de tri dans la colonne droite CD de l'écran, ces valeurs sélectionnées étant ensuite combinées en logique booléenne, comme on le verra maintenant en référence à la figure 3.
En se référant donc à la figure 3, le programme comporte préférentiellement des instructions pour combiner, sur commande d'un utilisateur, une pluralité de valeurs possibles associées à un même critère par l'opérateur logique "OU" (étapes 31, 33), en vue de former ensuite chaque fonction booléenne précitée par une combinaison logique "ET".
Le programme comporte avantageusement des instructions pour inviter l'utilisateur à sélectionner les valeurs possibles à affecter à chaque critère de tri, individuellement ou par sous-répertoire complet, comme on le voit pour l'étape 31 où le sous-répertoire complet 411, correspondant au code postal 44, est sélectionné. Ainsi, dans l'exemple décrit, tous les codes postaux 44001, 44002 ... correspondant aux valeurs CPl, CP2, ... sont sélectionnés et combinés entre eux par un opérateur logique "OU", ' lorsque l'utilisateur sélectionne toutes les valeurs possibles d'un répertoire ou d'un sous-répertoire 411.
Ainsi, on comprendra que les valeurs possibles à affecter aux critères de tri sont agencées selon une arborescence comportant : - des branches principales 41; 42; ... ; 43, associées chacune à un critère de tri, et des branches secondaires respectivement 411, 412; 421,
422; 431,432, associées chacune à une ou plusieurs valeurs possibles d'un même critère.
On peut alors sélectionner ces valeurs possibles individuellement (valeur Ul à l'étape 34) ou par branche secondaire (sous-répertoire 411 à l'étape 31) .
On indique en outre que, de façon avantageuse, le programme comporte des instructions pour affecter une même valeur par défaut à toutes les valeurs possibles non sélectionnées d'un même critère, et pour combiner cette valeur par défaut dans la formation de la fonction booléenne. Pour illustrer cette caractéristique, on a représenté sur la copie d'écran de la figure 5 un sous- répertoire "reste_destination", ou encore "reste_affranchissement", correspondant à toutes les valeurs qui ne peuvent pas être sélectionnées dans d'autres sous-répertoires d'un même critère (respectivement "destination" et "affranchissement") . Cette mesure permet d'assurer une complétude de la séparation.
En référence à nouveau à la figure 3, le programme d'ordinateur comporte avantageusement, pour piloter une
machine automatique de tri comportant une pluralité de réceptacles telle que décrite ci-avant en référence à la figure 1, des instructions pour former une pluralité de fonctions booléennes (étape 35) combinant des valeurs possibles (VAL(O), VAL(I),..., VAL(max)) différentes d'une combinaison booléenne à l'autre. Ainsi, les valeurs que donnent ces fonctions booléennes, notées VAL (h), avec h=0, l,...,max, sur la figure 3 peuvent être associées chacune à un réceptacle 25a, 25b, ..., 25c de la machine de tri (étape 36) .
On décrit maintenant en détail différentes étapes mises en œuvre par le programme dans l'exemple représenté sur la figure 3.
A une première étape 30, indiquée ici à titre d'exemple, on fixe la valeur de l'indice h à 0 (correspondant à la première valeur associée à un premier bac de tri 25a) . Ensuite, comme on l'a vu en référence aux copies d'écran des figures 4a à 4f, l'utilisateur sélectionne, pour chaque critère de tri (code postal, format, urgence, ou autre) une ou plusieurs valeurs, combinées par l'opérateur logique "OU". Cette combinaison par l'opérateur "OU" est menée à l'étape 31, pour un premier critère tel que le code postal, ou encore à une étape 33 pour un autre critère tel que le format d'enveloppe, ou pour d'autres critères (non représentés) . On indique qu'il est possible de ne sélectionner qu'une seule valeur de critère (Ul), à l'étape 34 représentée sur la figure 3. Ces différentes valeurs sont combinées par les opérateurs logiques "ET", aux étapes 32a, 32b, de sorte qu'à chaque valeur
d'indice h, il correspond une valeur finale VAL (h), donnée à l'étape 35, et qui correspond au résultat de la logique combinatoire complète impliquant :
- l'opérateur logique "ET" entre critères différents ; et - l'opérateur logique "OU" entre valeurs associées à un même critère.
On définit ainsi, à l'étape 36, une pluralité de valeurs résultat de la logique combinatoire, pour différents indices h allant de 0 jusqu'à h=max, chacune de ces valeurs résultat étant associée à un identifiant de réceptacle 25a, 25b, ..., 25c, tel que représenté sur la figure 1.
On indique encore simplement qu'une boucle d'incrémentation de la valeur de l'indice h est prévue. Elle comporte un test 37 sur la valeur de h. Si le maximum de séparations max est atteint au test 37, le programme de définition du plan de séparation s'achève à l'étape 38. Sinon, on incrémente la valeur de h à l'étape 39 et on invite l'utilisateur, à l'étape 50, à se référer à nouveau à la table 40 pour définir une nouvelle valeur de séparation multicritère VAL (h) .
On comprendra ainsi que pour piloter la machine automatique de tri équipée des capteurs 221, le programme informatique comporte des instructions pour : cl) mémoriser des valeurs (code postal 10 ou autre) associées chacune à un critère de tri, et mesurées par les capteurs 221 sur le courrier postal 1,
dl) estimer les fonctions booléennes décrites ci-avant (éventuelles combinaisons de OU pour un même critère, et de ET entre valeurs de critères différents) en fonction des valeurs mesurées, et el) affecter une valeur de réceptacle (ou un identifiant de réceptacle 25a, 25b, 25c) en correspondance de chaque valeur estimée VAL (h) des fonctions booléennes .
Ainsi, on forme une pluralité de fonctions booléennes, associées chacune à un réceptacle et combinant des valeurs possibles différentes d'une fonction booléenne à l'autre, en rappelant toutefois que le programme interdit une combinaison logique "OU" entre des valeurs possibles associées à des critères distincts.
En bref, le programme au sens de la présente invention génère des plans de préparation du courrier qui permettent d'effectuer un tri sur plusieurs critères.
Ainsi, le plan de préparation "Sep multi 1" représenté sur la figure 5, désigne, pour un réceptacle de la machine, le contenu de ce réceptacle exprimé en terme de logique booléenne. Dans l'exemple représenté : Réceptacle N0I = Nantes Ville (pour la destination) ET Timbre Poste (pour l'affranchissement) ET Indifférent (toutes les valeurs possibles du format) ET Lettre (pour l'urgence) etc.
En référence maintenant à la figure 6, pour chacun des critères d'abord, puis pour les séparations de tri multicritères, le programme contrôle :
- le non recouvrement de plages de codification des critères, et
- la complétude de traitement des plages de codification des critères.
En effet, une fois la phase de création des séparations multi-critères terminée, la complétude de l'ensemble des séparations créées par l'utilisateur doit être vérifiée. Si cette complétude n'est pas vérifiée, un message (figure 6) avertit l'utilisateur de la non-complétude et liste les ensembles manquants pour obtenir un plan de tri complet. L'utilisateur peut alors choisir de compléter lui-même les séparations ou d'ignorer le message ; les ensembles manquants seront alors regroupés dans une séparation appelée "reste_critères" (non représentée) .
On indique que, au préalable, pour la création des séparations monocritères telle que visualisée sur les figures 4a à 4f, le programme assure déjà la gestion d'un non recouvrement monocritère. L'une des règles est que le plan de séparation d'un critère ne doit pas comporter de séparations qui se recouvrent. Pour que cette règle soit vérifiée, le programme ne permet pas à l'utilisateur de choisir, pour une séparation, des sélections choisies dans les séparations déjà décrites. Par ailleurs, le plan de séparation d'un critère doit être complet et doit contenir l'ensemble des sélections possibles, y compris des rubriques "AUTRES" correspondant aux sous-répertoire "reste_destination", "reste_affranchissement", etc, de la figure 5. Ainsi, si l'utilisateur ne décrit pas complètement le plan de séparation, alors le programme
crée automatiquement une séparation appelée "reste_[nomcritère] " qui représente l'ensemble des sélections manquantes pour que la complétude du plan de séparation soit vérifiée.
On rappelle qu'ensuite, la séparation multicritères se fait par sélection des séparations des plans de séparation de chacun des critères et l'utilisateur est affranchi du choix des opérateurs logiques. Ces opérateurs logiques sont attribués automatiquement en rappelant les règles suivantes :
- deux séparations d'un même critère sont associées par un "OU" logique
- les séparations de critères différents sont associées par un "ET" logique.
La composition logique de la séparation multicritères est affichée dynamiquement sur l'écran de l'interface homme/machine (figure 7) .
A chaque création d'une éventuelle nouvelle séparation, le recouvrement est traité de façon à ne pas laisser la possibilité à l'utilisateur de créer une séparation en recouvrement de celles déjà créées. Ce traitement se fait en s 'appuyant sur les données représentant l'ensemble des séparations possibles et des séparations décrites.
On comprendra ainsi que les fonctionnalités qu'offre le programme au sens de l'invention sont notamment : - créer un plan de préparation multicritère,
- modifier un plan de préparation,
- visualiser un plan de préparation,
- éventuellement imprimer un plan de préparation, et
- mettre en service un plan de préparation, par exemple dans une machine de tri telle que décrite ci-avant. •
Chaque critère à traiter est décliné dans une arborescence qui décrit et codifie chaque élément.
L'un des avantages que procure l'invention est la vérification de non recouvrement. Un autre avantage est la complétude des plans de préparations.
Ces deux avantages sont atteints en prévoyant la gestion de la logique combinatoire des critères qui s'exprime au niveau de codification le plus fin, par le programme au sens de l'invention.
La solution proposée ici est de traiter, dans une première phase, chacun des critères séparément, en vue d'obtenir un plan de séparation monocritère autorisant la combinaison "QU" logique. Une deuxième phase permet ensuite de combiner ces plans de séparation monocritère pour obtenir un produit multicritères n'autorisant que la combinaison "ET" logique.
Bien entendu, la présente invention ne se limite pas à la forme de réalisation décrite ci-avant à titre d'exemple ; elle s'étend à d'autres variantes.
Ainsi, on comprendra que le programme informatique décrit ci-avant peut être un logiciel destiné à aider le
traitement de tri du courrier. Toutefois, les caractéristiques de ce logiciel, notamment dans le cadre du traitement multicritères, peuvent être reprises pour d'autres applications, notamment pour l'oblitération du courrier.