Miracle-dz/UniFAR-FTUs huggingface dataset:
Personality Estimation using Demographic Data in a Personality-based Recommender System: A Proposal

Collaborative filtering in a recommender system has a weakness called cold start problem. One way to resolve this problem is by using personality traits that can be automatically predicted from the status that the users write in social media like Facebook and Twitter. The problem with this method is that a user of such system must have at least one account in at least one social media and must write at least one status with certain length. We propose to use the combination of personality traits and demographic data to overcome this problem. Previous studies reveal that personality traits are influenced by age and gender. By using these findings, we will build models to predict personality traits from such demographic data. The modeling will be conducted by means of classification and association rule methods. Novel domains will be used in the proposed system, namely sports and hobbies.
A Web Service Architecture for Social Micro-Learning

In knowledge organizations or a knowledge society learning processes are inherently social and distributed. To enable these processes knowledge artifacts need to be created, updated, and consumed decentralized. Social Micro-Learning is an example for an approach following that paradigm. By proposing a flexible service architecture, this paper addresses the diverse demands that Social Micro-Learners have throughout their learning process. It allows integrating information retrieval, recommender systems, workflow engines and spaced repetition algorithms through a single stream data model. Consequently, we can reuse user interface implementations and provide a consistent, recognizable view. Our evaluations show a good system usability, and stable results across different services. We conclude that our service design can serve as a blueprint for social e-learning systems.
Does Story Programming Prepare for Coding?

In this research study, we investigate the impact of using the Story Programming approach to teach CS concepts on student performance in a subsequent C++ class. In particular, we compare how students receiving little or no coding to learn and apply these concepts perform in comparison to students who learn these concepts only in the context of coding. While past research has shown that exposure to programming is not a predictor of success in such courses, these studies are based on a 15-week versus 10-week course and do not control for the CS concepts and programming to which the students have been exposed. Consequently, we hypothesize that students from the Story Programming approach will perform worse in the following C++ class. Surprisingly, we find that this is not true: Students from the Story Programming approach with little to no coding do not significantly differ from their peers receiving a traditional code-focused approach.
Modelling Emotion Dynamics on Twitter via Hidden Markov Model

Exploring the mechanism about users' emotion dynamics towards social events and further predicting their future emotions have attracted great attention to the researchers. One of the unexplored components of human communication found online in written form is an emotional expression. However, despite the concreteness of the online expressions in written form, it remains unpredictable which kinds of emotions will be expressed in individual messages of Twitter users. To investigate this, we perform an investigation on observing emotions unfolding in a consecutive sequence of tweets for a particular user based on his/her past history. In this paper, we propose a method on given a set of tweets related with some events (identified by the usage of a hashtag), determines how those sentiments will be distributed on behalf of a person within a conversation. We present the Hidden Markov Model (HMM) to understand the nature of emotion dynamics in Twitter messages.
A Novel Concolic Execution Approach on Embedded Device

With the widely use of embeded device, its security issues cause high attention. As one of the popular program testing techniques, symbolic execution tests a program by treating the program's input as symbols and interpreting the program over these inputs. Due to the complex environment and lackage of computing resources, there is no efficient symbolic execution approach in analyzing firmware running on device. In this paper, we present a novel concolic execution approach for firmware programs. The approach adopts Dynamic Test Generation scheme to perform concrete execution on multiple architectures Unix-like physical device and symbolic execution on the debugging host. In order to gain the complex environment info, the concrete execution performs by gdb debugging method collects program trace and runtime information. And to overcome the lackage of computing resources, the symbolic execution extracts relevant constraints and solves the collected constraints to generate new test cases on a high perfomance host. We implement the approach in various architectures, including x86-64, arm and ppc. The availability and effectiveness of our approach can be verified by evaluating some binutil programs in our approach's framework.
Towards Linked Data for Wikidata Revisions and Twitter Trending Hashtags

This paper uses Twitter as a microblogging platform to link hashtags, which relate the message to a topic that is shared among users, to Wikidata, a central knowledge base of information relying on its members and machine bots to keeping its content up to date. The data is stored in a highly structured format, with the added SPARQL Protocol And RDF Query Language (SPARQL) endpoint to allow users to query its knowledge base. Our research, designs and implements a process to stream live Twitter tweets and to parse existing Wikidata revision XML files provided by Wikidata. Furthermore, we identify if a correlation exists between the top Twitter hashtags and Wikidata revisions over a seventy-seven-day period. We have used statistical evaluation tools, such as 'Jaccard Ratio' and 'Kolmogorov-Smirnov' to investigate a significant statistical correlation between Twitter hashtags and Wikidata revisions over the studied period.
Researching Race in Computer Science Education: Demystifying Key Vocabulary and Methods

