Skip to content

Releases: cmu-phil/tetrad

v7.1.3

12 Apr 23:38
3961e15
Compare
Choose a tag to compare

Fixes for 7.3.3

  1. Fixed knowledge issue for PC.
  2. Fixed knowledge issue for IMaGES.

v7.3.2

12 Apr 22:17
70d8220
Compare
Choose a tag to compare

Fixes 7.3.2

  1. Fixed a problem with DiscreteBIC (setting structure-prior to 0 didn't work).
  2. Re-set up BOSS and SP for bootstrapping.
  3. Added citation block to the README.
  4. Added a method to save graphs in lavaan (https://lavaan.ugent.be/tutorial/) format in R.
  5. Capitalized all algcomparison algorithm wrapper names.
  6. Deleted unused algcomparison algorithm wrappers.
  7. In py-tetrad, insisting all of the algorithms and score wrappers deal in Java objects and that datasets and graphs be translated to Python objects outside the methods for now.
  8. In py-tetrad, renaming some methods for clarity for data translation.
  9. Fixed a knowledge bug for BOSS, where some acyclic graphs were triggering a cyclic exception.
  10. Re-added the CCD algorithm to the interface and py-tetrad per user request.
  11. Added a method to run Tetrad algorithms through py-tetrad in R. Here are the instructions.
  12. Fixed issues with PC, CPC, and PC-Max with knowledge not passed in through their algcomparison wrappers. This affected the 7.3.0 interface.
  13. Added a unit test to ensure knowledge is passed into algcomparison wrappers for interface and algcomparison stability.
  14. Fixed a couple of issues with the graph to DOT method so that Graphviz will correctly display current bootstrap graphs.
  15. Fixed a problem with GRaSP-FCI and some other searches where the wrong knowledge was passed into the bootstrapping API, so bootstrap ensemble graphs wouldn't follow knowledge.

Version 7.3.0

21 Mar 21:34
b93a20d
Compare
Choose a tag to compare

Updates for 7.3.0.

  1. Added a new Python project, py-tetrad, which shows how to integrate arbitrary Tetrad code into a Python workflow using JPype.
  2. Updated the existing examples that show how to incorporate causal-cmd into Python.
  3. Updated the command-line causal-compare tool to the latest Tetrad version.
  4. The string "new thread" was confusingly being printed sometimes--removed this.
  5. Changed the name of BicScore to DiscreteBicScore for clarity.
  6. Consolidated versions of PC, CPC, and PCMAX in the code to use the more up-to-date ones.
  7. Revised the constructors for CG, took structure prior out, and made it separately settable.
  8. Fixed some bugs in the mixed variable tests and scores so that they can successfully be run from Python.
  9. Renamed DegenerateGaussianScore--the old one as DegenerateGaussianScoreOld (deprecated), the new one as DegenerateGaussianScore.
  10. Moved a new implementation of Boss into the build from another branch.
  11. Rewrote the Tetrad README for clarity.
  12. Fixed issue with "high" bootstrap graph not being rendered correctly.
  13. Fixed calculation of true negatives for ArrowConfusion and BidirectedConfusion. (Thanks huiouyang16!)
  14. Fixed an issue with BOSS where the variables were returned in an order different from the original order.
  15. Switched FGES &c from storing node and model scores as "BIC" (using a BIC score) to "Score" (using the score from the constructor).
  16. Fixed a problem with the Bayes estimator where correct p-values, BIC scores, etc., were not displayed.
  17. Simplified the IndependenceTest interface, making default implementations for several methods in preparation for use in py-tetrad.
  18. Simplified the Score interface, making default implementations for several methods in preparation for use in py-tetrad.
  19. Added new knowledge functionality for the permutation algorithms BOSS, SP. Now searches are done within each tier separately, allowing for more extensive searches if tiered background knowledge is available, and, e.g., forbid within tier works as expected.

Version 7.2.2

21 Feb 16:08
bde2c9b
Compare
Choose a tag to compare

This is a bug fix release; Fixing some issues reported in 7.2.1 since release.

  1. Fixed a code error in BPC that was preventing proper functioning.
  2. Made CCD experimental, since it doesn't currently perform well.
  3. Made PagSamplingRfci non-experimental.
  4. Removed the conditional Gaussian option for CStaR, as it was throwing exceptions.
  5. Added an exception if CSTaR is not given tabular data.

This version has been double-checked for stability.

Version 7.2.1

19 Feb 20:52
265e0be
Compare
Choose a tag to compare

This is a bug fix release; Fixing some issues reported in 7.2.0 since release.

  1. FGES would pop up an irrelevant message if you tried to run it in the interface; fixed this.
  2. (Coding.) The external graph API required setting two different methods; switched to just setting the algorithm, which can be set as setExternalGraph(SingleGraphAlg(externalGraph)).
  3. Added exception for GRaSP and BOSS knowledge in case a permutation satisfying knowledge cannot be found.
  4. Fixed initial knowledge sort order for GRaSP and BOSS.
  5. Fixed a problem with launching snapshot versions from the command line using java -jar.
  6. In the interface, displaying a message if knowledge is supplied but the selected algorithm does not use knowledge.
  7. CStaR was missing from the manual; fixed.
  8. The descriptions for CStaR, GRaSP-FCI, and IMaGES did not appear in the interface; fixed.
  9. Removing experimental BOSS-MB from the interface since it's based on an outdated BOSS.
  10. FOFC and FTFC were not available for covariance matrices; fixed.
  11. Fixed an issue preventing Cov matrix==>SEM Estimator<==SEM PM from succeeding.

Version 7.2.0

14 Feb 22:01
4e196dd
Compare
Choose a tag to compare

Issues/updates for 7.2.0

  1. Fixed an issue with converting DAGs to CPDAGs with background knowledge for GRaSP, BOSS, SP, etc.
  2. Added a Wiki page https://github.com/cmu-phil/tetrad/wiki/Dealing-with-Tetrad-on-a-Mac--security-issues. This will be kept up to date if new details emerge.
  3. Switched beta distribution sampling to library method.
  4. Re-added menubar in SEM Estimator Editor, so that graph images can be saved there and the SEM IM being edited can be saved as XML, amont other things.
  5. Fixed a bug in GraphUtils which was doing the wrong check for the existsInducingPath(.) check.
  6. Added test for legal PAG and added this check to the relevant latent variable algorithms.
  7. Added facility in legal PAG check to return a reason why a graph is not a legal PAG, so the user can check.
  8. Removed the random element of the PAG to MAG converter so that exactly the same MAG is returned every time. This is so that those interested in why graphs are not labeled by the machine as legal PAGs can look to see which implied MAG is being judged.
  9. Added a legal MAG method factored out from the legal PAG method.
  10. Removed graph type enum--already have legal graph checks for DAG, DG, MAG, PAG, will add one for CPDAG, so will just check against the legal graph definition in the appropriate places.
  11. Implemented Zhang 2008 Theorem 2 as a revised PAG to MAG algorithm; substituting this for previous PAG to MAG algorithm.
  12. Fixed a bug in the nonparanormal transform where infinite transformed values (due to overflow of the inverse Normal distribution) were messing up the nonparanormal transform calculation and the histogram. Set these to the max or min of the data without the infinite values.
  13. Switching data saving to false by default for algcomparison.
  14. Setting parallelism down to # processors in algcomparison to accommodate large memory processes.
  15. Replaced "-" by "0.0" in algcomparison tables to simplify further statistical analysis of that data.
  16. Fixed a bug preventing checkout of development branch on Windows.
  17. Did some refactoring in the code to bring it more up to date: (a) Factored out underlining code from graph into separate class, Underlines, (b) factored out all path-checking graph code into a separate class, Paths, (c) factored out all graph persistence code into GraphPersistance, (d) factored out all data persistence methods into SimpleDataLoader, (e) moved highlighting from graphs to Edge, (f) turned Endpoint into a java enum, (g) Cleanup up all of these classes and organize their methods. This is to help people using the code to work. GraphUtils and DataUtils are what's left over now from these moves. Made all necessary changes in the codebase to accommodate these changes.
  18. Refactoring: Deleted classes from an old GraphConstraint API for checking graph features, no longer being used.
  19. Refactoring: Moved methods for generating random graphs into RandomGraph.
  20. Made the implementation of the uniform random graph generator private in RandomGraph.
  21. Moved all layout code in the tetrad.graph package into tetrad.graph.LayoutUtil
  22. Rewrote the Dag class to simply wrap EdgeListGraph and ensure that only directed nodes can be added that don't create cycles (using Paths).
  23. Add a menu item in the GUI to only check to see if a graph is a legal PAG (and color it) on demand.
  24. Closed several stale issues in the issues list. If anyone was hoping for any of those issues to be fixed, please open new issues with up-to-date information, as the codebase has changed considerably since, say, four years go.
  25. Added experimental algorithm, PAG-Sampling-RFCI.
  26. Added seed parameter for Sem Simulation, Bayes Net Simulation, and Conditional Gaussian Simulation, allowing (when set to something other than -1) for the exact same graphs and datasets to be simulated. This can be useful to try new algorithms on the same data as before.
  27. Switched Math to FastMath throughout the codebase. Should speed things up.
  28. Exposed 'alpha' parameter for both FOFC and BPC; for FOFC in addition exposed the 'checkSignificance' parameter for checking the significance of clusters.
  29. Fixed a bug in bootstrapping where if you set a seed results would different depending on whether you selected verbose or not.
  30. Fixed a bug in the knowledge editor where if a variable name didn't satisfy a certain spec, dragging and dropping between tiers would fail. Fixed this by no longer checking the variable name specs, so that for instance variable names with quotation marks will work. ":" is still treated differently (it indicated lag).
  31. Started a class called GraphTools to collect up some graph methods from graph theory.
  32. Printing out p-values to log for FOFC and BPC for the clusters returned by the algorithms.
  33. Fixed a residual issue in Edgewise comparison, where edge substitutions were reported in an unintuitive order.
  34. Added a class, MillisecondPrecision, that returns wall time, user time, or CPU time uniformly in milliseconds, with a class that will return one of these three according to an enum that is set. Refactored all timing code throughout to use this class.
  35. In particular, algcomparison class now uniformly returns CPU times, so that if the ElapsedTime() stat is added to the table it will be in CPU time.
  36. Added an experimental algorithm, BDCE (BOSS Divide and Conquer, Experimental).
  37. Fixed an issue in RFCI where with the same data and independence test (e.g., Fisher Z) different results were obtained on different runs. The problem was that a non-stable version of FasConcurrent was being used. Substituted the non-concurrent FAS instead.
  38. Adjusted the Paths.causalOrdering method (now called validOrder) so that it gives a valid causal order for either a DAG or a CPDAG. (Was just DAG.)
  39. Fixed an issue preventing FGES from running sometimes in concurrent settings, where multiple copies of FGES are run in parallel.
  40. Setting the default for 'verbose' to 'false'; to see the verbose output, the user will have to turn the verbose output on (in causal-cmd, select the --verbose flag). This is critical for bootstrapping and for causal-cmd.
  41. Fixed the verbose output from bootstrapping so that if verbose is set to default (which is now is by default) only the final graph with edge probability counts is printed.
  42. Fixed an array out-of-bounds error in ProbabiliticTest; now RFCI with ProbabilisticTest returns consistent results.
  43. Cleaned up the use of external graphs throughout the code.
  44. Took out legal PAG reasoning in Edgewise comparison; this hangs the interface for large graphs.
  45. Removed path statistics from the Stats List comparison in the GUI, as they hang the interface for a large graph.
  46. Changed default for Zhang-Shen risk bound to 0.1.
  47. For causal-cmd, a mechanism has been set up for specifying an external graph for an algorithm. Use the --external-graph parameter.
  48. Cleaned up the API in Tetrad for dealing with external graphs. This included pairwise orientation algorithms like R3, RSkew, etc.
  49. Adjusted code for FGES in the interface (and causal-cmd) so that it can use an external graph as a bound graph. That is, if you give it an external graph, it will give an orientation of that graph consistent with the data, as a CPDAG.
  50. Set the default penalty discount for the Kim et al. score to 1.
  51. Fixed a bug for the SEM and Bayes simulations where if you did a simulation and re-opened the simulation box some parameters would disappear.
  52. Made some adjustments to the GUI to allow comparison boxes to open without hanging for large, dense graphs.
  53. Fixed some instability in the RFCI algorithm.

Tetrad-7.1.3-1

17 Jan 23:53
be49d7e
Compare
Choose a tag to compare

Issue fixes for 7.1.3-1

  1. Added CStaR as an non-experimental algorithm. Note that the CStaR and Stability Selection tables only appear if logging is enabled, or else in the terminal/console if Tetrad is launched from the command line or run through causal-cmd.
  2. Consolidated BOSS1/2 using a parameter.
  3. Made a version of BOSS called BOSS-MB that calculates causes and effects of a variables or graphs over Markov blanket variables plus target. Allows for multiple targets. Added this as an experimental algorithm.
  4. Did some work on IMaGES to allow it to specify time series and do boostrapping.
  5. Pulled the Zhang-Shen score and the Kim et al. scores (for linear Gaussian high dimensional search) back into the current code.
  6. Renamed MBFS (Markov Blanket Fan Search) to "PC-MB" for clarity.
  7. Fixed a bug in DagToPag that was generating some reversed edges.
  8. Made the FCI complete final orientation ruleset the default throughout Tetrad.
  9. Turned on PAG edge coloring for DAG to PAG in GUi.
  10. Changed the display of PAG edge coloring; now solid edges are visible, dashed invislble, thick edges definitely direct, think edges not definitely direct.
  11. Added cancel buttons to the Random Graph popup in the GUI.
  12. Fixed the Paths dialog to get rid of duplicates and rendering issues.
  13. Added notation for latent variables to the Paths dialog (putting the latents in parentheses) to make it easy to find latent confounders for PAGs.
  14. Fixed the Fruchterman-Reingold layout so that it doesn't hang.
  15. Fixed the Bayes PM parameter setter in the GUI. Made 3-valued the default.
  16. In Graph displays, put Graph/Edges selector into a tab on the right of the display.
  17. For bootstrapping, fixed some counting bugs.
  18. For Bayes IM, made random initialization the default.
  19. Changed default coefficient range to (-1, 1) throughout.
  20. Added some more dialogs to the simulation box to make sure user want to simulate a new model &c.
  21. For linear, Gaussian models, made EBIC with gamma 0.8 the default score.
  22. Added Kim et al. scores as an optional linear, Gaussian scores, following GIC theory of Kim et al.
  23. Some updates to data loading.
  24. Some fixes to the data editor.
  25. Rescaled the scatterplot, q-q plot, and histogram.
  26. Using Zhang's algorithm for PAG to MAG.
  27. Putting linear Fisher model back. Still useful for simulating data from large LG models.
    1, Fixed time series simulator in simulation box.
  28. Added Erdos-Renyi DAG graph type.
  29. Added method to generate times series model automatically within various search algorithms. (Specify a maximum lag, automatically generates forbidden knowledge.)
  30. Fixed several bugs in bootstrapping; it appears to work correctly now for all algorithm, except for the time series/bootstrapping combo for IMaGES.
  31. Fixed IMaGES so that it can take an arbitrary score.
  32. Turned caching back on in the Teyssier scorer (and off in the SEM BIC score), to accommodate different score types.
  33. Made several adjustments to the Markov checker.
  34. Refactored Knowledge, fixing several bugs.
  35. Added some additional statistics to the algorithm comparison and StatsListEditor--notably some PAG comparison to the true DAG statistics (which appear in the GUI when you compare an estimated PAG back to the true DAG with latents).
  36. Added an intron optimization to BOSS.
  37. Switched from floats to doubles for scores.
  38. Fixed the edge comparison dialog so that now it tells the truth.
  39. Some cleanup/correction to the algorithm Comparison class.
  40. (For coders.) Added DAG to PAG method in SearchGraphUtils for convenience.
  41. Added some bidirected edge stats.
  42. Added a note in contributors section for SEI contributors.
  43. Added code for required edges for GRaSP and BOSS.
  44. Added some context menus in Search and Simulation boxes where possible for saving graph images, showing graph properties, etc., directly without having to make a graph box first.
  45. (For coders.) Got rid of IKnowledge interface and renamed Knowledge2 to Knowledge throughout (since it was the only remaining implementation of Knowledge.
  46. Added some new graph stats to the Graph Properties dialog.
  47. Got rid of unnecessary graph displays in the comparison editors. (These were slowing things down.)
  48. Got rid of some non-working graph layouts.
  49. Fixed edges so that once again for X-->Y and Xo->Y edges the heads of these edges are to the right. Fixed several corresponding such bugs throughout the code.
  50. Added an API to set graph types (DAG, PAG, unspecified). When random graphs are generated, they are stamped as DAGs, and then algorithms find PAGs, they are stamped as PAGs.
  51. Fixed several errant alternate code notations for < or >.
  52. Switched to using the Gamma.logGamma function in the Apache library.
  53. Fixed several unit tests.
  54. Changed bookmarking in TeyssierScorer. Now you can bookmark once and then to go that same bookmark repeatedly after that.
  55. Added function to compute edge probabilities.
  56. Added edge probability column to edge table.
  57. Fixed label for edge probabilities.
  58. Fixed edge coloring.
  59. Fixed missing edge properties.
  60. Added a menu item to the Graph menu in relevant components to set the graph type to PAG (and therefore do PAG coloring).
  61. Set font for logging text area to monospaced to accommodate CStaR.
  62. Added edge numbering to bootstrap edge probability table.
  63. Added path statistics to Stats List Comparison--ancestor F1, semidirected path F1, no semidirected path F1. Can compare arbitrary graphs, with varying interpretations.
  64. Added edge marking statistics to Stats List Comparison--arrow precision, tail (-->) precision, % bidirected edges implying latent confounders, number of edges of various sorts.
  65. Updated manual to include recent details.
  66. Added Poisson Prior linear, Gaussian score, which uses the Poisson distribution as a prior.
  67. Added Zhang Shen Bound linear, Gaussian score, which adapts theory by Zhang and Shen.
  68. Added knowledge sensitivity to SP and SP-FCI.
  69. Added choice of DAG/CPDAG/PAG for comparison graph for Edge Comparison and Misclassifications Comparison as in Stats List Editor.
  70. Added row numbers to Edge Probability Table for bootstrapping.
  71. Added menu items in Graph box to save and load graphs in PCALG PAG format.
  72. Fixed saving and loading of graphs with additional bootstrap edge probability information in text format.
  73. Re-added the parallelized option for the algcomparison API.
  74. Set FGES to be single-thread by default; to to multithreading, the flag "parallelized" needs to be set to true (in causal cmd, "--parallelized".
  75. Added a seed parameter to the bootstrap API, so that successive bootstrap runs (even with different algorithms) will use the same datasets (if a seed is set).
  76. Added a menu item to the Graph box that allows the PAG designation for graphs to turned on or off. When graphs are marked as PAGs, the PAG graph coloring is applied.
  77. Fixed the graph comparison type choosers for the edgewise, misclassification, and stats list comparisons so that they remember the last choice you made.
  78. In the stats list comparison, moved the new path statistics to the bottom of the list for backward compatibility.
  79. Fixed the loading of text graphs with bootstrap information so that they will be compatible with the causal-cmd revision.
  80. Made all random graph dialogs cancelable.
  81. Updated the date on the manual.

Tetrad-7.1.2-2

08 Jun 21:23
13b64f5
Compare
Choose a tag to compare

This release contains the following fixes:

  1. Fixed a problem in the data editor in the GUI where if you delete a column sometimes it would just delete the variable name instead.
  2. Changed defaults for (coef low, coef high) to (0.0, 1.0).
  3. Renamed “depth” back to “maximum size of conditioning set”.
  4. Fixed an issue with knowledge where for oracle searches the knowledge wan’t being passed into the algorithm.
  5. Fixed a problem in PC where an exception was being thrown because of a null pointer in a map.
  6. Revised method for selecting random seeds.
  7. Re-added SemBicTest as per request.
  8. Non-Gaussian orientation methods like R3 were not working; fixed this.
  9. Fixed a null pointer exception in PC.
  10. Knowledge wasn’t being passed to the search box in the GUI app; this has been fixed.
  11. Fixed a bug in FCI orientation where some circles were being prevented from being reoriented as arrows illegitimately.
  12. Fixed some bugs in Degenerate Gaussian and Conditional Gaussian scores (for the mixed case).
  13. Fixed bugs affecting equality judgments for edges and graphs.
  14. Fixing default linear, Gaussian score to BIC, penalty 2.
  15. Per request, removed TsImages and renamed TsFCI to SvarFCI and TsGFCI to SvarGFCI to align with publication.
  16. Consolidated internal methods for getting a DAG from a CPDAG.
  17. Fixing the problem where for a fixed IM you can’t get a new dataset when you click Simulate.
  18. Changed “Pattern” to “CPDAG” throughout the code for consistency.
  19. Added a new algorithm, GRaSP, to the search box, with manual entry.
  20. Fixed nonparanormal transform so that it copies over discrete columns.
  21. Turning off randomness inside the algorithm for GRaSP (not for initial permutations per run)
  22. Set GRaSP so that by default it’s not random.
  23. Debugged forbidden knowledge in GRaSP
  24. Fixed a problem with testwise deletion where correlation matrix calculation was throwing an exception for missing data
  25. Separated out PC, CPC, PC-Max in place of PC-All.
  26. Put edge display in the graph editor into a separate tab.
  27. Fixed discrete to continuous transform so that it uses actual numerical discrete values (instead of indices) if all categories are numerical.
  28. Fixed knowledge so that it can be loaded in the interface without a parent source of variables.
  29. In the code, got rid of the problematic CpdagToDag, replaced it with a call to the dagFromCpdag method in SearchGraphUtils
  30. Fixing the problem where for a fixed IM you can’t get a new graph when you click Simulate.
  31. Moved Knowledge up to after Search in the Session window to better associate it with search.
  32. Passed knowledge into GRaSP.
  33. Added GRaSP-FCI.
  34. Adjusted options for FASK for non-skew adjacency search.
  35. Fixed the search box so that it can take as inputs a graph source, data, and knowledge.
  36. Fixed FASK so that it can take both a test and a score (score for FGES option).
  37. Allow non-Gaussian errors in the SEM IM.
  38. Added citation instructions to the manual.
  39. Fixed a bug in the hashcode methods of Edge and EdgeListGraph where node order was being checked prior to giving the equality problem to the equals() method.
  40. Fixed log4j vulnerability
  41. Fixed a bug in FCI orientation where some circles were being prevented to being reoriented as arrows illegitimately.
  42. Fixed a bug in the Data Editor where if you selected a range of columns but the mouse was released in a variable name field, the variable name would be deleted
  43. Fixed Knowledge Box bug where changes were detected when not changes were made.
  44. Removed ineffectual calculator menu item from the data editor.
  45. Fixed problem with FGES not honoring single thread request.
  46. Made simulation a graph source
  47. Fixed size of QQ plot.
  48. Changed “More information on graph edge types” to “More information on graph edge types and colorings” to avoid confusion.
  49. Eliminated uses of deprecated DataReader from code.
  50. Added directory structure instructions to the formatting file in examples repository.
  51. Adjusted graph text loading algorithms so that numbers aren’t needed for loading graph text files.
  52. Fixed sizes of histograms and scatterplots.
  53. Fixed quality of saved PNGs.
  54. Fixed knowledge so that if you change the variables for a dataset knowledge is cleared and the new variables are used. Otherwise the knowledges is kept.
  55. Fixed a problem in FAS (and so PC, FCI, etc.) where the search was not always doing depth 0. (This is a novel problem.)
  56. Fixed a problem with Fisher Z where it was sometimes using the covariance matrix instead of the correlation matrix to calculate conditional independence using the precision matrix method.
  57. Fixed the problem with the run button not always being re-selected in the search.
  58. Disabled remote job execution to allow the Tetrad GUI to launch properly.
  59. Fixed an infinite loop in the possible d-sep search in FCI.
  60. Reintroduced a switch for FCI to turn off the possible d-sep search (default on).
  61. Removed the Linear Fisher simulation model. Again. Somehow it got back in.
  62. Made sure the in the manual it is stated that for the SVar algorithms the time lag converter needs to be used to format the data.
  63. Fixed the graph editor so that it remembers the last layout that was done.
  64. Added dialogs to make it clear to the user when they are simulating a new dataset; allows them to cancel the operation.
  65. Ensured that all algorithms in the Search box have at least a minimal description in the description box there (gotten from the manual).
  66. Fixed size of Paths dialog so it fits on a small screen.
  67. Added FASK-PW as a pairwise algorithm.
  68. Fixed edges panel in Search to be a separate tab.
  69. Adjusted the size of the graph editor in the search box so that it fits on a small screen.
  70. Added colors to the Compare to DAG/PAG/CPDAG menu items for emphasis.
  71. Set random graph generator for GraphEditor to the same as that of the other graph editors; MIM and scale-free graphs were not being generated there.
  72. For FOFC, added an independence test (in addition to the tetrad test) and print out (if not null) whether for each cluster the variables in the cluster are marginally dependent pairwise.
  73. Switched edges display in time lag graph editor from split pane to tabbed pane.
  74. Changed name of Edit menu in time lag graph editor to “Number-of-Lags” and put the number of lags in the name of the menu.
  75. Added a confirm messages to the Save As action to make sure the user wants to save a session to a particular directory, to avoid common mistakes like this.
  76. Increased the snap-to-grid grid size to 20 pixels (from 15) to make it a little more obvious when you’re aligning boxes in the graph editor.
  77. Added annotations for relevant scores/tests. The new categories are “Linear/Gaussian”, “Mixed Discrete/Gaussian”, “General”, and “All”.
  78. Adjusted Search box to reflect the new categories for scores/tests.
  79. Changed “Number of latent variables” in interface to “Number of additional latent variables” for clarity.
  80. Added an Erdos-Renyi graph type (edge probability fixed, # edges not fixed).
  81. Relabeled Random Forward and Erdos-Renyi graphs types to specify “Fixed Average Degree” and “Fixed Edge Probability”, respectively, for clarity.
  82. Fixed test/score filters and the spacing for them in the Search box.
  83. Added an algorithm description for FASK-PW.
  84. Fixed GRaSP so that it sets an attribute for score rather than number of edges.
  85. Went through long descriptions in the manual and shortened ones that were too long to appear in the interface properly (“Twitter limit”, 140 characters).
  86. In the code, changed “initialGraph” to “externalGraph” throughout and removed dangling uses of it in PC, FGES, etc. Still used for pairwise algorithms.
  87. Fixed problem where the specification for the non-Gaussian error type was not always being used in the SEM IM simulation.
  88. Fixed an issue in FASK where some 2-cycles were being inferred against claims in the documentation.
  89. Fixed the stats table so that the parameter editor remembers the previously selected default model and that if a Simulation is one of the parents that is taken to be the default model.
  90. Fixed an issue with Junction Tree updater where it was showing a node index problem.
  91. Fixed an FCI knowledge issue found by Dan--actually other fixes I did appear to have solved this.
  92. Fixed the SEM Estimator Editor so that the display window resizes when you drag the containing window to a different size.
  93. Fixed an issue in FCI-Max (orientations from background knowledge were not being done).
  94. Removed the Layered Drawing layout from the layouts menu.
  95. Made Junction Tree Updater the default discrete updater.
  96. Expanded instructions for selecting default initialization for Bayes IM: “Manually: Probabilities tables initially blank” versus “Randomly: Random probabilities are assigned, which can then be edited”, defaulting to Randomly.
  97. Changed default number of categories for Bayes PM to 3 (trinary).
  98. Fixed broken functionality in Bayes PM initiialization and set the choices for Bayes PM initialization to 3-valued or range (default 2-4).
  99. Changed default for Dirichlet Bayes IM to symmetric prior.
  100. Fixed initialization bug for estimating an ML Bayes model from a Bayes PM model and a discrete dataset, when the IM is Dirichlet.
  101. In text graph loading, ignoring attributes saved out with file, which were preventing loading. (Maybe want to parse these later.)
  102. Re-added Discrete BIC score to the list of discrete scores.
  103. Fixed issue in Junction Tree Updater where updates done by the learning algorithm were not shown in the interface.
  104. Moved the Random Graph menu item to the top for every graph editor, in the respective Graph menus.
  105. Fixed the Edge tab in the graph editor so that directed edges aren’t flipped to point right to left for alphabetic reasons.
  106. Removed the...
Read more

Tetrad v6.9.0

03 May 23:55
e53bc0c
Compare
Choose a tag to compare

Changes in this release:

  • Bugs in FGES were fixed; optimization ensued.
  • Scores were updated and revised.
    • The SEM BIC score was revised.
    • The Extended BIC Score (EBIC) was added to deal with high dimensions.

See pull request #1323

Tetrad v6.8.1

23 Feb 01:50
Compare
Choose a tag to compare

Changes in this release:

  • Fixed issue where knowledge is not working properly.
  • Fixed other issues. See pull request #1318 for more information.