Multi-agent (path finding) planning framework

Overview

multi-agent (path finding) planning framework

Mapf is a (currently experimental) Rust library for multi-agent planning, with a focus on cooperative path finding.

This repo is just getting started, so please bear with us for a while as we work towards making useful tools.

This is being developed as part of the Open-RMF project which provides an open source framework for enabling interoperability between heterogeneous fleets of mobile robots, including cooperation across different platforms and vendors.

Comments
  • Update cached version dependency

    Update cached version dependency

    Bug fix

    Fixed bug

    The old version of cached didn't support wasm builds, hence update to the newest version.

    Fix applied

    Ref here for an end to end test with and without this branch (wasm CI fails unless we use this specific branch). A followup PR should probably add web and windows CIs to mapf to make sure this doesn't happen again

    opened by luca-della-vedova 0
  • Updates the GAT syntax

    Updates the GAT syntax

    As per https://github.com/rust-lang/rust/issues/89122, GATs no longer use the type Typename<'a> where Self: 'a = ... syntax rather they move the where to the end.

    This PR also fixes lifetimes. Seems like the type_alias_impl_trait requires you to specify a lifetime.

    Signed-off-by: Arjo Chakravarty [email protected]

    opened by arjo129 0
  • Should `TimePoint` be private?

    Should `TimePoint` be private?

    Feature request

    Description

    I notice that mapf::motion::Timepoint is private. This means if an external user wants to query the TimePoint he or she will have to depend on the crate timepoint at the exact same version as we are depending on it, otherwise it will not be possible to perform arbitrary queries on the Motion trait of a trajectory.

    enhancement 
    opened by arjo129 0
  • Fix compile issue

    Fix compile issue

    Currently the main branch fails to compile with the following error:

     --> /home/arjo/workspaces/rust/mapf/mapf/src/occupancy/mod.rs:159:14
        |
    159 |         self.set_bit(corner.into(), status);
        |              ^^^^^^^ method not found in `&mut CornerStatus`
        |
        = help: items from traits can only be used if the trait is in scope
    help: the following trait is implemented but not in scope; perhaps add a `use` for it:
        |
    18  | use bitfield::BitMut;
        |
    

    This tiny commit applies the above change. I will follow this up with a github ci action to check we don't break the main branch.

    Signed-off-by: Arjo Chakravarty [email protected]

    P.S. I don't have access rights to this repo and hence had to create a fork,

    opened by arjo129 0
  • Documentation of MAPF algorithms used here

    Documentation of MAPF algorithms used here

    Feature request

    I would like to read more documentation about MAPF algorithms implemented/WIP/to-be-implemented in the Open-RMF.

    Description

    At the moment I could not find any documentation besides the code in this repository. Will these be Rust-only implementations, or will it be possible to implement algorithms in C/C++/Python, for example?

    enhancement 
    opened by ljaniec 0
  • What is the reasoning behind using Rust?

    What is the reasoning behind using Rust?

    I am curious as to what is the reason behind using rust for the multi agent path planning framework? I am very new to rust and this is rather interesting. Is it going to be a standalone application to develop path planners?

    opened by ajithcodesit 0
Owner
null
A simple url checker for finding fraud url(s) or nearest url

urlchecker A simple url checker for finding fraud url(s) or nearest url while being fast (threading) Eg:- use std::collections::HashMap; use urlchecke

Subconscious Compute 2 Aug 7, 2022
A browser AI agent, using GPT-4

A browser AI agent, using GPT-4 This project provides a bridge between GPT-4 and a headless Chromium browser, allowing you to automate actions simply

Miguel Piedrafita 517 Apr 15, 2023
A Rust🦀 implementation of CRAFTML, an Efficient Clustering-based Random Forest for Extreme Multi-label Learning

craftml-rs A Rust implementation of CRAFTML, an Efficient Clustering-based Random Forest for Extreme Multi-label Learning (Siblini et al., 2018). Perf

Tom Dong 15 Nov 6, 2022
An efficient implementation of Partitioned Label Trees & its variations for extreme multi-label classification

