1. Homepage
  2. Programming
  3. CT074 Concurrent Programming - Assignment: Airport Simulation

CT074 Concurrent Programming - Assignment: Airport Simulation

Engage in a Conversation
MalaysiaAPUAsia Pacific University of Technology & InnovationCT074Concurrent ProgrammingAirport SimulationJava

Concurrent Programming - CT074-3-2 CourseNana.COM

Asia Pacific University of Technology & Innovation CourseNana.COM

Objective:

This assignment has been designed for students to apply appropriate concurrent program methods in implementing a concurrent program from a program specification. CourseNana.COM

Case Study

The Problem

This part of the assignment will require you to implement the airport simulation, as broken down in the sections below. The management of an airport thinks that the way in which the airport is operated means that incoming flights must spend too much time waiting for landing clearance. To evaluate the situation a simulation of the airport has been commissioned. This simulation will simply run with text output describing the events as they occur in the airport and collect a minimal amount of statistical data. CourseNana.COM

Intention of assignment

Even if valuable to the owner, the simulation is not the main purpose of this assignment indeed, if this was the case there are much better techniques for simulating than writing a concurrent program. The requirement of this assignment is to implement a program in which synchronization and communication takes place between several concurrent processes. It is intended to force you to solve (and not simply avoid) a range of interesting synchronisation problems. CourseNana.COM

Asia Pacific Airport

You have been tasked to simulate the operations of the airport. ***Basic Requirements** • There is only 1 runway for all planes to land and depart. CourseNana.COM

• There can only be 2 airplanes on the airport grounds, including the runway. This is to ensure that the aircraft does not collide with another aircraft on the runway or gates CourseNana.COM

• Once an aircraft obtains permission to land, it should land on the runway, coast to the assigned gate, dock to the gate, allow passengers to disembark, refill supplies and fuel, receive new passengers, undock, coast to the assigned runway and take-off. • Each step should take some time. • As the airport is small, there is no waiting area on the ground for the planes to wait for a gate to become available. CourseNana.COM

Figure 1: Layout of the Asia Pacific Airport (Not to scale) *****Additional Requirements**** These events should happen concurrently: CourseNana.COM

  • Passengers disembarking/embarking from the 2 gates.
  • Refill supplies and cleaning of aircraft

As there is only 1 refuelling truck, this event should happen exclusively: CourseNana.COM

  • Refuelling of aircraft

A congested scenario should be simulated where 2 planes are waiting to land while the 2 gates are occupied, and a 3rd plane comes in with fuel shortage, requiring emergency landing. CourseNana.COM

State your assumptions and how you will implement them. CourseNana.COM

The Statistics

At the end of the simulation, i.e., when all planes have left the airport, the ATC manager should do some sanity checks of the airport and print out some statistics on the run. The result of the sanity checks must be printed. You must • Check that all gates are indeed empty. CourseNana.COM

• Print out statistics on CourseNana.COM

  • Maximum/Average/Minimum waiting time for a plane.
  • Number of planes served/Passengers boarded.

Deliverables:

For this exercise, you are to model the ATC scenario and design a Java program to simulate activity for the airport: • Altogether, 6 planes should try to land at the airport. CourseNana.COM

• Use a random number generator, so a new airplane arrives every 0, 1, 2, or 3 seconds. (This might be accomplished by an appropriate statement sleep (rand.nextInt(3000)); CourseNana.COM

• Assume each plane can accommodate maximum 50 passengers. CourseNana.COM

• Assume passengers are always ready to embark and disembark the terminal (i.e., no capacity issues inside the passenger terminals) CourseNana.COM

Sample Output

In order to see what is happening dynamically you must have output from the passengers, the air traffic controller, and the pilots reporting all their major events. Add information about which process/thread is doing the output. This way you can see if a process/thread acts for another, which is strictly forbidden, but is a common error for Java solutions (objects are not processes!). An example of such incorrect behaviour is Thread-ATC : Plane 5: Requesting permission to land! MainThread : ATC: Please wait and join the circle queue. Thread-Passenger-8 : I’m boarding Plane 2 now. Where you can see that not only the ATC thread is acting for Plane 5, but also the main thread is acting for the ATC. You must not • Kill a thread or process. You may not use any of the following primitives in Java: o Thread.stop CourseNana.COM

o Thread.resume CourseNana.COM

o Thread.suspend CourseNana.COM

o Thread.interrupt CourseNana.COM

You may not use the destroy or stop(0) primitives in - except to take care of temporary resources like simple timers. • Solve the last orders problem in a manner forbidden in the description above. CourseNana.COM

• Resolve communication with an all-purpose one-channel solution. CourseNana.COM

Implementation

You should implement your simulation in Java. Each simulation run should not take more than 60 seconds to simulate. CourseNana.COM

Documentation for System (Week 12)

The documentation should detail the system implementation and testing. CourseNana.COM

  1. Basic requirements met: • List of requirements met. CourseNana.COM

    • Code snippet of the Java concurrent programming facilities implemented.
    • Explanations of concurrency concepts (atomic statements, synchronization, etc) implemented if not stated in Part 1.
  2. Additional requirements met: • List of requirements met. CourseNana.COM

    • Code snippet of the Java concurrent programming facilities implemented.
    • Explanations of concurrency concepts (atomic statements, synchronization, etc) implemented if not stated in Part 1.
  3. Requirements which were NOT met: • List of basic requirements. • List of additional requirements CourseNana.COM

No more than 1000 words excluding references/appendix/coding. Submission for System (Week 12) CourseNana.COM

  • Documentation for system o The documentation file should be named TP0XXXXX CCP Document.docx
  • Java files required to run the simulation. o Zipped into a single zip file named TP0XXXXX CCP.zip
  • Video of the simulation running. Maximum 5 minutes per person. o Simulate scenarios as stated above. o Show which requirements are met in the output and corresponding code. o The video file should be named TP0XXXXX CCP Video.zip

Get in Touch with Our Experts

WeChat (微信) WeChat (微信)
Whatsapp WhatsApp
Malaysia代写,APU代写,Asia Pacific University of Technology & Innovation代写,CT074代写,Concurrent Programming代写,Airport Simulation代写,Java代写,Malaysia代编,APU代编,Asia Pacific University of Technology & Innovation代编,CT074代编,Concurrent Programming代编,Airport Simulation代编,Java代编,Malaysia代考,APU代考,Asia Pacific University of Technology & Innovation代考,CT074代考,Concurrent Programming代考,Airport Simulation代考,Java代考,Malaysiahelp,APUhelp,Asia Pacific University of Technology & Innovationhelp,CT074help,Concurrent Programminghelp,Airport Simulationhelp,Javahelp,Malaysia作业代写,APU作业代写,Asia Pacific University of Technology & Innovation作业代写,CT074作业代写,Concurrent Programming作业代写,Airport Simulation作业代写,Java作业代写,Malaysia编程代写,APU编程代写,Asia Pacific University of Technology & Innovation编程代写,CT074编程代写,Concurrent Programming编程代写,Airport Simulation编程代写,Java编程代写,Malaysiaprogramming help,APUprogramming help,Asia Pacific University of Technology & Innovationprogramming help,CT074programming help,Concurrent Programmingprogramming help,Airport Simulationprogramming help,Javaprogramming help,Malaysiaassignment help,APUassignment help,Asia Pacific University of Technology & Innovationassignment help,CT074assignment help,Concurrent Programmingassignment help,Airport Simulationassignment help,Javaassignment help,Malaysiasolution,APUsolution,Asia Pacific University of Technology & Innovationsolution,CT074solution,Concurrent Programmingsolution,Airport Simulationsolution,Javasolution,