
Michael Scott BrownUniversity of Maryland, Baltimore County | UMBC · Department of Information Systems
Michael Scott Brown
Doctor of Philosophy in Computer Science
About
38
Publications
16,013
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
73
Citations
Citations since 2017
Introduction
Additional affiliations
Education
September 2004 - December 2010
January 1994 - August 1997
September 1988 - December 1992
Publications
Publications (38)
This research uses Principal Component Analysis (PCA) in conjunction with a Neural Network to increase the accuracy of predicting student test scores. Much research has been conducted attempting to predict student test scores using a standard, well-known dataset. The dataset includes student demographic and educational data and test scores for Math...
https://most.oercommons.org/courses/requirements-engineering-a-modern-approach-to-the-requirements-engineering-body-of-knowledge
This research was designed to investigate the use of unmanned aerial vehicles (UAV) in the agricultural industry. The application of pesticides on farmland by traditional methods such as spraying has several disadvantages including dangers of exposure for farm personnel, uneven application results and a greater rate of spray contaminating regions b...
The Spectral Workbench is an open-source, community driven software suite to obtain and disseminate spectral data. It consists of a client application that collects spectral readings and a server application that is an online database of spectral data. It is difficult to detect software defects in the Spectral Workbench application. A static analys...
Management of air transportation of strategic goods is a very complex task with many challenges. This paper describes the method used in documenting the requirements for an IT system intended to support management of air transportation of military and dual-use goods. The work was completed in conjunction with a private logistics company. The projec...
This research investigates the effect that news of a cryptocurrency theft has on the price of cryptocurrencies. This could include thefts from large exchanges, direct thefts to the technology or thefts of large holders of cryptocurrency. Conventual wisdom would suggest that the price of cryptocurrencies would decrease because the news of theft high...
Niche Genetic Algorithms (NGA) are a special category of Genetic Algorithms (GA) that solve problems with multiple optima. These algorithms preserve genetic diversity and prevent the GA from converging on a single optima. Many NGAs suffer from the Niche Radius Problem (NRP), which is the problem of correctly setting a radius parameter for optimal r...
This research uses a popular investment technique called Moving Averages on crypto currencies. The 40 largest crypto currencies measured by market capitalization were evaluated. The research compares the returns of the crypto currencies using 5 of the commonly used parameter settings for the Moving Averages technique and compares these results to a...
University of Maryland University College has created a practice to build online learning material that is completely customized to the course. The advantage of the practice reduces the time and cost to build such material. The practice outlines how to develop material in small atomic parts, called Learning Nodes. Often these parts are reusable and...
Described herein is a general-purpose software engineering architecture for autonomous, computer controlled opponent implementation in modern maneuver warfare simulation and training. The implementation has been developed, refined, and tested in the user crucible for several years. The approach represents a hybrid application of various well-known...
Software testing is a critical and labor-intensive activity in software engineering. Much research has been done to help automate test case generation. This research proposes a new approach to structural test case generation. It uses a specialized genetic algorithm called Dynamic-radius Species-conserving Genetic Algorithm (DSGA) to find a structur...
University of Maryland University College (UMUC) has created an Introduction to Programming course which teaches multiple programming languages. This is needed because many majors at UMUC use different programming languages specialized for their fields. Students across many majors enroll in the same course, however the course is dynamically customi...
In this paper we introduce and describe a novel approach to adaptive image steganography which is combined with One-Time Pad encryption, and demonstrate the software which implements this methodology. Testing using the state-of-the-art steganalysis software tool StegExpose concludes the image hiding is reliably secure and undetectable using reasona...
Predicting how a protein folds based solely on its amino acid sequence is an ongoing challenge for the fields of Bioinformatics and Computer Science. Previous attempts to solve this problem have relied on algorithms and a specific set of benchmark proteins. However, there is currently no method for determining if the set of benchmark proteins share...
Deciding what defect fixes and enhancements go into a maintenance release can be a difficult and complex task. This paper will discuss a technique that applies the use of a genetic algorithm (GA) during the software maintenance phase of the system development life cycle. The application of GA use in optimizing maintenance release packages will be d...
In this paper we discuss software maintenance tools. Maintenance tools may include everything from large-scale integrated CASE tools to simple one-function commands. The objective of this paper is to learn more about software maintainers’ needs for software tools, and in particular methods for estimating software size, so the maintainers may become...
Development teams and programmers must retain critical information about their work during work intervals and gaps in order to improve future performance when work resumes. Despite time lapses, project managers want to maximize coding efficiency and effectiveness. By developing a mathematically justified, practically useful, and computationally tra...
Development teams and programmers must retain critical information about their work during a work intervals and gaps in order to improve future performance when work resumes. Despite time lapses, project managers want to maximize coding effectiveness and efficiency. By developing a mathematically justified, practically useful, and computationally t...
Here we demonstrate that Niche Genetic Algorithms (NGA) are better at computing de novo protein folding than traditional Genetic Algorithms (GA). Previous research has shown that proteins can fold into their active forms in a limited number of ways; however, predicting how a set of amino acids will fold starting from the primary structure is still...
Niche Genetic Algorithms (NGA) are a specialized type of Genetic Algorithm (GA) that attempts to locate multiple optima. Many NGAs use a radius parameter. The success of the algorithm is dependent upon the selection of a “good” radius, which is normally half of the distance between optima. Since the purpose of a GA is to locate the optima, this is...
Posted titled ”Replication of the Niche Radius Problem” presented at FLAIRS-27
This brief paper outlines research in software engineering that matches characteristics of GroupThink. GroupThink is an issue that occurs in groups that leads to incorrect decision-making. GroupThink could be a cause of software defects, project failure rates and other quality issues in software engineering. The root cause of GroupThink is group co...
This is a survey paper of the user of Genetic Algorithms in Structural Testing. Structural testing like statement coverage or branch coverage can be automated through a variety of algorithms. Genetic Algorithms can be very useful in discovering test cases and test data to implement structural testing. A variety of algorithms are described in differ...
This research shows a cost estimation bias toward the Agile development method. Much literature exists showing the true number of projects that exhibit cost savings from using the Agile method. Most studies show about 50% of projects see a cost savings when switching to Agile. This study asked software developers to estimate the number of hours tha...
This research uses a Niche Genetic Algorithm (NGA) called Dynamic-radius Species-conserving Genetic Algorithm (DSGA) to select stocks to purchase from the Dow Jones Index. DSGA uses a set of training data to produce a set of rules. These rules are then used to predict stock prices. DSGA is an NGA that uses a clustering algorithm enhanced by a tabu...
1. Title
Weekly stock data for Dow Jones Index
2. Source:
This dataset comprises data reported by the major stock exchanges.
This dataset is also in Berkley's UCI dataset database.
3. Past Usage
This dataset was first used in:
Brown, M. S., Pelosi, M. & Dirska, H. (2013). Dynamic-radius Species-conserving Genetic Algorithm for
the Financial For...
The area of relational database architecture and its implementation in various domains is a very broad field of study. There are numerous implementations of large and complex objects in databases of domains such as multimedia, healthcare, scientific research, historical archives of libraries, museums, etc. Involvement of Binary Large Objects and Ch...
Military manned and unmanned aerial vehicles (UAVs) may perform missions in contested airspace, where survival of the vehicle requires avoidance of hostile radar coverage. This research sought to determine optimum flight-path routes that make maximum utilization of UAV terrain-masking opportunities and flight range capability to avoid radar detecti...
The problem of multimodal functional optimization has been addressed by much research producing many different search techniques. Niche Genetic Algorithms is one area that has attempted to solve this problem. Many Niche Genetic Algorithms use some type of radius. When multiple optima occur within the radius, these algorithms have a difficult time l...
Questions
Questions (6)
I don't know if anyone is a SKlearn expert. The documentation is kind of on the lite side. I am working with MLPRegressor. The documentation says:
hidden_layer_sizes: tuple, length = n_layers - 2, default=(100,)
The ith element represents the number of neurons in the ith hidden layer.
From what I have deduces, in the hidden layer size you put the number of neurons for that layer.
So, MLPRegressor(hidden_layer_sizes=(3)) is 1 hidden layer that has 3 neurons. MLPRegressor(hidden_layer_sizes=(3, 4)) has 2 hidden layers, the first with 3 and the second with 4 neurons. MLPRegressor(hidden_layer_sizes=(3,4,5)) has 3 hidden layers with 3, 4 adn 5 neurons.
Is that correct?
I recently started the Journal of Software Engineering Practice (www.jsep.info). It is a low cost, open access online journal that focuses on the practical side of software engineering. We accept all types of papers including research, replication and survey papers.
Consider submitting a paper.
I am trying to determine the best method for a temporal regression model. For a give time period there are two outcomes. I want a model that gives the probability of one of the two outcomes based upon a dataset. One of the independent variables in the dataset if time. At time 0 we should be 100% sure which of the two outcomes occurred.
Here is an example. Let's say that I have some stock data at different times throughout the day. At the closing bell the stock can either be UP or DOWN on the day. Based upon data throughout the day I want to know the probability that the stock will be UP at the closing bell. Of course, at the closing bell (time = 0), I am 100% sure if the stock is up or down.
Some colleagues and I are starting a open access online software engineering journal called the Journal of Software Engineering Practice (JSEP) www.jsep.info. What is a good way to get the word out about the journal? Many of the research search engines seem to require a few issues published first. But you have to get people to know about the journal before you can get the first few issues.
I am working on building a course for entry-level students in Object-Oriented Programming. The topics covered are classes, objects, attributes, methods, inheritance, encapsulation, polymorphism, aggregation, composition and exception handling. I have seen a number of papers and books that explain these concepts. But I am looking for a method to design OOP programs. They have to have pretty discrete steps for students to follow. Does anyone know of any good literature that describes a methodology for designing an OOP application using these basic concepts?
Genetic algorithms are very good for searching, but there are a number of parameters that need to be set - population size, # of generations, mutation rate, etc. If the parameters are not set correctly, you many not get a very good answer. What research is there on how to set parameters for genetic algorithms?
Projects
Project (1)
Predicting how a protein folds based solely on its amino acid sequence is an ongoing challenge for the fields of Bioinformatics and Computer Science. Previous attempts to solve this problem have relied on algorithms and a specific set of benchmark proteins. However, there is currently no method for determining if the set of benchmark proteins share a similar level of complexity with proteins of similar size. As a result, we are developing both a larger variety of benchmarks and
a measure of complexity to determine the validity of all benchmarks.