Algorithm Development
If your application requires design and implementation of algorithms to solve problems, we have what it takes to get it done. Our approach to algorithm development:
- Understand the problem to be solved
- If our mathematicians are not aware of an immediate approach, we would perform literature research to identify possible solutions
- Model the problem and the solution using a combination of pen-and-paper and modeling tools such as Matlab/Octave
- Implement the solution rapidly using open source libraries or develop it from scratch
- Test the algorithm
While developing algorithms, we pay close attention to design constraints such as run time windows, accuracy requirements, data requirements and availability, etc. We solve problems using a wide array of techniques, and use the right tool for the right job. Algorithms which we would consider to solve your problems include, but are not limited to:
- Techniques to solve Combinatorial optimization problems
- Graph based algorithms
- Mathematical modeling using Ordinary or Stochastic Differential Equations
- Clustering techniques
- Monte Carlo algorithms
- Genetic Algorithms
- Simulated Annealing
- Neural Networks