Contribution: This research illuminates information entropy's efficacy as a pivotal educational tool in programming, enabling the precise quantification of algorithmic complexity and student abstraction levels for...
详细信息
Contribution: This research illuminates information entropy's efficacy as a pivotal educational tool in programming, enabling the precise quantification of algorithmic complexity and student abstraction levels for solving P problems. This approach can provide students quantitative, comparative insights into the differences between optimal and student implemented solution, and allowing educators to offer targeted feedback, thereby optimizing the learning and abstraction processes in algorithm design through deliberate practice. Background: Abstraction is considered one of the most important skills in problem solving. Many studies in programming have shown that higher abstraction capability can significantly simplify problems, reduce program complexity and improve efficiency. However, it is difficult to develop criteria to measure the level of abstraction, and there is still a lack of relevant systematic research. Research Questions: 1) How can students' abstraction ability in programming be effectively measured? 2) How to develop programming education and training methods based on the measurement of abstraction ability? Methodology: Forty-six grade 10 students participated in the experiment, divided into two groups for programming training using information-entropy-based assessment and traditional learning methods. Their level of computational thinking, algorithmic efficiency improvements, and test scores were used to measure performance and to analyze the effectiveness of the training methods. Findings: Through empirical research, this article finds that information-entropy-based assessment can reflect the differences in problem solving among students possessing varying capabilities. Information entropy can be crucial for evaluating and improving students' abstraction performance and algorithm efficiency.
The Versatile Video Coding (VVC) standard notably enhances encoding efficiency with the Quad-Tree plus Multi-Type Tree (QTMTT) partition structure. However, the complex QTMTT tool presents substantial challenges in bo...
详细信息
The Versatile Video Coding (VVC) standard notably enhances encoding efficiency with the Quad-Tree plus Multi-Type Tree (QTMTT) partition structure. However, the complex QTMTT tool presents substantial challenges in both software and hardware implementation. To overcome those challenges, this paper introduces a hardware-friendly partition decision algorithm for VVC intra and inter coding. Firstly, we propose a lightweight backbone network to extract partition-aware features. Secondly, we employ a Quantisation Parameter (QP) fusion network to regulate the impact of QPs on the partition structure. Additionally, we apply a top-down threshold-driven post-processing algorithm, in which improbable partition types are removed to directly derive the unique partition structure. Experiments show that our method not only exceeds the previous state-of-the-art work in BD-BR performance, but also shows sufficient hardware-friendly characteristics. To the best of our knowledge, this work is among the earliest to comprehensively discuss and implement a hardware-friendly partition decision algorithm.
This paper describes a methodology used to test the vulnerability of control algorithms implemented in an industrial Programmable Logic Controller (PLC) environment to cyber attacks. Three stages of testing are discus...
详细信息
This paper describes a methodology used to test the vulnerability of control algorithms implemented in an industrial Programmable Logic Controller (PLC) environment to cyber attacks. Three stages of testing are discussed. First, we start with a simulation study conducted in MATLAB. Secondly, the calculations are implemented using a PLC simulator. These initial stages enable quick and efficient identification of the types of attacks to which the algorithms implemented in the PLC are susceptible. Finally, a set of practical tests on a physical laboratory process controlled by PLC is done. Various attack scenarios are considered, and the vulnerability of control algorithms is carefully evaluated. Based on the obtained results, we formulate practical suggestions for reducing the vulnerability of PLC-based industrial control systems.
This study introduces a novel algorithm for the detection of three-cell coupling faults, March ML3C, along with a simulator, TCFS. The March ML3C algorithm targets the detection of single-port, static, and unlinked th...
详细信息
This study introduces a novel algorithm for the detection of three-cell coupling faults, March ML3C, along with a simulator, TCFS. The March ML3C algorithm targets the detection of single-port, static, and unlinked three-cell coupling faults within bit-oriented random access memory (RAM). March ML3C improves the coverage of three-cell coupling faults to 100%, with a complexity of only 58n (n is the number of memory cells), which is lower than that of most similar algorithms. Furthermore, to solve the problem of none of the existing tools supporting the simulation of three-cell coupling faults, this study designs and implements TCFS, which can quickly simulate all March-type algorithms and calculate the coverages for three-cell coupling faults, thus achieving the purpose of software simulation of the algorithms. The simulation results of March ML3C and other similar algorithms using TCFS are also presented in this paper.
This paper presents a retrospective of the article "Whole Test Suite Generation", published in the IEEE Transactions on software Engineering, in 2012. We summarize its main contributions, and discuss how thi...
详细信息
This paper presents a retrospective of the article "Whole Test Suite Generation", published in the IEEE Transactions on software Engineering, in 2012. We summarize its main contributions, and discuss how this work impacted the research field of Search-Based software Testing (SBST) in the last 12 years. The novel techniques presented in the paper were implemented in the tool EvoSuite, which has been so far the state-of-the-art in unit test generation for Java programs using SBST. SBST has shown practical and impactful applications, creating the foundations to open the doors to tackle several other software testing problems besides unit testing, like for example system testing of Web APIs with EvoMaster. We conclude our retrospective with our reflections on what lies ahead, especially considering the important role that SBST still plays even in the age of Large Language Models (LLMs).
Modern high-dimensional datasets are often formed by acquiring samples from multiple sources having heterogeneous quality, i.e., some sources are noisier than others. Collecting data in this manner raises the followin...
详细信息
Modern high-dimensional datasets are often formed by acquiring samples from multiple sources having heterogeneous quality, i.e., some sources are noisier than others. Collecting data in this manner raises the following natural question: what is the best way to collect the data (i.e., how many samples should be acquired from each source) given constraints (e.g., on time or energy)? In general, the answer depends on what analysis is to be performed. In this paper, we study the foundational signal processing task of estimating underlying low-dimensional principal components. Since the resulting dataset will be high-dimensional and will have heteroscedastic noise, we focus on the recently proposed optimally weighted PCA, which is designed specifically for this setting. We develop an efficient method for designing sample acquisitions that optimize the asymptotic performance of optimally weighted PCA given resource constraints, and we illustrate the proposed method through various case studies.
This system paper documents the technical foundations for the extension of the Topology ToolKit (TTK) to distributed-memory parallelism with the Message Passing Interface (MPI). While several recent papers introduced ...
详细信息
This system paper documents the technical foundations for the extension of the Topology ToolKit (TTK) to distributed-memory parallelism with the Message Passing Interface (MPI). While several recent papers introduced topology-based approaches for distributed-memory environments, these were reporting experiments obtained with tailored, mono-algorithm implementations. In contrast, we describe in this paper a versatile approach (supporting both triangulated domains and regular grids) for the support of topological analysis pipelines, i.e., a sequence of topological algorithms interacting together, possibly on distinct numbers of processes. While developing this extension, we faced several algorithmic and software engineering challenges, which we document in this paper. Specifically, we describe an MPI extension of TTK's data structure for triangulation representation and traversal, a central component to the global performance and generality of TTK's topological implementations. We also introduce an intermediate interface between TTK and MPI, both at the global pipeline level, and at the fine-grain algorithmic level. We provide a taxonomy for the distributed-memory topological algorithms supported by TTK, depending on their communication needs and provide examples of hybrid MPI+thread parallelizations. Detailed performance analyses show that parallel efficiencies range from 20% to 80% (depending on the algorithms), and that the MPI-specific preconditioning introduced by our framework induces a negligible computation time overhead. We illustrate the new distributed-memory capabilities of TTK with an example of advanced analysis pipeline, combining multiple algorithms, run on the largest publicly available dataset we have found (120 billion vertices) on a standard cluster with 64 nodes (for a total of 1536 cores). Finally, we provide a roadmap for the completion of TTK's MPI extension, along with generic recommendations for each algorithm communication category.
software module clustering is an unsupervised learning method used to cluster software entities (e.g., classes, modules, or files) with similar features. The obtained clusters may be used to study, analyze, and unders...
详细信息
software module clustering is an unsupervised learning method used to cluster software entities (e.g., classes, modules, or files) with similar features. The obtained clusters may be used to study, analyze, and understand the software entities' structure and behavior. Implementing software module clustering with optimal results is challenging. Accordingly, researchers have addressed many aspects of software module clustering in the past decade. Thus, it is essential to present the research evidence that has been published in this area. In this study, 143 research papers from well-known literature databases that examined software module clustering were reviewed to extract useful data. The obtained data were then used to answer several research questions regarding state-of-the-art clustering approaches, applications of clustering in software engineering, clustering processes, clustering algorithms, and evaluation methods. Several research gaps and challenges in software module clustering are discussed in this paper to provide a useful reference for researchers in this field.
Code review is an important practice in software development. One of its main objectives is for the assurance of code quality. For this purpose, the efficacy of code review is subject to the credibility of reviewers, ...
详细信息
Code review is an important practice in software development. One of its main objectives is for the assurance of code quality. For this purpose, the efficacy of code review is subject to the credibility of reviewers, i.e., reviewers who have demonstrated strong evidence of previously making quality-enhancing comments are more credible than those who have not. Code reviewer recommendation (CRR) is designed to assist in recommending suitable reviewers for a specific objective and, in this context, assurance of code quality. Its performance is susceptible to the relevance of its training dataset to this objective, composed of all reviewers' historical review comments, which, however, often contains a plethora of comments that are irrelevant to the enhancement of code quality. Furthermore, recommendation accuracy has been adopted as the sole metric to evaluate a recommender's performance, which is inadequate as it does not take reviewers' relevant credibility into consideration. These two issues form the ground truth problem in CRR as they both originate from the relevance of dataset used to train and evaluate CRR algorithms. To tackle this problem, we first propose the concept of Quality-Enhancing Review Comments (QERC), which includes three types of comments - change-triggering inline comments, informative general comments, and approve-to-merge comments. We then devise a set of algorithms and procedures to obtain a distilled dataset by applying QERC to the original dataset. We finally introduce a new metric - reviewer's credibility for quality enhancement (RCQE) - as a complementary metric to recommendation accuracy for evaluating the performance of recommenders. To validate the proposed QERC-based approach to CRR, we conduct empirical studies using real data from seven projects containing over 82K pull requests and 346K review comments. Results show that: (a) QERC can effectively address the ground truth problem by distilling quality-enhancing comments from the datas
Effectively improving the optimization performance of artificial electric field algorithm (AEFA) and broadening its application domain can aid in providing robot path planning in 3-D complex scenes. This article effec...
详细信息
Effectively improving the optimization performance of artificial electric field algorithm (AEFA) and broadening its application domain can aid in providing robot path planning in 3-D complex scenes. This article effectively proposes an improved AEFA (I-AEFA) and creatively applies it to robot path planning. The algorithm introduces three mechanisms to enhance the exploration ability and convergence accuracy of the population: parameter adaptation, reverse learning, and Cauchy mutation. Next, the benchmark terrain model accurately models the 3-D environment, and the global path planning problem is solved using a combination of I-AEFA and cubic spline interpolation. Then, a large number of virtual simulation experiments are conducted to evaluate the algorithm's three improved mechanisms, various control point counts, as well as single and multirobot configurations before migrating the algorithm to the graphical modeling and analysis software for hardware-in-the-loop simulation experiments. Finally, the experimental results are analyzed qualitatively and quantitatively using a variety of visualization techniques and two nonparametric test methods, demonstrating that the I-AEFA proposed in this article has good optimization performance and is highly effective, reliable, and scalable for solving robot path planning problems.
暂无评论