Motion planning of robots description

Assignment Help Computer Engineering
Reference no: EM131742740

Topic: Motion planning of robots Description

This is the final project of the course. The project can be done alone or in a group of at most 4 people. The project contributes to 12% of your total grade. You must use CANVAS to form your own group.

The purpose of this project is to utilize and build upon your knowledge in graph searching algorithms. In robotics, it is common to traverse through rooms or buildings and gather data. To do this the robot traverses through, using graph searching, until it finds the way out. In this project you will be implementing a motion planning algorithm which coordinates the motion of two robots in a room with obstacles. We will consider a room to be consisting of squares, henceforth called spots. The first robot starts at starting point S and has to travel to exit location E. The second robot starts at starting location F and has to travel to exit location L. In the room, a robot can only move at most one spot per movement, which could be north, south, east, west, north-east, north-west, south-east and south-west. This means that a robot can't teleport to other parts of the room. Furthermore, for coordination purposes:

Only one robot moves in one time instant. The two robots may alternate their movements, but they never move simultaneously.

In order to maintain their coordination, they are not allowed to be in the same spot or in spots neighboring each other.

You cannot assume dimensions of the room as each line of the room may be sized differently than other lines. An example input that you should expect will be similar to the sample input file is included below and in CANVAS.

Constraints

The most natural way to implement the project is to view the room as a graph with each square representing a vertex (what are the edges?) If you choose to use this representation, you will develop a graph traversal algorithm which finds a path for the first robot from (S) to (E) and a path for the second robot from (F) to (E) such that the two robots are never in the same spot or in neighboring spot. The constraints of the program include:

1. The program can be written in C. Your program must run on tc.rnet.missouri.edu.

2. Either use a netbeans project or use a Makefile to compile and run the program. Please do not use Visual Studio.

3. Include a README file to tell the TA how to run your program and how to interpret your output.

4. You should include a project report in which you detail your efforts, the algorithms used (along with their complexity) and the contribution of your team members.

5. You may not use any graph theory libraries to solve this program.

6. A moderate amount of error checking and resource management is required. Your application should check that each line from the input file is properly formatted, that the file is successfully opened, the file is successfully closed upon reading of the file and that all allocated space is de-allocated at the exit. If the input is not properly formatted, you should report the error on stdout and exit the program.

7. You may use standard input/output libraries, arrays, vectors, stacks, heaps, lists and queues. If using other libraries, please check with us.

8. A moderate amount of formatting and documentation is required. Comments should be descriptive and used to illustrate the purpose and inner workings of an algorithm or function; they should not be used to annotate each line or self-evident logic.

Input

Your program should take at least one argument on the command line. This argument is the input file to the program. input file itself is formatted as follows. The input file is the floor plan of the room. In the floor plan, each character of the floorplan means:

1. #: Wall or obstacle

2. End of line character and start of line also indicates that you have reached a wall.

3. Space: Empty spot that a robot can move to.

4. S: Starting position of the first robot in the room.

5. E: Exit position of the first robot in the room.

6. F: Starting position of the second robot in the room.

7. L: Exit position of the second robot in the room.

Reference no: EM131742740

Questions Cloud

Forward and backward passes : Critical Path Analysis, Program Evaluation, and Review Technique. Forward and Backward Passes, Slack Time, and Project Crashing.
What information is lacking when you review the statistics : What information is lacking when you review the statistics. Why might it be important in gaining a fuller picture of poverty?
Collect the partnership loan from johnson : Assume Big Bank attempts to collect the partnership loan from Johnson. Does Johnson's limited partnership status protect him from Big Bank's attempt to collect.
Share the different ways their products do less harm : Do you think they should use their social media to post how they are not harming the environment or should they use it to market the benefits of their products.
Motion planning of robots description : CS 3050: Group Project - Motion planning of robots Description and The project can be done alone or in a group of at most 4 people.
Differing opinions and perceptions of native americans : Why do you think these three writers had such differing opinions and perceptions of Native Americans
Describe the essential systems necessary to facilitate : Consider an organization in your field or industry. Describe the essential systems necessary to facilitate continuous change without compromising quality
Describe the theme and element of fiction : Describe the theme, element of fiction, or critical approach that you're focusing on-not by announcing
Discuss the importance of organisational structure : Discuss the importance of organisational structure and culture for effective organisational performance. The impact of technology on team functioning.

Reviews

len1742740

11/29/2017 5:47:38 AM

The program needs to be done in C and compile in Unix or be a netbeans project is the date by which you must form the composition of your team. • During the week of 1, please try to meet one of the TAs or myself during office hours and show the progress of the project. If the times do not work, please send us an email and we will try to find additional time to check the progress. • The final submission is due at 11:59:59 pm.

len1742740

11/29/2017 5:46:42 AM

You should place all your submission material into a folder named as follows: pawprint1 pawprint2 pawprint3 project. Where the pawprint1 pawprint2 pawprint3 is the list of you and your group member pawprints. You will submit one file, a compressed directory containing all the source code and appropriate Makefile(s). The naming convention should be: pawprint1 pawprint2 pawprint3 project.tgz or pawprint1 pawprint2 pawprint3 project.zip. Grading There are 120 points possible for this assignment. The grade breakdown is as follows: • 15 points for README, error checking and resource management. • 15 points for general programming style and adherence to the constraints. • 20 points for the project report. • 15 points for correctly inputting the floorplan. • 55 points for finding and displaying the paths taken by the robots.

Write a Review

Computer Engineering Questions & Answers

  Computer architectureinput devicesnbspwrite a two to three

computer architectureinput devicesnbspwrite a two to three 2 page paper in which youcompare how the gestures data is

  Read the case study titled a patient information system

read the case study titled a patient information system for mental health care located in chapter 1 of your textbook.

  Draw schematic diagram of the controller showing the address

Assume that a dynamic RAM controller is available for an 8K RAM with multiplexed addresses. Draw the schematic diagram of the controller showing the address.

  How dedicated technician to maintain your wan interfaces

When there is a network outage, how do companies find out the network boundary.

  Prepare a set of nonfunctional requirements

Prepare a set of nonfunctional requirements, including operational requirements, performance requirements, security requirements, and cultural and political requirements. Much information is incomplete, but do your best.

  What do you mean by sensitivity analysis how would you use

what is a sensitivity analysis? how would you use it in planning for future expansions? what role does this kind of

  Find the impulse response for an ideal bandpass filter

Find the impulse response for an ideal bandpass filter. Show that the tilter bandwidth is in- versely proportional to the width of the impulse response.

  Implementing the python atm program

Write down a simple Python ATM program. Ask user to enter their account number, and then print their beginning balance. Then ask them if they wish to make a deposit or a withdrawal.

  Ways that virtualization is accomplished using software

Can you explain one or two ways that virtualization is accomplished using software and hardware

  Are there any other feasible choices they could have made

As process-design technology allows engineers to put ever more transistors on a chip, Intel and AMD have chosen to increase the number of cores on each chip. Are there any other feasible choices they could have made instead?

  Describe the instructional settings for the training being

Describe the instructional settings for the training being. Illustrate the instructional activities for deliver training on the task(s). Indicate all needed technology components that you plan to integrate into the training.

  What is the value of the given twos complement number

What is the value of the following 2's complement number? What technique is being utilized when high performance is obtained by subdividing the clock cycle into a number of sub-intervals Pipelining technique.

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