Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP-mobile-robot-unicycle #354

Draft
wants to merge 24 commits into
base: master
Choose a base branch
from

Conversation

johnaoga
Copy link
Collaborator

@johnaoga johnaoga commented May 17, 2024

@@ -57,7 +57,7 @@ concrete_system = concrete_problem.system;

# Definition of the grid of the state-space on which the abstraction is based (origin `x0` and state-space discretization `h`):
x0 = SVector(0.0, 0.0, 0.0);
h = SVector(0.2, 0.2, 0.2);
h = SVector(0.1, 0.1, 0.2);
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@johnaoga cc my e-mail, just revert if you want to go back to the coarser abstraction

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you! No worries!

@blegat
Copy link
Collaborator

blegat commented Jun 14, 2024

The failure should be fixed by JuliaIntervals/IntervalLinearAlgebra.jl#135

@blegat blegat mentioned this pull request Jun 17, 2024
@blegat
Copy link
Collaborator

blegat commented Jun 17, 2024

You can rebase on master to fix the documentation build so that we can see the preview

@blegat
Copy link
Collaborator

blegat commented Jun 17, 2024

We can see now that the controller says that it succeeded but there is not trajectory displayed at the end:
https://dionysos-dev.github.io/Dionysos.jl/previews/PR354/generated/Path%20planning%20sgmpc/
Anyone has an idea what's wrong ?

@adrienbanse
Copy link
Collaborator

adrienbanse commented Jun 19, 2024

@blegat @johnaoga The trajectory is only one point in the target set

Dionysos.System.Control_trajectory{SVector{3, Float64}, Any}(Dionysos.System.Trajectory{SVector{3, Float64}}(SVector{3, Float64}[[0.5, 0.5, 0.0]]), Dionysos.System.Trajectory{Any}(Any[]))

Screenshot 2024-06-19 at 09 48 28

@johnaoga
Copy link
Collaborator Author

Thank you @adrienbanse for the investigation.

But, That's exactly what surprises me, since the starting point is set to be (0.5, -1.5), I would have expected to have at least 2 points in the trajectory, the starting point and the point (0.5, 0.5).

@adrienbanse @blegat But from your perspective do you think its answer is okay or it maybe a bug from the algorithm? In which case I could explore that direction

@adrienbanse
Copy link
Collaborator

adrienbanse commented Jun 19, 2024

@johnaoga The initial state is in the target set so the controller directly stops
So I set x0 = SVector(1.1, -1.6, 0.0), but then the state is uncontrollable

@adrienbanse adrienbanse marked this pull request as draft June 19, 2024 09:22
@adrienbanse
Copy link
Collaborator

adrienbanse commented Jun 19, 2024

@blegat @JulienCalbert Any idea why the example throws compute_controller_reach! terminated without covering init set ? Seems related to nondeterminism in the automaton..

@adrienbanse
Copy link
Collaborator

The example probably fails because of the self-loops in the automation. To mitigate this, let's try

  • A larger timestep
  • A finer abstraction

@adrienbanse
Copy link
Collaborator

@johnaoga The example is fixed, let's try to clean as much as possible the code and the presentation before merging

Screenshot 2024-06-28 at 11 47 57

@johnaoga
Copy link
Collaborator Author

thank you @adrienbanse, i will clean (if still necessary) and add comments

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants