diff --git a/log/11032023_15:53/eval_report__SACADRL.json b/log/11032023_15:53/eval_report__SACADRL.json new file mode 100644 index 0000000..699192b --- /dev/null +++ b/log/11032023_15:53/eval_report__SACADRL.json @@ -0,0 +1 @@ +{"3": {"success_rate": 0.0, "collisions": 0.64, "avg_length": 438.48, "avg_velocity_delta": 28.307916710283298, "time_still": 480.24, "incorrect_enter_rate": 0.0, "incorrect_exit_rate": 0.0}, "total": 0.0} \ No newline at end of file diff --git a/log/11032023_15:59/eval_report__SACADRL.json b/log/11032023_15:59/eval_report__SACADRL.json new file mode 100644 index 0000000..d79cfd9 --- /dev/null +++ b/log/11032023_15:59/eval_report__SACADRL.json @@ -0,0 +1 @@ +{"3": {"success_rate": 0.0, "collisions": 0.66, "avg_length": 538.42, "avg_velocity_delta": 29.4032489238332, "time_still": 482.44, "incorrect_enter_rate": 0.0, "incorrect_exit_rate": 0.0}, "total": 0.0} \ No newline at end of file diff --git a/log/11032023_16:10/eval_report__SACADRL.json b/log/11032023_16:10/eval_report__SACADRL.json new file mode 100644 index 0000000..2398213 --- /dev/null +++ b/log/11032023_16:10/eval_report__SACADRL.json @@ -0,0 +1 @@ +{"3": {"success_rate": 0.0, "collisions": 0.71, "avg_length": 502.48, "avg_velocity_delta": 22.407912343223, "time_still": 474.26, "incorrect_enter_rate": 0.0, "incorrect_exit_rate": 0.0}, "total": 0.0} \ No newline at end of file diff --git a/log/leaderboard.py b/log/leaderboard.py new file mode 100644 index 0000000..6ac90da --- /dev/null +++ b/log/leaderboard.py @@ -0,0 +1,31 @@ +from flask import Flask, render_template +import json +import os + +app = Flask(__name__) + +def get_eval_reports(): + log_directory = os.path.join('..', 'log') + reports = [] + + for folder_name in os.listdir(log_directory): + folder_path = os.path.join(log_directory, folder_name) + if os.path.isdir(folder_path): + report_path = os.path.join(folder_path, 'eval_report__SACADRL.json') + if os.path.isfile(report_path): + with open(report_path, 'r') as f: + report_data = json.load(f) + print(report_data.keys()) + print(report_data) + print(report_data['3']) + report_data['3']['timestamp'] = folder_name + reports.append(report_data['3']) + return reports + +@app.route('/') +def leaderboard(): + reports = get_eval_reports() + return render_template('leaderboard.html', reports=reports) + +if __name__ == "__main__": + app.run(debug=True, port=8000) \ No newline at end of file diff --git a/log/templates/leaderboard.html b/log/templates/leaderboard.html new file mode 100644 index 0000000..b836290 --- /dev/null +++ b/log/templates/leaderboard.html @@ -0,0 +1,145 @@ + + + + +SocialGym2 Multi-Agent Simulator Leaderboard + + + + + + + + + +
+

SocialGym2 Multi-Agent Simulator Leaderboard

+ + + + + + + + + + + + + + + + {% for report in reports %} + + + + + + + + + + + + {% endfor %} + +
TimestampSuccess RateCollisionsAvg. LengthAvg. Velocity DeltaTime StillIncorrect Enter RateIncorrect Exit Rate
{{ report.timestamp }}{{ report.success_rate }}{{ report.collisions }}{{ report.avg_length }}{{ report.avg_velocity_delta }}{{ report.time_still }}{{ report.incorrect_enter_rate }}{{ report.incorrect_exit_rate }}
+
+ + + \ No newline at end of file