Curtin College in association with Curtin University FUNDAMENTALS OF PROGRAMMING ASSIGNMENT TRIMESTER- One 2021 DUE: Sunday May 9, 23:59 UTC+8 BACKGROUND In your practicals, you have learned about how...

help me with the code


Curtin College in association with Curtin University FUNDAMENTALS OF PROGRAMMING ASSIGNMENT TRIMESTER- One 2021 DUE: Sunday May 9, 23:59 UTC+8 BACKGROUND In your practicals, you have learned about how to use programming to model problems and simulate real world behaviours and soon you will learn about automation. In this assignment, you are to develop a model and then utilise it in simulating a solution to the given problem. THE PROBLEM Driverless Bus Automation Driverless cars are one of the greatest inventions of mankind which has taken digital programming and automation to the next level. You will need to implement and automate the working of driverless bus as per the model given in the specification. The problem is mainly to find out the priority of the route taken by the driverless bus depending upon the number of passengers waiting in the queue at the main stop. In addition to the above mentioned problem you will need to plot the routes taken by the bus in the same order as above. SPECIFICATION The assignment is divided into two tasks: Task 1- Automation of the routes of driverless bus and Task 2- Plotting the routes taken by the bus in the same order. Note that task 1 needs to be done first followed by task 2. Figure 1: Diagram of the Model muhammad faisal muhammad faisal Curtin College in association with Curtin University TASK 1: Driverless Bus Automation (40%) Figure 1 shows the working model of a driverless bus in the city. There are 4 stops for the bus: Main Stop, Stop A, Stop B and Stop C. The main stop has six queues which are populated by people willing to take a ride in the bus to travel to the three stops –A, B and C. The main stop has a sensor which identifies the queue with maximum people and it then sends the signal to the bus. The priority goes to the queue which has maximum number of passengers. If queues 1 or 2 have maximum number of passengers then the bus will go to Stop A first, if queues 3 or 4 fills up first then the bus will go to the Stop B else bus will go to Stop C. Bus will always come back to the main stop after dropping the passengers to any of the Stop and then decides its next destination as per the priority of the queue which is again decided by the number of passengers. The starting point of the bus is the main stop and the ending point will be any of the three other stations. The criteria is that the bus should visit all the stops one by one depending upon the queues getting filled. Implement and simulate the above given model by object oriented programming concepts. Identify the classes and objects in the problem. For example, the passengers in the queues can be represented as objects and you can easily populate the queue this way. There is a flexibility given to you for implementing the queues as they can be implemented using arrays or classes. However, the overall simulation should be completed by using classes and objects. Note: You can do the coding using Vim on terminal or Jupyter notebook. TASK 2: Plotting the Simulation (20%) This task needs you to plot the above mentioned simulation with the help of matplotlib package. The plot should have the route starting from the main point (main station) to the end point (Stop which comes last as per the above simulation) ………………………………………………………………………………………………………………………………………. You can have one or two different code files for two different tasks. USER GUIDE AND REPORT (35%) You need to submit your User Documentation and Report in doc/docx, pdf or Jupyter Notebook format. Your User Documentation will be minimum 3-5 pages, with a section for each simulation and should include the following: • An overview of each of your program's purposes and features. • A guide on how to use your programs/simulations. • A discussion of your code, explaining how it works, any additional features and how you implemented them. The Driverless Bus Automation report will comprise of a mini-paper that is 2-3 pages long and follow the structure of a standard academic report. Required sections are: muhammad faisal Curtin College in association with Curtin University • Abstract: Explain the purpose of the simulation and state the parameters you have considered in designing the simulation, and the outcomes/recommendations. • Background: Discuss the purpose of the program/simulation and your choice of parameters. • Methodology: Describe how you have chosen to set up the simulation, and why. Include commands, input files, and outputs – anything needed to reproduce your results. • Results: Present the results of your simulations – include tables, plots and discussion. • Conclusion and Future Work: Give conclusions and what further investigations could follow. • References (You can find examples on google but do not copy and paste. Just use the examples as reference) CODING STANDARDS (5%) Your code submission must conform to coding standards emphasised in the lecture and practicals. Remember: consistency is key! SUBMISSION Submit electronically via Moodle. Make sure to submit early. You can submit multiple times – we will only mark the last attempt. Take care not to submit your last version late though. Read the submission instructions very carefully. You should submit a single file, which should be zipped (.zip). The file must be named FOP_Assignment_ where the is replaced by your student id ignoring the angle brackets. There should be no spaces in the file name; use underscores as shown. The file must contain the following: • Your code. This means all files needed to run your program. That includes input files used as part of the assignment if that is required to run your program. • README file including short descriptions of all files and dependencies, and information on how to run the programs. • User Documentation, as described above. • A signed and dated cover sheet. These are available on Moodle You can sign a hard copy and scan it in or you can fill in a soft copy and digitally sign it. Make sure that your zip file contains what is required. Anything not included in your submission may not be marked, even if you attempt to provide it later. It is your responsibility to make sure that your submission is complete and correct. muhammad faisal Curtin College in association with Curtin University REQUIREMENTS FOR PASSING THE UNIT Please note: As specified in the unit outline, it is necessary to have attempted the assignment reasonably in order to pass the unit- Assignment is a Unit Hurdle. Section 2.5 of Unit outline explains the weightage associated with the assignment which is 30% of overall marks. As a guide you should get 40% in the assignment to pass this Unit. Note that the marks indicated in this section represent maximums, achieved only if you completely satisfy the requirements of the relevant section. Plagiarism is a serious offence. This assignment has many correct solutions so plagiarism will be easy for us to detect (and we will). For information about plagiarism, please refer to http://academicintegrity.curtin.edu.au. In the case of doubt, you may be asked to explain your code and the reason for choices that you have made as part of coding to the unit coordinator. A failure to adequately display knowledge required to have produced the code will most likely result in being formally accused of cheating. Finally, be sure to secure your code. If someone else gets access to your code for any reason (including because you left it on a lab machine, lost a USB drive containing the code or put it on a public repository) you will be held partially responsible for any plagiarism that results. LATE SUBMISSION As specified in the unit outline, you must submit the assignment on the due date. Acceptance of late submissions is not automatic and will require supporting documentation proving that the late submission was due to unexpected factors outside your control. See the unit outline for details as to the procedure for requesting that an assessment be accepted after the due date. Also note that IT related issues are almost never a valid excuse. In the event that you submit your assignment late and are deemed to have a valid excuse, you will be penalised 10% (that is, 10% out of 100%, not out of what you would have received) per calendar day that you are late, up to a maximum of seven (7) calendar days. Any work submitted after this time will not be marked and you will automatically fail the unit. Note that if you are granted an extension you will be able to submit your work up to the extended time without penalty – this is different from submitting late. CLARIFICATIONS AND AMENDMENTS This assignment specification may be clarified and/or amended at any time. Such clarifications and amendments will be announced on the unit’s Blackboard page. These clarifications and amendments form part of the assignment specification and may include things that affect mark allocations or specific tasks. It is your responsibility to be aware of these by monitoring the Assignment Assessment Blackboard page. http://academicintegrity.curtin.edu.au/ http://academicintegrity.curtin.edu.au/ muhammad faisal muhammad faisal
May 11, 2021
SOLUTION.PDF

Get Answer To This Question

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here