Diversity and inclusion are popular topics at SIGCSE. However, few researchers examine questions specifically focused on race. Such research is of great interest to the SIGCSE community, but is typically conducted by education faculty and published in education journals. This panel attempts to introduce attendees to relevant background and methods, such that attendees can more easily understand and contribute to computer science education research related to race. This panel attempts to bridge our two communities by inviting race scholars from education to share their expertise with computer science education researchers and practitioners.
Kite: efficient and available release consistency for the datacenter

Key-Value Stores (KVSs) came into prominence as highly-available, eventually consistent (EC), "NoSQL" Databases, but have quickly transformed into general-purpose, programmable storage systems. Thus, EC, while relevant, is no longer sufficient. Complying with the emerging requirements for stronger consistency, researchers have proposed KVSs with multiple consistency levels (MCL) that expose the consistency/performance trade-off to the programmer. We argue that this approach falls short in both programmability and performance. For instance, the MCL APIs proposed thus far, fail to capture the ordering relationship between strongly- and weakly-consistent accesses that naturally occur in programs. Taking inspiration from shared memory, we advocate Release Consistency (RC) for KVSs. We argue that RC's onesided barriers are ideal for capturing the ordering relationship between synchronization and non-synchronization accesses while enabling high-performance. We present Kite, the first highly-available, replicated KVS that offers a linearizable variant of RC for the asynchronous setting with individual process and network failures. Kite enforces RC barriers through a novel fast/slow path mechanism that leverages the absence of failures in the typical case to maximize performance while relying on the slow path for progress. Our evaluation shows that the RDMA-enabled and heavily-multithreaded Kite achieves orders of magnitude better performance than Derecho (a state-of-the-art RDMA-enabled state machine replication system) and significantly outperforms ZAB (the protocol at the heart of Zookeeper). We demonstrate the efficacy of Kite by porting three lock-free shared memory data structures, and showing that Kite outperforms the competition.
COLAB: a collaborative multi-factor scheduler for asymmetric multicore processors

Increasingly prevalent asymmetric multicore processors (AMP) are necessary for delivering performance in the era of limited power budget and dark silicon. However, the software fails to use them efficiently. OS schedulers, in particular, handle asymmetry only under restricted scenarios. We have efficient symmetric schedulers, efficient asymmetric schedulers for single-threaded workloads, and efficient asymmetric schedulers for single program workloads. What we do not have is a scheduler that can handle all runtime factors affecting AMP for multi-threaded multi-programmed workloads. This paper introduces the first general purpose asymmetry-aware scheduler for multi-threaded multi-programmed workloads. It estimates the performance of each thread on each type of core and identifies communication patterns and bottleneck threads. The scheduler then makes coordinated core assignment and thread selection decisions that still provide each application its fair share of the processor's time. We evaluate our approach using the GEM5 simulator on four distinct big.LITTLE configurations and 26 mixed workloads composed of PARSEC and SPLASH2 benchmarks. Compared to the state-of-the art Linux CFS and AMP-aware schedulers, we demonstrate performance gains of up to 25% and 5% to 15% on average depending on the hardware setup.
Speculative reconvergence for improved SIMT efficiency

GPUs perform most efficiently when all threads in a warp execute the same sequence of instructions convergently. However, when threads in a warp encounter a divergent branch, the hardware serializes the execution of diverged paths. We consider a class of convergence opportunities wherein multiple threads are expected to eventually execute a given segment of code, but not all threads arrive at the same time, resulting in serialized duplicate execution of common code subsequences such as function calls and loop bodies. Our goal is to promote convergence by helping threads that execute common code arrive together before allowing execution to proceed. We propose a new user-guided compiler mechanism, Speculative Reconvergence, to help identify and exploit previously untapped convergence opportunities that increase SIMT efficiency and improve performance. For the set of workloads we study, we see improvements ranging from 10% to 3× in both SIMT efficiency and in performance.
Haptic Feedback Method using Deformation of Clothing

