Add concept exercise robot-revolution - #1135
Conversation
|
I have no idea how On a related note, I decided to abandon that idea for the concept exercise because it felt kinda square-peg-round-holeish. I'm hoping this is a bit more in tune with things. |
|
This looks like a great starting point. For now, I'll just add a few nit-picky comments. We can discuss more substantive stuff when I've had chance to think about it. |
| ## 3. Check for Correct Orientation | ||
| - This can be checked with a dot product. | ||
| - It might be helpful to normalize the vectors. | ||
| - The following identity could be helpful: `x⋅y = ||x||||y||cos(θ)` |
There was a problem hiding this comment.
We discussed the norm, but not this notation: ||x||. Plus it's hard to read in Markdown, so maybe add a space in the middle?
There was a problem hiding this comment.
I've added an asterisk in between and ||x|| = norm(x) afterwards.
| @@ -0,0 +1,22 @@ | |||
| # Hints | |||
There was a problem hiding this comment.
A reminder for the future: we'll need to add links once the tasks are finalized. Obvious, but lest we forget...
There was a problem hiding this comment.
I've added a few links for the functions I mention in task 1, but we can add others later.
| Next, we need functionality on how to change the direction of motion. | ||
| To do this, we need to rotate the robot to face where it wants to go. | ||
|
|
||
| Implement the `rotaterobot(orientation, θ)` function, which takes the robot's orientation matrix and an angle `θ` to rotate around. |
There was a problem hiding this comment.
The Introduction talks about anti-clockwise rotation, but here it may be worth clarifying that it is a left turn.
There was a problem hiding this comment.
I've gone with an italicized counterclockwise to be clearer.
I'd support this. A bit mathy, but this seems an especially good place to be mathy if anywhere is. |
Thinking is (even) slower than usual today. |
No worries, get some rest! I'm in no hurry. Especially since I find that letting things like this sit for a bit helps the concept crystalize. Otherwise I end up wanting to change stuff after the fact 😅
I'll leave the attempt at the cross product task for after we decide more concretely whether to include it or not. |
This is a shot at an exercise for the concept
Linear Algebra Basics. Testing is still incomplete until we settle on the final form of the tasks. I've tried to keep it very simple and light on math.Currently task:
Some considerations:
transposeoperation in this, so I left that out.I'm open to any and all suggestions, since this is a first go at this, and it could likely use a bit of iteration.