Browse the CompSci/Math Collections
The Curious Case of Heat Transfer through Water, Solid and Atmosphere & Analytical Solution of Fin/Slab Heat Transfer and Property Distribution03/11/2015ABSTRACT: Our present research falls into two parts regarding Heat Equations. Part one (Time Dependency, Unsteady Case): In lieu of experimentally determining the heat transfer in a two body system on a cold and snowy Ohio night, we shall direct our attention to the more scientifically expedient investigation of determining the heat transfer of heated water in a cup as it cools to the ambient temperature in order to show that cups of different materials affect the rate of heat transfer. The experiment will consist of three cups of the same size and shape but made of different materials. Then we will perform a non-linear regression of the experimental data. Part Two (Spatial Dependency, Steady Case): The Adomian decomposition method has been applied to evaluate the conduction-convection heat transfer through a straight fin, property distribution due to convection-diffusion, and conduction heat transfer through a slab with temperature dependent thermal conductivity. The Adomian decomposition method (ADM) provides the closed form solution for non-linear problems without applying any non-realistic simplifications and/or approximations. The obtained analytical solutions are compared with exact and numerical solutions, using the finite difference/R-K method. It is shown that the numerical simulation has some limitations and may not always produce correct results. However, the Adomian decomposition method follows the correct trend of the exact solution by applying only a few terms. |
Sudoku Solver Program Utilizing Logical Solving Techniques and Recursive Backtracking03/11/2015Sudoku is the simple looking puzzle game that is sweeping newspapers across the country. Although the grid puzzle game appears easy, some of the challenging puzzles require advanced solving techniques that rely on the candidate values for a particular arrangement of cells. We have coded a computer program, written in C++, to utilize several of these techniques in solving Sudoku puzzles. The program operates on a 2-dimentional array of classes, which contain the given or assigned values for each cell, as well as the candidates of possible numbers for these cells. With this structure the program can operate on and update the cell’s candidate values, allowing it to utilize the more advanced solving techniques such as ‘Linked Doubles’ and ‘Swordfish’. In addition to these solving techniques the program also contains a function that demonstrates a recursive backtracking solution. The recursive backtracking function tests possible candidates for a cell and continues to check values for subsequent cells until it either finds the solution or runs into unresolvable problems and backtracks to a previous cell to try another number. This solution can be slow for certain puzzles due to the number of branches that the function has to check, but we believe that using the traditional techniques on the puzzle first can greatly reduce the branches that this function has to check. Primary tests seem to confirm this, further testing and calculations should reveal how much it can be sped up by. |
NASA Martian Surface Mining: Most effective method of digging and collecting regolith in under 10 minutes.03/11/2015
|
Development of a Small Autonomous Airship Using Commercial Off-the-Shelf Components03/11/2015The majority of research and development in the unmanned aerial vehicle field has focused on fixed-wing and rotor-craft configurations, while lighter-than-air configurations have received less attention. This is due to common challenges facing airships, such as limited payload capacity and lack of rigidity in an airship airframe. The objective of this project is the design, construction and test flight of a small unmanned airship capable of navigating an area autonomously. This objective was inspired by research undertaken at NASA Langley Research Center, during which a small fixed-wing vehicle was developed to fulfill certain mission objectives using commercially available components. A small, commercially-manufactured blimp kit was chosen as a platform for the unmanned airship. The airship was controlled using two vectored motors for forward propulsion and altitude control, and an aft motor controlling yaw motion. The blimp kit was successfully tested under manual control. The results of the flight test determined that the flight control characteristics of the vehicle were stable and capable of being modelled for autonomy. Based on these observations, the airship will be modified with a microcontroller to allow for autonomous control. Control regimes will be written for the microcontroller to specify paths for the airship to fly. The airship's ability to fly these flight paths and stay within a designated boundary will be evaluated. Preliminary results of this research demonstrate the feasibility of small autonomous airships, and suggest that the addition of sensors will allow airships to become as useful as other configurations of unmanned aerial vehicles. |
Development and Implementation of a Very Efficient and Scalable Program Slicing Approach03/11/2015Program slicing is a commonly used approach for understanding and detecting the impact of changes to software. The idea is quite simple, given a variable and the location of that variable in a program, tell me what other parts of the program are affected by this variable. The approach has been used successfully for many years for various software maintenance tasks. For example, slicing was used to help address the Y2K problem by identifying parts of a program that could be impacted by changes on date fields. The concept of program slicing was originally identified by Weiser as a debugging aid. He defined the slice as an executable program that preserved the behavior of the original program. Weiser’s algorithm traces the data and control dependencies by solving data-flow equations for determining the direct and indirect relevant variables and statements. Since that time a number of different slicing techniques and tools have been proposed and implemented. These techniques are broadly distinguished according to the type of slices such as: static versus dynamic, closure versus executable, inter-procedural versus intra-procedural, and forward versus backward. The calculation of a program slice is, with few exceptions, based on the notion of a Program Dependence Graph (PDG) or one of its variants, e.g., a System Dependence Graph (SDG). Unfortunately, building the PDG/SDG is quite costly in terms of computational time and space. As such slicing approaches generally do not scale well and while there are some (costly) workarounds, generating slices for a very large system can often take days of computing time. Additionally, many tools are strictly limited to an upper bound on the size of the program they can slice. The work here addresses this limitation by eliminating the time and effort needed to build the entire PDG. In short it combines a text-based approach with a lightweight static analysis infrastructure that only computes dependence information as needed (aka on-the-fly) while computing the slice for each variable in the program. The slicing process is performed using the srcML format for source code that was developed here at Kent State University. The srcML format provides direct access to abstract syntactic information to support static analysis. While this lightweight approach will typically never match the accuracy of generating a full PDG/SDG and doing full pointer analysis, etc. it provides a fairly accurate picture of a program slice in an extremely short time comparatively for large systems (i.e., we found up to four orders of magnitude increase in speed for large systems). These techniques have been realized in a software tool called srcSlice that produces program slices in the context of every variable in an entire software system. The tool works for both the C and C++ programming languages and is highly scalable (e.g., can produce slices of a 2 million line program in minutes). Specifically, my research has been to enhance the slicing capabilities and expand the accuracy of the tool and approach. The srcSlice tool currently does not have any type resolution capabilities and no functionality to determine the type of variables. In program analysis, the final type of a variable is crucial for accuracy. The challenge has been to develop a separate component of the tool that provides more complete type resolution for every variable in the program, along with other details of that variable. This involved the development of algorithms to efficiently extract the type information and integrate that information into the computation of the slice(s). This very fast and scalable, yet slightly less accurate, slicing approach is extremely useful for a number of reasons. Developers will have a very low cost and practical means to estimate the impact of a change within minutes versus days. This is very important for planning the implementation of new features and understanding how a change is related to other parts of the system. It will also provide an inexpensive test to determine if a full deep more expensive analysis of the system is warranted. Lastly, we feel a fast slicing approach could open up new avenues of research in metrics and the mining of histories based on slicing. That is, slicing can now be conducted on very large systems and on entire version histories in very practical time frames. This opens the door to a number of experiments and empirical investigations previously too costly to undertake. |
Concurrent Face Routing for Vehicular Ad Hoc Networks03/11/2015Given the inherent potential for improvement in road safety, traffic management, and convenience, Vehicular Ad Hoc Networks (VANETs) have garnered significant research interest in recent years. However, high node mobility combined with a lack of infrastructure and stability on such a network renders routing-table based schemes nonviable. Geometric routing protocols provide an attractive solution to the routing problem on VANETs due to their scalability and statelessness. Thus, we apply Concurrent Face Routing (CFR), an asymptotically optimal geometric routing algorithm achieving improved path stretch relative to other known geometric routing algorithms. We consider possible reduction in packet overhead during transmission sessions with the addition of a Backtracking algorithm (CFR+B). Furthermore, we compare CFR+B against other popular routing algorithms such as GPSR, GOAFR+, AODV, DSR, and flooding via simulation with parameters including node density and session length. |
Applications of Abstract Algebraic Structures in Semantically Secure Encryption Extending to Network Security03/11/2015I present research on various encryption schemes and their applications in securing data. To do this, I discuss their vulnerabilities, implementations (both logically and mathematically), and briefly mention their durability against cryptanalysis attacks. I will discuss their mathematical properties, and theories that are assumed to hold within a security parameter. Namely the RSA (Rivest, Shamir, and Adelman) Encryption Algorithm and AES (Advanced Encryption Standard) Algorithm in CBC mode (Cipher Block Chaining) against chosen-plaintext attacks. Finally, I will explain why all cryptography will eventually converge to a field of quantum mechanics. |
Alternative propulsion system and fuels for aviation03/11/2015The goal of this research project is to investigate alternative propulsion technologies for the Aerospace industry. There will be a detailed analysis of three different kinds of propulsion technologies and fuels. The technologies to be examined are fuel cells, bio-fuels and synthetic gasoline. I will be using key elements of the life cycle analysis to determine the potential of these technologies for the aerospace industry. The challenges include the current requirements that the propulsion technologies must meet in order to be efficient and safe for modern day aircraft. The next key component is the current production methods that will allow the aircraft industry to implement large scale manufacturing. My research will address the issue of finding a future source a clean alternative energy for the aerospace industry. |