ModuleNotFoundError: No module named 'jmetal'

ModuleNotFoundError: No module named 'jmetal'

我想使用 jmetalpy 进行多 objective 优化。我在 anaconda 提示符下使用以下代码安装了该工具。

pip install jmetalpy

安装后我尝试了 运行 下面的代码:

from jmetal.algorithm.multiobjective import NSGAII
from jmetal.operator import SBXCrossover, PolynomialMutation
from jmetal.problem import ZDT1
from jmetal.util.termination_criterion import StoppingByEvaluations

problem = ZDT1()

algorithm = NSGAII(
    problem=problem,
    population_size=100,
    offspring_population_size=100,
    mutation=PolynomialMutation(probability=1.0 / problem.number_of_variables, distribution_index=20),
    crossover=SBXCrossover(probability=1.0, distribution_index=20),
    termination_criterion=StoppingByEvaluations(max_evaluations=25000)
)

algorithm.run()

收到错误:

ModuleNotFoundError: No module named 'jmetal'

错误来自第一条语句本身

我尝试了什么?

import jmetal

抛出同样的错误

import jmetalpy

抛出类似的错误。

Python 版本- 3.8 Windows 64 位版本

有 2 个可能的问题:

  1. 您使用的是不同的环境,可能是在 base 上安装的,现在使用的是新设置的环境
  2. 安装过程中出现一些错误(不太可能,因为您一定见过)。

解决方案:

Pycharm:

https://www.jetbrains.com/help/pycharm/conda-support-creating-conda-virtual-environment.html

VSCode:

https://code.visualstudio.com/docs/python/environments

木星:

开始前输入:

conda activate (your_environment)
jupyter-notebook