13,895 research outputs found

    Optimal realizations of floating-point implemented digital controllers with finite word length considerations.

    Get PDF
    The closed-loop stability issue of finite word length (FWL) realizations is investigated for digital controllers implemented in floating-point arithmetic. Unlike the existing methods which only address the effect of the mantissa bits in floating-point implementation to the sensitivity of closed-loop stability, the sensitivity of closed-loop stability is analysed with respect to both the mantissa and exponent bits of floating-point implementation. A computationally tractable FWL closed-loop stability measure is then defined, and the method of computing the value of this measure is given. The optimal controller realization problem is posed as searching for a floating-point realization that maximizes the proposed FWL closed-loop stability measure, and a numerical optimization technique is adopted to solve for the resulting optimization problem. Simulation results show that the proposed design procedure yields computationally efficient controller realizations with enhanced FWL closed-loop stability performance

    Robust explicit MPC design under finite precision arithmetic

    Get PDF
    We propose a design methodology for explicit Model Predictive Control (MPC) that guarantees hard constraint satisfaction in the presence of finite precision arithmetic errors. The implementation of complex digital control techniques, like MPC, is becoming increasingly adopted in embedded systems, where reduced precision computation techniques are embraced to achieve fast execution and low power consumption. However, in a low precision implementation, constraint satisfaction is not guaranteed if infinite precision is assumed during the algorithm design. To enforce constraint satisfaction under numerical errors, we use forward error analysis to compute an error bound on the output of the embedded controller. We treat this error as a state disturbance and use this to inform the design of a constraint-tightening robust controller. Benchmarks with a classical control problem, namely an inverted pendulum, show how it is possible to guarantee, by design, constraint satisfaction for embedded systems featuring low precision, fixed-point computations

    Certifying floating-point implementations using Gappa

    Full text link
    High confidence in floating-point programs requires proving numerical properties of final and intermediate values. One may need to guarantee that a value stays within some range, or that the error relative to some ideal value is well bounded. Such work may require several lines of proof for each line of code, and will usually be broken by the smallest change to the code (e.g. for maintenance or optimization purpose). Certifying these programs by hand is therefore very tedious and error-prone. This article discusses the use of the Gappa proof assistant in this context. Gappa has two main advantages over previous approaches: Its input format is very close to the actual C code to validate, and it automates error evaluation and propagation using interval arithmetic. Besides, it can be used to incrementally prove complex mathematical properties pertaining to the C code. Yet it does not require any specific knowledge about automatic theorem proving, and thus is accessible to a wide community. Moreover, Gappa may generate a formal proof of the results that can be checked independently by a lower-level proof assistant like Coq, hence providing an even higher confidence in the certification of the numerical code. The article demonstrates the use of this tool on a real-size example, an elementary function with correctly rounded output

    A Static Analyzer for Large Safety-Critical Software

    Get PDF
    We show that abstract interpretation-based static program analysis can be made efficient and precise enough to formally verify a class of properties for a family of large programs with few or no false alarms. This is achieved by refinement of a general purpose static analyzer and later adaptation to particular programs of the family by the end-user through parametrization. This is applied to the proof of soundness of data manipulation operations at the machine level for periodic synchronous safety critical embedded software. The main novelties are the design principle of static analyzers by refinement and adaptation through parametrization, the symbolic manipulation of expressions to improve the precision of abstract transfer functions, the octagon, ellipsoid, and decision tree abstract domains, all with sound handling of rounding errors in floating point computations, widening strategies (with thresholds, delayed) and the automatic determination of the parameters (parametrized packing)

    Is Your Model Susceptible to Floating-Point Errors?

    Get PDF
    This paper provides a framework that highlights the features of computer models that make them especially vulnerable to floating-point errors, and suggests ways in which the impact of such errors can be mitigated. We focus on small floating-point errors because these are most likely to occur, whilst still potentially having a major influence on the outcome of the model. The significance of small floating-point errors in computer models can often be reduced by applying a range of different techniques to different parts of the code. Which technique is most appropriate depends on the specifics of the particular numerical situation under investigation. We illustrate the framework by applying it to six example agent-based models in the literature.Floating Point Arithmetic, Floating Point Errors, Agent Based Modelling, Computer Modelling, Replication

    Status of the differential transformation method

    Full text link
    Further to a recent controversy on whether the differential transformation method (DTM) for solving a differential equation is purely and solely the traditional Taylor series method, it is emphasized that the DTM is currently used, often only, as a technique for (analytically) calculating the power series of the solution (in terms of the initial value parameters). Sometimes, a piecewise analytic continuation process is implemented either in a numerical routine (e.g., within a shooting method) or in a semi-analytical procedure (e.g., to solve a boundary value problem). Emphasized also is the fact that, at the time of its invention, the currently-used basic ingredients of the DTM (that transform a differential equation into a difference equation of same order that is iteratively solvable) were already known for a long time by the "traditional"-Taylor-method users (notably in the elaboration of software packages --numerical routines-- for automatically solving ordinary differential equations). At now, the defenders of the DTM still ignore the, though much better developed, studies of the "traditional"-Taylor-method users who, in turn, seem to ignore similarly the existence of the DTM. The DTM has been given an apparent strong formalization (set on the same footing as the Fourier, Laplace or Mellin transformations). Though often used trivially, it is easily attainable and easily adaptable to different kinds of differentiation procedures. That has made it very attractive. Hence applications to various problems of the Taylor method, and more generally of the power series method (including noninteger powers) has been sketched. It seems that its potential has not been exploited as it could be. After a discussion on the reasons of the "misunderstandings" which have caused the controversy, the preceding topics are concretely illustrated.Comment: To appear in Applied Mathematics and Computation, 29 pages, references and further considerations adde

    Computing the Lambert W function in arbitrary-precision complex interval arithmetic

    Full text link
    We describe an algorithm to evaluate all the complex branches of the Lambert W function with rigorous error bounds in interval arithmetic, which has been implemented in the Arb library. The classic 1996 paper on the Lambert W function by Corless et al. provides a thorough but partly heuristic numerical analysis which needs to be complemented with some explicit inequalities and practical observations about managing precision and branch cuts.Comment: 16 pages, 4 figure
    corecore