SlideShare a Scribd company logo
Complex Networks Class Project 
! 
Location Correlation in Human Mobility 
! 
Marcello Tomasini 
Bio-Complex Lab 
Department of Computer Sciences 
Florida Tech
Twitter Miner Implementation 
The application which mine Twitter is developed in Python and uses the 
following libraries: 
• twitter (Python Twitter Tools): data is collected through Twitter stream 
API and appended to local buffer 
• pymongo (MongoDB): data is stored on the Biocomplex Lab MongoDB 
instance 
• logging: Python logging facility is used to keep track of code exceptions, 
and non-standard twitter messages in the stream (warning, limit, 
disconnect). Mostly for debugging. Exceptions don’t stop program 
execution (mostly), but try to recover instead, in order to avoid manual 
intervention 
• collections: collections.deque is used for a thread-safe high-performance 
local buffering in order to reduce Network IO and overhead on BioComplex 
Lab MongoDB server 
• threading: data is pushed to BioComplex Lab MongoDB instance by a 
separate thread. Thread pop out a fixed amount of elements from the 
deque and try the insert operation. If insert operation fails, revert back the 
transition. No tweets lost. Python GIL is not an issue here since the thread 
is IO bounded 
! 
Code runs on Amazon EC2 t2.micro instance for maximum reliability (SLA 
99.95%). 
Code performance: easily handle ~8Mbps twitter stream (worldwide stream 
of geotagged tweets) corresponding to ~2000 tweet/s.
Network Builder Implementation 
The application which build the network is developed in Python and uses the 
following libraries: 
• pymongo (MongoDB): filter tweets with a bounding box (due to a Twitter 
bug) and retrieve data from BioComplex Lab MongoDB instance. Query 
projections help to reduce data transferred over network 
• scikit-learn: provides functions to compute k-means clustering of 
coordinate points. Clusters will represent locations 
• numpy: provides fast arrays and matrices data structures 
• matplotlib.pyplot: plot graphs 
• igraph: create and export the network structure 
! 
Clustering need a distance metric; coordinates are not in an euclidean space, 
but in a spherical space, thus to compute the great-circle distance [1] 
between two points we could use haversine formula [2] 
! 
However, most implementations use a distance matrix when supplied with a 
non standard metric, which requires O(n2) space. Given the size of the 
dataset that’s impractical, thus we use Mercator projection [3] to project 
coordinates in an euclidean space and then use standard k-means algorithm. 
!!!!! 
[1] http://en.wikipedia.org/wiki/Great-circle_distance 
[2] http://en.wikipedia.org/wiki/Haversine_formula 
[3] http://en.wikipedia.org/wiki/Mercator_projection

More Related Content

What's hot

An Experiment-Driven Performance Model of Stream Processing Operators in Fog ...
An Experiment-Driven Performance Model of Stream Processing Operators in Fog ...An Experiment-Driven Performance Model of Stream Processing Operators in Fog ...
An Experiment-Driven Performance Model of Stream Processing Operators in Fog ...
FogGuru MSCA Project
 
Master-Thesis-Matlab-Projects
Master-Thesis-Matlab-ProjectsMaster-Thesis-Matlab-Projects
Master-Thesis-Matlab-Projects
Phdtopiccom
 
MATLAB Thesis for Students
MATLAB Thesis for StudentsMATLAB Thesis for Students
MATLAB Thesis for Students
Phdtopiccom
 
Matlab Projects for Electrical Students
Matlab Projects for Electrical StudentsMatlab Projects for Electrical Students
Matlab Projects for Electrical Students
Phdtopiccom
 
Matlab Thesis for Phd Students
Matlab Thesis for Phd StudentsMatlab Thesis for Phd Students
Matlab Thesis for Phd Students
Phdtopiccom
 
MATLAB Projects for Master Thesis Students
MATLAB Projects for Master Thesis StudentsMATLAB Projects for Master Thesis Students
MATLAB Projects for Master Thesis Students
Phdtopiccom
 
MATLAB Project Topics
MATLAB Project TopicsMATLAB Project Topics
MATLAB Project Topics
Phdtopiccom
 
