COVID-19 has hit society hard, forcing us to isolate ourselves from our loved ones maintaining a physically distanced lifestyle. In order to protect society's most vulnerable elderly and people belonging to risk groups, recommendations of isolating them further from society are voiced on daily bases. Elderly and people belonging to risk groups are forced to stay away from others, leaving them physically unconnected, isolated and lonely. Many do not have relatives or close friends to check on them or help them out which increases their vulnerability. In a worst case scenario we can have large groups of people in risk groups going out to stores, risking infection.
On the other hand we have millions of people ready to act. People that want to engage and have the time to help out. People that empathise with people needing someone to reach out to. People that feel empowered by empowering others in a time where solidarity is our only medicine. Unfortunately helping out is not as easy without knowing how or where to reach out.
Furthermore we have governments, municipalities and care-givers overwhelmed with tasks they have to prioritise and due to lack of resources in terms of staff and time causing them to reluctantly dismiss many people seeking assistance. That in itself is threatening our welfare.
What it does
The Digital Volunteer app & website is an AI platform that effortlessly and safely matches and connects volunteers with elderly, risk groups, businesses, governments, and anyone in need, as a way of contributing to help save communities. No manual administration bottlenecks, so all matching happens momentoaneiously by AI. The matching happens in a radius where the personas are located, and shows up on a Google Map, and can be used anywhere in the world!
The Digital Volunteer web/mobile application is the solution we are presenting that we believe will handle the problems our society is facing in regards to isolation, connection and lack of resources due to COVID-19. In order to tackle the problem we need a platform that can simplify the process of seeking help and getting help without the need of physical encounter.
A digital matching service that can be used by anyone, anywhere and that is scalable for millions to use all over the world. A solution that is quick (no human admin needed), safe (using facial recognition for login, and criminal record APIs in countries where available, login with secure encrypted login ID) and simple to use enabling people with no prior digital experience to feel comfortable using it accessible both on smart devices, computers and traditional phones (using Speech-to-text to create requests). By connecting people we are not only helping the people that are requiring help, we are also including more people into taking action, contributing to society, and forming better communities.
By secure encrypted identification, API background checks and Artificial intelligence algorithms (AI), the best volunteer is matched with an urgent need showing as a pin in Google Maps. The matching algorithm will be geographically restricted due to travel restrictions, to the community where both live by Global Positioning System(GPS). Communities all over the world can use the app.
The matching is done by AI algorithms so no human administration bottlenecks are stopping speed. Need and availability is matched instantaneously. Modern technology enables the app to scale up and down according to need wherever you are in the world. In the future workforce training of volunteers and virtual tasks can be added to the service.
By using this web application:
- Elderly can call in with voice and their need is converted by Natural Language Processing to show up as a need on the map. Immune volunteers pick it up and run errands.
- Businesses can provide medical equipment etc.
- A nurse can ask for a meal, and have meals delivered for the whole hospital - staff and patients included, etc
- Children with special education needs can get help from tutors with their school work.
- Governments can delegate assignments within legal restrictions, within communities or countries.
By using modern Marketing automation strategies we can spread the message all over the world that we have compassion and urge to help everyone in need - all over the world!
There are three main ways for users to connect to this application:
A) Volunteers with website application Signs in with BankID. Enter contact information. Enter what help and skills you can offer. Click on the pins to see what people nearby need help with. Choose a person to help. You get information regarding time, delivery and details. Finalise orders get paid if costs are involved. May get a rating.
B) Help receivers with website application Sign in with BankID Enter contact information. Pick what help you need. Describe what you need, if you need multiple items write a list. Choose time, delivery and payment method. Pick a volunteer on google maps. Choose a task you want to ask a volunteer. Ask volunteers for help. Once accepted a chat and call functionality enables you to have contact about details of the service. Volunteers finalise order and if any costs are involved in the service, they get paid through cash or swish.
Help receivers can then give a rating of the service provided by the volunteer.
C) People with no access to smartphones or computers: Help receiver through telephone call Help receiver calls a number that connects to the application. The receiver is then asked to enter the personal number by a bot. It will be used to get contact information and confirm who the receiver is. ‘ The help receiver can then confirm the contact information. The help receiver is asked to say what they need help with and a speech-to-text software translates it with tags such as grocery shopping or medicine. The help receiver later leaves a more detailed message of what they need, such as listing items. The receiver will then be thanked for calling. The application accepts request and show it on the map for the volunteers. The volunteer will contact the help receiver for further details and planning.
( If you need to see how it is currently designed, look at this: https://www.figma.com/file/xQSKGAcVkJY1fdsMA5yBai/Online-app?node-id=0%3A1 )
How we built it
Tech Description of the security of the application. Since the Digital Volunteer services is a web app built on Node.js and Flatter, we have chosen to take action to protect it with some components to limit the risk to exploiting. For example protection against SQL injection attacks ,Cross-site scripting, Insecure deserialisation, Broken authentication, Cross-site request forgery attacks, and Sensitive data exposure. We have run some UMLflow testing to see if the web application fulfils the Confidentiality, Integrity and Availability (CIA). The security is also built around or integrated with the Amazon Elastic Compute Cloud , Elastic IP, Cloudwatch, VPC. When it comes to the login section we have two-factor authentication (2FA),also called multiple-factor or multiple-step verification, is an authentication mechanism to double-check that checking the user identity is legitimate. The login has also used the Encryption SSL (HTTPS) to link between server and web. Appendix
Backend components will be hosted using container technologies. This will enable the application to easily be scaled out during heavy loads or sudden increase of requests.
Matching Algorithm: There are a number of ways we can develop the matching algorithm. Initially we can implement a basic search engine; however, as we receive essential feedback and data from users of the application, we can use much more complex algorithms. These possibilities are discussed here. Initial implementation of the matching algorithm.
The dire situation of the Coronavirus demands a rapidly implementable solution. Here we discuss a relatively simple “search engine” algorithm. In this context, we will use individual volunteers analogously to webpages: someone in need of help will enter the critical skills and features of volunteers and the algorithm will search for appropriate volunteers. Furthermore, by initially relying on users clicking and selecting prewritten keywords, we avoid needing to utilise natural language processing (NLP) in our algorithm. Thus, our algorithm will be considerably easier to create in a time constrained context. (Still, NLP provides a powerful way to incorporate more features that we might not manually come up with. Therefore, their potential is discussed later.)
Because we will initially be focusing primarily on in person, physical methods of volunteering, the matching algorithm will be geographically restricted; for instance, users will specify how far they are willing to travel in order to help.
Generally, search engines incorporate hashes that organise keywords and allow for much faster search times. While we plan to use this, the particular hashing function will be determined once we have some initial data from users and can speculate further on this. Until then, we can simply use a hashing function based on keyword length or simple categories (such as words pertaining to specific categories of information and skills).
Key data that will allow us to analyse our application and improve it As the Coronavirus is so rapidly evolving, collecting data from our users efficiently is extremely important. This data will allow us to improve our matching algorithm.once we have deployed our app, many more uses of this data will be revealed, but below are a few potential uses.
Which tasks are most frequently requested Certain tasks will certainly be more commonly needed than others, we can improve the user experience by offering pre-made tasks. That means that users will not need to spend time redefining such tasks as they will already be pre-featurised. For example, we speculate that groceries and medication will be two of these particularly popular requests. By making such requests available at the click of a single button, our app will be significantly more convenient.
Which features are truly of significance to the volunteering Finding keywords that are relevant to the match between volunteers and tasks is essential because they are the primary input for our matching algorithm.
As we plan to incorporate a number of AI based analysis to our matching algorithm (discussed later in this document), it is vital that the features that are available to users are truly important. Otherwise, unnecessarily complex data will make accurate predictions and improvements less feasible. This means that keywords that statistically seem to lack influence in a volunteer’s choice of service as well as the receiver's acceptance of the volunteer should be removed. Additionally, by limiting the amount of keywords to only truly essential ones, we will make the system more user friendly and less tedious.In addition to analyzing this simply by usage, we will also find new keywords through NLP of user and task text boxes that allow for user input of new information that we might not have thought about. (This is further discussed in the next section.)
Creating new features through NLP While the initial app will function primarily on prewritten keywords or tags to describe both tasks and skills of volunteers, ultimately, we plan to incorporate the option for users to provide custom textbooks description of themselves (for the volunteers) and tasks (for those needing the help). We will use pre-existing NLP infrastructure such as Google products so that we can add this feature in a timely and effective manner.
By using AI to identify which of these keywords are frequently used in the text boxes, our algorithm will quickly become specially adapted to the Coronavirus crises, rather than simply for mitigating a crisis in general.
Labelling successful matches to train a more advanced AI based matching system In order to consistently create useful connections between volunteers and tasks, we will develop our algorithm to receive user feedback on the usefulness of the connections. This will label data for us and allow us to utilise machine learning methods to optimise the process by which we are connecting volunteers with tasks. To be specific, for each match, the volunteer will be asked whether the given task is acceptable or not (yes or no) and the requester of the task will be asked whether the volunteer they connected with actually contributed in some way. There are then a number of established machine learning algorithms that can use this labeled data to predict future connections. For example logistic regression algorithms use the host of volunteer input features to make the binary prediction of whether it can make a match with a certain task.
Furthermore, the geographical nature of our app - only volunteers in proximity to the task are contacted - introduces the question of how far a distance volunteers will be willing to travel. Especially considering the numerous risks associated with going outside during the pandemic. Therefore, we can use a similar method to the above to ask users whether the connection is within reasonable distance or not (of course we can introduce basic restrictions such as a maximum distance before this implementation).
Workforce training of volunteers The Coronavirus is presenting us with completely new and often unexpected challenges. Consequently, many tasks that people will request will be new. Therefore, we must ensure that our cohort of volunteers is capable of combating these new predicaments. We will incorporate an algorithm being developed by professor Xiaoli Zhang at the Colorado School of Mines that uses neural networks to identify members of the workforce that can most easily be trained to perform new tasks. While this work is in the field of training workers in materials manufacturing, the concept is the same: we must quickly modernise our workforce. In our case, how efficiently can we find and train volunteers that can adapt in this chaotic time.
Practically, our algorithm will identify which volunteers can be trained to a specific task. This will allow us not only to combat traditional problems such as food or medication delivery but also novel tasks and challenges such as training volunteers to adhere to social distancing.
Virtual tasks The Coronavirus has made clear that we are becoming ever more interconnected. What’s more, it has shut many of us in our home without the experience or opportunity to provide volunteering. While we can still attend work or school online, it is not always as effective as in person interaction. The use of workforce training algorithms can be applied to training people to be productive at home. That is, we must ask the question: how can we modernise our volunteering such that it is efficient and useful online? This suggests the development of an entirely online volunteer; one who provides free online tutoring for children in need of special education, or helps a small business update its website, for instance. By allowing people to connect online, we can instantly connect the citizens volunteering on a global scale. If we can use this vast recourse of human skill and adaptability as well as compassion, we can surely overcome this crisis much faster.
This development provides prospects outside of this competition and the Coronavirus as well. In an ever globalised world, modernising the online workforce can improve a country's economic competence and provide insurance for the future workplace. For example, businesses, institutions and governments would be less hard hit if a seamless transition to virtual society was possible.
Challenges we ran into
We first tried IBM Cloud but run into issues setting up the DevOps pipe automation, so we rolled back to AWS. However we believe it is best to use the Google Cloud Platform going forward with the solutioning, as we will use GoogleMaps and Speech-to-text from Google and they could offer us a package deal.
Accomplishments that we're proud of
We are proud of the Video we created, and the great team work we made happen. We are friends after this.
What we learned
We have leared alot about how AI can free us from manual repetitive process work and how it can be implemented for the whole society to make use of in this global Covid-19 crisis.
What's next for The Digital Volunteer
We need funding to finish developing this amazing idea, and we are ready to develop it within 2 months time. We hope to win and make it reality for helping communities everywhere in our world!
Try It out
ai-algorithms, api, automated-testing, bootstrap, database, devops-ci-cd, docker-containers, google-cloud, google-maps, google-speech-to-text, java, kubernetes, logging-tools, messaging-queue, node.js, notifications, python, react-native, redhatopenshift, ssl-connections, visual-recognition