WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Conception d'un pro logiciel interactif sous r pour la simulation de processus de diffusion

( Télécharger le fichier original )
par Arsalane Chouaib GUIDOUM
Université des sciences et de technologie de Houari Boumedienne - Magister en mathématiques 2012
  

précédent sommaire suivant

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

Annexe B : Packages Sim.DiffProc &

Sim.DiffProcGUI

L

'objective de l'annexe B est de données quelques règles pour la création des packages sous langage R. Et aussi une présentation des deux packages Sim.DiffProc et Sim.DiffProcGUI. Création d'un package

Pour créer un package sous langage R [32], il vous faut installer sur votre ordinateur un certain nombre de logiciels, tous sont disponibles gratuitement sur le web, puis les configurer.

· Perl : est un langage optimisée pour l'extraction d'informations de fichiers textes et la génération de rapports.

http://www.activestate.com/Products/ActivePerl/Download.html

· Rtools : Les Rtools sont des outils Unix qui fournissent une couche d'émulation pour le système Windows. Ils rendent possible l'exécution de programmes Unix sous Windows.

http://www.murdoch-sutherland.com/Rtools/tools.zip

· MinGW : permet de compiler du code C, C++ et FORTRAN. Si vous n'incluez pas de langage autre dans votre code, vous n'avez pas besoin de MinGW.

Sinon : http://prdownloads.sourceforge.net/mingw/MinGW-5.0.0.exe

· HTML Help Workshop: Ce logiciel permet de produire des aides au format .chm, le format d'aide propriétaire de Windows. http://msdn.microsoft.com/library/en-us/ htmlhelp/html/hwmicrosofthtmlhelpdownloads.asp

· Un compilateur LATEX : permet de produire une aide au format pdf. Plusieurs compilateurs sont disponibles, MiKTeX est assez stable. http://www.miktex.org/

· FTP : quand vous aurez terminé votre package, il vous faudra le poster sur le site du CRAN. Cela se fait grâce à un logiciel gérant le FTP (File Transfert Protocol). Là encore, plusieurs choix sont possibles. http://filezilla-project.org/

La création d'un package se fait via une fenêtre de commande DOS ou une fenêtre terminal sous Linux. Tous les nouveaux programmes qui viennent d'être installés doivent être accessibles depuis cette fenêtre. Pour cela, il faut préciser l'endroit où ils ont été installés sur votre ordinateur. Cela se fait en modifiant la variable PATH.

Le plus simple est de créer un fichier Rpath.bat contenant la définition de la variable PATH. Á noter que les espaces ne sont pas acceptés dans les noms de fichier. Sous Windows, Programme File doit donc être abrégé en PROGRA~1. La séparation des différents chemins peut se faire grâce à (;). Pour plus de lisibilité, il est possible de définir le PATH sur plusieurs lignes :

 
 

Annexe B : Packages Sim.DiffProc & Sim.DiffProcGUI

SET PATH =C:\ Rtools \bin

SET PATH =% PATH %;C:\ Perl \bin

 
 

SET PATH =% PATH

%;C:\

Rtools \ MinGW \bin

 
 

SET PATH =% PATH

%;C:\

PROGRA~1\R\R -2.13.1\

bin

 

SET PATH =% PATH

%;C:\

PROGRA~1\R\R -2.13.1\

include

 

SET PATH =% PATH

%;C:\

PROGRA~1\ MIKTEX~ 2.9\

miktex

\bin

SET PATH =% PATH

%;C:\

PROGRA~1\ HTMLHE~1

 
 

SET PATH =% PATH

%;C:\

WINDOWS

 
 

SET PATH =% PATH

%;C:\

WINDOWS \ system32

 
 

Si vous sauvegardez Rpath.bat dans le répertoire racine C:/, il vous suffit ensuite de taper C:/Rpath dans la fenêtre système que vous venez d'ouvrir et votre variable PATH est modifiée comme il convient. Il est également possible de modifier la variable PATH en allant explorer les variables d'environnement. Mais ces modifications sont permanentes jusqu'à ce qu'elles soient rectifiées. Cela veut dire qu'à chaque fois que vous allumerez votre ordinateur, le PATH sera modifiée même si vous n'avez pas de package à compiler ce jour-là. Votre ordinateur sera un peu moins rapide. Aussi, il est plus intéressant de créer un fichier Rpath.bat que l'on exécutera les jours où c'est nécessaire.

Un package est un ensemble de plusieurs fichiers et répertoires, tous réunis dans un répertoire racine. Le répertoire racine a pour nom le futur nom du package (par exemple Monpackage). Il contient un fichier nommé DESCRIPTION, un fichier nommé NAMESPACE, plus les répertoires /R/, /man/, /data/ et /tests/.

