Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implementation of web services versions of clusterMaker clustering algorithms #135

Closed
scootermorris opened this issue Mar 20, 2019 · 5 comments

Comments

@scootermorris
Copy link

scootermorris commented Mar 20, 2019

Background

clusterMaker2 is one of the most popular apps for Cytoscape. It provides a large number of attribute and network clustering algorithms that may be visualized in Cytoscape, including hierarchical clustering, HOPACH, K-Means, K-Medoid, MCL, Affinity Propagation, TransCluster, etc. It also provides various dimensionality reduction algorithms such as tSNE, PCA, etc. All of these algorithms are implemented in Java and run on the desktop, which means they are limited by the memory footprint of the desktop environment.

Goal

The goal of this project is to implement a framework in clusterMaker that will allow it to utilize server-side implementations of these algorithms, and provide at least one attribute clusterer (e.g. hierarchical or PAM), one network clusterer (e.g. MCL) and one dimensionality reduction technique). The server-side implementations could also be used by other applications in the Cytoscape ecosystem. We have recently implemented a couple of server-side algorithms that can be used as examples, but they have not (yet) been tied into clusterMaker.

Difficulty Level 2

There are capabilities already available within Cytoscape to communicate with tasks running on a server. It should be moderately easy to hook up clusterMaker to utilize these.

Skills

Java (essential)
REST, Python, R, web services (nice to have)

Public Repository

https://github.com/RBVI/clusterMaker2

Potential Mentors

Scooter Morris

Contact

Scooter Morris

@soccerdroid
Copy link

Hello, I am a CS undergraduate student from Ecuador. I am interested in the project. Where can I see the current implementation of Cytoscape communication with tasks from server-side? clusterMaker will communicate directly with the server or through Cytoscape?

@scootermorris
Copy link
Author

Sorry to take so long to get back to you. The source code for clusterMaker2 is at https://github.com/RBVI/clusterMaker2. The Jobs API information is at: http://code.cytoscape.org/jenkins/job/cytoscape-3-javadoc/ws/swing-app-api/target/site/apidocs/org/cytoscape/jobs/package-summary.html

-- scooter

@tarang98
Copy link

Hi, I'm an undergraduate CS student at UBC, Canada and I'm quite interested in this project. It seems like the Jobs API link above is broken. Also where could I find the code for the server-side implementations of the clustering algorithms?

@scootermorris
Copy link
Author

scootermorris commented Mar 26, 2020 via email

@tarang98
Copy link

Hi Scooter
Thank you very much for the reply. I will be completing the above steps and then completing the proposal.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants