Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: THEend8_
Assignment 1
Assessment Type: Individual assignment; no group work. Submit online via Canvas→Assignments→Programming
Assignment 1. Marks awarded for meeting requirements as closely as possible. Clarifications/updates may be made via
announcements/relevant discussion forums.
Please check
Canvas→Syllabus or via Canvas→Assignments→Programming Assignment 1 for the most up to date information.
As this is a major assignment in which you demonstrate your understanding, a university standard late penalty of 10% per
each working day applies for up to 5 working days late, unless special consideration has been granted.
Weighting: 15 marks
1.1 Overview
In this assignment you will implement a simplified algorithm for Path Planning, and use it with a simple simulated 2D robot moving
around a room.
In this assignment you will:
Practice the programming skills covered throughout this course, such as:
– Pointers
– Dynamic Memory Management
– Provided API
Correctly Implement a pre-defined API
Implement a medium size C++ program
Use a prescribed set of C++11/14 language features
This assignment is divided into four Milestones:
Milestone 1: Writing Unit Tests
Milestone 2: Minimum required component for implementing a simple Grid Search
Milestone 3: Optional component to extend the search for a simplified path planner
Milestone 4: Optional component for efficient memory management
If there are questions, you must ask via the relevant Canvas discussion forums in a general manner (replicate your problem in a
different context in isolation before posting).
1.2 Relevant Lecture/Lab Material
To complete this assignment, you will require skills and knowledge from lecture and lab material for Weeks 2 to 4 (inclusive).
You may find that you will be unable to complete some of the activities until you have completed the relevant lab work.
However, you will be able to commence work on some sections. Thus, do the work you can initially, and continue to build in new
features as you learn the relevant skills.