Recherche de Motif dans les Permutations

par Both emerite Neou

Projet de thèse en Informatique

Sous la direction de Stéphane Vialette et de Rémi Rhodes.

Thèses en préparation à Paris Est en cotutelle avec l'Université de veronne , dans le cadre de MSTIC : Mathématiques et Sciences et Technologies de l'Information et de la Communication , en partenariat avec LIGM - Laboratoire d'informatique Gaspard-Monge (laboratoire) depuis le 01-10-2013 .


  • Résumé

    Une occurrence d'un pattern dans une permutation $pi$ est - en quelque sorte - une sous-permutation : c'est une sous-séquence de $pi$ tel que si l'on la renormalisé, elle soit égale au pattern. Par exemple, si l'on cherche une occurrence du pattern $sigma=3214$ dans la permutation $pi = 62473185$ est la sous-séquence $6418$, qui est bien normalisée en $3214$. La notion de pattern dans les permutations généralise celle de pattern dans un texte, en lui ajoutant une dimension supplémentaire, et à ce titre certaines questions algorithmiques se doivent d'être posées. Il faut en particulier s'interroger sur les problèmes d'occurrence d'un pattern dans une permutation. En dehors de leur intérêt manifeste, la résolution de problèmes algorithmiques de cette nature sur les permutations peut avoir des retombées en combinatoire. En effet, du point de vue combinatoire, la notion de pattern sert principalement à la définition des classes de permutations, par les patterns qu'ils évitent. Formellement, le problème de PERMUTATION PATTERN MATCHING (PPM) s'énonce de la façon suivante : Étant données deux permutations $pi in S_n$ appelé le texte et $sigma in S_k$ appelé le pattern, existe-t-il une occurrence de $sigma$ dans $pi$? Le problème PPM est NP-difficile et plusieurs axes de recherche ont donc été proposés pour faire face à la difficulté inhérente du problème. J'étudie les conséquences algorithmiques de restreindre les permutations en entrées : le texte ou/et le pattern doit/doivent appartenir à une certaine classe. On peut alors espérer réduire la complexité du problème. Pour donner un exemple, on sait que si le pattern évite les permutations 3142 et 2413 alors PPM est polynomial. Pour mes recherches, je me concentre sur le PPM si le pattern évite 321. Ce sujet est très important puisque résoudre PPM si le pattern évite 321, permettra de résoudre PPM si le pattern évite 123. De plus, tous les cas où le pattern évite une permutation de taille 3 sont résolus : on sait résoudre PPM en temps polynomial. Si le pattern évite 321 (ou 123), on ne sait toujours pas si le problème est solvable en temps polynomial. En outre, si PPM est NP-complet avec un pattern qui évite 321, alors PPM est encore NP-complet si le pattern évite une permutation de taille égale ou supérieur à 5, puisque toutes ces permutations contiennent 321 et/ou 123, et donc le pattern doit éviter 321 ou 123. Pour souligner l'intérêt de ce pattern par la communauté, un article, publié en octobre 2015, étudie le cas de PPM quand le texte et le pattern évitent 321. Ce problème m'a amené à regarder PPM si le pattern n'est pas une sous-classe des permutations qui évitent 3142 et 2413. A ma connaissance quand PPM peut être résolu en temps polynomial en contraignant le pattern à appartenir à une certaine classe, on a une sous-classe des permutations qui évitent 3142 et 2413. Ce qui est très réducteur. De plus s'il existe une autre classe par évitement de pattern pour laquelle le problème est polynomial, alors cette classe est une sous-classe des permutations qui évitent 321 et/ou 123. Ce qui augmenterait les chance que PPM soit polynomial si le pattern évite 321. Pour cela, je m'appuie sur les grid permutations. Une autre partie de mes recherches se concentre sur une généralisation des patterns : des patterns bivinculaires. Avec des patterns bivinculaires, on recherche une occurrence de ce pattern, mais on ajoute des conditions sur l'occurrence : On peut demander à ce que deux éléments consécutifs en position (respectivement valeur) dans le pattern le soit aussi dans l'occurrence. Par exemple, si l'on cherche le pattern 12 tel que les valeurs soient consécutives dans la permutation 21345, la sous-séquence 13 n'est pas une occurrence, mais 34 l'est. Les patterns bivinculaires étant une généralisation des patterns, le problème est toujours NP-complet. Mais on peut espérer qu'avec certaines contraintes, le problème a une solution polynomial.

  • Titre traduit

    Permutation Pattern Matching


  • Résumé

    The main focus for my thesis will be algorithm on permutations. I am planning to study 3 subjects. subsubsection{Permutation Pattern matching} A motif in a permutation $pi$ is a “emph{sub-permutation}”: It is a sequence, canonised of the permutation $pi$. For instance, $pi = 6 2 4 7 3 1 8 5$ has the motif $sigma = 3 2 1 4$, obtain by the sequence $6 4 1 8$ when canonised become $3 2 1 4$. A motif in a permutation is a generalisation of motif in a text. With such idea, some problems seem legit. Such problem as finding the number of occurrence of a motif or finding a motif shared in several permutations. This can also be useful for combinatorics. Indeed, pattern matching can be use to define classes of permutation : there are closed set by the relation of motif. Formally, Permutation Pattern Matching problem (PPM) is defined as follows : Giving two permuation $pi in S_n$ and $sigma in S_k$, does $sigma$ is a motif of $pi$? PPM is know to be NP-Hard, I will try to see the problem with a parameterized complexity point of view. The PPM problem, under the parameterized complexity view, become : Giving two permuation $pi in S_n$ and $sigma in S_k$, cna we decide whether or not $sigma$ is a motif of $pi$ in $f(k) , text{poly}(n)$, where $text{poly}$ is a polynome and $f$ can be any function. Our goal is to find an algorithm that can be usable for small value of $k$. subsubsection{Elementary Transpositions Switches} A permutation which swap two elements $i$ and $j$ is called a transposition. A elementary transpositions swap two neighboring elements. A elementary transpositions switches is a permutation that apply several independent elementary transpositions. For instance a transposition elementary transpositions switches can transform $1 2 3 4$ into $2 1 3 4$, $1 3 2 4$, $1 2 4 3$, or $2 1 4 3$. My focus will be in two problems : begin{itemize} item for a permutation $pi in S_n$, can we compute the minimal number of Elementary Transpositions Switches needed for $pi$ to become the identity permutation? item If we add a condition on $pi$ on a motif, How does that affect the previous problems? end{itemize} subsubsection{Finding A Consensus In Permutations} The Kendall tau distance (notée $d_{Kt}$) count the difference between two permutation. For instance, the Kendall tau distance between : $pi_1= 1 4 2 7 3 6 5$ and $pi_2 = 2 1 4 7 5 3 6$ is $4$ because the pair $(1, 2)$, $(4, 2)$, $(3, 4)$, $(6, 5)$ are not in the same order in both permutations. The Kendall tau distance is the major tool in ranking algorithms. I will study the following problems : Given $k$ permutations $pi_1, pi_2, ldots, pi_k in S_n$, compute a permutation $sigma$ which minimise $sum_{i=1}^{k} d_{Kt}(sigma, pi_i)$. $sigma$ is called the consensus of permutations $pi_1, pi_2, ldots, pi_k$. The problems is NP-complete for $k geq 4$ and $k$ even. Two problems will be studied : begin{itemize} item The complexity is still unknow for $k geq 3$ and $k$ odd. Can finding a consensus for a odd number of permutations can be done in polynomial time? item Can we find a approximate solution in which we can estimate the distance between the real consensus? end{itemize}