Design a bigger and harder maze

Assignment Help Programming Languages
Reference no: EM131102472

E91: Humanoid Robotics - Spring 2013 - Assignment 1

Task 1: Install & run software.

First, download the starter code onto your laptop from this link-(https://www.swarthmore.edu/NatSci/mzucker1/e91/e91starter_week1.zip). In order to get the code running, you will need an installation of Python, along with these packages:

  • Numpy (https://www.scipy.org/install.html)
  • Python Imaging Library (PIL) (https://www.pythonware.com/products/pil/)
  • PyOpenGL (https://pyopengl.sourceforge.net/)

On Ubuntu linux, you should be able to type something like this at the command prompt to install them:

sudo apt-get install python-numpy python-imaging python-opengl

If you have a Mac with MacPorts installed, you can instead run:

sudo port install py27-numpy py27-pil py27-opengl py27-opengl-accelerate

sudo port select --set python python27

To be perfectly honest, I'm not sure what the best way to get these packages installed on Windows is. Let me know if you're having trouble doing so.

To run the software, go into the starter directory, and run any of the scripts there. I'd suggest running them in the following order:

  • collisions.py
  • kintest.py
  • rrt2d.py
  • rrtTransRot.py
  • rrtArm.py

The supporting code lives in the common directory. The code is actually fairly well commented, and the supporting modules even have pydoc (https://docs.python.org/2/library/pydoc.html) compatible documentation for easy browsing. Take some time to read over the code and play with each of the demo scripts.

Task 2: Do something cool with RRT's.

This is an open-ended task. Your main goal should be to understand how RRT's work, and to apply them in practice to solve a problem of your own design. Ideas to get you started:

Easy: Design a bigger and harder maze for the 2D and/or translation/rotation problems and see how it affects planning.

Easy: Vary the number of obstacles and/or number of links for the arm RRT demo, and see how it affects planning.

Medium: Make up your own new problem to solve with an RRT, for example a translating and rotating "snake-like" arm.

Medium: Swap the start and goal states for the arm problem and see if it improves planning times.

Medium: Modify the translation/rotation problem to get an L-shaped beam through a narrow passage, like in the assigned reading. (Note that since the L shape is not convex, you need to represent it with two polygons instead of just one -- see me if you want further details.)

Hard: Implement the Bi-directional RRT from the assigned reading by adding another tree. To do this, you'll probably need to get at the guts of the RRT class defined in common/RRT.py.

Produce a webpage demonstrating your planner. Make at least one movie of a successful plan, and describe how often it succeeds and fails (visualations of the search tree can be very helpful here). Did you have to tweak a lot of parameters to get it to work? Would it still work well if you changed the problem slightly?

Reference no: EM131102472

Questions Cloud

Describe how financial institutions create money : Describe how financial institutions create money. Describes the process of creating money. Differentiate process of creating money from minting coins or printing bills. Explain how the Federal Reserve System uses government borrowing to create money
How would you propose that accounting principles : If you were given complete authority in the matter, how would you propose that accounting principles or standards should be developed and enforced?
Question regarding the member variable : Your class should have a constructor, one additional method and at least one member variable (e.g. boolean isOn to turn the item on or off). Be sure you demonstrate your class works properly by constructing an instance of it and calling your metho..
Illustrate the effect of using a demodulation carrier : show that carrier reinsertion can be used to demodulate a SSB signal. Illustrate the effect of using a demodulation carrier with insufficient amplitude when using the carrier reinsertion technique.
Design a bigger and harder maze : E91: Humanoid Robotics - Spring 2013 - Assignment 1. Design a bigger and harder maze for the 2D and/or translation/rotation problems and see how it affects planning
The neoclassical consumption model allows consumers : The neoclassical consumption model allows consumers to have access to savings. How would our conclusions about consumption in each period change if the consumer could not access markets for savings? For full credit you must support your answer using ..
How come staff will have sufficient time to check vouchers : How come you said that you can finish the audit within 4 weeks? How come your staff will have sufficient time to check all the vouchers and statements for last year?
Display the number of scores entered : Write a C++ program that uses a do or a while loop that has the user enter golf scores, terminated by a zero. After the zero has been entered, display the number of scores entered and their average.
Determine the horizontal force f applied to the cord : The springs AB and BC have stiffness k and unstretched lengths l/2. Determine the horizontal force F applied to the cord which is attached to the small pulley B so that the displacement of the pulley from the wall is d.  Given: l = 6 m k = 500 N/m d ..

Reviews

Write a Review

Programming Languages Questions & Answers

  Write a haskell program to calculates a balanced partition

Write a program in Haskell which calculates a balanced partition of N items where each item has a value between 0 and K such that the difference b/w the sum of the values of first partition,

  Create an application to run in the amazon ec2 service

In this project you will create an application to run in the Amazon EC2 service and you will also create a client that can run on local machine and access your application.

  Explain the process to develop a web page locally

Explain the process to develop a Web page locally

  Write functions

These 14 questions covers java class, Array, link list , generic class.

  Programming assignment

If the user wants to read the input from a file, then the output will also go into a different file . If the user wants to read the input interactively, then the output will go to the screen .

  Write a prolog program using swi proglog

Write a Prolog program using swi proglog

  Create a custom application using eclipse

Create a custom Application Using Eclipse Android Development

  Create a application using the mvc architecture

create a application using the MVC architecture. No scripting elements are allowed in JSP pages.

  Develops bespoke solutions for the rubber industry

Develops bespoke solutions for the rubber industry

  Design a program that models the worms behavior

Design a program that models the worm's behavior.

  Writing a class

Build a class for a type called Fraction

  Design a program that assigns seats on an airplane

Write a program that allows an instructor to keep a grade book and also design and implement a program that assigns seats on an airplane.

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