anshul1004 / lubymis Goto Github PK
View Code? Open in Web Editor NEWImplementation of LubyMIS algorithm to find the Maximal Independent Set in case of distributed networks
Implementation of LubyMIS algorithm to find the Maximal Independent Set in case of distributed networks
Team Members: Anshul Pardhi arp180012 Jayita Roy jxr190003 Ruchi Singh rxs180057 We have divided the project into several tasks: 1. Study LubyMIS algorithm: Anshul, Jayita, Ruchi 2. Study multithreading in Java: Anshul, Jayita, Ruchi 3. Create input file from graph: Jayita 4. Implement code to parse input file graph: Jayita 5. Implement LubyMIS algorithm: Anshul 6. Implement thread synchronization: Ruchi 7. Integration of LubyMIS algorithm with thread synchronization: Anshul, Jayita, Ruchi 8. Implement method to check if the generated MIS is correct: Anshul 9. Implement code to generate output file to store results: Anshul 10. Test the code with the same input multiple times: Ruchi 11. Create multiple graph input files to test the correctness of the implemented algorithm: Jayita 12. Test the code on new input files, and generate their corresponding output files: Anshul, Ruchi 13. Documentation (code comments, README): Anshul, Jayita, Ruchi To implement the Luby's MIS algorithm, we have created a Luby.java file. To compile and run the Luby.java code, there are following steps that need to be followed - a) The algorithm will run on csgrads1 server. b) Make sure Java 1.8 or any other higher version is installed on the machine. c) The code takes two command-line arguments i.e., input and output file names. Make sure the input file is in the same directory with the code file or make appropriate changes according to the file path in the command line argument. d) The input file contains 3 lines - 1) n, number of vertices in the graph 2) id array; a one-dimensional array of size n 3) adjacency matrix (which is a symmetric n by n matrix). 1 represents if the nodes are adjacent to each other and 0 otherwise. e) First, to compile Luby.java use command "javac Luby.java". f) A Luby.class file will be created in the same directory after compiling the java file. g) Now, to run the above code, use command "java Luby inputfile outputfile" e.g. java Luby input1.txt output1.txt h) An output file will be created which contains the rounds (rounds took to generate the MIS), resultant MIS set and a verification message whether the generated MIS is correct or not.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.