Linux/Python Prerequisites Exam - Autograder Stuck at last step

Hi Construct Team,

I just finished my Prerequisites Exam for Linux and Python for Robotics.
However, after submitting my answers, the autograder gets stuck at Task3 of Python section.

I Have verified and checked the working of all my codes. My codes are according to requirements for the autograder to work.

Problem is, at the last task grading, the robot runs straight into the wall and autograder is stuck for more than 15 minutes in this section.

I am getting very annoyed because of this problem. I have passed all other checks. This is my 5th attempt at this point. Luckily I have infinite attempts, which I think will not make any difference. Autograder is not working as expected, I believe.

Attached picture below.

Please help me out.

Thanks,
Girish

UPDATE:
I checked the autograder “file check method” -attached pictures below.

I am doing exactly the same, I do not have anything wrong and still I get get_laser_readings() and main() methods are incorrect.

This is my code for get_laser_readings() function:

# scrubbed

I tried both the methods.
This is not a very hard function. As you can see and you already know, it is just 2 lines. SORRY TO PUT THE SOLUTION HERE, I am just super annoyed. I am at 12 or 13th attempt and still autograder is reporting it as wrong.
My code works perfectly when I execute and why does it not execute or show error when autograder tests it?

My main() function also works as expected but for some reason autograder reports it as wrong!

I do not want that 8/10 score. I deserve my 10/10! Please help me out!

Thanks,
Girish

Hi Construct Team,

I guess I have figured out what the problem is after 15 unsuccessful attempts.
So here is my observation… Quite long but with best detail I could provide.

So what happens is that, from the below image I understand that right after checking task2.py, the simulation gets reset to check task3.py.

The problem here is that, the autograder or the autograder’s algorithm/procedure does not know that the task3.py IS DEPENDENT on task2.py final location/position of the robot.

So as a first check, autograder tests if the get_laser_readings() provide the corresponding readings what one should get, IF THE ROBOT HAD STOPPED IN THE LOCATION OF task2.py. Since the robot did not stop at the task2.py final location, because the simulation got reset after executing task2.py, the check for get_laser_readings() returns an unfavorable answer.

The main() also fails because the ROBOT IS NOT AT THE LOCATION WHERE IT IS SUPPOSED TO BE !
The robot must be close to the wall, turned ~90 degrees facing the exit. Instead it is at the starting place after simulation reset.

So, the final solution to fix this would be to somehow NOT TO RESET THE SIMULATION once task2.py is checked by the autograder.

Phew!.. That took me a while to wrap my head around!

@bayodesegun , @rtellez , @rzegers ,
I request one of you to please look into this issue and also please let me know if I am wrong.

Sincerely,
Girish

PS: Very sorry for the long post.

@girishkumar.kannan

I’m sorry for all the trouble, and for getting you annoyed.

It was my mistake. I recently made that change to reset the simulation after Python task 2, without checking the implication.

I have corrected it now. Please try again.

Hi @bayodesegun ,

Thanks for your response. I think the issue is still not fixed. I feel bad to bother you again.

The good news is, get_laser_readings() test is successful.
The bad news is, main() test is reporting as failed, although my output is same as expected output.

Attached image below.
On the left of the image, I have marked the “expected behavior” result image.
On the right side of the image, I have marked the final position of my robot (stopped) after main() function is complete.

Yet due to some internal measurement / value matching issues, my end result is getting reported as failed.

Again, I feel really bad to continue on this issue. But I have to do this. Sorry for any inconvenience I am causing you.

Thanks,
Girish

PS: Just to cheer you up, I am planning to take all the certificate courses in ROS 1 and 2 along with non-certificate learning-path courses. So I will stay subscribed for at least 3 months!

Hi @girishkumar.kannan

Glad that you got unstuck. Thanks for your feedback.

Perhaps you need to let your robot move forward a bit more, so that the laser readings indicate that it’s completely clear of the room (inf values for the left and right lasers). You can check that is so from the code by testing for these values.

Hi @bayodesegun ,

Thanks for your reply,
I did check my left, right and center values for infinity, and they are all infinity. But still the report fails. I do not know why.
Additionally, since the robot only has a 180 degree laser, I checked if all values through 0-719 are infinity and they all are. And still, it reports failed.

Thanks,
Girish

Hi @bayodesegun ,

I ran the exam autograder again today (29/08/2022). To my surprise, autograder worked well.
Attached screenshots below.

Also one more request, could you update my score on the certificate of the Prerequisites Exam for Linux and Python. It is currently at 80% as my grade. I have completed 100%.

Screenshots of completion:

Thanks in advance.
— Girish

Glad you got it eventually.

I have upgraded your score to 100%

1 Like

@bayodesegun

Thank you very much!

— Girish

This topic was automatically closed 24 hours after the last reply. New replies are no longer allowed.