*/
package org.ufcspa.simdecs.test;
+import java.io.File;
+import unbbayes.io.xmlbif.version6.XMLBIFIO;
+import unbbayes.prs.bn.JunctionTreeAlgorithm;
+import unbbayes.prs.bn.ProbabilisticNetwork;
+import unbbayes.prs.bn.ProbabilisticNode;
+
/**
*
* @author maroni
*/
public class Teste {
- private static long getIdFromUID(String pUID, String prefixo) {
- String id = pUID.replaceAll(prefixo, "");
- id = id.substring(0, id.indexOf(":"));
- return Long.parseLong(id);
- }
+ public static void main(String[] args) {
+ final String caminhoRede = "/Users/maroni/NetBeansProjects/SimDeCS/web/redes/influencia.xml";
+ ProbabilisticNetwork rede;
- private static long getIdPacienteFromUID(String pUID) {
- String id = pUID.substring(pUID.indexOf(":paciente-") + ":paciente-".length());
- return Long.parseLong(id);
- }
+ try {
+ // required to run unbbayes gui classes on server
+ System.setProperty("java.awt.headless", "false");
+ rede = new ProbabilisticNetwork(null);
+ XMLBIFIO.loadXML(new File(caminhoRede), rede);
+ JunctionTreeAlgorithm jt = new JunctionTreeAlgorithm();
+ jt.setNet(rede);
+ jt.run();
- public static void main(String[] args) {
- System.out.println(getIdFromUID("sintoma-np-12:paciente-1", "sintoma-np-"));
- System.out.println(getIdPacienteFromUID("sintoma-np-12:paciente-15"));
+
+ for (int j = 0; j < rede.getNodeCount(); j++) {
+ if (!(rede.getNodeAt(j) instanceof ProbabilisticNode)) {
+ System.out.println(rede.getNodeAt(j).getClass());
+ continue;
+ }
+
+ ProbabilisticNode nodoAtual = (ProbabilisticNode) rede.getNodeAt(j);
+ System.out.println(nodoAtual.getName());
+
+ // Verificando a tabela de probabilidades do nodo
+ for (int pb = 0; pb < nodoAtual.getStatesSize(); pb++) {
+ System.out.println(nodoAtual.getStateAt(pb)+":"+nodoAtual.getMarginalAt(pb));
+ }
+ System.out.println("");
+ }
+
+
+ } catch (Exception e) {
+ e.printStackTrace();
+ System.exit(1);
+ }
+
+
}
}