Visual Xpress sous Linux ?

Arno59 Messages postés 4603 Date d'inscription   Statut Contributeur Dernière intervention   -  
Arno59 Messages postés 4603 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Depuis quelques jours, je dois faire des programmes pour le bac+4 informatiqus, le logiciel utilisé est Visual Xpress, tourne-t-il sous Linux, existe-t-il un équivalent pource système d'exploitation et OpenSource ?

Autre logiciel utilisé Scilab 3.1 permettant de résoudre un problème de Location de voiture:

Exemple de programme :

MODEL : Loueur
LET
N=10            ! Nombre d'agence
C=3             ! Cout kilometrique
TABLES
Theo(n)         ! Nombre theorique ideal
Reel(n)         ! Nombre reel
X(n)            ! Coordonnées X d'une agence
Y(n)            ! Coordonnées Y d'une agence
S(n)            ! Solde reel agence par agence
D(n,n)          ! distance entre 2 agences
DATA
Theo=10,6,8,11,9,7,15,7,9,12
Reel=8,13,4,8,12,2,14,11,15,7
X=0,4,4,6,7,7,1,1,2,0
Y=0,4,2,2,0,5,5,2,0,3
ASSIGN
S(i=1:n)=reel(i)-Theo(i)
D(i=1:n;j=1:n)=abs(X(i)-X(j)^2+abs(Y(i)-Y(j)^2)^0.5      ! ; ou , ??
VARIABLES
Z(i=1:n,j=1:n)|S(i)>0.and S(j)<0)
CONSTRAINTS             ! objectif : minimiser le cout de transport
CoutTotal: Sum (i=1:n;i=1:n;j=1:n|S(i)>0.and S(j)<0 C*D(i,j)*Z(i,j)$            ! $ : valeur a optimiser
Surplus: (i=1:n|S(i)>0:sum(j=1:n|S(j)<0))Z(i,j)=S(i)
Besoins: (i=1:n|S(i)<0:sum(i=1:n|S(j)>0))Z(i,j)=S(i)
END


--
L'Open source et Linux sont l'avenir de l'informatique ;-)

1 réponse

  1. Arno59 Messages postés 4603 Date d'inscription   Statut Contributeur Dernière intervention   499
     
    Bonjour,

    Voici un exemeple de programmation linéaire:

    ! MENTOR MPMOD ProjSchd Problem
    
     LET NProj=3        ! Number of projects
     LET NMonth=6       ! Number of months to plan for
    
    TABLES
     PROF(NProj,NMonth) ! Resource profile: usage of resource by
                        !  project p in its t'th month
     BEN(NProj)         ! Benefit per month once project finished
     RES(NMonth)        ! Amount of resource available in month t
     DUR(NProj)         ! Duration of project p (in months)
    
    DATA
     DUR(1)  = 3 , 3 , 4
    
     PROF(1,1) = 3, 4, 2
     PROF(2,1) = 4, 1, 6
     PROF(3,1) = 3, 2, 1, 2     ! Other PROF entries are 0 by default
    
     BEN(1) = 10.2, 12.3, 11.2
    
     RES(1) = 5, 6, 5, 5, 4, 5
    
    VARIABLES
     x(NProj,NMonth)    ! x(p,t) = 1 if project p starts in month t, 0 otherwise
     start(NProj)       ! start month for project i
    
    CONSTRAINTS
     Profit:  SUM(p=1:NProj,t=1:NMonth-DUR(p))	&
                  BEN(p)*(NMonth-t-DUR(p)+1) * x(p,t) $
    
    ! We have to do each project, but only once
     OneX(p=1:NProj):  SUM(t=1:NMonth) x(p,t) = 1.0
    
    ! If a project starts at time t it is in its
    ! k-t+1 th month in month k
     ResMx(k=1:NMonth): SUM(p=1:NProj,t=1:k) PROF(p,k+1-t)*x(p,t) < RES(k)
    
    ! The variables start(p) get the value of the start month for project p
     SDefine(p=1:NProj): SUM(t=1:NMonth) t*x(p,t) = start(p)
    
    BOUNDS
      x(p=1:NProj, t=1:NMonth) .BV.
    
    END

    0