Skip to content
Snippets Groups Projects
  1. Jun 28, 2024
  2. Jun 20, 2024
  3. Jun 13, 2024
  4. Jun 10, 2024
  5. Jun 07, 2024
  6. Oct 20, 2023
  7. Sep 26, 2023
  8. Jul 28, 2023
  9. Jul 19, 2023
  10. Jul 07, 2023
  11. May 19, 2023
  12. Feb 20, 2023
  13. Nov 21, 2022
  14. Jun 28, 2022
    • Le Quang Anh's avatar
      Remove extra configSolved and check idxConfigList_ · 41139cdf
      Le Quang Anh authored
      The configSolved() method is redundant. Checks are added for the case
      where the final configuration computed has been reached but the goal is
      deemed not reached by the path planner.
      
      Some other small redundancies are also removed.
      41139cdf
  15. May 31, 2022
  16. May 30, 2022
    • Le Quang Anh's avatar
      Add to roadmap when inStatePlanner fails · 867867a2
      Le Quang Anh authored
      Previously, when the inStatePlanner fails to compute path between two
      configurations on the same leaf, the roadmap generated is not added to
      the main roadmap of StatesPathFinder. Now it is added so that the
      roadmap gets expanded whenever inStatePlanner is used. The good side
      effect is fairer comparison between different algorithms when comparing by the number
      of nodes in the roadmap.
      867867a2
  17. May 25, 2022
    • Le Quang Anh's avatar
      [SPF] Add warning for valid goal constraints · 4b8ccb39
      Le Quang Anh authored
      The StatesPathFinder algorithm is not yet able to handle all kinds of
      goal constraints. An example is when the object final configuration is
      locked in placement: the algorithm is not propagating the placement
      complement to previous waypoints. A note is added for users and future
      developers.
      4b8ccb39
  18. May 23, 2022
    • Le Quang Anh's avatar
      Solve when start state is a potential goal state · b940b29c
      Le Quang Anh authored
      Previously, we handled this case when goal is defined as a goal
      configuration. However, this case may still occur when goal is defined
      as a set of constraints. Moreover, the previous method does not store
      the loop transition to the list of solutions, making it difficult to
      re-try later on.
      b940b29c
  19. May 20, 2022
  20. Apr 21, 2022
  21. Apr 19, 2022
  22. Apr 15, 2022
  23. Apr 04, 2022
  24. Mar 30, 2022
    • Le Quang Anh's avatar
      Remove code duplication by merging functions · a93f8e31
      Le Quang Anh authored
      Previously, there are multiple versions of the same function, to cater
      for two cases: when goal is defined as a configuration, and when when
      goal is defined as a set of constraints. This duplication is not
      desirable, as we need to make changes in multiple places if we want to
      make a small change in a function. This commit removes the duplication
      by merging the functions together and adding checks within the new
      functions to cater for the two cases.
      
      Some modifications are needed for analyseOptimizationProblem when goal
      is given as a configuration. So far we have made a few, but there may be
      more.
      a93f8e31
  25. Mar 28, 2022
    • Le Quang Anh's avatar
      Fix: analyse each new transition list · 5b36ad07
      Le Quang Anh authored
      BUG: if a certain transition list succeeds to give a configuration list for
      the first time, and fails for the second time, a new transition list
      will be considered, but skipColAnalysis is NOT reset. This is now fixed
      by using the direct comparison with nTryConfigList_ instead of using an
      additional data member.
      5b36ad07
  26. Mar 24, 2022
    • Le Quang Anh's avatar
      Fix solveStep validate collision in configuration · 3e15c4cd
      Le Quang Anh authored
      Previously, `solveOptimizationProblem()` sometimes returns configuration
      list that has collision in at least one configuration. This was possibly
      because the collision validation is not working properly. Fixed by using
      the new collision validation provided by hpp::core.
      
      Some refactoring is also done to make the return of the function a bit
      clearer (instead of simple int, use enum).
      3e15c4cd
    • Le Quang Anh's avatar
      Refactor graph search data · ed5217c2
      Le Quang Anh authored
      Make graph search data part of the path planner object, so that we don't
      have to search the graph from scratch everytime we want to compute a new
      list of configurations.
      ed5217c2
  27. Mar 21, 2022
  28. Mar 18, 2022
    • Le Quang Anh's avatar
      Choose only sequences lead to potential goal state · c4f008ec
      Le Quang Anh authored
      From the list of goal constraints, we can find a list of states that
      contain the maximum number of goal constraints. We choose to compute
      only state sequences that end in a state that can potentially be a goal
      state. However, future work needs to assess/prove that this heuristic
      covers all the possible goal states.
      c4f008ec
  29. Mar 17, 2022
    • Le Quang Anh's avatar
      Try all state sequences before finding new ones · d56d5215
      Le Quang Anh authored
      When goal is defined as set of constraints, every state sequence is a
      possible solution. The current implementation grows the list of possible
      state sequences faster than they are attempted: for every time we add all
      neighbors of the front node to queue, we only try out one sequences.
      This could be too space consuming if the graph has large branching factor.
      d56d5215
  30. Mar 16, 2022
    • Le Quang Anh's avatar
      Check if solver already has stricter constraints · 16ae96b1
      Le Quang Anh authored
      Before adding another constraint to a solver, check if it already has
      the stricter version of the constraint. `constraint/hold` is stricter
      than `constraint` and stricter than `constraint/complement`.
      16ae96b1
Loading