A Mobile Computing Crowd Sourcing Application for

globedeepΚινητά – Ασύρματες Τεχνολογίες

24 Νοε 2013 (πριν από 3 χρόνια και 6 μήνες)

118 εμφανίσεις

A Mobile Computing Crowd Sourcing Application for
Reporting Ecological Disasters
Abstract
Purpose
Methodology
Thepurposeofthisprojectistocreateamobilecomputingapplicationthatcanutilizethe
contributionsofordinarycitizenstogatherdataontheeffectofecologicaldisasterson
animalsinaspecificregion.Specifically,thisprojectfocusesonendangeredspecies
affectedbytheGulfOilSpillof2010.Moregenerally,itprovidesacodegenerating
capabilitytoallowtheexistingmobilecomputingapplicationtobeusedforotherdisasters.
Extensiveinternetresearchwasconductedtoidentifytheselectedaffectedendangeredspeciesandthebestwayto
identifyeach.Oncethisresearchwascompleteandthesequenceoftrue/falsequestionstoidentifyeachanimalwas
determined,theJavacodewaswrittentoinputthesequenceofquestions.Atthispointitwasrealizedthatacode
generatorcouldbewrittentoautomatethisportionofthecodingprocess.TheDecisionTreeCodeGenerator(DTCG)
waswritteninJavatogeneratetheAndroid-styleJavacodenecessarytoidentifytheanimalsinthemobileapplication.
Thisgeneratedcodewasthencompiledandlinkedwiththerestoftheapplication.Withtheanimalidentification
portionoftheJavacodegeneratedbytheDTCG,thisapplicationcanbemodifiedquicklyandusedtogatherand
reportinformationaboutanyenvironmentaldisaster.
•Mobilecomputingisdefinedasanyformofcomputingthatisintendedtobeusedwhilemoving.Inrecent
years,withtheadventandproliferationofsmartphones,mobilecomputinghasbecomeaccessibletomuchof
theworld’spopulation.
•Anaturalapplicationofmobilecomputingisforcrowdsourcing,whichistheprocessofusingthepublicatlarge
tocompletesometask.Usingordinarycitizensforcollectingdatatobeusedinscientificresearchisacommon
applicationofcrowdsourcing.
•Crowdsourcingapplicationsonmobilecomputingdevicesareenablingconcernedcitizenstoactivelyparticipate
inthescientificresearchbygatheringvaluabledata.Citizensatthesiteofanecologicaldisasterwillbeableto
quicklygatheranddisseminatedata,effectivelyturningcitizensinto“CitizenScientists.”
•TheDisasterReportingApplicationforComputerScientists(DRACS)mobilecomputingcrowdsourcing
applicationwasbuiltforthegeneric,opensourceAndroidplatformthatisusedonmanysmartphones.
•Android-specificJavawasusedastheprogramminglanguageforthisproject.
•TheJavaSESoftwareDevelopmentKit(SDK),6u20withJRE6wasusedastheprimarydevelopment
platform.
•TheEclipseInteractiveDevelopmentEnvironmentwaschosenforitsrobustAndroiddevelopmentenvironment.
•AndroidEclipseplug-inplatform2.2APIlevel8revision1wasusedastheprimaryAndroiddevelopment
platform.
•TheAndroidSDKToolsrevision6andAndroidVirtualDevice(AVD)Managerwerealsoused.
•TheAVDManagerwasusedtoemulatetheAndroidhardwareonthedevelopmentcomputer.
•Usingthisframework,2Xapplicationclasseswereimplemented:
•AdapterActivityBird, AdapterActivityCoral, AdapterActivityFish,
•AdapterActivityMammal, AdapterActivityTurtle, BasicQuestionScreen,
•CameraSurfacePreview, CameraWork, EndangeredSpeciesBird,
•EndangeredSpeciesCoral, EndangeredSpeciesFish, EndangeredSpeciesMammal,
•EndangeredSpeciesTurtle, FilteringQuestionScreen, Question,
•QuestionList, SeniorProject, SpeciesAdapterBird, SpeciesAdapterCoral,
•SpeciesAdapterFish, SpeciesAdapterMammal, SpeciesAdapterTurtle
Code Generated by DTCG used in
DRACS Application
Objectives
Specific goals for this project were as follows:
•Create a user-friendly Android application that can be used to help researchers study the
effect of the Gulf Oil Spill on endangered species
•Construct a series of yes/no questions that could be used to identify selected endangered
species in the Gulf of Mexico
•Create a binary decision tree based animal identification program
•Generalize the animal identification program so that it could be rapidly modified and
used in other environmental disasters
•Create a Java code generator for binary decision trees
Animals Harmed by the Deepwater Horizon Oil Spill
Android Application Developed to Report Animals Harmed by Oil
Screenshot of Generated Code as
Implemented in Android Application
Screenshot of User-Friendly Decision Tree
Code Generator Interface
Mobile Computing
Decision Tree Code Generator
Oil spill
Animals in peril
Data reporting
Citizen
scientist
Research
The2010DeepwaterHorizonoilspillintheGulfofMexicoisone
ofthelargestecologicaldisastersever.Amultitudeofspecies,many
ofthemendangered,arebeingimpactedbytheoilspill.Many
ordinarycitizensareinvolvedintheclean-upandrestorationeffort.
Withtheproliferationofsmartphones,notonlycanordinary
citizensaccessknowledgeontheirmobiledevices,buttheycanalso
contributetothescientificknowledgebase.Crowdsourcingmobile
applicationsareeffectivelyturningconcernedcitizensinto“citizen
scientists.”Thisapplicationenablesthecitizentoreportan
endangeredspeciesfoundontheGulf.Apictureoftheendangered
species,thepreliminaryidentificationofthespecies,GPS
coordinatesandthedate/timeofthediscoveryareallincludedin
thereport.Thepreliminaryidentificationisaccomplishedthrougha
seriesofquestionsbuiltintothereportingapplication.This
informationwillthenbesharedwithresearchers,allowingthemto
studytheeffectoftheoilspillontheanimalsoftheGulf.
ThespeciesidentificationprogramwasbuiltusingtheDecision
TreeCodeGenerator(DTCG),anextensibledecisiontreebased
codegenerator.TheDTCGisgenericenoughtobeusedtoreport
onfutureecologicaldisasters.BiologistscanusetheDTCGtobuild
binarydecisiontreestoidentifyanimalsorplantsthroughaseriesof
true/falsequestions.WiththeuseoftheDTCG,andtheexisting
applicationframework,newmobileapplicationscanberapidly
deployedtogatherinformationaboutfutureenvironmentaldisasters
throughcrowdsourcing.
WhentheuserstartstheDisasterReportingApplicationforCitizenScientists(DRACS)theyarepresentedwitha
screenthatallowsthemtoeithertakeaphotographandreportananimalaffectedbytheoilspillorinvoketheanimal
identificationprocessinstand-alonemode.Choosingtoreportananimalwillleadtheuserthroughtakinga
photograph,invokingtheanimalidentificationprocessandsendingtheincidentreportviaemail.
•Android camera application is invoked
•Global Positioning System (GPS) coordinates are obtained
•Animal identification process is invoked
•Photograph, GPS coordinates and preliminary identification are recorded and included in email
•Email is sent to collection point
TheDisasterReportingApplicationforCitizen
Scientists(DRACS)consistsofMobileComputing
andtheDecisionTreeCodeGenerator.
Future Work
In the future, the functionality of the project can be enhanced in the following ways:
•The smart phone application can be enhanced to identify more affected animals and plants
•The entire application can be made extensible, rather than just the animal identification process
•The results can be sent to a cloud-based database for collection rather than to a central email account
•Reports can be generated from the database for specific requests from researchers
•The application code, while functional, is not perfect. It could be made more efficient (streamlining code and combining similar
functionality)
•The screen graphics were made specifically for the HTC EvoAndroid phone. They can be generalized for other devices
•Testing alternative implementations of the application with other DTCG generated binary decision trees
•Developing a new more streamlined graphical user interface that can make the application more intuitive
•Bandwidth testing with multiple phones simultaneously
Thissegmentshows
acodesnippetfrom
turtlescreen
Theprimarygoalsofthisprojectwereachieved.However,duetotimeconstraintsandexperiencelevel,allenhancementstothebasic
functionalitywerenotimplemented.Thereareseveralopportunitiesforfutureworkthatcanbeconsidered.Theseenhancementscanbe
implementedindividuallyorasagroup.
This segment shows code
to initiate the initial screen
displayed to the user.
Thissegmentillustrates
thecodeusedtoinvoke
thedevicecamera.
ThissampleshowseXtensibleMarkup
Language(XML)codeforTurtle
ScreenLayout.
Cleaning Up the Oil Spill
Software Excerpts
Thefinalversionoftheapplicationachievedthegoalsoftheproject:createanAndroidapplicationthat“citizenscientists”canusetoreport
endangeredanimalsfoundinjuredordeadasaresultoftheGulfOilSpillof2010.GPSinformation,dateandtimestamp,preliminary
animalidentificationandaphotographaregatheredandsentviaemailtoacentralrepository.Additionally,theDecisionTreeCode
Generator(DTCG)wascreatedasaseparateapplicationthatbiologists,withlittlecomputerexperience,canuseontheirdesktopcomputer
tocreatetheseriesofquestionsthatisusedintheanimalidentificationportionofthemobilecomputingapplication.
Theresearchdoneinthisprojecthasshownthatthedecisiontreebasedprocessisauser-friendlymethodofanimalidentification.Withthe
DTCG’sautomaticJavasourcegenerationcapability,afocusonwritingcodeisdiminished,andresearchersareabletoquicklyupdatethe
animalidentificationportionoftheapplication.TheDTCGwaswrittentoallowresearcherstosavechangesandbuildthedecisiontree
acrossmultiplesessions.Updatesarewrittentoafilewhentheusersavesthedata.ExistingentriesareloadedintotheDTCGwhenthe
useropensafile,allowingeditsandfurtherupdatestobemade.Thisenablesrapiddeploymentofsimilarapplicationstoreporteffectsof
otherecologicaldisasters.
Results
ThisexcerptshowstheAndroid
manifest.Themanifestcontrols
permissionsandallowsactivitiestobe
initiatedintheAndroidapplication.
Graphical representation of the Binary Decision Tree used in the animal identification program.
The Android application can be quickly updated and rapidly deployed
to report effects of other ecological disasters, such as the recent
mudslides in Brazil.
Theinitialgoalsofthisprojecthavebeenachieved.However,thereismuchmorethatcanbedonetoenhanceandenrichtheexisting
applicationandassociatedcodegenerationprogram.