DESCRIPTION : contient une description du package.

NAMESPACE : sert à définir la visibilité de nos fonctions et des fonctions des autres packages, via import et export.

/R/ : contient le code des programmes.

/man/ : contient les fichiers d'aide.

/data/ : contient les jeux de données.

/tests/ : contient les fichiers permettant de tester notre programme (tests selon la R Core Team1)

package.skeleton est une fonction qui crée pour vous l'arborescence des fichiers (répertoire racine, répertoires /R/, /man/ et /data/). Elle crée aussi les fichiers d'aide (dans /man/), les fichiers codes (dans /R/), éventuellement les données (dans /data/), le fichier DESCRIPTION et éventuellement le fichier NAMESPACE. L'idée est d'utiliser package.skeleton pour la création initiale de votre package, puis de modifier ensuite à la main les fichiers qu'il a crées.

R> help(package.skeleton)

Lorsque les fichiers sources (programme, aides et données) sont prêts, il reste a les vérifier, à construire le package et éventuellement à construire des documentations au format pdf. Ces trois étapes se font dans une fenêtre de commandes DOS sur Windows ou une fenêtre terminal sur Linux. Pour plus de détails [32, 33].

1. La R Core Team a mis au point un système de gestion de tests automatiques très performant.

Présentation du package

Le package Sim.DiffProc2 [9] sous la version de Windows de langage R à été développée pour simulée et traité statistiquement des équations différentielles stochastiques d'une façon générale à l'exception les processus de diffusion [8]. Le langage R n'incorpore pas une interface graphique GUI 3, mais il inclus des outils pour construire des interfaces graphiques. Basé sur le package tcltk4 [13, 14, 41], qui fournit la possibilité de crée une interface à la boîte à outils de Tcl/Tk. Le package Sim.DiffProcGUI5 [10] fournit une interface graphique pour les fonctions qui sont dans le package Sim.DiffProc.

Installation du package

L'installation6 du package Sim.DiffProcGUI sous R est simple, il suffira de écrire dans R Console la commande suivante :

R> install.packages("Sim.DiffProcGUI")

Pour le chargement de package après l'installation et pour des informations sur le package, est décrit par les commandes suivantes :

R> library("Sim.DiffProcGUI")

Le chargement a nécessité le package : Sim.DiffProc Le chargement a nécessité le package : tcltk Chargement de Tcl/Tk... terminé

Le chargement a nécessité le package : tcltk2 Le chargement a nécessité le package : stats4 Le chargement a nécessité le package : rgl

Le chargement a nécessité le package : xlsx

Le chargement a nécessité le package : xlsxjars Le chargement a nécessité le package : rJava

Sim.DiffProcGUI version 2.0-Sat Feb 26 15:58:10 2011. BOUKHETALA Kamal < kboukhetala@usthb.dz>.

GUIDOUM Arsalane < starsalane@gmail.com>.

University of Sciences and Technology Houari Boumediene (USTHB)

Faculty of Mathematics

Department of Probabilities and Statistics. Copyright (C) 2011 Algeria.

User Interface :: Sim.DiffGUI().

R> library(help="Sim.DiffProc")

R> library(help="Sim.DiffProcGUI")

2. Sim.DiffProc : Simulation of Diffusion Processes.

3. GUI: Graphical User Interface.

4. tcltk : Tool Command Language.

5. Sim.DiffProcGUI : Graphical User Interface for Simulation of Diffusion Processes.

6. Il faut être connecté à Internet pour effectuer ces opérations, où téléchargé manuellement les deux packages [9, 10].

Information sur le package Sim.DiffProc :

Package: Sim.DiffProc

Type: Package

Title: Simulation of Diffusion Processes

Version: 2.0

Date: 2011-02-09

Author: BOUKHETALA Kamal < kboukhetala@usthb.dz>,

GUIDOUM Arsalane < starsalane@gmail.com>

Maintainer: BOUKHETALA Kamal < kboukhetala@usthb.dz>

Depends: R (>= 2.11.0), tcltk, tcltk2, stats4, rgl, xlsx

License: GPL (>= 2)

URL: http://www.r-project.org

Repository: CRAN

LazyLoad: yes

Packaged: 2011-02-12 17:35:17 UTC;

Date/Publication: 2011-02-13 16:11:13

Built: R 2.13.1; ; 2011-09-29 07:46:05 UTC; windows

Information sur le package Sim.DiffProcGUI :

Package: Sim.DiffProcGUI

Type: Package

Title: Graphical User Interface for Simulation of

Diffusion Processes

Version: 2.0

Date: 2011-02-26

Author: BOUKHETALA Kamal < kboukhetala@usthb.dz>,

GUIDOUM Arsalane < starsalane@gmail.com>