Matlab Simulink Electrical Projects
Matlab Simulink Electrical ProjectsMatlab Simulink Electrical Projects
Matlab Simulink Electrical Projects
Phdtopiccom
 
Postgraduate Projects in Scilab
Postgraduate Projects in ScilabPostgraduate Projects in Scilab
Postgraduate Projects in Scilab
Phdtopiccom
 
A NOVEL PROTOTYPE MODEL FOR SWARM MOBILE ROBOT NAVIGATION BASED FUZZY LOGIC C...
A NOVEL PROTOTYPE MODEL FOR SWARM MOBILE ROBOT NAVIGATION BASED FUZZY LOGIC C...A NOVEL PROTOTYPE MODEL FOR SWARM MOBILE ROBOT NAVIGATION BASED FUZZY LOGIC C...
A NOVEL PROTOTYPE MODEL FOR SWARM MOBILE ROBOT NAVIGATION BASED FUZZY LOGIC C...
AIRCC Publishing Corporation
 
Tutorial Nequick
Tutorial NequickTutorial Nequick
Tutorial Nequick
sfu-kras
 
Load Balancing Projects for Master Thesis Students
Load Balancing Projects for Master Thesis StudentsLoad Balancing Projects for Master Thesis Students
Load Balancing Projects for Master Thesis Students
Phdtopiccom
 
MATLAB Thesis Projects
MATLAB Thesis ProjectsMATLAB Thesis Projects
MATLAB Thesis Projects
Phdtopiccom
 
electic mashinary fundamentals 5th edition Lab tasks stack
electic mashinary fundamentals 5th edition Lab tasks stackelectic mashinary fundamentals 5th edition Lab tasks stack
electic mashinary fundamentals 5th edition Lab tasks stack
Muhammad Nasir
 
Simulink Projects For EEE
Simulink Projects For EEESimulink Projects For EEE
Simulink Projects For EEE
Phdtopiccom
 
Simulink Projects in Matlab
Simulink Projects in MatlabSimulink Projects in Matlab
Simulink Projects in Matlab
Phdtopiccom
 
Simulation Projects in Matlab
Simulation Projects in MatlabSimulation Projects in Matlab
Simulation Projects in Matlab
Phdtopiccom
 
Parallel Left Ventricle Simulation Using the FEniCS Framework
Parallel Left Ventricle Simulation Using the FEniCS FrameworkParallel Left Ventricle Simulation Using the FEniCS Framework
Parallel Left Ventricle Simulation Using the FEniCS Framework
Ural-PDC
 
Matlab IEEE Projects
Matlab IEEE ProjectsMatlab IEEE Projects
Matlab IEEE Projects
Phdtopiccom
 
Matlab Electrical Master Thesis
Matlab Electrical Master ThesisMatlab Electrical Master Thesis
Matlab Electrical Master Thesis
Phdtopiccom
 

What's hot (20)

An Experiment-Driven Performance Model of Stream Processing Operators in Fog ...
An Experiment-Driven Performance Model of Stream Processing Operators in Fog ...An Experiment-Driven Performance Model of Stream Processing Operators in Fog ...
An Experiment-Driven Performance Model of Stream Processing Operators in Fog ...
 
Master-Thesis-Matlab-Projects
Master-Thesis-Matlab-ProjectsMaster-Thesis-Matlab-Projects
Master-Thesis-Matlab-Projects
 
MATLAB Thesis for Students
MATLAB Thesis for StudentsMATLAB Thesis for Students
MATLAB Thesis for Students
 
Matlab Projects for Electrical Students
Matlab Projects for Electrical StudentsMatlab Projects for Electrical Students
Matlab Projects for Electrical Students
 
Matlab Thesis for Phd Students
Matlab Thesis for Phd StudentsMatlab Thesis for Phd Students
Matlab Thesis for Phd Students
 
MATLAB Projects for Master Thesis Students
MATLAB Projects for Master Thesis StudentsMATLAB Projects for Master Thesis Students
MATLAB Projects for Master Thesis Students
 
