Changes for 7.6.5
- Expanded offerings in the Graph menus.
- Added a Highlights menu that allows various graph features to be highlighted in the graph.
- Added a Check Graph Type to allow the user to check whether a graph is a legal DAG, CPDAG, MPDAG, PAG, or MAG.
- Added a Manipulate Graph menu to allow the user to so the following:
- Apply Meek rules.
- Revert a graph to its CPDAG.
- Pick a random DAG in a CPDAG.
- Apply final FCI rules.
- Revert a graph to its PAG.
- Pick the Zhang MAG in a PAG.
- Added tools in the Edit menu to undo graph manipualtions or redo them.
- Expanded the offerings of the Paths dialog in the Graph box.
- Added more path types to the Paths dialog to find paths and sets involving pairs or nodes (or single nodes) in the graph:
- Directed paths
- Semidirected paths
- Treks
- Confounder paths
- Latent confounder paths,
- Cycles
- All paths
- Adjacents
- Adustment sets
- Amenable paths
- Backdoor paths
- Added adjustment sets tools to the Paths dialog, with the capacity to check to see if a given set is an adjustment set.
- Added a parameter editor to the Paths dialog.
- Added more path types to the Paths dialog to find paths and sets involving pairs or nodes (or single nodes) in the graph:
- Made some algorithm changes.
- Pulled the version of FASK used in publication from the repository so that FASK results from those papers can be replicated. The parameters were adjusted a bit.
- Added a new experimental algorithm, LV-Lite, which begins with BOSS or GRaSP and substitutes score-based steps for subsequent steps in GFCI.
- Made LV-Lite correct from a d-separation oracle.
- Added clear logging to LV-Lite.
- Fixed MagSemBic code in algcomparison and added corresponding scores for Degenerate Guassian and Conditional Gaussian.
- Adjusted code of PC to ensure a CPDAG is output, by inserting new unshielded colliders to avoid Meek rule cycles.
- Added a new heuristic algorithm, BOSS-PAG, which runs BOSS and reports the PAG of the DAG it generates.
- Optimized the final FCI rule.
- Adjusted the repairFaultyPag() method in LV-Lite to guarantee that a legal PAG is output and added this option to FCI, FCI-Max, BFCI,
- Fixed an issue in the Degenerate Gaussian score.
- Added a new API, GridSearch, which presents the Algcomparison tool as an interface tool in the Tetrad interface.
- Added a number of new statistics to GridSearch.
- Added utility dialog to GridSearch, to sort comparison tables by a certain function.
- Added ability to specify user-defined data and/or knowledge for GridSearch.
- Made several issue fixes to GridSearch to make it work better for large comparisons.
- Added a tab to GridSearch to allow the user to view the graphical models described in comparison tables.
GRaSP-FCI, SP-FCI, GFCI, and LV-lite.
- Added a new tool to the interface to allow one to calculate total effects given adjustment sets for linear models.
- Made some changes the MarkovCheckEditor.
- Replaced regex filtering by internal regex filtering that selects rows for Ind(x, y | Z) where x or y is a node selected from a dropdown (or all nodes).
- Adjusted some parameters in the MarkovCheckEditor.
- Fixed some bugs/issues.
- Fixed a bug in the semidirected path code (and other recursive path-finding codes) that allowed a node to be repeated on a path.
- Added row settability to Conditional Gaussian and Degenerate Gaussian.
- Rendered several parameters in various LV searches more consistent in behavior.
- Ensured knowledge is correctly used for all LV algorithms.
- Fixed buggy row selection setters for various independence tests.
- Fixed readObject and writeObject methods throughout code to catch and localize serialization errors so they can be addressed more precisely.
- Updated Degenerate Gaussian score.
- Added an implementation for D-SEP (see CPS) and revised DAG to PAG to use it; this greatly speeds up DAG to PAG.
- Updated manual for recent changes.
What's Changed
- Include Non Gaussian cases for Local Precision and Recall tests for DAG and CPDAG respectively by @vbcwonderland in #1770
- Introducing LocalGraphConfusion and its corresponding Precision and Recall classes by @vbcwonderland in #1771
- Update getLocalIndependenceFacts to check on independence by @vbcwonderland in #1773
- Introduce shuffle trick to get more local P-values by @vbcwonderland in #1774
- Introduce plot data collection for different confusion statistics by @vbcwonderland in #1775
- Introduce plot data collection for different local graph confusion statistics by @vbcwonderland in #1776
- Introduce test and plot data collection for Gaussian CPDAG case for local Markov Blanket using Local Graph Confusion statistics by @vbcwonderland in #1778
- Generate plot data for Gaussian CPDAG Markov Blanket case using AdjP, AdjR, AHP, AHR confusion statistics by @vbcwonderland in #1777
- Non Gaussian DAG/CPDAG for Local Markov Blanket test case, confusion stats using LocalGraphConfusion by @vbcwonderland in #1780
- Generate plot data for Non Gaussian DAG and CPDAG for Local Markov Blanket test cases using AdjacencyConfusion and ArrowConfusion statistics by @vbcwonderland in #1779
- Fixed shuffle function and combine all shuffled independence test p vals for a target node into a flat list to feed into Anderson Darling Test by @vbcwonderland in #1781
- Finished up experimental LV-Lite and cleaned up the rest of the LV code. by @jdramsey in #1769
- Joe work 2024 6 1 by @jdramsey in #1784
- getAndersonDarlingTestAcceptsRejectsNodes Typo fix by @vbcwonderland in #1785
- Markov Check Test on same graph for different confusion matrix (Adj, AH, LG) for Gaussain DAG on Markov Blanket by @vbcwonderland in #1786
- Resolve NaN ADTest P value from empty independent facts cases by @vbcwonderland in #1787
- Markov Check, record lower recall nodes when plotting data by @vbcwonderland in #1788
- Padding for PR #1788 Markov Check, record lower recall nodes when plotting data by @vbcwonderland in #1789
- Fix node replacement issue for estimated graph for both local and global graph by @vbcwonderland in #1790
- Move all nodewise markov tests from CheckMarkov Unit tests and allow direct call for nodewise markov by @vbcwonderland in #1792
- MarkovCheck renaming to checkIndependenceForTargetNode by @vbcwonderland in #1794
- Update LocalGraph Confusion matrix calculation by @vbcwonderland in #1793
- Switching the precomputeCovariances parameter to true throughout. by @jdramsey in #1791
- fixing dg by @bja43 in #1798
- Include specify file for test check nodewise markov by @vbcwonderland in #1799
- joe_work_2024_6-13 by @jdramsey in #1800
- joe-work-2024-8-12 by @jdramsey in #1801
- joe-work-2024-8-14 by @jdramsey in #1802
- Version 7.6.5 code by @jdramsey in #1803
Full Changelog: v7.6.4...v7.6.5