Wanring при построении награды с использованием визуализации Rllab - PullRequest
0 голосов
/ 10 июля 2019

Я звоню visikit frontend.py, чтобы построить вознаграждение после 100 итераций.

Но я получил ошибку:

 WARNING: This is a development server. Do not use it in a production deployment.
   Use a production WSGI server instead.
 * Debug mode: off

(flow) hao@Hao:~/rllab-multiagent/rllab/viskit$ python frontend.py ~/rllab-multiagent/data/local/hao-stabilizing-highway-0.100/hao_stabilizing_highway_0.100_2019_07_09_20_01_57_0001
Importing data from ['/home/hao/rllab-multiagent/data/local/hao-stabilizing-highway-0.100/hao_stabilizing_highway_0.100_2019_07_09_20_01_57_0001']...
Reading /home/hao/rllab-multiagent/data/local/hao-stabilizing-highway-0.100/hao_stabilizing_highway_0.100_2019_07_09_20_01_57_0001/progress.csv
Reading /home/hao/rllab-multiagent/data/local/hao-stabilizing-highway-0.100/hao_stabilizing_highway_0.100_2019_07_09_20_01_57_0001/gym_log/progress.csv
[Errno 2] No such file or directory: '/home/hao/rllab-multiagent/data/local/hao-stabilizing-highway-0.100/hao_stabilizing_highway_0.100_2019_07_09_20_01_57_0001/gym_log/progress.csv'
Done! View http://localhost:5000 in your browser
 * Serving Flask app "frontend" (lazy loading)
 * Environment: production
   WARNING: This is a development server. Do not use it in a production deployment.
   Use a production WSGI server instead.
 * Debug mode: off
Traceback (most recent call last):
  File "frontend.py", line 580, in <module>
    app.run(host='0.0.0.0', port=args.port, debug=args.debug)
  File "/home/hao/anaconda3/envs/flow/lib/python3.5/site-packages/flask/app.py", line 990, in run
    run_simple(host, port, self, **options)
  File "/home/hao/anaconda3/envs/flow/lib/python3.5/site-packages/werkzeug/serving.py", line 1009, in run_simple
    inner()
  File "/home/hao/anaconda3/envs/flow/lib/python3.5/site-packages/werkzeug/serving.py", line 962, in inner
    fd=fd,
  File "/home/hao/anaconda3/envs/flow/lib/python3.5/site-packages/werkzeug/serving.py", line 805, in make_server
    host, port, app, request_handler, passthrough_errors, ssl_context, fd=fd
  File "/home/hao/anaconda3/envs/flow/lib/python3.5/site-packages/werkzeug/serving.py", line 698, in __init__
    HTTPServer.__init__(self, server_address, handler)
  File "/home/hao/anaconda3/envs/flow/lib/python3.5/socketserver.py", line 440, in __init__
    self.server_bind()
  File "/home/hao/anaconda3/envs/flow/lib/python3.5/http/server.py", line 138, in server_bind
    socketserver.TCPServer.server_bind(self)
  File "/home/hao/anaconda3/envs/flow/lib/python3.5/socketserver.py", line 454, in server_bind
    self.socket.bind(self.server_address)
OSError: [Errno 98] Address already in use

Я не могу найти здесь проблему. По сути, я следую инструкциям учебника. У кого-нибудь есть идеи?

1 Ответ

1 голос
/ 10 июля 2019

Похоже, комбинация вашего IP-адреса (localhost) и номера порта (5000) уже используется некоторыми другими процессами (из-за OSError: [Errno 98] Address already in use)

Я думаю, что наиболее вероятноэто из-за запуска сценария frontend.py несколько раз или, возможно, в 2 терминалах.Пожалуйста, закройте ("выйдите") все терминалы, возможно, подождите несколько секунд и снова запустите скрипт.(также откройте браузер и перейдите на http://localhost:5000 и посмотрите, что там есть)

Если это не работает, вы должны увидеть, почему используется порт 5000.Попробуйте:

Кто прослушивает данный порт TCP в Mac OS X?

Найти (и убить) порт блокировки процесса 3000 на Mac

...