MATLAB Project Topics
MATLAB Project TopicsMATLAB Project Topics
MATLAB Project Topics
 
Matlab Simulink Electrical Projects
Matlab Simulink Electrical ProjectsMatlab Simulink Electrical Projects
Matlab Simulink Electrical Projects
 
Postgraduate Projects in Scilab
Postgraduate Projects in ScilabPostgraduate Projects in Scilab
Postgraduate Projects in Scilab
 
A NOVEL PROTOTYPE MODEL FOR SWARM MOBILE ROBOT NAVIGATION BASED FUZZY LOGIC C...
A NOVEL PROTOTYPE MODEL FOR SWARM MOBILE ROBOT NAVIGATION BASED FUZZY LOGIC C...A NOVEL PROTOTYPE MODEL FOR SWARM MOBILE ROBOT NAVIGATION BASED FUZZY LOGIC C...
A NOVEL PROTOTYPE MODEL FOR SWARM MOBILE ROBOT NAVIGATION BASED FUZZY LOGIC C...
 
Tutorial Nequick
Tutorial NequickTutorial Nequick
Tutorial Nequick
 
Load Balancing Projects for Master Thesis Students
Load Balancing Projects for Master Thesis StudentsLoad Balancing Projects for Master Thesis Students
Load Balancing Projects for Master Thesis Students
 
MATLAB Thesis Projects
MATLAB Thesis ProjectsMATLAB Thesis Projects
MATLAB Thesis Projects
 
electic mashinary fundamentals 5th edition Lab tasks stack
electic mashinary fundamentals 5th edition Lab tasks stackelectic mashinary fundamentals 5th edition Lab tasks stack
electic mashinary fundamentals 5th edition Lab tasks stack
 
Simulink Projects For EEE
Simulink Projects For EEESimulink Projects For EEE
Simulink Projects For EEE
 
Simulink Projects in Matlab
Simulink Projects in MatlabSimulink Projects in Matlab
Simulink Projects in Matlab
 
Simulation Projects in Matlab
Simulation Projects in MatlabSimulation Projects in Matlab
Simulation Projects in Matlab
 
Parallel Left Ventricle Simulation Using the FEniCS Framework
Parallel Left Ventricle Simulation Using the FEniCS FrameworkParallel Left Ventricle Simulation Using the FEniCS Framework
Parallel Left Ventricle Simulation Using the FEniCS Framework
 
Matlab IEEE Projects
Matlab IEEE ProjectsMatlab IEEE Projects
Matlab IEEE Projects
 
Matlab Electrical Master Thesis
Matlab Electrical Master ThesisMatlab Electrical Master Thesis
Matlab Electrical Master Thesis
 

Similar to CSE5656 Complex Networks - Location Correlation in Human Mobility, Implementation

"Source Code Abstracts Classification Using CNN", Vadim Markovtsev, Lead Soft...
"Source Code Abstracts Classification Using CNN", Vadim Markovtsev, Lead Soft..."Source Code Abstracts Classification Using CNN", Vadim Markovtsev, Lead Soft...
"Source Code Abstracts Classification Using CNN", Vadim Markovtsev, Lead Soft...
Dataconomy Media
 
Python in the real world : from everyday applications to advanced robotics
Python in the real world : from everyday applications to advanced roboticsPython in the real world : from everyday applications to advanced robotics
Python in the real world : from everyday applications to advanced robotics
Jivitesh Dhaliwal
 
BISSA: Empowering Web gadget Communication with Tuple Spaces
BISSA: Empowering Web gadget Communication with Tuple SpacesBISSA: Empowering Web gadget Communication with Tuple Spaces
BISSA: Empowering Web gadget Communication with Tuple Spaces
Srinath Perera
 
Websocket 101 in Python
Websocket 101 in PythonWebsocket 101 in Python
Websocket 101 in Python
Juti Noppornpitak
 
MongoDB at MapMyFitness from a DevOps Perspective
MongoDB at MapMyFitness from a DevOps PerspectiveMongoDB at MapMyFitness from a DevOps Perspective
MongoDB at MapMyFitness from a DevOps Perspective
MongoDB
 
