udacity / carnd-mpc-project Goto Github PK
View Code? Open in Web Editor NEWCarND Term 2 Model Predictive Control (MPC) Project
License: MIT License
CarND Term 2 Model Predictive Control (MPC) Project
License: MIT License
the speed unit in the simulator is actually m/s. If you do a conversion by multiplying 0.447, you are dealing with slower speed and will not work properly in the simulator.
Hello,
I experienced this error when I compiled:
Scanning dependencies of target mpc
[ 33%] Building CXX object CMakeFiles/mpc.dir/src/MPC.cpp.o
[ 66%] Building CXX object CMakeFiles/mpc.dir/src/main.cpp.o
[100%] Linking CXX executable mpc
ld: warning: directory not found for option '-L/usr/local/Cellar/libuv/1.12.0/lib'
**ld: library not found for -lipopt**
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [mpc] Error 1
make[1]: *** [CMakeFiles/mpc.dir/all] Error 2
make: *** [all] Error 2
I think the issue is with lipopt. What's the cause of this issue? Is it related to ipopt and Cppad?
Thank you
I tried to install Ipopt using install_ipopt.sh
on Ubuntu 18.04 64bit.
But, the error occurs in make install
process. The error message is as follows.
/usr/bin/install -c .libs/libcoinasl.so.1.3.6 /usr/local/lib/libcoinasl.so.1.3.6
/usr/bin/install: cannot create regular file '/usr/local/lib/libcoinasl.so.1.3.6': Permission denied
Makefile:740: recipe for target 'install-exec-local' failed
I checked install_ipopt.sh
. And, I enumerate my opinion.
prefix=/usr/local
make install
sudo make install
Listening to port 4567
Connected!!!
42["telemetry",{"ptsx":[-32.16173,-43.49173,-61.09,-78.29172,-93.05002,-107.7717],"ptsy":[113.361,105.941,92.88499,78.73102,65.34102,50.57938],"psi_unity":4.12033,"psi":3.733651,"x":-40.62,"y":108.73,"steering_angle":0,"throttle":0,"speed":0}]
Cost 2.37152e-322
cppad-20160000.1 error from a known source:
vector: index greater than or equal vector size
Error detected by false result for
i < length_
at line 477 in the file
/usr/include/cppad/utility/vector.hpp
mpc: /usr/include/cppad/utility/error_handler.hpp:207: static void CppAD::ErrorHandler::Default(bool, int, const char*, const char*, const char*): Assertion `false' failed.
已放弃 (核心已转储)
I wanna to know the MPC calculation speed ,I write the MPC algorithm by myself is 0.15s ,which is too slow , can anyone tell me the author algorithm calculation speed ??
When trying to get the ipopt version provided by the repository I get the following error:
svenkratz$ brew tap udacity/CarND-MPC-Project https://github.com/udacity/CarND-MPC-Project
==> Tapping udacity/carnd-mpc-project
Cloning into '/usr/local/Homebrew/Library/Taps/udacity/homebrew-carnd-mpc-project'...
remote: Counting objects: 1747, done.
remote: Compressing objects: 100% (1397/1397), done.
remote: Total 1747 (delta 294), reused 1738 (delta 294), pack-reused 0
Receiving objects: 100% (1747/1747), 2.46 MiB | 2.17 MiB/s, done.
Resolving deltas: 100% (294/294), done.
Error: Invalid formula: /usr/local/Homebrew/Library/Taps/udacity/homebrew-carnd-mpc-project/mumps.rb
Calling 'depends_on :mpi' is disabled!
Use 'depends_on "open-mpi"' instead.
/usr/local/Homebrew/Library/Taps/udacity/homebrew-carnd-mpc-project/mumps.rb:35:in `<class:Mumps>'
Please report this to the udacity/carnd-mpc-project tap!
Or, even better, submit a PR to fix it!
Error: Cannot tap udacity/carnd-mpc-project: invalid syntax in tap!
In your Readme give an instruction for install Ipopt:
And I saw that the Ipopt releases page or the Github releases page have a little different.
Ipopt releases page: build with script install_ipopt.sh
success
Github releases: build error because it lack ThirdParty
and BuildTools
folder
Maybe someone will have this issue and take a lot of time to correct it.
So if possible, please consider to update this information into your instruction.
When I try to install iopt with brew on MaxOSX Sierra I get:
Warning: Calling 'depends_on :fortran' is deprecated!
Use 'depends_on "gcc"' instead.
/usr/local/Homebrew/Library/Taps/udacity/homebrew-carnd-mpc-project/mumps.rb:38:in `<class:Mumps>'
Please report this to the udacity/carnd-mpc-project tap!
Call install_ipopt.sh with the source directory as the first argument, ex: ./install_ipopt.sh Ipopt-3.12.7 or bash install_ipopt.sh Ipopt-3.12.7
and it shows:
bash: ./install_ipopt.sh: There is no file or directory.
Because y-axis is up-down, then psi should be clockwise. Only this can explain why the initial orientation is 3.733667, which is in the 3rd quadrant.
How to set the simulation environment
the version of cppad brew installs seems to be different from the one this was tested with [(homebrew/science/cppad: stable 20150000 (bottled), HEAD)] in the sense that:
cppad.h is called cppad.hpp (just a warning in the compiler)
and
auto cost = solution.objvalue; in line 100 of MPC.cpp causes an error. My guess would be that it needs to be replaced by:
auto cost = solution.obj_value;
it would be cool if this can somehow be made compatible with both to avoid confusion at the review stage.
When trying to install iopt on macosx sierra with brew I get:
Warning: Calling 'depends_on :mpi' is deprecated!
Use 'depends_on "open-mpi"' instead.
/usr/local/Homebrew/Library/Taps/udacity/homebrew-carnd-mpc-project/mumps.rb:35:in `<class:Mumps>'
Please report this to the udacity/carnd-mpc-project tap!
Warning: Calling 'depends_on :fortran' is deprecated!
Use 'depends_on "gcc"' instead.
/usr/local/Homebrew/Library/Taps/udacity/homebrew-carnd-mpc-project/mumps.rb:38:in `<class:Mumps>'
Please report this to the udacity/carnd-mpc-project tap!
==> Downloading http://mumps.enseeiht.fr/MUMPS_5.1.1.tar.gz
######################################################################## 100.0%
==> make alllib LIBEXT=.dylib AR= -dynamiclib -Wl,-install_name -Wl,/usr/local/Cellar/mumps/5.1.1_1/lib/$(notdir $@) -undefined dynamic_lookup -
Last 15 lines from /Users/lukav/Library/Logs/Homebrew/mumps/01.make:
clang -fPIC -I../include -O -c symbfac.c -o symbfac.o
clang -fPIC -I../include -O -c interface.c -o interface.o
clang -fPIC -I../include -O -c sort.c -o sort.o
clang -fPIC -I../include -O -c minpriority.c -o minpriority.o
dynamiclib -Wl,-install_name -Wl,/usr/local/Cellar/mumps/5.1.1_1/lib/libpord.dylib -undefined dynamic_lookup -o libpord.dylib graph.o gbipart.o gbisect.o ddcreate.o ddbisect.o nestdiss.o multisector.o gelim.o bucket.o tree.o symbfac.o interface.o sort.o minpriority.o
make[2]: dynamiclib: No such file or directory
make[2]: [libpord.dylib] Error 1 (ignored)
echo libpord.dylib
libpord.dylib
if [ "./PORD/lib/" != "" ] ; then \
cp ./PORD/lib//libpord.dylib lib/libpord.dylib; \
fi;
cp: ./PORD/lib//libpord.dylib: No such file or directory
make[1]: *** [lib/libpord.dylib] Error 1
make: *** [c] Error 2
If reporting this issue please do so to (not Homebrew/brew or Homebrew/core):
udacity/carnd-mpc-project
/usr/local/Homebrew/Library/Homebrew/utils/github.rb:220:in `raise_api_error': curl failed! (GitHub::Error)
curl: (22) The requested URL returned error: 422 Unprocessable Entity
curl: (3) <url> malformed
from /usr/local/Homebrew/Library/Homebrew/utils/github.rb:178:in `open_api'
from /usr/local/Homebrew/Library/Homebrew/utils/github.rb:278:in `search'
from /usr/local/Homebrew/Library/Homebrew/utils/github.rb:225:in `search_issues'
from /usr/local/Homebrew/Library/Homebrew/utils/github.rb:238:in `issues_for_formula'
from /usr/local/Homebrew/Library/Homebrew/exceptions.rb:368:in `fetch_issues'
from /usr/local/Homebrew/Library/Homebrew/exceptions.rb:364:in `issues'
from /usr/local/Homebrew/Library/Homebrew/exceptions.rb:418:in `dump'
from /usr/local/Homebrew/Library/Homebrew/brew.rb:138:in `rescue in <main>'
from /usr/local/Homebrew/Library/Homebrew/brew.rb:30:in `<main>'
There is a problem with json.hpp, and I did use the installation scripts from the repository:
sven@fxgpu:~/temp/CarND-MPC-Project/build$ make
Scanning dependencies of target mpc
[ 33%] Building CXX object CMakeFiles/mpc.dir/src/main.cpp.o
In file included from /home/sven/temp/CarND-MPC-Project/src/main.cpp:10:0:
/home/sven/temp/CarND-MPC-Project/src/json.hpp: In function ‘bool nlohmann::operator<(nlohmann::basic_json<ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer>::const_reference, nlohmann::basic_json<ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer>::const_reference)’:
/home/sven/temp/CarND-MPC-Project/src/json.hpp:6057:62: error: wrong number of template arguments (1, should be 2)
return *lhs.m_value.array < *rhs.m_value.array;
Listening to port 4567
Connected!!!
2
42["telemetry",{"ptsx":[-32.16173,-43.49173,-61.09,-78.29172,-93.05002,-107.7717],"ptsy":[113.361,105.941,92.88499,78.73102,65.34102,50.57938],"psi_unity":4.120315,"psi":3.733667,"x":-40.62008,"y":108.7301,"steering_angle":0,"throttle":0,"speed":2.995219E-06}]
42["steer",{"steering_angle":0.0,"throttle":0.0}]
I do not know why I can not make successfully, it shows as follows:
`make[3]: Leaving directory '/home/usi/Downloads/Ipopt-3.12.8/build/Ipopt/src/Apps/CUTErInterface'
make[3]: Entering directory '/home/usi/Downloads/Ipopt-3.12.8/build/Ipopt/src/Apps'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/home/usi/Downloads/Ipopt-3.12.8/build/Ipopt/src/Apps'
make[2]: Leaving directory '/home/usi/Downloads/Ipopt-3.12.8/build/Ipopt/src/Apps'
make[2]: Entering directory '/home/usi/Downloads/Ipopt-3.12.8/build/Ipopt'
make[2]: Nothing to be done for 'all-am'.
make[2]: Leaving directory '/home/usi/Downloads/Ipopt-3.12.8/build/Ipopt'
make[1]: Leaving directory '/home/usi/Downloads/Ipopt-3.12.8/build/Ipopt'
make[1]: Entering directory '/home/usi/Downloads/Ipopt-3.12.8/build'
make[1]: Nothing to be done for 'all-am'.
make[1]: Leaving directory '/home/usi/Downloads/Ipopt-3.12.8/build'
my operation system: ubuntu 16.04.
gcc (Ubuntu 5.4.0-6ubuntu1~16.04.5) 5.4.0 20160609
GNU Make 4.1
`
Cannot run that checkout command (or revert) - it says something about "not a tree"
When I try to run to install ipopt on linux subsystem in windows 10 i am getting this error. Command i tried to execute:
sudo bash install_ipopt.sh Ipopt-3.12.8/
I have unzipped the source in project base directory itself.
Hi,
In the std::vector<double> MPC::Solve(const VectorXd &state, const VectorXd &coeffs)
method there are parts that (I think) can be done once, in the MPC::MPC
constructor, e.g.:
...
FG_eval fg_eval(coeffs);
...
Is there a reason for this?
Thus the installation script would not work anymore.
brew tap homebrew/science
Warning: homebrew/science was deprecated. This tap is now empty as all its formulae were migrated.
While trying to install Ipopt in Mac 10.13, by giving this command "brew install ipopt --with-openblas", I get the following error:
==> Installing ipopt from udacity/carnd-mpc-project
Error: No available formula with the name "scotch5" (dependency of udacity/carnd-mpc-project/ipopt)
==> Searching for a previously deleted formula (in the last month)...
Warning: homebrew/core is shallow clone. To get complete history run:
git -C "$(brew --repo homebrew/core)" fetch --unshallow
Error: No previously deleted formula found.
Any help is appreciated.
Thanks.
I check that this algorithm use OptimizeTNLP for optimizer.
But, I want to know the detail,
Could you tell me which optimizer you used for this MPC? such as QP, LP, CP...?
I have installed all the required dependencies. When I typed "make" in the "build" folder, I got the following error:
[100%] Linking CXX executable mpc
/usr/local/lib/libipopt.so: undefined reference to dpotrf_' /usr/local/lib/libipopt.so: undefined reference to
dgemm_'
/usr/local/lib/libipopt.so: undefined reference to dnrm2_' /usr/local/lib/libipopt.so: undefined reference to
dscal_'
/usr/local/lib/libipopt.so: undefined reference to dpotrs_' /usr/local/lib/libipopt.so: undefined reference to
dtrsm_'
/usr/local/lib/libipopt.so: undefined reference to daxpy_' /usr/local/lib/libipopt.so: undefined reference to
dgetrf_'
/usr/local/lib/libipopt.so: undefined reference to dcopy_' /usr/local/lib/libipopt.so: undefined reference to
idamax_'
/usr/local/lib/libipopt.so: undefined reference to dsyrk_' /usr/local/lib/libipopt.so: undefined reference to
dasum_'
/usr/local/lib/libipopt.so: undefined reference to dsyev_' /usr/local/lib/libipopt.so: undefined reference to
dmumps_c'
/usr/local/lib/libipopt.so: undefined reference to dgetrs_' /usr/local/lib/libipopt.so: undefined reference to
ddot_'
/usr/local/lib/libipopt.so: undefined reference to dsymv_' /usr/local/lib/libipopt.so: undefined reference to
dgemv_'
collect2: error: ld returned 1 exit status
CMakeFiles/mpc.dir/build.make:120: recipe for target 'mpc' failed
make[2]: *** [mpc] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/mpc.dir/all' failed
make[1]: *** [CMakeFiles/mpc.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2
Any help will be appreciated.
Thanks,
Hanxiang
Hi when I ran brew tap udacity/CarND-MPC-Project https://github.com/udacity/CarND-MPC-Project
I got this. How to solve this?
==> Tapping udacity/carnd-mpc-project
Cloning into '/usr/local/Homebrew/Library/Taps/udacity/homebrew-carnd-mpc-project'...
remote: Counting objects: 1747, done.
remote: Compressing objects: 100% (1397/1397), done.
remote: Total 1747 (delta 294), reused 1738 (delta 294), pack-reused 0
Receiving objects: 100% (1747/1747), 2.46 MiB | 824.00 KiB/s, done.
Resolving deltas: 100% (294/294), done.
Error: Invalid formula: /usr/local/Homebrew/Library/Taps/udacity/homebrew-carnd-mpc-project/mumps.rb
Calling 'depends_on :mpi' is disabled!
Use 'depends_on "open-mpi"' instead.
/usr/local/Homebrew/Library/Taps/udacity/homebrew-carnd-mpc-project/mumps.rb:35:in `<class:Mumps>'
Please report this to the udacity/carnd-mpc-project tap!
Or, even better, submit a PR to fix it!
Error: Cannot tap udacity/carnd-mpc-project: invalid syntax in tap!
Hi @domluna, @baumanab, @swwelch,
Notice that our project doesn't have license, that's a little unprofessional for a open source project, especially there has much extends adoption and development in an online education project. "No license terms" means users don't know it can be used freely. Another reference is Can I call my program "Open Source" even if I don't use an approved license?.
So here I suggest the project add license, recommend we choose one of the below license, firstly because they're all Permissive Licenses, but they have different redistribution disclaimer:
Regards,
Brandon
If I terminate the simulation using ctrl-z then re-run the simulation, it will simply returns "failed to listen to port". I wonder if there's any solution to this issue besides reboot. Any help will be appreciated.
(Duplicate of udacity/sdc-issue-reports#1251)
NodehError.txt
gcc 7.2.0 already installed
GNU Make 4.2.1
cmake version 3.10.0
Hello, I have not been able to resolve a compiler error that occurs while building main.cpp for SDC Project 5 MPC. I run install-mac.sh and uWebSockets compiles, but appears to have an incompatibility that I cannot figure out how to resolve. Please find NodehError.txt attached showing the install-mac.sh log and the compiler error log. I am thinking that one of the uWebSockets dependencies are not pulled over correctly?
My repository is at https://github.com/bertciccone/CarND-MPC-Project
NodehError.txt
I would appreciate any suggestions for what to try next. Thank you!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.