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

  Mathematics in computing

Binary search tree, and postorder and preorder traversal Determine the shortest path in Graph

  Ict governance

ICT is defined as the term of Information and communication technologies, it is diverse set of technical tools and resources used by the government agencies to communicate and produce, circulate, store, and manage all information.

  Implementation of memory management

Assignment covers the following eight topics and explore the implementation of memory management, processes and threads.

  Realize business and organizational data storage

Realize business and organizational data storage and fast access times are much more important than they have ever been. Compare and contrast magnetic tapes, magnetic disks, optical discs

  What is the protocol overhead

What are the advantages of using a compiled language over an interpreted one? Under what circumstances would you select to use an interpreted language?

  Implementation of memory management

Paper describes about memory management. How memory is used in executing programs and its critical support for applications.

  Define open and closed loop control systems

Define open and closed loop cotrol systems.Explain difference between time varying and time invariant control system wth suitable example.

  Prepare a proposal to deploy windows server

Prepare a proposal to deploy Windows Server onto an existing network based on the provided scenario.

  Security policy document project

Analyze security requirements and develop a security policy

  Write a procedure that produces independent stack objects

Write a procedure (make-stack) that produces independent stack objects, using a message-passing style, e.g.

  Define a suitable functional unit

Define a suitable functional unit for a comparative study between two different types of paint.

  Calculate yield to maturity and bond prices

Calculate yield to maturity (YTM) and bond prices

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