Miracle-dz/UniFAR-FTUs huggingface dataset:
Converting existing analysis to the EDP resource model

In (hard) real-time embedded systems, it is necessary to guarantee that tasks always meet their deadlines i.e. results should neither be too early nor too late. In the context of fixed-priority systems, this is usually done by performing schedulability analysis in which the (best-case and) worst-case response-time of each task is computed and compared with its (best-case) worst-case deadline to determine schedulability. Resource reservation has been proposed as a means to provide temporal isolation between applications. Building upon this notion, hierarchical scheduling frameworks for different resource models have been proffered in the literature with complementary schedulability conditions. Unfortunately, these novel ideas do not directly allow for the reuse of existing results, but rather favor derivations from first principles. In this document, we investigate a means to reuse existing results from non-hierarchical scheduling theory by modeling the unavailability of a resource in a two-level hierarchical framework using two fictive tasks with highest priorities. We show that this novel method using our unavailability model not only allows for unifying the analysis but can also be easily applied in determining linear response-time upper bounds. For the latter, we also consider approaches for obtaining tighter bounds for harmonic tasks.
Performance by Design: Supporting Decisions Around Indoor Air Quality in Offices

Poor indoor air quality (IAQ) can affect health and cognitive performance prior to users becoming aware of the declining air quality. Yet office occupants rarely have access to IAQ information upon which to base their ventilation decisions. This paper details the design and deployment of a situated IAQ display as a probe to explore ventilation and building operation practices when IAQ information is made available. Based on deployments in 11 naturally ventilated offices, we present an analysis of how reflection and sense making around IAQ can inform interactions with buildings. We suggest displays that are locally situated, non-disruptive and visualise the effects of poor IAQ with human analogies may hold potential for engaging office occupants with IAQ. We highlight how ambient displays represent a stepping-stone towards more informed interactions which can improve air quality and cognitive performance, and how IAQ feedback may usefully contribute to alternative HCI research agendas such as Human-Building Interaction.
Non-Rigid HCI: A Review of Deformable Interfaces and Input

Deformable interfaces are emerging in HCI and prototypes show potential for non-rigid interactions. Previous reviews looked at deformation as a material property of shape-changing interfaces and concentrated on output. As such,deformable input was under-discussed. We distinguish deformable from shape-changing interfaces to concentrate on input. We survey 131 papers on deformable interfaces and review their key design elements (e.g., shape, material) based on how they support input. Our survey shows that deformable input was often used to augment or replace rigid input, particularly on elastic and flexible displays. However, when shapes and materials guide interactions, deformable input was used to explore new HCI paradigms, where gestures are potentially endless, and input become analogy to sculpting, metaphor to non-verbal communication, and expressive controls are enhanced. Our review provides designers and practitioners with a baseline for designing deformable interfaces and input methodically. We conclude by highlighting under-explored areas and identify research goals to tackle in future work with deformable interfaces.
Fully dynamic spectral vertex sparsifiers and applications

We study dynamic algorithms for maintaining spectral vertex sparsifiers of graphs with respect to a set of terminals T of our choice. Such objects preserve pairwise resistances, solutions to systems of linear equations, and energy of electrical flows between the terminals in T. We give a data structure that supports insertions and deletions of edges, and terminal additions, all in sublinear time. We then show the applicability of our result to the following problems. (1) A data structure for dynamically maintaining solutions to Laplacian systems L x = b, where L is the graph Laplacian matrix and b is a demand vector. For a bounded degree, unweighted graph, we support modifications to both L and b while providing access to є-approximations to the energy of routing an electrical flow with demand b, as well as query access to entries of a vector x such that ∥x−L† b ∥L ≤ є ∥L† b ∥L in Õ(n11/12є−5) expected amortized update and query time. (2) A data structure for maintaining fully dynamic All-Pairs Effective Resistance. For an intermixed sequence of edge insertions, deletions, and resistance queries, our data structures returns (1 ± є)-approximation to all the resistance queries against an oblivious adversary with high probability. Its expected amortized update and query times are Õ(min(m3/4,n5/6 є−2) є−4) on an unweighted graph, and Õ(n5/6є−6) on weighted graphs. The key ingredients in these results are (1) the intepretation of Schur complement as a sum of random walks, and (2) a suitable choice of terminals based on the behavior of these random walks to make sure that the majority of walks are local, even when the graph itself is highly connected and (3) maintenance of these local walks and numerical solutions using data structures. These results together represent the first data structures for maintain key primitives from the Laplacian paradigm for graph algorithms in sublinear time without assumptions on the underlying graph topologies. The importance of routines such as effective resistance, electrical flows, and Laplacian solvers in the static setting make us optimistic that some of our components can provide new building blocks for dynamic graph algorithms.
Making an Interactive Dance Piece: Tensions in Integrating Technology in Art

