Ashwin Panchapakesan

PhD Artificial Intelligence

Work And Research Experience

Data Scientist

SecDev Group

Jul 2020 — Present

  • Automated and deployed the core OSINT data collection platform
    • Set up data collection methodology and tooling with APIs, web scraping and device emulation
    • Horizontally scaled components using multiprocessing and multiple nodes to improve execution time
    • Redesigned PostGreSQL schemas for improved extensibility and lookup performance
  • Built a predictive dashboard to contextualize data analytics
    • Designed ontology and knowledge base to relate relevant data in PostGreSQL
    • Iteratively designed and developed analyst-facing dashboard built with
  • Built COVID-19 vaccination rollout simulator
    • Simulated resident vaccination timelines based on city-scale policy decisions using MapBox, Streamlit
    • Built relationships with external experts to improve simulation integrity and veracity
  • Setup internal CI/CD and log aggregation practice
  • Deployed and administered internal and external wiki

Data Scientist


Jul 2019 — Jun 2020

  • Designed and optimized machine learning algorithms to maximize advertising impact
    • Pulled data from distributed data store using Hive
    • Designed and tested machine learning models
  • Built relationships between my team and the Engineering team to facilitate smoother deployment
  • Reduced development time by augmenting the team’s tooling

Part-time Professor

University of Ottawa and others

Sep 2017 — Apr 2018

  • Students successfully learned to achieve course objectives by writing Python code
  • Taught Introduction to Computing I (Python) to first year students
    • Created course content and delivered lectures
    • Managed Teaching Assistants

Student Research Intern

Center for Operational Research and Analytics, Defence Research and Development Canada

May 2014 — Sep 2014

Automated, tested, and deployed optimizations with multiple objectives

  • Used evolutionary algorithms to optimize mission parameters
  • Used MATLAB and C to run simulations and optimize (on multiple metrics) device usage schedules
  • Evaluated and optimized evolutionary optimization algorithms (Non-dominated Sorting Genetic Algorithm, etc)

Teaching Assistant

University of Ottawa, Department of Computer Science

Sep 2013 — Aug 2017

  • Held TA and Corrector positions for various courses
  • Conducted tutorials, held office hours, and evaluated assignments
  • Taught course lecture in professor's absence

Course topics included:

  • Python
  • Engineering Ethics
  • Algorithm design

Software Development Engineering Intern, Seattle, WA

May 2012 — Aug 2012

  • Used Genetic Algorithms to improve accuracy of display advertising prediction by 36x
  • Co-inventor on a patent application relating to modeling attribution of advertisement features


Ph.D. Computer Science

University of Ottawa, Ottawa, Ontario

Sep 2013 — Aug 2019

Specialization: Artificial Intelligence, Fault-tolerant and Reconfigurable Systems, Data Fusion

Thesis: Optimizing Commercial Maritime Port Operations through High Level Information Fusion

  • Dynamic algorithm selection and deployment, data fusion
  • Multi-objective Evolutionary Algorithms, Artificial Life, Neural Networks, Fuzzy Systems, etc.
  • Concept Learning Systems and Machine Learning; benchmarking and comparison metrics

M.Sc. Computer Science

University of Ottawa, Ottawa, Ontario

Sep 2011 — Jul 2013

Specialization: Artificial Intelligence – evolutionary algorithms

Thesis: A Hybrid Genetic Algorithm and Evolutionary Strategy to Automatically Generate Test Data for Dynamic, White-Box Testing

  • Preliminary results published in IEEE CEC, 2013
  • Combinatorial and Evolutionary algorithms (Simulated Annealing, Genetic Algorithms, etc.)
  • Formal software design and proof, testing methodology (self-specifying and error checking code)

Hon. B.Sc. Computer Science

University of Toronto Mississauga, Mississauga, Ontario

Sep 2006 — Jul 2011

Majors: Computer Science, Logic

Minor: Mathematics

  • Artificial Intelligence – learning, planning, exploration, adversarial game logic, neural networks
  • Strong foundation in predicate logic, semantics analysis and related theory
  • Data structures, algorithm design and optimization


Optimising Commercial Port Operations Through High-level Information Fusion

Oct 2021

