From d18eb30a98ddaab116d584ba7a13a0369d12b80e Mon Sep 17 00:00:00 2001 From: Migork Date: Mon, 16 Apr 2012 20:22:05 +0100 Subject: [PATCH 1/7] [Docs] - Descrisao da base de dados da PowerComputing --- .../Reqs_BD_16-4-2012.pdf | Bin 0 -> 204948 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 Docs/Base de Dados - Power Computing/Reqs_BD_16-4-2012.pdf diff --git a/Docs/Base de Dados - Power Computing/Reqs_BD_16-4-2012.pdf b/Docs/Base de Dados - Power Computing/Reqs_BD_16-4-2012.pdf new file mode 100644 index 0000000000000000000000000000000000000000..26ee7f20f04584414bdcf2b08ef6ea8e99c42698 GIT binary patch literal 204948 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 )o4Zxgi2tlQ9c`kxuAac$B& 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%0Aq)tg1{MrG`nAE}9;<*Ue<-pd1JyqAN<= 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

WU6X-JHp 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 UvXeF0zuvbe4Ts)4`LBlmFHq41H~;_u literal 0 HcmV?d00001 From 993fb252662974fa7341735e37288d865a45de5a Mon Sep 17 00:00:00 2001 From: Bruno Oliveira Date: Wed, 18 Apr 2012 00:39:19 +0100 Subject: [PATCH 2/7] =?UTF-8?q?[PowerMaster]=20Implementa=C3=A7=C3=A3o=20d?= =?UTF-8?q?e=20um=20novo=20loader=20para=20o=20problema=20KnapSack.=20Est?= =?UTF-8?q?=C3=A1=20implementa=C3=A7=C3=A3o=20n=C3=A3o=20esta=20oficializa?= =?UTF-8?q?da,=20uma=20vez=20que=20pode=20e=20dever=C3=A1=20estar=20sujeit?= =?UTF-8?q?a=20a=20altera=C3=A7=C3=B5es.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A documentação deste loader ainda não foi feita devido a tratar-se de uma versão muito prematura. --- .../build/classes/Module/Loader/Loader.class | Bin 1139 -> 1768 bytes .../build/classes/Module/Loader/OnesMax.class | Bin 2562 -> 3281 bytes .../build/classes/Module/Loader/Problem.class | Bin 1745 -> 1862 bytes .../classes/powermaster/PowerMaster.class | Bin 545 -> 1456 bytes .../PowerMaster/src/Module/Loader/Loader.java | 20 +++++++++++- .../src/Module/Loader/OnesMax.java | 30 ++++++++++++++---- .../src/Module/Loader/Problem.java | 9 ++++++ .../src/powermaster/PowerMaster.java | 10 +++--- 8 files changed, 57 insertions(+), 12 deletions(-) diff --git a/Cluster/PowerMaster/build/classes/Module/Loader/Loader.class b/Cluster/PowerMaster/build/classes/Module/Loader/Loader.class index 18c446306af64863089bae40247233a4a0068e70..4420f3a4e44973719124415acd626bb93ae8a2a8 100644 GIT binary patch literal 1768 zcmZ`)%W@k<6g_Q8p0PZ}wj5h_$U`PT{8AiD!b>K^STP98l0haU4zISvF+vlEp@0r`9zn}i`7l0L1qqvOM zOuTO5jVMxBHSwl?-ZJr)iQC#-8^YUIH<6Cw4mJ$D6U7ML)wfI(?_pD0S$*3wku#Au zv2Egg10O^Y*SNUG#Wf_ZAq5jV20k=!S730}c5VNbKxl5B%kX-wqy$E@wySc@>Ynm; z#Ugwb_n|25+&Sm%IS8~~rZh5)j zd$wCn&7X+b_G;vP$G@2Unj2r&;_Sue=qfxz?$&}L^x6P2VdGp?@v zRC?|@wp)>`e&WGd+aq<)t}5G;RH7mUMhZUjZOMAObpzM=7AUYlv`}k$MYUmTm4*Wa zuIYRh5||YbBLXn+k%fD>&t=rYE*{X(6|yCEWZ`3cV&GE?pW$VDK*cTv^d0OGbN(P8KLyC;cM{qB zTKZ193oyGP_tn~U9x=A_a60;H?7{>t2ZeMUM{&oMoJ5>1~S z=L$wp!0=Svkww0@bnk?&SEN@^UpAFnRH>fX==0C_Y;;CiAkwHiHgjF=rRxs-nPWD{ zJksG5PWFZbHK*ox`^)~e;j1c7YOTo}lR*J?ZF!pq%4ZfO_3@c#x8Cn&s~l(7cX$~3 z5_N0i$)B1#qd@&h7%D5WOTWn~`H^5vS>51K@CRE$|#y%Y5<}A+qoU;!%713h#q$=P;h9Z3O_l zfET$M!d1-C!(h=s2x0nuTZj$BLM?-)G!sA|OZJXVT?@ zPv|q{VA112K)|#MrGOb`9eU`(oW~=N`EOrZ%@1a)F>DCdYxRSVQDtW@GNe{&)$QnD zYPb5SYU$&u!K4j%ELa}%L^QBG<(Ys;*V=xxTK#N!&I?2TYHho|7Zp2q6r~-u#XeqI zUh&%Fjit<@rNWZsElbUE{H*ykakQDyP;SLA&QhwL@NMOczUxj-hm0C$ X7!itbS3(N&k7bWhZHZ$l#klt$0OLUJ diff --git a/Cluster/PowerMaster/build/classes/Module/Loader/OnesMax.class b/Cluster/PowerMaster/build/classes/Module/Loader/OnesMax.class index cebb47096ac6b07e858c581c4962f0fcad9fadc4..d6208326b938613ee40d8db5068871adcfd1e762 100644 GIT binary patch literal 3281 zcmah~TX!2*75U@&-?+N3lzRHBh_OeikEz5pFMkj zXP<9h<}V-o@jU=j_>GE(doh7WG~A6ZOKC|i=QJ*cl$KSjXsEzcabCr$6fek^mWDMv zDlKd&Ri)19g^QYkiyHQzuA(8Io?Mz5)^SP2W76TWipQn$2^C+F`zKX=RmD?M{F;id zD|lMLH#FRix`HdcxQcITxD(H4ID}`V(KQ9nDR^FBXR+=s+h#RyR84_+Zp~OXQnul& zrb=Gja#p7W`et0G;Tev%VAxF>DK)oNvL2@-vI6^x>G|~BQn64xl}neih5S+}dnO~G z8MbNLZeX}OFiPh#xm=-bkoC;E;aLP1*cBLL%b9r}q{PUU&4zc<@*J~4gLq(YB2y|a zoy?Z=nG#L<1Lb_?p;OuU%&fePA5407Hnf{5oXVF4Vim(P1ooWmc1O*2jY`Qgye7{Q zX9RW}vmDF2PhfDoi$h|8cr$K=91P?v$ILgY%Vxc7kV#3RyJFZ2M%|M8mNMpDun4_B zH|JKGwwcQDJhPrE@OE>?V`ModH3HG`1W)g&8Fiz|NGyR~%GJiKAABD}TzPcPsQIW0 zjtl6krk6J_m0Ww>tn+%~iQKB`n4Y!LNCirQA9CxfhpAjP4X1IqHJa9{bbbJm+bli^@bR3n^F&x+N0KTB(K75`;O)L18j&I{d%49{e zJ}fRBFX1~nzKicEcv;8y@dF*7mJmP0D>`1qYYKj(R5J}FRI*V%)UAYcOPG>UMQ9#+x^4w&e-j)x{^#rI$#Ld9i8O?2dh5 zm%{Rzx#CUBcIaDi9nY|wMlooMZFa42q}}eVXtIuHuF8f`***=E+Yb1)8_QQ&mxHZv zUfwgC2;H;=!X8kKN~Lvpw|j+r+F^H)bD7y;Lr2}F3?#6(+*FY>md#Z+jVe#sVbp4- z!znNsCZZi_=#W6ws!kc6=LRZ)y&M2rG_-s<7ku6J6XhtE=iAQz;D&b?-p)wp!TZCt zSCn-)=hq=~md$gRFQjuzoXK+h5{P*BjAyf311jrOtaYox>`znO^enrP3QD&%x)KW* z;_`ufj? z^rO(^(4jseM-HEwY#x8l>Ek~+d-&{SEcYYL^#ph45Tyq&oQ#Vbh-@O7jNU{nIdKy` z$>b(>+=TLb-+PAZAbPkSB}S4roaQI}7;Yo_tpCo(K?WzeBchyo{=GT)g3}@{Pm2NK zTJjzA#HQlv26}VRkonyo|5Wj^zi<{UR-?xFmUi(h_?+`Zg04g-q?!80DIV&fQ)nafC@bf-f@3 z4^o=LJo0c*z(q<|QNoKT^E0%7w{RMN!k6%8oW)=9F#d)|@OLcXeVh}6FvJilViKmf z7w5$+E{HrVv4%BK#f)gc5l^BnuHv$I22c29lw^U7h$6Bqo+$c-$rz5v5*624rKQv7 zLBF(ejCdHzztFE>PW%(geEb6?{@$0ro;@tPJY$adrCwr72zn%L;n1SYrA*H)+|HW0 zgW>@H$8O=y#T&S56XTmm{Eo&EpPU`O;}t(ZJpgG1Q>2Z2`w*Xk)U+y{UC&QDbv;B? zB+Fr-XG1_eEg(To%XE=V8Fn7%bbg_$^Qo@R2Rof#>gv4E)p@Mb`Q@(8r@J~I=yZOi pi?hnQS!~_;4xcWLC*==_@INW1j_}#nWcra{VN6hS#wYXae*h2r)yx0@ literal 2562 zcmZuyZF3V<7(KU1yXmqmZTd!$ib|Cxl?IA0V0keuEd=u>NrNp&*)~g9*ltR)DTt^z z@hR^`vza&#($oQgc=LnwrBS`Ob)v4BPS@{AmvmDqPfI42`ZA)J>_ zJ%nZXT#+w}3Je7oRBS^@!NpFPxTIn`E~^-VrC?QoEwCk9DKA^bYFb}41j5Nn`nn#o zbh{MGITh0`O$l_(l&2X-J2fT~ivk^oOxtvh2n>$3AVdnx zH&ZThlUtLfZKP|f%SI)yQ!1%ac}2Ghdc~CUdNAl*G?{uRnJO1+mJv&GJ);uKu>6#M zjWPyhL?AF0;p**cdPQGlC8j_p$E($2Zt-0#apiJKUvsl6m=MrPhLbj~=E~N(QQ`K+ zBFU0r8;-eBjd?*P-&L-ZCKy~cbh|o{E7vM3M$%X}thjBLxoc15exEWKW~-P*gXB)G z(2%B!V}D~_b_@9!zLBfP)%h*h`J36s&2u0`6WMW;XMQaWqunD5z;z$5jnuGQ~B#r{Ox@ zr_?m6hFuutDxMoPyd-BqX)O&=3BLiFb!(HNG~|;=yQd%HqstP{P@S(Sfk0kmg4@XNg{4ZWVgVKw>4%H7}LMqtPd@gCB>Y8Ob0=rvqA}uUU z5sWJ}-J(ec{FKb{C1b^zlCJE1x=O-!jFR+Qi0-T!oHo(w)k$|K>+)jAT#)rABEB8e zlh9%zy;#h8mTy(BkJBiJn;xL4mf|z{`FL_EJiqPcDsDa91SHOI87F|UR7;}j|2d0wD9c};5=#&etryueu- zpKa1m91r6~U%ZELTFZ^^_Qk`D)0J*K;)|<{(|&Gz+!ybMDh~qVZSoknPaXn3JGu5g zel`U5b9Nd5B7mW2SlmO~CIZp%`v^v(n`pm}j=L`L75;`1W;Ubd#IQlb!!O5_)flxAVc*ppoZ}Hvuj>&K*1L-}1$*{VC zEni_Ix+ggK0NQR&Yf8h5dYtj{XV$w{PM5qj-}{ z+4UUVA^40u#L$A2PAc;d+ZHx4%wd<*;32jz+`}`Q*s+O`9|>-AH{Ib99k)2mOHwZ+ zPK5Ke?-!e4{0Kt|hsznS8S) x`FKn6Kr{JPOY(`9Sf?R_(c~Yjs;o)CAV{8^$0p7#${+x?!5Apx h!lufa29!w$%E&XDKy@!>6J*Q+>1HipaEU+u|5J~M)3_SiZQON6Nn^YS$?pZq$`Y0GO0-i@E7^P zPimD?Yt{aM{ZXr@lej_=zjWVz+L_%8BTaj}Ymi=!AJ{-5HmZoF1yO<8-2 z!~OKZN|<7u>E3^?HXfHs1&_1Q=3%s5@6e)pKNbS#x>35)%ugK*DloPmLZ?hDtT6;G z_X6_Ek`Dc3mgJ0skHQY!ri^k=%vz5r@RgXSg5eX)$>UHa$(INm}3! zXJL^*@AE9n(>l#L5NC=@oW9tq~CN#9}Kte}BVM)PW z*nr^-21D`AJNMr6-TNJW*=+l}-T(t`0xYRdg=?3NOI8ejJe$u(uZE=9C-a5rg+4)q zi)ToSU3zbb$N78SpXAd~|M6-3^8CiFHdt+R2&ht%^Gia11tT9w!}+Iee?;olR6$Bz z8XbL=1{bP)Vwz=E{!XvVnWe;0@B}`bfrd*GO+2ptj>vb9n9}iJg;UbzpVrAtWlK$m F_5s=-8lV6G diff --git a/Cluster/PowerMaster/src/Module/Loader/Loader.java b/Cluster/PowerMaster/src/Module/Loader/Loader.java index 047c8a8..b26e561 100644 --- a/Cluster/PowerMaster/src/Module/Loader/Loader.java +++ b/Cluster/PowerMaster/src/Module/Loader/Loader.java @@ -18,7 +18,8 @@ public static Problem Load(String dataIn) { //Leitura da primeira linha para verificar qual o tipo de problema String[] primeiraLinha = linhas[0].split(";"); //Verificação do tipo de problema (Linha 1) - if (primeiraLinha[0].equals("OneMax")) { + if (primeiraLinha[0].equals(OnesMax.ProblemName)) { + System.out.println("##### New Ones Max Problem #####"); //Problema do tipo OnesMax OnesMax oneMax = new OnesMax(linhas); //Verificar se o objecto foi carregado com sucesso com a informação passada @@ -26,9 +27,26 @@ public static Problem Load(String dataIn) { //Atribnuição de Identificadores globais oneMax.setProblemID(Integer.parseInt(primeiraLinha[1])); oneMax.setClientID(Integer.parseInt(primeiraLinha[2])); + System.out.println("##### OnesMax Problem Ok #####"); return (Problem)oneMax; } + System.out.println("##### OnesMax NOT LOADED #####"); } + if (primeiraLinha[0].equals(KnapSack.ProblemName)) { + System.out.println("##### New KnapSack Problem #####"); + //Problema do tipo OnesMax + KnapSack knapSack = new KnapSack(linhas); + //Verificar se o objecto foi carregado com sucesso com a informação passada + if(knapSack.getStatus()){ + //Atribnuição de Identificadores globais + knapSack.setProblemID(Integer.parseInt(primeiraLinha[1])); + knapSack.setClientID(Integer.parseInt(primeiraLinha[2])); + System.out.println("##### KnapSack Problem Ok #####"); + return (Problem)knapSack; + } + System.out.println("##### KnapSack NOT LOADED #####"); + } + return null; } } \ No newline at end of file diff --git a/Cluster/PowerMaster/src/Module/Loader/OnesMax.java b/Cluster/PowerMaster/src/Module/Loader/OnesMax.java index 61eb341..456c2f0 100644 --- a/Cluster/PowerMaster/src/Module/Loader/OnesMax.java +++ b/Cluster/PowerMaster/src/Module/Loader/OnesMax.java @@ -38,7 +38,9 @@ public class OnesMax extends Problem { /** * Número de parametros que são necessário para que o problema OneMax seja corrido */ - private static int PARAM_COUNT = 4; + private static int PARAM_REQUIRED = 4;//Número de parametros obrigatórios + private int PARAM_ADDED = 0;//Número de parametros adicionados obrigatórios + private static int PARAM_COUNT = 4;//Número de parametros existentes no problema /** * Referência para todas as linhas existentes no documento */ @@ -53,7 +55,7 @@ public class OnesMax extends Problem { * @param data Informação do problema a ser carregado */ public OnesMax(String data[]) { - super(OnesMax.ProblemName, PARAM_COUNT); + super(OnesMax.ProblemName, PARAM_REQUIRED); this.data = data; this.loadStatus = Load(); } @@ -67,36 +69,50 @@ private boolean Load() { String[] param = parmsData[i].split("="); //Verificação de parametros //parametro 1 - if (param[0].equals(OnesMax.PARAM_ITERATIONS)) { + if (param[0].equals(OnesMax.PARAM_ITERATIONS) && !this.containsParam(OnesMax.PARAM_ITERATIONS)) { //carregar o parametro para um dicionario de parametros this.Iterations = Integer.parseInt(param[1]); this.addParam(OnesMax.PARAM_ITERATIONS, this.Iterations); + //registar parametros obrigatório + this.PARAM_ADDED++; + System.out.println(OnesMax.PARAM_ITERATIONS+"+:"+this.PARAM_ITERATIONS); continue; } //parametro 2 - if (param[0].equals(OnesMax.PARAM_POPULATION_SIZE)) { + if (param[0].equals(OnesMax.PARAM_POPULATION_SIZE) && !this.containsParam(OnesMax.PARAM_POPULATION_SIZE)) { this.popSize = Integer.parseInt(param[1]); this.addParam(OnesMax.PARAM_POPULATION_SIZE, this.popSize); + //registar parametros obrigatório + this.PARAM_ADDED++; + System.out.println(OnesMax.PARAM_POPULATION_SIZE+"+:"+this.popSize); continue; } //parametro 3 - if (param[0].equals(OnesMax.PARAM_ALELLO_SIZE)) { + if (param[0].equals(OnesMax.PARAM_ALELLO_SIZE) && !this.containsParam(OnesMax.PARAM_ALELLO_SIZE)) { this.alelloSize = Integer.parseInt(param[1]); this.addParam(OnesMax.PARAM_ALELLO_SIZE, this.alelloSize); + //registar parametros obrigatório + this.PARAM_ADDED++; + System.out.println(OnesMax.PARAM_ALELLO_SIZE+"+:"+this.alelloSize); continue; } //parametro 4 - if (param[0].equals(OnesMax.PARAM_BEST_FITNESS)) { + if (param[0].equals(OnesMax.PARAM_BEST_FITNESS) && !this.containsParam(OnesMax.PARAM_BEST_FITNESS)) { this.bestFitness = Integer.parseInt(param[1]); this.addParam(OnesMax.PARAM_BEST_FITNESS, this.bestFitness); + //registar parametros obrigatório + this.PARAM_ADDED++; + System.out.println(OnesMax.PARAM_ALELLO_SIZE+"+:"+this.bestFitness); continue; } } //Verificar se todos os parametros foram carregados - if (this.get_ACTUAL_NUM_PARAMS() == OnesMax.PARAM_COUNT) { + if (this.PARAM_ADDED == OnesMax.PARAM_REQUIRED) { //Ler dados (restantes Linhas) //Neste caso não existe a necessidade de carregar parametros + System.out.println("#### NO DATA ####"); + //Ler linha 2 para ver se começa com //LER TODOS os valores por LINHA (com um while) //Colocar todos os valores lidos numa estrutura de dados (Unica para cada problema) diff --git a/Cluster/PowerMaster/src/Module/Loader/Problem.java b/Cluster/PowerMaster/src/Module/Loader/Problem.java index d1f7675..f0c1594 100644 --- a/Cluster/PowerMaster/src/Module/Loader/Problem.java +++ b/Cluster/PowerMaster/src/Module/Loader/Problem.java @@ -63,6 +63,15 @@ public void addParam(String param, Object data) { this.ACTUAL_NUM_PARAMS++; } } + + /** + * Método que verifica se existe um parametro na estrutura + * @param param Chave que identifica o parametro a ser verificado + * @return True - Existe / False - Não existe + */ + public boolean containsParam(String param){ + return this.Parms.containsKey(param); + } /** * Método que retorna o número de parametros adicionados ao problema diff --git a/Cluster/PowerMaster/src/powermaster/PowerMaster.java b/Cluster/PowerMaster/src/powermaster/PowerMaster.java index d38c383..fc2db10 100644 --- a/Cluster/PowerMaster/src/powermaster/PowerMaster.java +++ b/Cluster/PowerMaster/src/powermaster/PowerMaster.java @@ -54,17 +54,19 @@ public static void main(String[] args) { //Exemplo de um loader para OnesMax - /*Problem p = null; + Problem p = null; try { - String resultado = WebFileDownloader.Download(new URL("File:C:\\Users\\Bruno\\Desktop\\load2.txt")); + //String resultado = WebFileDownloader.Download(new URL("File:C:\\Users\\Bruno\\Desktop\\load2.txt")); + String resultado = WebFileDownloader.Download(new URL("http://code.dei.estt.ipt.pt:81/loader/load3.txt")); + p = Loader.Load(resultado); } catch (IOException ex) { Logger.getLogger(PowerMaster.class.getName()).log(Level.SEVERE, null, ex); } - System.out.println(p.getParms(OnesMax.PARAM_ITERATIONS)); - Solver s = p.getNewSolver();*/ +// System.out.println(p.getParms(OnesMax.PARAM_ITERATIONS)); +// Solver s = p.getNewSolver(); } } From 7671d4f571f484fe39f5940f0cc318521738330e Mon Sep 17 00:00:00 2001 From: Bruno Oliveira Date: Wed, 18 Apr 2012 00:41:06 +0100 Subject: [PATCH 3/7] =?UTF-8?q?[PowerMaster]=20Implementa=C3=A7=C3=A3o=20d?= =?UTF-8?q?e=20um=20novo=20loader=20para=20o=20problema=20KnapSack.=20Est?= =?UTF-8?q?=C3=A1=20implementa=C3=A7=C3=A3o=20n=C3=A3o=20esta=20oficializa?= =?UTF-8?q?da,=20uma=20vez=20que=20pode=20e=20dever=C3=A1=20estar=20sujeit?= =?UTF-8?q?a=20a=20altera=C3=A7=C3=B5es.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A documentação deste loader ainda não foi feita devido a tratar-se de uma versão muito prematura. --- .../classes/Module/Loader/KnapSack.class | Bin 0 -> 4187 bytes .../PowerMaster/build/classes/TMP/Item.class | Bin 0 -> 1192 bytes .../build/classes/TMP/Mochila.class | Bin 0 -> 2376 bytes .../src/Module/Loader/KnapSack.java | 220 ++++++++++++++++++ Cluster/PowerMaster/src/TMP/Item.java | 83 +++++++ Cluster/PowerMaster/src/TMP/Mochila.java | 147 ++++++++++++ 6 files changed, 450 insertions(+) create mode 100644 Cluster/PowerMaster/build/classes/Module/Loader/KnapSack.class create mode 100644 Cluster/PowerMaster/build/classes/TMP/Item.class create mode 100644 Cluster/PowerMaster/build/classes/TMP/Mochila.class create mode 100644 Cluster/PowerMaster/src/Module/Loader/KnapSack.java create mode 100644 Cluster/PowerMaster/src/TMP/Item.java create mode 100644 Cluster/PowerMaster/src/TMP/Mochila.java diff --git a/Cluster/PowerMaster/build/classes/Module/Loader/KnapSack.class b/Cluster/PowerMaster/build/classes/Module/Loader/KnapSack.class new file mode 100644 index 0000000000000000000000000000000000000000..9c351dd8034070d93b0dea0ea12f0e974926e80e GIT binary patch literal 4187 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�W#kOW zT-4wjvWix1Sc4~;=$hwaytGCXXOmXZoZ2d^nw2?YHP4-M$x_b9&l?p>d}q^B+pt)+ zS;0${avN6OAU?JsKHJsck0$s}iu)ay8Ulw9X+{%E{E_!f7Gc)&LPw;D)gm^bsKK>F z#$H8`t!HaS?nTNdD@020J_?#6Ooy{ODy0MKX3g1Xi*_~An7BI|zd5CTpjt0=A=%>*obQ_eAyh8#3^c`Oc-W~-V$exQuuk)9#G6WgBXqErmc zmbNN6^PwfjsXH?F$VBSs#62BXa8<`8MEqFQk;9rFrjF0CuH!vK#2VA_zF3zL(Qv-O zEK8wlIxe7H$49tF*$?Md$A-MIWZA?E9ph516L}r?AtNJ!^`mc5wev=CJwCmnk1Em34?8GUN&SGviB$q762$lY)B6z~W&-1}eP}VyE?lvWUASYv!PDVc+kwC>kS0CcC++#TDSR;iW6Wjy*sq}FpPeT z;Vy16s?~0fD7xqo2x5fGTS$<%9FRM#~Wea#FqqVL_mf~BiIPhu!CrX zT^|t9D93AzsK(i8g2*NnqJFzq9Z|1?i2cbaqVV>TRRnIqBqPeYg15)P`-Z-c@3JTH zb{{x+yAK4Qpmq;AyD4smyA?T&;L=`GD@|@c17+&t^d!_P!u~?TrNs29%?(vww*#D7_9YwQ-p8C? zyGWW(xjMesE#815)FHK7CiX8>C40hsbygfSljOMfYvDI(!QX_p}K!Q z1$DatR878j4U&VWlfQ15Ji%M=-_EYn$=@|heuzg-vWR4h!!dUqeHv_WzNa`p{Es;D Mm6FqWthgrr1$Jhd&j0`b literal 0 HcmV?d00001 diff --git a/Cluster/PowerMaster/src/Module/Loader/KnapSack.java b/Cluster/PowerMaster/src/Module/Loader/KnapSack.java new file mode 100644 index 0000000..ed3d63e --- /dev/null +++ b/Cluster/PowerMaster/src/Module/Loader/KnapSack.java @@ -0,0 +1,220 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package Module.Loader; + +import TMP.Item; +import TMP.Mochila; +import genetics.Solver; +import java.util.ArrayList; + +/** + * + * @author Bruno Oliveira nº 11127 IPT-ESTT + */ +public class KnapSack extends Problem { + + public static final String ProblemName = "KnapSack"; + /** + * Tamanho da população + */ + private int popSize; + public static final String PARAM_POPULATION_SIZE = "pop"; + /** + * Tamanho do alelo + */ + private int alelloSize; + public static final String PARAM_ALELLO_SIZE = "alello"; + /** + * Número maximo de Iterações + */ + private int Iterations; + public static final String PARAM_ITERATIONS = "iterations"; + /** + * Condição de paragem. Melhor fitness individuo + */ + private int bestFitness; + public static final String PARAM_BEST_FITNESS = "best"; + /** + * Capacidade maxima que a mochila pode contem + */ + private int maxWeight; + public static final String PARAM_MAX_WEIGHT="weight"; + /** + * Valor maximo de peso que cada item pode ter + */ + private int maxItemWeight; + public static final String PARAM_MAX_ITEM_WEIGHT="max_item_weight"; + /** + * Valor maximo de valor que cada item pode ter + */ + private int maxItemValue; + public static final String PARAM_MAX_ITEM_VALUE="max_item_value"; + /** + * Número de items que existem no problema + */ + private int numItems; + public static final String PARAM_NUM_ITEMS="numItems"; + /** + * Número de parametros que são necessário para que o problema OneMax seja corrido + */ + private static int PARAM_REQUIRED = 5;//Número de parametros obrigatórios + private int PARAM_ADDED = 0;//Número de parametros adicionados obrigatórios + private static int PARAM_COUNT = 8;//Número de parametros existentes no problema + /** + * Referência para todas as linhas existentes no documento + */ + private String data[]; + /** + * Variável que indica o estado do loader + */ + private boolean loadStatus; + /** + * Estrutura de dados do problema + */ + private Mochila mochila; + /** + * Construtor do problema OnesMax + * @param data Informação do problema a ser carregado + */ + public KnapSack(String data[]) { + super(KnapSack.ProblemName, PARAM_COUNT); + this.data = data; + this.loadStatus = Load(); + } + + private boolean Load() { + System.out.println("----Params Data-----"); + //Ler a segunda linha que contem todos os parametros de arranque + String[] parmsData = data[1].split(";"); + //Percorrer todos os parametros + for (int i = 0; i < parmsData.length; i++) { + //Separar o identificado do valor (=) + String[] param = parmsData[i].split("="); + //Verificação de parametros + //parametro 1 (Obrigatório) + if (param[0].equals(KnapSack.PARAM_ITERATIONS) && !this.containsParam(KnapSack.PARAM_ITERATIONS)) { + //carregar o parametro para um dicionario de parametros + this.Iterations = Integer.parseInt(param[1]); + this.addParam(KnapSack.PARAM_ITERATIONS, this.Iterations); + //registar parametros obrigatório + this.PARAM_ADDED++; + System.out.println(KnapSack.PARAM_ITERATIONS+"+:"+this.PARAM_ITERATIONS); + continue; + } + //parametro 2 + if (param[0].equals(KnapSack.PARAM_POPULATION_SIZE) && !this.containsParam(KnapSack.PARAM_POPULATION_SIZE)) { + this.popSize = Integer.parseInt(param[1]); + this.addParam(KnapSack.PARAM_POPULATION_SIZE, this.popSize); + //registar parametros obrigatório + this.PARAM_ADDED++; + System.out.println(KnapSack.PARAM_POPULATION_SIZE+"+:"+this.popSize); + continue; + } + //parametro 3 + if (param[0].equals(KnapSack.PARAM_ALELLO_SIZE) && !this.containsParam(KnapSack.PARAM_ALELLO_SIZE)) { + this.alelloSize = Integer.parseInt(param[1]); + this.addParam(KnapSack.PARAM_ALELLO_SIZE, this.alelloSize); + //registar parametros obrigatório + this.PARAM_ADDED++; + System.out.println(KnapSack.PARAM_ALELLO_SIZE+"+:"+this.alelloSize); + continue; + } + //parametro 4 + if (param[0].equals(KnapSack.PARAM_BEST_FITNESS) && !this.containsParam(KnapSack.PARAM_BEST_FITNESS)) { + this.bestFitness = Integer.parseInt(param[1]); + this.addParam(KnapSack.PARAM_BEST_FITNESS, this.bestFitness); + //registar parametros obrigatório + this.PARAM_ADDED++; + System.out.println(KnapSack.PARAM_BEST_FITNESS+"+:"+this.bestFitness); + continue; + } + //parametro 5 + if (param[0].equals(KnapSack.PARAM_MAX_WEIGHT) && !this.containsParam(KnapSack.PARAM_MAX_WEIGHT)) { + this.maxWeight = Integer.parseInt(param[1]); + this.addParam(KnapSack.PARAM_MAX_WEIGHT, this.maxWeight); + //registar parametros obrigatório + this.PARAM_ADDED++; + System.out.println(KnapSack.PARAM_MAX_WEIGHT+"+:"+this.maxWeight); + continue; + } + //parametro 6 + if (param[0].equals(KnapSack.PARAM_MAX_ITEM_WEIGHT) && !this.containsParam(KnapSack.PARAM_MAX_ITEM_WEIGHT)) { + this.maxItemWeight = Integer.parseInt(param[1]); + this.addParam(KnapSack.PARAM_MAX_ITEM_WEIGHT, this.maxItemWeight); + System.out.println(KnapSack.PARAM_MAX_ITEM_WEIGHT+":"+this.maxItemWeight); + continue; + } + //parametro 7 + if (param[0].equals(KnapSack.PARAM_MAX_ITEM_VALUE) && !this.containsParam(KnapSack.PARAM_MAX_ITEM_VALUE)) { + this.maxItemValue = Integer.parseInt(param[1]); + this.addParam(KnapSack.PARAM_MAX_ITEM_VALUE, this.maxItemValue); + System.out.println(KnapSack.PARAM_MAX_ITEM_VALUE+":"+this.maxItemValue); + continue; + } + //parametro 8 + if (param[0].equals(KnapSack.PARAM_NUM_ITEMS) && !this.containsParam(KnapSack.PARAM_NUM_ITEMS)) { + this.numItems = Integer.parseInt(param[1]); + this.addParam(KnapSack.PARAM_NUM_ITEMS, this.numItems); + System.out.println(KnapSack.PARAM_NUM_ITEMS+":"+this.numItems); + continue; + } + } + //Verificar se todos os parametros foram carregados + if (this.PARAM_ADDED >= KnapSack.PARAM_REQUIRED) { + + //Verificar se na linha 2 do documento existe a tag de inicio de dados + if(this.data[2].equals("")){ + //mochila = new Mochila(this.maxWeight); + int line=3; + //ArrayList values = new ArrayList(); + System.out.println("-----DataStart-----"); + //Enquanto for diferente que a tag de terminação de ficheiro vai adicionado + while(!this.data[line].trim().equals("")){ + //Ler o novo item + String[] item = this.data[line].split(";"); + //adicionar o novo item + System.out.println(Integer.parseInt(item[0])+"-"+Integer.parseInt(item[1])); + //values.add(new Item(Integer.parseInt(item[0]), Integer.parseInt(item[1]))); + //passar para a proxima linha + line++; + } + System.out.println("------DataEnd------"); + return true; + } + return false; + } + return false; + } + + /** + * Método que retorna o NOVO solver com os parametros carregados por o ficheiro. + * @return + */ + @Override + public Solver getNewSolver() { + //return new Solver(popSize, alelloSize, new genetics.OnesMax(), Iterations, bestFitness, new GeneticEvents(PowerMaster.INTERVAL_PART)); + return null; + } + + public boolean getStatus() { + return this.loadStatus; + } + + public int getIterations() { + return Iterations; + } + + public int getAlelloSize() { + return alelloSize; + } + + public int getBestFitness() { + return bestFitness; + } + + public int getPopSize() { + return popSize; + } +} diff --git a/Cluster/PowerMaster/src/TMP/Item.java b/Cluster/PowerMaster/src/TMP/Item.java new file mode 100644 index 0000000..a48469a --- /dev/null +++ b/Cluster/PowerMaster/src/TMP/Item.java @@ -0,0 +1,83 @@ +package TMP; + +import genetics.Population; +import java.util.Random; + +/* ------------------------------------------------------------------------- + * ------------------------------------------------------------------------- + * I n s t i t u t o P o l i t e c n i c o d e T o m a r + * E s c o l a S u p e r i o r d e T e c n o l o g i a + * + * @author Ruben Felix + * ------------------------------------------------------------------------- + * Número de Aluno: 13691 + * E-mail: Ruben.Felix@gmail.com + * ------------------------------------------------------------------------- + * ------------------------------------------------------------------------- + */ + +/** + * Classe que guardará a informação referente a cada item da mochila. + * @author Ruben Felix + */ +public class Item { + + private int valor; + private int peso; + private Random random; + + /** + * Construtor por defeito da classe. São passados por parametro o peso máximo da mochila + * e o valor máximo de um item para que o item gerado aleatóriamente não ultrapasse esses + * valores. + * @param pesoMax - Peso máximo da mochila + * @param valorMax - Valor máximo que um item da mochila poderá ter + */ + public Item(int pesoMax, int valorMax){ + this.peso = Population.RANDOM_GENERATOR.nextInt(pesoMax);; + this.valor = Population.RANDOM_GENERATOR.nextInt(valorMax);; + } + + /** + * Construtor da classe onde não não precisos parametros para a instanciar + */ + public Item(){} + + /** + * Método que devolve o valor do item + * @return the valor - Valor do item + */ + public int getValor() { + return valor; + } + + /** + * Método que permite definir o valor do item + * @param valor - Valor do item a ser definido + */ + public void setValor(int valor) { + this.valor = valor; + } + + /** + * Método que devolve o peso do item + * @return the peso - Peso do item + */ + public int getPeso() { + return peso; + } + + /** + * Método que define o peso do item + * @param peso - Peso a ser definido para o item + */ + public void setPeso(int peso) { + this.peso = peso; + } + + @Override + public boolean equals(Object o){ + if((this.peso == ((Item)o).getPeso()) && (this.valor == ((Item)o).getValor())) return true; + else return false; + } +} diff --git a/Cluster/PowerMaster/src/TMP/Mochila.java b/Cluster/PowerMaster/src/TMP/Mochila.java new file mode 100644 index 0000000..11f9919 --- /dev/null +++ b/Cluster/PowerMaster/src/TMP/Mochila.java @@ -0,0 +1,147 @@ +package TMP; + +import genetics.Population; +import java.util.ArrayList; + +/* ------------------------------------------------------------------------- + * ------------------------------------------------------------------------- + * I n s t i t u t o P o l i t e c n i c o d e T o m a r + * E s c o l a S u p e r i o r d e T e c n o l o g i a + * + * @author Ruben Felix + * ------------------------------------------------------------------------- + * Número de Aluno: 13691 + * E-mail: Ruben.Felix@gmail.com + * ------------------------------------------------------------------------- + * ------------------------------------------------------------------------- + */ + +/** + * Classe que irá receber os parametrôs relativos ao saco para o problema da mochila. + * Recebe o peso máximo da mochila e poderá receber os items que a mesma poderá conter (peso e valor de cada um) + * ou então calcula os mesmos aleatóriamente. + * @author Ruben Felix + */ +public class Mochila { + //ArrayList que terá todos os items que a mochila poderá transportar + private ArrayList items; + //Peso máximo que a mochila poderá transportar + private int pesoMaximo; + //Peso máximo que cada item poderá conter + private int maxPesoItem; + //Valor máximo que cada item poderá ter + private int maxValorItem; + //Numero de items criados para a mochila + private int numItems; + //Variavel que fará o controlo das penalizações para os individuos no cálculo do seu fitness + private boolean penalizacao = true; + + /** + * Construtor da classe onde apenas é passado por parametro o peso máximo da mochila. + * Os items que a mesma poderá transportar bem como os seus pesos e valores serão calculados aleatóriamente + * @param pesoMochila - Peso máximo que a mochila poderá transportar + */ + public Mochila(int pesoMochila){ + this.pesoMaximo = pesoMochila; + //O máximo de peso por item nunca passará o valor máximo da capacidade da mochila + this.maxPesoItem = Population.RANDOM_GENERATOR.nextInt(pesoMochila - 1); + this.maxValorItem = Population.RANDOM_GENERATOR.nextInt(); + //Número de items criados aleatório + this.numItems = Population.RANDOM_GENERATOR.nextInt(); + items = new ArrayList(numItems); + criaItems(); + } + /** + * Construtor da classe onde são passado por parametros o peso máximo da mochila, o máximo de peso que cada item poderá conter, + * o valor máximo que cada item poderá ter e o número de items que serão criados e que a mochila poderá transportar. + * @param pesoMochila - Peso máximo de transporte da mochila + * @param maxPeso - Peso máximo que cada item poderá ter + * @param maxValor - Máximo valor que cada item poderá ter + * @param numItems - Número de items a serem criados para a mochila + */ + public Mochila(int pesoMochila, int maxPeso, int maxValor, int numItems){ + items = new ArrayList(numItems); + this.pesoMaximo = pesoMochila; + this.maxPesoItem = maxPeso; + this.maxValorItem = maxValor; + this.numItems = numItems; + criaItems(); + } + /** + * Construtor da classe onde são passados por parametros o peso máximo que a mochila poderá transportar e os arrys de inteiros correspondentes + * ao peso e valor de cada item. Os items serão criados de acordo com o peso e valor passados nos arrays. + * @param pesoMochila - Peso máximo que a mochila poderá transportar + * @param Peso - Array de inteiros referentes ao peso de cada item + * @param Valor - Array de inteiros referentes ao valor de cada item + */ + public Mochila(int pesoMochila, int[] Peso, int[] Valor){ + items = new ArrayList(Peso.length); + this.numItems = Peso.length; + this.pesoMaximo = pesoMochila; + for (int i = 0; i < numItems; i++) { + Item itemMochila = new Item(); + itemMochila.setPeso(Peso[i]); + itemMochila.setValor(Valor[i]); + items.add(itemMochila); + } + } + /** + * Método que cria os items aleatórios para a mochila, passando por parametro para cada + * item o valor máximo que o mesmo poderá ter, bem como o valor máximo do mesmo + */ + private void criaItems(){ + for (int i = 0; i < getNumItems(); i++) { + Item itemMochila = new Item(maxPesoItem, maxValorItem); + getItems().add(itemMochila); + } + } + + /** + * Método que devolve os items que a mochila poderá conter + * @return items - Items que a mochila poderá conter + */ + public ArrayList getItems() { + return items; + } + + /** + * Método que permite definir os items que a mochila poderá transportar + * @param items - Items a serem definidos para a mochila + */ + public void setItems(ArrayList items) { + this.items = items; + } + + /** + * Método que devolve o peso máximo que a mochila poderá transportar + * @return pesoMaximo - Peso máximo que pode ser transportado + */ + public int getPesoMaximo() { + return pesoMaximo; + } + + /** + * Método que devolve o número de items diferentes que a mochila contem + * @return the numItems - Número de items diferentes + */ + public int getNumItems() { + return numItems; + } + + /** + * Método que permite saber se a penalização está ou não activa no cálculo do fitness + * @return the penalizacao - true se a penalização estiver activa, false caso contrário + */ + public boolean isPenalizacao() { + return penalizacao; + } + + /** + * Método que permite definir se a penalização está ou não activa aquando do cálculo do fitness dos individuos + * @param penalizacao - true para activar, false para desactivar + */ + public void setPenalizacao(boolean penalizacao) { + this.penalizacao = penalizacao; + } + +} From f788f15ab3edc4b9101f29609e5b358b5335d0f3 Mon Sep 17 00:00:00 2001 From: kopdicht Date: Wed, 18 Apr 2012 11:06:22 +0100 Subject: [PATCH 4/7] teste solver --- Cluster/PowerMaster/nbproject/private/private.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cluster/PowerMaster/nbproject/private/private.properties b/Cluster/PowerMaster/nbproject/private/private.properties index 803326c..be20e48 100644 --- a/Cluster/PowerMaster/nbproject/private/private.properties +++ b/Cluster/PowerMaster/nbproject/private/private.properties @@ -3,4 +3,4 @@ do.depend=false do.jar=true javac.debug=true javadoc.preview=true -user.properties.file=C:\\Users\\Bruno\\.netbeans\\7.0\\build.properties +user.properties.file=C:\\Users\\KopDicht\\.netbeans\\7.1\\build.properties From f87a9e0de24a6c03c4855212e58d910d176803f8 Mon Sep 17 00:00:00 2001 From: Migork Date: Wed, 18 Apr 2012 11:33:34 +0100 Subject: [PATCH 5/7] =?UTF-8?q?Com=20verificacao=20provis=C3=B3ria?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PowerMaster/build/built-jar.properties | 4 ++-- .../Administration/AdministrationClient.class | Bin 5736 -> 5663 bytes .../Module/Administration/CommandThread.class | Bin 1337 -> 1264 bytes .../Module/Administration/GraphicThread.class | Bin 1023 -> 950 bytes .../classes/Module/Loader/KnapSack.class | Bin 4187 -> 4114 bytes .../build/classes/Module/Loader/Loader.class | Bin 1768 -> 1947 bytes .../build/classes/Module/Loader/OnesMax.class | Bin 3281 -> 3423 bytes .../Module/WebHTTP/webServerSocket.class | Bin 2805 -> 2732 bytes .../build/classes/NodeJS/NodeEmiter.class | Bin 2107 -> 1974 bytes .../PowerMaster/build/classes/TMP/Item.class | Bin 1192 -> 1119 bytes .../classes/powermaster/GeneticEvents.class | Bin 2414 -> 2317 bytes .../classes/powermaster/PowerMaster.class | Bin 1456 -> 1456 bytes Cluster/PowerMaster/dist/PowerMaster.jar | Bin 57719 -> 75319 bytes .../nbproject/private/private.properties | 2 +- .../PowerMaster/src/Module/Loader/Loader.java | 17 +++++++++++++---- .../src/Module/Loader/OnesMax.java | 6 ++++++ .../src/powermaster/PowerMaster.java | 2 +- 17 files changed, 23 insertions(+), 8 deletions(-) diff --git a/Cluster/PowerMaster/build/built-jar.properties b/Cluster/PowerMaster/build/built-jar.properties index ea0a5ac..f9648f6 100644 --- a/Cluster/PowerMaster/build/built-jar.properties +++ b/Cluster/PowerMaster/build/built-jar.properties @@ -1,4 +1,4 @@ -#Thu, 12 Apr 2012 18:00:35 +0100 +#Wed, 18 Apr 2012 11:32:43 +0100 -C\:\\Users\\Bruno\\Documents\\NetBeansProjects\\PowerMaster= +C\:\\Users\\Miranda\\Desktop\\PowerMaster= diff --git a/Cluster/PowerMaster/build/classes/Module/Administration/AdministrationClient.class b/Cluster/PowerMaster/build/classes/Module/Administration/AdministrationClient.class index 364b6a62aa12afc05bbee5b0c23707aaae02fb35..f1a23d93a05ed51b511e68bb38793061ea8de38a 100644 GIT binary patch delta 857 zcmW+!S4>nv6g>xanY-gCC<+!_*WOsME7%pqhFwwPkI{_*MGQ+~{4gZO#7{$BjPc7v zuwX^jie3Ej!`OT84NB%{J59Md?C z6ONt~oN|%Vj-1hrES^=U6`Yf@wV_hi>Z0J1Mj9>)uDJ86;F{pN#tqzbaLaYS?ck2! zuEITy0j|w`JP!Kwq2Ib? zf>3D+Dun?zU7bb_wXl(uRMm>fcE7P#ac!7ftFXyV zV4eSeo_C7Py;;73q-4VuOfiTu)j><|g0HQ#Vrxg*cn!XZ!8F6R3@WxW46(gp2g8o+ zWZ0Qqh*Ymkr*<~%%5I9?4SO(X*pul5vkb%RGe>pOGg=Oz;dUJCVb(-NFgD)k;0| zVU6W-l68}73nYX~7Dksw4W~HMDldQe;-Zz7PUSQ!uCz42*l;>$*vDHCT@@|yYE?@5 zOwO{!RzySLh~2R*b++7aHr7}}OY@g4Q=DU%$GL{{I3(tmR*H{dXeJ}80)ixlEoJ~gMUkHoUZo}^GuFHz6dzWq z{D3O{s8@XWMHQP1$~LTFQ9!FKz7Pal*#uc+i^`5@H$SKQoZGkWxqW+e&E=YoBab@| z02smf8ZFomLn%H{_*CIDjnA=BBaAOJO7NwNY*N_lug`&cCjUCvju?xFn z*n>{D+pDloqbD}Fg#8)^@Rg%q3l2KvkRyk6#Nsz<<%)QR;HcnxSL&GHxJDIz5S(!9 zNx><>j~YMWX9vHy>c2YpO>kP_jK*kJ<}A($&O7~g!3DuZ!5@N4g3E#{f~yLD3a)9? z;kv>NjRx0Q18yqZilL(mf4S7Z1^)(|c7EzU3Sn!I+e zwJw{@71D)FF6$G$np)EB>11m<+nk))?&b5Dh2Hp}Pq?M5+^`S(8u;wzpdwfq?k|P!)H0fa44S(DkD|Z!}z@73x+j}8zxvwaGYV1FFH2d za0KJQyvXvgBN?|Ldu9|z6D7@F!Eg*;B0>r4FtQ+*_k6{d4ad6t@h<-rPB5GpR78jM zc-7zpC)o>_;Ci&8<28d-$hueq5l*yuZG@z}wp@PcIBR~g;S^3) zoMt$kjf$@uHZkQK&akyp_3@-NHj^pqCRI;F6NR+D$TytjOslz>?84j0Z`$F{_m}#GV43P&^A_K>mwn*J6W){AgbuAWoQsdFp+%Y2R>gM=-{m~R_c)>W co$99;DxNPLrOMaXuN4Kc)~>`liy^H4A5}BMUH||9 diff --git a/Cluster/PowerMaster/build/classes/Module/Administration/CommandThread.class b/Cluster/PowerMaster/build/classes/Module/Administration/CommandThread.class index 170d5d6a1d4f4fb9054bc6864fbe5ef6062b608a..97cdd74155e45a05a45680cb1bae18faee3a9840 100644 GIT binary patch delta 164 zcmWm8OAf(60D$3tCXGqQBv@N|m!cl^rqpB6BRPf4DJ-Qc77pMhc1|F4^XFUscl~jb z*Z1)R2AnhnYKpo>(s0okz`$k5DAQOG-V#p;-=-qYPYgv$ vhAA^EWZ=vV3meL)yfmy>D>jCRtzu`0*&7ZV(~EoyA?(??x`N7oN>cp+t*RGU delta 244 zcmWlUIZnes003t#l*OwRmqL{?oCa(XZUQDDoJu4L_<(^`6cnu`$M_?D1tp?_f(P&u zI$9cp-ONloKkmEgef@oW0!^+J(=1C?6b`E{3a_j+$-1J#MhRaMNH!G>nu;y9U3Sn<%yFbS&VNO_7HUptOFEiUx{@=^ITxBsuHNpPZy}sK UoOqe97h4qs3xx%X1s#_D0RsUpIRF3v diff --git a/Cluster/PowerMaster/build/classes/Module/Administration/GraphicThread.class b/Cluster/PowerMaster/build/classes/Module/Administration/GraphicThread.class index bcb52c9d627d60bef854515b304fec321df5e05c..9283ba2691081cbdcfbf5d35689f0521564b38a6 100644 GIT binary patch delta 158 zcmey*zKz}H)W2Q(7#J9g7)-brco>w}8I-vgm>5(z8Mql#K`b?P26Zk5HU-6bxXWFZ_5E1iDEL5* zZ%|ZJzz2%>0u>cSjj^?|r?#*ro{5Fc|9zP=GnwT4svf8=eP5iJ1seD!6q2l=J7O(G zwVfKfA|Jce_9WTMK4E{v0S*d>B1#+p`Q!m@qCp2zeOt$WYN*h_`3cxt3HeZCJLcBQ?3$Q|9J^{;J287Md-sv{|;Y&9a#- zArqD-JauvTiVc&NXG|H)x{&9V7rgY|Y=|<&bRkvD#GT!iSG=}NGZXU0@|Jg&^}2PI z_m&TQbU(^hHN*z{f2Ow4GRG&&XXXt-KF(X3@Ou+p|2=+jD-%D1ugp*VNlc3|ZlZE^ qU}$&0E1QB09jzVZ&_sn@NcyNa delta 597 zcmYL{$xjqP6vltefc)A~t5@GwuMRbk{GF^$&rD1LEldmLdX~}au$+pa zt)^^qblGlbM?E{)CG2+CLsi)8u#Y}rzi`0dLE}8+(9dCGKVs;p=^e8igm14tfkB5 znPPIGM5+&dyYfGog6HTbp-^ zN!}~k&7==}RD9yI#lox`4c0DdDO#xi!Nn=X7rrXKF=Y`e1O-Ja`tmxBvxncKKeaz& zKbRUFs~Z=qCMw34CN}GzFb9i_R*P&j9B++nAs79Pr($`n4T)6D*SbM#pmj)VfnxM4 LvBVB_riRi#Bq@_d diff --git a/Cluster/PowerMaster/build/classes/Module/Loader/Loader.class b/Cluster/PowerMaster/build/classes/Module/Loader/Loader.class index 4420f3a4e44973719124415acd626bb93ae8a2a8..ecbb66e1d6f3accc9f860e824375b064015dba52 100644 GIT binary patch delta 968 zcmZvb+fNfg6vltk7Is+|FBMQKU=dJg3svw6-W3#Wy^HtD3aea7s|ywN!6v@&Xs}P{ zgYj7(P+~P2_0i~G;=iC#OcgY;K$h{GlcizG)3j#@0`m=4D+PHRzA5l1|2}Xr*C@9M3RCwl z$R}8AlDJN?xQyZ!Wsx_im&J0c#PZ@~C2fN35`hR&$tsA^E;F)NJ-{zNe2D~oL4Se3 z;YhHoK>0kzD-3^U&@7NEPecV(6tHGVM&GiifIZ8;S5yWU7g+M1rRRkFhGofEf#58S zv1p+4Ez1j3#iC^;RIS-H!j8>pv_g;;UHL!J+M;NvB)Te@6V7v8C$sYa delta 772 zcmYk4OHUI~7>1wew4LcNwWSCJy$Z*hT9rN&fAnv9!Fm`s{nG`M6D zRa{hYQH4YmGG%hvZ!m3eWo_%%+Ka}*JFRJ^M|`D4!4#~XCYm+0pauq4ZLTpRQ_CjBbrFLa{)q=}GX2Qr1~(06ZEkV9knpq(Nb?=$G%AzX z`CP{B-m&c#e6_?kF>m8?*WjMbeHLsMS+dEnw6)>c)Cym{PrZ73N2)OGo2_V&#MI+K zQ(Ka{xA5Ipm2Z(Xzs#VFR;hML`)FgI%mVDEU9q68qT`jdx1AABL@(kU?Tq+}_{U;; zZ^RIhjEgXf1lAdTj}<8^Vt*z$6Z^ofai>UVon|NQ?fpo&NVyaDiOP$ND7ZpkXH%)& zqLfqRKc}jaQ&c%sE2o8Q&pZGX* z2%`(_2p1P6k%{h-G0aQhdnC{ro^wD{%p=Xn$GzL63=WpwzMmMs88YY>A@Cs~JRJT5 Do6vpD diff --git a/Cluster/PowerMaster/build/classes/Module/Loader/OnesMax.class b/Cluster/PowerMaster/build/classes/Module/Loader/OnesMax.class index d6208326b938613ee40d8db5068871adcfd1e762..0924bf1f348b96e84f215c9c77eee28f619c1d43 100644 GIT binary patch literal 3423 zcmai0ZFdxB8NQy~O=dHlq+~;&kx)`nO0sF#8tNN?;wD+@*3Isc4S`T>nCuQ==wxTR zI~$;_QnYGIwN|i2(AHXCP>b49vT)>_{s2FDjz7ZBepFA<>zUallXa~eGV?rF?)$pm z@5!I<{^?@?W2l9((1B4LSFsDaJT1ycUge`8PevFgR4n0S7^aF-cvgjlD!z_ygmF$PycEWH34Sw-Z^`@1VSGD` z@5tkK!+1r(s|qftcm!t^yw-v5;rl9v@Vbf}_<zua8v>Ek zDSbtcS$c6PmUGHxacNwjbJ8wW9KGnw=~k6OO35ze%;$L$NrB#Md?r4dEiXq;GyJ9VoFBiIuoCo^4%sghtjhGp@Qz{0zFT+icz&} zy^wQsr%GGms6hK(vuHX`2y7Z^p)fp0zDc{l9NeEWi$=P-yl9kXb!Ji~(a!7EoL)BN zy$*()lP0M*r>5;f)iPo!+B3?r45ORY&oIj&i3kLThH1U6q?h$&da+`ZlSPMK`<$Mz zZOhP$)DfmY2St}FQ*LaXj3EE)v|e(JD%h{!l7O~kIBDZ_&bG)#s-fZ3l2J4qGhc~$ zAgMYi)QG>6XMb_%6ALZTxUZ&NyifQ`q!P$BS|hwSZ`CtMb*4+r+0}C1IAF>YY4x~w z$#!FyyfOC zCd_*srQxS|Tf;l}nSysU{2cFT_=2ST1%9dFSNOGpYZ`uo-?AjlEk98;E!IXla*VF7 zk&f)q@H@P(;W~b=;13%9h!0pXj)TU9uv?bRE_p&9GAM5VG<;6}D(u}x_OQ~ju{C^2 z!rg=XH;~Q@OvPv81M&&KJpTI zQwFiBVV|_s+p_ik3$HH(`nHysddtaa@HJw6LnLK+H>?SJFtbr9StfgTXA7O-7DFZQ zpg*WNqimiq^Lkc}g5i|y3Uf-(orj^8Q|a?JZ0pa zaXEXPdAsQ7X0hTLZj!5qEaiOZp-aY+oUJg2v0}I$uA^_Lag3A|xkWQ4WG<7#K9B1p zoW-zSDAbL&%AHTA;dWC2&ax}GJ%VF@RAO*@w5Lg$c|4Sktb+VxV&D01bD`V-Oc z)Mvzl>Qf=zb8HV1*vMVdTzE?KxY&A&^1C7JTgCs8QpV7~J|oSBH~ZToEBk-i?SIxR zndX;cE}mN82SDz65|Qt*p=5Gx*CmSubHyyM`s0MFj%ih5-pJIq;P4zC; zLky2W;Iq61_zuVs=eZA$`|vHqIo~e+c^|%wIQNZDnikbRkTH;x6r-{cxI5I;eqI3srf(+eKmaM8vZRgw=_6;SjWj! zY$0d=r*LkSoD`|y!3O91l5<;wlZSPj1JTGfDhzxI=R+RnfRFRAU^KFw zoP+HhK3Az*<6rZ5Pmx7spA;tSc+Fk7F7 z9H&N5Y4{Fy%*z7Hn%%)8Y^0q$cJpWO4u@y3)tgnna(A=x#g@uPS}G4TE5FrJdA_CcV6*bo zmdZz4D)%=lztciF%;q^(k9miiE^aO5BLw*Ks9Z+E&A93=t|+_UQ6gV+lljbl077a5 A8~^|S literal 3281 zcmah~TX!2*75U@&-?+N3lzRHBh_OeikEz5pFMkj zXP<9h<}V-o@jU=j_>GE(doh7WG~A6ZOKC|i=QJ*cl$KSjXsEzcabCr$6fek^mWDMv zDlKd&Ri)19g^QYkiyHQzuA(8Io?Mz5)^SP2W76TWipQn$2^C+F`zKX=RmD?M{F;id zD|lMLH#FRix`HdcxQcITxD(H4ID}`V(KQ9nDR^FBXR+=s+h#RyR84_+Zp~OXQnul& zrb=Gja#p7W`et0G;Tev%VAxF>DK)oNvL2@-vI6^x>G|~BQn64xl}neih5S+}dnO~G z8MbNLZeX}OFiPh#xm=-bkoC;E;aLP1*cBLL%b9r}q{PUU&4zc<@*J~4gLq(YB2y|a zoy?Z=nG#L<1Lb_?p;OuU%&fePA5407Hnf{5oXVF4Vim(P1ooWmc1O*2jY`Qgye7{Q zX9RW}vmDF2PhfDoi$h|8cr$K=91P?v$ILgY%Vxc7kV#3RyJFZ2M%|M8mNMpDun4_B zH|JKGwwcQDJhPrE@OE>?V`ModH3HG`1W)g&8Fiz|NGyR~%GJiKAABD}TzPcPsQIW0 zjtl6krk6J_m0Ww>tn+%~iQKB`n4Y!LNCirQA9CxfhpAjP4X1IqHJa9{bbbJm+bli^@bR3n^F&x+N0KTB(K75`;O)L18j&I{d%49{e zJ}fRBFX1~nzKicEcv;8y@dF*7mJmP0D>`1qYYKj(R5J}FRI*V%)UAYcOPG>UMQ9#+x^4w&e-j)x{^#rI$#Ld9i8O?2dh5 zm%{Rzx#CUBcIaDi9nY|wMlooMZFa42q}}eVXtIuHuF8f`***=E+Yb1)8_QQ&mxHZv zUfwgC2;H;=!X8kKN~Lvpw|j+r+F^H)bD7y;Lr2}F3?#6(+*FY>md#Z+jVe#sVbp4- z!znNsCZZi_=#W6ws!kc6=LRZ)y&M2rG_-s<7ku6J6XhtE=iAQz;D&b?-p)wp!TZCt zSCn-)=hq=~md$gRFQjuzoXK+h5{P*BjAyf311jrOtaYox>`znO^enrP3QD&%x)KW* z;_`ufj? z^rO(^(4jseM-HEwY#x8l>Ek~+d-&{SEcYYL^#ph45Tyq&oQ#Vbh-@O7jNU{nIdKy` z$>b(>+=TLb-+PAZAbPkSB}S4roaQI}7;Yo_tpCo(K?WzeBchyo{=GT)g3}@{Pm2NK zTJjzA#HQlv26}VRkonyo|5Wj^zi<{UR-?xFmUi(h_?+`Zg04g-q?!80DIV&fQ)nafC@bf-f@3 z4^o=LJo0c*z(q<|QNoKT^E0%7w{RMN!k6%8oW)=9F#d)|@OLcXeVh}6FvJilViKmf z7w5$+E{HrVv4%BK#f)gc5l^BnuHv$I22c29lw^U7h$6Bqo+$c-$rz5v5*624rKQv7 zLBF(ejCdHzztFE>PW%(geEb6?{@$0ro;@tPJY$adrCwr72zn%L;n1SYrA*H)+|HW0 zgW>@H$8O=y#T&S56XTmm{Eo&EpPU`O;}t(ZJpgG1Q>2Z2`w*Xk)U+y{UC&QDbv;B? zB+Fr-XG1_eEg(To%XE=V8Fn7%bbg_$^Qo@R2Rof#>gv4E)p@Mb`Q@(8r@J~I=yZOi pi?hnQS!~_;4xcWLC*==_@INW1j_}#nWcra{VN6hS#wYXae*h2r)yx0@ diff --git a/Cluster/PowerMaster/build/classes/Module/WebHTTP/webServerSocket.class b/Cluster/PowerMaster/build/classes/Module/WebHTTP/webServerSocket.class index 0b4cd6c2c5444ba965d83d8097cc479238580dd8..a7816f0a0edb23af2e060ec14df02e288d3a2bf5 100644 GIT binary patch delta 375 zcmWlVw@!jl07lOR^j@xaGbUivI5=2HG)`(_*)@v27i@?P8+PnnZ2b0;xa-E|;B0&i zpTX70znqhA`jYdT@t(2y{rB++l=3X`D;hO|CQSj&nig7Zw7JQr-AxCbnl8FEJ@iWY zG->oJDm4QH6jh39MU7^VA<3{Noe{;T?Vyb@MMyEOn6THRWJ;6eV>(H~iW$YMV$RJx z3yO$jQL&_0*5t7wS(U6^y}gR{M4h-0qR;X=TS}q^9~+WQ!xr0y9d-?c6iN0B`y5CP z4M%KCjtwV7trw>!{gjyG%y76nWX1%>AD)R!1{Ol$>55!~#kGx_xT`qz zmR*6zYIJzCeR^lOCuX&~j$99hN9)HG6i6u#t&rkg-9ow=G}MsZb9Q(Vhd zD2X(i2bfLCbw#YGD;fowB#Il7n~GbC+nRpvNbXARE&uo~?sv*!Neop4+oL!b4E@H0 z?}hcjv8WkO`ei@yYsbPcYIu!m6xIbjp0Xf$W_Zq=WYO?~maXK9-7jfNmJF|0mb^At-q^+5*1opDj6}1| z+WPOoZHBkJ%kbX*$(8aSm=_f7s8h6?TsQyG@QJqVa~IsthA(!-4aC>Z#;zbIoKB*) cI6ID~P4a1q;nWTz>m21k>MT%y+GjuFKaewD#Q*>R diff --git a/Cluster/PowerMaster/build/classes/NodeJS/NodeEmiter.class b/Cluster/PowerMaster/build/classes/NodeJS/NodeEmiter.class index bc1af68a11a103b3ca542550e49a9d4e43937ca7..f9014c53a30b1cf68e8ec045f00800c3bc10a085 100644 GIT binary patch delta 347 zcmZ8d%Syvg5IvKW+%|?LV43%)G0w~}xj(HV2iVO=XWY`HLu^7jaAj^WR zFs!Obz!qVRVO=O23?+s#!)DvL)3yk)@`cwT6m#v5q3A8v6D8@y*d}OUQ1Y7fFbK}- ztKvjH!f)i4L(@2qpD_pv8VY>A# zNL*;*1NbVwgK=tH2#JfC$-Up1Gn4xgd5dZvU$5@~GPv|(Gl&Rs6k9=fkq;n@Z9jJ0 zV%IGS6njAgkaxFzilUnwP#jVmQ5-*M48rrHG+`Ei>6(- zIA?W{%T~LQ=B!g=2Dj5y>$Y8ICDvuF0_Rr8=$IC_3F4)u(KVEo!5fO+W$m_k#d7^S z@=VC7Gw#jhN+^d=fld$;LZxY2T+ym}MXxo*Ga;PeoFMu~^4q^awg2etd5FgeOPSb= z7=Z+WS#c7~Ar7~naF`Sy%95BDSx-{s1xyRp-8>FgHTmS$7 diff --git a/Cluster/PowerMaster/build/classes/TMP/Item.class b/Cluster/PowerMaster/build/classes/TMP/Item.class index a0eecf33bfb27a84b03e975fee000462003b6bf0..56b842711e8da17a3582832298fd984d41a9db0b 100644 GIT binary patch delta 100 zcmZ3%d7s1h)W2Q(7#J9g7|ggBI2qJ98PpjxxEM4Uv^W{q7_>oz4m*P`7m(Hi5&G;5 w1{;l)7$;9+l;bnx0qWypXE5erFkvv=ypJ)5iIH)#HcJL4BZCUiP$mXd08aM~r2qf` delta 199 zcmcc5v4Ye1)W2Q(7#J9g7%aFLI2klJ88jKRxEQn_}Cdtc^J$X j%r`eO<}fibO@7CmA*up&DH{VLgDQ|_WKaW=ObqG(HBKw< diff --git a/Cluster/PowerMaster/build/classes/powermaster/GeneticEvents.class b/Cluster/PowerMaster/build/classes/powermaster/GeneticEvents.class index 6f604cf390dcbad46dcc29c8de38dc9d84b8b04a..e394b7fc81433ac1eb39ce4748154ab0d854bc95 100644 GIT binary patch delta 382 zcmW-dM@s`y6otPxLEoFAUe=z5YJG03j|c{6tK=)VtDP(nyn{*`kG3lQ!BF9g0px zmqj-{l3q!lMLz=;gAADr6LsB)MU1#2AsMwOAfgy^=eR2qu1qSX6iLOj%wa|{dw2aI zdhJK?+&-t7XF-q`-#yw|Ne4;-@kDFPIkl)+Vp+1HS!GS24l)brO!{y~ASwh#GAT)E z*4eNhjBwGWW{Yjfj%JrV$-XAdfhNPDx>SB>{xqcZIZHlXIDem2}ISq2-!i?U+8k;pEEJO N-4_2?trIk;`vViSLBIe2 delta 490 zcmZ9IyH6BR7{!108u#9r+%@6Rl59eOh3tx=s35xH17#It7Zn#D16-HIbp~f=#|J8f zwwjpvQz%R*`~&Q4w6-vIwiYJFJEb<~oP6K;9yxFOfA;Tu`m^^DIKqz45K|sSPUkS~ zafY*+s?RxQJkE1Lb5V0iGwXAiD~dTq&F3oDeCAp3xXxm(>OKvYG&dACeFmA*+{$@5 zhub+cH7lAsn!9R0_Z0Wvzxg^nCm4?6RynlEstv+!xgPc6HCwZ(?Nq}sN`j;vg!cDR|8Y2Oa0iO}jm1r#<8^wiJ~<{ylxlH6@dO0XjBZT>t<8 diff --git a/Cluster/PowerMaster/build/classes/powermaster/PowerMaster.class b/Cluster/PowerMaster/build/classes/powermaster/PowerMaster.class index f3d0ca9219562fd9c3803c635717545b03a2fb19..401bb465430801b76a99d550104ed7d312688b4b 100644 GIT binary patch delta 14 VcmdnMy@7iJ3lpQsW>%)v%m5%e1IhpZ delta 14 VcmdnMy@7iJ3lpR9W>%)v%m5%Y1IYjY diff --git a/Cluster/PowerMaster/dist/PowerMaster.jar b/Cluster/PowerMaster/dist/PowerMaster.jar index 348d873f1c58941d7d375a846778c9c2de849236..9cfcecc55eafdff28ff9c92b7dbfa4b985e872cd 100644 GIT binary patch delta 16430 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 Date: Wed, 18 Apr 2012 11:37:55 +0100 Subject: [PATCH 6/7] Verifica Parametros do ficheiro --- .../powermaster/VerificaParametros.class | Bin 0 -> 1247 bytes .../src/powermaster/VerificaParametros.java | 33 ++++++++++++++++++ 2 files changed, 33 insertions(+) create mode 100644 Cluster/PowerMaster/build/classes/powermaster/VerificaParametros.class create mode 100644 Cluster/PowerMaster/src/powermaster/VerificaParametros.java diff --git a/Cluster/PowerMaster/build/classes/powermaster/VerificaParametros.class b/Cluster/PowerMaster/build/classes/powermaster/VerificaParametros.class new file mode 100644 index 0000000000000000000000000000000000000000..c9710d19159e5513f1257e2b599c448932449da6 GIT binary patch literal 1247 zcmaJ=$x;(h6g>|TI)si4VG`P_4FfB*gE2*5a&!f3^C7}pRFV+08e$!1)~sD`mH znlKzf%71T!aMORseK8TnE!@^{N5fr#rfJhQy$1q~@sXTBAnoLpKx@Xd)pDt@rrhUp z&7!3v;~3J)N!RrCsxjbgn%e@gOwoC(+=ATpl$**a*IYLZxhh>*P@d~-Pq7WHOSUHv zkH5}r$sL)pq`i^Kdah}2OpVl;W*x^;(q@ie+pap#{5wMxJ<}=sO!}7uf|hA-N`dGZ zRXLNZ2rpV!qgFkV^`!CUnJkuP(QuF4352sw$u-o1>CfDAdXzCAyN))rGegIHOlp|Y zF^w7asm=8ds)h$T9^w&;)x4FdXG^A)S1xBvlPQDL#guJ0w&%*cGa1wI7_$OeOu24V zP3xG$yoLoGPp~L3_o`7MD%Vp7Ap4%zQQ%IT5@A&LYC5S^UVz6GB@6zY$YN31d4bWhDxPXm z<&cRd;w!_RII9z!Gd|=w6_Y?`ynf~?`r~z;L`bfRK3>b_2xlS8VF>5=P5QqEkN~t( zc2Jw(EBFQz2N0ji?kHuLVL$`{rgie4UI{`Mx~Vmz2fft-KNu6BZME?b4Vl2qK;q~l z<`M(rhiH7Ui`4RG1izx`Z#sX7?gVZy&2@JkWkd o__M9z0tWd8@szPKb{nGBj=(Qy8ZL literal 0 HcmV?d00001 diff --git a/Cluster/PowerMaster/src/powermaster/VerificaParametros.java b/Cluster/PowerMaster/src/powermaster/VerificaParametros.java new file mode 100644 index 0000000..321a890 --- /dev/null +++ b/Cluster/PowerMaster/src/powermaster/VerificaParametros.java @@ -0,0 +1,33 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package powermaster; + +/** + * + * @author Miranda + */ +public class VerificaParametros { + + public VerificaParametros() { + } + + + //VERIFICA SE OS PARAMETROS SAO NUMEROS INTEIROS + public static Boolean VerInt(String[] linha) { + Boolean res = false; + for (int i = 1; i < linha.length; i++) { + try { + Integer.parseInt(linha[i]); + } catch (Exception e) { + System.out.println("Caracter encontrado: " + linha[i] + " erro: " + e); + res = false; + return res; + } + res = true; + } + + return res; + } +} From 06f9da3f106e4b86b419a2a74cff156d35a16e48 Mon Sep 17 00:00:00 2001 From: kopdicht Date: Wed, 18 Apr 2012 18:20:25 +0100 Subject: [PATCH 7/7] =?UTF-8?q?Nova=20Vers=C3=A3o=20Verificador?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../build/classes/.netbeans_update_resources | 0 .../classes/Module/Loader/KnapSack.class | Bin 4114 -> 4187 bytes .../build/classes/Module/Loader/OnesMax.class | Bin 3423 -> 3469 bytes .../build/classes/Module/Loader/Problem.class | Bin 1862 -> 2782 bytes Cluster/PowerMaster/nbproject/build-impl.xml | 17 +++++++-- .../PowerMaster/nbproject/genfiles.properties | 4 +- .../nbproject/private/private.properties | 2 +- .../src/Module/Loader/OnesMax.java | 6 ++- .../src/Module/Loader/Problem.java | 35 +++++++++++++++--- 9 files changed, 50 insertions(+), 14 deletions(-) create mode 100644 Cluster/PowerMaster/build/classes/.netbeans_update_resources diff --git a/Cluster/PowerMaster/build/classes/.netbeans_update_resources b/Cluster/PowerMaster/build/classes/.netbeans_update_resources new file mode 100644 index 0000000..e69de29 diff --git a/Cluster/PowerMaster/build/classes/Module/Loader/KnapSack.class b/Cluster/PowerMaster/build/classes/Module/Loader/KnapSack.class index 223fba1bd63fcd496428b9888333a61f6fb0d5aa..9c351dd8034070d93b0dea0ea12f0e974926e80e 100644 GIT binary patch delta 597 zcmYL{$xjqP6vltefc)A~t5@GwuMRbk{GF^$&rD1LEldmLdX~}au$+pa zt)^^qblGlbM?E{)CG2+CLsi)8u#Y}rzi`0dLE}8+(9dCGKVs;p=^e8igm14tfkB5 znPPIGM5+&dyYfGog6HTbp-^ zN!}~k&7==}RD9yI#lox`4c0DdDO#xi!Nn=X7rrXKF=Y`e1O-Ja`tmxBvxncKKeaz& zKbRUFs~Z=qCMw34CN}GzFb9i_R*P&j9B++nAs79Pr($`n4T)6D*SbM#pmj)VfnxM4 LvBVB_riRi#Bq@_d delta 501 zcmYL`J4{qj5Qe|QWpigQCumG8OvI2-QV_7vAQUEc8Uk8tvL>6bxXWFZ_5E1iDEL5* zZ%|ZJzz2%>0u>cSjj^?|r?#*ro{5Fc|9zP=GnwT4svf8=eP5iJ1seD!6q2l=J7O(G zwVfKfA|Jce_9WTMK4E{v0S*d>B1#+p`Q!m@qCp2zeOt$WYN*h_`3cxt3HeZCJLcBQ?3$Q|9J^{;J287Md-sv{|;Y&9a#- zArqD-JauvTiVc&NXG|H)x{&9V7rgY|Y=|<&bRkvD#GT!iSG=}NGZXU0@|Jg&^}2PI z_m&TQbU(^hHN*z{f2Ow4GRG&&XXXt-KF(X3@Ou+p|2=+jD-%D1ugp*VNlc3|ZlZE^ qU}$&0E1QB09jzVZ&_sn@NcyNa diff --git a/Cluster/PowerMaster/build/classes/Module/Loader/OnesMax.class b/Cluster/PowerMaster/build/classes/Module/Loader/OnesMax.class index 0924bf1f348b96e84f215c9c77eee28f619c1d43..fb2c64fa05b56f755312b7c4a293d98442573125 100644 GIT binary patch delta 787 zcmZvZ%}-N76vfYdkNW0~4-~KqP+~$w5mPYWN<}0QP^_TVFHn&JPb}gqlu{Ihih%gR zmkyN{T^KjU1Q!Iu!UcbT3wJJDnfMR5Rs(USbm4+za_^ZlzdL7=`H?@hGxlZu^D2OH ztS|&jc+tjDigu+sRI#}%HoZnu4Q)b6f!oKPeX z35J|L!VX_oAQ~v^4mh1Oo>TR4ge3&&7p;S}mE97i>Qju?1lVIB#o zD=j3kU|>$f^(Jar{-ry#JnV|;1+SsQ1yHi&6I>bPIcx={Pp{l{VD%k^MZOu-h{U+* zr;p;h>327I_41s;6=WsRP@=@P1=NUYUS+!U#W9WEuTP5!zFVJ$M||J|v0fU&2^vL| zrZ7lxjLDp1=h;H_5i27v~o0TUB{f;%;!GbEFD-sjAFW==9A8-C=czN~y)0;R8O-I&qy%XqVKr8#XuTGwF8- zFko>@@3*zwakxwUJ&Tm?xNnix)dv<2H4j=mvUsfR6N{%N&rF6KN*OR2wt3Eo!&XKe zHuFM<#!SXdCg#8X6hg{*&lVXlMk-&r?55gf4?&kB9Cg{tK7rU}l5v@2O8FX-S1!}c zm`M4}Xc29TW!@f9xGC1#7m0U=6Uj(?M`I)&?TU7W8^ZB$cO)6_O)O@7X`^5Q10RT~ z@(=jDRk>CcyUwWDxNYgJh{fxW9wL{{){AGs%O%+B}Zc&z;Y3jrH#`XGY?N{1+tpPjx`tw@s;!}JSDN@PfLP@V2n zqZEjCjuBM(V$n<;$MKRQ5}cqKj~EGEPz*`o<{5%Bve+#Zqf+<-Mk7tK!z~dLtJJLMwW7&YYEkrE e(ab8fDq8O^5wnW&d=_VEla2mL^PGCXL;HVKXp3q9 diff --git a/Cluster/PowerMaster/build/classes/Module/Loader/Problem.class b/Cluster/PowerMaster/build/classes/Module/Loader/Problem.class index a0a43a7015f48a6071c9713c7fc4b1f19b70d0f1..0393595cea5593739e451e7ac3d92ba645cf88e1 100644 GIT binary patch literal 2782 zcmaJ@Yj+b>6x}yTGifrV&{A5UO3?~w3Pe#9dD;h$N}5&zML;dn}=E{`u`CfWvqg$1Y?$ zu@f_DnN`bY8ZO4sQ8VWfxP;4UnN!P^I6lYKIIiKkhA%qtCBD)yA4fN`G2Bp3BZdX_ z%&Vmkhr~?pg*Xiv;K_CisXvPMY? z^kkNeRU=(Ati^QBbxdpVxIm}xGBqg>n<$#na@A|ctl^X@0^PNks%sY0(?(eZ;e;XXG}|GtEC0$ zTryaRD#Fei#W}+<)!sKo+$ED_`!myap<0ybjBOO8llDtvLVZ!XS$R8W7gwbt(3>2| zEJ{ndX1x^k|OUt#-vx?OqO zat+g}_}Ti}WE;6A&_~wuZN?f-j&R^Hp88YT*AC!Sz5?MDxyJU-NoUG(1(M0@0WZJ* zBLUO6Z5O3su{nah?+cuqxs#V=*R;JelYJY7+`b zF;S6jLyeK7Ckma$pbs0+@QLT_s*{&zO{EgucRQpMuVWvII^M({9lJ58;|&b*zId0x z6ZUzdvc&1=cnfc9DCw|Z>nP)v4hI!7)ZwD4VO7U%++iJ!d$idG4Qo2?;%lm~aa!x> zc-1UYj_ltAwUT$GGbAk~0mmrV$A)x#gL?wnkaQe>dtb-5_)fzE9pB>z9Yc!sUd6hv zt-=MiHj>t4S1-`J?S8X4hosVMSEF>6Es&_|@q$uElN#$vry9fMDkXC?C^i2yFxI;N zt0n?)UII;8{XchY)hJfw%uV%`xYk~jwHbOPQqOWxH95u$S&^Q+n<}ZRn>Q!WtlV0~ zmAvp_TNURE+_d@WFfErM(kM~*_KO!h!gUu@ z1EYxG06K9HTW|=yNHh7nNbzK-21kzr+!5HLCA>F9I22(w83PhXGp0u4wohX?^#t1J zbHqaU5j(xjf#>K9<4Wr46GS36NK0`ELviUL3*ZxUVT^4VXPJ`$4#S%qhVdSGC=SE? zp?{w(`@q8xsxL?Ip-J{2ev7P5gw9FYpnL`e123RmKj2 zMOtCzJQ%&^;KK-fjAMRqE0cH#k6V}+uVHfBtF#j*aMB0+lU-7MnhifgA`>||n0omW zCR2llpFzL!2Fl~ zt1?GZyVo($(0tspu93;zK-Z(2^N*@;Ixz%3ZI9L8igk}z_g{mhuCKzn(6*?7)}kJ? LEh@t@LYV#!rrb%` delta 875 zcmZ{i$!-%t5Qe`QPiB&tjtPbs;slZqhs9YOmateL80WH?D`u`H zTuT}0hOcMbpkbzIX2TLT&D>15m2i9SZ6oZo3QtQF?l?*uavWg7agd45k3xC2%#nn< zj(gm9JYdW5kZs3d%b8Tpn`ou;C3?Rb&5K!-rdSXW)b+z01=(4Bb6U-_y8`c-iZBY8=Y;kF z3sgP(U9#RXc1ct;lW`hM(bW0o0JGX>R$1&ZtDNMN`Z}$;0>OfCXC%%9kB-i?4H|2Q z24&*PN`{d&Ny<`zutOEVaLq zhI|}iJo%55y6-7qEmul5Eah3Ql(Tw*-98$GZLcM+O@GGi^;M)k`dshv#ekByKa|*> okstx*2VwiHY?$>@tXDa#mQCNDn87aOw&jM~dY#+Wx>tYkAMjH>jQ{`u diff --git a/Cluster/PowerMaster/nbproject/build-impl.xml b/Cluster/PowerMaster/nbproject/build-impl.xml index 5c6e21a..f0ae68f 100644 --- a/Cluster/PowerMaster/nbproject/build-impl.xml +++ b/Cluster/PowerMaster/nbproject/build-impl.xml @@ -20,10 +20,10 @@ is divided into following sections: --> - + - + @@ -198,6 +198,7 @@ is divided into following sections: + @@ -384,6 +385,7 @@ is divided into following sections: + @@ -514,7 +516,7 @@ is divided into following sections: - + @@ -839,6 +841,14 @@ is divided into following sections: --> + + + + + + + + @@ -850,6 +860,7 @@ is divided into following sections: + diff --git a/Cluster/PowerMaster/nbproject/genfiles.properties b/Cluster/PowerMaster/nbproject/genfiles.properties index 8274b41..f583eac 100644 --- a/Cluster/PowerMaster/nbproject/genfiles.properties +++ b/Cluster/PowerMaster/nbproject/genfiles.properties @@ -4,5 +4,5 @@ build.xml.stylesheet.CRC32=28e38971@1.44.1.45 # This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml. # Do not edit this file. You may delete it but then the IDE will never regenerate such files for you. nbproject/build-impl.xml.data.CRC32=b694bb79 -nbproject/build-impl.xml.script.CRC32=aaeadb6d -nbproject/build-impl.xml.stylesheet.CRC32=0ae3a408@1.44.1.45 +nbproject/build-impl.xml.script.CRC32=e70e4baf +nbproject/build-impl.xml.stylesheet.CRC32=fcddb364@1.50.1.46 diff --git a/Cluster/PowerMaster/nbproject/private/private.properties b/Cluster/PowerMaster/nbproject/private/private.properties index 011ef9b..be20e48 100644 --- a/Cluster/PowerMaster/nbproject/private/private.properties +++ b/Cluster/PowerMaster/nbproject/private/private.properties @@ -3,4 +3,4 @@ do.depend=false do.jar=true javac.debug=true javadoc.preview=true -user.properties.file=C:\\Users\\Miranda\\.netbeans\\7.0\\build.properties +user.properties.file=C:\\Users\\KopDicht\\.netbeans\\7.1\\build.properties diff --git a/Cluster/PowerMaster/src/Module/Loader/OnesMax.java b/Cluster/PowerMaster/src/Module/Loader/OnesMax.java index e9dd5c5..b73fe41 100644 --- a/Cluster/PowerMaster/src/Module/Loader/OnesMax.java +++ b/Cluster/PowerMaster/src/Module/Loader/OnesMax.java @@ -70,7 +70,7 @@ private boolean Load() { String[] param = parmsData[i].split("="); //Verificação de parametros //parametro 1 - Boolean verInt=VerificaParametros.VerInt(param); + Boolean verInt=Problem.VerInt(param); if(verInt){ if (param[0].equals(OnesMax.PARAM_ITERATIONS) && !this.containsParam(OnesMax.PARAM_ITERATIONS)) { @@ -109,7 +109,9 @@ private boolean Load() { System.out.println(OnesMax.PARAM_ALELLO_SIZE+"+:"+this.bestFitness); continue; } - } + }else{ + return false; + } } //Verificar se todos os parametros foram carregados diff --git a/Cluster/PowerMaster/src/Module/Loader/Problem.java b/Cluster/PowerMaster/src/Module/Loader/Problem.java index f0c1594..a1e46f2 100644 --- a/Cluster/PowerMaster/src/Module/Loader/Problem.java +++ b/Cluster/PowerMaster/src/Module/Loader/Problem.java @@ -19,7 +19,8 @@ public abstract class Problem { */ private final int NUM_PARAMS; /** - * Variável que indica o número de parametros existentes actualmente no problema + * Variável que indica o número de parametros existentes actualmente no + * problema */ private int ACTUAL_NUM_PARAMS; /** @@ -48,12 +49,14 @@ public Problem(String ProblemName, int NUM_PARAMS) { /** * Método que permite obter uma nova instacia do objecto solver - * @return + * + * @return */ public abstract Solver getNewSolver(); /** * Método para adicionar parametros ao objecto Problem + * * @param param Identificado do parametro (String) * @param data Data do parametro (Objecto) */ @@ -63,19 +66,21 @@ public void addParam(String param, Object data) { this.ACTUAL_NUM_PARAMS++; } } - + /** * Método que verifica se existe um parametro na estrutura + * * @param param Chave que identifica o parametro a ser verificado * @return True - Existe / False - Não existe */ - public boolean containsParam(String param){ + public boolean containsParam(String param) { return this.Parms.containsKey(param); } /** * Método que retorna o número de parametros adicionados ao problema - * @return + * + * @return */ public int get_ACTUAL_NUM_PARAMS() { return ACTUAL_NUM_PARAMS; @@ -83,13 +88,31 @@ public int get_ACTUAL_NUM_PARAMS() { /** * Método que permite procurar um parametro por a sua chave + * * @param key Chave de pesquisa - * @return Retorno do obejcto encontrado, caso não seja encontrado este método retorna null + * @return Retorno do obejcto encontrado, caso não seja encontrado este + * método retorna null */ public Object getParms(String key) { return Parms.get(key); } + public static Boolean VerInt(String[] linha) { + Boolean res = false; + for (int i = 1; i < linha.length; i++) { + try { + Integer.parseInt(linha[i]); + } catch (Exception e) { + System.out.println("Caracter encontrado: " + linha[i] + " erro: " + e); + res = false; + return res; + } + res = true; + } + + return res; + } + public int getProblemID() { return ProblemID; }