Closed giovanniscardoni closed 8 years ago
Dear sir/madam I would like to do this project give some instructions to me
Hi! Welcome to GSoC! the Centiscape algorithm finds all the paths from node A to all the nodes. Then all the paths from node B to all the nodes. Then from C to all the nodes, and so on....
We can launch one thread for each node (up to the number of processors) and parallelize the single nodes sp computation.
Once we have all the SP between all the pairs of nodes we calculate the centralities. Then one thread for each centrality will be good.
Please let me know which information you need!
I suggest you to apply for at least two projects, since usually we have more good application for the same project!
good luck!
2016-03-10 3:47 GMT+01:00 shivarasan notifications@github.com:
Dear sir/madam I would like to do this project give some instructions to me
— Reply to this email directly or view it on GitHub https://github.com/nrnb/GoogleSummerOfCode/issues/55#issuecomment-194634074 .
Giovanni Scardoni The Center for BioMedical Computing (CBMC) www.cbmc.it/~scardonig/ University of Verona Strada le Grazie, 15 -37134 Verona -Italy
Try these Cytoscape apps! CentiScaPe: http://www.cbmc.it/~scardonig/centiscape/centiscape.php Interference: http://www.cbmc.it/~scardonig/interference/Interference.php
Chosen as GSoC 2016 project.
Background
CentiScaPe is a Cytoscape app that allows, by using a very plain interface, to compute different network centrality parameters in single and in multiple networks at the same time. It allows to plot the results by using real and normalized values in different plots. Several centralities are available: Degree, Average Shortest Path, Eccentricity, Closeness, Betweenness, Centroid, Stress, Radiality, Eigenvector, Edge Betweenness, Bridging Centrality. Each one could be computed for directed and undirected networks; CentiScaPe gives the possibility to assign a weight to the edges and permits to assign a weight to each node by using an attribute.
Goal
Currently CentiScaPe doesn’t support the multithread computation. The most of the centralities algorithms are suitable to be parallelized. This will consistently improve the performance of the App. This project requires a very good skill in Java and multithread programming. You should be able to go deeply in the core of the CentiScaPe code, write a multithread version of the Dijkstra algorithm which is the base of the most centralities computation.
Difficulty level 3:
Prior experience with Cytoscape, CentiScaPe or multithreading in Java is required.
Technology and Skills
Cytoscape, CentiScaPe, Java
Potential Mentors
Giovanni Scardoni (CBMC, University of Verona), Faizaan Shaik
Contact
cytoscape-discuss@googlegroups.com, giovanni.scardoni@gmail.com