3,374 research outputs found
A Tool for Optimizing the Build Performance of Large Software Code Bases
We present Build Analyzer, a tool that helps developers optimize the build performance of huge systems written in C. Due to complex C header dependencies, even small code changes can cause extremely long rebuilds, which are problematic when code is shared and modified by teams of hundreds of individuals. Build Analyzer supports several use cases. For developers, it provides an estimate of the build impact and distribution caused by a given change. For architects, it shows why a build is costly, how its cost is spread over the entire code base, which headers cause build bottlenecks, and suggests ways to refactor these to reduce the cost. We demonstrate Build Analyzer with a use-case on a real industry code base.
A direct A.C. to A.C. regenerative frequency and voltage converter
Includes bibliographical references.The reliable variable speed operation of an a. c. machine over a wide speed range is a problem that has received attention for some time. In this thesis a system to permit such operation from a fixed frequency fixed voltage supply is proposed, under the name of the asynchronous modulation converter. This converter is of the cycloconverter family, but is force-commutated and is not synchronised with the supply frequency. The power switching element comprises a power transistor in a diode bridge, coupled to the control circuitry by opto-isolators. The output of the a-mod converter is produced by a "chopper" modulation process and this results in the harmonics present being at frequencies well removed from the fundamental. A feedback system to ensure smooth commutation of the output current from the power switches is described. This feedback system operates by sensing the rate of rise of the inductive voltage surge on the load when a switch is opened to operate a freewheel path switch
Robust Feature Detection and Local Classification for Surfaces Based on Moment Analysis
The stable local classification of discrete surfaces with respect to features such as edges and corners or concave and convex regions, respectively, is as quite difficult as well as indispensable for many surface processing applications. Usually, the feature detection is done via a local curvature analysis. If concerned with large triangular and irregular grids, e.g., generated via a marching cube algorithm, the detectors are tedious to treat and a robust classification is hard to achieve. Here, a local classification method on surfaces is presented which avoids the evaluation of discretized curvature quantities. Moreover, it provides an indicator for smoothness of a given discrete surface and comes together with a built-in multiscale. The proposed classification tool is based on local zero and first moments on the discrete surface. The corresponding integral quantities are stable to compute and they give less noisy results compared to discrete curvature quantities. The stencil width for the integration of the moments turns out to be the scale parameter. Prospective surface processing applications are the segmentation on surfaces, surface comparison, and matching and surface modeling. Here, a method for feature preserving fairing of surfaces is discussed to underline the applicability of the presented approach.
Pseudo labeling and classification of high-dimensional data using visual analytics
Machine learning (ML) works with data consisting of tens up to tens of thousands of measurements (dimensions) per sample. As the number of dimensions and/or samples grow, so does the difficulty of understanding such data and, related to that, understanding how to design ML pipelines that effectively process such data for tasks such as classification. Visualization, and in particular Visual Analytics (VA) has emerged as one of the key approaches that helps practitioners with the understanding of high-dimensional data and with ML engineering tasks.
This thesis studies several novel approaches by which VA can help ML (and conversely), as follows. Our work focuses on a visualization technique called dimensionality reduction, or projection, which handles efficiently and effectively large amounts of high-dimensional data.
One the ML side, we consider the task of training a typical classifier for the challenging context when only a small amount of ground-truth labels is available. We first propose a pseudo-labeling approach that explores the ability of projections to generate a reduced feature space with enough information to improve feature learning and classifier performance over iterations. We show that the 2D space generated by projections can capture very well the data structure present in high dimensions so as to support the design of high-performance feature and classifier learning models. Secondly, we link data separation (DS), visual separation (VS), and classifier performance (CP) by pseudo-labeling and projections. We use feature spaces with high DS as input to compute high-VS projections. We use these projections to perform pseudo labeling with high propagation accuracies. Finally, we use such labels to train classifiers with a high CP. We show that the high-DS, high-VS, high-CP implication holds for several types of projection techniques. Hence, such projection techniques are suitable for the task of classifier engineering. Thirdly, we exploit the aforementioned observation that high-VS and high-CP are correlated to propose a metric to assess the VS of labeled 2D scatterplots produced by projection techniques. Our metric computes the accuracy of label propagation in the projection space, which is simple and fast to execute. We show that high propagation accuracies match a high VS as assessed by human subjects. Finally, we join all our contributions to incorporate the user in the ML engineering process. We propose an interactive VA tool that assists users in manual labeling samples by providing additional information in terms of classifier decision boundary maps, projection errors, and inverse projection errors. Our results show that this approach enables users to quickly generate labeled samples that lead to higher classification performance after a few labeling iterations. This contribution shows that both algorithms and humans can exploit projections to build better classifiers
GUIsurfer: A Reverse Engineering Framework for User Interface Software
GUIsurfer: A Reverse Engineering Framework for User Interface Software10000-01-0
Zane Grey with Orange A.C. baseball team
This photograph shows Ohio native Zane Grey with the Orange A.C. Baseball Team, ca. 1896-1904. Prior to becoming a well-known author of western novels, Zane Grey was also a dentist and a semi-professional baseball player, with teams including the Orange Athletic Club and the Newark (New Jersey) Colts
An Image Inpainting Technique Based on the Fast Marching Method
Digital inpainting provides a means for reconstruction of small damaged portions of an image. Although the inpainting basics are straightforward, most inpainting techniques published in the literature are complex to understand and implement. We present here a new algorithm for digital inpainting based on the fast marching method for level set applications. Our algorithm is very simple to implement, fast, and produces nearly identical results to more complex, and usually slower, known methods. Source code is available online.
Visualisation and simulation with object-oriented networks
Among the existing systems, visual programming environments address best these issues. However, producing interactive simulations and visualisations is still a difficult task. This defines the main research objective of this thesis: The development and implementation of concepts and techniques to combine visualisation, simulation, and application construction in an interactive, easy to use, generic environment. The aim is to produce an environment in which the above mentioned activities can be learnt and carried out easily by a researcher. Working with such an environment should decrease the amount of time usually spent in redesigning existing software elements such as graphics interfaces, existing computational modules, and general infrastructure code. Writing new computational components or importing existing ones should be simple and automatic enough to make using the envisaged system an attractive option for a non programmer expert. Besides this, all proven successful elements of an interactive simulation and visualisation environment should be provided, such as visual programming, graphics user interfaces, direct manipulation, and so on. Finally, a large palette of existing scientific computation, data processing, and visualisation components should be integrated in the proposed system. On one hand, this should prove our claims of openness and easy code integration. On the other hand, this should provide the concrete set of tools needed for building a range of scientific applications and visualisations. This thesis is structured as follows. Chapter 2 defines the context of our work. The scientific research environment is presented and partitioned into the three roles of end user, application designer, and component developer. The interactions between these roles and their specific requirements are described and lead to a more precise formulation of our problem statement. Chapter 3 presents the most used architectures for simulation and visualisation systems: the monolithic system, the application library, and the framework. The advantages and disadvantages of these architectural models are then discussed in relation with our problem statement requirements. The main conclusion drawn is that no single existing architectural model suffices, and that what is needed is a combination of the features present in all three models. Chapter 4 introduces the new architectural model we propose, based on the combination of object-orientation in form of the C++ language and dataflow modelling in the new MC++ language. Chapter 5 presents VISSION, an interactive simulation and visualisation environment constructed on the introduced new architectural model, and shows how the usual tasks of application construction, steering, and visualisation are addressed. In chapter 6, the implementation of VISSIONis architectural model is described in terms of its component parts. Chapter 7 presents the applications of VISSION to numerical simulation, while chapter 8 focuses on its visualisation and graphics applications. Finally, chapter 9 concludes the thesis and outlines possible direction for future research
- …
