Research Tools

Below are some software tools for model predictive control (MPC), optimization, FPGA programming, modeling, PID, and technical writing which can be useful for you in your research.

  • Software and toolboxes for optimization and MPC

  1. munum – https://bitbucket.org/kvasnica/munum
  2. VIRTUAL LABS – http://vlab.co.in/
  3. COEP Virtual Labs – http://coep.vlab.co.in/
  4. Multi-parametric ToolBox (MPT3) – https://www.mpt3.org/
  5. OSQP – https://github.com/oxfordcontrol/osqp
  6. miOSQP –https://github.com/oxfordcontrol/miosqp
  7. Robust MPC Toolbox – https://bitbucket.org/oravec/mup/wiki/Home
  8. PIDDESIGN – https://bitbucket.org/oravec/piddesign/wiki/Home
  9. WebPIDDESIGN – http://www.kirp.chtf.stuba.sk/webpiddesign/
  10. Protoip (IP Prototyping in FPGA) – https://github.com/erickerrigan/protoip
  11. dynopt – http://www.kirp.chtf.stuba.sk/moodle/course/view.php?id=187
  12. ACADO Toolkit – http://acado.github.io/
  13. qpOASES – http://set.kuleuven.be/optec/software/qpOASES
  14. CasADi – https://github.com/casadi/casadi/wiki
  15. OPTI Toolbox – http://www.i2c2.aut.ac.nz/Wiki/OPTI/
  16. jMPC Toolbox – http://www.i2c2.aut.ac.nz/Resources/Software/jMPCToolbox.html
  17. Decision Tree for Optimization Software – http://plato.asu.edu/guide.html
  18. YALMIP – http://users.isy.liu.se/johanl/yalmip/pmwiki.php?n=Main.HomePage
  19. FORCES Pro – https://www.embotech.com/FORCES-Pro
  20. ECOS – https://www.embotech.com/ECOS
  21. qpDUNES – https://github.com/jfrasch/qpDUNES
  22. HPMPC – https://github.com/giaf/hpmpc
  23. FiOrdOs – http://fiordos.ethz.ch/dokuwiki/doku.php
  24. CVXPY – http://www.cvxpy.org/en/latest/
  25. CVXGEN – http://cvxgen.com/docs/index.html
  26. SDPT3 – http://www.math.nus.edu.sg/~mattohkc/sdpt3.html
  27. CVXOPT – http://www.cvxopt.org
  28. SeDuMi – http://sedumi.ie.lehigh.edu/
  29. MOSEK – https://www.mosek.com/
  30. AMPL – https://www.mosek.com/products/ampl
  31. Gurobi – http://www.gurobi.com/
  32. QLD – https://help.scilab.org/doc/5.3.3/en_US/qld.html
  33. quadprog – http://www.mathworks.com/help/optim/ug/quadprog.html
  34. ADMM – https://web.stanford.edu/~boyd/papers/admm/
  35. PQP – http://www.merl.com/research/license/
  36. IPOPT – https://projects.coin-or.org/Ipopt
  37. OOQP – http://pages.cs.wisc.edu/~swright/ooqp/
  38. HYSDEL – http://control.ee.ethz.ch/~cohysys/hysdel/index.php
  39. BRCM – http://www.brcm.ethz.ch/doku.php
  40. CVX – http://cvxr.com/cvx/
  41. SCS – https://github.com/cvxgrp/scs
  42. POGS – https://github.com/foges/pogs
  43. fast_mpc – http://stanford.edu/~boyd/fast_mpc/
  44. l1_logreg – http://stanford.edu/~boyd/l1_logreg/
  45. l1_ls – http://stanford.edu/~boyd/l1_ls/
  46. l1_tf – http://stanford.edu/~boyd/l1_tf/
  47. GGPLAB – http://stanford.edu/~boyd/ggplab/
  48. lsgs – http://stanford.edu/~boyd/lsgs/
  49. MAXDET – http://stanford.edu/~boyd/old_software/MAXDET.html
  50. SDPSOL – http://stanford.edu/~boyd/old_software/SDPSOL.html
  51. SP – http://www.seas.ucla.edu/~vandenbe/sp.html
  52. SOCP – http://stanford.edu/~boyd/old_software/SOCP.html
  53. QDES – http://stanford.edu/~boyd/old_software/QDES.html
  54. CSDP – https://projects.coin-or.org/Csdp
  55. MUSCOD-II – http://www.iwr.uni-heidelberg.de/~agbock/RESEARCH/muscod.php
  56. MPC using MATLAB – https://www.mathworks.com/examples/mpc
  57. MPsee (Non-linear MPC) – https://github.com/taj4din/MPsee-toolbox
  58. YANE (MPC) – http://www.nonlinearmpc.com/index.php
  59. TOMLAB (Optimization) – https://tomopt.com/tomlab/
  60. OPTI Toolbox (Optimization) – https://www.inverseproblem.co.nz/OPTI/ 
  61. APM (MPC) – http://apmonitor.com/wiki/index.php/Main/Control
  62. Autonomous driving with MPC – https://junshengfu.github.io/MPC/
  63. ICLOCS2 (MPC) – http://www.ee.ic.ac.uk/ICLOCS/default.htm
  64. Knitro – https://www.artelys.com/en/optimization-tools/knitro
  65. PANOC – https://kul-forbes.github.io/PANOC/
  66. WORHP – https://worhp.de/
  67. PDF-MPC – http://www.mazenalamir.fr/home/index.php/pdf-mpc
  68. CPLEX Optimizer – https://www.ibm.com/analytics/cplex-optimizer
  69. GRAMPC (NMPC) – https://sourceforge.net/projects/grampc/
  70. IMCTUNE (IMC) – http://www.eng.usf.edu/~bjoseph/website/software.htm
  71. LINGO (Optimization)- https://www.lindo.com/
  72. ParNMPC – https://deng-haoyang.github.io/ParNMPC/
  73. Optimization Engine – https://alphaville.github.io/optimization-engine/
  74. HyEQ – https://hybrid.soe.ucsc.edu/software
  75. MATMPC – https://github.com/chenyutao36/MATMPC
  76. Quanser’s Textbook App  – https://www.quanser.com/experience-controls/
  77. MORLAB – https://www.mpi-magdeburg.mpg.de/projects/morlab
  78. Predictive Control: With Constraints, Maciejowski – http://www2.eng.cam.ac.uk/~jmm1/mpcbook/software/software.html
  79. Control Toolbox – https://ethz-adrl.github.io/ct/ct_doc/doc/html/index.html#ct1
  80. MPCTools (for MATLAB) – https://bitbucket.org/rawlings-group/octave-mpctools/src/default/
  81. MPCTools (for Python) – https://bitbucket.org/rawlings-group/mpc-tools-casadi/src/default/
  82. MPCSim (for MATLAB) – https://bitbucket.org/rawlings-group/octave-mpcsim/src/default/
  83. Quadprog++ – https://github.com/liuq/QuadProgpp
  84. do-mpc- https://github.com/do-mpc/do-mpc
  85. µMPC- http://ifatwww.et.uni-magdeburg.de/syst/muAO-MPC/
  86. AUTOMATIC- https://ieeexplore.ieee.org/document/8867853
  87. MPCtools- http://www.control.lth.se/research/tools-and-software/mpctools/
  • MPC, Optimization, and Control Systems courses

  1. Prof. Michal Kvasnica, STUBA, Slovakia –  MPC Lecture
  2. Prof. Michal Kvasnica, STUBA, Slovakia – Optimization Lecture
  3. Prof. Michal Kvasnica, STUBA, Slovakia – TEMPO School on MPC 
  4. Prof. Stephen Boyd, Stanford University, USA – MPC Lecture
  5. Prof. Francesco Borrelli, UC – Berkeley, USA – MPC Lecture
  6. Optimal and Robust Control, CTU, Czech – MPC Lecture 1 , MPC Lecture 2 ,  MPC Lecture 3 , MPC Lecture 4 , MPC Lecture 5
  7. Mathworks, MATLAB, USA – MPC Lecture
  8. Maplesoft, USA – MPC Lecture
  9. Prof. J. A. Rossiter, Sheffield, UK – MPC Lecture
  10. Prof. Alberto Bemporad, IMT Lucca, Italy – MPC Lecture 1 , MPC Lecture 2 , MPC Lecture 3 , MPC Lecture 4 , MPC Lecture 5
  11. Prof. Steve Brunton, UW, USA – MPC Lecture
  12. Prof. Rolf Johansson, LU, Sweden – MPC Lecture
  13. Prof. Sachin Patwardhan, IITB, Bombay, India – MPC Lecture
  14. Apmonitor – MPC Lecture
  15. Prof. Mark Cannon, Uni. of Oxford, UK – MPC Lecture
  16. Prof. Dr.-Ing. Daniel Görges, Germany – MPC Lecture
  17. Prof. Ahmad Taha, Univ. of Texas at San Antonio – Linear Systems, Control Design, Optimization and Control of CPC
  18. Prof. Steve Brunton, Univ. of Washington- Data Driven Control
  19. Prof. Marco Pavone, Stanford University – Optimal and Learning-based Control
  20. Prof. Yisong Yue, Caltech – Advanced Topics in Machine Learning
  21. Prof. Moritz Hardt, University of California, Berkeley – Convex Optimization and Approximation
  22. Ugo Rosolia, Caltech – Predictive control & model-based RL
  • MPC and optimization codes

  1. Prof. Francesco Borrelli, UC – Berkeley, USA – MPC Example
  2. Prof. K. Åström and B. Wittenmark – Adaptive control methods
  • Technical writing

  1. MiKTeX – https://miktex.org/download
  2. MacTeX – http://www.tug.org/mactex/
  3. TexStudio – https://www.texstudio.org/
  4. Overleaf – https://www.overleaf.com/
  5. Google Developer Documentation Style Guide – https://developers.google.com/style/
  • Version control

  1. GitHub – https://github.com/
  2. GitLab  – https://about.gitlab.com/
  3. Bitbucket – https://bitbucket.org/
  4. TortoiseHg- https://tortoisehg.bitbucket.io/
  5. TortoiseGit – https://tortoisegit.org/
  6. RhodeCode – https://rhodecode.com/
  • Sharing and asking

  1. Google Scholar – https://scholar.google.com/
  2. ResearchGate – https://www.researchgate.net/
  3. codeshare  – https://codeshare.io/
  4. figshare – https://figshare.com/
  5. Jupyter- http://jupyter.org/
  6. Stack Overflow – https://stackoverflow.com/
  7. Stack Exchange – https://stackexchange.com/
  8. ShareLaTex – https://www.sharelatex.com/
  9. Latex table generator – http://truben.no/table/

……….. and many more

Advertisement

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.