# Department of Computer Science

Permanent URI for this communityhttps://hdl.handle.net/2104/4770

## Browse

# Browsing Department of Computer Science by Issue Date

Now showing 1 - 20 of 100

- Results Per Page
- Sort Options

Item Evolving a disjunctive predator prey swarm using PSO : adapting swarms with swarms.(2006-02-15T15:56:04Z) Riyaz, Firasath; Maurer, Peter M.; Marks, Robert J., II (Robert Jackson), 1950-; Computer Science.; Baylor University. Dept. of Computer Science.Swarm Intelligence is the study of "the emergent collective intelligence of groups of simple agents." Recent research has explored the important applications in the field of business, telecommunications, robotics and optimization. This thesis models a simple prey swarm disjunctively, i.e. a number of disjoint survival attributes are aggregated into a single response. The swarm was initialized using heuristics. We studied the ability of this swarm to evolve its performance using a particle swarm optimization on the disjunctive rules. The rules are characterized through use of a fuzzy inference engine and the rules adapted through changing of the rule membership functions. The result was both improved performance and unexpected emergent behavior for example individual members of the prey swarm began to sacrifice their life to lengthen the life of the swarm aggregate. The disjunctive swarm is found to be robust against rule failures.Item Java bytecode compilation for high-performance, platform-independent logical inference.(2006-05-11T16:38:51Z) Arte, Ashish.; Sturgill, David Brian.; Computer Science.; Baylor University. Dept. of Computer Science.Automated reasoning systems are powerful computer programs capable of solving complex problems. They are characterized as computationally intensive having high performance requirements. Very few reasoning systems have been implemented in Java so far; its performance is regarded as an impediment to its use as a programming language for computationally intensive applications such as automated reasoning. In this thesis we discuss techniques that motivate the use of Java as the underlying platform to design a framework for high-performance logical inference. The techniques are centered around the idea of using a specialized compiler that can generate Java classes which contain Java bytecodes customized for performing reasoning efficiently. The benefit of generating bytecodes customized for logical inference is reflected in the improved performance observed from the experiments conducted.Item Design of a microwave sensor for non-invasive determination of blood-glucose concentration.(2006-05-27T14:46:59Z) Green, Eric C.; Jean, B. Randall.; Engineering.; Baylor University. Dept. of Electrical and Computer Engineering.Diabetes is a disease that afflicts millions worldwide. To control the effects of this disease, diabetics must check their blood glucose levels on a regular basis. Currently, all daily glucose monitoring techniques are invasive, requiring a sample of blood. Microwave sensors are non-destructive and non-contact measuring devices, making them ideal for the measurement of parameters in industrial processes. Current uses of microwave sensors range from measuring moisture content of corn chips to measuring concentration of a solute in water. If a microwave sensor were developed to determine blood glucose concentration, it could be the first daily-use glucose-measuring technique that is truly non-invasive. This thesis provides background on diabetes and microwave measurement. From this background, a sensor is developed and its advantages are illustrated. The thesis concludes by making suggestions for improving the sensor and recommendations on how to implement the sensor into a useful product.Item Analysis of transaction throughput in P2P environments.(2006-05-28T01:24:49Z) Chokkalingam, Arun.; Speegle, Gregory David.; Donahoo, Michael J.; Gipson, Stephen L. (Stephen Lloyd); Green, Gina C., 1962-; Computer Science.; Baylor University. Dept. of Computer Science.In recent years P2P systems have gained tremendous popularity. Support of a transaction processing facility in P2P systems would provide databases at a low cost. Extending distributed database algorithms such as 2PC and ROWA to P2P environments might not provide the best performance because the P2P systems are characterized by high site failure rates and an unpredictable network topology. The choice of algorithms in building P2PDB is difficult because of the lack of information about the performance of database algorithms in P2P environments. This thesis analyzes the performance of one such algorithm, the epidemic algorithm against the performance of traditional database algorithms in simulated P2P environments.Item PG-means: learning the number of clusters in data.(2007-03-19T14:52:48Z) Feng, Yu.; Hamerly, Gregory James, 1977-; Computer Science.; Baylor University. Dept. of Computer Science.We present a novel algorithm called PG-means in this thesis. This algorithm is able to determine the number of clusters in a classical Gaussian mixture model automatically. PG-means uses efficient statistical hypothesis tests on one-dimensional projections of the data and model to determine if the examples are well represented by the model. In so doing, we apply a statistical test to the entire model at once, not just on a per-cluster basis. We show that this method works well in difficult cases such as overlapping clusters, eccentric clusters and high dimensional clusters. PG-means also works well on non-Gaussian clusters and many true clusters. Further, the new approach provides a much more stable estimate of the number of clusters than current methods.Item "Two-way" obliviousness in general aspect-oriented modeling.(2008-10-01T16:55:12Z) Roberts, Nathan V.; Song, Eunjee.; Computer Science.; Baylor University. Dept. of Computer Science.A key problem in software development is producing systems that are maintainable even as the concerns at play evolve. Aspect-oriented programming (AOP) seeks to foster maintainability by isolating the speciﬁcations of cross-cutting concerns, allowing them to be modiﬁed in relative isolation from the rest of the system. Research in aspect-oriented modeling (AOM) aims to develop a model-layer analogue of AOP, allowing integration with accepted modeling practices. Aspects usually allow developers of the primary model to be oblivious to the aspects that modify the primary model; because of this, aspects can be closely coupled to potentially transient details of the primary model. When those details change, the aspects that depend on them may no longer have the desired eﬀect. In this thesis, we examine three approaches to AOM, and introduce a novel solution to the problem of obliviousness by extending a graph-transformational approach to AOM.Item Using GF(2) matrices in Simulation and Logic Synthesis(2009-01-23T16:31:18Z) Maurer, Peter M.GF(2) matrices are matrices of ones and zeros under modulo 2 arithmetic. Like the GF(2) polynomials used in error detection and correction, they have many potential uses in Electronic Design Automation (EDA). Non-singular matrices can be used to define new classes of symmetry called conjugate symmetries. Conjugate symmetries have been used to speed up certain kinds of functional-level simulations, and have other potential uses. GF(2) matrices can also be used to transform Boolean vector spaces and simplify Boolean functions. Although matrix transformations can be complex, simpler single-bit matrices can be used instead of general matrices. This simplifies the approach without loss of generality. Singular matrices can be used to reduce the complexity of certain functions, beyond what is normally possible with conventional simplification techniques. GF(2) matrices can also be used to define exotic symmetries called strange symmetries and collapsed symmetries. These exotic symmetries may prove useful in future EDA applications.Item Using GF2 Matrices to Simplify Boolean Logic(2009-01-23T19:40:41Z) Maurer, Peter M.Conventional logic simplification can be couched in terms of singular GF(2) matrices. The advantage to doing this is that different matrices can be used to combine terms that are separated by a Hamming distance greater than one. Although this sort of thing can be done without matrices, it is not clear what one would do after finding such terms. We show that by applying a matrix transformation to the inputs of a function, we can combine terms that are at arbitrary distances. We also show that we can further simplify functions by transforming the input vector space with a non-singular transformation.Item A Quick Algorithm for Identifying Conjugate Groups in GF(2)(2009-02-18T17:19:42Z) Maurer, Peter M.This report gives the details an algorithm for determining whether two matrix groups are conjugate to one another. Each group is designated by a pair of matrices that generate the group. The algorithm is able to determine whether the two generated groups are conjugate to one another without actually generating the groups.Item Categories for Component Level Design(2009-02-18T17:21:56Z) Maurer, Peter M.Several research problems are discussed, including communication mechanisms and the interface between components and the glue logic used to tie them together. A technique for engineering new component-level applications is presented. This technique divides an application into a set of tightly coupled parts each one of which can be placed in a specific category. Each of these categories has its own design methodology, most of which rely heavily on object oriented design. Once the features of an application have been divided into categories, they can be implemented as off- the-shelf components, new components, or as glue logic. The categorization scheme gives guidelines for the placement of each feature. The categorization scheme relies on the ability to pass pointers complex objects between components. The dangers of such practices are discussed, and suggestions are made for future research that might help mitigate these dangers.Item The Complexity of Detecting Symmetric Functions(2009-02-18T17:23:29Z) Maurer, Peter M.The characterization of the symmetries of boolean functions is important both in automatic layout synthesis, and in automatic verification of manually created layouts. It is possible to characterize the symmetries of an n-input boolean function as an arbitrary subgroup, G, of S(n), the symmetric group of order n. Given an expression e, which represents an n-input boolean function F, and a subgroup G of S(n) the problem of whether F possesses symmetry G is an NP-complete problem. The concept of an orbit can be used to characterize the various types of symmetry for a specified number of inputs. This classification can then be used, along with a few partitioning rules to completely determine the symmetries of a Boolean function. This technique requires that the truth-table of a function be completely enumerated, and thus has a running time proportional to 2^n where n is the number of inputs of the function. Some of the mathematical concepts presented to support the NP-completeness result have intriguing possibilities for circuit minimization.Item The GF2Matrices Classes: A Programming Package for Mathematical Research(2009-03-31T14:31:06Z) Maurer, Peter M.Over the past few years I have been engaged in an intense study of GF(2) matrices, especially of dimensions 2, 3, 4, and 5. The software I used for this study was mostly a bunch of ad-hoc subroutines scattered over numerous projects. This package consolidates all of this software into a system of classes. This software can be used to reproduce any of my results.Item : GF2Matrices(2009-03-31T14:52:17Z) Maurer, Peter M.This is the software described in the technical report “The GF2Matrices Classes: A Programming Package for Mathematical Research.” Over the past few years I have been engaged in an intense study of GF(2) matrices, especially of dimensions 2, 3, 4, and 5. The software I used for this study was mostly a bunch of ad-hoc subroutines scattered over numerous projects. This package consolidates all of this software into a system of classes. This software can be used to reproduce any of my results. This package is distributed without any warranty of any kind.Item The GF(2) General Linear Group for Dimensions 2, 3, 4, and 5(2009-04-15T18:43:53Z) Maurer, Peter M.This report contains some data about the General Linear Groups of GF(2) for dimensions 2, 3, 4, and 5. These groups are groups of matrices over GF(2), the integers modulo 2. The General Linear Group of order is the set of all non-singular matrices over some field, in this case, GF(2). We give the conjugacy classes of all matrices and all isomorphs of the symmetric group. The analysis for dimension 5 is incomplete. The observations we make here will be supported using short programs that use the GF2Matrices package, which is available as a Baylor Computer Science Technical report. (See http://beardocs.baylor.edu).Item Metamorphic programming(2009-04-15T18:45:38Z) Maurer, Peter M.Metamorphic programming is an effective tool for creating efficient and elegant solutions to many programming problems, at least once you get over the shock of seeing code that violates many of the accepted rules of good programming. We have used metamorphosis for many years to solve problems in the logic-level simulation of VLSI circuits. These solutions have provided some spectacular gains in performance, inspiring us to look for metamorphic solutions to other problems. We have found metamorphic solutions to many problems including string searching, sorting, and depth first search, most of which provide performance gains over conventional coding. A few of these solutions are presented here. These programs violate the rules of good programming, but with a few minor compiler enhancements, our programming techniques become clean and well structured.Item A Search Strategy Using a Hamming-Distance Oracle(2009-08-04T16:47:04Z) Maurer, Peter M.The objective of the algorithm described in this report is to optimally guess a hidden binary string based on queries to an oracle where the length of the string is known beforehand. A C++ version of the algorithm is given along with a theoretical discussion of why the algorithm works. A discussion of the worst and average-case performance is given along with some discussion of optimality.Item AN APPLICATION OF GROUP THEORY TO THE ANALYSIS OF SYMMETRIC GATES(2009-10-26T15:35:05Z) Maurer, Peter M.A method for determining the symmetries of the inputs of a logic gate either from its truth table or from facts obtained by inspection of its circuit is presented. The symmetry rule of a gate with n inputs is defined in terms of a subgroup of the symmetric group of degree n. This technique leads to an expanded and more complete definition of partial symmetry than has previously appeared. This definition of symmetry is used to show that the set of Boolean expressions that represent non-totally-symmetric functions is NP-complete. The group-theoretic concept of conjugate sets is used to identify symmetry rules that are fundamentally the same but applied to different sets of inputs. A complete analysis of all forms of symmetry for 2-input, 3-input and 4-input gates is provided. An example is given to show how this theory was applied to a problem in VLSI design verification.Item Deduction by Induction(2009-10-26T15:36:19Z) Maurer, Peter M.In this report, I offer a technique for computing power sums that is: intuitive, well-motivated, generalizable to all k, and suitable for presentation to pre-calculus students.Item Designing a Capstone Course to Simulate the Industrial Environment(2009-10-26T15:40:33Z) Speegle, Gregory David.The creation of a capstone course for an un- dergraduate computer science curriculum mirrors traditional software design. Initially, a high-level goal is created. This is refined into lower-level specifications by conducting interviews with the users. The implementation is based on these specifications. In our case, the capstone course is to simulate (as much as possible) the student experiences after graduation. Lower level specifications are created by approximately 20 hours of interviews with developers, testers and project managers in consulting, development and information technology departments. The results of these interviews are synthesized into a capItem The Functional Hardware Design Language(2009-10-28T15:45:08Z) Maurer, Peter M.The Functional Hardware Design Language is an expandable language that is designed to make it easy to specify gate-level. FHDL currently supports the specification of gates, high-level functional blocks, state machines, ROM and PLA contents, and parameterized functional blocks. The language is easily extendable.