YANE-Framework 1.1.0
Classes | Typedefs | Enumerations

yane::MPC Namespace Reference

Namespace of the Model Predictive Controller.

Classes

class  AdaptiveMPC
 Implementation of an NMPC Algorithm with adaptation of the horizon length. More...
class  ASyncCacheCalculator
class  Cache
 Class to save, identify and access intermediate results of trajectories computed by the class OdeManager object. More...
class  CacheOdeManager
 Implementation of a manager class for solving the control system and its derivative optimized with respect to function evaluations. More...
class  Discretization
 Class for discretizing optimal control problem. More...
class  DualDecompositionMPC
 Not yet documented. More...
class  EstimationException
 Error in suboptimality estimate detected. More...
class  m21MPC
 Not yet documented. More...
class  ModelShootingData
 Class for utilizing shooting nodes within a class yane::MPC::MPC object. More...
class  MPC
 Class for solving the model predictive control problem. More...
class  MPCException
 Exception within the MPC algorithm. More...
class  MultiThreadCacheOdeManager
 Implementation of a parallelized version of the class yane::MPC::CacheOdeManager. More...
class  NetworkedMPCConfig
 Not yet documented. More...
class  NetworkedMPCConfigException
 Error in neighbourhood configuration of MPC object detected. More...
class  NetworkedMPCConfigWarning
 Noncritical Error in neighbourhood configuration of MPC object detected. More...
class  OdeManager
 Implementation of a parenting manager class for solving control systems and computing their derivatives. More...
class  PracticalException
 Practical region of the suboptimality estimate reached. More...
class  SimpleOdeManager
 Implementation of a simple manager class for solving the control system and its derivative. More...
class  StrategyExchangeMPC
 Not yet documented. More...
class  StrategyExchangeMPCParallel
 Not yet documented. More...
class  SuboptimalityException
 Violation of the relaxed Lyapunov inequality. More...
class  SuboptimalityMPC
 Implementation of various suboptimality estimates for model predictive control laws. More...
class  SyncOdeManager
 Implementation of a manager class for solving the control system and its derivative in a synchronized way. More...
struct  T_MPCDATA
 Define a structure which is required to solve the dynamic of the optimal control problem. More...
struct  T_SHOOTINGDATA
 Defines a structure for the shooting nodes required for the MPC problem. More...

Typedefs

typedef void(* T_DISCRRESTRFUNC )(double *t, double *x, double *u, double *fx, void *discretization, void *configuration)
 Defines the pointer on the constraints of the optimal control problem.

Enumerations

enum  T_ESTIMATE
 

Enumerator for available suboptimality estimates

  • NONE: Degree of suboptimality is not computed
  • APOSTERIORI: Degree of suboptimality is computed according to the a posteriori estimate implemented in yane::MPC::SuboptimalityMPC::mstepAposterioriEstimate
  • APOSTERIORIPRACTICAL: Practical degree of suboptimality is computed according to the a posteriori estimate implemented in yane::MPC::SuboptimalityMPC::mstepAposterioriPracticalEstimate
  • APRIORI: Degree of suboptimality is computed according to the a priori estimate implemented in yane::MPC::SuboptimalityMPC::mstepAprioriEstimate
  • APRIORIPRACTICAL: Practical degree of suboptimality is computed according to the a priori estimate implemented in yane::MPC::SuboptimalityMPC::mstepAprioriPracticalEstimate.

enum  T_IMPLEMENTATION
 

Enumerator for available MPC adaptation strategies

  • NOADAPTION: No adaptation is applied
  • SIMPLE: Simple shortening and prolongation strategy are applied respectively if the current suboptimality degree $ \alpha $ is larger or smaller than a predefined suboptimality bound $ \overline{\alpha} $.
  • FIXEDPOINT: Simple shortening and fixed point prolongation strategy are applied respectively if the current suboptimality degree $ \alpha $ is larger or smaller than a predefined suboptimality bound $ \overline{\alpha} $.
  • MONOTONE: Simple shortening and monotone prolongation strategy are applied respectively if the current suboptimality degree $ \alpha $ is larger or smaller than a predefined suboptimality bound $ \overline{\alpha} $.

enum  T_M21ALGORITHM
 

Enumerator for available implementations of the m21MPC algorithm

  • NOUPDATECOSTFUNCTION Version without updating the cost function
  • UPDATECOSTFUNCTION Version with update of the cost function.

enum  T_OPTIMALITYSTATE
 

Enumerator for the suboptimality exception status


enum  T_SHIFTRETURNDATA
 

Enumerator for available return data of the shift routine

  • CURRENT_DATA Current time and control set are returned
  • PREDICTED_DATA Time and control set of the point of implementation are returned.

enum  T_SHIFTSTATE
 

Enumerator for the shift method to be applied

  • STANDARD: The values of the control over the optimization horizon are shifted by $ m $ sampling steps, the last $ m $ new control vectors are copies of the last control vector of the unshifted optimization horizontindex
  • ONESTEP: The values of the control over the optimization horizon are shifted by $ m $ sampling steps, the last $ m $ new control vectors are determined by evaluating a optimal control problem with horizon length $ m $ over the corresponding time grid using the initial state vector associated with time instant $ N - m $.
  • REPEATED: The values of the control over the optimization horizon are repeatedly shifted $ m - 1 $ times by $ 1 $ sampling step. After each shift $ i \leq m - 2 $, a optimal control problem of length $ N - m + i $ is solved to keep track of the optimal control strategy. After the last shift, the ONESTEP strategy is applied.