Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/salvacorts/gocey
🍀 P2P Distributed Evolutionary Algorithms on Ephemeral Infrastructure for Neural Network Optimization.
https://github.com/salvacorts/gocey
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
Last synced: 2 months ago
JSON representation
🍀 P2P Distributed Evolutionary Algorithms on Ephemeral Infrastructure for Neural Network Optimization.
- Host: GitHub
- URL: https://github.com/salvacorts/gocey
- Owner: salvacorts
- License: gpl-3.0
- Created: 2018-10-24T17:00:03.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2019-09-24T08:05:58.000Z (over 5 years ago)
- Last Synced: 2024-04-14T19:44:15.437Z (9 months ago)
- 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
- Language: Go
- Homepage:
- Size: 21.8 MB
- Stars: 3
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![Build Status](https://travis-ci.org/salvacorts/TFG-Parasitic-Metaheuristics.svg?branch=master)](https://travis-ci.org/salvacorts/TFG-Parasitic-Metaheuristics)
# Bachelor Thesis: *Gocey. Distributed Evolutionary Algorithms on Ephemeral Infrastructure*
### **Author:** Salvador Corts Sánchez
### **Supervisor:** Juan Julián Merelo GuervósThesis Document: https://github.com/salvacorts/TFG-Thesis
___## Requirements
- Go >= 1.12: https://golang.org/doc/install
- Go Protocol Buffers: https://github.com/golang/protobuf## Go dependecies
```bash
go get github.com/salvacorts/TFG-Parasitic-Metaheuristics
cd $GOPATH/src/github.com/salvacorts/TFG-Parasitic-Metaheuristics/mlp-ea-decentralized/native
go get ./...
```## Run
All the following paths are relative to `$GOPATH/src/github.com/salvacorts/TFG-Parasitic-Metaheuristics/mlp-ea-decentralized` directory.
#### Island
```bash
cd native/server
go run -grpcPort -clusterPort -metricsPort -clusterBoostrap -datasetPath -webPath -webPort
# 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
```#### Evaluator
##### Native
```bash
cd native/client
go run client.go -server
# e.g. go run client.go -server 127.0.0.1:2006
```##### Browser (WebAssembly)
Open 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).**Modifying Go Browser Client Source:** You will need to rebuild the webassembly file
```bash
cd web/src/go
GOOS=js GOARCH=wasm go build -o wasm/main.wasm
```