Jan Pacovský | Charles University, Prague (original) (raw)
Papers by Jan Pacovský
Multiplatformní textový editor Zim umožňuje uchovat a třídit poznámky, propojovat a organizovat t... more Multiplatformní textový editor Zim umožňuje uchovat a třídit poznámky, propojovat a organizovat texty a spravovat kolekce textových souborů. Cílem práce bylo vytvoření zásuvného modulu (rozšíření), který dokáže komfortně rozdělovat a spojovat stránky v~Zimu, aniž by uživatel ztratil přehled o svých textech a jejich organizační struktuře. V průběhu řešení se ukázalo nutným zasáhnout i do kódu hlavního programu. Podařila se implementovat nová funkcionalita umožňující převod obsahu stránky na podstrom stránek. Úspěšně se vyřešilo zachování odkazů a nesoulad počtu úrovní nadpisů a stránek v podstromu. Výsledkem je efektivnější, přehlednější a systematičtější práce s~vlastními texty ve stromové struktuře stránek. Powered by TCPDF (www.tcpdf.org)The Multiplatform text editor Zim enables the user to preserve and sort notes, to join and organize texts, and manage a collections of text files. The goal of this thesis was to develop a plugin that would comfortably enable the splitting and merg...
This thesis investigates the navigation of units in real-time strategy computer games and is focu... more This thesis investigates the navigation of units in real-time strategy computer games and is focused on the task of navigating a bigger group of units through a game world that contains narrows passages. The narrow passages causes signi- ficant delays that could be avoided by splitting the group and taking some part of it through an alternative way. In this thesis, a solution using flow networks is proposed. The map is transformed into a flow network which then allows the planner to find an alternative route to the fully occupied narrow passage. The proposed method was tested in a simulator specifically designed for this task and compared with the conventional methods of navigation in computer games. The final evaluation shows that the navigation of units using flow networks can successfully solve this problem.
Proceedings of the IEEE/ACM 15th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, 2020
Smart systems have become key solutions for many application areas including autonomous farming. ... more Smart systems have become key solutions for many application areas including autonomous farming. The trend we can see now in the smart systems is that they shift from single isolated autonomic and self-adaptive components to larger ecosystems of heavily cooperating components. This increases the reliability and often the cost-effectiveness of the system by replacing one big costly device with a number of smaller and cheaper ones. In this paper, we demonstrate the effect of synergistic collaboration among autonomic components in the domain of smart farming-in particular, the use-case we employ in the demonstration stems from the AFar-Cloud EU project. We exploit the concept of autonomic component ensembles to describe situation-dependent collaboration groups (so called ensembles). The paper shows how the autonomic component ensembles can easily capture complex collaboration rules and how they can include both controllable autonomic components (i.e. drones) and non-controllable environment agents (flocks of birds in our case). As part of the demonstration, we provide an open-source implementation that covers both the specification of the autonomic components and ensembles of the use case, and the discrete event simulation and real-time visualization of the use case. We believe this is useful not only to demonstrate the effectiveness of architectures of collaborative autonomic components for dealing with real-life tasks, but also to build further experiments in the domain. CCS CONCEPTS • Computer systems organization → Self-organizing autonomic computing; • Software and its engineering → Domain specific languages; • Applied computing → Agriculture.
Our interest is to explore the benefits of preprocessed input on learning algorithms. To do that ... more Our interest is to explore the benefits of preprocessed input on learning algorithms. To do that we have to firstly preprocess data and then learn on the corresponding raw and enhanced data. First section of this article describes format, meaning and some basic properties of the raw input data. Then we focus on how was the data put together from different sources and finally we show how was the date enhanced.
Leveraging Applications of Formal Methods, Verification and Validation: Engineering Principles, 2020
Smart system applications (SSAs) built on top of cyberphysical and socio-technical systems are in... more Smart system applications (SSAs) built on top of cyberphysical and socio-technical systems are increasingly composed of components that can work both autonomously and by cooperating with each other. Cooperating robots, fleets of cars and fleets of drones, emergency coordination systems are examples of SSAs. One approach to enable cooperation of SSAs is to form dynamic cooperation groups-ensembles-between components at runtime. Ensembles can be formed based on predefined rules that determine which components should be part of an ensemble based on their current state and the state of the environment (e.g., "group together 3 robots that are closer to the obstacle, their battery is sufficient and they would not be better used in another ensemble"). This is a computationally hard problem since all components are potential members of all possible ensembles at runtime. In our experience working with ensembles in several case studies the past years, using constraint programming to decide which ensembles should be formed does not scale for more than a limited number of components and ensembles. Also, the strict formulation in terms of hard/soft constraints does not easily permit for runtime self-adaptation via learning. This poses a serious limitation to the use of ensembles in large-scale and partially uncertain SSAs. To tackle this problem, in this paper we propose to recast the ensemble formation problem as a classification problem and use machine learning to efficiently form ensembles at scale.
Journal of Systems and Software, 2021
Modern Cyber-physical Systems (CPS) include applications like smart traffic, smart agriculture, s... more Modern Cyber-physical Systems (CPS) include applications like smart traffic, smart agriculture, smart power grid, etc. Commonly, these systems are distributed and composed of end-user applications and microservices that typically run in the cloud. The connection with the physical world, which is inherent to CPS, brings the need to operate and respond in real-time. As the cloud becomes part of the computation loop, the real-time requirements have to be also reflected by the cloud. In this paper, we present an approach that provides soft real-time guarantees on the response time of services running in cloud and edge-cloud (i.e., cloud geographically close to the end-user), where these services are developed in high-level programming languages. In particular, we elaborate a method that allows us to predict the upper bound of the response time of a service when sharing the same computer with other services. Importantly, as our approach focuses on minimizing the impact on the developer of such services, it does not require any special programming model nor limits usage of common libraries, etc.
Proceedings of the 10th International Conference on Model-Driven Engineering and Software Development, 2022
Multiplatformní textový editor Zim umožňuje uchovat a třídit poznámky, propojovat a organizovat t... more Multiplatformní textový editor Zim umožňuje uchovat a třídit poznámky, propojovat a organizovat texty a spravovat kolekce textových souborů. Cílem práce bylo vytvoření zásuvného modulu (rozšíření), který dokáže komfortně rozdělovat a spojovat stránky v~Zimu, aniž by uživatel ztratil přehled o svých textech a jejich organizační struktuře. V průběhu řešení se ukázalo nutným zasáhnout i do kódu hlavního programu. Podařila se implementovat nová funkcionalita umožňující převod obsahu stránky na podstrom stránek. Úspěšně se vyřešilo zachování odkazů a nesoulad počtu úrovní nadpisů a stránek v podstromu. Výsledkem je efektivnější, přehlednější a systematičtější práce s~vlastními texty ve stromové struktuře stránek. Powered by TCPDF (www.tcpdf.org)The Multiplatform text editor Zim enables the user to preserve and sort notes, to join and organize texts, and manage a collections of text files. The goal of this thesis was to develop a plugin that would comfortably enable the splitting and merg...
This thesis investigates the navigation of units in real-time strategy computer games and is focu... more This thesis investigates the navigation of units in real-time strategy computer games and is focused on the task of navigating a bigger group of units through a game world that contains narrows passages. The narrow passages causes signi- ficant delays that could be avoided by splitting the group and taking some part of it through an alternative way. In this thesis, a solution using flow networks is proposed. The map is transformed into a flow network which then allows the planner to find an alternative route to the fully occupied narrow passage. The proposed method was tested in a simulator specifically designed for this task and compared with the conventional methods of navigation in computer games. The final evaluation shows that the navigation of units using flow networks can successfully solve this problem.
Proceedings of the IEEE/ACM 15th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, 2020
Smart systems have become key solutions for many application areas including autonomous farming. ... more Smart systems have become key solutions for many application areas including autonomous farming. The trend we can see now in the smart systems is that they shift from single isolated autonomic and self-adaptive components to larger ecosystems of heavily cooperating components. This increases the reliability and often the cost-effectiveness of the system by replacing one big costly device with a number of smaller and cheaper ones. In this paper, we demonstrate the effect of synergistic collaboration among autonomic components in the domain of smart farming-in particular, the use-case we employ in the demonstration stems from the AFar-Cloud EU project. We exploit the concept of autonomic component ensembles to describe situation-dependent collaboration groups (so called ensembles). The paper shows how the autonomic component ensembles can easily capture complex collaboration rules and how they can include both controllable autonomic components (i.e. drones) and non-controllable environment agents (flocks of birds in our case). As part of the demonstration, we provide an open-source implementation that covers both the specification of the autonomic components and ensembles of the use case, and the discrete event simulation and real-time visualization of the use case. We believe this is useful not only to demonstrate the effectiveness of architectures of collaborative autonomic components for dealing with real-life tasks, but also to build further experiments in the domain. CCS CONCEPTS • Computer systems organization → Self-organizing autonomic computing; • Software and its engineering → Domain specific languages; • Applied computing → Agriculture.
Our interest is to explore the benefits of preprocessed input on learning algorithms. To do that ... more Our interest is to explore the benefits of preprocessed input on learning algorithms. To do that we have to firstly preprocess data and then learn on the corresponding raw and enhanced data. First section of this article describes format, meaning and some basic properties of the raw input data. Then we focus on how was the data put together from different sources and finally we show how was the date enhanced.
Leveraging Applications of Formal Methods, Verification and Validation: Engineering Principles, 2020
Smart system applications (SSAs) built on top of cyberphysical and socio-technical systems are in... more Smart system applications (SSAs) built on top of cyberphysical and socio-technical systems are increasingly composed of components that can work both autonomously and by cooperating with each other. Cooperating robots, fleets of cars and fleets of drones, emergency coordination systems are examples of SSAs. One approach to enable cooperation of SSAs is to form dynamic cooperation groups-ensembles-between components at runtime. Ensembles can be formed based on predefined rules that determine which components should be part of an ensemble based on their current state and the state of the environment (e.g., "group together 3 robots that are closer to the obstacle, their battery is sufficient and they would not be better used in another ensemble"). This is a computationally hard problem since all components are potential members of all possible ensembles at runtime. In our experience working with ensembles in several case studies the past years, using constraint programming to decide which ensembles should be formed does not scale for more than a limited number of components and ensembles. Also, the strict formulation in terms of hard/soft constraints does not easily permit for runtime self-adaptation via learning. This poses a serious limitation to the use of ensembles in large-scale and partially uncertain SSAs. To tackle this problem, in this paper we propose to recast the ensemble formation problem as a classification problem and use machine learning to efficiently form ensembles at scale.
Journal of Systems and Software, 2021
Modern Cyber-physical Systems (CPS) include applications like smart traffic, smart agriculture, s... more Modern Cyber-physical Systems (CPS) include applications like smart traffic, smart agriculture, smart power grid, etc. Commonly, these systems are distributed and composed of end-user applications and microservices that typically run in the cloud. The connection with the physical world, which is inherent to CPS, brings the need to operate and respond in real-time. As the cloud becomes part of the computation loop, the real-time requirements have to be also reflected by the cloud. In this paper, we present an approach that provides soft real-time guarantees on the response time of services running in cloud and edge-cloud (i.e., cloud geographically close to the end-user), where these services are developed in high-level programming languages. In particular, we elaborate a method that allows us to predict the upper bound of the response time of a service when sharing the same computer with other services. Importantly, as our approach focuses on minimizing the impact on the developer of such services, it does not require any special programming model nor limits usage of common libraries, etc.
Proceedings of the 10th International Conference on Model-Driven Engineering and Software Development, 2022