Git Product home page Git Product logo

apf's Introduction

Glossary

APF is Ant Colony Potential Field

ACO is Ant Colony Optimization


How to use it

本项目使用了cmake进行编译,推荐使用docker

docker pull aethertaberu/apf

如何运行:

cd APF
mkdir build
cd build
cmake ..
make

关于系统兼容问题

算法本体默认兼容Linux,虽然也做了一些关于window的兼容,但是不保证兼容windows。

tool/路径下的perf_monitor不支持windows。


关于分支

master分支实现了基本的蚁群算法

APFOA是利用引力势场法优化蚁群算法初始化的实现

APFGA是蚁群算法运行时结合引力势场法优化的实现


关于文件路径

文件路径:

include路径下包含本项目的头文件

src路径下包含本项目的源码实现

  • ACO路径下主要实现了蚁群算法的本体
  • util路径主要实现了一些算法中需要用到包括线程池在内的工具链

tool路径下是性能监测工具是实现。

另外paper路径下附上了论文,另外两个分支的做法皆是参考这篇论文实现的。

具体文件细节请参照注释。


to do list

  1. 接入util路径下的io_util实现从文件中读取数据

  2. 实现迷宫数据生成器,自动化的生成测试数据

  3. 优化其它分支的参数读取方式,在构造函数中设定参数,而不是在代码中定义值,通过修改源码来设定参数

  4. 开发算法结果正确性评价工具

  5. 适当补充一些注释

  6. ......

apf's People

Watchers

James Cloos avatar aether avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.