Difference between revisions of "CSI Seminar 2017-07-04"
From LRDE
Laurent Xu (talk | contribs) |
|||
Line 1: | Line 1: | ||
+ | {{CSISeminar |
||
− | <center> <img src="%WWWLRDE%images/lrde_big.png"> </center> |
||
+ | |date=2017-07-04 |
||
− | |||
+ | |hours=10h00-16h15 |
||
− | %TOC% |
||
+ | |location=Salle L0 |
||
− | |||
+ | }} |
||
− | ---+ %BLUE%CSI Seminar: 4 July 2017, EPITA, 10h, Salle L0 - LRDE, KB %ENDCOLOR% |
||
+ | |||
− | |||
+ | |||
− | |||
+ | |||
− | ---++ SPOT |
||
+ | ===== <span style="color:#00FF00">Spot</span>===== |
||
− | |||
+ | |||
− | ---+++ 10h00 : Un ensemble d'outils de conversion en automate de |
||
+ | {{CSISeminarSpeaker |
||
− | co-Büchi -- [[%MAINWEB%.AlexandreGbaguidiAisse][Alexandre Gbaguidi A¨isse]] |
||
+ | |id=gbaguidiaisse.17.seminar |
||
− | |||
+ | |time=10h00 |
||
− | Grâce au format HOA, il y a de moins en moins de |
||
+ | }} |
||
− | barrières entre des -automates avec différentes |
||
+ | {{CSISeminarSpeaker |
||
− | conditions d'acceptation. Spot, une bibliothèque |
||
+ | |id=gillard.17.seminar |
||
− | manipulant les -automates supporte des conditions |
||
+ | |time=10h30 |
||
− | d'acceptations arbitraires et propose déjà quelques |
||
+ | }} |
||
− | conversions entre elles. Nous rajoutons de nouveaux |
||
+ | {{CSISeminarSpeaker |
||
− | algorithmes de conversions capables de convertir (quand |
||
+ | |id=xu.17.seminar |
||
− | c'est possible) n'importe quelle condition d'acceptation |
||
+ | |time=11h00 |
||
− | classique vers du co-Büchi déterministe. Boker and |
||
+ | }} |
||
− | Kupferman ont mis au point des méthodes asymptotiquement |
||
+ | {{CSISeminarSpeaker |
||
− | optimales réalisant ces conversions. Nous avons |
||
+ | |id=tourneur.17.seminar |
||
− | implémenté leurs méthodes avec quelques optimisations |
||
+ | |time=11h30 |
||
− | et adaptations: nous supportons les conditions |
||
+ | }} |
||
− | d'acceptations dites "Streett-like", celles écrites sous |
||
+ | {{CSISeminarSpeaker |
||
− | forme normale disjonctive (y compris celles dites |
||
+ | |id=remaud.17.seminar |
||
− | "Rabin-like") ainsi que les acceptations basées sur les |
||
+ | |time=13h30 |
||
− | transitions ("transition-based"). Ces algorithmes peuvent |
||
+ | }} |
||
− | être utilisés pour vérifier si une formule LTL est de |
||
+ | {{CSISeminarSpeaker |
||
− | la famille "persistence". |
||
+ | |id=michaud.17.seminar |
||
− | |||
+ | |time=14h00 |
||
− | ---+++ 10h30 : Test de vacuité bi-bande dans Spot -- [[%MAINWEB%.ClementGillard][Clément Gillard]] |
||
+ | }} |
||
− | |||
+ | ===== <span style="color:#00FF00">Olena</span>===== |
||
− | Spot est une bibliothèque qui manipule des |
||
+ | |||
− | -automates dont les conditions d'acceptation sont |
||
+ | {{CSISeminarSpeaker |
||
− | exprimées avec au plus 32 ensembles d'acceptation. |
||
+ | |id=houang.17.seminar |
||
− | Puisque la condition d'acceptation du produit de deux |
||
+ | |time=14h45 |
||
− | automates doit utiliser la somme de leurs ensembles, on ne |
||
+ | }} |
||
− | peut pas construire des produits dont les opérandes |
||
+ | {{CSISeminarSpeaker |
||
− | utilisent plus de 32 ensembles au total. Une opération |
||
+ | |id=collette.17.seminar |
||
− | typique sur les automates est de calculer |
||
+ | |time=15h15 |
||
− | pour décider si intersecte . |
||
+ | }} |
||
− | Lorsqu'elle est implémentée par , |
||
+ | {{CSISeminarSpeaker |
||
− | le calcul du produit limite le nombre d'ensembles |
||
+ | |id=dangla.17.seminar |
||
− | d'acceptation que A et B peuvent utiliser. On propose une |
||
+ | |time=15h45 |
||
− | nouvelle fonction qui réalise le test de |
||
+ | }} |
||
− | vacuité de sans construire un automate et |
||
− | donc sans limite sur les conditions d'acceptation. L'outil |
||
− | ltlcross peut maintenant comparer des automates |
||
− | pour un total supérieur à 32 ensembles d'acceptation. |
||
− | |||
− | ---+++ 11h00 : Réduction par simulation à pas -- [[%MAINWEB%.LaurentXU][Laurent XU]] |
||
− | |||
− | En vérification formelle à l'aide |
||
− | d'-automates, la construction d'automates plus |
||
− | petits réduit beaucoup le temps d'exécution et la |
||
− | consommation mémoire d'opérations coûteuses telles |
||
− | que le produit synchronisé. La minimisation |
||
− | d'-automates étant un problème NP-complet, nous |
||
− | concentrons notre travail sur les opérations de |
||
− | réduction. Spot possède déjà une méthode de |
||
− | réduction par simulation fonctionnant pour toutes |
||
− | conditions d'acceptation. Cette méthode utilise une |
||
− | simulation à un pas reposant sur la signature des |
||
− | états. L. Clemente et R. Mayr ont proposé une méthode |
||
− | de réduction par simulation à pas ne fonctionnant |
||
− | que pour les automates de Büchi et ils ont montré que |
||
− | l'augmentation de ce nombre de pas peut améliorer la |
||
− | réduction. Nous étudions une généralisation de |
||
− | l'opération de réduction existante dans Spot pour |
||
− | qu'elle fonctionne avec des simulations à pas reposant sur la signature des états. |
||
− | |||
− | ---+++ 11h30 : Réduction d'ordre partiel dans SPOT -- [[%MAINWEB%.VincentTourneur][Vincent Tourneur]] |
||
− | |||
− | Les outils de vérification formelle souffrent |
||
− | actuellement d'un problième de passage à l'échelle, |
||
− | à cause de leur consommation de mémoire. La réduction |
||
− | d'ordre partiel est une des techniques permettant de la |
||
− | réduire notablement, en ne calculant que les données |
||
− | requises à la volée. Il en existe beaucoup |
||
− | d'algorithmes à l'état de l'art, et cette technique est |
||
− | utilisée dans plusieurs logiciels (comme SPIN ou LTSmin). |
||
− | Nous allons parler ici de l'implémentation de certains de |
||
− | ces algorithmes dans la bibliothèque Spot, puis de leur |
||
− | optimisation. Les résultats obtenus montrent une |
||
− | diminution notable de la consommation de mémoire, ce qui |
||
− | implique un gain pour toutes les étapes suivantes de la vérification. |
||
− | |||
− | ---+++ 13h30 : Intégration de TChecker dans Spot -- [[%MAINWEB%.ArthurRemaud][Arthur Remaud]] |
||
− | |||
− | Un automate temporisé est un -automate |
||
− | représentant un modèle comportant des conditions de |
||
− | temps continu, ce qui peut aboutir à un espace d'états |
||
− | infini. Cependant, il est possible de le ramener à un |
||
− | automate fini, appelé graphe de zones, afin d'étudier |
||
− | ses propriétés. Dans ce rapport, nous montrons comment |
||
− | les automates temporisés sont intégrés à Spot. |
||
− | |||
− | Nous utilisons TChecker, qui est un programme conçu au |
||
− | LaBRI. Nous expliquons comment sont intégrés les |
||
− | représentations des graphes de zones qu'utilise TChecker |
||
− | pour travailler sur les automates temporisés dans Spot. |
||
− | Nous montrons ensuite comment les algorithmes de Spot |
||
− | lisent cette adaptation pour travailler sur des automates |
||
− | temporisés et des graphes de zones. Nous montrons enfin |
||
− | comment sont contournés certains inconvénients de |
||
− | TChecker afin de rendre plus simple son utilisation par Spot. |
||
− | |||
− | ---+++ 14h00 : Synthèse LTL avec Spot -- [[%MAINWEB%.ThibaudMichaud][Thibaud Michaud]] |
||
− | |||
− | Nous présentons un nouvel outil de synthèse de |
||
− | circuit à partir de spécifications LTL. Il réduit le |
||
− | problème de synthèse à un jeu à parité en |
||
− | exploitant la bibliothèque Spot pour manipuler |
||
− | efficacement les -automates. Deux méthodes ont |
||
− | été implémentées pour la résolution du jeu: |
||
− | l'algorithme récemment découvert par Calude et al., qui |
||
− | a la meilleure compléxité théorique connue pour ce |
||
− | problème, et l'algorithme récursif de Zielonka, connu |
||
− | pour ses bonnes performances pratique. Finalement, la |
||
− | stratégie gagnante est traduite en un circuit |
||
− | Et-Inverseur qui modélise la formule LTL d'origine. |
||
− | |||
− | ---++ OLENA |
||
− | |||
− | ---+++ 14h45 : L'Arbre de partition binaire pour le traitement d'images -- [[%MAINWEB%.FabienHOUANG][Fabien HOUANG]] |
||
− | |||
− | L'arbre binaire de partition est une structure qui permet |
||
− | un traitement d'images, une segmentation et une recherche |
||
− | d'informations efficaces dans une image. C'est une |
||
− | structure hiérarchique qui permet de simplifier les |
||
− | opérations et la reconnaissance sur une image. Il peut |
||
− | utiliser différents models région et fonctions de |
||
− | calcul de distance pour se créer. La construction de cet |
||
− | arbre se fait habituellement à partir d'une image |
||
− | pré-segmentée pour des questions de performances et de |
||
− | gain de temps. Tous ces paramètres peuvent varier et |
||
− | changer la représentation de l'image par le BPT. La |
||
− | résistance de l'arbre au bruit peut aussi être |
||
− | étudiée, par exemple trouver quel niveau de l'arbre |
||
− | sera influencé par le bruit. |
||
− | |||
− | ---+++ 15h15 : Calcul du Complexe de Morse-Smale à l'aide de coupe de |
||
− | ligne de partage des eaux -- [[%MAINWEB%.VictorCollette][Victor Collette]] |
||
− | |||
− | Le complexe de Morse-Smale est un outil utile pour |
||
− | analyser la topologie d’une image. Cependant, son calcul |
||
− | est onéreux et il existe plusieurs algorithmes qui |
||
− | possdent des différences dans la définition du |
||
− | complexe. D’un autre côté, l’algorithme de coupe de |
||
− | ligne de partage des eaux est un algorithme morphologique |
||
− | qui découpe des images en niveaux de gris. Il |
||
− | interprète les images comme des graphes valués sur les |
||
− | arrêtes, les poids étant donnés par le gradient de |
||
− | l’image. Lidija Comic était la première à mettre en |
||
− | avant une possible équivalence entre l’algorithme de |
||
− | calcul du Morse-Smale et l’algorithme de ligne de partage |
||
− | des eaux, avec des marqueurs spécifiques sur les maxima |
||
− | et les minima de l’image. Dans ce document, nous parlons |
||
− | de cette possibilité et nous proposons une |
||
− | implémentation d’une version modifiée de |
||
− | l’algorithme de coupe de ligne de partage des eaux, qui |
||
− | fonctionne sur un graphe valué sur les sommets pour |
||
− | calculer le complexe de Morse-Smale. |
||
− | |||
− | ---+++ 15h45 : Méthode d'évaluation d'évaluateur d'algorithme de |
||
− | détection de texte -- [[%MAINWEB%.AlionaDangla][Aliona Dangla]] |
||
− | |||
− | Plusieurs méthodes d'évaluations des algorithmes de |
||
− | détection de texte existent. Cependant, elles donnent des |
||
− | résultats différents, il est donc difficile d'estimer |
||
− | la pertinence de celles-ci. Afin d'évaluer ces |
||
− | méthodes, la solution proposée est de confronter les |
||
− | évaluations automatiques avec l'évaluation humaine en |
||
− | considérant celle-ci comme référence. Pour obtenir |
||
− | cette référence, un site internet à été |
||
− | réalisé de façon à ce qu'un grand nombre |
||
− | d'utilisateurs puissent classer de façon simple les |
||
− | résultats d'un grand nombre d'algorithmes de détection |
||
− | de texte sur des grandes bases d'images. L'interface |
||
− | utilisateur a été développée pour minimiser le |
||
− | nombre de comparaison que l'utilisateur doit réaliser |
||
− | afin d'obtenir un classement cohérent. Nous |
||
− | l'appliquerons sur les résultats du concours ICDAR 2013 |
||
− | (8 méthodes sur un lot de 233 images). |
Revision as of 14:47, 15 June 2017

Spot
10h00 A co-Büching Toolbox – Alexandre Gbaguidi Aïsse
Thanks to the HOA format there are less and less barriers between '"`UNIQ--math-00000005-QINU`"'-automata with different acceptance conditions. Spot, a library for '"`UNIQ--math-00000006-QINU`"'-automata manipulation, supports arbitrary acceptance condition and performs some conversions between them. We augmented the set of supported acceptance conversions with new algorithms that convert (when possible) all common classes of non deterministic '"`UNIQ--math-00000007-QINU`"'-automata to deterministic co-Büchi. Boker and Kupferman solved this conversion whith asymptotically tight constructions. We implement their methods with some optimizations and adjustments: we made it work with Streett-like acceptance, any acceptance in disjunctive normal form (including Rabin-like) and also transition-based acceptance. Using these conversions gives a new way to check whether an LTL formula is a persistence formula. 10h30 Two-automaton emptiness check in Spot – Clément Gillard
Spot is library that handles '"`UNIQ--math-00000009-QINU`"'-automata whose acceptance conditions are expressed with at most 32 acceptance sets. Since the acceptance condition of the product of two automata has to use the sum of their setswe cannot produce a product whose operands use more than 32 sets in total. A typical operation on automata is to compute '"`UNIQ--math-0000000A-QINU`"' to know if '"`UNIQ--math-0000000B-QINU`"' intersects '"`UNIQ--math-0000000C-QINU`"'. When it is implemented as '"`UNIQ--math-0000000D-QINU`"', the computation of the product throttles the amout of acceptance sets A and B can use. We propose a new function '"`UNIQ--math-0000000E-QINU`"' which does the emptiness check of '"`UNIQ--math-0000000F-QINU`"' without actually building an automaton and hence without any limit on the acceptance conditions. The ltlcross tool can now compare automata using a total of more than 32 acceptance sets. 11h00 Improvements of Simulation-based Reduction – Laurent Xu
In model checking using '"`UNIQ--math-0000003B-QINU`"'-automata, the construction of smaller automata reduces a lot the runtime and the memory consumption of costly operations such as the synchronized product. As the minimization of deterministic Büchi automata is an NP-complete problem, we focus our work on reduction operations. Spot already implements a method of reduction by simulation working with all existential automata with any type of acceptance. This method uses a one-step simulation based on the signatures of the states. L. Clemente and R. Mayr propose a reduction by '"`UNIQ--math-0000003C-QINU`"'-step simulation only working with Büchi automata and show that increasing this number of steps may improve the reduction. We try to generalize the existing reduction operation in Spot to make it work with signature-based '"`UNIQ--math-0000003D-QINU`"'-step simulations. We also present how we can extend the existing reduction to make it work with alternating automata. 11h30 Partial order reduction in SPOT – Vincent Tourneur
Nowadays, model-checking tools suffer from a scalling problem, due to their memory consuption. Partial order reduction is one way allowing to notably reduce it, by computing only needed data on-the-fly. There are many state-of-the-art algorithms, and this method is used in many softwares (such as SPIN or LTSmin). We are going to talk about the implementation of it in the Spot libraryand then the optimisation. The results show a great decrease of the memory consuption, which implies some gain in all subsequent steps. 13h30 Integration of TChecker in Spot – Arthur Remaud
A timed automaton is an '"`UNIQ--math-00000003-QINU`"'-automaton which describe a model containing continue time conditions. Without treatments, those automata can have an infinite states space. However, we can translate them in finite automatacalled zone graph, to analyze their properties. In this report, we show how the timed automata have been integrated at Spot. We use TChecker, a program created at the LaBRI. We explain then how we integrate the representation of those TChecker's zone graph in Spot. Then we show how Spot's algorithms can read this translation to work on timed automata and zone graphes. We then explain how inconvenients of TChecker have been adapted to make simpler its utilisation by Spot. 14h00 LTL Synthesis with Spot – Thibaud Michaud
We present a new tool for circuit synthesis from LTL specifications. It reduces the synthesis problem to a parity game using Spot's efficient algorithms on '"`UNIQ--math-00000003-QINU`"'-automata. Two methods have been implemented for the resolution of the game: a recent algorithm by Calude et al. which has the best known theoretical complexity for the problem, and Zielonka's recursive algorithm known for its good practical performances. Finally, the winning strategy is translated to an And-Inverter Graph that models the original LTL formula.
Olena
14h45 Binary Partition Tree for Image Processing – Fabien Houang
Binary Partition Tree is an efficient structure to store region information for image processing, segmentation and information retrieval. It is a hierarchical structure to simplify operations and recognition on an image. It can use different region models and distance function calculation to create itself. Usually, we construct this tree on a segmented image for efficiency and time saving. All this parameters can variate and change the BPT representation of your image. The resistance of our tree to noise can also be studied, to find out what level of the tree is influenced by the noise. 15h15 Morse-Smale Complex computation with Watershed Cut – Victor Collette
The Morse-Smale complex is a useful tool to analyse the topology of an image. However, its computation is quite expensive, and several algorithms exist having some differences in the definition of the complex. On the other hand, the Watershed Cut is a morphological algorithm, which segments grayscale images. It considers that an image is an edge-weighted graph, where the weights are given by the image gradient. Lidija Comic was the first to coin a possible equivalence between the algorithms to compute the Morse-Smale complex and the Watershed Cut with specific markers on the minima and maxima of the image. In this work, we discuss about this possibility, and we propose an implementation of a modified Watershed Cut algorithm working on vertex-weighted graphs as a way to compute the Morse-Smale complex. 15h45 Evaluation method of text detection algorithm rating – Aliona Dangla
Several methods to evaluate text detection algorithms exist. However, they give different results, so it is difficult to estimate their relevance. In order to evaluate these methods, the proposed solution is to compare the automatic evaluations with the human evaluation by considering the latter as a reference. In order to obtain this reference, a website has been created so that a large number of users can easily classify the results of a large number of text detection algorithms on large image bases. The user interface has been developed to minimize the number of comparisons that the user must make in order to obtain a consistent ranking. The website will be tested with the results of the 2013 ICDAR competition, which is composed of height methods on a data set of 233 images.