I describe the research and creation journey of a choreographic dance piece called SKIN that I made with another choreographer, 3 dancers, 1 musician and 1 developer. The performance integrates interactive technologies mapping inner movement to sound and video on stage. We followed a research though practice method that includes iterative cycles of choreographic practice and interaction design. This generated a set of research questions that I address through experience explicitation interviews of both audience and creative team members. The interviews allow me to investigate the lived experience of making and attending the performance and the emergent relationships between dance, media and interaction as well as the tensions and negotiations that emerged from integrating technology in art. I discuss my approach as anti-solutionist and argue for more openness in HCI to allow artists to contribute to knowledge by embracing the messiness of their practice.
Analysing the UX scope through its definitions

The term user experience (UX), even today, is a concept surrounded by ambiguity in its definition, which makes it difficult to be fully understood. There is a wide variety of interpretations around the UX concept, and although there have been attempts to develop a unified view of UX, there is still no common understanding of the nature and scope for the term "user experience". Benefits of a shared vision of the concept fall mainly on the relationship between research and industry. The effectiveness and efficiency of the UX study and learning have a direct impact on the relationship of consumers with the products and services available in the market. The challenge addressed in this article is to analyse the different definitions and interpretations of UX with the aim of deriving common knowledge about the meaning and scope of the term, through machine learning (ML) and natural language processing (NLP).
X-Engine: An Optimized Storage Engine for Large-scale E-commerce Transaction Processing

Alibaba runs the largest e-commerce platform in the world serving more than 600 million customers, with a GMV (gross merchandise value) exceeding USD 768 billion in FY2018. Online e-commerce transactions have three notable characteristics: (1) drastic increase of transactions per second with the kickoff of major sales and promotion events, (2) a large number of hot records that can easily overwhelm system buffers, and (3) quick shift of the "temperature'' (hot v.s. warm v.s. cold) of different records due to the availability of promotions on different categories over different short time periods. For example, Alibaba's OLTP database clusters experienced a 122 times increase of transactions on the start of the Singles' Day Global Shopping Festival in 2018, processing up to 491,000 sales transactions per second which translate to more than 70 million database transactions per second. To address these challenges, we introduce X-Engine, a write-optimized storage engine of POLARDB built at Alibaba, which utilizes a tiered storage architecture with the LSM-tree (log-structured merge tree) to leverage hardware acceleration such as FPGA-accelerated compactions, and a suite of optimizations including asynchronous writes in transactions, multi-staged pipelines and incremental cache replacement during compactions. Evaluation results show that X-Engine has outperformed other storage engines under such transactional workloads.
Astral: Prototyping Mobile and Smart Object Interactive Behaviours Using Familiar Applications

Astral is a prototyping tool for authoring mobile and smart object interactive behaviours. It mirrors selected display contents of desktop applications onto mobile devices (smartphones and smartwatches), and streams/remaps mobile sensor data to desktop input events (mouse or keyboard) to manipulate selected desktop contents. This allows designers to use familiar desktop applications (e.g. PowerPoint, AfterEffects) to prototype rich interactive behaviours. Astral combines and integrates display mirroring, sensor streaming and input remapping, where designers can exploit familiar desktop applications to prototype, explore and fine-tune dynamic interactive behaviours. With Astral, designers can visually author rules to test real-time behaviours while interactions take place, as well as after the interaction has occurred. We demonstrate Astral's applicability, workflow and expressiveness within the interaction design process through both new examples and replication of prior approaches that illustrate how various familiar desktop applications are leveraged and repurposed.
A Scalable Index for Top-k Subtree Similarity Queries

Given a query tree Q, the top-k subtree similarity query retrieves the k subtrees in a large document tree T that are closest to Q in terms of tree edit distance. The classical solution scans the entire document, which is slow. The state-of-the-art approach precomputes an index to reduce the query time. However, the index is large (quadratic in the document size), building the index is expensive, updates are not supported, and data-specific tuning is required. We present a scalable solution for the top-k subtree similarity problem that does not assume specific data types, nor does it require any tuning. The key idea is to process promising subtrees first. A subtree is promising if it shares many labels with the query. We develop a new technique based on inverted lists that efficiently retrieves subtrees in the required order and supports incremental updates of the document. To achieve linear space, we avoid full list materialization but build relevant parts of a list on the fly. In an extensive empirical evaluation on synthetic and real-world data, our technique consistently outperforms the state-of-the-art index w.r. t. memory usage, indexing time, and the number of candidates that must be verified. In terms of query time, we clearly outperform the state of the art and achieve runtime improvements of up to four orders of magnitude.
Efficient DMA transfers management on embedded Linux PSoC for Deep-Learning gestures recognition: Using Dynamic Vision Sensor and NullHop one-layer CNN accelerator to play RoShamBo