Pysense: wireless sensor computing in Python?
Pysense: wireless sensor computing in Python?Pysense: wireless sensor computing in Python?
Pysense: wireless sensor computing in Python?
Davide Carboni
 
An assessment of internet of things protocols for constrain apps
An assessment of internet of things protocols for constrain appsAn assessment of internet of things protocols for constrain apps
An assessment of internet of things protocols for constrain apps
Pokala Sai
 
Concurrency and parallel in .net
Concurrency and parallel in .netConcurrency and parallel in .net
Concurrency and parallel in .net
Mohammad Hossein Karami
 
Workshop slides
Workshop slidesWorkshop slides
Workshop slides
Rishabh Jain
 
What’s eating python performance
What’s eating python performanceWhat’s eating python performance
What’s eating python performance
Piotr Przymus
 
B.Eng-Final Year Project interim-report
B.Eng-Final Year Project interim-reportB.Eng-Final Year Project interim-report
B.Eng-Final Year Project interim-report
Akash Rajguru
 
An Introduction to OMNeT++ 6.0
An Introduction to OMNeT++ 6.0An Introduction to OMNeT++ 6.0
An Introduction to OMNeT++ 6.0
Alpen-Adria-Universität
 
MongoDB at MapMyFitness
MongoDB at MapMyFitnessMongoDB at MapMyFitness
MongoDB at MapMyFitness
MapMyFitness
 
The Onward Journey: Porting Twisted to Python 3
The Onward Journey: Porting Twisted to Python 3The Onward Journey: Porting Twisted to Python 3
The Onward Journey: Porting Twisted to Python 3
Craig Rodrigues
 
An Introduction to OMNeT++ 5.4
An Introduction to OMNeT++ 5.4An Introduction to OMNeT++ 5.4
An Introduction to OMNeT++ 5.4
Alpen-Adria-Universität
 
Tos tutorial
Tos tutorialTos tutorial
Tos tutorial
manikainth
 
Dc ch02 : protocol architecture
Dc ch02 : protocol architectureDc ch02 : protocol architecture
Dc ch02 : protocol architecture
Syaiful Ahdan
 
6. TinyOS_2.pdf
6. TinyOS_2.pdf6. TinyOS_2.pdf
6. TinyOS_2.pdf
Jesus Cordero
 
IoT meets Big Data
IoT meets Big DataIoT meets Big Data
IoT meets Big Data
ratthaslip ranokphanuwat
 
Software architacture recovery
Software architacture recoverySoftware architacture recovery
Software architacture recovery
Imdad Ul Haq
 

Similar to CSE5656 Complex Networks - Location Correlation in Human Mobility, Implementation (20)

"Source Code Abstracts Classification Using CNN", Vadim Markovtsev, Lead Soft...
"Source Code Abstracts Classification Using CNN", Vadim Markovtsev, Lead Soft..."Source Code Abstracts Classification Using CNN", Vadim Markovtsev, Lead Soft...
"Source Code Abstracts Classification Using CNN", Vadim Markovtsev, Lead Soft...
 
Python in the real world : from everyday applications to advanced robotics
Python in the real world : from everyday applications to advanced roboticsPython in the real world : from everyday applications to advanced robotics
Python in the real world : from everyday applications to advanced robotics
 
BISSA: Empowering Web gadget Communication with Tuple Spaces
BISSA: Empowering Web gadget Communication with Tuple SpacesBISSA: Empowering Web gadget Communication with Tuple Spaces
BISSA: Empowering Web gadget Communication with Tuple Spaces
 
Websocket 101 in Python
Websocket 101 in PythonWebsocket 101 in Python
Websocket 101 in Python
 
MongoDB at MapMyFitness from a DevOps Perspective
MongoDB at MapMyFitness from a DevOps PerspectiveMongoDB at MapMyFitness from a DevOps Perspective
MongoDB at MapMyFitness from a DevOps Perspective
 
Pysense: wireless sensor computing in Python?
Pysense: wireless sensor computing in Python?Pysense: wireless sensor computing in Python?
Pysense: wireless sensor computing in Python?
 
