Turning your phone into a virtual-joystick

Image
Update: I kept working on this and I have released it as a package for Windows, Linux and macOS. Check it out: https://github.com/zenineasa/joystick/releases/tag/v1.0.0 -- During the days when I was pursying my master's programme, my friends and I used to occasionally go to a classroom in the university, turn on a projector, connect devices like Nintento Switch or Gaming computers and loads of joysticks, and play different simple multiplayer games; MarioKart was my favourite. From time-to-time, when I get together with people, I ponder that it would be a good idea if I bought such devices. Indeed, I do have a laptop, which could easily run such games; SuperTuxKart is similar enough to MarioKart and it can run on Linux, Windows and Mac. However, I do not have joysticks with me at the moment. Therefore, I think it would be a good idea if I simply worked on a project that would enable using our phones as joysticks. From a high-level, the plan is to host APIs on a NodeJS server that wo...

Regarding a Covid-19 related project that I worked on a few months ago

A little over a year ago, I had written a blog post in this blog titled "COVID-19 Disease Spreading Simulation". That was something that I worked on in a very short time frame. A few months after that, during a conversation with an old professor of mine, Dr. Jimson Mathew, we discussed modifying it further to create something really interesting. We started working on creating "A Framework for COVID-19 Cure or Vaccine Distribution Modeling, Analysis and Decision Making" in October 2020 and finished creating it and drafting a research paper about it in the first week of November 2020. We had submitted this to the Journal of Simulation, but the reviewers rejected the paper citing more information recently. Of course, we will be editing the paper and re-submitting it; however, I thought it would be better if I uploaded the project in the public domain so that anyone who would like to use it can do the same without having to wait.

I have made this available on GitHub. The following are respectively the links to the source code and the hosted version.

https://github.com/zenineasa/frameworkForVaccineAndCureDistribution 

https://zenineasa.github.io/frameworkForVaccineAndCureDistribution/ (You may have to zoom out a bit to see the entire grid structure)

What we have created here is a framework where you can define region boundaries and their permeability, and have people as actors being generated in the scene. There are hyperparameters to determine the number of people in a region, the number of people who are initially sick, the point in simulation from which vaccines and/or medicines get distributed, and its frequency and quantity as well. People can easily tweak the JSON file that is loaded in the webpage to have different layouts and different hyperparameters.



To generate the aforementioned JSON file, I used a script to do the same. I wanted to generate a hexagonal grid (honeycomb), as I was inspired by central place theory. Central place theory is an economic theory that attempts to explain the different hierarchies of human settlements across an ideal homogeneous landscape.

For the sake of simplicity in capturing the data, I have added UI buttons to take a screenshot as well as export simulation data that is captured over time. There are buttons to pause and play the simulation as well.

In the folder named 'resultsAndAnalysis', I have added in all the simulation data that we exported using the button that I stated above for various hyperparameters that we designed. The corresponding JSON files for the hyperparameters are also available in the folders.

I hope someone who is looking for something like this will find it useful.


Update from November 2023:

I just submitted a preprint to ArXiv describing this project. Check it out!
https://arxiv.org/abs/2311.09984
https://vixra.org/abs/2311.0085

Comments

Popular posts from this blog

First impression of Lugano - Mindblowing

Thinking about developing an opensource P2P social network

Created a video to help people get started with HexHoot