FR2846180A1 - Mathematical function optimizing method for determining path among digital signal samples, involves separating initial population into groups to form solutions, selecting another population best solutions to form third population - Google Patents
Mathematical function optimizing method for determining path among digital signal samples, involves separating initial population into groups to form solutions, selecting another population best solutions to form third population Download PDFInfo
- Publication number
- FR2846180A1 FR2846180A1 FR0212874A FR0212874A FR2846180A1 FR 2846180 A1 FR2846180 A1 FR 2846180A1 FR 0212874 A FR0212874 A FR 0212874A FR 0212874 A FR0212874 A FR 0212874A FR 2846180 A1 FR2846180 A1 FR 2846180A1
- Authority
- FR
- France
- Prior art keywords
- population
- solutions
- criterion
- evaluation
- group
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/129—Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/63—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
Abstract
Description
La présente invention concerne d'une manière générale l'optimisationThe present invention relates generally to optimization
mathématique de fonctions qui ne peuvent être résolus math of functions that cannot be solved
analytiquement ou par une méthode heuristique connue. analytically or by a known heuristic method.
Les algorithmes génétiques sont particulièrement adaptés à ce type Genetic algorithms are particularly suitable for this type
d'optimisation car ce sont des méthodes pouvant fonctionner sans hypothèse 15 forte de régularité. of optimization because they are methods which can function without strong hypothesis of regularity.
Une technique d'optimisation pour ce type de problème est le calcul An optimization technique for this type of problem is calculation
évolutionnaire dont par exemple une description se trouve dans l'article intitulé " Evolutionnary Algorithms " de Thomas Bâck, ACM SIGBIO Newsletter, pp. evolutionary of which for example a description is in the article entitled "Evolutionnary Algorithms" by Thomas Bâck, ACM SIGBIO Newsletter, pp.
26-31, 1992.26-31, 1992.
Le calcul évolutionnaire (en anglais: evolutionary computation) est une technique de recherche appliquée à des problèmes qui, d'une part ne peuvent pas être formulés mathématiquement de manière continue et d'autre part n'ont pas un jeu de solutions possibles suffisamment réduit pour pouvoir Evolutionary calculus (in English: evolutionary computation) is a research technique applied to problems which, on the one hand cannot be formulated mathematically continuously and on the other hand do not have a sufficiently reduced set of possible solutions to can
être énuméré.be listed.
Le calcul évolutionnaire fait ainsi partie des techniques aléatoires, et plus spécifiquement fait partie des techniques de recherche aléatoire dite Evolutionary calculus is thus part of the random techniques, and more specifically is part of the so-called random search techniques
guidée, c'est-à-dire qui ont une fonction globale ou locale à optimiser. guided, that is to say which have a global or local function to optimize.
Si, dans une approche analytique, on cherche à concevoir une unique solution pour résoudre un problème, le calcul évolutionnaire considère 30 un jeu de solutions et fait évoluer ce jeu de solution selon des règles qui sont If, in an analytical approach, we seek to design a single solution to solve a problem, evolutionary calculus considers a set of solutions and makes this set of solution evolve according to rules which are
calquées sur l'évolution de la vie: reproduction, mutation et sélection. modeled on the evolution of life: reproduction, mutation and selection.
L'idée principale est que des individus multiples peuvent explorer des stratégies différentes et combiner leur capacité pour converger vers une solution efficace. La reproduction permet la combinaison, la mutation permet The main idea is that multiple individuals can explore different strategies and combine their ability to converge on an effective solution. Reproduction allows combination, mutation allows
l'exploration et la sélection permet la convergence. exploration and selection allows convergence.
Le calcul évolutionnaire utilise des fonctions qui sont les suivantes: la génération, qui produit une population initiale d'individus, l'évaluation, qui mesure la performance de chaque individu vis à vis du problème à résoudre, - la sélection, qui sélectionne un sous-ensemble d'individus parmi la 10 population courante, - la reproduction, qui produit un nouveau jeu d'individus. La reproduction utilise la combinaison de deux individus sélectionnés et la mutation du nouvel individu en résultant. La mutation est l'introduction d'une légère différence dans l'individu enfant résultant de la combinaison, et - le remplacement, qui remplace les individus dont la performance est la plus faible vis à vis du problème à résoudre, par des individus enfants The evolutionary calculus uses the following functions: generation, which produces an initial population of individuals, evaluation, which measures the performance of each individual with regard to the problem to be solved, - selection, which selects a sub - set of individuals from the current population, - reproduction, which produces a new set of individuals. Reproduction uses the combination of two selected individuals and the resulting mutation of the new individual. The mutation is the introduction of a slight difference in the individual child resulting from the combination, and - replacement, which replaces the individuals whose performance is weakest with regard to the problem to be solved, by individual children
générés par la reproduction.generated by reproduction.
Ces fonctions sont utilisées de manière itérative jusqu'à ce qu'un These functions are used iteratively until a
critère de convergence soit satisfait. convergence criterion is satisfied.
Par exemple, le document US 4 697 242 décrit une application qui utilise des algorithmes génétiques pour un programme électronique qui permet For example, document US 4,697,242 describes an application which uses genetic algorithms for an electronic program which allows
d'apprendre et de découvrir un langage. to learn and discover a language.
Le document US 4 935 877 décrit quant à lui un algorithme évolutionnaire qui met en jeu des solutions composées de fonctions et 25 d'arguments qui forment un programme. On fait évoluer les programmes pour trouver une solution à un problème donné. Cette technique est connue sous le Document US 4,935,877 describes an evolutionary algorithm which brings into play solutions composed of functions and of arguments which form a program. Programs are evolved to find a solution to a given problem. This technique is known as
nom de programmation génétique (d'après l'anglais: genetic programming). name of genetic programming.
De manière générale, la convergence d'un algorithme évolutionnaire In general, the convergence of an evolutionary algorithm
nécessite un long temps de calcul.requires a long calculation time.
L'invention s'applique particulièrement au domaine de la compression avec perte de signaux numériques. Les signaux numériques considérés ici sont de nature quelconque, par exemple des images fixes, de la The invention applies particularly to the field of compression with loss of digital signals. The digital signals considered here are of any kind, for example still images, of the
vidéo, du son, des données informatiques. video, sound, computer data.
Dans la suite, on considère plus particulièrement le codage et le In the following, we consider more particularly the coding and the
décodage d'une image fixe.decoding of a still image.
Dans ce contexte, certains modes de codage utilisent un parcours établi parmi un ensemble d'échantillons numériques. Par exemple, les demandes de brevet français no 01 06933 et 01 13922 concernent de tels In this context, certain coding modes use an established route among a set of digital samples. For example, French patent applications Nos. 01 06933 and 01 13922 relate to such
modes de codage.coding modes.
Pour que le codage soit efficace, c'est-à-dire qu'il présente un bon 1o rapport débit-distorsion, il est nécessaire de déterminer le parcours de manière adaptée. Il existe des techniques pour déterminer un parcours parmi un ensemble d'échantillons. Ces techniques sont connues sous le nom de In order for the coding to be effective, that is to say that it has a good speed-distortion ratio, it is necessary to determine the path appropriately. There are techniques for determining a route among a set of samples. These techniques are known as
techniques de résolution du problème du voyageur de commerce. techniques for solving the traveling salesman problem.
Là encore, le temps de calcul pour trouver le parcours peut être long. Again, the calculation time to find the route can be long.
La présente invention vise à fournir un procédé et un dispositif d'optimisation d'une fonction qui permettent de trouver une valeur proche de la solution optimale d'un problème posé, plus rapidement que selon la technique antérieure. A cette fin, l'invention propose un procédé d'optimisation d'une fonction, caractérisé en ce qu'il comporte les étapes de: - détermination d'une population initiale de solutions de la fonction, - évaluation des solutions de la population initiale, en fonction d'un 25 critère d'évaluation, - séparation de la population en un groupe d'exploration et en un groupe d'optimisation locale, en fonction du résultat de l'évaluation des solutions, - application d'un opérateur génétique disruptif sur le groupe 3o d'exploration, de manière à former des secondes solutions, - application d'un opérateur génétique constructif sur le groupe d'optimisation locale, de manière à former des troisièmes solutions, - formation d'une seconde population comportant au moins les secondes et troisièmes solutions, - évaluation des solutions de la seconde population, en fonction du critère d'évaluation, - sélection des meilleures solutions de la seconde population, selon The present invention aims to provide a method and a device for optimizing a function which make it possible to find a value close to the optimal solution of a problem posed, more quickly than according to the prior art. To this end, the invention proposes a method for optimizing a function, characterized in that it comprises the steps of: - determination of an initial population of solutions of the function, - evaluation of the solutions of the initial population , according to an evaluation criterion, - separation of the population into an exploration group and into a local optimization group, according to the result of the evaluation of the solutions, - application of a genetic operator disruptive on the 3o exploration group, so as to form second solutions, - application of a constructive genetic operator on the local optimization group, so as to form third solutions, - formation of a second population comprising minus the second and third solutions, - evaluation of the solutions of the second population, according to the evaluation criterion, - selection of the best solutions of the second population, according to
le critère d'évaluation, pour former une troisième population. the evaluation criterion, to form a third population.
L'invention permet de trouver une valeur proche de la solution The invention makes it possible to find a value close to the solution
optimale d'un problème posé, plus rapidement que selon la technique 10 antérieure. optimal of a problem posed, more quickly than according to the prior art.
Selon une caractéristique préférée, le procédé comporte la réitération des étapes de séparation à sélection jusqu'à ce qu'un critère d'arrêt soit satisfait. Ainsi, la solution est améliorée à chaque itération. 15 Selon une caractéristique préférée, la séparation de la population comporte la formation du groupe d'optimisation locale par la sélection de solutions parmi les meilleures selon le critère d'évaluation. Ce groupe de According to a preferred characteristic, the method comprises the reiteration of the selection separation steps until a stop criterion is satisfied. Thus, the solution is improved with each iteration. According to a preferred characteristic, the separation of the population involves the formation of the local optimization group by the selection of solutions among the best according to the evaluation criterion. This group of
solution permet de converger vers la solution optimale. solution allows to converge towards the optimal solution.
Selon une caractéristique préférée, la séparation de la population comporte la formation du groupe d'exploration par la sélection de solutions parmi les moins bonnes selon le critère d'évaluation. Ce groupe de solution permet d'explorer l'espace des solutions et évite de converger trop rapidement According to a preferred characteristic, the separation of the population involves the formation of the exploration group by the selection of solutions among the least good according to the evaluation criterion. This group of solutions makes it possible to explore the space of solutions and avoids converging too quickly
2 5 vers une solution optimale qui pourrait n'être qu'un optimum local. 2 5 towards an optimal solution which could be only a local optimum.
Selon une caractéristique préférée, l'opérateur génétique disruptif According to a preferred characteristic, the disruptive genetic operator
comporte une mutation.has a mutation.
Selon une caractéristique préférée, l'opérateur génétique constructif 30 comporte un croisement, une mutation, une duplication ou la combinaison des trois. Ces opérateurs donnent de bons résultats expérimentaux et sont According to a preferred characteristic, the constructive genetic operator 30 comprises a crossing, a mutation, a duplication or the combination of the three. These operators give good experimental results and are
simples à mettre en oeuvre.simple to implement.
Selon une caractéristique préférée, la seconde population comporte According to a preferred characteristic, the second population comprises
en outre le groupe d'optimisation locale. En effet, ce groupe comporte de 5 " bonnes " solutions au sens du critère d'évaluation, il est donc intéressant de les conserver. in addition the local optimization group. Indeed, this group includes 5 "good" solutions within the meaning of the evaluation criterion, so it is interesting to keep them.
Selon des caractéristiques préférées alternatives, le critère d'arrêt est satisfait si l'évaluation de la meilleure solution de la troisième population satisfait un critère prédéterminé ou si la troisième population n'évolue plus 10 d'une itération à l'autre ou encore si une durée prédéterminée de traitement est atteinte. Selon une caractéristique préférée, le procédé est appliqué à la According to alternative preferred characteristics, the stopping criterion is satisfied if the evaluation of the best solution of the third population satisfies a predetermined criterion or if the third population does not evolve more from one iteration to another or even if a predetermined duration of treatment is reached. According to a preferred characteristic, the method is applied to the
formation d'un parcours parmi des coefficients d'un signal, les solutions étant des parcours possibles, et il comporte la sélection de la meilleure solution dans 15 la troisième population. formation of a path among coefficients of a signal, the solutions being possible paths, and it involves the selection of the best solution in the third population.
Plus particulièrement le procédé selon l'invention s'applique à la More particularly, the method according to the invention applies to the
formation d'un parcours parmi des coefficients d'une image numérique. formation of a path among coefficients of a digital image.
Selon une caractéristique préférée, le critère d'évaluation d'un parcours est une minimisation d'un cot de codage du signal, le codage According to a preferred characteristic, the criterion for evaluating a route is a minimization of a cost of coding the signal, the coding
2 0 utilisant le parcours considéré. 2 0 using the route considered.
Corrélativement, l'invention concerne un dispositif d'optimisation d'une fonction, caractérisé en ce qu'il comporte: - des moyens de détermination d'une population initiale de solutions 25 de la fonction, - des moyens d'évaluation des solutions de la population initiale, en fonction d'un critère d'évaluation, - des moyens de séparation de la population en un groupe d'exploration et en un groupe d'optimisation locale, en fonction du résultat de 3 o l'évaluation des solutions, - des moyens d'application d'un opérateur génétique disruptif sur le groupe d'exploration, de manière à former des secondes solutions, - des moyens d'application d'un opérateur génétique constructif sur le groupe d'optimisation locale, de manière à former des troisièmes solutions, - des moyens de formation d'une seconde population comportant au moins les secondes et troisièmes solutions, - des moyens d'évaluation des solutions de la seconde population, en fonction du critère d'évaluation, - des moyens de sélection des meilleures solutions de la seconde Correlatively, the invention relates to a device for optimizing a function, characterized in that it comprises: - means for determining an initial population of solutions of the function, - means for evaluating solutions of the initial population, according to an evaluation criterion, - means of separating the population into an exploration group and a local optimization group, according to the result of 3 o the evaluation of solutions, - means of applying a disruptive genetic operator to the exploration group, so as to form second solutions, - means of applying a constructive genetic operator to the local optimization group, so as to forming third solutions, - means for training a second population comprising at least the second and third solutions, - means for evaluating solutions of the second population, according to the evaluation criterion, - means of selecting the best second solutions
population, selon le critère d'évaluation, pour former une troisième population. population, according to the evaluation criterion, to form a third population.
Le dispositif selon l'invention comporte des moyens de mise en 10 oeuvre des caractéristiques précédemment présentées. The device according to the invention comprises means for implementing the features previously presented.
Le dispositif selon l'invention présente des avantages analogues à The device according to the invention has advantages similar to
ceux précédemment présentés.those previously presented.
L'invention concerne aussi un appareil numérique incluant le dispositif selon l'invention ou des moyens de mise en oeuvre du procédé selon 15 l'invention. Cet appareil numérique est par exemple un appareil photographique numérique, un caméscope numérique, un scanner, une imprimante, un photocopieur, un télécopieur. Les avantages du dispositif et de l'appareil The invention also relates to a digital apparatus including the device according to the invention or means for implementing the method according to the invention. This digital device is for example a digital camera, a digital camcorder, a scanner, a printer, a photocopier, a fax machine. The advantages of the device and the device
numérique sont identiques à ceux précédemment exposés. digital are identical to those previously exposed.
Un moyen de stockage d'information, lisible par un ordinateur ou par 20 un microprocesseur, intégré ou non au dispositif, éventuellement amovible, A means of storing information, readable by a computer or by a microprocessor, integrated or not in the device, possibly removable,
mémorise un programme mettant en oeuvre le procédé selon l'invention. stores a program implementing the method according to the invention.
Un programme d'ordinateur lisible par un microprocesseur et comportant une ou plusieurs séquence d'instructions est apte à mettre en A computer program readable by a microprocessor and comprising one or more sequence of instructions is capable of implementing
oeuvre les procédés selon l'invention. implements the methods according to the invention.
Les caractéristiques et avantages de la présente invention apparaîtront plus clairement à la lecture d'un mode préféré de réalisation illustré par les dessins ci-joints, dans lesquels: - la figure 1 est un mode de réalisation d'un dispositif mettant en 30 oeuvre l'invention, - la figure 2 représente un dispositif de codage selon l'invention, - la figure 3 représente un mode de réalisation de procédé de codage selon l'invention, - la figure 4 représente un modèle d'amplitude utilisé selon la présente invention, - la figure 5 représente un mode de réalisation de codage d'emplacement inclus dans le procédé de la figure 3, - les figures 6 et 7 représentent des exemples d'application d'opérateurs génétiques disruptifs à des génomes, The characteristics and advantages of the present invention will appear more clearly on reading a preferred embodiment illustrated by the attached drawings, in which: - Figure 1 is an embodiment of a device implementing the invention, - figure 2 represents a coding device according to the invention, - figure 3 represents an embodiment of coding method according to the invention, - figure 4 represents an amplitude model used according to the present invention , - Figure 5 shows an embodiment of location coding included in the method of Figure 3, - Figures 6 and 7 show examples of the application of disruptive genetic operators to genomes,
- les figures 8 et 9 représentent des exemples d'application 10 d'opérateurs génétiques constructifs à des génomes. - Figures 8 and 9 show examples of application 10 of constructive genetic operators to genomes.
Selon le mode de réalisation choisi et représenté à la figure 1, un dispositif mettant en oeuvre l'invention est par exemple un microordinateur 10 connecté à différents périphériques, par exemple une caméra numérique 107 15 (ou un scanner ou tout moyen d'acquisition ou de stockage d'image) reliée à According to the embodiment chosen and represented in FIG. 1, a device implementing the invention is for example a microcomputer 10 connected to different peripherals, for example a digital camera 107 (or a scanner or any means of acquisition or image storage) connected to
une carte graphique et fournissant des informations à traiter selon l'invention. a graphics card and providing information to be processed according to the invention.
Le dispositif 10 comporte une interface de communication 112 reliée à un réseau 113 apte à transmettre des données numériques à traiter ou inversement à transmettre des données traitées par le dispositif. Le dispositif 20 10 comporte également un moyen de stockage 108 tel que par exemple un disque dur. Il comporte aussi un lecteur 109 de disque 110. Ce disque 1 10 peut être une disquette, un CD-ROM ou un DVD-ROM, par exemple. Le disque 110 comme le disque 108 peuvent contenir des données traitées selon l'invention ainsi que le ou les programmes mettant en oeuvre l'invention qui, une fois lu par 25 le dispositif 10, sera stocké dans le disque dur 108. Selon une variante, le The device 10 includes a communication interface 112 connected to a network 113 capable of transmitting digital data to be processed or, conversely, of transmitting data processed by the device. The device 20 also includes a storage means 108 such as for example a hard disk. It also includes a disc drive 109. This disc 110 can be a floppy disk, a CD-ROM or a DVD-ROM, for example. The disc 110 as the disc 108 can contain data processed according to the invention as well as the program or programs implementing the invention which, once read by the device 10, will be stored in the hard disc 108. According to a variant , the
programme permettant au dispositif de mettre en oeuvre l'invention, pourra être stocké en mémoire morte 102 (appelée ROM sur le dessin). En seconde variante, le programme pourra être reçu pour être stocké de façon identique à celle décrite précédemment par l'intermédiaire du réseau de communication 30 113. program allowing the device to implement the invention, may be stored in read-only memory 102 (called ROM in the drawing). In a second variant, the program can be received to be stored in an identical manner to that described previously via the communication network 30 113.
Le dispositif 10 est relié à un microphone 111. Les données à traiter The device 10 is connected to a microphone 111. The data to be processed
selon l'invention seront dans ce cas du signal audio. according to the invention will in this case be an audio signal.
Ce même dispositif possède un écran 104 permettant de visualiser les données à traiter ou de servir d'interface avec l'utilisateur qui peut ainsi paramétrer certains modes de traitement, à l'aide du clavier 114 ou de tout This same device has a screen 104 making it possible to view the data to be processed or to serve as an interface with the user who can thus configure certain processing modes, using the keyboard 114 or any
autre moyen (souris par exemple).other means (mouse for example).
L'unité centrale 100 (appelée CPU sur le dessin) exécute les instructions relatives à la mise en oeuvre de l'invention, instructions stockées dans la mémoire morte 102 ou dans les autres éléments de stockage. Lors de la mise sous tension, les programmes de traitement stockés dans une mémoire non volatile, par exemple la ROM 102, sont transférés dans la mémoire vive 10 RAM 103 qui contiendra alors le code exécutable de l'invention ainsi que des registres pour mémoriser les variables nécessaires à la mise en oeuvre de l'invention. De manière plus générale, un moyen de stockage d'information, lisible par un ordinateur ou par un microprocesseur, intégré ou non au 15 dispositif, éventuellement amovible, mémorise un programme mettant en The central unit 100 (called CPU in the drawing) executes the instructions relating to the implementation of the invention, instructions stored in the read-only memory 102 or in the other storage elements. During power-up, the processing programs stored in a non-volatile memory, for example the ROM 102, are transferred to the random access memory 10 RAM 103 which will then contain the executable code of the invention as well as registers for storing the variables necessary for the implementation of the invention. More generally, a means of storing information, readable by a computer or by a microprocessor, integrated or not in the device, possibly removable, stores a program implementing
oeuvre le procédé selon l'invention. implements the method according to the invention.
Le bus de communication 101 permet la communication entre les Communication bus 101 allows communication between the
différents éléments inclus dans le micro-ordinateur 10 ou reliés à lui. La représentation du bus 101 n'est pas limitative et notamment l'unité centrale 100 20 est susceptible de communiquer des instructions à tout élément du microordinateur 10 directement ou par l'intermédiaire d'un autre élément du microordinateur 10. various elements included in the microcomputer 10 or connected to it. The representation of the bus 101 is not limiting and in particular the central unit 100 20 is capable of communicating instructions to any element of the microcomputer 10 directly or through another element of the microcomputer 10.
En référence à la figure 2, un mode de réalisation de dispositif de 25 codage 2 selon l'invention est destiné à coder un signal numérique dans le but de le compresser. Le dispositif de codage est intégré dans un appareil, qui est par exemple un appareil photographique numérique, un caméscope numérique, un scanner, une imprimante, un photocopieur, un télécopieur, un With reference to FIG. 2, an embodiment of coding device 2 according to the invention is intended to code a digital signal in order to compress it. The coding device is integrated into a device, which is for example a digital camera, a digital camcorder, a scanner, a printer, a photocopier, a fax machine, a
système de gestion de base de données ou encore un ordinateur. database management system or even a computer.
Une source d'image 1 fournit une image numérique IM au dispositif An image source 1 provides a digital IM image to the device
de codage 2, qui comporte un circuit de transformation 21, un circuit de détermination de parcours de codage 22 et un circuit de codage entropique 23. coding 2, which includes a transformation circuit 21, a coding path determination circuit 22 and an entropy coding circuit 23.
Le fonctionnement du dispositif de codage et plus particulièrement du circuit de The operation of the coding device and more particularly of the
détermination de parcours de codage 22 sera détaillé dans la suite. determination of coding path 22 will be detailed below.
Le dispositif selon l'invention comporte: - des moyens de détermination d'une population initiale de parcours, 5 - des moyens d'évaluation des parcours de la population initiale, en fonction d'un critère d'évaluation, - des moyens de séparation de la population en un groupe d'exploration et en un groupe d'optimisation locale, en fonction du résultat de l'évaluation des parcours, - des moyens d'application d'un opérateur génétique disruptif sur le groupe d'exploration, de manière à former des seconds parcours, - des moyens d'application d'un opérateur génétique constructif sur le groupe d'optimisation locale, de manière à former des troisièmes parcours, - des moyens de formation d'une seconde population comportant au 15 moins les seconds et troisièmes parcours, - des moyens d'évaluation des parcours de la seconde population, en fonction du critère d'évaluation, - des moyens de sélection des meilleurs parcours de la seconde The device according to the invention comprises: - means for determining an initial course population, 5 - means for evaluating the course of the initial population, according to an evaluation criterion, - means for separation of the population in an exploration group and in a local optimization group, according to the result of the evaluation of the routes, - means of application of a disruptive genetic operator on the exploration group, so to form second courses, - means of applying a constructive genetic operator to the local optimization group, so as to form third courses, - means of training a second population comprising at least the second and third routes, - means of evaluating the routes of the second population, according to the evaluation criterion, - means of selecting the best routes of the second
population, selon le critère d'évaluation, pour former une troisième population. population, according to the evaluation criterion, to form a third population.
Le dispositif de codage fournit un fichier contenant des données représentant l'image compressée à des moyens de transmission et/ou de The coding device supplies a file containing data representing the compressed image to transmission and / or transmission means.
mémorisation 3. Ces moyens sont classiques et ne seront pas décrits ici. memorization 3. These means are conventional and will not be described here.
2 5 La figure 3 représente un mode de réalisation de procédé de codage d'une image, selon l'invention. Ce procédé est mis en oeuvre dans le FIG. 3 represents an embodiment of an image coding method according to the invention. This process is implemented in the
dispositif de codage et comporte des étapes El à E7. coding device and comprises steps E1 to E7.
Le procédé comporte globalement une transformation du signal à coder, puis la détermination d'un modèle d'amplitude des coefficients issus de 30 la transformation. Les emplacements de ces coefficients sont ensuite codés The method generally comprises a transformation of the signal to be coded, then the determination of an amplitude model of the coefficients resulting from the transformation. The locations of these coefficients are then coded
selon une méthode qui utilise un parcours établi parmi les coefficients. according to a method which uses a path established among the coefficients.
Un tel procédé de codage est décrit par exemple dans la demande de brevet français no 01 06933 ou dans les demandes de brevets français n0 Such a coding method is described for example in French patent application no. 01 06933 or in French patent applications no.
02 00330 et 02 00332 déposées par la demanderesse. 02 00330 and 02 00332 filed by the plaintiff.
Le procédé est réalisé sous la forme d'un algorithme qui peut être 5 mémorisé en totalité ou en partie dans tout moyen de stockage d'information capable de coopérer avec le microprocesseur. Ce moyen de stockage est lisible par un ordinateur ou par un microprocesseur. Ce moyen de stockage est intégré ou non au dispositif, et peut être amovible. Par exemple, il peut comporter une bande magnétique, une disquette ou un CD-ROM (disque 10 compact à mémoire figée). The method is carried out in the form of an algorithm which can be stored in whole or in part in any information storage means capable of cooperating with the microprocessor. This storage means can be read by a computer or by a microprocessor. This storage means is integrated or not to the device, and can be removable. For example, it may include a magnetic tape, a floppy disk or a CD-ROM (compact disk 10 with frozen memory).
L'étape El est une transformation linéaire ou non linéaire d'une image numérique IM à traiter selon l'invention. L'image a par exemple une taille Step E1 is a linear or non-linear transformation of a digital image IM to be processed according to the invention. The image has for example a size
de 512 x 512 pixels.of 512 x 512 pixels.
Dans le mode préféré de réalisation de l'invention, la transformation 15 est une décomposition en sous-bandes de fréquences. In the preferred embodiment of the invention, the transformation 15 is a decomposition into frequency sub-bands.
Le signal est décomposé en sous-bandes de fréquence à plusieurs niveaux de résolution par une transformation en ondelettes discrètes dite DWT The signal is broken down into frequency sub-bands at several resolution levels by a transformation into discrete wavelets called DWT
(d'après l'anglais Discrete Wavelet Transform) à M niveaux de résolution. (from English Discrete Wavelet Transform) at M resolution levels.
Il est à noter que la sous-bande basse peut être codée selon le 20 procédé décrit ci-après ou de façon classique par prédiction linéaire. It should be noted that the low sub-band can be coded according to the method described below or in a conventional manner by linear prediction.
D'autres types de transformation peuvent être utilisés, par exemple la transformation en cosinus discrète dite DCT ou la transformation de Fourier ou encore une transformation non-linéaire comme une transformation morphologique. L'étape suivante E2 est la sélection d'une première sous-bande résultant de la décomposition précédente. Les sous- bandes sont considérées Other types of transformation can be used, for example the discrete cosine transformation called DCT or the Fourier transformation or a non-linear transformation such as a morphological transformation. The next step E2 is the selection of a first sub-band resulting from the previous decomposition. The sub-bands are considered
une par une.one by one.
L'étape suivante E3 est un classement des coefficients de la sousbande courante. Le signe des coefficients est tout d'abord codé de manière 30 indépendante. Les coefficients sont ensuite considérés en valeur absolue et The next step E3 is a classification of the coefficients of the current subband. The sign of the coefficients is first of all coded independently. The coefficients are then considered in absolute value and
sont classés du plus grand au plus petit. are ranked from largest to smallest.
L'étape suivante E4 est la détermination d'une fonction d'approximation de la suite des coefficients classés. Cette fonction est par exemple une exponentielle décroissante définie par un jeu de paramètres qui The next step E4 is the determination of an approximation function of the sequence of classified coefficients. This function is for example a decreasing exponential defined by a set of parameters which
sont déterminés par régression.are determined by regression.
La figure 4 représente un exemple de modèle d'amplitude A. A chaque valeur entière k en abscisse correspond une valeur A(k) fournie par le modèle d'amplitude. La valeur A(k) est une approximation de l'amplitude du FIG. 4 represents an example of an amplitude model A. To each integer value k on the abscissa corresponds a value A (k) supplied by the amplitude model. The value A (k) is an approximation of the amplitude of the
kme coefficient classé par ordre décroissant. kme coefficient classified in descending order.
L'étape suivante E5 est le codage des emplacements des coefficients. Cette étape comporte la détermination d'un parcours parmi les coefficients de la sous-bande courante de sorte que le cot de codage de ce parcours soit minimal. Le parcours comporte un coefficient initial et la liste des 15 vecteurs joignant les autres coefficients. Chaque coefficient du parcours différent du coefficient initial est représenté par un vecteur décrivant son emplacement par rapport au coefficient précédent dans le parcours. Il est à noter que le parcours ne passe pas forcement par tous les coefficients de la sous-bande courante. En effet, il est possible de ne coder qu'une partie des 20 coefficients et de mettre les autres coefficients à la valeur zéro lors du The next step E5 is the coding of the locations of the coefficients. This step includes the determination of a path among the coefficients of the current sub-band so that the coding cost of this path is minimal. The route includes an initial coefficient and the list of 15 vectors joining the other coefficients. Each coefficient of the course different from the initial coefficient is represented by a vector describing its location with respect to the previous coefficient in the course. It should be noted that the route does not necessarily pass through all the coefficients of the current sub-band. Indeed, it is possible to code only part of the 20 coefficients and to set the other coefficients to zero when
décodage ultérieur.subsequent decoding.
Une fois le parcours déterminé, les coordonnées du coefficient initial sont codées par un codage binaire et les vecteurs sont codés par un codage entropique. L'étape E5 est détaillée dans la suite. Elle se situe dans le domaine des techniques de résolution du problème de voyageur de commerce. Plus particulièrement, il s'agit du problème du voyageur de commerce variable dans le temps. En effet, le cot associé au passage d'un échantillon à un autre dépend du parcours déjà effectué, puisque la distorsion de décodage d'un 30 échantillon dépend du rang auquel il est décodé et le débit dépend du vecteur Once the route has been determined, the coordinates of the initial coefficient are coded by binary coding and the vectors are coded by entropy coding. Step E5 is detailed below. It is in the area of techniques for solving the problem of a traveling salesman. More specifically, this is the problem of the time-varying traveling salesman. Indeed, the cost associated with the passage from one sample to another depends on the path already taken, since the decoding distortion of a sample depends on the rank at which it is decoded and the bit rate depends on the vector.
engendré et des vecteurs déjà présents dans le parcours effectué. generated and vectors already present in the route taken.
La forme codée d'une sous-bande de l'image comporte un modèle The coded form of a sub-band of the image includes a model
d'amplitude qui fournit une approximation de l'amplitude des coefficients et un parcours qui fournit une suite ordonnée des emplacements des coefficients. of amplitude which provides an approximation of the amplitude of the coefficients and a path which provides an ordered sequence of the locations of the coefficients.
L'emplacement du kème coefficient de cette suite est déterminé par le parcours 5 et son amplitude est déterminée par l'ordonnée correspondant à l'abscisse k selon le modèle d'amplitude. The location of the kth coefficient of this sequence is determined by the path 5 and its amplitude is determined by the ordinate corresponding to the abscissa k according to the amplitude model.
L'étape suivante E6 est un test pour déterminer si la sous-bande The next step E6 is a test to determine if the sub-band
courante est la dernière sous-bande de l'image à coder. current is the last sub-band of the image to be coded.
Si la réponse est négative, cette étape est suivie de l'étape E7 à l1 laquelle une sous-bande suivante est considérée. L'étape E7 est suivie de If the answer is negative, this step is followed by step E7 to 11 which a next sub-band is considered. Step E7 is followed by
l'étape E3 précédemment décrite. step E3 previously described.
Si la réponse est positive à l'étape E6, alors les données codées subissent un codage entropique connu en soi, tel que codage d'Huffman ou codage arithmétique, et le codage de l'image est terminé. 15 La figure 5 représente un mode de réalisation de l'étape E5 de codage des emplacements des coefficients. Ce codage comporte des étapes If the response is positive in step E6, then the coded data undergoes an entropy coding known per se, such as Huffman coding or arithmetic coding, and the coding of the image is finished. FIG. 5 represents an embodiment of step E5 of coding the locations of the coefficients. This coding includes steps
E51 à E60.E51 to E60.
Ce codage comporte globalement la détermination d'un parcours 20 parmi les coefficients et le codage des coefficients en fonction du parcours. Un parcours comporte un coefficient de la sous-bande, dit coefficient initial, et une This coding generally comprises the determination of a path 20 among the coefficients and the coding of the coefficients as a function of the path. A route has a coefficient of the sub-band, called the initial coefficient, and a
liste de vecteurs joignant au moins une partie des autres coefficients. list of vectors joining at least some of the other coefficients.
La détermination du parcours est optimisée selon l'invention. The route determination is optimized according to the invention.
On considère une population de solutions qui définissent chacune un 25 parcours possible parmi les coefficients. We consider a population of solutions which each define a possible path among the coefficients.
Une solution possible est décrite par un génome. Un génome est ici une liste de Q+1 indices, o Q est le nombre de points dans la sous-bande de fréquence considérée. Les coefficients de la sous-bande sont considérés de gauche à droite et de haut en bas dans la sous-bande. Chaque coefficient de la 30 sous-bande est associé à un indice en fonction de cet ordre de lecture. Un indice supplémentaire X est réservé au point d'arrêt du parcours. Au-delà de ce One possible solution is described by a genome. A genome is here a list of Q + 1 indices, where Q is the number of points in the frequency sub-band considered. The coefficients of the sub-band are considered from left to right and from top to bottom in the sub-band. Each coefficient of the sub-band is associated with an index according to this reading order. An additional index X is reserved at the stopping point of the route. Beyond that
point, les coefficients ne sont plus codés. period, the coefficients are no longer coded.
Ainsi, par exemple, le parcours des points 1-5-8-10-4 dans une image de dix points peut être codé de la façon suivante: So, for example, the route of points 1-5-8-10-4 in a ten-point image can be coded as follows:
(1 58104X23679).(1 58104X23679).
L'ordre des points après le point d'arrêt X n'a aucune importance. The order of the points after the breakpoint X has no importance.
Pour un ensemble de points à parcourir de taille donnée, des chemins de longueurs différentes dans cet ensemble sont représentés par les For a set of points to be traversed of given size, paths of different lengths in this set are represented by
génomes de longueur fixe.fixed length genomes.
L'étape E51 est une initialisation de la population des génomes. 10 Pour cela, un tirage aléatoire est réalisé pour déterminer pL solutions. En variante, il est possible de choisir au moins une partie des génomes de la Step E51 is an initialization of the genome population. 10 For this, a random draw is carried out to determine pL solutions. As a variant, it is possible to choose at least part of the genomes of the
population initiale.initial population.
L'étape suivante E52 est une évaluation réalisée par une fonction d'adaptation qui mesure la performance de chaque génome précédemment 15 déterminé. Pour cela, un cot de codage R + k.D est calculé pour chaque The next step E52 is an evaluation carried out by an adaptation function which measures the performance of each previously determined genome. For this, a coding cost R + k.D is calculated for each
chemin représenté par un génome.path represented by a genome.
Le cot de codage représente un compromis entre débit et distorsion. Le cot de codage d'un signal S est ici la fonction C(S) = R(S) + X.D(S), dans laquelle R(S) représente le débit de transmission de la forme 20 codée du signal S, D(S) représente la distorsion générée dans le signal reconstruit après codage et décodage, par rapport au signal d'origine et X; est The coding cost represents a compromise between bit rate and distortion. The coding cost of a signal S is here the function C (S) = R (S) + XD (S), in which R (S) represents the transmission rate of the coded form of the signal S, D ( S) represents the distortion generated in the reconstructed signal after coding and decoding, with respect to the original signal and X; East
un paramètre de réglage entre compression et distorsion. a setting parameter between compression and distortion.
Il est à noter que la minimisation de la fonction C(S) sur le signal S est équivalente à la minimisation de la fonction C(S) sur chaque élément d'une 25 partition du signal, en particulier sur chaque échantillon du signal. Cela est du It should be noted that the minimization of the function C (S) on the signal S is equivalent to the minimization of the function C (S) on each element of a partition of the signal, in particular on each sample of the signal. This is due
au fait que la distorsion et le débit sont respectivement additifs. to the fact that the distortion and the flow are respectively additive.
L'étape suivante E53 est une sélection ou séparation de la population en deux groupes. Pour cela, on considère un coefficient P compris dans l'intervalle fermé [0, 1]. La population de Ii génomes est alors divisée en 30 un groupe d'optimisation locale comportant P.Ft génomes et un groupe The next step E53 is a selection or separation of the population into two groups. For this, we consider a coefficient P in the closed interval [0, 1]. The population of Ii genomes is then divided into a local optimization group comprising P.Ft genomes and a group
d'exploration comportant (1-P).pt génomes. exploration comprising (1-P) .pt genomes.
Il est à noter qu'un même génome ne peut appartenir aux deux groupes. En revanche, si deux génomes sont identiques, il est possible qu'ils It should be noted that the same genome cannot belong to the two groups. On the other hand, if two genomes are identical, it is possible that they
se trouvent chacun dans un groupe différent. are each in a different group.
De préférence, le groupe d'optimisation locale comporte les P.pi 5 meilleurs génomes de la population, au sens de l'évaluation précédemment effectuée. Les meilleurs génomes sont les génomes qui produisent les cots de codage les plus faibles. En variante, les génomes du groupe d'optimisation locale sont déterminés par un tirage aléatoire selon lequel la probabilité d'être Preferably, the local optimization group includes the P.pi 5 best genomes of the population, within the meaning of the evaluation previously carried out. The best genomes are the genomes that produce the lowest coding costs. Alternatively, the genomes of the local optimization group are determined by a random draw according to which the probability of being
sélectionné augmente en fonction de la performance du génome. selected increases with the performance of the genome.
Le groupe d'optimisation locale permet de trouver une solution optimum, mais qui peut n'être qu'un optimum local si la recherche est limitée à The local optimization group makes it possible to find an optimum solution, but which may only be a local optimum if the search is limited to
ce groupe.this group.
Le groupe d'exploration comporte les (1-P).It autres génomes. Ce groupe permet au contraire d'explorer tout l'espace de recherche de manière à 15 ce que l'algorithme ne converge pas trop rapidement et que la solution ne soit The exploration group includes the (1-P) .It other genomes. On the contrary, this group makes it possible to explore the entire search space in such a way that the algorithm does not converge too quickly and that the solution is not
pas un optimum local.not a local optimum.
L'étape E53 est suivie des étapes E54 et E55. Step E53 is followed by steps E54 and E55.
A l'étape E54, un opérateur génétique disruptif est appliqué sur le In step E54, a disruptive genetic operator is applied to the
groupe d'exploration. Cet opérateur comporte une mutation qui est appliquée à 20 tous les génomes du groupe d'exploration. exploration group. This operator has a mutation which is applied to all the genomes of the exploration group.
Par exemple, l'opérateur disruptif est une mutation qui provoque de grands sauts dans l'espace de recherche. La mutation " Scramble Mutation " décrite par P. Larranaga, C. M. H. Kuijpers et R.H. Murga dans " Tackling the travelling Salesman Problem with Evolutionary Algorithms: Representation and 25 Operators ", page 36, satisfait ce critère. Ce document est accessible dans la base de données de " Scientific Literature Digital Library " à l'adresse internet: For example, the disruptive operator is a mutation that causes large jumps in the search space. The mutation "Scramble Mutation" described by P. Larranaga, C. M. H. Kuijpers and R.H. Murga in "Tackling the traveling Salesman Problem with Evolutionary Algorithms: Representation and 25 Operators", page 36, satisfies this criterion. This document is available in the "Scientific Literature Digital Library" database at the internet address:
http://citeseer.ni.nec.com/2 10802.html. http://citeseer.ni.nec.com/2 10802.html.
Un exemple d'application de la mutation " Scramble Mutation " est 30 représenté à la figure 6. Cette mutation sélectionne aléatoirement une partie 61 d'un génome donné 60 et la retire de celui-ci. Les index de la partie retirée 61 sont réordonnés aléatoirement et sont ensuite réintroduit dans le génome An example of application of the “Scramble Mutation” mutation is shown in FIG. 6. This mutation randomly selects part 61 of a given genome 60 and withdraws it from it. The indices of the removed part 61 are randomly reordered and are then reintroduced into the genome
initial pour former un second génome 62. initial to form a second genome 62.
En variante, l'opérateur disruptif comporte une ou plusieurs applications de la mutation appelée " Exchange mutation " et qui consiste à échanger l'emplacement de deux index choisis aléatoirement dans le génome. La figure 7 représente l'application de cette mutation à un génome As a variant, the disruptive operator has one or more applications of the mutation called "Exchange mutation" which consists in exchanging the location of two indexes chosen randomly in the genome. Figure 7 shows the application of this mutation to a genome
70. Les index 8 et 3 sont échangés ce qui produit un nouveau génome 71. 70. The indexes 8 and 3 are exchanged, which produces a new genome 71.
A l'étape E55, un opérateur génétique constructif est appliqué sur le 10groupe d'optimisation locale. Cet opérateur comporte un croisement suivi d'une In step E55, a constructive genetic operator is applied to the local optimization group. This operator includes a cross followed by a
mutation. Un croisement est un opérateur stochastique binaire qui combine une ou plusieurs caractéristiques de deux génomes parents de façon aléatoire de manière à générer un ou des nouveaux génomes. En variante, le croisement est replacé par une duplication des génomes parents, c'està-dire une recopie 15 de ceux-ci. mutation. A cross is a binary stochastic operator which combines one or more characteristics of two parent genomes in a random manner so as to generate one or more new genomes. As a variant, the crossing is replaced by a duplication of the parent genomes, that is to say a copy of these.
Chacun des génomes du groupe d'optimisation locale est un génome parent et est utilisé une seule fois. En variante, les génomes parents Each of the genomes in the local optimization group is a parent genome and is used only once. Alternatively, the parent genomes
sont sélectionnés par tirage aléatoire. are selected by random draw.
L'opérateur de croisement est appliqué à deux génomes parents. 2 0 Une mutation est ensuite appliquée aux deux génomes générés par le croisement. Par exemple, on utilise le croisement appelé " Order crossover " The crossover operator is applied to two parent genomes. A mutation is then applied to the two genomes generated by the cross. For example, we use the cross called "Order crossover"
décrit par P. Larranaga, C. M. H. Kuijpers et R.H. Murga dans " Tackling the travelling Salesman Problem with Evolutionary Algorithms: Representation and 25 Operators ", pages 24-25. described by P. Larranaga, C. M. H. Kuijpers and R.H. Murga in "Tackling the traveling Salesman Problem with Evolutionary Algorithms: Representation and 25 Operators", pages 24-25.
Ce croisement est représenté à la figure 8. Deux points de coupure 82 sont sélectionnés aléatoirement à l'intérieur de chacun des génomes parents 80 et 81. Chaque génome généré 83, 84 reçoit les index de l'un des 30 génomes parents 80, 81 entre les points de coupure. Puis les autres positions reçoivent les valeurs d'index de l'autre parent qui sont différentes de celles déjà affectées et dans l'ordre o elles apparaissent dans l'autre parent à partir du This crossing is represented in FIG. 8. Two cut points 82 are randomly selected inside each of the parent genomes 80 and 81. Each generated genome 83, 84 receives the indices of one of the 30 parent genomes 80, 81 between the cut points. Then the other positions receive the index values of the other parent which are different from those already assigned and in the order they appear in the other parent from the
second point de coupure.second cut-off point.
Selon un autre exemple, on utilise le croisement appelé " The According to another example, we use the cross called "The
position based crossover " décrit par P. Larranaga, C. M. H. Kuijpers et R.H. 5 Murga dans "Tackling the travelling Salesman Problem with Evolutionary Algorithms: Representation and Operators ", page 26. position based crossover "described by P. Larranaga, C. M. H. Kuijpers and R.H. 5 Murga in" Tackling the traveling Salesman Problem with Evolutionary Algorithms: Representation and Operators ", page 26.
Ce croisement est représenté à la figure 9. Des positions sont sélectionnées aléatoirement dans les génomes parents 90 et 91. Il s'agit ici des This crossing is represented in FIG. 9. Positions are selected randomly in the parent genomes 90 and 91. These are the
deuxième, troisième et sixième positions. second, third and sixth positions.
Un génome généré 92, 93 reçoit à ces positions les valeurs d'index situées aux mêmes positions de l'un des parents. Les autres positions reçoivent les valeurs d'index de l'autre parent qui sont différentes de celles déjà A genome generated 92, 93 receives at these positions the index values located at the same positions of one of the parents. The other positions receive the index values of the other parent which are different from those already
affectées et dans l'ordre o elles apparaissent dans l'autre parent. affected and in the order they appear in the other parent.
Deux génomes sont ainsi générés. Two genomes are thus generated.
Pour la mutation qui suit le croisement, on utilise l'opérateur décrit précédemment ou en variante, on utilise l'opérateur de mutation appelé " Insertion mutation " décrit par P. Larranaga, C. M. H. Kuijpers et R.H. Murga dans " Tackling the travelling Salesman Problem with Evolutionary Algorithms: For the mutation that follows the crossing, we use the operator described above or alternatively, we use the mutation operator called "Insertion mutation" described by P. Larranaga, CMH Kuijpers and RH Murga in "Tackling the traveling Salesman Problem with Evolutionary Algorithms:
Representation and Operators ", page 34. Representation and Operators ", page 34.
Cet opérateur sélectionne aléatoirement un index dans un génome, This operator randomly selects an index in a genome,
le retire du génome et le réinsère à un position déterminée aléatoirement. remove it from the genome and reinsert it at a randomly determined position.
Selon une variante de l'étape E55, les opérateurs de croisement, According to a variant of step E55, the crossing operators,
mutation et duplication sont appliqués aléatoirement aux génomes parents. mutation and duplication are applied randomly to the parent genomes.
Chaque opérateur a une probabilité d'être choisi. Le choix de l'opérateur à 25 appliquer est fait pour chaque couple à reproduire. Each operator has a probability of being chosen. The choice of operator to apply is made for each pair to be reproduced.
L'étape suivante E56 est la réunion du groupe d'optimisation locale, de la population résultant de l'optimisation locale et de la population résultant The next step E56 is the meeting of the local optimization group, of the population resulting from the local optimization and of the population resulting
de l'exploration.of exploration.
Le groupe d'optimisation locale contient par construction des 30 génomes performants au sens de l'évaluation réalisée à l'étape E52. La population résultant de l'optimisation locale est susceptible de contenir des génomes performants, en raison des opérateurs choisis et des génomes parents. La population résultant de l'exploration comporte des génomes qui sont susceptibles de réorienter la recherche de l'optimum vers une autre zone The local optimization group contains by construction 30 efficient genomes within the meaning of the evaluation carried out in step E52. The population resulting from local optimization is likely to contain efficient genomes, due to the operators chosen and the parent genomes. The population resulting from the exploration comprises genomes which are likely to redirect the search for the optimum towards another zone
de l'espace de recherche.search space.
En variante, le groupe d'optimisation locale n'est pas inclus dans la 5 nouvelle population, ce qui permet de réduire la taille mémoire nécessaire pour mémoriser les données en cours de traitement. As a variant, the local optimization group is not included in the new population, which makes it possible to reduce the memory size necessary to store the data being processed.
L'étape suivante E57 est une évaluation de la population courante. The next step E57 is an evaluation of the current population.
Cette étape est analogue à l'étape E52 précédemment décrite. Elle a pour résultat une performance pour chaque génome, établie en fonction d'un critère 10 qui est ici un cot de codage. This step is analogous to step E52 previously described. It results in a performance for each genome, established according to a criterion 10 which is here a coding cost.
L'étape suivante E58 est une sélection pour ne conserver que j The next step E58 is a selection to keep only j
génomes. On utilise ici une sélection appelée tirage à la roulette décrite dans l'ouvrage " Evolutionary Computation 1: Basic Algorithms and operators " de John Grefensette, " the Institute of Physic Publishing, Bristol et Philadelphia ", 15 édité par T. Back, B. Fogel et T. Michalewicz, pages 175-176. genomes. We use here a selection called roulette draw described in the book "Evolutionary Computation 1: Basic Algorithms and operators" by John Grefensette, "the Institute of Physic Publishing, Bristol and Philadelphia", 15 edited by T. Back, B. Fogel and T. Michalewicz, pages 175-176.
Cette méthode assigne à chaque génome une probabilité d'être This method assigns to each genome a probability of being
sélectionné qui est proportionnelle à sa performance. selected which is proportional to its performance.
En variante, on peut utiliser une sélection appelée " rankedselection ", décrite dans l'ouvrage précédent aux pages 187 à 194. Cette 20 sélection ordonne les génomes de la population selon leur performance. La Alternatively, a selection called "rankedselection", described in the previous work on pages 187 to 194, can be used. This selection orders the genomes of the population according to their performance. The
probabilité de sélection dépend alors du rang du génome dans la population. probability of selection then depends on the rank of the genome in the population.
En outre, dans toutes les variantes, le meilleur génome est Furthermore, in all variants, the best genome is
systématiquement gardé dans la nouvelle population. systematically kept in the new population.
L'étape suivante E59 est un test pour déterminer si un critère d'arrêt 25 est satisfait. Le critère d'arrêt est par exemple: - la performance du meilleur génome est satisfaisante pour le problème à résoudre, - il y a convergence et la population n'évolue plus d'une itération à l'autre, The next step E59 is a test to determine whether a stop criterion 25 is satisfied. The stopping criterion is for example: - the performance of the best genome is satisfactory for the problem to be solved, - there is convergence and the population does not evolve from one iteration to another,
3 0 - une durée limite de traitement a été atteinte. 3 0 - a processing limit has been reached.
Le critère d'arrêt peut aussi être une combinaison de plusieurs The stopping criterion can also be a combination of several
critères. Lorsque que l'un des critères est vérifié, il y a arrêt du traitement. criteria. When one of the criteria is verified, treatment is stopped.
Tant que le critère d'arrêt n'est pas satisfait, le traitement est réitéré As long as the termination criterion is not met, the treatment is repeated
et pour cela l'étape E59 est suivie de l'étape E53 précédemment décrite. and for this step E59 is followed by step E53 previously described.
Lorsque le critère d'arrêt est satisfait, le meilleur génome au sens de la performance est sélectionné à l'étape E60. Dans l'exemple choisi, ce génome représente un parcours parmi un ensemble d'échantillons. Bien entendu, la présente invention n'est nullement limitée aux modes de réalisation décrits et représentés, mais englobe, bien au contraire, When the stopping criterion is satisfied, the best genome in the sense of performance is selected in step E60. In the example chosen, this genome represents a route among a set of samples. Of course, the present invention is in no way limited to the embodiments described and shown, but includes, on the contrary,
toute variante à la portée de l'homme du métier. any variant within the reach of the skilled person.
Claims (29)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0212874A FR2846180A1 (en) | 2002-10-16 | 2002-10-16 | Mathematical function optimizing method for determining path among digital signal samples, involves separating initial population into groups to form solutions, selecting another population best solutions to form third population |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0212874A FR2846180A1 (en) | 2002-10-16 | 2002-10-16 | Mathematical function optimizing method for determining path among digital signal samples, involves separating initial population into groups to form solutions, selecting another population best solutions to form third population |
Publications (1)
Publication Number | Publication Date |
---|---|
FR2846180A1 true FR2846180A1 (en) | 2004-04-23 |
Family
ID=32050443
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR0212874A Withdrawn FR2846180A1 (en) | 2002-10-16 | 2002-10-16 | Mathematical function optimizing method for determining path among digital signal samples, involves separating initial population into groups to form solutions, selecting another population best solutions to form third population |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR2846180A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104809889A (en) * | 2015-04-19 | 2015-07-29 | 北京工业大学 | Traffic signal timing optimization method based on principal component analysis improvement genetic algorithm |
-
2002
- 2002-10-16 FR FR0212874A patent/FR2846180A1/en not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104809889A (en) * | 2015-04-19 | 2015-07-29 | 北京工业大学 | Traffic signal timing optimization method based on principal component analysis improvement genetic algorithm |
CN104809889B (en) * | 2015-04-19 | 2017-03-01 | 北京工业大学 | Traffic Signal Timing optimization method based on principal component analysiss improved adaptive GA-IAGA |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2016071577A1 (en) | Method for producing animated images | |
FR2889382A1 (en) | Multidimensional digital signal e.g. digital image, filtering method for e.g. coding device, involves obtaining filtering value of filtered sample in selecting one value among simulated filtering values of sample based on preset criterion | |
FR2790173A1 (en) | DIGITAL SIGNAL TRANSFORMATION DEVICE AND METHOD | |
FR2835366A1 (en) | Method and device for the forming of a reduced compressed digital signal | |
FR2816154A1 (en) | INSERTION OF ADDITIONAL INFORMATION INTO DIGITAL DATA | |
FR2846835A1 (en) | Data e.g. digital image coding process for digital camera and photocopier, involves selecting coding mode based on coding costs calculated according to same throughput-distortion bias for overall image | |
FR2792150A1 (en) | Video image digital signal coding-decoding method, storing signal sub signal decompressed images first position and performing iterative process to determine optimum decoding techniques | |
FR2825224A1 (en) | METHOD AND DEVICE FOR COMPRESSING AND / OR INDEXING DIGITAL IMAGES | |
FR2846180A1 (en) | Mathematical function optimizing method for determining path among digital signal samples, involves separating initial population into groups to form solutions, selecting another population best solutions to form third population | |
FR2782861A1 (en) | GEOMETRIC TRANSCODING OF A DIGITAL SIGNAL | |
FR2816138A1 (en) | DECODING OF DIGITAL DATA | |
FR2901037A1 (en) | Reference structural pattern generating method for computer, involves determining reference structural pattern per group of determined primary structural patterns, where reference pattern represents patterns of group | |
EP4161081A1 (en) | Method for generating a personalized television channel for a user of a terminal configured to access at least one audiovisual content broadcasting service, corresponding device, service equipment, system and computer program. | |
FR2835665A1 (en) | CODING AND DECODING OF DIGITAL SIGNALS | |
FR2853476A1 (en) | Digital signal e.g. video image, coding process for e.g. printer, involves selecting code vectors dictionary from set comprising preset number of code vectors depending on length of path, and code vector in selected dictionary | |
FR2927745A1 (en) | Digital signal filtering method for telecommunication system, involves determining optimal filter based on criterion that depends on values of sub-signal, and associating optimal filter with context function corresponding to sub-signal | |
FR2846837A1 (en) | Data e.g. fixed images, video, sound sample coding process, involves determining basic list of samples that are to be coded and modifying samples in order to arrange them in decreasing amplitude | |
FR2846836A1 (en) | Data e.g. video coding method, involves estimating number of coefficients that are to be coded according to criterion of coding and performing approximation of coefficients taken on estimation number and in order of calculation | |
FR2790172A1 (en) | Digital signal transformation method, in which signal is processed by successive samples, such that calculations made on any series do not take into account samples in following series, and any series terminates in low frequency sample | |
FR2827408A1 (en) | Genetic algorithm digital signal coding scheme | |
FR2790171A1 (en) | Digital signal transformation method, in which signal is processed by successive samples, such that calculations made on any series do not take into account samples in following series, and any series terminates in low frequency sample | |
FR2929431A1 (en) | METHOD AND DEVICE FOR CLASSIFYING SAMPLES REPRESENTATIVE OF AN IMAGE DIGITAL SIGNAL | |
FR2834832A1 (en) | Fixed image/sound/video lossy digital signal compression having each element occurrences determined/null occurrences modified and associated rate function calculated following occurrence number | |
FR2829858A1 (en) | Digital signal processing method e.g. for video signals, involves determining minimum distance between two samples and between copies of one sample and other sample | |
FR2846834A1 (en) | Data e.g. digital image coding method for photocopier and scanner, involves forming vector between two sample slots of successive data based on slot of intermediate data that have not been already coded by vector |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ST | Notification of lapse |