An assessment of internet of things protocols for constrain apps
An assessment of internet of things protocols for constrain appsAn assessment of internet of things protocols for constrain apps
An assessment of internet of things protocols for constrain apps
 
Concurrency and parallel in .net
Concurrency and parallel in .netConcurrency and parallel in .net
Concurrency and parallel in .net
 
Workshop slides
Workshop slidesWorkshop slides
Workshop slides
 
What’s eating python performance
What’s eating python performanceWhat’s eating python performance
What’s eating python performance
 
B.Eng-Final Year Project interim-report
B.Eng-Final Year Project interim-reportB.Eng-Final Year Project interim-report
B.Eng-Final Year Project interim-report
 
An Introduction to OMNeT++ 6.0
An Introduction to OMNeT++ 6.0An Introduction to OMNeT++ 6.0
An Introduction to OMNeT++ 6.0
 
MongoDB at MapMyFitness
MongoDB at MapMyFitnessMongoDB at MapMyFitness
MongoDB at MapMyFitness
 
The Onward Journey: Porting Twisted to Python 3
The Onward Journey: Porting Twisted to Python 3The Onward Journey: Porting Twisted to Python 3
The Onward Journey: Porting Twisted to Python 3
 
An Introduction to OMNeT++ 5.4
An Introduction to OMNeT++ 5.4An Introduction to OMNeT++ 5.4
An Introduction to OMNeT++ 5.4
 
Tos tutorial
Tos tutorialTos tutorial
Tos tutorial
 
Dc ch02 : protocol architecture
Dc ch02 : protocol architectureDc ch02 : protocol architecture
Dc ch02 : protocol architecture
 
6. TinyOS_2.pdf
6. TinyOS_2.pdf6. TinyOS_2.pdf
6. TinyOS_2.pdf
 
IoT meets Big Data
IoT meets Big DataIoT meets Big Data
IoT meets Big Data
 
Software architacture recovery
Software architacture recoverySoftware architacture recovery
Software architacture recovery
 

Recently uploaded

一比一原版南十字星大学毕业证(SCU毕业证书)学历如何办理
一比一原版南十字星大学毕业证(SCU毕业证书)学历如何办理一比一原版南十字星大学毕业证(SCU毕业证书)学历如何办理
一比一原版南十字星大学毕业证(SCU毕业证书)学历如何办理
slg6lamcq
 
Build applications with generative AI on Google Cloud
Build applications with generative AI on Google CloudBuild applications with generative AI on Google Cloud
Build applications with generative AI on Google Cloud
Márton Kodok
 
Orchestrating the Future: Navigating Today's Data Workflow Challenges with Ai...
Orchestrating the Future: Navigating Today's Data Workflow Challenges with Ai...Orchestrating the Future: Navigating Today's Data Workflow Challenges with Ai...
Orchestrating the Future: Navigating Today's Data Workflow Challenges with Ai...
Kaxil Naik
 
一比一原版(UO毕业证)渥太华大学毕业证如何办理
一比一原版(UO毕业证)渥太华大学毕业证如何办理一比一原版(UO毕业证)渥太华大学毕业证如何办理
一比一原版(UO毕业证)渥太华大学毕业证如何办理
bmucuha
 
Beyond the Basics of A/B Tests: Highly Innovative Experimentation Tactics You...
Beyond the Basics of A/B Tests: Highly Innovative Experimentation Tactics You...Beyond the Basics of A/B Tests: Highly Innovative Experimentation Tactics You...
Beyond the Basics of A/B Tests: Highly Innovative Experimentation Tactics You...
Aggregage
 
Monthly Management report for the Month of May 2024
Monthly Management report for the Month of May 2024Monthly Management report for the Month of May 2024
Monthly Management report for the Month of May 2024
facilitymanager11
 
一比一原版兰加拉学院毕业证(Langara毕业证书)学历如何办理
一比一原版兰加拉学院毕业证(Langara毕业证书)学历如何办理一比一原版兰加拉学院毕业证(Langara毕业证书)学历如何办理
一比一原版兰加拉学院毕业证(Langara毕业证书)学历如何办理
hyfjgavov
 
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
ihavuls
 
