Automatizovaná úprava souborů pomocí genetického programování

Loading...
Thumbnail Image

Date

Authors

Sedláček, Marek

Mark

A

Journal Title

Journal ISSN

Volume Title

Publisher

Vysoké učení technické v Brně. Fakulta informačních technologií

ORCID

Abstract

Úprava souborů je nedílnou součástí práce pro mnoho lidí, ale ne každý umí programovat a nebo má dostatečnou znalost editovacích nástrojů, aby byl tento proces efektivní a rychlý. Toto je přesně to, co se snaží program představený v této práci -- Ebe -- vyřešit. Ebe z úryvků úprav provedených uživatelem pomocí genetického programovaní nalezne algoritmus na požadovanou transformaci souboru, který je pak možné použít na celý soubor nebo i více souborů najednou.  Ebe se skládá z více částí, které musely být navrhnuty a implementovány ke splnění stanovených cílů. Za tímto účelem byl navrhnut nový programovací jazyk pro editaci souborů a kompatibilitu s genetickým programováním. Dále byl implementován interpreter pro tento jazyk a také překladač, který z poskytnutých ukázek syntetizuje editační algoritmus. Ebe bylo poté otestován a porovnáno s dalšími nástroji pro úpravu souborů. Tyto experimenty byly zaměřeny na celkovou editační dobu a Ebe ve většině experimentů dosáhlo lepších časů než jazyk Python 3 a podobných editačních časů jako jazyk AWK. Tyto experimenty potvrdily, že pro mnoho často prováděných úprav má Ebe potenciál jako alternativní nástroj pro tyto úlohy.
File editing is an integral part of today's work for many people, but not everyone has programming skills or deep knowledge of editing tools to make their editing efficient and quick. This is exactly what the program presented in this thesis -- Ebe -- is trying to solve. Ebe takes snippets of file edits done by the user and using genetic programming it finds the correct algorithm to transform the whole file or even multiple files into the desired output.  Ebe consist of multiple parts, which had to be designed and implemented to achieve its goals. For this purpose a new programming language was designed to suite file editing and work well with genetic programming, an interpreter for this language was implemented as well as a compiler that uses genetic programming to synthesize the editing algorithm based on given examples. Ebe was then tested with other tools for file editing. These experiment focused on the overall editing speed and Ebe ended up having better editing times than Python 3 and similar editing times as the language AWK in most experiments. These experiments proved, that for many frequent editing tasks Ebe has a potential as an alternative tool for file editing.

Description

Citation

SEDLÁČEK, M. Automatizovaná úprava souborů pomocí genetického programování [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2022.

Document type

Document version

Date of access to the full text

Language of document

en

Study field

Bioinformatika a biocomputing

Comittee

prof. Ing. Lukáš Sekanina, Ph.D. (předseda) doc. Ing. Zdeněk Vašíček, Ph.D. (místopředseda) doc. Ing. Michal Bidlo, Ph.D. (člen) Ing. Ivana Burgetová, Ph.D. (člen) Ing. Ondřej Lengál, Ph.D. (člen) prof. Ing. Radomil Matoušek, Ph.D. (člen)

Date of acceptance

2022-06-21

Defence

Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm A. Otázky u obhajoby: Umí se aplikace vypořádat s parsováním dat využívajících tzv. string quoting, jako je např. v CSV a co by bylo zapotřebí doplnit?  Bylo by možné v případě ukázky v sekci 6.1 na výstup vypsat jednotlivé složky barev v desítkovém formátu oddělené čárkou? Tzn. z jednoho textového pole vygenerovat více textových polí?

Result of defence

práce byla úspěšně obhájena

DOI

Collections

Endorsement

Review

Supplemented By

Referenced By

Citace PRO