Professional Documents
Culture Documents
D-Eazy Donation Platform an Artificial Intelligence and Video Based Mobile Application
D-Eazy Donation Platform an Artificial Intelligence and Video Based Mobile Application
Abstract—About 9.2% of the world, or 689 million people, Various NGOs in India and globally are suffering with
live in extreme Poverty according to the World Bank. The social common issues like Lack of Funds, Inadequate Training
agencies or trusts are limited in their capability and coverage to Personnel, Lack of Public Participation/Volunteerism, lack of
help these underprivileged people for food and main essentials. central systems,, lack of co-ordination etc. [17] [18].
This paper focuses on the solution which enables mass Donors
to seamlessly connect to recipients or Point-of-Contacts (PoCs) This paper discusses a video based mobile application –
for easily donating food and essentials to underprivileged people D-Eazy designed for Android and Apple/iOS platforms in
while sitting at their homes/places. The solution introduces a
Video-based Mobile App Platform that can be used by Donors
hybrid mode. This mobile application will act as an ultimate
anytime from anywhere to post and schedule their donations. solution for providing an end-to-end donation system and
Recipients directly or through agencies/organizations' PoCs are solve many challenges in the current ecosystem. The paper has
notified of the scheduled donations and pick-up/drop can be been organized as follows: Section II highlights the challenges
arranged internally or through 3rd party pick-up agencies. One of the existing systems and offers the D-Eazy mobile app as
of the other key features is SOS (emergency alert). If any poor the solution with many user-friendly features. Section III
person or family needs urgent help in terms of expensive discusses the architecture and technical aspects of the app.
medicines, blood, etc., this platform can be used by recipient Working flow with the help of screenshots is discussed in
PoCs to trigger SOS which will be received by all the people Section IV. The work is concluded in Section V.
registered to this platform and hence can offer help
immediately. The Application platform is designed and II. PROBLEM AND SOLUTION
developed with frontend user interface in React
Native/JavaScript and backend server in Python/Django. The A. Existing System Challenges
application offers AI based Donation Prediction Engine There are multiple private agencies operating in the
(AIDPE) for adaptive video upload/upload processing and
country to help the underprivileged people, but due to lack of
efficient PoC allocation based on multiple factors.
an end-to-end platform, there is a huge challenge [16] [17]
Keywords—Poverty; Donor; Point-of-Contact; SoS; AI [18] to operationalise this at a broader level. This is
irrespective of millions of Donors out there who are willing to
I. INTRODUCTION help in this noble cause directly or indirectly. As a result, these
India is one of the biggest developing nations in the world. agencies operate only at independent levels as per their
Even if its economy is growing, Poverty is still a huge capacity and reach. Some of the existing challenges are:
challenge. Around 90 million people are living in extreme ● Lack of platform for Donors to easily donate from
Poverty which is around 6-7% of the total population [1]. Most anywhere
of these people are struggling to even earn daily food, clothes, ● Limited connectivity between Donors and the needy
and essentials for themselves or their families. Government people (or Point-of-Contacts) – leads to reduced
and private agencies including NGOs are trying their best to coverage
help them in whatever way they can. These agencies try to ● Lack of trust in the existing agencies – as Donors do not
associate people who can donate to fulfil the cause of helping know if their donation is reaching the right people or not
these poor people. The efforts from these initiatives are ● Multiple items (relatively new and reusable) at homes or
helpful but have very limited coverage. It's very difficult for business shops that can be donated to underprivileged
these agencies/NGOs to associate the mass population with people are thrown as waste
them and convince them to trust these agencies for donations
● No global system to raise emergency alerts (SoS)
[16]. On the other hand, there are around 30-40% of the
population in India [2] who really want or have the capacity B. Solution: Video based Mobile App platform – D-Eazy
to donate and help these under privileged people. But in the
This paper proposes a Video based Mobile App platform
absence of an easy to use and trustable platform, they are not
solution for Donors and recipients/Point-of-Contacts (PoCs)
able to do so, and in fact a lot of re-usable and donatable stuff
to process the donations seamlessly. This proposed platform
is simply going to waste.
offers Android and iOS based Mobile Application which can
be installed from Play Store and App Store respectively.
Donors through this Application can post the items that framework also consists of AI based Donation Prediction
they want to donate along with item details and video. Engine (AIDPE) which is used to efficiently allocate
Donations can be posted under different categories and pick- PoC/Associate for donation pick-ups and to fast process the
up for those items can be scheduled through the donation video uploads and downloads.
calendar. Group/Bulk donations can also be done as per the The front-end is designed/developed using React native
defined schedule through the App. libraries/modules [7] which is a JavaScript based hybrid App
PoCs from Agencies/NGOs can get themselves registered creation framework. It makes use of a Bridge which is set of
and authenticated within this App. PoCs get the notifications libraries implemented in Java and JavaScript which does the
as soon as the Donors post their donations in their respective necessary interfacing of React code on native environment.
locations. PoCs after checking the details of the donations can Node JS (acts as metro server), JavaScript components, that
then get the items picked up as per the scheduled date and provides the code reusability for smooth UI and events for
time or can propose new pick-up time. PoC while delivering both Android/iOS platforms [8]. The UI states such as users
the donations to the needy people can post a video on the App login information or donation data and other App actions are
of the needy people receiving the donation, which will be managed using Redux [9] which is state management library
notified to actual Donors and thus completing the end-to-end based on Flux architecture [10] where each user action such
donation process. The proposed App platform also offers as a button click triggers a series of actions which sends an
some other important features including SOS which is used update to the application state based on the type of action
to trigger emergency alerts for the immediate requirement of (Action type like request to login, create donation, get
blood or emergency medicines for the underprivileged donation list etc.). This Action type further dispatches
people. Donors on getting these emergency alerts at any place appropriate data (response from Rest API) to the reducers
in the world can immediately acknowledge and contact the which are responsible for state management and consistent
designated people. update of application state even in case of concurrency.
Redux is also used to provide the data hiding security and
C. D-Eazy Application Features
updating props. The app also receives the FCM push
Some of the key features which App offers are: notifications for the specific events from the server.
● Registration of Donors and donation recipients/agencies’
representatives/Point-of-Contacts A. AI Based Donation Prediction Engine (AIDPE)
● Authentication of Agency Representatives/Point-of- One of the key components of D-Eazy Application is
Contacts AIDPE (AI based Donation Prediction Engine) which
● Posting of donations under different categories including includes two functions:
Food/Ration, Clothes, Footwear, Books/Stationery, a) Efficient PoC/Associate Allocation: Predicts and
Sports, Toys, Furniture, Phone/Computer, Money, allocates the appropriate PoC/Associate for input
Birthday celebrations etc. donation(s) in the specific area based on area score,
● Birthday celebrations’ cake/snacks donation donation request score, pick-up schedule score,
● Video based capture at the time of posting and delivering associate score and Donor score
● Quality verification through the checklist b) Adaptive Video Upload and Download
● Group/Bulk donations Processing: Before uploading the video, frontend
● In App donation calendar management compresses the data through transcoding. Using
● Push Notifications AIDPE, based on the user's device and the donation
● Emergency alerts (SOS) for immediate medical need request, the video is converted to the most suitable
(Blood/medicines) codecs and triggers the Adaptive Bit Rate (ABR)
Engine by providing versions of best suited quality
III. APPLICATION PLATFORM DESIGN and lower versions. The ABR engine then checks
D-Eazy App is built on Android and Apple/iOS platforms the device’s internet capability and streams data on
in hybrid mode and the backend server is hosted on the AWS the most optimal bitrate to provide a seamless
cloud. High level architecture is illustrated in Fig. 1. Frontend experience.
is based on React native and backend uses Python/Django
1) Efficient PoC/Associate Allocation
implementation.
One of the key requirements of the D-Eazy Application is
The D-Eazy backend is created using Django framework
to connect each Donation pickup Request raised by a Donor
[3], [4], [5], [6] based on Python which provides a well-
to a right picking NGO/Associate partner. AIDPE of the
defined web application and security module. The
application is built which helps in predicting or allocating a
Framework provides an interface to servers thus providing
best possible pickup partner for each donation request to
the necessary containerization and interfaces with the
cover as much pickups as possible using optimal strength of
deployment servers. The framework provides an excellent
partner resources as well as the time and well-being of the
authentication module which can be used out of the box or
associates. Fig. 2 describes the AIDPE flow to find a best
can be customized as per needs. The App connects with a
suitable Associate.
RDBS based MariaDB database as its data storage. Amazon's
The Allocation engine though equipped with the aim of
SNS and SES services are used to send messages and emails
to users. The App also connects with the Amazon S3 bucket classifying or searching out a single or list of associates for
to store large media files used and connects with the Firebase each pickup requires more than just classification. There is a
console to send appropriate Push Notifications to users. The cluster of common categories of inputs which is used for the
application is deployed in an ec2 instance over cloud. The decision making. These inputs then need to be mapped to a
score to reach at an overall decisive score which can be b. Donation Quantity (Q) and Weight (W): Similar to
achieved using a regressive approach. Thus, the overall result Donation Category some donations can have more weight
can be achieved by combining all three main categories for and some could be lighter, depending on the weight of a
algorithm that is Classification [11], Clustering [12] and quantity we might need more resources for certain pickups,
Regression [13]. The Allocation process starts with clustering thus this input helps us provide a score for ease of operability
of inputs into common categories where each input is given a for a given discussion, thus heavier objects and larger
score for each user. The classifications and input scoring quantity are more difficult to operate so would have a lower
criteria are: score on a scale of 0-5.
donation. A score from 0 to 5 is provided considering the 𝑑𝑒𝑐𝑖𝑠𝑖𝑜𝑛 𝑡𝑜 𝑟𝑒𝑗𝑒𝑐𝑡 𝑡ℎ𝑒 𝑑𝑜𝑛𝑎𝑡𝑖𝑜𝑛
areas served and their closeness to the pickup area in focus
and other availability conditions, setting 5 as most available
and 0 as unavailable. Overall Select-ability Score (OSS):
b. Associates load (L) and efficiency (E): Even though an After creation of above scores a final select-ability score is
associate can be available but can be so occupied that it's created for each associate tried for each donation.
impossible to take up another delivery, Efficiency of
𝑂𝑆𝑆 = 𝑃𝑈𝑆 + 𝑆𝑆 + 𝐷𝑅𝑆 + 𝜖 ∗ 𝐴𝑆 + 𝐷𝑆/𝜕
associates are also considered based on their previous
completed assignments and feedbacks collected overtime. 𝜖 = 2.4(𝑆𝑖𝑛𝑐𝑒 𝑎𝑠𝑠𝑜𝑐𝑖𝑎𝑡𝑒 𝑖𝑠 𝑡ℎ𝑒 𝑝𝑟𝑖𝑚𝑎𝑟𝑦 𝑖𝑛𝑝𝑢𝑡)
The load and efficiency are again mapped on a scale of 0 to
5, 0 representing a loaded and not efficient associate and 5 𝜕 = 1.5 (𝑊𝑒 𝑤𝑎𝑛𝑡 𝑡𝑜 𝑘𝑒𝑒𝑝 𝑑𝑜𝑛𝑜𝑟𝑠 𝑝𝑎𝑟𝑡𝑖𝑐𝑖𝑝𝑎𝑡𝑖𝑜𝑛
with an un-loaded and efficient. 𝑖𝑛𝑓𝑙𝑢𝑒𝑛𝑐𝑒 𝑎𝑡 𝑚𝑖𝑛𝑖𝑚𝑎𝑙)
Considering above input parameters, a function is applied to Final Assigned Associate (FAA):
get an aggregated score:
This Overall Select-ability Score (OSS) is then used to
𝐸 classify if an Associate can be used for Donation Pickup or
𝐴𝑆 = 𝑙𝑜𝑔2 ((𝐴𝐴 + 1) + 𝛿 ∗ (𝐿 ∗ ( )))
1+𝐸 not, an ideal Overall Select-ability Score (OSS) is also
calculated with all constant factors taken along with best
𝛿 = 0.8 (𝑆𝑖𝑛𝑐𝑒 𝑎𝑡 𝑠𝑜𝑚𝑒 𝑝𝑜𝑖𝑛𝑡 𝑤𝑒 𝑚𝑖𝑔ℎ𝑡 𝑛𝑒𝑒𝑑 𝑡𝑜 𝑡𝑎𝑘𝑒 𝑎 factors for a Donation and compared to score of each
ℎ𝑎𝑟𝑑 𝑑𝑒𝑐𝑖𝑠𝑖𝑜𝑛 𝑜𝑓 𝑙𝑜𝑎𝑑𝑖𝑛𝑔 𝑎 𝑎𝑠𝑠𝑜𝑐𝑖𝑎𝑡𝑒 𝑜𝑣𝑒𝑟 𝑐ℎ𝑜𝑜𝑠𝑖𝑛𝑔 Associate, the associate with maximum score is then
𝑎𝑛 𝑎𝑣𝑎𝑖𝑙𝑎𝑏𝑙𝑒 𝑎𝑠𝑠𝑜𝑐𝑖𝑎𝑡𝑒)) considered capable for Pickup and in case of a tie, Associate
score is used to determine the better suited Partner. In case of
E) Donor Score (DS): another tie, round robin approach is used.
Just like making decision on Associate Score, we need to 𝐹𝐴𝐴 = max (𝑂𝑆𝑆)
evaluate the Donor by whom the request is originated.
Operational Efficiency:
a. Donor's Donation History Status (DH): Though most of
time the users commit to their donation, yet sometimes they The overall efficiency of algorithm is around 73% as per
have to cancel up for some reason, since it occurs rarely, we initial simulated results when tested over a simulated set of
can detect a pattern if some users are notoriously putting 5000 test donations with 800 Dummy associates, spread over
donations just to cancel most of them and either reject or different pin codes of Delhi, India. Next step is to try multiple
reduce priority. iterations with larger dataset and different damping
coefficient to achieve a target accuracy of over 90%.
Considering above input parameters, a function is applied to
get an aggregated score:
𝐷𝑆 = 𝑙𝑜𝑔2 (𝐷𝐻)1/𝜌
𝜌 = 3(𝐶𝑢𝑟𝑟𝑒𝑛𝑡𝑙𝑦 𝑡ℎ𝑒 𝑡𝑟𝑢𝑠𝑡 𝑜𝑛 𝑑𝑜𝑛𝑜𝑟𝑠 𝑜𝑣𝑒𝑟𝑝𝑜𝑤𝑒𝑟𝑠 𝑡ℎ𝑒
devices) that user wishes to target. Also, the ABR algorithm the user and changes the bitrate or quality as per the results
takes into consideration the internet connectivity speeds of thus resulting in minimum to almost no buffering.
The compression is done while the data is uploaded to default codec and store various codec possibilities that
reduce the data size and upload time. This enables storage on can be served by the application for given video data.
the cloud servers to be more compact and increases the • Video download/view/stream: When a user requests to
availability by reducing the size and standardizing a codec. view/download the requested video, the application
Once data upload is complete, the video library takes care of executes below two steps:
identifying and converting the data into multiple codecs so o Based on the user's device and the donation request,
that the data is available cross platform on all servable the video is converted to the most suitable codecs
devices and then provide data to users at best possible quality. and triggers the Adaptive Bit Rate (ABR) Engine by
This transformation of video data is achieved in different providing versions of best suited quality and lower
modules at different stage in the application: versions.
• Video upload: When a video upload request is initiated o The ABR engine then checks the device’s internet
the frontend processes the data and returns a transcoded capability and streams data on the most optimal
version of video ensuring reduced data size yet ensuring bitrate to provide a seamless experience.
acceptable quality levels. The various phases of video transformation are represented
• Video Storage: Once video upload is completed the in Fig. 3:
application triggers a service to convert the video to a
Fig. 5. D-Eazy Application (a) Registration page (b) Sign Up for a Donor (c) Sign Up for an NGO
Fig. 6. D-Eazy Application (a) Donate Now page (b) Page for Ration/Grocery donations
4) Birthday Cheers
D-Eazy provides one unique feature i.e., “Birthday
Cheers” (Fig, 8) to enable unprivileged family to celebrate
their young kid's birthday through a surprise cake and snacks
donation on that particular day. PoC can mark dates in the
calendar as per the kid's birthday which is then visible to all
Donors on the App. Donors can then select their preferred
donation date and book the birthday donation. PoC can pick-
up the donation including cake and snacks (with guaranteed
minimum quantity) from the Donor's place and handover the
same to underprivileged family for celebrating their kid's
birthday hence spreading smiles around.
5) SOS/Emergency alerts
D-Eazy provides SOS or emergency alert option wherein
NGO PoC can post an immediate/critical need of Blood or
medicine for any underprivileged person(s). On getting this
emergency alert/notification along with contact details of the
requester, interested Donors can respond back with his
contact details and acknowledgement showing his interest.
Donors can call the requester and help offline. Fig. 9 shows
the SOS/Emergency alert feature of the D-Eazy application.
Fig. 7. Group donation feature of the D-Eazy application
References
[1] Wikipedia. 2022. “Poverty in India” Last modified February 28, 2022.
https://en.wikipedia.org/wiki/Poverty_in_India
[2] Rangarajan. "30% of India is poor, says Rangarajan panel's new
Poverty line formula". First Post. 7 July 2014. Retrieved 21
October 2017
[3] Forcier Jeff, Bissex Paul, Chun Wesley. 2008. Python Web
Development with Django. New York: Addison-Wesley
[4] Vincent William S. 2018. Django for Beginners: Build websites with
Python and Django. London: Still River Press
[5] George Nigel. 2019. Builds a Website with Django 3: A complete
introduction to Django. London: Gnw Independent Publishing.
[6] Vincent William S. 2020 Django for APIs: Build Web APIs with
Python and Django. London: WelcomeToCode
[7] Vipul Kaushik, Kamal Gupta, Deepali Gupta. 2018. React Native
Application Development,3rd ed. Los Angeles, CA: Sage
[8] Majchrzak Tim. 2017. Comprehensive Analysis of Innovative Cross-
Platform App Development Frameworks. Hawaii. January 2017. 50th
Hawaii International Conference on System Sciences: Sage
[9] Gagliardi Valentino. “React redux Tutorial for Beginners: The
Complete Guide (2020)” https://www.valentinog.com/blog/redux/
(accessed June 8, 2020)
[10] Olifant Lebogang. “Flux In-Depth Overview”
https://facebook.github.io/flux/docs/in-depth-overview/ (accessed Oct
8, 2020)
[11] Saravanan R, Sujatha Pothula. 2018. A state of Art techniques on
Machine Learning Algorithms: A Perspective of Supervised Leaning
Approaches in Data Classification. Madurai, India. 2018 Second
International Conference on Intelligent Computing and Control
Systems (ICICCS): IEEE
[12] Wen Zhihua, Tzerpos V. 2004. An effectiveness measure for software
clustering algorithms. Bari, Italy. Proceedings. 12th IEEE International
Workshop on Program Comprehension, 2004: IEEE
[13] Edureka. “Artificial Intelligence Algorithms: All you need to know”
https://www.edureka.co/blog/artificial-intelligence-algorithms/
(accessed July 29, 2021): Edureka
[14] Veach Eric.”S2 Overview”. https://s2geometry.io/. April 2021,
S2Geometry.
[15] Wikipedia. 2022. “Moving Average” Last modified January 31, 2022.
https://en.wikipedia.org/wiki/Moving_average
[16] Nicole Yu Kimberly.2019. “4 challenges NGOs Face and
Corresponding Solutions”. https://asianngo.org/magazine/post-
magazine/article/article-detail/118/4-challenges-ngos-face-and-
corresponding-solutions . February 2019: asianNGO.
[17] Latha Lavanya Kakumani, Prabhakar Kotte. “Non-Government
Organisations: Problems and Remedies in India ” Serbian Journal of
Management 6 (1) (2011) 109 – 121:
http://www.sjm06.com/SJM%20ISSN1452-4864/6_1_2011_May_1-
121/6_1_109-121.pdf
[18] Lone Ahmad Mashkoor, Ganie Ahmad Arsheed. “Problems &
Remedies of Non-Governmental Organizations (NGOS) in Jammu and
Kashmir” The International Journal of Indian Psychology ISSN 2348-
5396 (e) | ISSN: 2349-3429 (p) Volume 4, Issue 1, No. 75, DIP:
18.01.045/20160401. https://oaji.net/articles/2016/1170-
1478790246.pdf