一比一原版(Unimelb毕业证书)墨尔本大学毕业证如何办理
一比一原版(Unimelb毕业证书)墨尔本大学毕业证如何办理一比一原版(Unimelb毕业证书)墨尔本大学毕业证如何办理
一比一原版(Unimelb毕业证书)墨尔本大学毕业证如何办理
xclpvhuk
 
原版一比一弗林德斯大学毕业证(Flinders毕业证书)如何办理
原版一比一弗林德斯大学毕业证(Flinders毕业证书)如何办理原版一比一弗林德斯大学毕业证(Flinders毕业证书)如何办理
原版一比一弗林德斯大学毕业证(Flinders毕业证书)如何办理
a9qfiubqu
 
原版一比一多伦多大学毕业证(UofT毕业证书)如何办理
原版一比一多伦多大学毕业证(UofT毕业证书)如何办理原版一比一多伦多大学毕业证(UofT毕业证书)如何办理
原版一比一多伦多大学毕业证(UofT毕业证书)如何办理
mkkikqvo
 
一比一原版英属哥伦比亚大学毕业证(UBC毕业证书)学历如何办理
一比一原版英属哥伦比亚大学毕业证(UBC毕业证书)学历如何办理一比一原版英属哥伦比亚大学毕业证(UBC毕业证书)学历如何办理
一比一原版英属哥伦比亚大学毕业证(UBC毕业证书)学历如何办理
z6osjkqvd
 
一比一原版(harvard毕业证书)哈佛大学毕业证如何办理
一比一原版(harvard毕业证书)哈佛大学毕业证如何办理一比一原版(harvard毕业证书)哈佛大学毕业证如何办理
一比一原版(harvard毕业证书)哈佛大学毕业证如何办理
taqyea
 
一比一原版(CU毕业证)卡尔顿大学毕业证如何办理
一比一原版(CU毕业证)卡尔顿大学毕业证如何办理一比一原版(CU毕业证)卡尔顿大学毕业证如何办理
一比一原版(CU毕业证)卡尔顿大学毕业证如何办理
bmucuha
 
在线办理(英国UCA毕业证书)创意艺术大学毕业证在读证明一模一样
在线办理(英国UCA毕业证书)创意艺术大学毕业证在读证明一模一样在线办理(英国UCA毕业证书)创意艺术大学毕业证在读证明一模一样
在线办理(英国UCA毕业证书)创意艺术大学毕业证在读证明一模一样
v7oacc3l
 
4th Modern Marketing Reckoner by MMA Global India & Group M: 60+ experts on W...
4th Modern Marketing Reckoner by MMA Global India & Group M: 60+ experts on W...4th Modern Marketing Reckoner by MMA Global India & Group M: 60+ experts on W...
4th Modern Marketing Reckoner by MMA Global India & Group M: 60+ experts on W...
Social Samosa
 
A presentation that explain the Power BI Licensing
A presentation that explain the Power BI LicensingA presentation that explain the Power BI Licensing
A presentation that explain the Power BI Licensing
AlessioFois2
 
06-12-2024-BudapestDataForum-BuildingReal-timePipelineswithFLaNK AIM
06-12-2024-BudapestDataForum-BuildingReal-timePipelineswithFLaNK AIM06-12-2024-BudapestDataForum-BuildingReal-timePipelineswithFLaNK AIM
06-12-2024-BudapestDataForum-BuildingReal-timePipelineswithFLaNK AIM
Timothy Spann
 
Population Growth in Bataan: The effects of population growth around rural pl...
Population Growth in Bataan: The effects of population growth around rural pl...Population Growth in Bataan: The effects of population growth around rural pl...
Population Growth in Bataan: The effects of population growth around rural pl...
Bill641377
 
Experts live - Improving user adoption with AI
Experts live - Improving user adoption with AIExperts live - Improving user adoption with AI
Experts live - Improving user adoption with AI
jitskeb
 

Recently uploaded (20)