Maintainer: BOUKHETALA Kamal < kboukhetala@usthb.dz>

Depends: Sim.DiffProc (>= 2.0)

License: GPL (>= 2)

LazyLoad: yes

Packaged: 2011-02-26 17:46:40 UTC;

Repository: CRAN

Date/Publication: 2011-02-27 16:28:40

Built: R 2.13.1; ; 2011-09-29 07:48:20 UTC; windows

Pour quelques démonstrations graphique de package Sim.DiffProc, est décrit par la commande suivante :

R> demo(Sim.DiffProc)

Les objectifs de conception de l'interface graphique est : renforcer le package Sim.DiffProc, pour une utilisation facile, une interface simple et familière de menu/dialogue-boîte. Le menu

principale est : File, Edit, Brownian Motion, Stochastic Integral, Stochastic Models, Parametric Estimation, Numerical Solution of SDE, Statistical Analysis, Help "?". Après chargement du package, la fenêtre GUI devrait apparaître plus ou moins comme dans la figure XIV.

FIGURE XIV - Graphical User Interface for Sim.DiffProc package at start-up.

Cette interface graphique d'écran de GUI à été crée sous Windows Seven. En cas de l'utilisation une autre version Windows, ou une autre plate-forme, l'image d'écran de GUI peut être différent 7. Toutes les fonctions du menu mènent aux zones de dialogue, c'est-à-dire interactif.

Le menu complet (tree) pour le package Sim.DiffProcGUI (version 2.0) est montré cidessous. toutes les fonctions de menu mènent aux zones de dialogue c'est-à-dire interactif.

File |- Open file

|- Change working directory

|- Import data from...

|- Save

|- Save graphic

|- Quit

| ||- Quit Sim.DiffProcGUI

||- Quit R

Edit |- Eval code Ctrl+R

7. Nous emploient la version R sous Windows, cependant, le langage R est disponible sur d'autres plates-formes, des ordinateurs de Macintosh et des systèmes d'Unix/Linux. L'utilisation de R et le package Sim.DiffProcGUI sur ces autres systèmes est très semblable à leur utilisation sous Windows.

|- Clear Ctrl+T

|- Undo Ctrl+Z

|- Redo Ctrl+W

|- Cut Ctrl+X

|- Copy Ctrl+C

|- Paste Ctrl+V

|- Select All Ctrl+A

|- Delete Ctrl+D

Brownian Motion| - Creating Brownian Motion

| ||- By the normal distribution

| ||- By a random walk

|- Creating flow for Brownian Motion

| ||- By the normal distribution

| ||- By a random walk

|- Creating Arithmetic Brownian Motion

| ||- Arithmetic brownian

| ||- Flow of arithmetic brownian

|- Creating Geometric Brownian Motion

| ||- Geometric brownian

| ||- Flow of geometric brownian

|- Creating Brownian Bridge

| ||- Brownian bridge

| ||- Flow of brownian bridge

|-Brownian Motion Property

| ||- Empirical covariance for brownian motion

| ||- Limite for brownian motion

| ||- Invariance by reversal of time

| ||- Invariance by scaling

|- Brownian Trajectory in 2D

| ||- By the normal distribution

| ||- By a random walk

|- Brownian Trajectory in 3D

||- By the normal distribution

||- By a random walk

Stochastic Integral|- Stratonovitch Integral - Integral(W(s) o dW(s),0,t)

| ||- Integral(alpha o dW(s),0,t)

| ||- Integral(W(s)^n o dW(s),0,t)

|- Ito Integral - Integral(W(s)dW(s),0,t)

| ||- Integral(alpha*dW(s),0,t)

| ||- Integral(W(s)^n*dW(s),0,t)

|- Ito Integral vs Stratonovitch Integral ||-Integral(W(s)dW(s),0,t) vs Integral(W(s) o dW(s),0,t) ||- Integral(s*dW(s),0,t) vs Integral(s o dW(s),0,t)

||- Integral(W(s)^n*dW(s),0,t)vsIntegral(W(s)^n o dW(s),0,t) Stochastic Models |- Attractive Model

| ||- Attractive Model for One-System SDE

| ||- Attractive Model for Two-System SDE

| |||- Two-Dimensional Attractive Model

| |||- Three-Dimensional Attractive Model

| |||- Simulation The First Passage Time

|- Bessel Process

|- Constant Elasticity of Variance Model

|- Cox-Ingersoll-Ross Model

| ||- CIR Model

| ||- The Modified CIR and hyperbolic Process

|- Chan-Karolyi-Longstaff-Sanders Model

|- Diffusion Bridge Model

|- Double-Well Potential Model

|- Exponential Martingales Process

|- Gaussian Diffusion Model

| ||- Hull-White/Vasicek (HWV)