Omikuji An efficient implementation of Partitioned Label Trees (Prabhu et al., 2018) and its variations for extreme multi-label classification, writte

Tom Dong 73 Nov 7, 2022
Rust implementation of multi-index hashing for neighbor searches on binary codes in the Hamming space

mih-rs Rust implementation of multi-index hashing (MIH) for neighbor searches on binary codes in the Hamming space, described in the paper Norouzi, Pu

Shunsuke Kanda 8 Sep 23, 2022
Damavand is a quantum circuit simulator. It can run on laptops or High Performance Computing architectures, such CPU distributed architectures or multi GPU distributed architectures.

Damavand is a code that simulates quantum circuits. In order to learn more about damavand, refer to the documentation. Development status Core feature

prevision.io 6 Mar 29, 2022
A Rust machine learning framework.

Linfa linfa (Italian) / sap (English): The vital circulating fluid of a plant. linfa aims to provide a comprehensive toolkit to build Machine Learning

Rust-ML 2.2k Jan 2, 2023
Open Machine Intelligence Framework for Hackers. (GPU/CPU)

Leaf • Introduction Leaf is a open Machine Learning Framework for hackers to build classical, deep or hybrid machine learning applications. It was ins

Autumn 5.5k Jan 1, 2023
Xaynet represents an agnostic Federated Machine Learning framework to build privacy-preserving AI applications.

xaynet Xaynet: Train on the Edge with Federated Learning Want a framework that supports federated learning on the edge, in desktop browsers, integrate

XayNet 196 Dec 22, 2022
Orkhon: ML Inference Framework and Server Runtime

Orkhon: ML Inference Framework and Server Runtime Latest Release License Build Status Downloads Gitter What is it? Orkhon is Rust framework for Machin

Theo M. Bulut 129 Dec 21, 2022
A fast, safe and easy to use reinforcement learning framework in Rust.

RSRL (api) Reinforcement learning should be fast, safe and easy to use. Overview rsrl provides generic constructs for reinforcement learning (RL) expe

Thomas Spooner 139 Dec 13, 2022
Tangram is an automated machine learning framework designed for programmers.

Tangram Tangram is an automated machine learning framework designed for programmers. Run tangram train to train a model from a CSV file on the command

Tangram 1.4k Dec 30, 2022
A Machine Learning Framework for High Performance written in Rust

polarlight polarlight is a machine learning framework for high performance written in Rust. Key Features TBA Quick Start TBA How To Contribute Contrib

Chris Ohk 25 Aug 23, 2022
zenoh-flow aims at providing a zenoh-based data-flow programming framework for computations that span from the cloud to the device.

Eclipse Zenoh-Flow Zenoh-Flow provides a zenoh-based dataflow programming framework for computations that span from the cloud to the device. ⚠️ This s

null 35 Dec 12, 2022
High performance distributed framework for training deep learning recommendation models based on PyTorch.

PERSIA (Parallel rEcommendation tRaining System with hybrId Acceleration) is developed by AI platform@Kuaishou Technology, collaborating with ETH. It

null 340 Dec 30, 2022
Simple WIP GPGPU framework for Rust built on top of wgpu

gpgpu A simple GPU compute library based on wgpu. It is meant to be used alongside wgpu if desired. To start using gpgpu, just create a Framework inst

Jerónimo Sánchez 97 Dec 26, 2022
Accel: GPGPU Framework for Rust

Accel: GPGPU Framework for Rust crate crates.io docs.rs GitLab Pages accel CUDA-based GPGPU framework accel-core Helper for writing device code accel-

Toshiki Teramura 439 Dec 18, 2022
Machine learning framework for building object trackers and similarity search engines

Similari Similari is a framework that helps build sophisticated tracking systems. The most frequently met operations that can be efficiently implement

In-Sight 71 Dec 28, 2022
Framework and Language for Neuro-Symbolic Programming

Scallop Scallop is a declarative language designed to support rich symbolic reasoning in AI applications. It is based on Datalog, a logic rule-based q

null 27 Dec 14, 2022