Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

PerformanceCriteria

The Performance Criteria Library. More...

Compounds

class  CriteriaProperties
 Class that holds properties for each option evaluated by a particular criterion. More...

class  CriteriaProperties
 Class that holds properties for each option evaluated by a particular criterion. More...

class  CriteriaProperties
 Class that holds properties for each option evaluated by a particular criterion. More...

class  CriteriaPropertiesRepository
 CriteriaPropertiesRepository is a repository class which holds results \ calculated by the criteria to allow data sharing. More...

class  HandPoseRepository
 HandPoseRepository is a repository class which holds HandPose data calculated by the criteria to allow data sharing. More...

class  MatrixRepository
 MatrixRepository is a repository class which holds vector data calculated by the criteria to allow data sharing. More...

class  PCAccelerationLimitsAvoidance
 PCAccelerationLimitsAvoidance is a class for criteria which avoids the acceleration limits for the joints on a manipulator. PCAccelerationLimitsAvoidance is derived from PCVectorLimits. It is a class that computes the manipulator's distance from acceleration limits. More...

class  PCCompliance
 PCCompliance is an abstract class for criteria which are based on the compliance matrix. PCCompliance is derived from PCJacobian. It is an intermediate abstract class that contains the functionality to compute the compliance matrix necessary for certain criteria. More...

class  PCComplianceEigenVectors
 PCComplianceEigenVectors is an abstract class for criteria which are based on the eigenvalues or eigenvectors of the compliance matrix. PCComplianceEigenVectors is derived from PCCompliance. It is an intermediate abstract class that contains the functionality to compute the eigenvalues and eigenvectors for compliance certain criteria. This class is only available if you are using the Matrix class that uses Matlab libraries. More...

class  PCDexterity
 PCDexterity is a criteria which is based on the condition number of the Jacobian, minimum and maximum eigenvalues. The condition number specifies the Jacobian's sensitivity to error, therefore well-conditioned Jacobians are less likely to produce significant error for any specified motion. Dexterity minimizes any error at the EEF due to errors in the actuators. Another definition is the EEF's ability to react to any commanded position equally well. Since it is based on Jacobian eigenvalues, it also indicates proximity to a singulatity. PCDexterity is derived from PCJacobianEigenValues. More...

class  PCDirectionalEEFStiffness
 PCDirectionalEEFStiffness is a criteria that evaluates stiffness in a given direction. Knowing the direction of force will allow the manipulator to reorient itself in a stiffer orientation. PCDirectionalEEFStiffness is derived from PCComplianceEigenVectors. More...

class  PCEEFInertia
 PCEEFInertia is an intermediate class for criteria which are based on the Transferred EEF Inertia matrix. PCEEFInertia is derived from RRCInertia. It is an intermediate abstract class that contains the functionality to compute the transfer the Inertia matrix to the EEF necessary for certain criteria. More...

class  PCEEFKineticEnergy
 PCEEFKineticEnergy is a criteria which is based on the transferred inertia matrix and the velocity of the end-effector. This criteria attempts to minimize the kinetic energy in the direction of motion ofthe EEF. PCEEFKineticEnergy is derived from PCEEFInertia. More...

class  PCFilter
 PCFilter should be used to filter using multiple criteria. It can be used to choose the first solution which passes all critical limits or it can be placed in a fusion scheme to filter solutions before another PC or Fusion object chooses the optimal solution. It is derived from PerformanceCriteria so the same methods are available. By deriving from PerformanceCriteria it allows multiple PCFilters to be further fused to allow more complicated combinational RRTs. More...

class  PCForceTransmissibility
 PCForceTransmissibility is a criteria which is based on the jacobian and force direction of the end-effector. This criteria attempts to maximize the ease with which joint torques are transmitted to the EEF force. PCForceTransmissibility is derived from PCJacobian. More...

class  PCFusion
 PCFusion should be used to fuse multiple criteria into a single metric to allow optimal solution selection. PCFusion is setup to be as general as possible to allow many different redundancy resolution techniques. It is derived from PerformanceCriteria so the same methods are available. By deriving from PerformanceCriteria it allows multiple PCFusion or PCFilter objects to be further fused to allow more complicated combinational RRTs. More...

class  PCGeneralizedDynamicEfficiency
 PCGeneralizedDynamicEfficiency is a criteria based upon the ratio of the largest inertial eigenvalue and the largest jacobian eigenvalue. The purpose of this criterion is to minimize joint torques in terms of inertial loading. PCGeneralizedDynamicEfficiency is derived from PCInertiaEigenValues and PCJacobianEigenValues. More...

