{"id":32611535,"url":"https://github.com/ctlab/sgmwcs-solver","last_synced_at":"2025-10-30T13:59:38.459Z","repository":{"id":75185126,"uuid":"65292178","full_name":"ctlab/sgmwcs-solver","owner":"ctlab","description":"CPLEX-based solver for signal generalized maximum weight connected subgraph problem","archived":false,"fork":false,"pushed_at":"2020-10-12T22:39:27.000Z","size":650,"stargazers_count":4,"open_issues_count":1,"forks_count":1,"subscribers_count":13,"default_branch":"master","last_synced_at":"2024-05-19T00:08:53.173Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ctlab.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2016-08-09T12:12:30.000Z","updated_at":"2020-07-30T13:02:50.000Z","dependencies_parsed_at":null,"dependency_job_id":"28ea4d96-0c50-4b10-8700-5a1c1758564a","html_url":"https://github.com/ctlab/sgmwcs-solver","commit_stats":null,"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"purl":"pkg:github/ctlab/sgmwcs-solver","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ctlab%2Fsgmwcs-solver","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ctlab%2Fsgmwcs-solver/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ctlab%2Fsgmwcs-solver/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ctlab%2Fsgmwcs-solver/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ctlab","download_url":"https://codeload.github.com/ctlab/sgmwcs-solver/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ctlab%2Fsgmwcs-solver/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":281818072,"owners_count":26566859,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-30T02:00:06.501Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-10-30T13:59:06.926Z","updated_at":"2025-10-30T13:59:38.454Z","avatar_url":"https://github.com/ctlab.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Build Status](https://travis-ci.org/ctlab/sgmwcs-solver.svg?branch=master)](https://travis-ci.org/ctlab/sgmwcs-solver)\n\n# sgmwcs-solver\n\nThis is a solver for signal version of generalized maximum-weight connected subgraph problem (SGMWCS).\n\nSee [releases](https://github.com/ctlab/sgmwcs-solver/releases) to get built jar files.\n\n# Dependencies\n\nThe program requires CPLEX (≥ 12.63) to be installed on your computer.\n\nBuilding from sources\n===========\n\nGet source using git or svn using the web URL:\n\n    https://github.com/ctlab/sgmwcs-solver.git\n    \nThen you should install concert library of CPLEX.\nIt's located in \"cplex/lib\" directory from CPLEX STUDIO root path.\nFor example, \n\n    mvn install:install-file -Dfile=/opt/ibm/ILOG/CPLEX_Studio1263/cplex/lib/cplex.jar -DgroupId=com.ibm -DartifactId=cplex -Dversion=12.6.3 -Dpackaging=jar\n    \nAfter that you can build the project using maven:\n\n    mvn install -DskipTests=true\n    \nAnd jar file with name \"sgmwcs-solver.jar\" will appear in the \"target\" directory\n    \nRunning\n=======\n\nTo run the program you should set jvm parameter java.library.path to directory of CPLEX binaries and set parameter\n-classpath to program jar and cplex.jar like in the example below.\n\n    java -Djava.library.path=/opt/ibm/ILOG/CPLEX_Studio1263/cplex/bin/x86-64_linux/ -cp /opt/ibm/ILOG/CPLEX_Studio1263/cplex/lib/cplex.jar:sgmwcs-solver.jar ru.itmo.ctlab.sgmwcs.Main\n\nSee more help by using flag -h.\n\nTip: you can put the file `libcplex%version%.so` or symbolic link to it in the one of the predefined \njava.library.path directories(e.g. `/usr/lib`). In that case it's no longer necessary to point out path to CPLEX\nbinaries.\n \nProblem\n=========\n\nThe solver solves a signal version of generalized Maximum Weighted Connected Subgraph problem with weighted vertices and edges.\nInput of the problem is graph with node and edge weights (positive or negative). \nSome of the nodes or edges are grouped into a signal so that each node/edge in the signal has the same score.\nThe goal is to find a connected subgraph with a maximal weight, considered nodes/edges in a signal group are counted maximum one time.\n\nFormat and example\n=========\n\nNode file(node_name  [signal...]):\n\n    1   S1  S11\n    2   S3\n    3   S4\n    4   S5\n    5   S1\n    6   S1\n\nEdge file(edge_from  edge_to  [signal...]):\n\n    1   2   S6\n    2   3   S2\n    2   4   S7\n    3   4   S2\n    4   6   S8\n    5   6   S9\n    1   5   S10\n    \nSignal file(singal  weight)\n\n    S1  7.0\n    S2  -20.0\n    S3  40.0\n    S4  15.0\n    S5  8.0\n    S6  3.0\n    S7  -7.0\n    S8  -10.0\n    S9  -2.0\n    S10 -15.3\n    S11 1.0\n\n\nYellow vertices - vertex group S1, red edges - edge group S2.\n\n![Example](/sample.png?raw=true \"Sample\")\n\nRed units in graph below - solution.\n\n![Example](/sample_solved.png?raw=true \"Solution\")\n\nRunning the example\n==============\n\n    java -cp /opt/ibm/ILOG/CPLEX_Studio1263/cplex/lib/cplex.jar:sgmwcs-solver.jar Main -n nodes -e edges -s signals\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fctlab%2Fsgmwcs-solver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fctlab%2Fsgmwcs-solver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fctlab%2Fsgmwcs-solver/lists"}