In order to remain profitable, commercial maritime ports must maintain high throughput of inbound vessels. The gantry cranes that load and unload the vessels are the primary point of interaction between a vessel and the port, which cause a critical bottleneck in the process flow. Errors in this segment of the process cause cascading delays which ultimately cause vessel service backlogs, extending to logistical delays in moving shipping containers across land and rail as well. This is to the detriment of the ports, which lose popularity among shipping lines and may even be fined for causing sub-optimal delays. This work expands on prior work in using a multi-objective genetic algorithm to optimise the parameters of a fuzzy system which controls port-side resource deployment. In contrast to existing solutions, this resource deployer is able to function online and adapt to real-world faults while still maintaining superior performance as compared to industry practice. Further, proposals to expand or reduce the port-side infrastructure are computed.

  • Publication
  • Manuscript
      title={Optimising commercial port operations through high-level information fusion},
      author={Panchapakesan, Ashwin and Abielmona, Rami and Petriu, Emil},
      journal={International Journal of Logistics Systems and Management},
      publisher={Inderscience Publishers (IEL)}

Optimizing Maritime Vessel Service Time with Adaptive Quay Crane Deployment Through Level 4 Hard-Soft Information Fusion

Jul 2019

Commercial maritime ports must maintain high service throughput in order to remain profitable. One of the most critical operations in a commercial maritime port is the loading and unloading of shipping containers on a vessel (i.e. servicing a vessel) and storing them in the storage yard. A delay in this process would cause cascading delays in servicing further vessels, causing delays in moving cargo across land, rail, and sea. Furthermore, the port itself may incur fines for allowing such delays in their operational procedure. This work highlights a Fuzzy System optimized by a Genetic Algorithm to adaptively control the deployment of quay cranes (and their operators and all other supporting equipment and personnel) to optimize the time required to service a vessel, while simultaneously reducing the operational costs of doing so.

  • Publication
  • Manuscript
      title={Optimizing Maritime Vessel Service Time with Adaptive Quay Crane Deployment Through Level 4 Hard-Soft Information Fusion},
      author={Panchapakesan, Ashwin and Abielmona, Rami and Petriu, Emil},
      booktitle={2019 22th International Conference on Information Fusion (FUSION)},

Prediction of Container Damage Insurance Claims for Optimized Maritime Port Operations

May 2018

A company operating in a commercial maritime port often experiences clients filing insurance claims on damaged shipping containers. In this work, multiple classifiers have been trained on synthesized data, to predict such insurance claims. The results show that Random Forests outperform other classifiers on typical machine learning metrics. Further, insights into the importance of various features in this prediction are discussed, and their deviation from expert opinions. This information facilitates selective information collation to predict container claims, and to rank data sources by relevance. To our knowledge, this is the first publication to investigate the factors associated with container damage and claims, as opposed to ship damage or other related problems.

  • Publication
  • Manuscript
      title={Prediction of Container Damage Insurance Claims for Optimized Maritime Port Operations},
      author={Panchapakesan, Ashwin and Abielmona, Rami and Falcon, Rafael and Petriu, Emil},
      booktitle={Canadian Conference on Artificial Intelligence},

A Python-Based Design-by-Contract Evolutionary Algorithm Framework with Augmented Diagnostic Capabilities

Jun 2013

Evolutionary algorithms are a class of algorithms that try to mimic natural, biological evolution a la Darwinian natural selection, to compute solutions to a given problem. They are especially useful when no well known strategies for computing solutions to such a problem exist. Evolutionary algorithms begin by creating a collection (population) of candidate solutions to the problem at hand; and through repeated application of genetic operators such as crossover and mutation, they iterate over multiple generations of this population, until they eventually converge onto an attractive solution. One important problem facing code implementing Evolutionary Algorithms is that due to the dynamic nature of the individual chromosomes in a population, simple coding errors lead to complex bugs that are difficult to both diagnose and debug. This problem is only exacerbated when attempting to develop the algorithms in a dynamically typed language such as Python. This paper presents a novel Evolutionary Algorithm framework for the Python programming language that implements design-by-contract, a paradigm in which each function and class must follow a contractual set of pre-conditions and post-conditions. Failure to follow the contract causes an error condition identifying the violated clause, thereby catching bugs earlier in the development process and in a more descriptive manner.

  • Publication
  • Manuscript
      title={A python-based design-by-contract evolutionary algorithm framework with augmented diagnostic capabilities},
      author={Panchapakesan, Ashwin and Abielmona, Rami and Petriu, Emil},
      booktitle={2013 IEEE Congress on Evolutionary Computation},

