Python Mesa高级教程-启动服务器时出错

Python Mesa高级教程-启动服务器时出错,python,mesa-abm,Python,Mesa Abm,您好,我是python和基于代理的建模新手 在运行可视化代码时,我正在跟踪并得到一个NotImplementedError 我之前遵循了入门教程,并成功创建了运行正常的MoneyAgent和MoneyModel类 我复制了(高级教程)代码,如下所示: from MoneyModel import * from mesa.visualization.modules import CanvasGrid from mesa.visualization.ModularVisualization impo

您好,我是python和基于代理的建模新手

在运行可视化代码时,我正在跟踪并得到一个NotImplementedError

我之前遵循了入门教程,并成功创建了运行正常的MoneyAgent和MoneyModel类

我复制了(高级教程)代码,如下所示:

from MoneyModel import *
from mesa.visualization.modules import CanvasGrid
from mesa.visualization.ModularVisualization import ModularServer


def agent_portrayal(agent):
    portrayal = {"Shape": "circle",
                 "Filled": "true",
                 "Layer": 0,
                 "Color": "red",
                 "r": 0.5}
    return portrayal

grid = CanvasGrid(agent_portrayal, 10, 10, 500, 500)
server = ModularServer(MoneyModel,
                       [grid],
                       "Money Model",
                       {"N":100, "width":10, "height":10})
server.port = 8521 # The default
server.launch()
但得到一个“NotImplementedError”:

回溯(最近一次呼叫最后一次):
文件“C:/Users/antho/PycharmProjects/MesaSampleModel/Model/MoneyModel_Viz.py”,第20行,在
server.launch()
文件“C:\Users\antho\PycharmProjects\MesaSampleModel\venv\lib\site packages\mesa\visualization\modulearvisualization.py”,第321行,在启动中
self.listen(self.port)
文件“C:\Users\antho\PycharmProjects\MesaSampleModel\venv\lib\site packages\tornado\web.py”,第2116行,在listen中
侦听(端口、地址)
文件“C:\Users\antho\PycharmProjects\MesaSampleModel\venv\lib\site packages\tornado\tcpserver.py”,第152行,在listen中
self.add_套接字(套接字)
文件“C:\Users\antho\PycharmProjects\MesaSampleModel\venv\lib\site packages\tornado\tcpserver.py”,第165行,在add_sockets中
self.\u处理程序[sock.fileno()]=添加\u接受\u处理程序(
文件“C:\Users\antho\PycharmProjects\MesaSampleModel\venv\lib\site packages\tornado\netutil.py”,第279行,在add\u accept\u处理程序中
io_循环。添加_处理程序(sock、accept_处理程序、IOLoop.READ)
文件“C:\Users\antho\PycharmProjects\MesaSampleModel\venv\lib\site packages\tornado\platform\asyncio.py”,第100行,在添加处理程序中
self.asyncio\u loop.add\u reader(fd,self.\u handle\u events,fd,IOLoop.READ)
文件“C:\Users\antho\AppData\Local\Programs\Python\Python38-32\lib\asyncio\events.py”,第501行,在add\u reader中
引发未实现的错误
未实现错误

有人能帮忙吗?

在导入过程中,您需要将以下代码行添加到您的中:

import asyncio
asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())

在导入过程中,您需要将以下代码行添加到中:

import asyncio
asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())