annotate stdparams_exact.py @ 14:f2eb027ed101

test_exact.py working. Added bp_cvxopt(). Commented the code that made the operator Omega more coherent.
author Nic Cleju <nikcleju@gmail.com>
date Fri, 16 Mar 2012 13:42:31 +0200
parents
children a27cfe83fe12
rev   line source
nikcleju@14 1 # -*- coding: utf-8 -*-
nikcleju@14 2 """
nikcleju@14 3 Created on Wed Dec 07 14:04:40 2011
nikcleju@14 4
nikcleju@14 5 @author: ncleju
nikcleju@14 6 """
nikcleju@14 7
nikcleju@14 8 import numpy
nikcleju@14 9 from algos import *
nikcleju@14 10
nikcleju@14 11 #==========================
nikcleju@14 12 # Standard parameters
nikcleju@14 13 #==========================
nikcleju@14 14 # Standard parameters for quick testing
nikcleju@14 15 # Algorithms: GAP, SL0 and BP
nikcleju@14 16 # d=50, sigma = 2, delta and rho only 3 x 3, lambdas = 0, 1e-4, 1e-2, 1, 100, 10000
nikcleju@14 17 # Do save data, do save plots, don't show plots
nikcleju@14 18 # Useful for short testing
nikcleju@14 19 def stdtest():
nikcleju@14 20 # Define which algorithms to run
nikcleju@14 21 #algos = exact_gap,exact_sl0,exact_bp,exact_ompeps,exact_tst # tuple of algorithms
nikcleju@14 22 algos = exact_bp_cvxopt, # tuple of algorithms
nikcleju@14 23
nikcleju@14 24 d = 50.0
nikcleju@14 25 sigma = 1.2
nikcleju@14 26 deltas = numpy.array([0.05, 0.45, 0.95])
nikcleju@14 27 rhos = numpy.array([0.05, 0.45, 0.95])
nikcleju@14 28 #deltas = numpy.array([0.6])
nikcleju@14 29 #deltas = numpy.arange(0.05,1.,0.05)
nikcleju@14 30 #rhos = numpy.array([0.05])
nikcleju@14 31 numvects = 10; # Number of vectors to generate
nikcleju@14 32 SNRdb = 100.; # This is norm(signal)/norm(noise), so power, not energy
nikcleju@14 33
nikcleju@14 34 dosavedata = True
nikcleju@14 35 savedataname = 'exact_pt_stdtest.mat'
nikcleju@14 36 doshowplot = False
nikcleju@14 37 dosaveplot = True
nikcleju@14 38 saveplotbase = 'exact_pt_stdtest_'
nikcleju@14 39 saveplotexts = ('png','pdf','eps')
nikcleju@14 40
nikcleju@14 41 return algos,d,sigma,deltas,rhos,numvects,SNRdb,dosavedata,savedataname,\
nikcleju@14 42 doshowplot,dosaveplot,saveplotbase,saveplotexts
nikcleju@14 43
nikcleju@14 44
nikcleju@14 45 # Standard parameters 1
nikcleju@14 46 # All algorithms, 100 vectors
nikcleju@14 47 # d=50, sigma = 2, delta and rho full resolution (0.05 step), lambdas = 0, 1e-4, 1e-2, 1, 100, 10000
nikcleju@14 48 # Do save data, do save plots, don't show plots
nikcleju@14 49 def std1():
nikcleju@14 50 # Define which algorithms to run
nikcleju@14 51 algos = exact_gap,exact_sl0,exact_bp_cvxopt,exact_ompeps,exact_tst # tuple of algorithms
nikcleju@14 52
nikcleju@14 53 d = 50.0;
nikcleju@14 54 sigma = 1.2
nikcleju@14 55 deltas = numpy.arange(0.05,1.,0.05)
nikcleju@14 56 rhos = numpy.arange(0.05,1.,0.05)
nikcleju@14 57 numvects = 100; # Number of vectors to generate
nikcleju@14 58 SNRdb = 100.; # This is norm(signal)/norm(noise), so power, not energy
nikcleju@14 59
nikcleju@14 60 dosavedata = True
nikcleju@14 61 savedataname = 'exact_pt_std1.mat'
nikcleju@14 62 doshowplot = False
nikcleju@14 63 dosaveplot = True
nikcleju@14 64 saveplotbase = 'exact_pt_std1_'
nikcleju@14 65 saveplotexts = ('png','pdf','eps')
nikcleju@14 66
nikcleju@14 67 return algos,d,sigma,deltas,rhos,numvects,SNRdb,dosavedata,savedataname,\
nikcleju@14 68 doshowplot,dosaveplot,saveplotbase,saveplotexts
nikcleju@14 69
nikcleju@14 70
nikcleju@14 71 # Standard parameters 2
nikcleju@14 72 # All algorithms, 100 vectors
nikcleju@14 73 # d=20, sigma = 10, delta and rho full resolution (0.05 step), lambdas = 0, 1e-4, 1e-2, 1, 100, 10000
nikcleju@14 74 # Do save data, do save plots, don't show plots
nikcleju@14 75 def std2():
nikcleju@14 76 # Define which algorithms to run
nikcleju@14 77 algos = exact_gap,exact_sl0,exact_bp_cvxopt,exact_ompeps,exact_tst # tuple of algorithms
nikcleju@14 78
nikcleju@14 79 d = 20.0
nikcleju@14 80 sigma = 10.0
nikcleju@14 81 deltas = numpy.arange(0.05,1.,0.05)
nikcleju@14 82 rhos = numpy.arange(0.05,1.,0.05)
nikcleju@14 83 numvects = 100; # Number of vectors to generate
nikcleju@14 84 SNRdb = 100.; # This is norm(signal)/norm(noise), so power, not energy
nikcleju@14 85
nikcleju@14 86 dosavedata = True
nikcleju@14 87 savedataname = 'exact_pt_std2.mat'
nikcleju@14 88 doshowplot = False
nikcleju@14 89 dosaveplot = True
nikcleju@14 90 saveplotbase = 'exact_pt_std2_'
nikcleju@14 91 saveplotexts = ('png','pdf','eps')
nikcleju@14 92
nikcleju@14 93 return algos,d,sigma,deltas,rhos,numvects,SNRdb,dosavedata,savedataname,\
nikcleju@14 94 doshowplot,dosaveplot,saveplotbase,saveplotexts
nikcleju@14 95
nikcleju@14 96
nikcleju@14 97 # # Standard parameters 3
nikcleju@14 98 ## All algorithms, 100 vectors
nikcleju@14 99 ## d=50, sigma = 2, delta and rho full resolution (0.05 step), lambdas = 0, 1e-4, 1e-2, 1, 100, 10000
nikcleju@14 100 ## Do save data, do save plots, don't show plots
nikcleju@14 101 ## IDENTICAL with 1 but with 10dB SNR noise
nikcleju@14 102 #def std3():
nikcleju@14 103 # # Define which algorithms to run
nikcleju@14 104 # algos = exact_gap,exact_sl0,exact_bp,exact_ompeps,exact_tst # tuple of algorithms
nikcleju@14 105 #
nikcleju@14 106 # d = 50.0;
nikcleju@14 107 # sigma = 2.0
nikcleju@14 108 # deltas = numpy.arange(0.05,1.,0.05)
nikcleju@14 109 # rhos = numpy.arange(0.05,1.,0.05)
nikcleju@14 110 # numvects = 100; # Number of vectors to generate
nikcleju@14 111 # SNRdb = 100.; # This is norm(signal)/norm(noise), so power, not energy
nikcleju@14 112 #
nikcleju@14 113 # dosavedata = True
nikcleju@14 114 # savedataname = 'exact_pt_std3.mat'
nikcleju@14 115 # doshowplot = False
nikcleju@14 116 # dosaveplot = True
nikcleju@14 117 # saveplotbase = 'exact_pt_std3_'
nikcleju@14 118 # saveplotexts = ('png','pdf','eps')
nikcleju@14 119 #
nikcleju@14 120 # return algos,d,sigma,deltas,rhos,numvects,SNRdb,dosavedata,savedataname,\
nikcleju@14 121 # doshowplot,dosaveplot,saveplotbase,saveplotexts
nikcleju@14 122
nikcleju@14 123 ## Standard parameters 4
nikcleju@14 124 ## All algorithms, 100 vectors
nikcleju@14 125 ## d=20, sigma = 10, delta and rho full resolution (0.05 step), lambdas = 0, 1e-4, 1e-2, 1, 100, 10000
nikcleju@14 126 ## Do save data, do save plots, don't show plots
nikcleju@14 127 ## Identical to 2 but with 10dB SNR noise
nikcleju@14 128 #def std4():
nikcleju@14 129 # # Define which algorithms to run
nikcleju@14 130 # algos = exact_gap,exact_sl0,exact_bp,exact_ompeps,exact_tst # tuple of algorithms
nikcleju@14 131 #
nikcleju@14 132 # d = 20.0
nikcleju@14 133 # sigma = 10.0
nikcleju@14 134 # deltas = numpy.arange(0.05,1.,0.05)
nikcleju@14 135 # rhos = numpy.arange(0.05,1.,0.05)
nikcleju@14 136 # numvects = 100; # Number of vectors to generate
nikcleju@14 137 # SNRdb = 10.; # This is norm(signal)/norm(noise), so power, not energy
nikcleju@14 138 #
nikcleju@14 139 # dosavedata = True
nikcleju@14 140 # savedataname = 'exact_pt_std4.mat'
nikcleju@14 141 # doshowplot = False
nikcleju@14 142 # dosaveplot = True
nikcleju@14 143 # saveplotbase = 'exact_pt_std4_'
nikcleju@14 144 # saveplotexts = ('png','pdf','eps')
nikcleju@14 145 #
nikcleju@14 146 # return algos,d,sigma,deltas,rhos,numvects,SNRdb,dosavedata,savedataname,\
nikcleju@14 147 # doshowplot,dosaveplot,saveplotbase,saveplotexts