Clothing that we wear every day remains in contact with our skin almost at all times. Various haptic sensations to our skin are produced when our clothes deform. We propose a haptic feedback method using the deformation of clothing. Our method deforms the clothing using the contraction of an actuator consisting of shape memory alloys and springs in order to generate haptic sensations. We implemented a prototype long-sleeve T-shirt placing four actuators around the circumference of the forearm, upper arm, and shoulder. We conducted three evaluations to compare the feedback positions. First, the pressure applied to the skin when an actuator contracted varied depending on the locations of the actuation. Second, as compared to the shoulder, the forearm and upper arm achieved a lower stimulation level at which the participants could detect the deformation of clothing taking place. Finally, participants recognized contraction patterns most accurately on the forearm; however, the accuracy of recognition in the case of the shoulder was the worst. Based on the obtained results, we discuss the feedback performance for each position and present the most effective feedback position and the set of contraction patterns that the user could most easily distinguish.
Compiler Error Messages: Their Content and Accessibility in Novice Programming Environments

Improving the feedback that novices receive from programming environments is an important and often overlooked aspect of computing education research. This work in progress examines the effects of various mechanisms by which environments deliver feedback to users. By providing insights on the effects of these mechanisms, we aim to inform designers, developers and educators about more effective design and use of such environments for students.
Human-like Object Grasping and Relocation for an Anthropomorphic Robotic Hand with Natural Hand Pose Priors in Deep Reinforcement Learning

Anthropomorphic manipulators such as robotic hands (i.e., agent) can be used to perform complex object grasping tasks similar to human hands. However, teaching an agent to perform human-like grasping of objects is still a challenge in the robotics community. In this work, natural hand poses (i.e., priors) according to the shape of objects are used in training an agent via Deep Reinforcement Learning (DRL). To validate the effect of human-like grasping priors, the agent is trained to perform object grasping and relocation tasks including a single apple, milk box, and can. The results show that the trained agent with human-like hand pose priors in DRL is able to grasp the objects more naturally and performs object relocation with significantly improved success rate against the trained agent with only DRL.
The Minos Computing Library: efficient parallel programming for extremely heterogeneous systems

Hardware specialization has become the silver bullet to achieve efficient high performance, from Systems-on-Chip systems, where hardware specialization can be "extreme", to large-scale HPC systems. As the complexity of the systems increases, so does the complexity of programming such architectures in a portable way. This work introduces the Minos Computing Library (MCL), as system software, programming model, and programming model runtime that facilitate programming extremely heterogeneous systems. MCL supports the execution of several multi-threaded applications within the same compute node, performs asynchronous execution of application tasks, efficiently balances computation across hardware resources, and provides performance portability. We show that code developed on a personal desktop automatically scales up to fully utilize powerful workstations with 8 GPUs and down to power-efficient embedded systems. MCL provides up to 17.5x speedup over OpenCL on NVIDIA DGX-1 systems and up to 1.88x speedup on single-GPU systems. In multi-application workloads, MCL's dynamic resource allocation provides up to 2.43x performance improvement over manual, static resources allocation.
FTDL: An FPGA-tailored Architecture for Deep Learning Systems

Hardware acceleration of deep learning (DL) systems has been increasingly studied to achieve desirable performance and energy efficiency. The FPGA strikes a balance between high energy efficiency and fast development cycle and therefore is widely used as a DNN accelerator. However, there exists an architecture-layout mismatch in the current designs, which introduces scalability and flexibility issues, leading to irregular routing and resource imbalance problems. To address these limitations, in this work, we propose FTDL, an FPGA-tailored architecture with a parameterized and hierarchical hardware that is adaptive to different FPGA devices. FTDL has the following novelties: (i) At the architecture level, FTDL consists of Tiled Processing Elements (TPE) and super blocks, to achieve a near-to-theoretical digital signal processing (DSP) operating-frequency of 650 MHz. More importantly, FTDL is configurable and delivers good scalability, i.e., the timing is stabilized even when the design is scaled-up to 100% resource utilization for different deep learning systems. (ii) In workload compilation, FTDL provides a compiler that manages to map the DL workloads to the architecture level in an optimal manner. Experimental results show that for most benchmark layers in MLPerf, FTDL achieves an over 80% hardware efficiency.
VComputeLib: Enabling Cross-Platform GPGPU on Mobile and Embedded GPUs

