GSoC 2015 Sarthak Agarwal - pgRouting/pgrouting GitHub Wiki

Biography

  • Name: Sarthak Agarwal
  • Country: India
  • School: International Institute Of Information Technology- Hyderabad
  • Degree: B.Tech in CSE and MS by Research in CSE
  • Email : [email protected] , [email protected]
  • Mentors: Vicky Vergara, Daniel Kastl

GSoC project

My Status Reports

Report 12

My initial plan:

  • Read the documentation manual
  • Start Documenting the code
  • Validate the documentationw

What did i do this week?

  • Pull the current code and stated documenting it.
  • Start reading doxygen manual for documentation.
  • Documenting was done using Doxygen and every .cpp and .h were separatly documented and pushed to my forklink
  • Fix some branching issues

What will I be working on next week?

  • Wrap up the work and discuss future strategy with the mentor

Did I meet with any stumbling blocks?

  • Nope

Report 11

My initial plan:

  • Clean the code
  • Read the documentation manual
  • Start the documentation

What did i do this week?

  • Pull the current code and stated cleaning it.
  • Cleaning was done using cpplint.py and every .cpp and .h were separatly branched out and merged
  • Start reading doxygen manual for documentation.
  • Fix some branching issues

What will I be working on next week?

  • Work on documenting the code

Did I meet with any stumbling blocks?

  • Nope

Report 10

My initial plan:

  • Work on existing task.
  • Work on issues on the page.
  • Work on other tasks as instructed by the mentor.

What did i do this week?

  • Compiled and merged the code on master branch.
  • Read the task given by mentor on cost column bug.link
  • Read the code and marked all possible places which could have caused the bug.
  • Tried working on it and ask my doubts.
  • Coded and merged to the upstream branch.

What will I be working on next week?

  • I have got chicken pox so I might not able to work a lot , but I will work on the same task.

Did I meet with any stumbling blocks?

  • Yes, I am diagnosed with chicken pox so couldnt work much this week, The infection is travelling down my throat, so the condition could get worsen this week

Report 9

My initial plan:

  • Merge the code with the master branch
  • Read and understand the tasks by the mentor.
  • Complete the tasks and pass the evaluation

What did i do this week?

  • Compiled and merged the code on master branch.
  • Read the documentation of boost.geomtery.
  • Read the task given by my mentor
  • Tried working on it and ask my doubts

What will I be working on next week?

  • Work on existing task.
  • Work on issues on the page.
  • Work on other tasks as instructed by the mentor.

Did I meet with any stumbling blocks?

  • Yes, the communication channel had some issues due to which there was some misunderstanding which is resolved now.

Report 7 8

My initial plan:

  • Much better wiki for tags, creating tables for each profile
  • add issue on issues page regarding cordinate system.
  • Clean the gsoc challenge code
  • Meeting with the mentor
  • Sync the code with the main repo.
  • Integrate boost.geometry within the code.
  • Comment on exsisitng issues.

