_waxx_ 2024-05-23 15:39 采纳率: 0%
浏览 3

求帮跑通一个深度学习的项目

需要跑通的项目https://github.com/omron-sinicx/neural-astar
neural A*:基于神经网络的A星寻路算法
能否有大老跑通这个算法,然后教教我,给我讲一下这个算法怎么使用,我用的官方代码,老是报错,是不是代码有问题??

  • 写回答

5条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-05-23 15:39
    关注

    引自免费微信小程序:皆我百晓生

    为了帮助您理解并运行 Neural A* 寻路算法,我会逐步解释项目的结构、如何安装依赖项、解决可能遇到的问题以及提供一些基本的运行示例。首先,让我们从安装依赖项开始。

    1. 安装环境: 确保您的计算机上已经安装了 Python 3.6 或更高版本。接下来,我们需要安装所需的库。打开终端(在 Windows 上是命令提示符,在 macOS/Linux 上是 Terminal),然后执行以下命令:
    pip install -r requirements.txt
    
    1. 下载数据集: 项目需要一个名为 "data" 的文件夹,其中包含训练和测试数据。您可以按照项目README中的指示下载数据集,或者手动创建一个名为 "data" 的文件夹,并将数据集放入其中。

    2. 运行模型: 项目提供了两个主要的脚本用于训练和评估模型:train.pytest.py。这里是一个简单的步骤指南:

    对于训练模型:

    python train.py --config config/train.yaml
    

    对于评估模型:

    python test.py --config config/test.yaml --load_path /path/to/trained/model.pth
    

    这里的 /path/to/trained/model.pth 应替换为您的训练模型保存路径。如果您还没有训练过模型,可以先运行训练脚本来生成模型。

    1. 解决常见问题:
    • 如果遇到 CUDA 错误,请确保您正确安装了 CUDA 和 CuDNN,并且与您的 GPU 驱动程序兼容。
    • 检查是否正确设置了 CUDA 环境变量。在 .bashrc.zshrc 文件中添加类似这样的内容(根据您的实际情况调整):
    export CUDA_HOME=/usr/local/cuda
    export PATH=$CUDA_HOME/bin:$PATH
    export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$LD_LIBRARY_PATH
    

    然后重新加载配置文件:source ~/.bashrcsource ~/.zshrc

    • 如果仍然遇到问题,检查您的显存是否足够。Neural A* 可能会消耗大量内存,尤其是当处理较大的地图时。尝试减小输入的地图大小,或者在 CPU 上运行(通过在训练脚本中设置 --no_cuda 参数)。
    1. 算法概述: Neural A* 是一种结合传统 A* 寻路算法和神经网络的方法。它利用神经网络预测启发式函数,从而加速搜索过程。模型接受当前地图状态作为输入,并输出一个表示每个位置的启发式值的向量。这些值被用来指导 A* 在搜索过程中选择最佳路径。

    2. 使用方法: 要使用 Neural A* 寻找路径,首先加载训练好的模型,然后使用 test.py 脚本提供的接口。例如,您可以定义一个地图,然后调用 find_path() 函数来获取路径:

    import torch
    from neural_a_star import AStar
    
    # 加载模型
    model = torch.load("/path/to/trained/model.pth")
    model.eval()
    
    # 初始化 AStar 类
    a_star = AStar(model, map_size=(map_height, map_width))
    
    # 假设我们有一个二维数组表示地图,其中 0 表示可通行,1 表示障碍物
    map_data = ...
    
    # 设置起点和终点坐标
    start = (start_x, start_y)
    end = (end_x, end_y)
    
    # 找到路径
    path = a_star.find_path(map_data, start, end)
    
    print(path)
    

    请确保替换上述代码中的路径和地图数据。如果一切正常,您应该能看到找到的路径。

    请遵循以上步骤,如果在运行过程中遇到任何问题,请随时告诉我,我会尽力帮助您解决。祝您好运!

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 5月23日

悬赏问题

  • ¥30 写segy数据时出错3
  • ¥100 linux下qt运行QCefView demo报错
  • ¥50 F1C100S下的红外解码IR_RX驱动问题
  • ¥20 基于matlab的航迹融合 航迹关联 航迹插补
  • ¥15 用Matlab实现图中的光线追迹
  • ¥15 联想笔记本开机出现系统更新界面
  • ¥15 各位帮帮我 我不想重做系统
  • ¥30 微信小程序蓝牙数据透传
  • ¥15 加氢站氢负荷数据集来源
  • ¥15 umi接入sentry遇到问题