{"id":21298440,"url":"https://github.com/salvacorts/gocey","last_synced_at":"2026-05-07T17:36:56.615Z","repository":{"id":39001408,"uuid":"154537562","full_name":"salvacorts/Gocey","owner":"salvacorts","description":"🍀 P2P Distributed Evolutionary Algorithms on Ephemeral Infrastructure for Neural Network Optimization.","archived":false,"fork":false,"pushed_at":"2019-09-24T08:05:58.000Z","size":22850,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-10-01T11:35:49.478Z","etag":null,"topics":["artificial-intelligence","collaborative-research","evolutionary-algorithms","go","golang","grpc","library","machine-learning","neural-network","p2p","peer-to-peer","pool","protocol-buffers","scalable","thesis","wasm","webassembly"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/salvacorts.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}},"created_at":"2018-10-24T17:00:03.000Z","updated_at":"2025-07-02T05:27:35.000Z","dependencies_parsed_at":"2022-09-19T10:42:27.759Z","dependency_job_id":null,"html_url":"https://github.com/salvacorts/Gocey","commit_stats":null,"previous_names":["salvacorts/tfg-parasitic-metaheuristics"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/salvacorts/Gocey","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salvacorts%2FGocey","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salvacorts%2FGocey/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salvacorts%2FGocey/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salvacorts%2FGocey/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/salvacorts","download_url":"https://codeload.github.com/salvacorts/Gocey/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/salvacorts%2FGocey/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32749021,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-07T02:14:30.463Z","status":"ssl_error","status_checked_at":"2026-05-07T02:14:29.405Z","response_time":62,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["artificial-intelligence","collaborative-research","evolutionary-algorithms","go","golang","grpc","library","machine-learning","neural-network","p2p","peer-to-peer","pool","protocol-buffers","scalable","thesis","wasm","webassembly"],"created_at":"2024-11-21T14:52:44.053Z","updated_at":"2026-05-07T17:36:56.594Z","avatar_url":"https://github.com/salvacorts.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Build Status](https://travis-ci.org/salvacorts/TFG-Parasitic-Metaheuristics.svg?branch=master)](https://travis-ci.org/salvacorts/TFG-Parasitic-Metaheuristics)\n\n# Bachelor Thesis: *Gocey. Distributed Evolutionary Algorithms on Ephemeral Infrastructure*\n\n### **Author:** Salvador Corts Sánchez\n### **Supervisor:** Juan Julián Merelo Guervós\n\nThesis Document: https://github.com/salvacorts/TFG-Thesis\n___\n\n## Requirements\n\n- Go \u003e= 1.12: https://golang.org/doc/install\n- Go Protocol Buffers: https://github.com/golang/protobuf\n\n## Go dependecies\n\n```bash\ngo get github.com/salvacorts/TFG-Parasitic-Metaheuristics\ncd $GOPATH/src/github.com/salvacorts/TFG-Parasitic-Metaheuristics/mlp-ea-decentralized/native\ngo get ./...\n```\n\n## Run\n\nAll the following paths are relative to `$GOPATH/src/github.com/salvacorts/TFG-Parasitic-Metaheuristics/mlp-ea-decentralized` directory.\n\n#### Island\n\n```bash\ncd native/server\ngo run -grpcPort \u003cport\u003e -clusterPort \u003cport\u003e -metricsPort \u003cport\u003e -clusterBoostrap \u003cboostrap node addr:port\u003e -datasetPath \u003cpath to dataset\u003e -webPath \u003cpath to web\u003e -webPort \u003cport\u003e\n# e.g. go run server.go -grpcPort 2006 -clusterPort 4003 -metricsPort 5003 -clusterBoostrap 127.0.0.1:4001 -datasetPath ../../../datasets/glass.csv -webpath ../../web/src/ -webPort 8080\n```\n\n#### Evaluator\n\n##### Native\n\n```bash\ncd native/client\ngo run client.go -server \u003cisland addr:port\u003e\n# e.g. go run client.go -server 127.0.0.1:2006\n```\n\n##### Browser (WebAssembly)\nOpen a new tab in yout browser and enter an island IP and its *webPort* port. E.g. if an island is running at 127.0.0.1, and its *webPort* parameter is 8080, go to [127.0.0.1:8080](127.0.0.1:8080).\n\n**Modifying Go Browser Client Source:** You will need to rebuild the webassembly file\n```bash\ncd web/src/go\nGOOS=js GOARCH=wasm go build -o wasm/main.wasm\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsalvacorts%2Fgocey","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsalvacorts%2Fgocey","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsalvacorts%2Fgocey/lists"}