What did i do this week?

  • Cleaned the code for gsoc-challenge and mentors
  • Added issue on [github] (https://github.com/pgRouting/osm2pgrouting/issues/70)
  • Read the osm tags wiki page and Lua config files for various profiles.
  • Prepared a table of tags and their value for different profiles
  • Added support for boost.geometry at places required in the code.
  • Compiled and pushed the code but there were issues merging with the main repo.
  • Read github tutorials and tried rebasing the code upstream.
  • Completed 7 tasks as instructed by the mentor and tried pushing the code again.
  • Failure and tried cloning the code again
  • Clone the code again and re-did the tasks.
  • Read and commented on other issues.
  • Pushed the final code and all branches are upto date now.
  • Constant meeting with the mentor on mails,skype and gitter.

What will I be working on next week?

  • Code cleaning
  • Work on current issues.
  • Mail boost mailing list for coordinate support.
  • As instructed by the mentor

Did I meet with any stumbling blocks?

  • I had problem with github for which my mentor helped me out.

Report 6

My initial plan:

  • Complete the wiki filling task.
  • Study more on boost.geomtery and start coding it.
  • Complete the mid term evaluation quiz.
  • complete the gsoc challenge.

What did i do this week?

  • Compiled and Uploaded notes of prog_options on osm2pgRoting wiki.
  • Read the documentation of boost.geomtery.
  • Read the whole code base of osm2pgrouting and sorted where boost.geometry can be applied.
  • Prepared initially wiki pages for OSM TAGS
  • My term evaluation quiz for 2 days.
  • Gsoc-challenge code for program options coded.

What will I be working on next week?

  • better wiki for tags
  • add issue on issues page.

Did I meet with any stumbling blocks?

  • No, not this week

Report 5

My initial plan:

  • Complete the code for program options
  • Merge the code with the existing code.
  • Compile the code
  • Meeting with the mentor
  • Complete the work on wiki

What did i do this week?

  • Completed the code for prog_options as per requirments.
  • Changed the whole code to remove taking options from config file.link
  • divided the code into different modules and divided the options into different groups.link
  • Coded the make file to compile the code.link
  • Compiled the code and pushed it to the repo.link
  • Studied the whole code base of osm2pgRouting to understand the scope of boost.geometry in it.
  • Tried to understand what each file does.
  • studied about osm tags. prepared notes.
  • studied about boost.geometry
  • Meeting with the mentor 4 times this week each of 4 hours.

What will I be working on next week?

  • Complete the wiki filling task.
  • Study more on boost.geomtery and start coding it

Did I meet with any stumbling blocks?

  • I couldn't find any file in the code base of osm2pgRouting where we can include boost.geomtery.
  • I had issues compiling with Cmake, but my mentor helped me out

Report 4

My initial plan:

  • To understand how boost works.
  • Meeting with the mentor
  • To work on issues created on osm2pgrouting repo about program_options.
  • Understanding the osm2pgRouting architecture.
  • Work on wiki

What did i do this week?

What will I be working on next week?

  • start filling the wiki about osm tagsfocusing on the tags osrm uses here
  • Yet to be decided

Did I meet with any stumbling blocks?

  • Not as of now, some of them were posted as issue

Report 3

My initial plan:

  • To understand how boost works.
  • Fork osm2pgrouting repo.
  • To work on issues created on osm2pgrouting repo.
  • Understanding the osm2pgRouting architecture.

What did i do this week?

  • I was busy this week with FOSS4G India conference so contribute much to GSOC
  • Here is the abstract of the paper presented at the conference : With the increased shift towards GeoSpatial Web Services on both the Web and mobile platforms especially in the user-centric services, there is a need to improve the query response time. This paper attempt to evaluate the performance of an existing NoSQL database and SQL database with respect to LineIntersection problem across a range of databases. SQL databases face scalability and agility challenges and fail to take the advantage of the cheap memory and processing power available these days. While NoSQL databases can handle the rise in the data stored and frequency at which it is accessed and processed which are essential features needed in a multiple geospatial data where we do not need a fixed schema(geometry) and fixed data size. For this comparative study, MongoDB is the NoSQL engine while the PostGIS is the chosen SQL engine. The dataset consisted of two independent layers of horizontal lines and vertical lines with incremental lengths and their size varied from ten lines to ten thousand lines in each layer. All the data in the analysis was processed using In-memory and no secondary memory was used. Initial results suggest that MongoDB performs better by an average factor of 25x which increases exponentially as the data size increases in both indexed and non-indexed operations. Given these results NoSQL databases may be better stated for simultaneous multiple-user query systems including Web-GIS and mobile-GIS. Further studies are required to understand the full potential of NoSQL databases across various geometries and spatial query types.

What will I be working on next week?

  • start filling the wiki about osm tagsfocusing on the tags osrm uses here
  • Meeting with mentor on monday, tuesday and wednesday
  • start to code the program::options
  • start filling the wiki about osm tagsfocusing on the tags osrm uses here
  • Thursday and Friday work on the wiki

Did I meet with any stumbling blocks?

  • Boost is new to me so I have implementation doubts which I will ask my mentor after full research.

Report 2

My initial plan:

  • To understand how boost works.
  • Fork osm2pgrouting repo.
  • To work on issues created on osm2pgrouting repo.
  • Understanding the osm2pgRouting architecture.

What did i do this week?

  • 90 mins meeting with the mentor discussing on implementation details and issues already raised
  • Forked the osm2pgrouting repo and read the code.
  • Study the current implementation of osm2pgrouting tool.
  • Study this link on boost library and implemented some examples although I am not very clear how they are working
  • Worked on issue #42 and #43 and other related issues and they will be resolved by next week.

What will I be working on next week?

  • I am presenting a paper at FOSS4G India conference, So I will be occupied in the conference for some time.
  • start filling the wiki about osm tagsfocusing on the tags osrm uses here

Did I meet with any stumbling blocks?

  • Boost is new to me so I have implementation doubts which I will ask my mentor after full research.

Report 1

My initial plan:

  • To install everything perfectly.
  • To Study the problem carefully.
  • Understanding the pgRouting architecture.

What did i do this week?

  • Setup a personal wiki or blog for weekly updates and project discussions.
  • Study the current implementation of osm2pgrouting tool.
  • Research on different implementation of tool.OSRM have a similar tool so read their wiki pages to understand the implementation

What will I be working on next week?

  • Set up a OSRM server to run the application.
  • Study in detail their process of EXTRACTING data from OSM

Did I meet with any stumbling blocks?

  • No, not until now .