Dynamic White-box Software Testing Using a Recursive Hybrid Evolutionary Strategy/Genetic Algorithm

Jun 2013

Software testing is an important and time consuming part of the software development 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 provide such a framework with the inputs upon which the software must be tested. This requires static analysis of the source code, which is more effective 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.

  • Publication
  • Manuscript
      title={Dynamic white-box software testing using a recursive hybrid evolutionary strategy/genetic algorithm},
      author={Panchapakesan, Ashwin and Abielmona, Rami and Petriu, Emil},
      booktitle={2013 IEEE Congress on Evolutionary Computation},

Invited Workshops

STEM with Brownies

9th Ottawa Unit

Apr 2018

Engaged Ottawa's 9th Brownie Unit in a STEM (Science, Technology, Engineering, Mathematics) workshop.

Topics included:

  1. Physics of helicopter flight
  2. Physics of drone flight
  3. Drone flight demo
  4. Bubble sort algorithm
  5. Basic coding principles

Basics of Computing

Sorting Algorithms

May 2017

Talked to middleschool students at Metcalfe Public School (Ottawa, Canada) about effective computation.

Topics included:

  1. Multiple sorting algorithms
  2. Evolutionary computation
  3. Runtime efficiency

Combinatorial Algorithms

Stochastic Methods

Feb 2017

Presented stochastic combinatorial search algorithms to undergraduate students at the University of Ottawa, in an event set up by the undergraduate Computer Science Student's Association.

Topics included:

  1. Estimating the size of the search space
  2. Hill climber search
  3. Backtracking search
  4. Simulated Annealing
  5. Tabu search

Authoring and Publication Tools

Oct 2015

Effective use of authoring and project management tools to optimize collaborative research and publication Tools included Mendeley, LaTeX, LyX, yEd, and Asana

Presented to an audience of mixed expertise and prior knowledge

Optimizing for Consistent Throughput

Oct 2015

A seminar for graduate students on

  1. Time management
  2. Detecting burnout
  3. Mitigating and recovering from burnout

All in the service of optimizing consistent throughput

Metaheuristic Search Methodologies

An Overview

Feb 2014

An overview of metaheuristic search methods. Topics included:

  1. Simulated Annealing
  2. Tabu Search
  3. Genetic Algorithms
  4. Evaluating Time complexity of these algorithms
  5. Effective development techniques
  6. Effective testing and debugging techniques

Academic Awards

2nd Prize (Computer Science)

Graduate Student Poster Competition

Mar 2019

Improving Shipping Container Damage Prediction Through Machine Learning based Level 4 Information Fusion

2nd Prize (IEEE)

Graduate Student Poster Competition

Mar 2019

Improving Shipping Container Damage Prediction Through Machine Learning based Level 4 Information Fusion

2nd Prize (Computer Science)

Graduate Student Poster Competition

Feb 2014

A Python-Based Design-by-Contract Evolutionary Algorithms Framework with Augmented Diagnostic Capabilities

2nd Prize (IEEE)

Graduate Student Poster Competition

Feb 2013

A Hybrid Genetic Algorithm and Evolutionary Strategy to Automatically Generate Test Data for Dynamic, White-Box Testing

1st Prize (Computer Science)

Graduate Student Poster Competition

Feb 2013

A Hybrid Genetic Algorithm and Evolutionary Strategy to Automatically Generate Test Data for Dynamic, White-Box Testing

Interests And Extracurricular Activities


Double Black Diamond

Feb 2018 — Present

Skied 10 hills/mountains in Canada and USA


Oct 2017 — Present

Learned to cook by watching cooking shows and reading blogs, but not this one


Computer Science Graduate Students' Association

Sep 2015 — Aug 2018

President of the Computer Science Graduate Students' Association of the University of Ottawa.

  • Planned and coordinated events and technical presentations
  • Represented graduate students at faculty meetings
  • Coordinated with other organizations for joint events

Supporting Actor

Aayitha Ezhuthu

Sep 2002 — Jan 2003

Played a minor supporting role in a regional Tamil movie in Chennai, India