From 3ae8a0a3e4b0b7a205ba4bb8da5529692a940565 Mon Sep 17 00:00:00 2001 From: Philipp Spohr <spohr.philipp@web.de> Date: Fri, 29 Sep 2017 16:15:32 +0200 Subject: [PATCH] -Improved Meta-Graph performance -Fixed bug using ILP when selecting heuristic mode -Fixed bug with discarding solution sometimes not removing subgraphs/metagraph -Fixed bug with infinite gap values being formatted incorrectly -Enabled highlighting of clusters in meta-graph -Enabled returning to original network view upon result destruction -Fixed bugs with cluster-view sometimes using incorrect styles/layout -Reworked concurrency / synchronization -Various smaller performance issues --- pom.xml | 2 +- .../de/hhu/ba/yoshikoWrapper/core/CyCore.java | 27 ++++ .../yoshikoWrapper/core/StatusInformer.java | 4 +- .../hhu/ba/yoshikoWrapper/core/YoshUtil.java | 1 + .../graphModel/YoshikoCluster.java | 127 ++++++++---------- .../graphModel/YoshikoResult.java | 6 + .../graphModel/YoshikoSolution.java | 56 +++++++- .../swing/components/ClusterView.java | 9 +- .../swing/components/ResultPanel.java | 40 ++++-- .../swing/components/SolutionTab.java | 6 +- .../yoshikoWrapper/tasks/AlgorithmTask.java | 19 +-- .../tasks/CreateClusterViews.java | 21 ++- .../tasks/CreateMetaGraphTask.java | 62 +++++---- src/main/resources/YoshikoStrings.properties | 4 +- thesis/tex/Thesis.pdf | Bin 134687 -> 151680 bytes thesis/tex/Thesis.tex | 12 ++ 16 files changed, 260 insertions(+), 136 deletions(-) diff --git a/pom.xml b/pom.xml index f3b7f64..453fd7a 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ <groupId>de.hhu.ba</groupId> <artifactId>yoshikoWrapper</artifactId> - <version>0.1.2</version> + <version>0.1.3</version> <name>YoshikoWrapper</name> diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/core/CyCore.java b/src/main/java/de/hhu/ba/yoshikoWrapper/core/CyCore.java index 5276bab..e51449e 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/core/CyCore.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/core/CyCore.java @@ -21,6 +21,8 @@ ******************************************************************************/ package de.hhu.ba.yoshikoWrapper.core; +import java.util.concurrent.CountDownLatch; + import org.cytoscape.application.CyApplicationManager; import org.cytoscape.application.swing.CySwingApplication; import org.cytoscape.model.CyNetwork; @@ -36,6 +38,10 @@ import org.cytoscape.view.presentation.RenderingEngineFactory; import org.cytoscape.view.vizmap.VisualMappingFunctionFactory; import org.cytoscape.view.vizmap.VisualMappingManager; import org.cytoscape.view.vizmap.VisualStyleFactory; +import org.cytoscape.work.FinishStatus; +import org.cytoscape.work.ObservableTask; +import org.cytoscape.work.TaskIterator; +import org.cytoscape.work.TaskObserver; import org.cytoscape.work.swing.DialogTaskManager; import org.osgi.framework.BundleContext; @@ -68,4 +74,25 @@ public class CyCore { public static String getConfig(String key) { return cm.getProperties().getProperty(key); } + + /** + * Convenience function that runs all tasks in a task iterator but blocks until all tasks are finished + * @param taskIterator + * @throws InterruptedException + */ + public static synchronized void runAndWait(TaskIterator taskIterator) throws InterruptedException { + CountDownLatch blockLatch = new CountDownLatch(1); + dialogTaskManager.execute(taskIterator,new TaskObserver() { + + @Override + public void taskFinished(ObservableTask task) {} + + @Override + public void allFinished(FinishStatus finishStatus) { + blockLatch.countDown(); + } + + }); + blockLatch.await(); + } } diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/core/StatusInformer.java b/src/main/java/de/hhu/ba/yoshikoWrapper/core/StatusInformer.java index 32987a6..cbc49a7 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/core/StatusInformer.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/core/StatusInformer.java @@ -44,7 +44,9 @@ public class StatusInformer extends CplexInformer { @Override public void updateStatus(YoshikoState state, double value) { if (state == YoshikoState.SOLVING_ILP){ - taskMonitor.setStatusMessage(LocalizationManager.get("currentGap")+": "+SwingUtil.twoDecimals.format(value)+"%"); + if (value <= 1.0) { + taskMonitor.setStatusMessage(LocalizationManager.get("currentGap")+": "+SwingUtil.twoDecimals.format(value)+"%"); + } } } diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/core/YoshUtil.java b/src/main/java/de/hhu/ba/yoshikoWrapper/core/YoshUtil.java index 1dee005..b85271e 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/core/YoshUtil.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/core/YoshUtil.java @@ -1,5 +1,6 @@ package de.hhu.ba.yoshikoWrapper.core; + import org.osgi.framework.Version; public class YoshUtil { diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/graphModel/YoshikoCluster.java b/src/main/java/de/hhu/ba/yoshikoWrapper/graphModel/YoshikoCluster.java index 6495bbe..7ad9b61 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/graphModel/YoshikoCluster.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/graphModel/YoshikoCluster.java @@ -28,7 +28,6 @@ import java.util.List; import javax.swing.ImageIcon; import javax.swing.JLabel; -import javax.swing.SwingUtilities; import org.cytoscape.model.CyEdge; import org.cytoscape.model.CyNetwork; @@ -39,9 +38,10 @@ import org.cytoscape.model.subnetwork.CySubNetwork; import org.cytoscape.view.layout.CyLayoutAlgorithm; import org.cytoscape.view.model.CyNetworkView; import org.cytoscape.view.presentation.RenderingEngine; -import org.cytoscape.work.Task; +import org.cytoscape.work.FinishStatus; +import org.cytoscape.work.ObservableTask; import org.cytoscape.work.TaskIterator; -import org.cytoscape.work.TaskMonitor; +import org.cytoscape.work.TaskObserver; import org.slf4j.Logger; import de.hhu.ba.yoshikoWrapper.core.CyCore; @@ -61,6 +61,9 @@ public class YoshikoCluster { private Image img; + private CySubNetwork subnet; + + //SYMBOLIC LINKS private final YoshikoSolution solution; private Logger logger = YoshikoLogger.getInstance().getLogger(); @@ -90,43 +93,54 @@ public class YoshikoCluster { } /** - * Generates a subgraph for this cluster by choosing the nodes and induced edges from the original graph + * Generates a subgraph for this clusters by choosing the nodes and induced edges from the original graph if such a graph doesn't exist yet. * @return */ public CySubNetwork getSubNetwork() { - CyRootNetwork originalGraphAsRoot = - CyCore.rootNetworkManager.getRootNetwork(solution.getOriginalGraph()); - - //Create nested graph and cluster subnet - ArrayList<CyEdge> inducedEdges = new ArrayList<CyEdge>(); - for (CyNode n: nodes) { - //Sadly Cytoscape doesnt provide a comfort function here - List<CyEdge> adjacentEdges = solution.getOriginalGraph().getAdjacentEdgeList(n, CyEdge.Type.ANY); - for (CyEdge e: adjacentEdges) { - if (nodes.contains(e.getSource()) && nodes.contains(e.getTarget())) { - inducedEdges.add(e); + if (subnet == null) { + CyRootNetwork originalGraphAsRoot = + CyCore.rootNetworkManager.getRootNetwork(solution.getOriginalGraph()); + + //Create nested graph and clusters subnet + ArrayList<CyEdge> inducedEdges = new ArrayList<CyEdge>(); + for (CyNode n: nodes) { + //Sadly Cytoscape doesnt provide a comfort function here + List<CyEdge> adjacentEdges = solution.getOriginalGraph().getAdjacentEdgeList(n, CyEdge.Type.ANY); + + for (CyEdge e: adjacentEdges) { + if (nodes.contains(e.getSource()) && nodes.contains(e.getTarget())) { + inducedEdges.add(e); + } } } - } - - CySubNetwork subnet = originalGraphAsRoot.addSubNetwork(nodes ,inducedEdges); - subnet.getRow(subnet).set(CyNetwork.NAME, LocalizationManager.get("cluster")+" "+(id+1)); + subnet = originalGraphAsRoot.addSubNetwork(nodes ,inducedEdges); + subnet.getRow(subnet).set(CyNetwork.NAME, LocalizationManager.get("clusters")+" "+(id+1)); + } return subnet; } + public void highlight() { + if (CyCore.cy.getCurrentNetwork() == solution.getOriginalGraph()) { + highlightInOriginalGraph(); + } + else if (CyCore.cy.getCurrentNetwork() == solution.getMetaGraph()) { + solution.highlightInMetaGraph(this); + } + } + /** - * Attempt to select the nodes belonging to this cluster in the original Graph given that they still exist + * Attempt to select the nodes belonging to this clusters in the original Graph given that they still exist */ - public void highlightInOriginalGraph() { + private void highlightInOriginalGraph() { try { List<CyRow> allRows = solution.getOriginalGraph().getDefaultNodeTable().getAllRows(); for (CyRow r: allRows) { r.set("selected", false); } - //Select nodes corresponding to the cluster + //Select nodes corresponding to the clusters for (CyNode n : nodes) { solution.getOriginalGraph().getRow(n).set("selected", true); } @@ -136,67 +150,38 @@ public class YoshikoCluster { } } - - public void applyImage(JLabel label, int width, int height) throws Exception { - - if (img != null) { - label.setIcon(new ImageIcon(img)); - } - else { - getImage(width,height,label); - } - } - - private void getImage(int width, int height,JLabel label) { + public void generateClusterIcon(int width, int height,JLabel label) throws InterruptedException { final CyNetworkView view = CyCore.networkViewFactory.createNetworkView(getSubNetwork()); - //layout cluster + //layout clusters final CyLayoutAlgorithm layout = CyCore.layoutAlgorithmManager.getDefaultLayout(); - final TaskIterator createLayout = layout.createTaskIterator( + CyCore.runAndWait(layout.createTaskIterator( view, layout.getDefaultLayoutContext(), CyLayoutAlgorithm.ALL_NODE_VIEWS, null + ) ); - createLayout.append( - new Task() { - - @Override - public void run(TaskMonitor taskMonitor) throws Exception { - taskMonitor.setStatusMessage("Generating cluster view for C:"+id); - - - view.setVisualProperty(NETWORK_WIDTH, new Double(width)); - view.setVisualProperty(NETWORK_HEIGHT, new Double(height)); - view.fitContent(); + view.setVisualProperty(NETWORK_WIDTH, new Double(width)); + view.setVisualProperty(NETWORK_HEIGHT, new Double(height)); + view.fitContent(); - StyleManager.style(view, CyCore.visualMappingManager.getCurrentVisualStyle()); + StyleManager.style(view, CyCore.visualMappingManager.getCurrentVisualStyle()); - RenderingEngine<CyNetwork> renderingEngine = CyCore.renderingEngineFactory.createRenderingEngine(label, view); - SwingUtilities.invokeLater(new Runnable() { + RenderingEngine<CyNetwork> renderingEngine = CyCore.renderingEngineFactory.createRenderingEngine(label, view); - @Override - public void run() { - img = renderingEngine.createImage(width,height); - label.setIcon(new ImageIcon(img)); - renderingEngine.dispose(); - view.dispose(); - } - - }); - - - } - @Override - public void cancel() {} + img = renderingEngine.createImage(width,height); + label.setIcon(new ImageIcon(img)); - } - ); + renderingEngine.dispose(); + view.dispose(); + } - CyCore.dialogTaskManager.execute( - createLayout - ); + public void delete() { + if (subnet != null) { + CyCore.networkManager.destroyNetwork(subnet); + } } public int getSize() { @@ -215,4 +200,8 @@ public class YoshikoCluster { return solution.getOriginalGraph().getRow(n).get("name", String.class); } + + + + } diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/graphModel/YoshikoResult.java b/src/main/java/de/hhu/ba/yoshikoWrapper/graphModel/YoshikoResult.java index 461e136..b2441e5 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/graphModel/YoshikoResult.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/graphModel/YoshikoResult.java @@ -71,5 +71,11 @@ public class YoshikoResult { return originalGraph; } + public void delete() { + for (YoshikoSolution s: solutions) { + s.delete(); + } + } + } diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/graphModel/YoshikoSolution.java b/src/main/java/de/hhu/ba/yoshikoWrapper/graphModel/YoshikoSolution.java index bf4a8a1..542cce2 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/graphModel/YoshikoSolution.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/graphModel/YoshikoSolution.java @@ -22,19 +22,36 @@ package de.hhu.ba.yoshikoWrapper.graphModel; import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; + +import javax.swing.JOptionPane; import org.cytoscape.model.CyNetwork; +import org.cytoscape.model.CyNode; +import org.cytoscape.model.CyRow; +import org.slf4j.Logger; + +import de.hhu.ba.yoshikoWrapper.core.CyCore; +import de.hhu.ba.yoshikoWrapper.logging.YoshikoLogger; public class YoshikoSolution { private final YoshikoResult result; - public ArrayList<YoshikoCluster> cluster; + private CyNetwork metaGraph; + private HashMap<YoshikoCluster, CyNode> metaGraphMap; + + + public ArrayList<YoshikoCluster> clusters; private final long id; + private Logger logger = YoshikoLogger.getInstance().getLogger(); + + public YoshikoSolution(YoshikoResult yoshikoResult, long id) { - cluster = new ArrayList<YoshikoCluster>(); + clusters = new ArrayList<YoshikoCluster>(); this.result = yoshikoResult; this.id = id; } @@ -42,7 +59,7 @@ public class YoshikoSolution { //_____________GETTER / SETTER ________________// public ArrayList<YoshikoCluster> getClusters() { - return cluster; + return clusters; } /** @@ -56,4 +73,37 @@ public class YoshikoSolution { return result.getOriginalGraph(); } + public void delete() { + for (YoshikoCluster c: clusters) { + c.delete(); + } + if (this.metaGraph != null) { + CyCore.networkManager.destroyNetwork(metaGraph); + } + } + + public void setMetaGraph(CyNetwork metaGraph, HashMap<YoshikoCluster, CyNode> map) { + this.metaGraph = metaGraph; + this.metaGraphMap = map; + } + + public CyNetwork getMetaGraph() { + return metaGraph; + } + + public void highlightInMetaGraph(YoshikoCluster yoshikoCluster) { + try { + List<CyRow> allRows = metaGraph.getDefaultNodeTable().getAllRows(); + for (CyRow r: allRows) { + r.set("selected", false); + } + + metaGraph.getRow(metaGraphMap.get(yoshikoCluster)).set("selected", true); + } + catch (Exception e) { + logger.warn("The graph doesn't exist anymore, can't highlight nodes!"); + } + + } + } diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/ClusterView.java b/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/ClusterView.java index 2cbb3a4..573a176 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/ClusterView.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/ClusterView.java @@ -42,6 +42,7 @@ import de.hhu.ba.yoshikoWrapper.core.LocalizationManager; import de.hhu.ba.yoshikoWrapper.graphModel.YoshikoCluster; import de.hhu.ba.yoshikoWrapper.swing.GraphicsLoader; import de.hhu.ba.yoshikoWrapper.swing.SwingUtil; +import de.hhu.ba.yoshikoWrapper.tasks.AlgorithmTask; @SuppressWarnings("serial") public class ClusterView extends JPanel { @@ -76,17 +77,17 @@ public class ClusterView extends JPanel { //Swing init - title = new JLabel(LocalizationManager.get("cluster")+" "+(c.getID()+1)); + title = new JLabel(LocalizationManager.get("clusters")+" "+(c.getID()+1)); clusterSize = new JLabel(LocalizationManager.get("clusterSize")+" "+c.getSize()); icon = new JLabel(); //icon.setBorder(BorderFactory.createLineBorder(Color.BLACK)); - cluster.applyImage(icon,CLUSTER_ICON_SIZE, CLUSTER_ICON_SIZE); + cluster.generateClusterIcon(CLUSTER_ICON_SIZE, CLUSTER_ICON_SIZE,icon); SwingUtil.addAll(this,title,clusterSize,icon); nodeList = new BasicCollapsiblePanel(LocalizationManager.get("nodes")); - //Loop over nodes in the cluster and add them to the view + //Loop over nodes in the clusters and add them to the view for (CyNode n : c.getSubNetwork().getNodeList()) { nodeList.add( new JLabel( @@ -147,7 +148,7 @@ public class ClusterView extends JPanel { @Override public void mouseEntered(MouseEvent e) { - cluster.highlightInOriginalGraph(); + cluster.highlight(); setBorder(isSelected ? selectedBorder : highlightBorder); } diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/ResultPanel.java b/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/ResultPanel.java index 907ea01..db8158b 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/ResultPanel.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/ResultPanel.java @@ -25,9 +25,11 @@ import static javax.swing.GroupLayout.*; import java.awt.Color; import java.awt.Component; +import java.awt.Dimension; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.ArrayList; +import java.util.Collection; import java.util.Properties; import javax.swing.BoxLayout; @@ -58,6 +60,7 @@ import org.cytoscape.model.events.AddedNodesListener; import org.cytoscape.model.events.NetworkAboutToBeDestroyedEvent; import org.cytoscape.model.events.NetworkAboutToBeDestroyedListener; import org.cytoscape.util.swing.BasicCollapsiblePanel; +import org.cytoscape.view.model.CyNetworkView; import de.hhu.ba.yoshikoWrapper.core.CyCore; import de.hhu.ba.yoshikoWrapper.core.LocalizationManager; @@ -123,11 +126,16 @@ NetworkAboutToBeDestroyedListener solutionTabs.add(tab); } + marker = new BasicCollapsiblePanel(LocalizationManager.get("solutionMarker")); + marker.setLayout(new BoxLayout(marker,BoxLayout.Y_AXIS)); + + JLabel costLabel = new JLabel(LocalizationManager.get("cost")+" "+result.getFlags().getTotalCost()); + marker.add(costLabel); + if (result.getFlags().getIlpGenerated()) { //TODO: Move to MarkerPanel for better codestyle //Optional Markers - marker = new BasicCollapsiblePanel(LocalizationManager.get("ilpMarker")); - marker.setLayout(new BoxLayout(marker,BoxLayout.Y_AXIS)); + if(result.getFlags().getOptimal()) { JLabel optimalLabel; optimalLabel = new JLabel(LocalizationManager.get("optimal")); @@ -142,15 +150,15 @@ NetworkAboutToBeDestroyedListener marker.add(new JLabel(result.getFlags().getSolvedInstances()+"/"+result.getFlags().getReducedInstances()+" "+LocalizationManager.get("redSolved"))); marker.add(new JLabel(LocalizationManager.get("lastInstanceGap")+" "+(int)(100*result.getFlags().getLastGap())+"%")); } - JLabel costLabel = new JLabel(LocalizationManager.get("cost")+" "+result.getFlags().getTotalCost()); - marker.add(costLabel); + if (result.getFlags().getTimedOut()) { marker.add(new JLabel(LocalizationManager.get("timeoutMarker"))); } marker.setCollapsed(false); - this.add(marker); } + this.add(marker); + destroyButton = new JButton(LocalizationManager.get("discardSolution")); destroyButton.addActionListener(new ActionListener() { @@ -172,16 +180,13 @@ NetworkAboutToBeDestroyedListener layout.setHorizontalGroup(horizontalGroup); layout.setVerticalGroup(verticalGroup); - if (result.getFlags().getIlpGenerated()) { - horizontalGroup.addComponent(marker,DEFAULT_SIZE,DEFAULT_SIZE,DEFAULT_SIZE); - verticalGroup.addComponent(marker,DEFAULT_SIZE,DEFAULT_SIZE,PREFERRED_SIZE); - } - horizontalGroup + .addComponent(marker,DEFAULT_SIZE,DEFAULT_SIZE,DEFAULT_SIZE) .addComponent(invalidLabel,DEFAULT_SIZE, PREFERRED_SIZE,Short.MAX_VALUE) .addComponent(tabbedPane,HACKFIX_FIXED_WIDTH, PREFERRED_SIZE,Short.MAX_VALUE) .addComponent(destroyButton,DEFAULT_SIZE, DEFAULT_SIZE,DEFAULT_SIZE); verticalGroup + .addComponent(marker,DEFAULT_SIZE,DEFAULT_SIZE,PREFERRED_SIZE) .addComponent(invalidLabel,DEFAULT_SIZE, DEFAULT_SIZE,DEFAULT_SIZE) .addComponent(tabbedPane,DEFAULT_SIZE, DEFAULT_SIZE,PREFERRED_SIZE) .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, DEFAULT_SIZE, Short.MAX_VALUE) @@ -190,6 +195,8 @@ NetworkAboutToBeDestroyedListener layout.setAutoCreateGaps(true); layout.setAutoCreateContainerGaps(true); + //SWING BLACK MAGIC FOR ADEPTS + this.setMinimumSize(new Dimension(HACKFIX_FIXED_WIDTH,this.getMinimumSize().height)); this.setLayout(layout); @@ -206,6 +213,7 @@ NetworkAboutToBeDestroyedListener } public void deleteSolution() { + int dialogResult = JOptionPane.showConfirmDialog ( null, LocalizationManager.get("deleteSolution"), @@ -215,9 +223,19 @@ NetworkAboutToBeDestroyedListener if (dialogResult != JOptionPane.YES_OPTION) { return; } + + //Restore view + if (result.getOriginalGraph() != null) { + Collection<CyNetworkView> viewsToReturn = CyCore.networkViewManager.getNetworkViews(result.getOriginalGraph()); + if (!viewsToReturn.isEmpty()) { + CyCore.cy.setCurrentNetworkView(viewsToReturn.iterator().next()); + } + } + CyCore.registrar.unregisterService(this,CytoPanelComponent.class); - removeAll(); + result.delete(); super.setVisible(false); + } private void invalidateResult() { diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/SolutionTab.java b/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/SolutionTab.java index 0bf5bca..ea88fc6 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/SolutionTab.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/SolutionTab.java @@ -86,14 +86,14 @@ public class SolutionTab extends JPanel { //Declaration of Swing Components clusterViewList = new ClusterViewList(); - for (YoshikoCluster c: solution.cluster) { + for (YoshikoCluster c: solution.clusters) { ClusterView clusterView = new ClusterView(c); clusterViewList.add(clusterView); } scrollPane = new JScrollPane(clusterViewList); - clusterCount = new JLabel(LocalizationManager.get("clusterFound")+" "+s.cluster.size()); + clusterCount = new JLabel(LocalizationManager.get("clusterFound")+" "+s.clusters.size()); createClusterView = new JButton(LocalizationManager.get("createClusterView")); createMetaGraph = new JButton(LocalizationManager.get("createMetaGraph")); @@ -170,7 +170,7 @@ public class SolutionTab extends JPanel { .addGap(8) .addComponent(clusterCount,DEFAULT_SIZE,DEFAULT_SIZE,DEFAULT_SIZE) .addGap(8) - .addComponent(scrollPane,PREFERRED_SIZE,DEFAULT_SIZE,Short.MAX_VALUE) + .addComponent(scrollPane,DEFAULT_SIZE,DEFAULT_SIZE,Short.MAX_VALUE) .addComponent(createClusterView,DEFAULT_SIZE,DEFAULT_SIZE,DEFAULT_SIZE) .addComponent(createMetaGraph,DEFAULT_SIZE,DEFAULT_SIZE,DEFAULT_SIZE) ); diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/AlgorithmTask.java b/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/AlgorithmTask.java index fbe450f..7791070 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/AlgorithmTask.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/AlgorithmTask.java @@ -71,7 +71,7 @@ public class AlgorithmTask extends AbstractTask { private ResultPanel resultPanel; - public AlgorithmTask(// <<< Too many variables here, some should be grouped later TODO: + public AlgorithmTask( Window statusWindow, CyNetwork net, ParameterSet parameterSet @@ -85,6 +85,7 @@ public class AlgorithmTask extends AbstractTask { @Override public void run(TaskMonitor taskMonitor) throws Exception { + //TODO: Improve setProgress values taskMonitor.setTitle(LocalizationManager.get("yoshTask")); taskMonitor.setProgress(0.0); @@ -127,9 +128,9 @@ public class AlgorithmTask extends AbstractTask { parameterSet.solCount, parameterSet.reductionRulesBitMask, parameterSet.snrMultFactor, + parameterSet.useHeuristic, parameterSet.usePartitionCuts, - parameterSet.useTriangleCuts, - parameterSet.useHeuristic + parameterSet.useTriangleCuts ); @@ -162,30 +163,30 @@ public class AlgorithmTask extends AbstractTask { //Fetch number of clusters in the solution long numberOfClusters = result.getNumberOfClusters(i); - //Loop over cluster + //Loop over clusters for (long k=0;k<numberOfClusters;k++) { //Create java instance YoshikoCluster cluster = new YoshikoCluster(solution,k); - taskMonitor.setStatusMessage("Processing cluster "+(k+1)+" of "+numberOfClusters); + taskMonitor.setStatusMessage("Processing clusters "+(k+1)+" of "+numberOfClusters); IntVector clusterVector = result.getCluster(i, k); long sizeOfCluster = clusterVector.size(); for (int l=0;l<sizeOfCluster;l++) { //Unsafe mismatch int long - taskMonitor.setStatusMessage("Processing node "+(l+1)+ " of "+sizeOfCluster); + //taskMonitor.setStatusMessage("Processing node "+(l+1)+ " of "+sizeOfCluster); int nodeID = clusterVector.get(l); CyNode node = nodeMap.indexOf(nodeID); //<<< Another int/long conversion cluster.addNode(node); net.getRow(node).set(columnName, ""+(k+1)); //Add Cluster ID in table (Remove in final version?) } - //Register cluster with solution for further reference - solution.cluster.add(cluster); + //Register clusters with solution for further reference + solution.clusters.add(cluster); } //Sort clusters by size, descending as the biggest clusters are usually the most relevant - solution.cluster.sort(YoshikoCluster.lessThanComparator); + solution.clusters.sort(YoshikoCluster.lessThanComparator); //Register solution with result for further reference yoshikoResult.addSolution(solution); } diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/CreateClusterViews.java b/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/CreateClusterViews.java index 28bc3fa..103d03c 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/CreateClusterViews.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/CreateClusterViews.java @@ -5,8 +5,11 @@ import java.util.ArrayList; import org.cytoscape.model.subnetwork.CySubNetwork; import org.cytoscape.view.layout.CyLayoutAlgorithm; import org.cytoscape.view.model.CyNetworkView; +import org.cytoscape.work.FinishStatus; +import org.cytoscape.work.ObservableTask; import org.cytoscape.work.Task; import org.cytoscape.work.TaskMonitor; +import org.cytoscape.work.TaskObserver; import de.hhu.ba.yoshikoWrapper.core.CyCore; import de.hhu.ba.yoshikoWrapper.core.LocalizationManager; @@ -56,19 +59,29 @@ public class CreateClusterViews implements Task { CyCore.networkManager.addNetwork(subnet,false); //Create network view and register it CyNetworkView subnetView = CyCore.networkViewFactory.createNetworkView(subnet); - //layout cluster + //layout clusters CyCore.dialogTaskManager.execute( layout.createTaskIterator( subnetView, layout.getDefaultLayoutContext(), CyLayoutAlgorithm.ALL_NODE_VIEWS, null - ) + ), + new TaskObserver() { + + @Override + public void taskFinished(ObservableTask task) {} + + @Override + public void allFinished(FinishStatus finishStatus) { + StyleManager.style(subnetView,CyCore.visualMappingManager.getCurrentVisualStyle()); + CyCore.networkViewManager.addNetworkView(subnetView); + } + + } ); - StyleManager.style(subnetView,CyCore.visualMappingManager.getCurrentVisualStyle()); - CyCore.networkViewManager.addNetworkView(subnetView); } } diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/CreateMetaGraphTask.java b/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/CreateMetaGraphTask.java index caa8663..a82a980 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/CreateMetaGraphTask.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/CreateMetaGraphTask.java @@ -3,6 +3,8 @@ package de.hhu.ba.yoshikoWrapper.tasks; import java.util.ArrayList; import java.util.HashMap; +import javax.swing.SwingUtilities; + import org.cytoscape.model.CyEdge; import org.cytoscape.model.CyNetwork; import org.cytoscape.model.CyNode; @@ -11,9 +13,11 @@ import org.cytoscape.model.subnetwork.CySubNetwork; import org.cytoscape.view.layout.CyLayoutAlgorithm; import org.cytoscape.view.model.CyNetworkView; import org.cytoscape.work.AbstractTask; +import org.cytoscape.work.FinishStatus; +import org.cytoscape.work.ObservableTask; import org.cytoscape.work.Task; -import org.cytoscape.work.TaskIterator; import org.cytoscape.work.TaskMonitor; +import org.cytoscape.work.TaskObserver; import de.hhu.ba.yoshikoWrapper.core.CyCore; import de.hhu.ba.yoshikoWrapper.core.LocalizationManager; @@ -21,7 +25,7 @@ import de.hhu.ba.yoshikoWrapper.cytoUtil.StyleManager; import de.hhu.ba.yoshikoWrapper.graphModel.YoshikoCluster; import de.hhu.ba.yoshikoWrapper.graphModel.YoshikoSolution; -public class CreateMetaGraphTask extends AbstractTask { +public class CreateMetaGraphTask extends AbstractTask{ private final YoshikoSolution solution; @@ -76,8 +80,10 @@ public class CreateMetaGraphTask extends AbstractTask { CyCore.networkManager.addNetwork(subnet,false); //Create network view and register it CyNetworkView subnetView = CyCore.networkViewFactory.createNetworkView(subnet); - //layout cluster - CyCore.dialogTaskManager.execute( + + //Apply layout + CyCore.runAndWait( + layout.createTaskIterator( subnetView, layout.getDefaultLayoutContext(), @@ -90,17 +96,23 @@ public class CreateMetaGraphTask extends AbstractTask { CyCore.networkViewManager.addNetworkView(subnetView,false); - //Link cluster node in meta graph and subnet graph to use Cytoscape Nested Network feature + //Link clusters node in meta graph and subnet graph to use Cytoscape Nested Network feature clusterNode.setNetworkPointer(subnet); //Set node attributes - metaGraph.getRow(clusterNode).set("name", LocalizationManager.get("cluster")+" "+c.getID()); + metaGraph.getRow(clusterNode).set("name", LocalizationManager.get("clusters")+" "+c.getID()); metaGraph.getRow(clusterNode).set(StyleManager.CLUSTERSIZE_COLUMN_NAME,c.getSize()); map.put(c, clusterNode); } + + //EDGE_PROCESSING + //We are checking if any edges in the original graph connect clusters, if so we count them + taskMonitor.setStatusMessage(LocalizationManager.get("metaGraph_edges")); - //Add edges (O(|C|^2*|V|^2) can maybe be improved? //TODO - for (YoshikoCluster c1:solution.getClusters()) { - for (YoshikoCluster c2:solution.getClusters()) { + + for (int x = 0; x <solution.getClusters().size(); x ++) { + YoshikoCluster c1 = solution.getClusters().get(x); + for (int y = x; y <solution.getClusters().size(); y ++) { + YoshikoCluster c2 = solution.getClusters().get(y); if(isTerminated) { throw new Exception("Terminated by user!"); @@ -112,6 +124,7 @@ public class CreateMetaGraphTask extends AbstractTask { ) { continue; } + //TODO: Improve running time here? for (CyNode c1n : c1.getSubNetwork().getNodeList()) { for (CyNode c2n : c2.getSubNetwork().getNodeList()) { if (solution.getOriginalGraph().containsEdge(c1n, c2n) || solution.getOriginalGraph().containsEdge(c2n, c1n)) { @@ -131,32 +144,22 @@ public class CreateMetaGraphTask extends AbstractTask { } } + solution.setMetaGraph(metaGraph,map); + CyNetworkView view = CyCore.networkViewFactory.createNetworkView(metaGraph); //Layout and style solution - - TaskIterator it = layout.createTaskIterator( - view, - layout.getDefaultLayoutContext(), - CyLayoutAlgorithm.ALL_NODE_VIEWS, - null + CyCore.runAndWait( + layout.createTaskIterator( + view, + layout.getDefaultLayoutContext(), + CyLayoutAlgorithm.ALL_NODE_VIEWS, + null + ) ); - it.append(new Task() { - - @Override - public void run(TaskMonitor taskMonitor) throws Exception { - StyleManager.styleWithMapping(view, CyCore.visualMappingManager.getCurrentVisualStyle()); - } - - @Override - public void cancel() {} + StyleManager.styleWithMapping(view, CyCore.visualMappingManager.getCurrentVisualStyle()); - }); - - CyCore.dialogTaskManager.execute( - it - ); CyCore.networkManager.addNetwork(metaGraph,false); CyCore.networkViewManager.addNetworkView( @@ -166,6 +169,7 @@ public class CreateMetaGraphTask extends AbstractTask { view.updateView(); CyCore.cy.setCurrentNetworkView(view); + } @Override diff --git a/src/main/resources/YoshikoStrings.properties b/src/main/resources/YoshikoStrings.properties index a5051e9..7c9a4c4 100644 --- a/src/main/resources/YoshikoStrings.properties +++ b/src/main/resources/YoshikoStrings.properties @@ -26,7 +26,7 @@ about = INSERT SOME AMAZING INFO ABOUT THIS APPLICATION,\n THE AUTHOR AND WHERE TO FIND MORE INFO HERE\n <a href=\"www.hhu.de\" >LINK</a> aboutButton = About Yoshiko aboutTitle = Yoshiko Plugin Info -cluster = Cluster +clusters = Cluster clusterFound = Clusters found: clusterSize = Cluster Size: continueTimeout = The ILP has exceeded the given time limit. Do you want to continue? (This may take a long time) @@ -46,7 +46,6 @@ firstStart = Thanks for using the Yoshiko Clustering Tool!\nIt appears, that thi gap = Gap getYoshiko = Get Yoshiko Library icTooltip = This value is used to determine what the algorithm pays when inserting an edge.\nExisting mappings overwrite this value.\nA higher value means that the algorithm is less likely to insert edges in order to generate a cluster. -ilpMarker = ILP Properties incompleteResult = This run yielded no usable result! instance = Instance invalidated = No longer valid, original graph changed! @@ -77,6 +76,7 @@ resultsPanelTitle = Yoshiko Results run = Perform Algorithm showAdvanced = Show advanced options solution = Solution +solutionMarker = Solution Properties status_createCV = Creating cluster view for cluster: diff --git a/thesis/tex/Thesis.pdf b/thesis/tex/Thesis.pdf index 7e2abacb398116dcf8541d79ef4f836411f08309..aa9d60cf5eb118209f5c083603204ff449156719 100644 GIT binary patch delta 60981 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 delta 43882 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Ţ)5IXsxLgG-e>L>1B=+-b1Pjc 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	V9Ev@CAaR=W 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 IuKsRZ0AlPdYXATM diff --git a/thesis/tex/Thesis.tex b/thesis/tex/Thesis.tex index 720652e..b3c8541 100644 --- a/thesis/tex/Thesis.tex +++ b/thesis/tex/Thesis.tex @@ -30,6 +30,14 @@ \cleardoublepage \begin{abstract} +This paper describes an implementation of the Yoshiko-alorithm, +which clusters data based on the weighted cluster-editing problem, +as a plugin for Cytoscape. + +Cytoscape is a network visualization and analysis tool (insert info) + +Yoshiko is based on work from (insert info) + \end{abstract} @@ -40,6 +48,8 @@ \section{Introduction} \section{The Yoshiko-App for Cytoscape} \subsection{Technical Details} + \subsubsection{Program Structure} + \subsubsection{JNI} \subsection{Algorithm} \input{Chapter/alg_overview} \subsubsection{Data Modeling} @@ -49,4 +59,6 @@ \input{Chapter/dm_impl} \section{Evaluation of the Yoshiko Algorithm} \section{Outlook} + \subsection{Multigraph Analysis} + \subsection{Integration in other frameworks} \end{document} \ No newline at end of file -- GitLab