Software testing is an important and time consuming part of the software develop- ment cycle. While automated testing frameworks do help in reducing the amount of programmer time that testing requires, the onus is still upon the programmer to pro- vide such a framework with the inputs upon which the software must be tested. This requires static analysis of the source code, which is more eective when performed as a peer review exercise and is highly dependent on the skills of the programmers performing the analysis. It also demands the allocation of precious time for those very highly skilled programmers. An algorithm that automatically generates inputs to satisfy test coverage criteria for the software being tested would therefore be quite valuable, as it would imply that the programmer no longer needs to analyze code to generate the relevant test cases. This thesis explores a hybrid evolutionary strategy with an evolutionary algorithm to discover such test cases , in an improvement over previous methods which overly focus their search without maintaining the diversity required to cover the entire search space efficiently.
Using Python's NLTK module and WordNet/PyWordNet to accurately describe an event recorded by multiple text documents
Artificial Immune Systems (AISs) are intelligent methodologies inspired by the immune system towards real world problem solving. They are systems that lend themselves easily to meta-heuristic algorithms to solve problems more efficiently in high volume and high dimensional solution spaces. Inspired by the mechanisms that control the human immune system, AISs perform especially well in pattern recognition tasks - an ability that is used in solving multiple different types of problems. With the use of techniques from the other domains of meta heuristic programming, such as Genetic Algorithms and probabilistic/heuristic searching, the range of problems to which AISs can be effectively applied is greatly increased.
Suppose you are attending a conference and have driven to the venue of this conference in your car. Suppose also, that all the other attendees have also driven to the conference venue in their cars (it might be worthwhile to note that this problem can be trivially extended to fit simple solutions such as carpools). At the end of the conference, everybody decides to leave the venue to go home. They have all printed driving directions for the fastest route to get back home. Note that people living close to each other will share the majority of their routes (such as highways), with minor differences only towards the end. There is however a problem there was a natural calamity during the conference, which caused the major roads to start sinking (note that this affects only the major roads). As a result, each road can only support a certain number of cars before it becomes unusable. Now, the new objective is to get everybody home, safely in minimal time.
Creating mobile applications for the Office of the Registrar at the University of Toronto at Mississauga
Evolutionary Algorithms require a lot of programming to find solutions to even very simple problems. This framework is intended to be very modular and easy to use, so that an evolutionary algorithm may be created very quickly, making minimal modifications to the framework. Further, this framework implements Design by Contract, which presents itself as amuch more powerful debugging tool to the programmer.
Writing a framework for automated testing for the premiered product line of a company working with Digital Cinema Solutions