A MAPLE-MATLAB INTERFACE A CASE FOR THE OPTIMIZATION TOOLBOX Enrique Díaz de León * - René V. Mayorga ** - Graciano Dieck*** * ITESM - Guadalajara Campus, Mexico ** University of Regina, Canada *** ITESM - Monterrey Campus, Mexico
INTERFACE MAPLE MATLAB
How the idea was born Maple and Matlab Characteristics of Maple and Matlab, as well as the description of some interfaces Introduction
General description of the interface Maple Matlab and how to use it Examples Conclusions
How was the idea born? Kinematic Design Optimization of Manipulators Initial problem in symbolic form using Maple Find a numerical solution with the use of the Optimization ToolBox in Matlab
How was the idea born? A “manual” step by step process The need of an option to manipulate the inputs to obtain different outputs efficiently
Current software available Maple characteristics Matlab characteristics Current Interfaces
Maple characteristics Very powerful symbolic language software Capacity of inputs and outputs (files) User friendly and easy programming Graphics capacity Advantages
Maple characteristics Some numerical methods used are not very efficient There are certain type of procedures that can not be realized completely Does not have routines for Optimization Disadvantages
Matlab characteristics Very powerful numerical software Capacity of inputs and outputs (files) Advantages
Matlab characteristics The numerical methods used are very efficient It is a very versatile software due to the “Toolboxes” that are available for many applications Advantages
Matlab characteristics It is not very user friendly Does not handle general symbolic expressions Particular manner for user interaction Disadvantages
Current Interfaces Matlab Interface Maple (Symbolic Toolbox) Mathematica Interface (Symbolic Numeric) Mathematica Interface Fortran or C
AN INTERFACE MAPLE MATLAB
General Description Platform: Unix Programming: Language C 1. Initial problem in Maple 2. Program mm.map (it translates the output from Maple as input to Matlab)
General Description 3. Matlab execution (Optimization Toolbox with the selected subroutine) Results in a Matlab.res file
Interface Maple-Matlab Program in C MAPLEMATLAB mm.map 13 2
Optimization Toolbox Constr Minimax fmin, fminu, fmins attgoal leastsq Constraint Minimax Minimization Goal Attainment Least Squares
Flow chart START Define Optimization Subroutine Input.map Constraints? mm.map func.m Result.map my.con Optimization Conditions (Optim.m) (Maple) (Matlab) yes no
Kinematic Design Optimization of Robot Manipulators Examples
Kinematics Design Optimization of Planar Robot Manipulators Manipulability Isotropy condition criterion (2 cases) Upper bound on Condition number Upper bound on Rank Preservation
Kinematics Design Optimization of Robot Manipulators Kinematics Design Optimization of Robot Manipulators Using Upper bound on Rank Preservation: - 7 DOF Anthropomorphic Manipulator; - 7 DOF Space Station Robot Manipulator
Flow chart START Optimization subroutine: constr Input.map Constraints? mm.map func.m Result.map g[1]=3.0-( ) x0=(1.7,1.7,1.7,1,1,1) vl b=( , , ,.5,.5,.5) vu b =(- ,- ,- ,.95,.95,.95) options(13)=1 constr(func,x0,options) (Maple) (Matlab) yes no (Case A: Manipulability) constraint Optim.m
Conclusions Detailed study of software for mathematical (Symbolic and Numeric) computation Interface Maple Matlab
Conclusions Useful Software Tool for the solution of problems formulated in Symbolic Form requiring for their solution very efficient numerical methods such as those provided by Matlab Application: Kinematic Design Analysis/Optimization of Robot Manipulators
Thanks !