Browsing by Author "David Thuente, Committee Co-Chair"
Now showing 1 - 2 of 2
- Results Per Page
- Sort Options
- Generation And Verification Of Software Robustness Properties Through Static Analysis(2006-01-06) Sharma, Tanu; Jun Xu, Committee Chair; David Thuente, Committee Co-Chair; Tao Xie, Committee MemberIncreasing reliance on computers calls for the need of robust software especially in critical applications such as those used in military, hospital etc. Traditional software testing techniques focus on functionality and ignore stressful conditions and exception handling. Poor programming practices may lead to critical software robustness failures resulting in memory corruption, application crashes and file system failures. Such robustness failures can be detected by many static analysis tools. However the difficulty in using existing tools is that they require users to provide robustness properties which need to be checked. Currently these properties which require source code and interface level information are mostly manually specified. This work proposes an FSA Generator framework that automatically generates concrete properties. Users only need to specify high level generic properties in simple finite state machines. The framework converts these generic properties into concrete language specific properties using source code information from a pattern database and interface level information from an API specification database. The automated cost effective generation of concrete properties makes static analysis scalable and efficient. Experimental evaluation using the generated properties and a static checker has found numerous robustness bugs in more than ten open source packages.
- A Neural Network Control System for the Segway Robotic Mobility Platform(2006-11-08) Forrest, Charles E; Edward Grant, Committee Co-Chair; David Thuente, Committee Co-Chair; John Muth, Committee Co-ChairAn Artificial Neural Network (ANN) is a network of simple processing elements that emulate neurons in the brain. The behavior of such a network is characterized by the synaptic connections between the input data and the processing elements. Here, an ANN was generated and used as part of a control system for a Segway Robotic Mobility Platform (RMP) being trained in obstacle avoidance behavior. The single sensor input to the control system is a SICK laser, a range-finding sensor; the control output is Pulse Width Modulation commands to the RMP's motors. The Segway RMP, neural network maps input sensor data directly to appropriate motor output commands for obstacle avoidance. Obstacle avoidance training was accomplished in a simulated LabView world using supervised reinforcement learning and practices from evolutionary robotics. Synaptic connection strengths were stored in an array called the artificial "chromosome". The chromosome was randomly modified, and the response of the network was compared to a pre-defined desired output. The goal of the genetic algorithm training was to minimize the error between the desired and actual outputs, yet to ensure that local minima were avoided. Once the ANN was trained in simulation, it was transferred to an actual RMP for obstacle avoidance testing in the real world . The benefits of training ANN's for obstacle avoidance tasks in simulation are demonstrated here. In the simulated world, training and testing can be done in virtual environments: offering greater control over environment complexity, testing the robustness of the controllers generated, and filtering the training data set. All of the foregoing reduces the cost of training and lead to the development of an optimized ANN controller for RMP obstacle avoidance. The ANN provided input pattern generalization for smooth motion, improved computational speeds, and added to the body of knowledge for RMP controller development.