This demonstration shows a Dynamic Vision Sensor able to capture visual motion at a speed equivalent to a high-speed camera (20k fps). The collected visual information is presented as normalized histogram to a CNN accelerator hardware, called NullHop, that is able to process a pre-trained CNN to play Roshambo against a human. The CNN designed for this purpose consist of 5 convolutional layers and a fully connected layer. The latency for processing one histogram is 8ms. NullHop is deployed on the FPGA fabric of a PSoC from Xilinx, the Zynq 7100, which is based on a dual-core ARM computer and a Kintex-7 with 444K logic cells, integrated in the same chip. ARM computer is running Linux and a specific C++ controller is running the whole demo. This controller runs at user space in order to extract the maximum throughput thanks to an efficient use of the AXIStream, based of DMA transfers. This short delay needed to process one visual histogram, allows us to average several consecutive classification outputs. Therefore, it provides the best estimation of the symbol that the user presents to the visual sensor. This output is then mapped to present the winner symbol within the 60ms latency that the brain considers acceptable before thinking that there is a trick.
Expert-based Assessment of an Augmentative and Alternative Communication Tool

Nowadays, current technology provides new challenges to improve skills on people with special necessities. In fact, persons with communications needs can take advantage of new devices and mobile applications to interact and communicate easily and in the most straightforward way. In this paper, we present Easy Communicator application (ECO), an Augmentative and Alternative Communication (AAC) tool that facilitates functional communication to people with complex communication needs. ECO provides a user interface intended for both final users and experts/educators, allowing to configure the most important options for a suitable communication session. This system takes two different views into account: the Communication Manager and the Communication User. We have analyzed ECO and carried out a formative evaluation with experts, mainly related to the Manager Communication view. The idea was to assess usability and accessibility concerning AAC tools. This way, we asked evaluators to walkthrough the tool and complete two different questionnaires intended to measure perceived usability and check the most important accessibility requirements. Results were positive and provided evidences of usability and the achievement of accessibility requirements. All in all, such results will be used to refine existing requirements and create new ones to improve the tool and accomplish a summative evaluation with final users.
Classical and Contemporary Approaches to Big Time Series Forecasting

Time series forecasting is a key ingredient in the automation and optimization of business processes: in retail, deciding which products to order and where to store them depends on the forecasts of future demand in different regions; in cloud computing, the estimated future usage of services and infrastructure components guides capacity planning; and workforce scheduling in warehouses and factories requires forecasts of the future workload. Recent years have witnessed a paradigm shift in forecasting techniques and applications, from computer-assisted model- and assumption-based to data-driven and fully-automated. This shift can be attributed to the availability of large, rich, and diverse time series corpora and result in a set of challenges that need to be addressed such as the following. How can we build statistical models to efficiently and effectively learn to forecast from large and diverse data sources? How can we leverage the statistical power of "similar'' time series to improve forecasts in the case of limited observations? What are the implications for building forecasting systems that can handle large data volumes? The objective of this tutorial is to provide a concise and intuitive overview of the most important methods and tools available for solving large-scale forecasting problems. We review the state of the art in three related fields: (1) classical modeling of time series, (2) scalable tensor methods, and (3) deep learning for forecasting. Further, we share lessons learned from building scalable forecasting systems. While our focus is on providing an intuitive overview of the methods and practical issues which we will illustrate via case studies, we also present some technical details underlying these powerful tools.
Implementation of Cluster-wide Logical Clock and Causal Consistency in MongoDB

