jueves, 23 de octubre de 2014

Homemade "dropbox" for Ubunutu/Debian

In order to sync folders between several computers there is an app based on p2p called btsync.

Installation (This is required in all computers):

Step 1:

  -To install btsync is required to change source.list:


  sudo apt-get install python-software-properties
  sudo add-apt-repository ppa:tuxpoldo/btsync
  sudo apt-get update
  sudo apt-get install btsync

-There is installation manager in text mode, but you choose default option

Step 2:

   - To create a new folder in clients computers to share whose owner is btsync:

  sudo mkdir /Dir
  sudo chown btsync:btsync -R /Dir
  sudo chmod g+w -R /Dir
 
  -To add your user to btsync group and
 
  sudo usermod -G  btsync "user"
  
  Step 3:

  - Open this web site http:\\localhost:8888  in the original folders computer
        3.1 Create an admin user
        3.2 Choose the original folder to share
        3.3 Generate a key and copy

  - Open the same web site  http:\\localhost:8888  in the clients computers:
        3.4 Create an admin user
         3.5 Choose the folders to be sync
         3.6 Introduce the key

Remarks:
    - One computer has be left on
    - If any client is windows there is windows version available

lunes, 20 de enero de 2014

Easy Epsilon-constriant implementation (gams version)

Template in gams of epsilon-constraint method: 

Set
iteration number of iteration /001*010/
ob        objectives in your model /1*20/
ecit      number e-constraints intervals /1*3/;


Parameters
comb(ob)  current combination
cf        carry
indexObj  sum index;
;

*===============================================================================
*YOUR MODEL
*===============================================================================


FILE BIO / comb.xls /;
PUT BIO;
BIO.nd = 4;
BIO.nw = 0;
BIO.nr = 3;
BIO.pc = 6;

comb(ob)=1;

loop(iteration,

*===============================================================================
* Solve .....
*===============================================================================


  loop(ob,
    put sqrt(2);
  );
  put /;


  cf = 1;
  loop(ob$(cf eq 1),
    comb(ob)=comb(ob)+1;
    if(comb(ob)>card(ecit),
      comb(ob)=1;
    else
      cf=0;
    );
  );

);

sábado, 7 de septiembre de 2013

effective epsilon-constraint:

G. Mavrotas introduced an improvement of epsilon-constraint method using lexicographic optimization for the payoff table. The new method is called AUGMECON and is included in gams libray.

see other improvement

viernes, 6 de septiembre de 2013

2 manners to get "The time of execution" in gams.


1. Using function:  timeExec

see Manual 

2. Using function: jnow

startTime = jnow;
...
elapsedTime = (jnow - startTime)*24*3600;

see wiki

jueves, 31 de enero de 2013

Dibujar una superficie con R:

Este el código que hace esto:

require(grDevices) # for trans3d
## More examples in  demo(persp) !!
##                   -----------

# (1) The Obligatory Mathematical surface.
#     Rotated sinc function.

x <- 5="" length="30)<br" seq="">y <- br="" x="">f <- br="" function="" r="" x="" y="">z <- br="" f="" outer="" x="" y="">z[is.na(z)] <- 1="" br="">op <- bg="white" br="" par="">persp(x, y, z, theta = 30, phi = 30, expand = 0.5, col = "lightblue");

miércoles, 19 de septiembre de 2012

Hacer un pool de solucion en CPLEX

 El el fichero cplex.opt tenemos que introducir la instrucción solnpool  que nos crea el pool de soluciones que está indexado en el gdx solnpool.gdx. Con solnpoolpop 1 las soluciones se generan mediante el procedimiento normal de optimización de Cplex, pero con la instrucción solnpoolpop 2, se generán un número PopulateLim de soluciones mediante un procedimiento especial de Cplex para generar varias soluciones. Las soluciones las filtramos mediante solnpoolintesity 4 y solnpoolAgap 0.0. Para mas info mirar este ejemplo http://www.gams.com/modlib/libhtml/solnpool.htm

  File fcpx / cplex.opt /;
  option limrow=0,limcol=0, optcr=0, mip=cplex;
  LNQP.optfile=1;  LNQP.solprint=%solprint.Quiet%;  LNQP.savepoint = 1;
  

putclose fcpx 'solnpool solnpool.gdx' / 'solnpoolintensity 4' /
  'solnpoolpop 2' / 'solnpoolAgap = 0.0';