class  PCGeneralizedInertialEfficiency
 PCGeneralizedInertialEfficiency is a criteria based upon the largest inertial eigenvalue. PCGeneralizedInertialEfficiency is derived from PCInertiaEigenValues. More...

class  PCGeneralizedStiffness
 PCGeneralizedStiffness is a criteria that evaluates the overall stiffness of a give manipulator configuration. It is done by taking the frobenius norm of the stiffness matrix. PCGeneralizedStiffness is derived from PCCompliance. More...

class  PCGeneralizedTorqueMinimization
 PCGeneralizedTorqueMinimization is a criteria based upon the Inertia and JacobianPseudoInverse matrices. The infinity norms of the Inertia and JacobianPseudoInverse matrices are multiplied together to get an estimate on the necessary torque to move the manipulator from one configuration to another. PCGeneralizedTorqueMinimization is derived from PCInertia and PCJacobianPseudoInverse. More...

class  PCGeneralizedVelocityMinimization
 PCGeneralizedVelocityMinimization is a criteria based upon the JacobianPseudoInverse, that aims to reduce joint velocities. It only takes the largest row sum of the pseudoinverse which is the largest transformation of a joint velocity. This criteria does not actually calculate velocities so there is no check to make sure operation velocity limits are not violated. PCGeneralizedVelocityMinimization is derived from PCJacobianPseudoInverse. More...

class  PCInertia
 PCInertia is an abstract class for criteria which are based on the inertia matrix. PCInertia is derived from PerformanceCriteria. It is an intermediate abstract class that contains the functionality to compute the inertia matrix necessary for certain criteria. More...

class  PCInertiaEigenValues
 PCInertiaEigenValues is an abstract class for criteria which are based on the inertia eigenvalues. PCInertia is derived from PCInertia. It is an intermediate abstract class that contains the functionality to compute the inertia eigenvalues necessary for certain criteria. More...

class  PCInertialFrobeniusNorm
 PCInertialFrobeniusNorm takes the frobenius norm of the iStar inertia matrix. Minimizing the effective inertia matrix leads to a decrease in the kinetic energy of the system. PCGeneralizedTorqueMinimization is derived from PCInertia. More...

class  PCInverseMeasureOfTransmissibility
 PCInverseMeasureOfTransmissibility is a criteria which is based on determinant of the jacobian. This criteria attempts to maximize the ease with which joint velocities are transmitted to the EEF velocities. This criteria is computationally fast and can have multiple physical meanings. Because of the dual nature of the Jacobian, transmission transmissibility or velocity transmissibility could be optimized. The determinant is also an indicator of proximity to a singularity. PCInverseMeasureOfTransmissibility is derived from PCJacobian. More...

class  PCJacobian
 PCJacobian is an abstract class for criteria which are based on the jacobian. PCJacobian is derived from PerformanceCriteria. It is an intermediate abstract class that contains the functionality to compute jacobians. Derived classes update the necessary repositories by calling the protected method update(). More...

class  PCJacobianEigenValues
 PCJacobianEigenValues is an intermediate abstract class which adds the functionality to calculate jacobian eigenvalues. PCJacobianEigenValues is derived from PCJacobian. More...

class  PCJacobianFrobeniusNorm
 PCJacobianFrobeniusNorm is a criteria which is based on the frobenius norm of the Jacobian matrix. This criterion can be viewed as a generalized efficiency criterion for both velocity and torque transmission. Mitch Pryor suggests this is the most effective criteria in terms of avoiding singularities. PCJacobianFrobeniusNorm is derived from PCJacobian. More...

class  PCJacobianPseudoInverse
 PCPseudoInverse is an intermediate abstract class which adds the functionality to calculate jacobian pseudoinverses. PCJacobianPseudoInverse is derived from PCJacobian. More...

class  PCJointRangeAvailability
 PCJointRangeAvailability is a criteria which calculates the distance from the joint limits of a manipulator. PCJointRangeAvailability is derived from PCVectorLimits. The methods to get and set individual joint parameters are in PCVectorLimits. More...

class  PCKineticEnergy
 PCKineticEnergy calculates the kinetic energy of the manipulator using the iStar inertia matrix and the current positions. Time is not explicitly included in the formulation, so the criteria value is not the true kinetic energy value, but allows solutions to be ranked. It could easily be modified to take into account time. PCKineticEnergy is derived from PCInertia. More...

class  PCLoadTorqueMinimization
 PCLoadTorqueMinimization is a criteria which is based on the Jacobian matrix. This criterion attempts to reduce the actuator torques due to the load at the EEF. PCLoadTorqueMinimization is derived from PCJacobian. More...

class  PCMagneticEEF
 PCMagneticEEF is a criteria which calculates the distance to a point. PCMagneticEEF works like a magnet attracting the EEF to the specified point or repelling the EEF from an obstacle. More...

class  PCMeasureOfTransmissibility
 PCMeasureOfTransmissibility is a criteria which is based on determinant of the jacobian. This criteria attempts to maximize the ease with which joint velocities are transmitted to the EEF velocities. This criteria is computationally fast and can have multiple physical meanings. Because of the dual nature of the Jacobian, transmission transmissibility or velocity transmissibility could be optimized. The determinant is also an indicator of proximity to a singularity. PCMeasureOfTransmissibility is derived from PCJacobian. More...

class  PCPotentialEnergy
 PCPotentialEnergy is a criteria that calculates the potential energy in the manipulator due to deflections. Deflections due to forces at the EEF are the only deflections considered. Minimizing this criteria should reduce deflections due to loads at the EEF. PCPotentialEnergy is derived from PCCompliance. More...

class  PCSingularityAvoidance
 PCSingularityAvoidance is a criteria which is based on the minimum eigenvalue of the Jacobian. Exclusively tracking the minimum singular value may exhibit a better indication of a manipulator's nearness to a mathematical singularity. Transmissibilty can be improved by maximizing the distance from singularities, therefore minimizing the joint torques required to maintain a desired EEF force. PCSingularityAvoidance is derived from PCJacobianEigenValues. More...

class  PCTorqueLimitsAvoidance
 PCTorqueLimitsAvoidance is a class for criteria which avoids the torque limits for the joints on a manipulator. PCTorqueLimitsAvoidance is derived from PCVectorLimits. It is a class that computes the manipulator's distance from torque limits. More...

class  PCVectorLimits
 PCVectorLimits is an abstract class for criteria which avoids the limits of a vector. More...

class  PCVelocityLimitsAvoidance
 PCVelocityLimitsAvoidance is a class for criteria which avoids the velocity limits for the joints on a manipulator. PCVelocityLimitsAvoidance is derived from PCVectorLimits. It is a class that computes the manipulator's distance from velocity limits. More...

class  PCVelocityTransmissibility
 PCVelocityTransmissibility is a criteria which is based on the jacobian pseudo-inverse and the velocity of the end-effector. This criteria attempts to maximize the efficiency with which joint velocities are transmitted to the EEF velocity. PCVelocityTransmissibility is derived from PCJacobian. More...

class  PerformanceCriteria
 PerformanceCriteria should be used to select a solution from a set of options for a manipulator. More...

class  Repository
 Repository is a base repository class from which all repository types will derive. These repositories store data computed by the criteria in order to prevent repeat calculations. All computational ability is in the performance criteria - repositories store data only. Repository contains the functionality to keep track of whether the repository has been updated. The methods to get and set the data members inside the repository were placed in the derived template class TypeRepository so the same methods could be used for several repository types. The reason this base class is necessary is because RepositoryList cannot point to a template class. More...

class  RepositoryList
 RepositoryList is a list which holds Repository objects. This list will be passed to criteria to give them a place to read and write data for criteria computations. More...

class  ScalarRepository
 ScalarRepository is a repository class which holds scalar data calculated by the criteria to allow data sharing. More...

class  TensorRepository
 TensorRepository is a repository class which holds tensor data calculated by the criteria to allow data sharing. More...

class  TypeRepository
 TypeRepository is a repository template class which holds the functionality for retrieving and setting data in the repositories. Derived classes will set the template type and allocate the type size depending on needs. The type has to be a pointer so get and set methods will be taking or returning pointers. More...

class  VectorRepository
 VectorRepository is a repository class which holds vector data \ calculated by the criteria to allow data sharing. More...


Variables

const OSCARError PCErrors
const OSCARError repositoryAlreadyExists
const OSCARError noValidSolution
const OSCARError normalizeSchemeMismatch
const OSCARError directionMismatch
const OSCARError noGradientDefined

Detailed Description

This library contains functionality for evaluating and optimizing criteria metrics for a set of joint options.

Variable Documentation

const OSCARError OSCAR::directionMismatch
 

const OSCARError OSCAR::noGradientDefined
 

const OSCARError OSCAR::normalizeSchemeMismatch
 

const OSCARError OSCAR::noValidSolution
 

const OSCARError OSCAR::PCErrors
 

const OSCARError OSCAR::repositoryAlreadyExists
 

RRG Homepage OSCAR Overview OSCAR Tutorials Simulations