一比一原版南十字星大学毕业证(SCU毕业证书)学历如何办理
一比一原版南十字星大学毕业证(SCU毕业证书)学历如何办理一比一原版南十字星大学毕业证(SCU毕业证书)学历如何办理
一比一原版南十字星大学毕业证(SCU毕业证书)学历如何办理
 
Build applications with generative AI on Google Cloud
Build applications with generative AI on Google CloudBuild applications with generative AI on Google Cloud
Build applications with generative AI on Google Cloud
 
Orchestrating the Future: Navigating Today's Data Workflow Challenges with Ai...
Orchestrating the Future: Navigating Today's Data Workflow Challenges with Ai...Orchestrating the Future: Navigating Today's Data Workflow Challenges with Ai...
Orchestrating the Future: Navigating Today's Data Workflow Challenges with Ai...
 
一比一原版(UO毕业证)渥太华大学毕业证如何办理
一比一原版(UO毕业证)渥太华大学毕业证如何办理一比一原版(UO毕业证)渥太华大学毕业证如何办理
一比一原版(UO毕业证)渥太华大学毕业证如何办理
 
Beyond the Basics of A/B Tests: Highly Innovative Experimentation Tactics You...
Beyond the Basics of A/B Tests: Highly Innovative Experimentation Tactics You...Beyond the Basics of A/B Tests: Highly Innovative Experimentation Tactics You...
Beyond the Basics of A/B Tests: Highly Innovative Experimentation Tactics You...
 
Monthly Management report for the Month of May 2024
Monthly Management report for the Month of May 2024Monthly Management report for the Month of May 2024
Monthly Management report for the Month of May 2024
 
一比一原版兰加拉学院毕业证(Langara毕业证书)学历如何办理
一比一原版兰加拉学院毕业证(Langara毕业证书)学历如何办理一比一原版兰加拉学院毕业证(Langara毕业证书)学历如何办理
一比一原版兰加拉学院毕业证(Langara毕业证书)学历如何办理
 
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
 
一比一原版(Unimelb毕业证书)墨尔本大学毕业证如何办理
一比一原版(Unimelb毕业证书)墨尔本大学毕业证如何办理一比一原版(Unimelb毕业证书)墨尔本大学毕业证如何办理
一比一原版(Unimelb毕业证书)墨尔本大学毕业证如何办理
 
原版一比一弗林德斯大学毕业证(Flinders毕业证书)如何办理
原版一比一弗林德斯大学毕业证(Flinders毕业证书)如何办理原版一比一弗林德斯大学毕业证(Flinders毕业证书)如何办理
原版一比一弗林德斯大学毕业证(Flinders毕业证书)如何办理
 
原版一比一多伦多大学毕业证(UofT毕业证书)如何办理
原版一比一多伦多大学毕业证(UofT毕业证书)如何办理原版一比一多伦多大学毕业证(UofT毕业证书)如何办理
原版一比一多伦多大学毕业证(UofT毕业证书)如何办理
 
一比一原版英属哥伦比亚大学毕业证(UBC毕业证书)学历如何办理
一比一原版英属哥伦比亚大学毕业证(UBC毕业证书)学历如何办理一比一原版英属哥伦比亚大学毕业证(UBC毕业证书)学历如何办理
一比一原版英属哥伦比亚大学毕业证(UBC毕业证书)学历如何办理
 
一比一原版(harvard毕业证书)哈佛大学毕业证如何办理
一比一原版(harvard毕业证书)哈佛大学毕业证如何办理一比一原版(harvard毕业证书)哈佛大学毕业证如何办理
一比一原版(harvard毕业证书)哈佛大学毕业证如何办理
 
一比一原版(CU毕业证)卡尔顿大学毕业证如何办理
一比一原版(CU毕业证)卡尔顿大学毕业证如何办理一比一原版(CU毕业证)卡尔顿大学毕业证如何办理
一比一原版(CU毕业证)卡尔顿大学毕业证如何办理
 
