Machine Learning

Modified Particle Swarm Optimization | Freelancer.com | July 2018

- Conducted research on various methods used to detect and prevent jamming attacks
- Mathematically (and using MATLAB) modified the Particle Swarm Optimization (PSO) algorithm to improve its efficiency in obtaining the optimal location for a jamming device to damage a mobile network
- Multiple experiments were conducted, and convergence curves for both versions of the algorithm were compared

Click here to download the paper

Intelligent WSN Nodal Charging via SARSA and Best First Search Methods | Freelancer.com | August 2018

- Conducted research on the SARSA (State-Action-Reward-State-Action) and the Best First Search Algorithm
- Developed MATLAB based algorithms for both methods, that were then applied to a simulated MATLAB-based WSN (Wireless Sensor Network) Nodal Charging system, for the purpose of recharging the network nodes for continued data transmission
- The objective behind implementing the two studied algorithms was to prove that they increase the lifetime of a large enough WSN, when compared to the default clustering data transmission and distance-based charging schedule
- The WSN Nodal Charging system consisted of 50 nodes, a base station and a nodal charging vehicle (WCE)

Data Transmission Technique Comparison
Cluster-based Data Transmission Figure 1. Data Transmission via Clustering
SARSA-based Data Transmission Figure 2. Data Transmission via SARSA


Remaining Individual Nodal Energy Comparison (for two scenarios - 1 single recharge trip & 5 recharge trips)
Energy after 1 trip Figure 3. Remaining Nodal Energies after 1 Recharge Trip
Energy after 5 trips Figure 4. Remaining Nodal Energies after 5 Recharge Trips


Arrival time of Charging vehicle at each node (for two scenarios - 1 single recharge trip & 5 recharge trips)
Arrival time after 1 trip Figure 5. Individual Nodal Arriving Times after 1 Recharge Trip
Arrival time after 5 trips Figure 6. Individual Nodal Arriving Times after 5 Recharge Trips


Optimal Scheduling For Vehicle-To-Grid Systems | Freelancer.com | December 2018

- Conducted introductory research on V2G systems and the various purposes it serves to both the grid and consumers.
- Programmed a case study of 500 random electric vehicles (PHEVs and BEVs at random) that implement the associated charging station to charge from their respective initial to desired states of charge, or battery levels.
- 20 random vehicles out of the 500 are programmed to take mid-charging home trips to charge the respective owners’ home loads.
- Every vehicle’s state of charge, mode (whether charging or discharging) and other parameters are recorded for a 48 half-hour periods, and the results are analyzed.

Video Demo of Current React Native App for Android

Current App Wireframes for an IPhone X/XS/11 Pro
Current Layout Figure 1. Current Layout

Main Page Figure 2. Main Page

Competition and Match Listings Figure 3. Competition and Match Listings

Team Schedule Listing Figure 4. Team Schedule Listing

Basic Match Details Figure 5. Basic Match Details


EUROPEAN FOOTBALL SEER WEB (REACT) & MOBILE APP (REACT NATIVE) | DECEMBER 2018 – PRESENT

- The objective of this application is to aid sports betting by calculating probabilities of wins/losses/draws for upcoming match fixtures between any pair of European football teams.
- Have developed Python Selenium Webdriver code to mine sufficient statistics and scheduling information from WhoScored.com, to calculate the current form of players of different European teams, and store the data in an MySQL database and in JSON format.
- Currently writing more Python code to use feature engineering and machine learning to develop the best prediction models.
- Have developed an Adobe XD wireframe and currently a React Native application for predictions, along with significant insights into individual player and team performances over the past 3 seasons.
- Via SCP and an EC2 instance, I have migrated the MySQL database to Amazon RDS.
- Using Docker, I created a package for the AWS Lambda function that executes the web scraping tasks, along with fetching all dependencies. After a successful script run on Docker, I uploaded a ZIP file of the function and dependencies to Lambda.
- Have set up VPCs, Subnets, Route Tables, IGWs and NAT Gateways to allow the Lambda function access to the RDS database, particular files in an S3 bucket and the internet to successfully use Chromedriver.
- Have written a backend Node.js REST API with Express to connect to the AWS RDS, which contains the various competition and team schedules, and to the S3 bucket containing associated player statistics in JSON format.