Zobrazit minimální záznam

Heuristic approaches to the compilation to the SLR representation
dc.contributor.advisorKučera, Petr
dc.creatorHumlíček, Pavel
dc.date.accessioned2025-07-11T09:01:52Z
dc.date.available2025-07-11T09:01:52Z
dc.date.issued2025
dc.identifier.urihttp://hdl.handle.net/20.500.11956/200777
dc.description.abstractBooleovské funkce jsou jedním ze základních pojmů informatiky, které se využívají například v reprezentaci znalostí, teoretické informatice nebo kryptografii. Tato práce se zabývá reprezentací booleovských funkcí pomocí switch-list reprezentace (SLR). Existuje exaktní algoritmus pro kompilaci z DNF do SLR, který však není prakticky použitelný pro větší počet switchů. V této práci se nejdříve věnujeme modifikaci exaktního algoritmu pro CNF a následně navrhneme tři rozdílné heuristické přístupy ke kompilaci do SLR: řadící a shlukovací heuristiky, heuristický přístup založený na strojovém učení a dva lo- kálně optimalizační algoritmy. Rozdílné přístupy jsou implementovány a experimentálně porovnány z hlediska kvality výsledné reprezentace a časové náročnosti. Výsledky uka- zují, že vhodně zvolená heuristika může výrazně zlepšit poměr mezi kvalitou řešení a časovou náročností a že existují heuristiky, které vedou k podstatně kompaktnější SLR reprezentaci, než jiné. Kromě toho ukážeme slibný potenciál ve využití strojového učení pro kompilaci do SLR a velkou efektivitu lokálně optimalizačního sifting algoritmu.cs_CZ
dc.description.abstractBoolean functions are one of the basic concepts of computer science used, for example, in knowledge representation, theoretical computer science, or cryptography. This work deals with the representation of boolean functions using switch-list representation (SLR). There is an exact algorithm for compiling from DNF to SLR, but it is not suitable for practical applications where the number of switches gets larger. In this work, we first look at modifying the exact algorithm for CNF, and then we design three different heuristic approaches to compiling to SLR: sequencing and clustering heuristics, a machine learning heuristic approach, and two local optimization algorithms. The different approaches are implemented and compared experimentally in terms of the quality of the resulting representation and the time required. The results show that a well-chosen heuristic can significantly improve the ratio between the quality of the solution and time consumption, and that there are heuristics that lead to a significantly more compact SLR representation, than others. In addition, we will show promising potential in using machine learning to compile into SLRs and great efficiency of the locally optimizing sifting algorithm.en_US
dc.languageČeštinacs_CZ
dc.language.isocs_CZ
dc.publisherUniverzita Karlova, Matematicko-fyzikální fakultacs_CZ
dc.subjectboolean function|switch list representationen_US
dc.subjectbooleovské funkce|switch list reprezentacecs_CZ
dc.titleHeuristické přístupy ke kompilaci do SLR reprezentacecs_CZ
dc.typebakalářská prácecs_CZ
dcterms.created2025
dcterms.dateAccepted2025-06-20
dc.description.departmentKatedra teoretické informatiky a matematické logikycs_CZ
dc.description.departmentDepartment of Theoretical Computer Science and Mathematical Logicen_US
dc.description.facultyMatematicko-fyzikální fakultacs_CZ
dc.description.facultyFaculty of Mathematics and Physicsen_US
dc.identifier.repId267520
dc.title.translatedHeuristic approaches to the compilation to the SLR representationen_US
dc.contributor.refereeČepek, Ondřej
thesis.degree.nameBc.
thesis.degree.levelbakalářskécs_CZ
thesis.degree.disciplineComputer Science with specialisation in Foundations of Computer Scienceen_US
thesis.degree.disciplineInformatika se specializací Obecná informatikacs_CZ
thesis.degree.programInformatikacs_CZ
thesis.degree.programComputer Scienceen_US
uk.thesis.typebakalářská prácecs_CZ
uk.taxonomy.organization-csMatematicko-fyzikální fakulta::Katedra teoretické informatiky a matematické logikycs_CZ
uk.taxonomy.organization-enFaculty of Mathematics and Physics::Department of Theoretical Computer Science and Mathematical Logicen_US
uk.faculty-name.csMatematicko-fyzikální fakultacs_CZ
uk.faculty-name.enFaculty of Mathematics and Physicsen_US
uk.faculty-abbr.csMFFcs_CZ
uk.degree-discipline.csInformatika se specializací Obecná informatikacs_CZ
uk.degree-discipline.enComputer Science with specialisation in Foundations of Computer Scienceen_US
uk.degree-program.csInformatikacs_CZ
uk.degree-program.enComputer Scienceen_US
thesis.grade.csVýborněcs_CZ
thesis.grade.enExcellenten_US
uk.abstract.csBooleovské funkce jsou jedním ze základních pojmů informatiky, které se využívají například v reprezentaci znalostí, teoretické informatice nebo kryptografii. Tato práce se zabývá reprezentací booleovských funkcí pomocí switch-list reprezentace (SLR). Existuje exaktní algoritmus pro kompilaci z DNF do SLR, který však není prakticky použitelný pro větší počet switchů. V této práci se nejdříve věnujeme modifikaci exaktního algoritmu pro CNF a následně navrhneme tři rozdílné heuristické přístupy ke kompilaci do SLR: řadící a shlukovací heuristiky, heuristický přístup založený na strojovém učení a dva lo- kálně optimalizační algoritmy. Rozdílné přístupy jsou implementovány a experimentálně porovnány z hlediska kvality výsledné reprezentace a časové náročnosti. Výsledky uka- zují, že vhodně zvolená heuristika může výrazně zlepšit poměr mezi kvalitou řešení a časovou náročností a že existují heuristiky, které vedou k podstatně kompaktnější SLR reprezentaci, než jiné. Kromě toho ukážeme slibný potenciál ve využití strojového učení pro kompilaci do SLR a velkou efektivitu lokálně optimalizačního sifting algoritmu.cs_CZ
uk.abstract.enBoolean functions are one of the basic concepts of computer science used, for example, in knowledge representation, theoretical computer science, or cryptography. This work deals with the representation of boolean functions using switch-list representation (SLR). There is an exact algorithm for compiling from DNF to SLR, but it is not suitable for practical applications where the number of switches gets larger. In this work, we first look at modifying the exact algorithm for CNF, and then we design three different heuristic approaches to compiling to SLR: sequencing and clustering heuristics, a machine learning heuristic approach, and two local optimization algorithms. The different approaches are implemented and compared experimentally in terms of the quality of the resulting representation and the time required. The results show that a well-chosen heuristic can significantly improve the ratio between the quality of the solution and time consumption, and that there are heuristics that lead to a significantly more compact SLR representation, than others. In addition, we will show promising potential in using machine learning to compile into SLRs and great efficiency of the locally optimizing sifting algorithm.en_US
uk.file-availabilityV
uk.grantorUniverzita Karlova, Matematicko-fyzikální fakulta, Katedra teoretické informatiky a matematické logikycs_CZ
thesis.grade.code1
uk.publication-placePrahacs_CZ
uk.thesis.defenceStatusO


Soubory tohoto záznamu

Thumbnail
Thumbnail
Thumbnail
Thumbnail
Thumbnail
Thumbnail
Thumbnail

Tento záznam se objevuje v následujících sbírkách

Zobrazit minimální záznam


© 2025 Univerzita Karlova, Ústřední knihovna, Ovocný trh 560/5, 116 36 Praha 1; email: admin-repozitar [at] cuni.cz

Za dodržení všech ustanovení autorského zákona jsou zodpovědné jednotlivé složky Univerzity Karlovy. / Each constituent part of Charles University is responsible for adherence to all provisions of the copyright law.

Upozornění / Notice: Získané informace nemohou být použity k výdělečným účelům nebo vydávány za studijní, vědeckou nebo jinou tvůrčí činnost jiné osoby než autora. / Any retrieved information shall not be used for any commercial purposes or claimed as results of studying, scientific or any other creative activities of any person other than the author.

DSpace software copyright © 2002-2015  DuraSpace
Theme by 
@mire NV