在线办理(英国UCA毕业证书)创意艺术大学毕业证在读证明一模一样
在线办理(英国UCA毕业证书)创意艺术大学毕业证在读证明一模一样在线办理(英国UCA毕业证书)创意艺术大学毕业证在读证明一模一样
在线办理(英国UCA毕业证书)创意艺术大学毕业证在读证明一模一样
 
4th Modern Marketing Reckoner by MMA Global India & Group M: 60+ experts on W...
4th Modern Marketing Reckoner by MMA Global India & Group M: 60+ experts on W...4th Modern Marketing Reckoner by MMA Global India & Group M: 60+ experts on W...
4th Modern Marketing Reckoner by MMA Global India & Group M: 60+ experts on W...
 
A presentation that explain the Power BI Licensing
A presentation that explain the Power BI LicensingA presentation that explain the Power BI Licensing
A presentation that explain the Power BI Licensing
 
06-12-2024-BudapestDataForum-BuildingReal-timePipelineswithFLaNK AIM
06-12-2024-BudapestDataForum-BuildingReal-timePipelineswithFLaNK AIM06-12-2024-BudapestDataForum-BuildingReal-timePipelineswithFLaNK AIM
06-12-2024-BudapestDataForum-BuildingReal-timePipelineswithFLaNK AIM
 
Population Growth in Bataan: The effects of population growth around rural pl...
Population Growth in Bataan: The effects of population growth around rural pl...Population Growth in Bataan: The effects of population growth around rural pl...
Population Growth in Bataan: The effects of population growth around rural pl...
 
Experts live - Improving user adoption with AI
Experts live - Improving user adoption with AIExperts live - Improving user adoption with AI
Experts live - Improving user adoption with AI
 

CSE5656 Complex Networks - Location Correlation in Human Mobility, Implementation

  • 1. Complex Networks Class Project ! Location Correlation in Human Mobility ! Marcello Tomasini Bio-Complex Lab Department of Computer Sciences Florida Tech
  • 2. Twitter Miner Implementation The application which mine Twitter is developed in Python and uses the following libraries: • twitter (Python Twitter Tools): data is collected through Twitter stream API and appended to local buffer • pymongo (MongoDB): data is stored on the Biocomplex Lab MongoDB instance • logging: Python logging facility is used to keep track of code exceptions, and non-standard twitter messages in the stream (warning, limit, disconnect). Mostly for debugging. Exceptions don’t stop program execution (mostly), but try to recover instead, in order to avoid manual intervention • collections: collections.deque is used for a thread-safe high-performance local buffering in order to reduce Network IO and overhead on BioComplex Lab MongoDB server • threading: data is pushed to BioComplex Lab MongoDB instance by a separate thread. Thread pop out a fixed amount of elements from the deque and try the insert operation. If insert operation fails, revert back the transition. No tweets lost. Python GIL is not an issue here since the thread is IO bounded ! Code runs on Amazon EC2 t2.micro instance for maximum reliability (SLA 99.95%). Code performance: easily handle ~8Mbps twitter stream (worldwide stream of geotagged tweets) corresponding to ~2000 tweet/s.
  • 3. Network Builder Implementation The application which build the network is developed in Python and uses the following libraries: • pymongo (MongoDB): filter tweets with a bounding box (due to a Twitter bug) and retrieve data from BioComplex Lab MongoDB instance. Query projections help to reduce data transferred over network • scikit-learn: provides functions to compute k-means clustering of coordinate points. Clusters will represent locations • numpy: provides fast arrays and matrices data structures • matplotlib.pyplot: plot graphs • igraph: create and export the network structure ! Clustering need a distance metric; coordinates are not in an euclidean space, but in a spherical space, thus to compute the great-circle distance [1] between two points we could use haversine formula [2] ! However, most implementations use a distance matrix when supplied with a non standard metric, which requires O(n2) space. Given the size of the dataset that’s impractical, thus we use Mercator projection [3] to project coordinates in an euclidean space and then use standard k-means algorithm. !!!!! [1] http://en.wikipedia.org/wiki/Great-circle_distance [2] http://en.wikipedia.org/wiki/Haversine_formula [3] http://en.wikipedia.org/wiki/Mercator_projection