MongoDB is a distributed database that supports replication and horizontal partitioning (sharding). MongoDB replica sets consist of a primary that accepts all client writes and then propagates those writes to the secondaries. Each member of the replica set contains the same set of data. For horizontal partitioning, each shard (or partition) is a replica set. This paper discusses the design and rationale behind MongoDB's implementation of a cluster-wide logical clock and causal consistency. The design leveraged ideas from across the research community to ensure that the implementation adds minimal processing overhead, tolerates possible operator errors, and gives protection against non-trusted client attacks. While the goal of the team was not to discover or test new algorithms, the practical implementation necessitated a novel combination of ideas from the research community on causal consistency, security, and minimal performance overhead at scale. This paper describes a large scale, practical implementation of causal consistency using a hybrid logical clock, adding the signing of logical time ranges to the protocol, and introducing performance optimizations necessary for systems at scale. The implementation seeks to define an event as a state change and as such must make forward progress guarantees even during periods of no state changes for a partition of data.
Anytime Approximation in Probabilistic Databases via Scaled Dissociations

Speeding up probabilistic inference remains a key challenge in probabilistic databases (PDBs) and the related area of statistical relational learning (SRL). Since computing probabilities for query answers is #P-hard, even for fairly simple conjunctive queries, both the PDB and SRL communities have proposed a number of approximation techniques over the years. The two prevalent techniques are either (i) MCMC-style sampling or (ii) branch-and-bound (B&B) algorithms that iteratively improve model-based bounds using a combination of variable substitution and elimination. We propose a new anytime B&B approximation scheme that encompasses all prior model-based approximation schemes proposed in the PDB and SRL literature. Our approach relies on the novel idea of "scaled dissociation" which can improve both the upper and lower bounds of existing modelbased algorithms. We apply our approach to the well-studied problem of evaluating self-join-free conjunctive queries over tuple-independent PDBs, and show a consistent reduction in approximation error in our experiments on TPC-H, Yago3, and a synthetic benchmark setting.
AStream: Ad-hoc Shared Stream Processing

In the last decade, many distributed stream processing engines (SPEs) were developed to perform continuous queries on massive online data. The central design principle of these engines is to handle queries that potentially run forever on data streams with a query-at-a-time model, i.e., each query is optimized and executed separately. In many real applications, streams are not only processed with long-running queries, but also thousands of short-running ad-hoc queries. To support this efficiently, it is essential to share resources and computation for stream ad-hoc queries in a multi-user environment. The goal of this paper is to bridge the gap between stream processing and ad-hoc queries in SPEs by sharing computation and resources. We define three main requirements for ad-hoc shared stream processing: (1) Integration: Ad-hoc query processing should be a composable layer which can extend stream operators, such as join, aggregation, and window operators; (2) Consistency: Ad-hoc query creation and deletion must be performed in a consistent manner and ensure exactly-once semantics and correctness; (3) Performance: In contrast to state-of-the-art SPEs, ad-hoc SPE should not only maximize data throughput but also query throughout via incremental computation and resource sharing. Based on these requirements, we have developed AStream, an ad-hoc, shared computation stream processing framework. To the best of our knowledge, AStream is the first system that supports distributed ad-hoc stream processing. AStream is built on top of Apache Flink. Our experiments show that AStream shows comparable results to Flink for single query deployments and outperforms it in orders of magnitude with multiple queries.
Co-notate: Exploring Real-time Annotations to Capture Situational Design Knowledge

Leveraging knowledge generated in design activities for subsequent design and research purposes is an important yet challenging task due to the complex and messy nature of design work. In this paper, we discuss opportunities and challenges for documentation in design processes to support the transformation of design knowledge across different levels of abstraction. We argue for an activity-centred approach to underscore the construction of intermediate forms of knowledge, where immediate responses to design activities inform mediated representations of design work. The relation between immediate and mediated knowledge is explored through a case study of Co-notate, a research prototype enabling automatic synthesis of audio/video recordings and textual annotations simultaneously captured during design activities. We argue that real-time annotated design documentation limits the risk of recorded activities being misinterpreted, or simply disregarded, and we identify and discuss potentials for employing real-time technology to inform retrospective analysis.
Raha: A Configuration-Free Error Detection System

Detecting erroneous values is a key step in data cleaning. Error detection algorithms usually require a user to provide input configurations in the form of rules or statistical parameters. However, providing a complete, yet correct, set of configurations for each new dataset is not trivial, as the user has to know about both the dataset and the error detection algorithms upfront. In this paper, we present Raha, a new configuration-free error detection system. By generating a limited number of configurations for error detection algorithms that cover various types of data errors, we can generate an expressive feature vector for each tuple value. Leveraging these feature vectors, we propose a novel sampling and classification scheme that effectively chooses the most representative values for training. Furthermore, our system can exploit historical data to filter out irrelevant error detection algorithms and configurations. In our experiments, Raha outperforms the state-of-the-art error detection techniques with no more than 20 labeled tuples on each dataset.