Modern mobile devices contain GPU cores with decent compute capabilities, but mobile application developers are often not able to exploit these compute capabilities due to lack of support offered by mobile operating systems such as Android for conventional GPGPU frameworks such as OpenCL and CUDA. The recent introduction of Vulkan provides developers with a new API for writing and tuning GPU applications and can be regarded as an alternative GPGPU programming model especially on mobile platforms. However, programmers might be hindered to adopt Vulkan given the fact that it is low-level and requires significantly higher programming effort. In this paper, we propose VComputeLib, a lightweight runtime library that lowers Vulkan's programmability effort and provides advanced features such as device queue virtualization and granular memory management, enabling developers to write efficient platform-agnostic applications. VComputeLib also integrates a SPIR-V JIT compiler, that allows for applying several compiler optimisations on the compute kernels. Our evaluations show that the programmability of Vulkan is improved substantially with the help of VComputeLib resulting in up to 80% less lines of code and a comparable programming effort to that of OpenCL and CUDA. We also asses the impact of applying different compiler optimisations using VComputeLib on different GPU platforms. Our results show that these optimisations can have variable positive and negative impacts depending on the application and platform in use.
bioMCS: A Bio-inspired Collaborative Data Transfer Framework over Fog Computing Platforms in Mobile Crowdsensing

Mobile crowdsensing (MCS) leverages the participation of active citizens and establishes a cost-effective sensing infrastructure using their devices. The MCS platform allocates sensing tasks, for which individual user reports are collected to enable decision making. Task sensing and communication not only consume user's device energy, but also spawn redundant data leading to network congestion and issues in data management at the platform's end. MCS, being a building block of sustainable smart city applications, must ensure judicious utilization of device energy and network resources. To address these challenges, this paper proposes a bio-inspired data transfer framework, bioMCS, deployed over a fog computing platform and capable of enforcing collaborative sensing among proximate users. bioMCS achieves energy efficiency and robustness through the topological properties of a biological network called transcriptional regulatory network. It employs collaborative sensing to further restrict device energy overhead by taking advantage of energy efficient device-to-device communications like Wi-Fi direct data transfer via group owner. We evaluate our framework through extensive simulation-based experiments and demonstrate that the bioMCS framework achieves better energy and network efficiency compared to individual user-centric data transfer mechanism.
Bringing Real-World Data, Interactive Games and Visualizations into Early CS Courses

This workshop provides instructors with a hands-on introduction to BRIDGES, a software infrastructure for programming assignments in early computer science courses, including introductory programming (CS1, CS2), data structures, and algorithm analysis. BRIDGES provides capabilities for creating more engaging programming assignments, including: (1) a simplified API for accessing real-world data sets, including from social networks; scientific, government, and civic organizations; and movie, music, and literature collections; (2) interesting visualizations of the data, (3) an easy to use API that supports creation of games that leverage real-world data, and, (4) algorithm benchmarking. Workshop attendees will engage in hands-on experience with BRIDGES with multiple datasets and will have the opportunity to discuss how BRIDGES can be used in their own courses.
On the fly MHP analysis

May-Happen-in-Parallel (MHP) analysis forms the basis for many problems of program analysis and program understanding. MHP analysis can also be used by IDEs (integrated-development-environments) to help programmers to refactor parallel-programs, identify racy programs, understand which parts of the program run in parallel, and so on. Since the code keeps changing in the IDE, re-computing the MHP information after every change can be an expensive affair. In this manuscript, we propose a novel scheme to perform incremental MHP analysis (on the fly) of programs written in task parallel languages like X10 to keep the MHP information up to date, in an IDE environment. The key insight of our proposed approach to maintain the MHP information up to date is that we need not rebuild (from scratch) every data structure related to MHP information, after each modification (addition or deletion of statements) in the source code. The idea is to reuse the old MHP information as much as possible and incrementally recompute the MHP information (of a small set of statements) which depends on the statement added/removed. We introduce two new algorithms that deal with addition and removal of parallel constructs like finish, async, atomic, and sequential constructs like loop, if, if-else and other sequential statements, on the fly. Our evaluation shows that our algorithms run much faster than the repeated invocations of the fastest known MHP analysis for X10 programs [Sankar et al. 2016].
Personalized Service Delivery using Reinforcement Learning in Fog and Cloud Environment

The ability to fulfil the resource demand in runtime is encouraging the businesses to migrate to cloud. Recently, to provide real-time cloud services and to save network resources, fog computing is introduced. To further improve the quality of service in delivery process, Artificial Intelligence is being applied extensively. However, the state-of-the-art in this regard is still immature as it mainly focuses at either fog or cloud. To address this issue, a novel reinforcement learning-based personalized service delivery (RLPSD) mechanism is proposed in this paper, which allows the service provider to combine the fog and cloud environments, while providing the service. RLPSD distributes the user's service requests between fog and cloud, considering the users' constraints (e.g. the distance from fog), thus resulting in personalized service delivery. The proposed RLPSD algorithm is implemented and evaluated in terms of its success rate, percentage of service requests' distribution, learning rate, discount factor, etc.