Domain fronting is a technique for internet connection obfuscation and also internet censorship c... more Domain fronting is a technique for internet connection obfuscation and also internet censorship circumvention that uses different domain names in different communication layers of an HTTPS connection to discreetly connect to a different target domain than is discernible to third parties monitoring the traffic. Domain fronting involves using different domain names in the DNS/SNI headers of the visible HTTPS packet and the Host header of the encrypted HTTP packet. If both domains are served from the same Content Delivery Network (CDN), then the CDN may proxy the request to the address specified in the HTTP header after unwrapping the TLS encrypted HTTPS payload. As a result, connection monitoring outside the CDN server network will not be able to ascertain where the connection packets are ultimately going to or coming from.
Software testing is a critical and labor-intensive activity in software engineering. Much researc... more 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 structurally complete set of test cases for the Triangle Classification algorithm. DSGA is a Niche Genetic Algorithm (NGA) that uses a short-term memory structure to store optima. Each individual of the NGA represents the inputs for a test case. The fitness function encourages the algorithm to locate test cases that cover large areas of the structure of the program. A shared fitness encourages the NGA to locate other areas of the structure. DSGA is a novel approach to structurally complete test case generation.
The area of relational database architecture and its implementation in various domains is a very ... more 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 Character Large Objects in client-server and web applications can cause performance issues in databases. These performance issues can be addressed by tuning physical and logical components of the database; however, the effect of these tuning measures is temporary. Database vendors suggest implementing a temporary workaround to deal with these issues, which may include usage of third party tools. The purpose of this survey is to provide a proof that there are significant performance issues in database transactions involving Large Objects. Part of this survey also includes a study of five current large database models and their unique methodologies in storing and accessing large volumes of data.
Predicting how a protein folds based solely on its
amino acid sequence is an ongoing challenge fo... more 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, a larger variety of benchmarks might be needed to evade this problem and a measure of complexity established to determine the validity of all benchmarks. We propose here the Ouroboros Complexity Measurement for the de novo folding of proteins. This measurement is easy to compute (not an NP hard problem) and allows the comparing of protein complexity.
The problem of multimodal functional optimization has been addressed by much research producing m... more 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 locating them. Problems that have arbitrarily close optima create a greater problem. This paper presents a new Niche Genetic Algorithm framework called Dynamic-radius Species-conserving Genetic Algorithm. This new framework extends existing Genetic Algorithm research.
This new framework enhances an existing Niche Genetic Algorithm in two ways. As the name implies the radius of the algorithm varies during execution. A uniform radius can cause issues if it is not set correctly during initialization. A dynamic radius compensates for these issues. The framework does not attempt to locate all of the optima in a single pass. It attempts to find some optima and then uses a tabu list to exclude those areas of the domain for future iterations. To exclude these previously located optima, the framework uses a fitness sharing approach and a seed exclusion approach. This new framework addresses many areas of difficulty in current multimodal functional optimization research.
This research used the experimental research methodology. A series of classic benchmark functional optimization problems were used to compare this framework to other algorithms. These other algorithms represented classic and current Niche Genetic Algorithms.
Results from this research show that this new framework does very well in locating optima in a variety of benchmark functions. In functions that have arbitrarily close optima, the framework outperforms other algorithms. Compared to other Niche Genetic Algorithms the framework does equally well in locating optima that are not arbitrarily close. Results indicate that varying the radius during execution and the use of a tabu list assists in solving functional optimization problems for continuous functions that have arbitrarily close optima.
Military manned and unmanned aerial vehicles (UAVs) may perform missions in contested airspace, w... more 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 detection. The problem was formulated as one of constrained optimization in three dimensions; advantageous solutions were identified using Algorithm A*. Topographical features were exploited by the algorithm to avoid radar detection. The model included provisions for preferred altitude ranges, adjustable aircraft climb- and descent- rate envelopes, movement costs based on fractional detection probability, radar horizon masking, and simulated radar cross-section lookup tables.
This research uses a Niche Genetic Algorithm (NGA) called Dynamic-radius Species-conserving Genet... more 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 list and radial variations. DSGA also uses a shared fitness algorithm to investigate different areas of the domain. This research applies the DSGA algorithm to training data which produces a set of rules. The rules are applied to a set of testing data to obtain results. The DSGA algorithm did very well in predicting stock movement.
This research shows a cost estimation bias toward the Agile development method. Much literature e... more 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 that it would take to complete a software development task using both Agile and Waterfall methods. Results show that there is significant evidence to believe that software developers have a bias toward Agile. The results show that developers underestimate software tasks when it is known that the development method will be Agile.
This is a survey paper of the user of Genetic Algorithms in Structural Testing. Structural testin... more 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 different categories of structural testing.
This brief paper outlines research in software engineering that matches characteristics of GroupT... more 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 cohesion. But there are many benefits of group cohesion, so the elimination of group cohesion is not a solution. Much research has been done to determine how to prevent GroupThink without reducing group cohesion. Some solutions to the problem of GroupThink will also be presented. A number of these techniques are included in software engineering best practices, while others should be future research.
Development teams and programmers must retain critical
information about their work during work i... more 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 tractable quantitative and cognitive model of learning and memory retention, this study establishes calculations designed to maximize scheduling payoff and optimize developer efficiency and effectiveness.
In this paper we discuss software maintenance tools. Maintenance tools may include everything fro... more 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 more productive. This paper discusses that the standard Function Point technique has allowed maintainers to increase significantly in software maintenance practices. However, there are situations where estimation methods may be more compatible to the standard rules of the Function Point (FP). First situation may be when enhancement or development project is in early stages, which is not possible to perform FP count. Another situation may be when the necessary documentation or the required time and resources are not available to perform a standard FP count. Thus, the FP estimation methods may be very decisive for these situations. In this paper, we present a review of several estimation methods with their characteristics.
Domain fronting is a technique for internet connection obfuscation and also internet censorship c... more Domain fronting is a technique for internet connection obfuscation and also internet censorship circumvention that uses different domain names in different communication layers of an HTTPS connection to discreetly connect to a different target domain than is discernible to third parties monitoring the traffic. Domain fronting involves using different domain names in the DNS/SNI headers of the visible HTTPS packet and the Host header of the encrypted HTTP packet. If both domains are served from the same Content Delivery Network (CDN), then the CDN may proxy the request to the address specified in the HTTP header after unwrapping the TLS encrypted HTTPS payload. As a result, connection monitoring outside the CDN server network will not be able to ascertain where the connection packets are ultimately going to or coming from.
Software testing is a critical and labor-intensive activity in software engineering. Much researc... more 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 structurally complete set of test cases for the Triangle Classification algorithm. DSGA is a Niche Genetic Algorithm (NGA) that uses a short-term memory structure to store optima. Each individual of the NGA represents the inputs for a test case. The fitness function encourages the algorithm to locate test cases that cover large areas of the structure of the program. A shared fitness encourages the NGA to locate other areas of the structure. DSGA is a novel approach to structurally complete test case generation.
The area of relational database architecture and its implementation in various domains is a very ... more 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 Character Large Objects in client-server and web applications can cause performance issues in databases. These performance issues can be addressed by tuning physical and logical components of the database; however, the effect of these tuning measures is temporary. Database vendors suggest implementing a temporary workaround to deal with these issues, which may include usage of third party tools. The purpose of this survey is to provide a proof that there are significant performance issues in database transactions involving Large Objects. Part of this survey also includes a study of five current large database models and their unique methodologies in storing and accessing large volumes of data.
Predicting how a protein folds based solely on its
amino acid sequence is an ongoing challenge fo... more 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, a larger variety of benchmarks might be needed to evade this problem and a measure of complexity established to determine the validity of all benchmarks. We propose here the Ouroboros Complexity Measurement for the de novo folding of proteins. This measurement is easy to compute (not an NP hard problem) and allows the comparing of protein complexity.
The problem of multimodal functional optimization has been addressed by much research producing m... more 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 locating them. Problems that have arbitrarily close optima create a greater problem. This paper presents a new Niche Genetic Algorithm framework called Dynamic-radius Species-conserving Genetic Algorithm. This new framework extends existing Genetic Algorithm research.
This new framework enhances an existing Niche Genetic Algorithm in two ways. As the name implies the radius of the algorithm varies during execution. A uniform radius can cause issues if it is not set correctly during initialization. A dynamic radius compensates for these issues. The framework does not attempt to locate all of the optima in a single pass. It attempts to find some optima and then uses a tabu list to exclude those areas of the domain for future iterations. To exclude these previously located optima, the framework uses a fitness sharing approach and a seed exclusion approach. This new framework addresses many areas of difficulty in current multimodal functional optimization research.
This research used the experimental research methodology. A series of classic benchmark functional optimization problems were used to compare this framework to other algorithms. These other algorithms represented classic and current Niche Genetic Algorithms.
Results from this research show that this new framework does very well in locating optima in a variety of benchmark functions. In functions that have arbitrarily close optima, the framework outperforms other algorithms. Compared to other Niche Genetic Algorithms the framework does equally well in locating optima that are not arbitrarily close. Results indicate that varying the radius during execution and the use of a tabu list assists in solving functional optimization problems for continuous functions that have arbitrarily close optima.
Military manned and unmanned aerial vehicles (UAVs) may perform missions in contested airspace, w... more 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 detection. The problem was formulated as one of constrained optimization in three dimensions; advantageous solutions were identified using Algorithm A*. Topographical features were exploited by the algorithm to avoid radar detection. The model included provisions for preferred altitude ranges, adjustable aircraft climb- and descent- rate envelopes, movement costs based on fractional detection probability, radar horizon masking, and simulated radar cross-section lookup tables.
This research uses a Niche Genetic Algorithm (NGA) called Dynamic-radius Species-conserving Genet... more 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 list and radial variations. DSGA also uses a shared fitness algorithm to investigate different areas of the domain. This research applies the DSGA algorithm to training data which produces a set of rules. The rules are applied to a set of testing data to obtain results. The DSGA algorithm did very well in predicting stock movement.
This research shows a cost estimation bias toward the Agile development method. Much literature e... more 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 that it would take to complete a software development task using both Agile and Waterfall methods. Results show that there is significant evidence to believe that software developers have a bias toward Agile. The results show that developers underestimate software tasks when it is known that the development method will be Agile.
This is a survey paper of the user of Genetic Algorithms in Structural Testing. Structural testin... more 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 different categories of structural testing.
This brief paper outlines research in software engineering that matches characteristics of GroupT... more 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 cohesion. But there are many benefits of group cohesion, so the elimination of group cohesion is not a solution. Much research has been done to determine how to prevent GroupThink without reducing group cohesion. Some solutions to the problem of GroupThink will also be presented. A number of these techniques are included in software engineering best practices, while others should be future research.
Development teams and programmers must retain critical
information about their work during work i... more 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 tractable quantitative and cognitive model of learning and memory retention, this study establishes calculations designed to maximize scheduling payoff and optimize developer efficiency and effectiveness.
In this paper we discuss software maintenance tools. Maintenance tools may include everything fro... more 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 more productive. This paper discusses that the standard Function Point technique has allowed maintainers to increase significantly in software maintenance practices. However, there are situations where estimation methods may be more compatible to the standard rules of the Function Point (FP). First situation may be when enhancement or development project is in early stages, which is not possible to perform FP count. Another situation may be when the necessary documentation or the required time and resources are not available to perform a standard FP count. Thus, the FP estimation methods may be very decisive for these situations. In this paper, we present a review of several estimation methods with their characteristics.
Uploads
Papers by Michael Brown
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, a larger variety of benchmarks might be needed to evade this problem and a measure of complexity established to determine the validity of all benchmarks. We propose here the Ouroboros Complexity Measurement for the de novo folding of proteins. This measurement is easy to compute (not an NP hard problem) and allows the comparing of protein complexity.
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 locating them. Problems that have arbitrarily close optima create a greater problem. This paper presents a new Niche Genetic Algorithm framework called Dynamic-radius
Species-conserving Genetic Algorithm. This new framework extends existing Genetic Algorithm research.
This new framework enhances an existing Niche Genetic Algorithm in two ways. As the name implies the radius of the algorithm varies during execution. A uniform radius can
cause issues if it is not set correctly during initialization. A dynamic radius compensates for these issues. The framework does not attempt to locate all of the optima in a single
pass. It attempts to find some optima and then uses a tabu list to exclude those areas of the domain for future iterations. To exclude these previously located optima, the framework uses a fitness sharing approach and a seed exclusion approach. This new framework addresses many areas of difficulty in current multimodal functional optimization research.
This research used the experimental research methodology. A series of classic benchmark functional optimization problems were used to compare this framework to other algorithms. These other algorithms represented classic and current Niche Genetic Algorithms.
Results from this research show that this new framework does very well in locating optima in a variety of benchmark functions. In functions that have arbitrarily close optima, the framework outperforms other algorithms. Compared to other Niche Genetic Algorithms the framework does equally well in locating optima that are not arbitrarily close. Results indicate that varying the radius during execution and the use of a tabu list
assists in solving functional optimization problems for continuous functions that have arbitrarily close optima.
variations. DSGA also uses a shared fitness algorithm to investigate different areas of the domain. This research applies the DSGA algorithm to training data which produces a set of rules. The rules are applied to a set of testing data to obtain results. The DSGA algorithm did very well in predicting stock
movement.
rates and other quality issues in software engineering. The root cause of GroupThink is group cohesion. But there are many benefits of group cohesion, so the elimination of group cohesion is not a solution. Much research has been done to determine how to prevent GroupThink without reducing group cohesion. Some solutions to the problem of GroupThink will also be presented. A number of these techniques are included in software engineering best practices, while others should be future research.
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 tractable
quantitative and cognitive model of learning and memory
retention, this study establishes calculations designed to
maximize scheduling payoff and optimize developer efficiency
and effectiveness.
methods for estimating software size, so the maintainers may become more productive. This paper discusses that the standard Function Point technique has allowed maintainers to increase significantly in software maintenance practices. However, there are situations where estimation methods may be more compatible to the standard rules of the Function Point (FP). First situation may be when enhancement or development project is in early stages, which is not possible to perform FP count. Another situation may be when the necessary documentation or the required time and resources are not
available to perform a standard FP count. Thus, the FP estimation methods may be very decisive for these situations. In this paper, we present a review of several estimation methods with their characteristics.
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, a larger variety of benchmarks might be needed to evade this problem and a measure of complexity established to determine the validity of all benchmarks. We propose here the Ouroboros Complexity Measurement for the de novo folding of proteins. This measurement is easy to compute (not an NP hard problem) and allows the comparing of protein complexity.
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 locating them. Problems that have arbitrarily close optima create a greater problem. This paper presents a new Niche Genetic Algorithm framework called Dynamic-radius
Species-conserving Genetic Algorithm. This new framework extends existing Genetic Algorithm research.
This new framework enhances an existing Niche Genetic Algorithm in two ways. As the name implies the radius of the algorithm varies during execution. A uniform radius can
cause issues if it is not set correctly during initialization. A dynamic radius compensates for these issues. The framework does not attempt to locate all of the optima in a single
pass. It attempts to find some optima and then uses a tabu list to exclude those areas of the domain for future iterations. To exclude these previously located optima, the framework uses a fitness sharing approach and a seed exclusion approach. This new framework addresses many areas of difficulty in current multimodal functional optimization research.
This research used the experimental research methodology. A series of classic benchmark functional optimization problems were used to compare this framework to other algorithms. These other algorithms represented classic and current Niche Genetic Algorithms.
Results from this research show that this new framework does very well in locating optima in a variety of benchmark functions. In functions that have arbitrarily close optima, the framework outperforms other algorithms. Compared to other Niche Genetic Algorithms the framework does equally well in locating optima that are not arbitrarily close. Results indicate that varying the radius during execution and the use of a tabu list
assists in solving functional optimization problems for continuous functions that have arbitrarily close optima.
variations. DSGA also uses a shared fitness algorithm to investigate different areas of the domain. This research applies the DSGA algorithm to training data which produces a set of rules. The rules are applied to a set of testing data to obtain results. The DSGA algorithm did very well in predicting stock
movement.
rates and other quality issues in software engineering. The root cause of GroupThink is group cohesion. But there are many benefits of group cohesion, so the elimination of group cohesion is not a solution. Much research has been done to determine how to prevent GroupThink without reducing group cohesion. Some solutions to the problem of GroupThink will also be presented. A number of these techniques are included in software engineering best practices, while others should be future research.
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 tractable
quantitative and cognitive model of learning and memory
retention, this study establishes calculations designed to
maximize scheduling payoff and optimize developer efficiency
and effectiveness.
methods for estimating software size, so the maintainers may become more productive. This paper discusses that the standard Function Point technique has allowed maintainers to increase significantly in software maintenance practices. However, there are situations where estimation methods may be more compatible to the standard rules of the Function Point (FP). First situation may be when enhancement or development project is in early stages, which is not possible to perform FP count. Another situation may be when the necessary documentation or the required time and resources are not
available to perform a standard FP count. Thus, the FP estimation methods may be very decisive for these situations. In this paper, we present a review of several estimation methods with their characteristics.