| |||- Hull-White/Vasicek Model

| |||- Flow of Hull-White/Vasicek Model

| ||- Ornstein-Uhlenbeck Process

| |||- Ornstein-Uhlenbeck Process

| |||- Flow of Ornstein-Uhlenbeck Process

| |||- Radial Ornstein-Uhlenbeck Process

|- Hyperbolic Process

| ||- Hyperbolic Process

| ||- General Hyperbolic Diffusion

|- Inverse of Feller Square Root Model

|- Jacobi Diffusion Process

|- Pearson Diffusions Process

|- Stochastic Process

||- Stochastic Process The Gamma Distribution ||- Stochastic Process The Student Distribution ||- Random Walk

||- White Noise Gaussian

Parametric Estimation |- Parametric Estimation of Arithmetic Brownian Motion |- Parametric Estimation of Model Black-Scholes

|- Parametric Estimation of Hull-White/Vasicek Model |- Parametric Estimation of Ornstein-Uhlenbeck Model

||- Exact likelihood Inference

||- Explicit Estimators

Numerical Solution of SDE |- One-Dimensional SDE

| ||- Euler Scheme

| ||- Predictor-Corrector Method

| ||- Milstein Scheme

| |||- Milstein Scheme

| |||- Milstein Second Scheme

| ||- Strong Ito-Taylor Scheme

| ||- Heun Scheme

| ||- Runge-Kutta Scheme

|- Two-Dimensional SDE

||- Euler Scheme

||- Predictor-Corrector Method ||- Milstein Scheme

|||- Milstein Scheme

|||- Milstein Second Scheme ||- Strong Ito-Taylor Scheme

||- Heun Scheme

||- Runge-Kutta Scheme

Statistical Analysis |- Simulation M-Samples of Random Variable |- Simulation The First Passage Time FPT |- Ploting

| ||- Histograms

| ||- Kernel Density

| ||- Empirical Distribution

|- Adjustment of Distributions | ||- Beta Distribution

| |||- Estimate of The Parameters

| |||- Kolmogorov-Smirnov Tests

| ||- Chi-Squared Distribution

| |||- Estimate of The Parameters

| |||- Kolmogorov-Smirnov Tests

| ||- Exponential Distribution

| |||- Estimate of The Parameters

| |||- Kolmogorov-Smirnov Tests

| ||- Fisher Distribution

| |||- Estimate of The Parameters

| |||- Kolmogorov-Smirnov Tests

| ||- Gamma Distribution

| |||- Estimate of The Parameters

| |||- Kolmogorov-Smirnov Tests

| ||- Log Normal Distribution

| |||- Estimate of The Parameters

| |||- Kolmogorov-Smirnov Tests

| ||- Normal Distribution

| |||- Estimate of The Parameters

| |||- Kolmogorov-Smirnov Tests

| ||- Student Distribution

| |||- Estimate of The Parameters

| |||- Kolmogorov-Smirnov Tests

| ||- Weibull Distribution

| |||- Estimate of The Parameters

| |||- Kolmogorov-Smirnov Tests

|- Density Estimation

| ||- by Histograms Methods

| ||- by Kernel Methods

|- Distribution Estimation

Help "?" |- Demos

| ||- Attractive Model for One-System SDE (2D)

| ||- Attractive Model for One-System SDE (3D)

| ||- Attractive Model for Two-System SDE (2D)

| ||- Attractive Model for Two-System SDE (3D)

| ||- Brownian Motion in 2D plane

| ||- Flow of the Diffusion Processes

| ||- Numerical Simulation of One-Dimensional SDE

| ||- Numerical Simulation of Two-Dimensional SDE

| ||- Stochastic Processes (Models)

|- Teachware

|- Start Sim.DiffProc help (.HTML) |- Start Sim.DiffProc help (.PDF)

|- Start R help system

|- About Sim.DiffProc

L'interface de Sim.DiffProc inclut quelques éléments en plus des menus et des dialogues, les expositions externes qui sont montre par la figure XIV, on a :

Plot your data : c'est pour trace votre donnée en fonction du temps (time series).

Add your data : c'est pour ajoutée votre donnée dans un graphe (par exemple pour la comparé).

Plot your solution : c'est pour tracé la solution d'une ÉDS si il existe (par exemple la solution de Black-Scholes).

Add your solution : ajouté la solution dans un graphe (par exemple simulée un flux de modèle de Black-Scholes et ajouté la solution trouvé).

Show data : les donnée importé sont sauvegardée automatiquement dans cette fenêtre. Save graphic: sauvegardée les graphes sous différent format(.pdf, .png, .jpeg, ...)

précédent sommaire suivant






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Entre deux mots il faut choisir le moindre"   Paul Valery