Design and use computer package incorporating the techniques

Assignment Help DOT NET Programming
Reference no: EM13316872

Title: Mars Lander - Part A

Related objectives from the unit outline:

  • design and use computer packages incorporating the techniques associated with computational intelligence;
  • investigate the application of these intelligent systems techniques to a relevant problem;
  • apply relevant technique(s) to a task normally considered to require

computational intelligence.

Specific learning outcomes:

After completing this assignment, you should be able to apply intelligent systems techniques to design and implement a solution to a "realistic" problem.

Part A:

ECU is planning a mission to put a lander vehicle on Mars. Your job is to create the software to control the lander's thrusters so that the lander makes a safe landing.

For Part A, you may work in teams of 1, 2 or 3 people. This will be a simplified  task where you just have to control the speed of the descent. The task will be  made more realistic for Part B, and you will have to complete Part B on your own.  You have been provided with a software simulation with which to develop and  test your controller.

Instructions:

Download Lander.zip from BlackBoard. Extract the files to a suitable location. You should find a folder called Lander, with an image file and a subfolder called  src inside. Using NetBeans, create a project using Lander as the project folder  and src as the source folder. Remember to add is.jar to the project's libraries. Build the project, and you should be able to run the Simulator class. It should open a window like this:

In this window you should see:

  • An animation window with

o an image of the Martian surface as the background,
o a dotted vertical line,
o a dotted horizontal line - the lander will drop down the vertical line
and lands (or crashes) when it reaches the horizontal line.
o You can see the bottom of the lander at the top of this window

  • A control panel in the top left with

o A Go button - press this to start a new simulation,
o A pause/resume button - use this to pause and resume a simulation once it has started

  • A readout panel showing

o The speed of descent of the lander
o How much fuel it has remaining
o The current thrust being used to slow the lander

  • A fitness readout - this will show a score out of 100 when the lander either lands successfully or crashes. The score depends on the speed when it lands (slower is better), the amount of fuel left (more is good if you land,bad if you crash).

Press the Go button, and the lander will begin to descend. Shortly, the window might look like this:
Now you can see the lander. The small green dor with the line pointing out of it shows the turbulence being experienced by the lander (there are strong buffeting winds in the Martian atmosphere). Examine the source of FuzzyController.java . This is an example controller that
you can use as a starting point. This program should look familiar, as it is similar to controllers that you have looked at in lectures and workshops.

It implements the Controller interface, meaning that it has a method like this:
    /**
     *
* @param height - distance above ground in m
* @param speed - rate of descent in m/s
* @param fuel - amount of fuel left in kg
* @return - thrust in N
* @throws ControllerException
     */
public double getThrust(double height, double speed, double fuel) throws ControllerException;

As the lander descends, it passes its current height, speed, and fuel to the controller, which sends back how much thrust to apply to try to slow the lander in a controlled way.

There is also another class called LanderEvaluator. You can also run this class, and it will simulate a number of landings without the graphics, and report the average score achieved.

Your task

Your task is to improve on the controller provided. I suggest you make a new class in the controller package with a unique name like JonnosController, using FuzzyController as a template, and then make changes to it. You will have to change Simulator.java and LanderEvaluator.java so that they use JonnosController instead of FuzzyController.

You are also required to keep a project logbook (template provided) and record the work that you do, what ideas you tried out, what worked and what didn't, what your learned and so on. An example of a good project log for a different assignment has also been provided on BlackBoard.

Important note: most of your marks come from this log, so any work or thinking that you want to get marks for has to be in the log!!

  • Appropriate use of Intelligent Systems techniques

Submit a zip file containing:

o Your completed project logbook, and
o Java source files for your controller. Note that your controller must use fuzzy rules to earn these marks, and it must be different from the
example FuzzyController.

  • Performance of the controller

The other 5% will be calculated using follows: Your controller will be tested using the LanderEvaluator class. You will receive (Your average -60)/8 %, rounded up to the nearest 0.5 %.

 

Attachment:- Assignment.zip

Reference no: EM13316872

Questions Cloud

How long will it take for concentration to be one-quarter : A batch system is assumed to be first order. The initial concentration is 225 mg/L. If the reaction rate constant is 0.65 hr^-1, how long will it take for the concentration to be one-quarter the starting concentration
What is the electric potential energy of the center electron : Three electrons are aligned on a straight line and separations between them are 1.0mm. What is the electric potential energy of the center electron
Define will a precipiate be consumed or produced at ph : The concentration of cadmium ion (Cd^+2) in water is 225 mg/L. Will a precipiate be consumed or produced at pH 9.0? Will a precipitate be consumed or produced at pH 7.5
What is the total charge in entropy of the mixture : Suppose 1.00kg of water at 100 degrees Celsius is mixed with 1.00kg of water at 0 degrees Celsius. What is the total charge in entropy of the mixture
Design and use computer package incorporating the techniques : Java source files for your controller. Note that your controller must use fuzzy rules to earn these marks, and it must be different from the example FuzzyController.
Determine the alkalinity and total carbonate concentration : If the pH of a natural water is 7.8, and the alkalinity was measured to be 125 meq/L, determine the following: - Alkalinity as mg/L CaCo3 - Approximate the total carbonate concentration (Ct), in moles per liter.
What is the concentration of hypochlorite ion in mg per l : If 5 mg of NaOCl are added to one liter of water and the pH is measured to be 7.8, what is the concentration of hypochlorite ion (OCl-) in mg/L
How much work must be done to stretch the spring : A spring with spring constant of 29 N/m is stretched 0.21 m from its equilibrium position. How much work must be done to stretch it
Determine the carburizing time necessary to achieve : Determine the carburizing time necessary to achieve a carbon concentration of 0.35 wt% at a position 2 mm into an iron-carbon alloy that initially contains 0.10 wt% C.

Reviews

Write a Review

DOT NET Programming Questions & Answers

  Design a web application using visual studio

Design a web application using Visual Studio.NET 2012 - the difference between the files is the character ‘h' is missing in the position 120 in the uploaded file.

  Develop web services based application

Develop and test a Web services based application that meets the requirements applying SOA design principles.

  Name some form controls used with dotnet

Managing validation becomes a rather onerous task when you have to design a contact form, an event registration form, a sign in form, etc. What are some form controls used with .NET? Explain your answer.

  Give their telephone numbers using one or more letters

People sometimes give their telephone numbers using one or more letters. write a program that accespts a 10 digit telephone number that may contain one or more letters. display the corresponding number using numerlas. the numbers and letters are a..

  Application that includes three arrays

Design an application that includes three arrays of type int. Allow the user to enter values into the first two. Write a method to store the product of the two arrays in the third array

  What is a connectionstring

What is a ConnectionString. Give a suitable example to illustrate the various part of a ConnectionString

  Develop an app that generates a random number

Develop an app that generates a random number and prompts the user to guess the number. When the user clicks the  New Game  Button, the app chooses a number in the range 1 to 100 at random

  Improve user interactivity with the site

Incorporates a consistent look and feel (10 pts) and an easy-to-use and consistent navigation toolset across the site and the entire site must be built around a common CSS Box model.

  Write c# program that declares variable to represent length

Please complete the following Programming Exercises listed in your book. All programs must be done according to these Programming Principles (properly formatted and commented). (If you want to see an example of a simple program, please see this Sa..

  Design and implement tower of hanoi puzzle program

Task: Design and implement Tower of Hanoi Puzzle program using C# and Windows Presentation Foundation (WPF) template in Visual Studio 2012 or newer.

  Describe the characteristics of visual studio 2005

Describe the characteristics of Visual Studio 2005 Visual Studio.Net is a suite of products that includes 4 main languages. Name these languages and outline their use in industries

  To simplify the problem, the values can each be placed

Use Notepad to place the following value in a text file: 86, 97, 144, 26. To simplify the problem, the values can each be placed on separate lines

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd