start with interval contractors
play

start with interval contractors Fabrice LE BARS Description - PowerPoint PPT Presentation

EASIBEX-MATLAB : a simple tool to start with interval contractors Fabrice LE BARS Description 08/06/2015- 2 EASIBEX-MATLAB : A simple tool to start with interval contractors Description Main goals Start using interval arithmetic


  1. EASIBEX-MATLAB : a simple tool to start with interval contractors Fabrice LE BARS

  2. Description 08/06/2015- 2 EASIBEX-MATLAB : A simple tool to start with interval contractors

  3. Description  Main goals • Start using interval arithmetic and contractors • Quickly prototype and test new algorithms  Target users • Students • Scientists not specialist in programming 08/06/2015- 3 EASIBEX-MATLAB : A simple tool to start with interval contractors

  4. Description  Base and philosophy • Simple MATLAB layer of IBEX • Non object-oriented naming conventions • Easily draw results thanks to MATLAB or VIBes 08/06/2015- 4 EASIBEX-MATLAB : A simple tool to start with interval contractors

  5. Description  Limitations • To keep it simple, not all IBEX features are available • No guaranties w.r.t. rounding… • Simplified function names to avoid object-oriented paradigms  Other options • EASIBEX-CPP is available if C++ is needed : see www.ensta- bretagne.fr/jaulin/easibex.html • Once you are comfortable with intervals, contractors, C++ and object- oriented programming, use directly IBEX 08/06/2015- 5 EASIBEX-MATLAB : A simple tool to start with interval contractors

  6. Demo 08/06/2015- 6 EASIBEX-MATLAB : A simple tool to start with interval contractors

  7. Demo  Download and test • https://github.com/ENSTABretagneRobotics/EASIBEX-MATLAB/ 08/06/2015- 7 EASIBEX-MATLAB : A simple tool to start with interval contractors

  8. Demo  To define an EASIBEX-MATLAB interval • x=[-2,2] • x(1,2) would be 2  An empty interval would be • x=[NaN,NaN]  Infinity • x=[-Inf,Inf] 08/06/2015- 8 EASIBEX-MATLAB : A simple tool to start with interval contractors

  9. Demo  To define a box • x=[[-2,2];[2,4];[-4,1]] • x(2,:) would be [2,4]  2 intervals can be added using • Z=i_Add([0,2],[-1,2])  And 2 boxes • Z=i_Add([[0,1];[0,10];[0,10]],[[-1,0];[2,5];[-1,0]]) 08/06/2015- 9 EASIBEX-MATLAB : A simple tool to start with interval contractors

  10. Demo  To contract 3 intervals Z=[-10,1], X=[0,2], Y=[-1,2] knowing the constraint Z=X+Y : • [Z,X,Y]=i_Cadd([-10,1],[0,2],[-1,2])  To contract the vector x=[-10,10]*[0,10]*[-10,0] w.r.t. the q-relaxed intersection of the 4 vectors [-2,2]*[2,4]*[-4,1], [-1,5]*[-5,8]*[-7,2], [- 1,1]*[0,2]*[1,2], [-2,2]*[2,8]*[-1,2], with q=2 : • x = [[-10,10];[0,10];[-10,0]] • y_j = {[[-2,2];[2,4];[-4,1]];[[-1,5];[-5,8];[-7,2]];[[-1,1];[0,2];[1,2]];[[- 2,2];[2,8];[-1,2]]} • x = i_C_q_in(x, 2, y_j) 08/06/2015- 10 EASIBEX-MATLAB : A simple tool to start with interval contractors

  11. Demo  Interval matrix imatrix • x = [[1,2];[0,1]]; • A = i_imatrix(2, 2, [[[0,1];[0,0]];[[0,0];[0,1]]]); • i_Mulimatrixbox(A, x)  Contract y=Ax • y = [[2,3];[1,2]]; • [v, M, u] = i_Cmulimatrixbox(y, A, x) 08/06/2015- 11 EASIBEX-MATLAB : A simple tool to start with interval contractors

  12. Demo  C=AB • A = i_imatrix(2, 2, [[[0,1];[0,0]];[[0,0];[0,1]]]); • B = i_imatrix(2, 2, [[[1,2];[0,0]];[[0,0];[1,2]]]); • C = i_imatrix(2, 2, [[[2,3];[0,0]];[[0,0];[2,3]]]); • i_Mul(A, B)  Contract C=AB • [M, P, Q] = i_Cmul(C, A, B) 08/06/2015- 12 EASIBEX-MATLAB : A simple tool to start with interval contractors

  13. Questions? 08/06/2015- 13 EASIBEX-MATLAB : A simple tool to start with interval contractors

  14. 08/06/2015- 14 EASIBEX-MATLAB : A simple tool to start with interval contractors

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend