Coder Social home page Coder Social logo

adhock-simulator's Introduction

adsim - A simple simulator for adhock netowrk

課題用に作ったシミュレータ、重い

必要動作環境

  • CPU: 一番いいCPUを頼む
  • MEM: 2GB程は食うので、最低4GB、出来れば8BGくらいあった方が安心
  • OS: Javaが動けば

メモリについてはJavaVMの設定で2GBにしているだけなので、それ以下でも動くかも知れません。適宜run.shを編集して下さい。動くかは当然わかりません。

動かし方

./run.shを実行すればいいです、ただし、パラメータを与える必要があり

./run.sh 50,100,150:1000.0:0,1,3:fifo,recent,regular:1000:0.01 50

こんな感じで長い長いパラメータを与える必要があります。

一つ目のパラメータ

上の例だと

50,100,150:1000.0:0,1,3:fifo,recent,regular:1000:0.01

に相当する部分で、:で区切られています。例えば、下に書いてあるノード数は、最初の:までの50,100,150の部分で、ノード数が50, 100, 150の3通りの場合を試すことを指示します。

格要素の意味は、順番に、

  1. ノード数(整数、10-1000くらいがいいかも)
  2. フィールドのサイズ(浮動小数(double)、1000でいいんじゃないかな)
  3. 拡散の深さ(整数、自分の持ってる情報を何ホップ拡散するか、せいぜい3でしょうか)
  4. メッセージ消去アルゴリズム(fifo, recent, regularのどれか)
  5. ステップ数(整数、お好みに合わせて)
  6. 各ノード1ステップ当たりのメッセージ数、この場合0.01なので100ステップに1度程度メッセージを作成します

という風になっています。 この6つのパラメータで構成される直積集合の格要素がCaseです。 ちなみに、ノード数とステップ数は増やすと実行時間が延び、それ以外はそんなに変わりません。

2つめのパラメータ

それぞれのCaseについて何回実行するか指定します、指定しなければ1がデフォルト値として適用されます

このようにパラメータを指定すれば、result.csvに結果が出力されます。

adhock-simulator's People

Contributors

kanosaki avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.