We are all increasingly dependent on software systems to run the technology we use every day, so we need these systems to be both reliable and safe.This book presents papers from the NATO Advanced ...Study Institute Summer School Dependable Software Systems Engineering, held in Marktoberdorf, Germany, in July and August 2014. Lecturers were drawn from prestigious research groups representing both industry and academia, and the course was designed as an in-depth presentation and teaching of state-of-the-art scientific techniques and methods covering research and industrial practice as well as scientific principles.Topics covered
This paper presents a new discriminative deep metric learning (DDML) method for face and kinship verification in wild conditions. While metric learning has achieved reasonably good performance in ...face and kinship verification, most existing metric learning methods aim to learn a single Mahalanobis distance metric to maximize the inter-class variations and minimize the intra-class variations, which cannot capture the nonlinear manifold where face images usually lie on. To address this, we propose a DDML method to train a deep neural network to learn a set of hierarchical nonlinear transformations to project face pairs into the same latent feature space, under which the distance of each positive pair is reduced and that of each negative pair is enlarged. To better use the commonality of multiple feature descriptors to make all the features more robust for face and kinship verification, we develop a discriminative deep multi-metric learning method to jointly learn multiple neural networks, under which the correlation of different features of each sample is maximized, and the distance of each positive pair is reduced and that of each negative pair is enlarged. Extensive experimental results show that our proposed methods achieve the acceptable results in both face and kinship verification.
Generate-and-validate (G&V) automated program repair (APR) techniques have been extensively studied during the past decade. Meanwhile, such techniques can be extremely time-consuming due to the ...manipulation of program code to fabricate a large number of patches and also the repeated test executions on patches to identify potential fixes. PraPR, a recentG furthermore, UniAPR addresses the imprecise patch validation issue by resetting the JVM global state via runtime bytecode transformation. We have implemented UniAPR as a publicly available fully automated Maven Plugin. Our study demonstrates for the first time that on-the-fly patch validation can often speed up state-of-the-art source-code-level APR by over an order of magnitude, enabling all existing APR techniques to explore a larger search space to fix more bugs in the near future. Furthermore, our study shows the first empirical evidence that vanilla on-the-fly patch validation can be imprecise/unsound, while UniAPR with JVM reset is able to mitigate such issues with negligible overhead.
Abstract
The Rapid Refresh (RAP), an hourly updated assimilation and model forecast system, replaced the Rapid Update Cycle (RUC) as an operational regional analysis and forecast system among the ...suite of models at the NOAA/National Centers for Environmental Prediction (NCEP) in 2012. The need for an effective hourly updated assimilation and modeling system for the United States for situational awareness and related decision-making has continued to increase for various applications including aviation (and transportation in general), severe weather, and energy. The RAP is distinct from the previous RUC in three primary aspects: a larger geographical domain (covering North America), use of the community-based Advanced Research version of the Weather Research and Forecasting (WRF) Model (ARW) replacing the RUC forecast model, and use of the Gridpoint Statistical Interpolation analysis system (GSI) instead of the RUC three-dimensional variational data assimilation (3DVar). As part of the RAP development, modifications have been made to the community ARW model (especially in model physics) and GSI assimilation systems, some based on previous model and assimilation design innovations developed initially with the RUC. Upper-air comparison is included for forecast verification against both rawinsondes and aircraft reports, the latter allowing hourly verification. In general, the RAP produces superior forecasts to those from the RUC, and its skill has continued to increase from 2012 up to RAP version 3 as of 2015. In addition, the RAP can improve on persistence forecasts for the 1–3-h forecast range for surface, upper-air, and ceiling forecasts.
In operational numerical weather prediction (NWP), forecast verification against analysis from the same experiment is part of the standard evaluation practice. This “own‐analysis” verification is ...beneficial in providing complete and uniform spatial coverage but is known to suffer from overestimated skill scores when applied to short‐range forecasts due to the inevitable positive correlation between the forecast and analysis errors. To alleviate this problem, a new approach termed “twin‐analysis” verification is proposed. In this approach, the forecasts are verified against “twin analyses” that are produced by running an independent cycle using the same NWP system as the one used to produce the forecasts, but initializing the cycle using an independent first guess at the very beginning. In this way the error correlation between the forecasts and analyses is reduced, if not completely removed, while preserving the statistical properties of the analyses, allowing for a clearer interpretation of verification. This note reports the results of comparison between “twin‐analysis” and “own‐analysis” verification scores obtained for the Japan Meteorological Agency's global NWP system. It is reported that the two scores disagree up to 48 hr or even longer depending on the regions and elements, which highlights the reliability limit of “own‐analysis” verification. The proposed method does not completely remove the error correlation issue and also requires high computational costs; a practical use of the proposed approach in an operational environment is also discussed.
Schematic illustration of the design of the experiment.
Summary
We propose a run‐time verification mechanism of things for self‐healing capability in the Internet of Things domain. We discuss the software architecture of the proposed verification ...mechanism and its prototype implementations. To identify faulty running behavior of things, we utilize a complex event processing technique by applying rule‐based pattern detection on the events generated real time. For events, we use a descriptor metadata of the measurements (such as CPU usage, memory usage, and bandwidth usage) taken from Internet of Things devices. To understand the usability and effectiveness of the proposed mechanism, we developed prototype applications using different event processing platforms. We test the prototype implementations for performance and scalability under increasing message rates. The results are promising because the processing overhead of the proposed verification mechanism is negligible.
Automatically detecting bugs in programs has been a long-held goal in software engineering. Many techniques exist, trading-off varying levels of automation, thoroughness of coverage of program ...behavior, precision of analysis, and scalability to large code bases. This paper presents the Calysto static checker, which achieves an unprecedented combination of precision and scalability in a completely automatic extended static checker. Calysto is interprocedurally path-sensitive, fully context-sensitive, and bit-accurate in modeling data operations - comparable coverage and precision to very expensive formal analyses - yet scales comparably to the leading, less precise, static-analysis-based tool for similar properties. Using Calysto, we have discovered dozens of bugs, completely automatically, in hundreds of thousands of lines of production, open-source applications, with a very low rate of false error reports. This paper presents the design decisions, algorithms, and optimizations behind Calysto's performance.