27 research outputs found
Copiloting the Copilots: Fusing Large Language Models with Completion Engines for Automated Program Repair
During Automated Program Repair (APR), it can be challenging to synthesize
correct patches for real-world systems in general-purpose programming
languages. Recent Large Language Models (LLMs) have been shown to be helpful
"copilots" in assisting developers with various coding tasks, and have also
been directly applied for patch synthesis. However, most LLMs treat programs as
sequences of tokens, meaning that they are ignorant of the underlying semantics
constraints of the target programming language. This results in plenty of
statically invalid generated patches, impeding the practicality of the
technique. Therefore, we propose Repilot, a framework to further copilot the AI
"copilots" (i.e., LLMs) by synthesizing more valid patches during the repair
process. Our key insight is that many LLMs produce outputs autoregressively
(i.e., token by token), resembling human writing programs, which can be
significantly boosted and guided through a Completion Engine. Repilot
synergistically synthesizes a candidate patch through the interaction between
an LLM and a Completion Engine, which 1) prunes away infeasible tokens
suggested by the LLM and 2) proactively completes the token based on the
suggestions provided by the Completion Engine. Our evaluation on a subset of
the widely-used Defects4j 1.2 and 2.0 datasets shows that Repilot fixes 66 and
50 bugs, respectively, surpassing the best-performing baseline by 14 and 16
bugs fixed. More importantly, Repilot is capable of producing more valid and
correct patches than the base LLM when given the same generation budget
Is Your Code Generated by ChatGPT Really Correct? Rigorous Evaluation of Large Language Models for Code Generation
Program synthesis has been long studied with recent approaches focused on
directly using the power of Large Language Models (LLMs) to generate code
according to user intent written in natural language. Code evaluation datasets,
containing curated synthesis problems with input/output test-cases, are used to
measure the performance of various LLMs on code synthesis. However, test-cases
in these datasets can be limited in both quantity and quality for fully
assessing the functional correctness of the generated code. Such limitation in
the existing benchmarks begs the following question: In the era of LLMs, is the
code generated really correct? To answer this, we propose EvalPlus -- a code
synthesis benchmarking framework to rigorously evaluate the functional
correctness of LLM-synthesized code. In short, EvalPlus takes in the base
evaluation dataset and uses an automatic input generation step to produce and
diversify large amounts of new test inputs using both LLM-based and
mutation-based input generators to further validate the synthesized code. We
extend the popular HUMANEVAL benchmark and build HUMANEVAL+ with 81x
additionally generated tests. Our extensive evaluation across 14 popular LLMs
demonstrates that HUMANEVAL+ is able to catch significant amounts of previously
undetected wrong code synthesized by LLMs, reducing the pass@k by 15.1% on
average! Moreover, we even found several incorrect ground-truth implementations
in HUMANEVAL. Our work not only indicates that prior popular code synthesis
evaluation results do not accurately reflect the true performance of LLMs for
code synthesis but also opens up a new direction to improve programming
benchmarks through automated test input generation
Fuzz4All: Universal Fuzzing with Large Language Models
Fuzzing has achieved tremendous success in discovering bugs and
vulnerabilities in various software systems. Systems under test (SUTs) that
take in programming or formal language as inputs, e.g., compilers, runtime
engines, constraint solvers, and software libraries with accessible APIs, are
especially important as they are fundamental building blocks of software
development. However, existing fuzzers for such systems often target a specific
language, and thus cannot be easily applied to other languages or even other
versions of the same language. Moreover, the inputs generated by existing
fuzzers are often limited to specific features of the input language, and thus
can hardly reveal bugs related to other or new features. This paper presents
Fuzz4All, the first fuzzer that is universal in the sense that it can target
many different input languages and many different features of these languages.
The key idea behind Fuzz4All is to leverage large language models (LLMs) as an
input generation and mutation engine, which enables the approach to produce
diverse and realistic inputs for any practically relevant language. To realize
this potential, we present a novel autoprompting technique, which creates LLM
prompts that are wellsuited for fuzzing, and a novel LLM-powered fuzzing loop,
which iteratively updates the prompt to create new fuzzing inputs. We evaluate
Fuzz4All on nine systems under test that take in six different languages (C,
C++, Go, SMT2, Java and Python) as inputs. The evaluation shows, across all six
languages, that universal fuzzing achieves higher coverage than existing,
language-specific fuzzers. Furthermore, Fuzz4All has identified 98 bugs in
widely used systems, such as GCC, Clang, Z3, CVC5, OpenJDK, and the Qiskit
quantum computing platform, with 64 bugs already confirmed by developers as
previously unknown.Comment: Accepted at ICSE 202
Anti-apoptotic and anti-fibrotic efficacy of exercise training in hypertensive hearts: A systematic review
BackgroundThis review aims to summarize the antiapoptotic, pro-survival, and antifibrotic effects of exercise training in hypertensive hearts.MethodsKeyword searches were conducted in PubMed, Web of Science, and Scopus in May 2021. Research published in English on the effects of exercise training on the apoptosis, survival, and fibrosis pathways in hypertension was included. The CAMARADES checklist was used to determine the quality of the studies. Two reviewers independently implemented predesigned protocols for the search and selection of studies, the assessment of study quality, and the evaluation of the strength of evidence.ResultsEleven studies were included after selection. The duration of the exercise training ranged from 5 to 27 weeks. Nine studies showed that exercise training improved cardiac survival rates by increasing IGF-1, IGF-1 receptor, p-PI3K, Bcl-2, HSP 72, and p-Akt. Furthermore, 10 studies showed that exercise training reduced apoptotic pathways by downregulating Bid, t-Bid, Bad, Bak, Bax, TNF, and FADD. Finally, two studies reported the modification and subsequent improvement of physiological characteristics of fibrosis and decreased MAPK p38 and PTEN levels by exercise training in the left ventricle of the heart.ConclusionsThe findings of the review showed that exercise training could improve cardiac survival rates and attenuate cardiac apoptotic and fibrotic pathways in hypertension, suggesting that exercise training could act as a therapeutic approach to prevent hypertension-induced cardiac apoptosis and fibrosis.Systematic Review Registrationhttps://www.crd.york.ac.uk, identifier: CRD42021254118
Online Decision-Making under Uncertainty in Edge Computing Systems
Scheduling has been a principal area of computer science research because it directly influences the
performance, efficiency, and utility of computational and network systems. The scheduler can
generally make better decisions with enhanced foreknowledge of the system’s current and future
status, which we refer to as offline scheduling. However, obtaining such comprehensive insight is
often unfeasible in most real-world scenarios, which limits the application of offline scheduling. In
contrast to offline scheduling, online scheduling strives to establish a mechanism for making online
decisions as tasks arrive, without comprehensive knowledge of the future system status. In our work,
we focus on online scheduling in Edge Computing Systems. We introduce the Cloud-Edge Stretch
Minimisation Algorithm (CESMA), an innovative online heuristic that optimises max-stretch in Cloud-
Edge Systems. CESMA outperforms existing solutions in terms of performance, adaptability, and
computational overhead, showcasing its potential for practical Cloud-Edge Systems. Following this,
we propose online decision-making algorithms for practical applications on the Edge Computing
Platform. We emphasize the application of Edge Computing in the energy management field. This
scenario necessitates online decision-making for effective energy management. We first propose the
Virtual Algorithm-based Lightweight Online Scheduling (VALOS) to reduce the energy cost in an
energy system. VALOS is a lightweight online algorithm that operates on Edge Computing Platform,
designed to improve the energy management under uncertainties. Subsequently, we extend our
study to minimise the microgrid operating cost under peak load limitations. We introduce a Rankbased
Multiple-choice Secretary Algorithm, RMSA, specifically designed for the price-based demand
response scheme. We conducted extensive experiments using real-world datasets, demonstrating its
robustness and adaptability in varied and complex scenarios
Energy Demand Response Management in Smart Home Environments
ENABLING DEMAND RESPONSE ON ENERGY MANAGEMENT IN SMART HOME With the penetration of the Internet of Things (IoT) paradigm into the household scenario, an increasing number of smart appliances have been deployed to improve the comfort of living in the household. At present, most smart home devices are adopting the Cloud-based paradigm. The increasing electricity overhead from these smart appliances, however, has caused issues, as existing home energy management systems are unable to reduce electricity consumption effectively. To address this issue, we propose the use of an Edge-based computing platform with lightweight computing devices. In our experiments, this Edge-based platform has proven to be more energy efficient when compared to the traditional Cloud-based platform. To further reduce energy tariffs for households, we propose an energy management framework, namely Edge-based energy management System (EEMS), to be used with the Edge-based system that was designed in the first stage of our research. The EEMS is a low infrastructure investment system. A small-scale solar energy harvesting system has also been integrated into this system. The non-intrusive load monitoring (NILM) algorithm has been implemented in appliances monitoring. Regarding to energy management function, the scheduling strategy can also conform to user preference. We have conducted a realistic experiment with several smart appliances and Raspberry Pi. The experiment resulted in the electricity tariff being reduced by 82.3%. The last part of research addresses demand response (DR) technology. With the development of DR, energy management systems such as EEMS are better able to be implemented. We propose the use of an electricity business trading model, integrated with user-side demand response resources. The business trading model can be adopted to manage risks, increase profit and improve user satisfaction. Users will also benefit from tariffs reduction with the use of this model
Short-Term Load Forecasting Based on the Transformer Model
From the perspective of energy providers, accurate short-term load forecasting plays a significant role in the energy generation plan, efficient energy distribution process and electricity price strategy optimisation. However, it is hard to achieve a satisfactory result because the historical data is irregular, non-smooth, non-linear and noisy. To handle these challenges, in this work, we introduce a novel model based on the Transformer network to provide an accurate day-ahead load forecasting service. Our model contains a similar day selection approach involving the LightGBM and k-means algorithms. Compared to the traditional RNN-based model, our proposed model can avoid falling into the local minimum and outperforming the global search. To evaluate the performance of our proposed model, we set up a series of simulation experiments based on the energy consumption data in Australia. The performance of our model has an average MAPE (mean absolute percentage error) of 1.13, where RNN is 4.18, and LSTM is 1.93
Discovery of Novel Small-Molecule Inhibitors of PD-1/PD-L1 Interaction via Structural Simplification Strategy
Blockade of the programmed cell death 1 (PD-1)/programmed cell death-ligand 1 (PD-L1) interaction is currently the focus in the field of cancer immunotherapy, and so far, several monoclonal antibodies (mAbs) have achieved encouraging outcomes in cancer treatment. Despite this achievement, mAbs-based therapies are struggling with limitations including poor tissue and tumor penetration, long half-life time, poor oral bioavailability, and expensive production costs, which prompted a shift towards the development of the small-molecule inhibitors of PD-1/PD-L1 pathways. Even though many small-molecule inhibitors targeting PD-1/PD-L1 interaction have been reported, their development lags behind the corresponding mAb, partly due to the challenges of developing drug-like small molecules. Herein, we report the discovery of a series of novel inhibitors targeting PD-1/PD-L1 interaction via structural simplification strategy by using BMS-1058 as a starting point. Among them, compound A9 stands out as the most promising candidate with excellent PD-L1 inhibitory activity (IC50 = 0.93 nM, LE = 0.43) and high binding affinity to hPD-L1 (KD = 3.64 nM, LE = 0.40). Furthermore, A9 can significantly promote the production of IFN-γ in a dose-dependent manner by rescuing PD-L1 mediated T-cell inhibition in Hep3B/OS-8/hPD-L1 and CD3-positive T cells co-culture assay. Taken together, these results suggest that A9 is a promising inhibitor of PD-1/PD-L1 interaction and is worthy for further study