Home
User`s Manual - Research
Contents
1. A lt HIERARCHICAL gt Wgt 14 4 9999 lt NUMERIC gt lt DECIMALS gt dl lt WEIGHT gt Wal 19 Y 999999999 lt NUMERIC gt Waie2 283 10 99999099999 lt NUMERIC gt lt DECIMALS gt 2 20 ARGUS 3 3 user manual 4 3 2 Specify Metafile for tabular data When a tabular datafile has been selected the metadata window will have a different form Clicking on Specify Metafile gives the opportunity to either edit the metafile already read in or to enter the metafile information directly at the computer Below is displayed the Specify metafile window for tabular input data Above the list of variables the separator used to separate the variables in the datafile can be specified Here the variables can be specified or edited as required The options are Explanatory Variable The spanning variables used to produce the table Response Variable The variable used to calculate the cell total Shadow variable The variable is used as a shadow variable Cost variable The variable is used as the cost variable Lower prot Level The lower protection level Upper prot Level The upper protection level Frequency This indicates the number of observations making up the cell total If there is no frequency variable each cell is assumed to consist of a single observation topN variable This shows if
2. ARGU Version 3 3 User s Manual Statistics Netherlands Project ESSnet project P O Box 24500 Date December 2008 2490 HA The Hague BPA no 769 02 TMO The Netherlands email aj hundepool cbs nl Contributors Anco Hundepool Aad van de Wetering and Ramya Ramaswamy Peter Paul de Wolf Modular Hitas Sarah Giessing GHMiter Matteo Fischetti and Juan Jos Salazar Optimisation Jordi Castro Network solutions Philip Lowthian manual Contents Pr a o a e Se Use 1M ott A Ee SN 4 About the name ARGUS wi icccscsecscsuseuscssevsdeccevseeseucepssveseacevuseuscossvesaacevuseesedscvessecaadseusedessadeecsvusvesesedes 4 O AN 5 ACOMODO aaa he han a 5 The CASTO ed ii 5 The CENEX Proein alas a 7 The ESSN Et prO Staind a uments 7 1 O 8 2 Producins safe tables nei noero e r ee ate edn a tees 8 2 1 Sensitive cells in magnitude tables ccccccccsssssseessecesceeseeeseeeeseeeseesaeeeseeessecsseseeeeseeeeseeeseneaeee 8 2 2 Sensitive cells in frequency count tableS oooooonoccnoocnocccooncnononononanoconncnoncnnn non nrononcnn crono non cncnnnannos 10 2 3 Table red si iii nia E TEE R E EE S E ES 10 24 Secondary Cell S ppressSi gn escri role 10 2 5 Information loss in terms Of cell COStS 0 0 eeeescesseeseeseeseceeeseeseceseescesceesecseeesecseeeesseeaeeeseeeeneeens 11 PS O A ON 11 2 7 The Hypercube GHMITER m thode eriein nono non nooo n nono nono ncnon ron nncnnncna nico 11 27 1 A RA 11 2 7 2 The ARGUS implementation
3. In the first way the algorithm will look at the number of additional suppressions additional to those that are already suppressed because they a primary unsafe or because they were selected as secondary suppression in another subtable that would be caused by the selection of a particular candidate hypercube If there is more than one hypercube that would result in the same smallest number of additional secondary suppressions at second priority the method will select the one with the smallest sum of costs associated to the suppression of the corresponding additional secondary suppressions Cell costs associated to a cell are indeed a logarithmic transformation of the cell value plus eventually a large constant if the cell is a marginal cell of the current sub table After all sub tables have been protected once the procedure is repeated in an iterative fashion Within this procedure when cells belonging to more than one sub table are chosen as secondary suppressions in one of these sub tables in further processing they will be treated like sensitive cells in the other sub tables they belong to The same iterative approach is used for sets of linked tables It should be mentioned here that the hypercube criterion is a sufficient but not a necessary criterion for a safe suppression pattern Thus for particular subtables the best suppression pattern may not be a set of hypercubes in which case of course the hypercube method w
4. the first variable specified The user has the option of selecting an optimisation method PPRN and Dykstra Both optimisation methods are available free of an additional licence By default the Dykstra solution is advised t ARGUS 3 3 user manual 73 Parameters for Network solution Parameters for the hierarchical network flow solution m Solver type m Order of the primaries gt Normal Ascending C Descending As the network solution is an heuristic to find an approximation of the real optimal solution it cannot be expected that always an optimal solution is found Nevertheless it is guaranteed that at least a good feasible solution is found in a relatively short time The order in which the primaries are provided to the network algorithm could influence the solution found Therefore three options are available to order the primaries Choose the suppression method After selecting one of the options click the Suppress button t ARGUS will run and display a protected table after informing the user of the number of cells selected for secondary suppression and the time taken to perform the operation The secondary suppressed cells will be shown in blue 74 t ARGUS 3 3 user manual Table Region x Size Yar2 16 847 647 4 373 664 1 986 129 1 809 246 578 289 3 703 896 124 336 526 279 2 234 995 818 286 4 576 116 485 326 3 664 560 426 230 4 193 971 2 752 743 1 441 228 25 2 711 808
5. top of the table where the user can select a code This will show the corresponding slice of the table Change View For a 3 dimensional table this window is as follows Change View Regio Industry Code T ARGUS 3 3 user manual 79 Table summary Pressing table summary provides a table summary giving an overview of the number of cells according to their status The example shown here refers to the case after secondary suppression has been performed Summary for table no 2 3 x E R 77 Size 9 24503 Region 18 Sale manual Unsafe 1 gt Unsafe request Unsafe Freq Unsafe Zero cell Respons Var aaa mania ar2 Secondary Secondary fr man Empty non struct Shadow Var Empty 4 Cost War Total 162 256338 10108588104 101085881 04 da mk GoOoo0 0o00o0o00oO 1124 304089 304089 o 2 0 0 0 0 0 9 0 0 0 OOO24aDOOOO OOO2AaD0O0OOOO Protected by Modular The headings in the summary window are as follows Freq The number of cells in each category rec The number of observations in each category Holding The number of holdings in each category 0 if holdings are not used for this table Sum Resp Total cell value in each category SumCost The sum of the cost variable 3 dig separator This removes or inserts the character separating the thousands for the values in the table Output View This option allows the table to be shown
6. when tabular data are entered only one table may be entered thus making the protection of linked tables impossible t ARGUS 3 3 user manual 81 4 5 The Output menu 4 5 1 Output Save Table There are four options of storing the tables E Save Table E i x Format CSV format C CSV for pivot table J Add Status Suppress empty cells C Code value E Du ppr s Sig Salt Add Status SBS format Intermediate format J Status only 1 As a CSV file This Comma Separated file can easily be read into Excel Please note the Excel should interpret the comma as a separator If your local settings are different you could use the Excel option Data Text to Columns This a typical tabular output maintaining the appearance of the table in t ARGUS 2 A CSV file for a pivot table This offers the opportunity to make use of the facilities of pivot table in Excel The status of each cell can be added here as an option Safe Unsafe or Protected for example The information for each cell is displayed on a single line unlike standard csv format 3 A text file in the format code value this is separated by commas Here the cell status is again an option Also empty cells can be suppressed from the output file if required The information for each cell is displayed on a single line similar to the CSV file for a pivot table 4 A SBS format file This file contains the information required by Eurostat for different su
7. 1 lt WEIGHT gt vari 19 Y 999999999 lt NUMERIC gt WaeZ 28 10 9999999999 lt NUMERIC gt lt DECIMALS gt 2 Explanation of the file and details of the variables Year For this explanatory spanning variable each record begins on position 1 is 2 characters long and missing values are represented by 99 It is also recodeable implicitly stating that it is an explanatory or spanning variable used to create the tables IndustryCode For this variable each record begins on position 4 and is 5 characters long Missing values are represented by 99999 As well as being recodeable this variable is hierarchical and the hierarchy structure is specified The first 3 characters are in the top hierarchy level the 4 character in the second level and the 5 character in the lowest level As Industry is a 5 digit variable there are 5 digits specified for the hierarchical structure This is the reason for the 2 zeros at the end Size For this variable each record begins on position 9 and is 2 characters long and missing values are represented by 99 It is also recodeable Region For this variable each record begins on position 12 and is 2 characters long Missing values are represented by 99 An example of a codelist file can be found in region cdl and of a hierarchical codelist file in region2 hrc Contents of these files are shown here region cdl 1 Groningen 2 Friesland 3 Drenthe 4 Overijssel 5 Flevol
8. 2 320 534 5 5 719 049 398 062 223 990 96 997 642 238 36 311 93 589 345 803 166 535 648 972 63 767 537 911 47 294 701 549 488 613 212 936 659 680 348 039 221 332 90 309 515 003 32 132 94 957 251 358 136 556 543 570 75 442 430 851 37 277 602 281 392 395 209 886 505 043 2 799 074 688 962 354 711 241 913 92 338 534 147 25 770 110 930 251 188 146 259 663 897 87 305 515 020 61 572 618 037 363 490 254 547 M 3dig separator Select Table Change View I Output View Table Summary 756 529 418 778 258 233 79 518 620 392 18 150 81 799 303 377 217 066 775 132 59 953 643 762 71 417 647 021 402 925 244 096 6 510 758 385 1 549 049 385 466 529 863 393 385 219 127 1 392 096 11 968 145 004 1 083 254 151 870 1 944 545 198 859 1 537 016 208 670 1 625 068 1 105 305 519 763 Write table Close r Cell Information Value E Status Empty Cost Shadow ny contributions ol Top n of shadow Holding a level Request 0 r Change status Set to Safe Set to Unsafe AO Set to Protected All Non StructE mpty Recode r Suppress HyperCube Modular C Network Optimal Suppress C Rounding _Undo Suppress Suppress When the user is satisfied with the table it can be saved see section 4 5 1 for the possible formats Press the write table button This is the same button as via the menu O
9. 20 244 1 800 30 355 1 T ARGUS 3 3 user manual 59 800 20 644 2 800 30 433 2 800 30 323 3 800 30 343 3 900 20 23 4 900 20 43 5 900 20 34 5 900 20 53 5 900 30 700 6 900 30 200 6 900 30 60 i 900 30 40 8 900 30 10 9 Assume the following safety rules Threshold rule At least 3 enterprise groups higher level units in a cell P rule The sum of all the reporting units lower level units excluding the largest 2 must be at least 10 of the value of the largest There are 4 cells in the table along with the margins The cell we are interested in here is Cellref 900 30 5 reporting units 4 enterprise groups At the reporting unit the values are 700 200 60 40 10 At the enterprise group the values are 900 60 40 10 This rule has been designed so that when the P rule is applied to this cell a With reporting units the cell is safe 10 60 40 110 This is greater that 10 of the largest value 70 so the cell is safe b With enterprise groups the cell is unsafe 40 10 50 This is less than 10 of the largest value 90 so the cell is unsafe Apply the threshold rule to the enterprise groups Hold 3 and P rule to the reporting units Once again a safety range percentage is required The output from the application of this rule is shown below Two cells fail the threshold rule with the holding rule applied The threshold rule has been applied correct
10. 31 1999 Methoden zur Sicherung der Statistischen Geheimhaltung in German Repsilber D 2002 Sicherung pers nlicher Angaben in Tabellendaten in Statistische Analysen und Studien Nordrhein Westfalen Landesamt fiir Datenverarbeitung und Statistik NRW Ausgabe 1 2002 in German Giessing S and Repsilber D 2002 Tools and Strategies to Protect Multiple Tables with the GHQUAR Cell Suppression Engine in Inference Control in Statistical Databases Domingo Ferrer Editor Springer Lecture Notes in Computer Science Vol 2316 Giessing S 2003 Co ordination of Cell Suppressions strategies for use of GHMI TER Proceedings of the Joint ECE Eurostat work session on statistical data confidentiality Luxembourg 7 9 April 2003 2 8 Optimisation models for secondary cell suppression t ARGUS applies different approaches to find optimal and near optimal solutions One of these approaches is based on a Mathematical Programming technique which consists of solving Integer Linear Programming programs modelling the combinatorial problems under different methodologies Cell Suppression and Controlled Rounding The main characteristic of these models is that they share the same structure thus based only on a 0 1 variable for each cell In the Cell Suppression methodology the variable is 1 if and only if the cell value must be suppressed In the Controlled The optimisation models have been built by a team of resea
11. A typical batch file would look like this note that everything after a will be treated as comment datafile lt OPENMICRODATA gt C Program Files TauARGUS datatau_testW asc metafile lt OPENMETADA A gt lt SPECIFYTABLE gt C Program Files TauARGUS datatau_testW rda Explresp lshadow cost 1 unit 2 fre ISS eto aa as Matas t ARGUS 3 3 user manual lt SAFETYRULE gt P 20 3 FREQO 3 30 ZERO 20 lt SPECIFYTABLE gt Size Year var2 var3 var3 lt SAFETYRULE gt NK 3 70 FREQ 3 30 ZERO 20 lt READMICRODATA gt lt SUPPRESsS gt GH 1 75 lt WRITETABLE gt 1 1 1 C Program Files TauARGUS dataxl csv lt O UIE RIES Sy GH 2 75 lt WRITETABLE gt 2 2 1 C Program Files TauARGUS datayll csv lt SUPPRESS gt MOD 1 lt WRITETABLE gt 1 3 0 C Program Files TauARGUS datax20 txt lt SUPPREISo gt MOD 2 lt WRITETABLE gt 2 4 0 C Program Files TauARGUS datay20 tab ESAS ODT gles lt WRITETABLE gt 1 1 1 C Program Files TauARGUS datax3 csv lt GOINTERACTIVE gt The batch file can be used in a real batch environment as well Just invoke t ARGUS with the command Taupath TAUARGUS param param2 param3 where Taupath is the name of the directory where you installed t ARGUS paraml is the name of
12. ARGUS uses commercial LP solvers Traditionally we use Xpress as an LP solver This package is kindly made available for users of t ARGUS in a special agreement between the t ARGUS team and Dash optimisation the developers of Xpress Alternatively T ARGUS can also use the Cplex package Users can choose either solver to link to t ARGUS provided of course they purchase a license for the solver chosen However users already having a licence for one of these packages for other applications can use their current licence for t ARGUS as well The CASC project The CASC project is the initiative in the 5 framework to explore new possibilities of Statistical Disclosure Control and to extend further the existing methods and tools A key issue in this project is an emphasis more on practical tools and the research needed to develop them For this purpose a new consortium has been brought together It has taken over the results and products emerging from the SDC project One of the main tasks of this new consortium was to further develop the ARGUS software The main software developments in CASC are U ARGUS the software package for the disclosure control of microdata while t ARGUS handles tabular data The CASC project has involved both research and software development As far as research is concerned the project has concentrated on those areas that were expected to result in practical solutions which can then be built into the software Therefore the
13. CASC project has been designed t ARGUS 3 3 user manual 5 round this software twin ARGUS This will make the outcome of the research readily available for application in the daily practice of statistical institutes CASC partners At first sight the CASC project team had become rather large However there is a clear structure in the project defining which partners are working together for which tasks Sometimes groups working closely together have been split into independent partners only for administrative reasons Institute Short 1 Statistics Netherlands CBS 2 Istituto Nationale di Statistica 3 University of Plymouth UoP ISTAT 5 University of Southampton SOTON 6 The Victoria University of Manchester UNIMAN 7 Statistisches Bundesamt StBA NL I D 8 University La Laguna ULL 9 Institut d Estadistica de Catalunya IDESCAT 10 Institut National de Estad stica INE 11 TU Ilmenau 12 Institut d Investigaci en Intellig ncia Artificial CSIC 13 Universitat Rovira i Virgili URV ES 14 Universitat Polit cnica de Catalunya UPC Although Statistics Netherlands is the main contractor the management of this project is a joint responsibility of the steering committee This steering committee constitutes of 5 partners representing the 5 countries involved and also bearing a responsibility for a specific part of the CASC project CASC Steering Committee Institute Country Responsibility
14. Control e View Table View the table after the safety rules for primary suppressions have been applied This is a key window in which the possible options to make the table safe are discussed such as recoding and the application of the required method of secondary suppression e Save Table The user can save the safe table in a number of formats as will be seen in section 3 2 2 3 1 Preparation To start disclosure control with t ARGUS there are two possible options 1 Open a microdata file from which a table can be constructed 2 Open an already constructed table In this tour we only deal with how to open a fixed format microdata file sections 3 1 1 to 3 1 3 If an already constructed table is to be used then go to the Reference chapter section 0 Some methods for secondary suppression the modular and the optimal require an external linear programming solver The choice of this solver can be decided before opening a dataset The choices are either Xpress or Cplex the different implementations of the search algorithms described in the Theory chapter section 2 8 This information can be supplied by clicking on Help Options to give the following window Mm ARGUS 3 3 user manual Options 3 xi m Colors Safe Unsafe Singleton manual Safe manual Unsafe manual Unsafe Protected Unsafe request Secondary Unsafe Freq Secondary from man Unsafe Zero cell Empty non struct Unsafe Singleton Em
15. Statistics Netherlands Netherlands Overall manager Software development Istituto Nationale di Statistica Italy Testing Office for National Statistics UK Statistisches Bundesamt Germany Tabular data Universitat Rovira i Virgili Spain Microdata The CASC tabular data team EA aS wt INE ONS t ARGUS 3 3 user manual The CENEX project In 2006 thanks to the CENEX project on SDC further extensions on the ARGUS software have been made The CENEX Centres of Excellence in Statistics was an initiative by Eurostat to further foster the cooperation between the NSI s in Europe The emphasis was more on using and promoting the current state of affairs by organising courses meetings Also further testing of ARGUS has led to several improvements The batch version is becoming more and more important opening options to link t ARGUS to packages like SuperCross but also to facilitate the building blocks project of Eurostat Many improvements including the error checking of the batch version have made A new special output format for transmitting data to Eurostat the SBS format has been added Recently also the controlled rounding has been included in t ARGUS The CENEX project was led by Statistics Netherlands The NSI s of Italy Germany UK Sweden Slovenia Estonia and Austria participated The University Rovira i Virgili Taragona also participated The ESSNet project The ESSNet pro
16. as it will be output with suppressed cells primary and secondary replaced by a X 4 4 3 Linked Tables This option is available when the tables specified have at least one explanatory or spanning variable in 8000 CO ARGUS 3 3 user manual common and the same response variable An example is shown Specify Tables olx m cell items m explanatory variables response variable YEAR Sbi GK GK gt lt shadow variable War gt lt Regio Var2 m cost variable unity frequency C variable r safety rule Dominance rule 3 number i 1 i i 75 percentage 1 EQUEStIINE i N i ercent 0 e E i Use holdings into Z Minimum frequency 7 l Apply Weights Manual safety range gt Min frequency range fo wie 130 Se Xen Apply Weights m Sate Rule 5 MinFreq 1 Shadow Var2 1 GK Regio a 3 k 75 MinFreg 1 War2 Shadow War2 1 YEAR GK n 3 J al Cancel Compute tables After the tables have been computed under the Modify Tables option Linked Tables is available The following table appears Clicking on Go will protect the tables simultaneously using the hypercube method Linked tables x There are 2 tables GK X Regio YEAR X GK Do you want to protect them simultaneously Cancel This procedure is only available when microdata is read into the program Currently
17. dealt separately using the mixed integer approach The number of tables within a group is determined by the number of parent categories the variables have one level up in the hierarchy A parent category is defined as a category that has one or more sub categories Note that the total number of sub tables that have to be considered thus grows rapidly Singletons 6 ARGUS 3 3 user manual Singleton cells should be treated with extra care The single respondent in this cell could easily undo the protection if no extra measures were taken The most dangerous situation is that there are only two singletons in a row or one singleton and one other primary unsafe cell These singletons could easily disclose the other cell In the current implementation we have made sure that at least two singletons in one row or column cannot disclose each other s information For this we increase the protection margins of these singletons such that the margin of the largest is greater than the cell value of the smallest References on the modular method Fischetti M and J J Salazar Gonz lez 1998 Models and Algorithms for Optimizing Cell Suppression in Tabular Data with Linear Constraints Technical Paper University of La Laguna Tenerife P P de Wolf 2002 HiTaS a heuristic approach to cell suppression in hierarchical tables Proceedings of the AMRADS meeting in Luxembourg 2002 Additional reading on the optimisation models can be found at t
18. developed as part of the CASC project that was partly sponsored by the EU under contract number IST 2000 25069 This support is highly appreciated The CASC Computational Aspects of Statistical Confidentiality project is part of the Fifth Framework of the European Union The main part of t ARGUS has been developed at Statistics Netherlands by Aad van de Wetering and Ramya Ramaswamy who wrote the kernel and Anco Hundepool who wrote the interface However this software would not have been possible without the contributions of several others both partners in the CASC project and outsiders Recent extensions of t ARGUS have been made possible during the European CENEX SDC project grant agreement 25200 2005 001 2005 619 The German partners Statistisches Bundesamt Sarah Giessing and Dietz Repsilber have contributed the GHMITER software which offers a solution for secondary cell suppression based on hypercubes Peter Paul de Wolf has built a search algorithm based on non hierarchical optimal solutions This algorithm breaks down a large hierarchical table into small non hierarchical subtables which are then individually protected A team led by JJ Salazar of the University La Laguna Tenerife Spain has developed the optimisation routines Additionally Jordi Castro has developed a solution based on networks The controlled rounding procedure has been developed by JJ Salazar in a project sponsored by ONS For solving these optimisation problems t
19. had succeeded in making ARGUS fall asleep ARGUS was decapitated ARGUS eyes were planted onto a bird s tail a type of bird that we now know under the name of peacock That explains why a peacock has these eye shaped marks on its tail This also explains the picture on the cover of this manual It is a copperplate engraving of Gerard de Lairesse 1641 1711 depicting the process where the eyes of ARGUS are being removed and placed on the peacock s tail Like the mythological ARGUS the software is supposed to guard something in this case data This is where the similarity between the myth and the package is supposed to end as we believe that the package is a winner and not a loser as the mythological ARGUS is See Anco Hundepool et al 2008 u ARGUS version 4 2 user s manual Statistics Netherlands Voorburg The Netherlands 2 This interpretation is due to Peter Kooiman former head of the methodology department at Statistics Netherlands The original copy of this engraving is in the collection of Het Leidsch Prentenkabinet in Leiden The Netherlands 4 t ARGUS 3 3 user manual Contact Feedback from users will help improve future versions of t ARGUS and is therefore greatly appreciated The authors of this manual can be contacted directly for suggestions that may lead to improved versions of t ARGUS in writing or otherwise e mail messages can also be sent to ARGUS cbs nl Acknowledgments t ARGUS has been
20. has at least one request and the cell freq is below the freq threshold that cell is considered to be unsafe as well Even if the request is not the largest one The idea is that in that case a large non requesting contributor could reveal the smaller requesting contributor Minimum Frequency If this box is checked a rule controlling the minimum number of contributors to a cell will be specified If the number of contributors is less than this value the cell is considered unsafe Freq Here the minimum number of contributors can be stated This is sometimes known as the threshold tule It is also possible to specify no safety rule apart from a minimum frequency value Frequency range As described above for the dominance rule and the P rule safety ranges can be derived automatically However the theory does not provide any safety range for the minimum frequency rule Therefore the user must provide a safety range percentage required to allow secondary suppressions to be carried out For example if this value was set to equal 30 it would mean an attacker would not be able to calculate an interval for this cell to within 30 of the actual value when looking at the safe output Following this the secondary suppressions may be carried out Manual Safety Range When a cell is set manually unsafe an option to discussed later TARGUS cannot calculate safety ranges itself Therefore the user must supply a safety percentage for this option for
21. pressing undo recoding The window will return to the originally coding structure If there is any error in the recoding such as certain codes not being found when pressing the Apply button an error message will be shown at the bottom of the screen Alternatively a warning could be issued e g if the user did not recode all original codes T ARGUS will inform the user This may have been the intention of the user therefore the program allows it In the above example a T ARGUS message informs the user that 4 codes have not been changed Once the Close button has been pressed t ARGUS will present the table with the recoding applied Recoding a hierarchical variable In the hierarchical case the code scheme is typically a tree To global recode a hierarchical variable Global Recode Iof x F Variable TEE ku TU w oa ido Maximum level Ie o Close dle dissing values 1 zz requires a user to manipulate a tree structure The standard Windows tree view is used to present a 70 t ARGUS 3 3 user manual hierarchical code Certain parts of a tree can be folded and unfolded with the standard Windows actions clicking on and 5 The maximum level box at the top of the screen offers the opportunity to fold and unfold the tree to a certain level Additionally the user ca
22. procedure can be applied The user has to specify the rounding base Note that this option requires the XPress solver Choose the suppression method The radio buttons at the right lower part of the window allow selecting the desired suppression method Clicking on the Suppress button will then start the process of calculating the secondary suppressions When this process has finished the protected table will be displayed and also the user will be informed about the number of cells selected for secondary suppression and the time taken to perform the operation The secondary suppressed cells will be shown in blue by default O ARGUS 3 3 user manual Table Region x Size Yar2 16 847 647 4 373 664 1 986 129 1 809 246 578 289 3 703 896 124 336 526 279 2 234 995 818 286 4 576 116 485 326 3 664 560 426 230 4 193 971 2 752 743 1 441 228 25 2 711 808 2 320 534 5 5 719 049 398 062 223 990 96 997 642 238 36 311 93 589 345 803 166 535 648 972 63 767 537 911 47 294 701 549 488 613 212 936 659 680 348 039 221 332 90 309 515 003 32 132 94 957 251 358 136 556 543 570 75 442 430 851 37 277 602 281 392 395 209 886 505 043 2 799 074 688 962 354 711 241 913 92 338 534 147 25 770 110 930 251 188 146 259 663 897 87 305 515 020 61 572 618 037 363 490 254 547 M 3dig separator Select Table Change View I Output View Summary Window Table Summary 756 529 418
23. safe values In some cases data protector may be happy with a base that is less than the minimum frequency threshold For example it could be decided that the width of the existence interval must be not less than the minimum frequency In this case the base should be chosen to be the minimal integer not smaller than f 2 Using a smaller base than the minimum safe frequency can be achieved in t ARGUS by lowering the threshold before computing the table This trick is allowed in rounding because the procedure does not change if the disclosive cells are changed unlike secondary suppression 0000 ARGUS 3 3 user manual 2 12 Functional design of ARGUS Microdata description Specify Table s Specify safety criteria TABULATION READ TABLE Select Table s Tabular data Table description INTERACTIVE TABLE REDESIGN SEC CELL SUPPRESSION Modular XPress CPlex SEC CELL SUPPRESSION Hypercube Safe table s t ARGUS 3 3 user manual IDENTIFY SENSITIVE CELLS SEC CELL SUPPRESSION Optimal XPress CPlex GENERATE SAFE TABULAR DATA SEC CELL SUPPRESSION Network CONTROLLED ROUNDING XPress Disclosure report 21 3 A tour of t ARGUS In this chapter we explain and display the key features of TARGUS t ARGUS is a menu driven program and here we describe a number of menus which the user will follow in order to prepare a table for output in a safe form The aim of the
24. safe by the user e Set to Unsafe A cell which has passed the safety rules is here declared to be unsafe by the user e Set to Protected A safe cell is set so that it cannot be selected for secondary suppression e Use a priori information see below A Priori Info This option is an a priori option to be mainly used for microdata which allows the user to feed t ARGUS a list of cells where the status of the standard rules can be overruled i e the status of the cells is already specified The associated file specifying this information is free format The format will be Code of first spanning variable Code of second spanning variable Status of cell u unsafe p protected not to be suppressed s safe Also the cost function can be changed here for a cell This will make the cell more likely to become secondary cell suppression when the value is low or less likely when the value is high Ne Zoe el MCh Gy Jd Oya eya AE Recode The recode button will bring the user to the recoding system Recoding is a very powerful method of protecting a table Collapsed cells usually have more contributors and therefore tend to be much safer Hierarchical Recoding The first window shows the codes awaiting recoding In this example the Region variable to recode has been selected As Region is a hierarchical variable the codes are shown in a hierarchical tree The user can either fold or unfold the branch
25. the above described file with batch commands Param2 is optional and is the name of the logfile If omitted T ARGUS will write a logbook in the file LOGBOOK TXT in the temp directory See also section 4 7 Param3 is the parameter specifying the temp directory If omitted the default temp directory will be used 4 2 4 File Exit Exits the tARGUS session 4 3 The Specify menu 4 3 1 Specify Metafile for microdata Clicking on Specify metafile gives the user the opportunity to either edit the metafile already read in or to enter the metafile information directly at the terminal In this dialog box all attributes of the variables can be specified This is a good alternative to editing the rda file outside T ARGUS t ARGUS does a moderate checking of the rda file but no guarantee can be given for a proper functioning of a manually edited RDA file The rda file has been explained in detail in section 4 2 1 Here editing of a rda file within T ARGUS is looked at 5000 ARGUS 3 3 user manual Specify metafile Fixed format y YEAR Industry Code Si If under File Open Microdata an rda file has been specified this dialog box shows the contents of this file If no rda file has been specified the information can be specified in this dialog box after pushing the New button As default New is substituted but the user is expected to fill in a correct name Apart from defining a new variable an exist
26. the minimum number of contributors can be chosen threshold rule via ticking and filling in the minimum frequency box If both the status and some information to apply the sensitivity rules have been supplied both options use given status and use safety rules are enabled and the use r can chose which one to use There is an option to calculate the possibly missing marginals and totals This option should be used only as an emergency It is always better to provide t ARGUS with a full complete table When t ARGUS has to compute these marginals all safety information will be ignored When all the options have been completed pressing the OK button will invoke t ARGUS to actually compute the table requested Now the process of disclosure control can begin 64 t ARGUS 3 3 user manual 4 4 The Modify menu 4 4 1 Modify Select Table This dialog box enables the user to select the table they want to see If the user has specified only one table this table will be selected automatically and this option cannot be accessed In the example window shown here the first table is a 2 dimensional table Size x Region followed by a 3 dimensional table Size x Region x IndustryCode Select the table to be processed and press the OK button Select table E Size Region Size Region Indust Code Explanatory variables Resp var Cancel 4 4 2 Modify View Table This section is divided in four parts a general desc
27. the necessary secondary suppressions as described above There are a number of options here e Hypercube e Modular e Network e Optimal Hypercube This is also known as the GHMITER method The approach builds on the fact that a suppressed cell in a simple n dimensional table without substructure cannot be disclosed exactly if that cell is contained in a pattern of suppressed nonzero cells forming the corner points of a hypercube t ARGUS 3 3 user manual 35 Modular This partial method will break the hierarchical table down to several non hierarchical tables protect them and compose a protected table from the smaller tables As this method uses the optimisation routines an LP solver is required this will be either XPRESS or CPLEX The routine used can be specified in the Options window this will be discussed later Optimal This method protects the hierarchical table as a single table without breaking it down into smaller tables As this method uses the optimisation routines an LP solver is required this will be either XPRESS or CPLEX The routine used can be specified in the Options window this will be discussed later Network This is a Network Flow approach for large unstructured 2 dimensional tables or a 2 dimensional table with one hierarchy the first variable specified This method is also based on optimisation techniques but does not require an external solver like XPress or Cplex Rounding The controlled rounding
28. the value of any other suppressed corner point of this hypercube e As explained above GHMITER uses an elaborate internal cost assignment mechanism which is essential to achieve an optimal performance given the natural restrictions of the simple heuristic approach of course This mechanism should not be cast out of balance Therefore the user s choice of the cell costs c f 3 1 3 4 3 3 does not have any impact when using the hypercube method e For tables presenting magnitude data if protection against inferential disclosure is requested see the upper part of the pop up window below Tt ARGUS will ensure that GHMITER selects wD ARGUS 3 3 user manual secondary suppressions that protect the sensitive cells properly Only cells will be considered feasible as secondary suppression that are large enough to give enough protection to the target sensitive cell as explained in 5 GHMiter specifications Additional parameters for the use of GHMiter J Protection against inferential disclosure required Memory model Normal size Large size In order to achieve this ARGUS computes a suitable sliding protection ratio for explanation see 5 TARGUS will display the value of this ratio in the report file to be used by GHMITER If in the screen above the option Protection against inferential disclosure required is inactivated GHMITER will not check whether secondary suppressions are sufficiently large e As me
29. to a nonadjacent multiple of the base This relaxation is controlled by allowing a maximum number of steps For example consider rounding the value 7 when the base equals 5 In zero restricted rounding the solution can be either 5 or 10 If 1 step is allowed the solution can be 0 5 10 or 15 In general let z be the integer to be rounded in base b then this number can be written as z ub r where ub is the lower adjacent multiple of b hence u is the floor value of z b and r is the remainder In the zero restricted solution the rounded value a can take values wo ARGUS 3 3 user manual a ub ifr 0 ub ifr 0 la 1 b If K steps are allowed then a can take values a max 0 u j b j K K ifr 0 a max 0 u j b 7 K K ifr 40 2 11 2 Optimal first feasible and RAPID solutions For a given table there could exist more than one controlled rounded solutions any of these solutions is a feasible solution The Controlled Rounding Program embedded in t ARGUS determines the optimal solution by minimising the sum of the absolute distances of the rounded values from the original ones Denoting the cell values including the totals and sub totals with z and the corresponding rounded values with a the function that is minimised is N 2 i l zZz a i ij where N is the number of cells in a table including the marginal ones The optimisation procedure for controlled rounding is a rather
30. total number of contributors to the cell and the intruder is a respondent in the cell i 3 It is important to know that when entering this rule in T ARGUS the value of N refers to the number of intruders in coalition who wish to group together to estimate the largest contributor A typical example would be that the sum of all reporting units excluding the largest two must be at least 10 of the value of the largest Therefore in T ARGUS set p 10 and n 1 as there is just one intruder in the coalition respondent xz For the dominance rule and the P rule the safety ranges required as a result of applying the rule can be derived automatically The theory gives formulas for the upper limit only but for the lower limit there is a symmetric range See e g Loeve 2001 This is referenced in Section 2 1 Theory Request Rule This is a special option applicable in certain countries relating to e g foreign trade statistics Here cells are protected only when the largest contributor represents over for example 70 of the total and that contributor asked for protection Therefore a variable indicating the request is required This option requires an additional variable in the data with e g 0 representing no request for that particular business and 1 representing a request where the particular cell value is gt x of the cell total In fact there is an option for two different thresholds The min freq is interpreted such that if a cell
31. tour is to guide the user through the basic features of the program without describing every feature in detail The only pre requisite knowledge is basic experience of the Windows environment In Chapter 4 Reference a more systematic description of the different parts of ARGUS will be given Chapter 3 can be read as a standalone chapter as there is enough detail to enable the user to run the program However not every option is covered and the user is pointed in the direction of the Reference chapter in a number of instances In addition back references to the theory explained in Chapter 2 are also indicated In this tour we will use the data in the file tau_testW asc which comes with the installation of TARGUS The key windows for preparation of the data and the processes of disclosure control depicted graphically in the figure in section 2 12 are explored in this tour which are given below Preparation e Open Microdata This involves declaring both the microdata and the associated metadata e Specify Metafile This shows how the metafile can be edited after being read in but before any tables have been specified This includes options such as declaring variables to be explanatory or response and setting up the hierarchical structure of the data e Specify Tables Declare the tables for which protection is required along with the safety rule and minimum frequency rule on which the primary suppressions will be based Process of Disclosure
32. will come back with the main window showing the number of unsafe cells per variable per dimension as explained in the next section 3 2 3 2 The Process of disclosure control When the table s have been calculated the main window of T ARGUS will be displayed again with an overview of all the unsafe cells per variable over all the tables An example is shown here This window underneath the main menu for T ARGUS shows the number of unsafe combinations per variable For example there are no single unsafe cells in dimension one for either variable i e the a TA File Specify Modify Output Help ce Bi BH aa Hunsafe combinations in every dimension variable Size Code Label Fieg dmi dm2 Size 0 12 Region Booyn 2c0o0oo0o0o000 S 0o0o0o 70 Status 29 3 2004 13 18 one way marginal total for different values of Size and Region are all not disclosive The right hand window gives the equivalent information for each level of the variable indicated on the left For example there are 12 unsafe cells in the two way Size x Region table Size There are however 12 unsafe cells in the 2 way table Size by Region as can be seen by the right hand window which gives the equivalent information for each level of the variable indicated on the left t ARGUS 3 3 user manual 29 There are 5 unsafe cells where Size 2 6 unsafe cells where Size 4 and a single unsafe cell where Size 9 i o File Spec
33. ww expvarl lt RECODABLE gt lt TOTCODE gt expvar2 lt RECODABLE gt lt TOTCODE gt respvar lt NUMERIC gt freq lt FREQUENCY gt topl lt MAXSCORE gt top2 lt MAXSCORE gt ops lt MAXSCORE gt stat ESTATUS gt 54 T ARGUS 3 3 user manual 4 3 3 Specify Specify metafile SPSS System files When t ARGUS works with a SPSS system file the specification of the meta data is twofold First the variables of interest for building a table have to be specified Secondly the meta data has to be filled in that could not be automatically retrieved from the system file SPSS gives only the basic information like variable names field length Selecting the variables By pressing the button Generate a window will be shown with all the variables available in the system file You can now select the required variables Expanding the metadata The working of t ARGUS when using a SPSS system file is very similar to the fixed format version However you will see that certain field cannot be changed as they are implied by SPSS Often SPSS cannot decide whether a variable is a spanning variable or a response variable eg AGE recoded numerically in SPSS Also the hierarchical information has to be added Refer to section 4 3 1 SPss system file y Select SPSS variables C GEWICT landd CJ lft Sk samhh arbpos stedgem C brniv_op ond soid ond soig ond soia k_gestin H2005_B
34. 60 537 911 430 851 515 020 643 762 1 537 016 426 230 47 294 37 277 61572 71417 208 670 4 193 971 701 549 602 281 618 037 647 021 1 625 068 Change status 2 752 743 488 613 392 395 363 490 402 925 1 105 305 SettoSate 1 441 228 212 936 209 886 254 547 244 096 519 763 Goal 4 priori info Set to Protected All Non StructEmpty Recode m Suppress HyperCube Modular Network 2 Dptimal Suppress M 3 dig separator Select Table Change View Write table Rounding Unde Suppress Suppress F Output View Table Summary Close Hypercube This is also known as the GHMITER method The approach builds on the fact that a suppressed cell in a simple n dimensional table without substructure cannot be disclosed exactly if that cell is contained in a pattern of suppressed nonzero cells forming the corner points of a hypercube Selecting the hypercube method will lead to the following window being showed by t ARGUS GHMITER will select secondary suppressions that protect the sensitive cells properly against the risk of inferential disclosure to some extent if the user activates the option Protection against inferential disclosure required If the option is inactivated on the other hand GHMITER will not check secondary suppressions to be sufficiently large For more explanation and detailed information on the hypercube see section 2 7 The lower part of the pop up window above enables the user to a
35. 778 258 233 79 518 620 392 18 150 81 799 303 377 217 066 775 132 59 953 643 762 71 417 647 021 402 925 244 096 6 510 758 385 1 549 049 385 466 529 863 393 385 219 127 1 392 096 11 968 145 004 1 083 254 151 870 1 944 545 198 859 1 537 016 208 670 1 625 068 1 105 305 519 763 Write table Close r Cell Information Value E Status Empty Cost Shadow ny contributions ol Top n of shadow Holding a level Request 0 r Change status Set to Safe Set to Unsafe AO Set to Protected All Non StructE mpty Recode r Suppress HyperCube Modular C Network Optimal Suppress C Rounding _Undo Suppress Suppress By clicking on Table Summary the summary window is obtained The summary window gives an overview of the cells according to their status Freq The number of cells in each category rec The number of observations in each category Sum Resp Total cell value in each category SumCost The sum of the cost variable Here it is equal to the response variable By clicking on OK we return to the table window The table may now be written as an output file in the required format Any cells which have been selected for suppression will be replaced by X The safe table can be saved by using the Write table button in this window or by using Output Save table on the main menu t ARGUS 3 3 user manual 37 Summary for tab
36. 9 lt RECODEABLE gt Regio 2 OY RECODEABLE gt LSS REGION CDL RARCHICAL gt RCODELIST gt region2 hre RLEADSTRING gt 919199 NUMERIC gt DECIMALS gt 1 WEIGHT gt al 9 YOO IQgs s NUMERIC gt 10 9999999999 NUMERIC gt DECIMALS gt 2 A Q O a eel an que as HHH Ae El W Q iS OS WS Tne ADS AS TA NOE SY AE AS OS N SPSS System file When the microdata is stored in a SPSS System file t ARGUS can also read this data However some special rules have to be taken into account It is assumed that a valid license for SPSS is available on the computer because T ARGUS will call SPSS to read the data in the systemfile Also part of the metadata will be retrieved form SPSS However not all meta data needed is available in SPSS the user has to enter the additional metadata himself See section 4 3 3 In fact t ARGUS will call SPSS to export the data needed to a fixed format scratch file in the temp directory and after that work similar to the working with fixed format ASCU files The first time you open a SPSS systemfile no metadata file can and has to be specified After opening the SPSS system file in this menu option SPSS wil be called and the meta data Variable names field length missing values available in SPSS will be read This is a process that takes a bit of time and should not be interrupted by pressing any key or so However no pr
37. 9 5 398 062 348 039 354 711 418 778 466 529 1 809 246 223 990 221 332 241 913 258 233 863 393 385 578 289 96 997 90 309 92 338 79 518 219 127 3 703 896 642 238 515 003 534 147 620 392 1 392 096 124 336 36 311 32 132 25 770 18 150 11 968 526 279 93 589 94 957 110 930 81 799 145 004 2 234 995 345 803 251 358 251 188 303 377 1 083 254 818 286 166 535 136 556 146 259 217 066 151 870 4 576 116 648 972 543 570 663 897 775 132 1 944 545 485 326 63 767 75 442 87 305 59 953 198 859 3 664 560 537 911 430 851 515 020 643 762 1 537 016 426 230 47 294 37 277 61 572 71 417 208 670 Change status Set to Safe Set to Unsafe DE Set to Protected All Nor StructEmpty Recode Suppress HyperCube Modular Network Optimal Suppress M 3 dig separator Select Table Change View Write table Rounding Undo Suppress Suppress F Output View Table Summary Close For some windows the complete table cannot be seen on the screen In these cases there will be scrollbars at the bottom and the right of the table above which can be used to display the unseen columns 4 193 971 701 549 602 281 618 037 647 021 1 625 068 2 752 743 488 613 392 395 363 490 402 925 1 105 305 1 441 228 212936 209 886 254 547 244 096 519 763 Example of a 3D table Variables in 3D tables are displayed at the top left of the typical 2 dimensional table The arrow at the right of the box allows selection of the required level of this v
38. ESTINKH eighuur H2005 EQUI laagink socmin Appintea C Appinteb y Cancel OK New 1 Delete 3 Cancel OK 4 3 4 Specify Specify Tables for microdata In this dialog box the user can specify the tables which require protection In one run of t ARGUS more than one table can be specified but the tables will be protected separately unless they are linked have at least one variable in common In that case they can be protected simultaneously if required In section 4 4 3 the idea of linked tables will be discussed Also the user has to specify the parameters for the dominance rule or p rule and the minimum number of contributors in a cell etc At present TARGUS allows up to 6 dimensional tables but due to the capacities of the LP solver used either Xpress or Cplex depending on the user s license and the t ARGUS 3 3 user manual 55 complexity of the optimisations involved tables of this complexity can only be protected by the hypercube method see section 2 7 in the Theory chapter Below is a typical window obtained when specifying tables with the dominance rule applied Specify Tables E ioj x m explanatory variables m cell items IndustryCode z Size z Region response variable shadow variable ee ES a gt y
39. Q 5 30 lt READMICRODATA gt lt SUPPRESS gt MOD 1 lt GOINTERACTIVE gt 84 t ARGUS 3 3 user manual 4 6 The Help menu 4 6 1 Help Contents This shows the contents page of the help file and from there makes the help available This program has context sensitive help 4 6 2 Help Options There are a number of options which can be changed here Firstly if the CPlex optimisation routine is being used the location of the licence file can be specified here Also the default colours for the differently specified cells can be altered CO os Colors Safe Unsafe Singleton manual Safe manual Unsafe manual Unsafe Protected Unsafe request Secondary Unsafe Freq Secondary from man Unsafe Zero cell Empty non struct Unsafe Singleton Empty Reset default colors Max time per table for Modular solution 1 ule Logfile name P m Specify solver information No solver available Xpress CPlex licence file JH Anco T audrqus B access 1 il i Cplex Within this Option box the user chooses which solver has been selected These are No Solver CPLEX or XPRESS The option chosen here will determine whether or nor suppression methods based on these solvers are available TARGUS will store this information in the registry and will use it in future runs It is advisable but not necessary to open this window at the start of a T ARGUS session to ensure
40. XT in the temp directory In the options window the name of the logfile can be changed for the remainder of the current session 08 feb 2007 15 45 19 Start preparing for tabulation 08 teb 2007 15 45 19 Table 1 Size x Region Var2 09 tSd9 2007 15 45319 3 Sram explore riles Es Procrem Files TauARGUS data tau_testW asc 08 teb 2001 15 45 20 Start computing tabiles O8 feb 2007 15 45 20 Compute tables completed Os Lelo 2007 15745223 E Seere Mochila Grimmi sete sen 08 feb 2007 15 45 26 MODULAR finished with a problem 08 feb 2007 1 8 Start Modular optimisation 08 feb 2007 15 45 40 MODULAR finished successfully 08 teb 2007 15 45 50 Table no 1 has been saved FileName C Program Files TauARGUS data x sbs as Save table in SBS format Qda a a ar an A Oo w Koj B ARGUS 3 3 user manual
41. able to be used as a cell item in a table e Weight variable a variable containing the sampling weighting scheme 24 t ARGUS 3 3 user manual More details on these variables along with the others can be found in the Reference chapter subsection 4 3 1 Other important features of this window are as follows e Codelist t ARGUS will automatically build the codelists for the explanatory variables or you can specify a codelist file a list of codes of the explanatory variables as follows e Automatic The codelist is created from the categories in the variable e Codelist file The codes can be read in from an external file Each category can contain a label The codelist is only used for enhancing the presentation but always T ARGUS will build a codelist from the datafile itself e Missing values this gives information on the missing values which are attached to a codelist Two distinct missing value indicators can be set the reason for this is for the purposes of indicating different reasons for missing values for example perhaps non responses of different forms maybe one code for the response don t know and another for refusal Missing values however are not required e Hierarchical codes The hierarchy can be derived from 1 The digits of the individual codes in the data file or 2 A specified file containing the hierarchical structure Examples are shown in the metafile information below The Metafile The metafi
42. ady a very fast solution References on the network solution 1 Ahuja R K Magnanti T L Orlin J B Network Flows Prentice Hall 1993 2 Castro J PPRN 1 0 User s Guide Technical report DR 94 06 Dept of Statistics and Op erations Research Universitat Polit cnica de Catalunya Barcelona Spain 1994 3 Castro J Network flows heuristics for complementary cell suppression an empirical evaluation and extensions in LNCS 2316 Inference Control in Statistical Databases J Domingo Ferrer Ed 2002 59 73 4 Castro J Nabona N An implementation of linear and nonlinear multicommodity network flows European Journal of Operational Research 92 1996 37 53 5 Cox L H Network models for complementary cell suppression J Am Stat Assoc 90 1995 1453 1462 6 ILOG CPLEX ILOG CPLEX 7 5 Reference Manual Library ILOG 2000 7 Kelly J P Golden B L Assad A A Cell Suppression disclosure protection for sensitive tabular data Networks 22 1992 28 55 8 Castro J User s and programmer s manual of the network flows heuristics package for cell suppression in 2D tables Technical Report DR 2003 07 Dept of Statistics and Operations Research Universitat Polit cnica de Catalunya Barcelona Spain 2003 See http neon vb cbs nl casc deliv 41D6_NF1H2D Tau ARGUS pdf 2 11 Controlled rounding Controlled rounding is a rounding procedure that differently from other rounding methods yields additiv
43. als for the true values according to the formulae given above Then the choice of the parameters values depends on the protection required for the disclosive values Of course the larger the existence interval the greater the protection but also the damage caused to the data The choice of the rounding base then should be made by the data protector considering the protection requirements and the damage caused to the data A discussion on how existence intervals can be related to protection requirements can be found for example in Willenborg and de Waal 2001 Below we give some general considerations on the effect of different choices of the rounding base Frequencies are disclosive if their values are not larger than a chosen threshold say f In t ARGUS the minimal rounding base is b f When this value is chosen disclosive values can be rounded either to 0 or to b Hence an intruder would know that all published zeros are disclosive values while he or she could not determine if a published value equal to b is a disclosive value or a larger safe one In some cases this protection can be considered insufficient because it is required that the existence interval for values rounded to zero contains at least one safe value Then the value of b must be chosen to be greater than f or the number of steps allowed must be greater than zero It must be stressed however that the larger the base and the greater the damage inflicted to the data including
44. an read data in two ways The first of these is microdata fixed format free format and a SPSS_systemfile which is explained in section 4 2 1 The second is input and treatment of a pre formed tabulated data and is dealt with in section 0 Only one of these options can be used at one time a table and a set of microdata cannot be read in T ARGUS simultaneously TARGUS can also be used in batch see section 4 2 3 4 2 1 File Open Microdata The File Open microdata menu allows the user to specify the microdata file both fixed and free format and the metadata file Open micro data _ Y Microdata JH Anco T audrqus B D atata tau_testW asc z Metadata optional JH Anco T auArgusYB Datata tau_testW ida ae Cancel OK For changing inspecting the metadata go to SpecifylMetadata For specifying the table s go to Specify T ables In this dialog box the user can select the microdata file or the SPSS system file and the corresponding metadata file By default the microdata file has extension asc and the metafile rda Note the user may use any file extension but is advised to use default names When the user clicks on EN they get an open file dialog box This box enables searching for the required files Other file types can be chosen when clicking on the file types listbox When the user has selected the microdata file a suggestion for the metafile with the same name but with the extension rda is given but only when t
45. and 6 Gelderland 7 Ute iceclac 8 Noord Holland 9 2iilolalio Lleno 10 Zeeland 11 Noord Brabant 12 Limburg Nr North Os East Ws West ALSO Uan For region2 hrc the string character that is used to indicate the depth of a code in the hierarchy HIERLEADSTRING is Note that the total code is never specified in these HRC files as t ARGUS always assumes that the total will be computed t ARGUS 3 3 user manual 43 region2 hrc Nr 1 WN JM Um S 8 9 10 d 11 12 Wet For this variable each record begins on position 14 and is 4 characters in length with missing values represented by 9999 There is decimal place for these values and the variable is defined as a weight Two numeric variables are also shown in the above rda file These numeric variables not defined as weights are those to be used as cell items i e response variables used in creating the table Varl This variable begins on position 19 and is 9 characters long Missing values are represented by 999999999 and it is numeric Var2 This variable begins on position 28 and is 10 characters long Missing values are represented by 9999999999 and it is numeric This variable has 2 decimal places The representation in an rda file for the Request rule and Holding Indicator are shown here for completeness Request rule Request 99 1 NGOS rs LW WN Here the request indicator is in colum
46. and ZZ lt a as the uppercase Z precedes the lowercase a Special attention should be paid when a range is given without a left or right value This means every code less or greater than the given code In the first 8 ARGUS 3 3 user manual example the new category 1 will contain all the codes less than or equal to 49 and code 4 will contain Global Recode everything larger than or equal to 150 Example for a variable with the categories 1 182 a possible recode is then for a variable with the categories 01 till 10 a possible recode is An important point is not to forget the colon if it is forgotten the recode will not work Recoding 3 05 06 07 can be shortened to 3 05 07 Additionally changing the coding for the missing values can be performed by entering these codes in the relevant textboxes Also a new codelist with the labels for the new coding scheme can be specified This is entered by means of a codelist file An example is shown here note there are no colons is this file T ARGUS 3 3 user manual 69 5 Flevoland 6 Gelderland Y Utica cla 8 Noord Holland 9 Zuid Holland 10 Zeeland 11 Noord Brabant 12 Limburg Nr North Os East Ws West ARAS UE Pressing the Apply button will actually restructure the table If required recoding can easily be undone by
47. ariable The table shown will be the 2 dimensional table for the specified level s of the variables displayed at the top of the table A ARGUS 3 3 user manual Table Region x Size x Year Yar2 Year tot v 4 373 664 5 5 1 986 129 5 5 1 809 246 0 578 289 3 703 896 15 5 124 336 5 526 279 2 234 995 10 5 818 286 4 576 116 485 326 3 664 560 426 230 4 193 971 15 2 752 743 15 1 441 228 IV 3 dig separator FF Output View 16 847 647 20 25 2 711 808 719 049 398 062 223 990 96 997 642 238 36 311 93 589 345 803 166 535 648 972 63 767 537 911 47 294 701 549 488 613 212 936 659 680 348 039 221 332 90 309 515 003 32 132 94 957 251 358 136 556 543 570 75 442 430 851 37 277 602 281 392 395 209 886 688 962 354 711 241 913 92 338 534 147 25 770 110 930 251 188 146 259 663 897 87 305 515 020 61 572 618 037 363 490 254 547 Change View Table Summary 756 529 418 778 258 233 79 518 620 392 18 150 81 799 303 377 217 066 775 132 59 953 643 762 71 417 647 021 402 925 244 096 Additional information in the View Table window 2 320 534 2 505 043 2 799 074 6 510 758 385 1 549 049 385 466 529 863 393 219 127 1 392 096 11 968 145 004 1 083 254 151 870 1 944 545 198 859 1 537 016 208 670 1 625 068 1 105 305 519 763 385 Write table Close iol x r Cell Information 16 847 647 Value Status sae 7 C
48. ast the major contributors themselves can determine with sufficient precision the contributions of the other contributors to that cell The choice n 3 and k 70 is not uncommon but t ARGUS will allow the users to specify their own values of and k As an alternative the prior posterior rule has been proposed The basic idea is that a contributor to a cell has a better chance to estimate competitors in a cell than an outsider and also that these kind of intrusions can occur rather often The precision with which a competitor can estimate is a measure of the sensitivity of a cell The worst case is that the second largest contributor will be able to estimate the largest contributor If this precision is more than p the cell is considered unsafe An extension is that also the global knowledge about each cell is taken into account In that case we assume that each intruder has a basic knowledge of the value of each contributor of q Note that it is actually the ratio p q that determines which cells are considered safe or unsafe In this version of ARGUS the q parameter is fixed to 100 Literature refers to this rule as minimum protection of p rule If the 8 t ARGUS 3 3 user manual intention is to state a prior posterior rule with parameters po and qo where qo lt 100 choose the parameter p of the p rule as p po qo 100 See Loeve 2001 With these rules as a starting point it is easy to identify the sensitive cells provided that the tab
49. at might lead to an unacceptably high information loss Instead one could stop at some point and eliminate the remaining unsafe combinations by using other techniques such as cell suppression 2 4 Secondary cell suppression Once the sensitive cells in a table have been identified possibly following table redesign it might be a good idea to suppress these values In case no constraints on the possible values in the cells of a table exist this is easy one simply removes the cell values concerned and the problem is solved In practice however this situation hardly ever occurs Instead one has constraints on the values in the cells due to the presence of marginals and lower bounds for the cell values typically 0 The problem then is to find additional cells that should be suppressed in order to protect the sensitive cells The additional cells should be chosen in such a way that the interval of possible values for each sensitive cell value is sufficiently large What is sufficiently large can be specified by the data protector in t ARGUS by specifying the protection intervals In general the secondary cell suppression problem turns out to be a hard problem provided the aim is to retain as much information in the table as possible which of course is a quite natural requirement The optimisation problems that will then result are quite difficult to solve and require expert knowledge in the area of combinatorial optimisation 6 See for i
50. cations of a table a table can be redesigned meaning that rows and columns can be combined sensitive cells can be suppressed and additional cells to protect these can be found in some optimum way secondary cell suppression t ARGUS is one of a twin set of disclosure control packages Within the CASC project a tool for microdata called u ARGUS has also been developed which is the twin brother of ARGUS This 1s manifest not only when one looks at the user interfaces of both packages but also when one looks at the source code the bodies of the twins are so much combined that they in fact are like Siamese twins About the name ARGUS Somewhat jokingly the name ARGUS can be interpreted as the acronym of Anti Re identification General Utility System As a matter of fact the name ARGUS was inspired by a myth of the ancient Greeks In this myth Zeus has a girl friend named lo Hera Zeus wife did not approve of this relationship and turned lo into a cow She let the monster ARGUS guard lo ARGUS seemed to be particularly well qualified for this job because it had a hundred eyes that could watch over lo If 1t would fall asleep only two of its eyes were closed That would leave plenty of eyes to watch lo Zeus was eager to find a way to get lo back He hired Hermes who could make ARGUS fall asleep by the enchanting music on his flute When Hermes played his flute to ARGUS this indeed happened all its eyes closed one by one When Hermes
51. ch are likely to appear in multiple tables especially in processing of linked tables By the way terms reduction of the sliding protection ratio and reduction of the protection level are used synonymously in the report file e Note that step 11 will make cells eligible for secondary suppression that t ARGUS considers as protected so called frozen cells for discussion of this option see for instance 5 As this is inconsistent with the current view on protected cells in t ARGUS this will lead to the following error message TauARGUS E xj The hypercube method could not suppress this table successfully some frozen protected cells need to be suppressed t ARGUS 3 3 user manual 13 Codes and cell values of those suppressed frozen cells are then displayed by ARGUS l0 x List of suppressed but frozen cells Cell value and the codes 15 00 A Os See also file C DOCUME 1 ahni LOCALS 14T emp Frozen tat When the status of these cells is changed into unprotected before re running the hypercube method the solution will be a feasible solution for TARGUS 2 7 3 References on GHMiter 1 2 3 4 5 Repsilber R D 1994 Preservation of Confidentiality in Aggregated data paper presented at the Second International Seminar on Statistical Confidentiality Luxembourg 1994 Repsilber D 1999 Das Quaderverfahren in Forum der Bundesstatistik Band
52. ch primary suppression in the current sub table all possible hypercubes with this cell as one of the corner points are constructed If protection against inferential disclosure is requested for each hypercube a lower bound for the width of the suppression interval for the primary suppression that would result from the suppression of all corner points of the particular hypercube will be estimated To estimate that bound it is not 7 The section on GHMiter has been contributed by Sarah GIESSING Federal Statistical Office of Germany 65180 Wiesbaden E mail sarah giessing destatis de t ARGUS 3 3 user manual 11 necessary to implement the time consuming solution to the corresponding Linear Programming problem Only if it turns out that the bound is sufficiently large the hypercube becomes a feasible solution If no protection against inferential disclosure is requested any hypercube will be considered feasible This may of course lead to some cases of underprotection For any of the feasible hypercubes the loss of information associated with the suppression of its corner points is computed The particular hypercube that leads to minimum information loss is selected and all its corner points are suppressed Note that the information loss concept of the hypercube method is slightly different from the one of the other linear programming based methods for secondary cell suppression offered by t ARGUS it operates rather like a two stage concept
53. complex one NP complete program so finding the optimal solution may take a long time for large tables In fact the algorithm iteratively builds different rounded tables until it finds the optimal solution In order to limit the time required to obtain a solution the algorithm can be stopped when the first feasible solution is found In many cases this solution is quite close to the optimal one and it can be found in significantly less time The RAPID solution is produced by CRP as an approximated solution when not even a feasible one can be found This solution is obtained by rounding the internal cells to the closest multiple of the base and then computing the marginal cells by addition This means that the computed marginal values can be many jumps away from the original value However a RAPID solution is produced at each iteration of the search for an optimal one and it will improve in terms of the loss function over time t ARGUS allows to stop CRP after the first RAPID is produced but this solution is likely to be very far away from the optimal one 2 11 3 Protection provided by controlled rounding The protection provided by controlled rounding can be assessed by considering the uncertainty about the disclosive true values achieved releasing rounded values that is the existence interval that an intruder can compute for the rounded value We assume that also the values of the rounding base b and the number of steps allowed K are releas
54. cost variable lt C unity C frequency l Dannie variable Dominance rule lambda fi Y P tule Ind 1 J Missing safe Ind 2 lo 0 JA Use holdinas info r Request IS A Zero unsafe rule Hold 1 fo 0 range 10 Hold 2 jo 0 I Apply Weights F Apply weights in Safety Rule Expl vars Size Region Shadow amp Cost var Var2 Shadow Default Cost Default IND p 20 q 100 N 1 MinFreg Cancel Compute tables In section 4 3 1 details of variable definitions in the metafile were explained Now consider how the variables defined in the metafile are used to create a table along with an associated safety rule The explanatory or spanning variables On the left is the listbox with the explanatory variables When the user clicks on gt or lt the selected variable is transported to the next box From the left box with explanatory variables the user can select the variables that will be used as the spanning variables in the row or the column of the table Cell items Here is a list of variables that can be used as response shadow or cost variables in the disclosure control By pressing the gt or lt they can be transferred to or from the windows on the right The response variable From the list of cell items the user can select a variable as a response variable This is the variable for which the table to be protected is calculated If a number of tables are
55. different for a standard percentage After the keyword pl the lower and upper protection levels can be given for a specific cell Note that the protection levels will always have to be positive as they are considered as distances from the cell value Nian 4h E Zel 6p p S al Ei 5p Bly 100 200 4 4 2 2 Global recoding The recode button will open the recoding options Recoding is a very powerful method of protecting a table Collapsed cells tend to have more contributors and therefore tend to be much safer Recoding a non hierarchical variable There is a clear difference in recoding a hierarchical variable compared to a non hierarchical variable In the non hierarchical case the user can specify a global recoding manually Either enter the recoding described below manually or read it from a file The default extension for this file is GRC There are some standards about how to specify a recode scheme All codelists are treated as alphanumeric codes This means that codelists are not restricted to numerical codes only However this also implies that the codes 01 and 1 are considered different codes and also aaa and AAA are different In a recoding scheme the user can specify individual codes separated by a comma or ranges of codes separated by a hyphen The range is determined by treating the codes as strings and using the standard string comparison E g 0111 lt 11 as the 0 precedes the 1
56. e 08 feb 2007 time 15 40 43 Original file CiProgram Files TauARGUSi data iau_fesiW asc Meta file CiProgram Files TauARGUS data iau_festWirda Table file CiProgram Files TauARGuUS data x shs Table generated from microdata Table structure va Funetion 7 Safety Rule Prior Posterior rule Indiv level with p 15 and n 1 Minimum individual cell frequency 3 safety margin 10 Manual safety margin 30 Missing codes have been considered unsafe Modular HITAS Salazar solution using CPlex gt Print t ARGUS 3 3 user manual 83 4 5 3 Output Write Batch File The commands used in interactive mode can be saved into a file for future use TARGUS will write a batch file containing the commands necessary to achieve the current situation of the T ARGUS run so far For more information on the batch facility see section 4 2 3 For example the following shows the dominance rule n 3 k 75 applied to the Size by Region table with Var2 as the response variable The threshold value 5 with a safety range 30 Modular secondary suppression was applied The last line indicates that t ARGUS will not stop after these commands but become an interactive program lt OPENMICRODATA gt C Program Files TauARGUS data tau_testW asc lt OPENMETADATA gt C Program Files TauARGUS data tau_testW rda lt SPECIFYTABLE gt izo Misco arca UNE pd T lt SAFETYRULE gt NK 3 75 INK 0 0 FRE
57. e rounded tables That is to say that the rounded values add up to the rounded totals and sub totals shown in the table This property not only permits the release of realistic tables but also makes it impossible to reduce the protection by unpicking the original values by exploiting the differences in the sums of the rounded values The CRP implemented in t ARGUS also allows the specification hierarchical links Controlled rounding is a SDC method that is most effective for frequency tables In fact this method gives adequate protection to small frequencies by creating uncertainty also with respect to zero values i e empty cells The same cannot be said for suppression in the way it is implemented now in t ARGUS 2 11 1 Restricted and non restricted controlled rounding In Zero restricted Controlled Rounding the rounded values are chosen leaving unaltered the original values that are already multiples of the rounding base while rounding the others to one of the adjacent multiples of this base The modified values are chosen so that the sum of the absolute differences between the original values and the rounded ones is minimized under the additivity constraint Therefore some values will be rounded up or down to the most distant multiple of the base in order to satisfy the constraints In most cases such a solution can be found but in some cases it cannot The zero restriction constraint in CRP can be relaxed allowing the values to be rounded
58. ead the table 4 2 3 File Open Batch Process This option allows the user to run the commands in batch mode from opening the microdata and metadata to output of the final table s A file can be written in a text editor and called from this command Lines starting with will be considered as comment and therefore will be ignored The possible commands are shown here Command Parameters OPENMICRODATA Data file name with microdata T ARGUS 3 3 user manual 47 OPENTABLEDATA File name containing tabular data OPENMETADATA Metadata file name SPECIFYTABLE ExpVarl ExpVar2 ExpVar3 RespVar ShadowVar Costvar Lambda Shadow and cost variables are optional If not specified then they equal the Response Variable If the cost variable is specified either a numerical variable is specified or 1 is chosen for frequency or 2 for unity For lambda the default is 1 See section 4 3 3 for the explanation for the use of lambda CLEAR Clears all and start a new session SAFETYRULE This command is used for primary suppression A set of safety rule specifications separated by a Each safety spec starts with P NK ZERO FREQ REQ WGT MIS or MAN and between brackets the parameters P p n with the n optional default 1 So 20 3 gt p 20 and n 3 NK n k ZERO ZeroSafetyRange FREQ MinFreq FrequencySafetyRange REQ Percentl Percent2 SafetyMarg
59. eas Tables may be viewed at different levels of hierarchy lt HIERLEVELS gt The hierarchy is derived from the digits of the codes itself The specification is followed by a list of integers denoting the width of each level The sum of these integers should be the width of the total code An example is shown beneath the rda file below lt HIERCODELIST gt The name of the file describing the hierarchical structure Default extension HRC An example is shown following the rda file lt HIERLEADSTRING gt The string character that is used to indicate the depth of a code in the hierarchy An example is shown below lt REQUEST gt This variable contains the status denoting whether or not a respondent asked for protection lt HOLDING gt This variable contains the indication whether a group of records belong to the same group holding An example of a metafile 1 e an Rda file is shown here for a fixed format file An example for a free format meta datafile is given at the end of this section MEAR 1 2 99 lt RECODEABLE gt das ty COSO lt RECODEABLE gt lt HIERARCHICAL gt lt HIERLEVELS gt 3 11 0 0 Size 9 2 99 lt RECODEABLE gt REG iOm 12 2 OY lt RECODEABLE gt lt CODELIST gt Region cdl lt HIERCODELIST gt Region2 hrc lt HIERLEADSTRING gt 42 t ARGUS 3 3 user manual lt HIERARCHICAL gt eje 14 4 9999 lt NUMERIC gt lt DECIMALS gt
60. ed together with the rounded table Furthermore we assume that it is known that the original values are frequencies hence nonnegative integers Zero restricted rounding Given a rounded value a an intruder can compute the following existence intervals for the true value z ze 0 b 1 ifa 0 zela b 1la b 1 ifaz0 For example if the rounding base is b 5 and the rounded value is a 0 a user can determine that the original value is between 0 and 4 If the rounded value is not 0 then users can determine that the true value is between plus or minus 4 units from the published value For further details see Salazar Staggermeier and Bycroft 2005 Controlled rounding implementation UN ECE Worksession on SDC Geneva t ARGUS 3 3 user manual 19 K step rounding As mentioned before it is assumed that the number of steps allowed is released together with the rounded table Let K be the number of steps allowed then an intruder can compute the following existence intervals for the true value z zE 0 K Db 1 ifa lt K Db zE a K Db 1 a K Db 1 ifa gt K b For example assume that for controlled rounding with b 5 and K 1 a 15 then a user can determine that ze 6 24 2 11 4 Choosing the parameters for Controlled Rounding The parameters that can be chosen for rounding are the rounding base b and the number of steps allowed If their value is released users including potential intruders will be able to compute existence interv
61. eeensessseeseeeneees 75 4 4 2 5 The Options at the Bottom of the table o ooooncnnnoninonincoconnconnconcnonnnconcnonononcnon noo 79 44 3 Linked Tabs ioii aaaeaii ai aide eiiiai iiaii 80 4 3 The Output MENU seipie rat ora o a are eae e a ae an ap Sears 82 AS Output Sa verka Dle aae a eile ae dd a o ao Se 82 4 5 2 Output View Report ooooocnoonnonncioncnonononcnonnonnnonnonnonnn nono nono nono n nro nnrnnn cnn nc nn rra rr cnn rcnannnnnss 83 4 53 Output Write Batch File siii da t 84 4 6 The Help MEMU ans roria eka EEE SE E Ni a AEE A ES i Eiaa 85 46 1 Help Contes dido ela Ari 85 4 0 2 Help Opos o ete el Ph ees 85 40 324 Help AD dd de da eo o e dota DL lO do od E 86 47 ol de 86 t ARGUS 3 3 user manual 3 Preface This is the user manual for T ARGUS version 3 3 T ARGUS is a software tool designed to assist a data protector in producing safe tables This manual describes the version of t ARGUS at the end of the CENEX SDC project With respect to the previous release of T ARGUS we have made many steps forward and T ARGUS now has facilities to protect hierarchical and some linked tables Also controlled rounding is now available The purpose of t ARGUS is to protect tables against the risk of disclosure i e the accidental or deliberate disclosure of information related to individuals from a statistical table This is achieved by modifying the table so that it contains less detailed information t ARGUS allows for several modifi
62. er options such as changing the status of individual cells manually this will be discussed further in the Reference chapter see section 4 4 2 aw ARGUS 3 3 user manual Table Size x Region ar2 B x r Cell Information a Value 16 847 647 25 2 711 808 2 320 534 2 505 043 2 799 074 6 510 758 385 5 5 719 049 659 680 688 962 756 529 1 549 049 385 Status Sate 1 986 129 5 5 398 062 348 039 354 711 418 778 466 529 Cost 16 847 647 1 809 246 0 223 990 221 332 241 913 258 233 863 393 385 Shadow MEE 578 289 96 997 90 309 92 338 79 518 219 127 O E 3 703 896 15 5 642 238 515 003 534 147 620 392 1 392 096 124 336 5 36 311 32 132 25 770 18 150 11 968 Top n of shadow 175 577 526 279 93 589 94 957 110 930 81 799 145 004 B paeng 141 482 2 234 995 10 5 345 803 251 358 251 188 303 377 1 083 254 818 286 166 535 136 556 146 259 217 066 151 870 Request J 0 4 576 116 648 972 543 570 663 897 775 132 1 944 545 485 326 63 767 75 442 87 305 59 953 198 859 3 664 560 537 911 430 851 515 020 643 762 1 537 016 426 230 47 294 37 277 61 572 71 417 208 670 4 193 971 15 701 549 602 281 618 037 647 021 1 625 068 Change status 2 752 743 15 488 613 392 395 363 490 402 925 1 105 305 SettoSafe 1 441 228 212 936 209 886 254 547 244 096 519 763 Setto Unsafe o A priori info Set to Protected AlNon StructEmpty Recode mSuppes HyperCube Modular Network x O
63. es by clicking on the or boxes which results in showing or omitting codes from the table or by choosing an overall maximum hierarchical level See the following windows for details Pressing the Apply button followed by Close will actually apply the selected recoding Press the undo button it is now possible to go back to the original recoding scheme Below this there are two windows one showing the recode window prior to applying the recoding for Region and the second showing the table following recoding a ARGUS 3 3 user manual Global Recode This window shows the new hierarchical codes after collapsing all second level categories Global Recode T ARGUS 3 3 user manual 33 By clicking Apply we obtain this window which shows the table after recoding Table Size x Region Yar2 6 842 647 20 25 2 711 808 2 320 534 2 505 043 2 799 074 6 510 758 385 4 373 664 5 5 719 049 659 680 688 962 756 529 1 549 049 385 3 703 896 15 5 642238 515 003 534 147 620 392 1 392 096 4 576 116 648 972 543 570 663 897 775 132 1 944 545 16 847 647 Shadow 1 6 847 647 contributions 42723 4 193 971 15 701 549 602 281 618 037 647 021 1 625 068 Top n of shadow 175 677 r oe 141 482 3 Change status Set t
64. esponse variable More than one response variable can be chosen t ARGUS 3 3 user manual 27 Shadow variable The shadow variable is the variable which is used to apply the safety rule By default this is the response variable More detail on the Shadow variable can be found in section 4 3 3 in the Reference chapter Cost variable This variable describes the cost of each cell These are the costs that are minimised when the secondary suppressed cells are calculated See section 2 5 in the Theory chapter for the further details By default this is the response variable but other choices are possible If the response or any other explicitly specified variable is used for this purpose the circle next to variable should be filled Then any variable name can be transferred from the cell items to the cost variable window It is also possible to use the frequency of the cells as a cost function This will suppress cells with respect to number of contributors to each cell A third option is that the number of cells to be suppressed is minimised irrespective of the size of their contributions unity option cost variable is set to 1 for each cell More details will be given in the Reference Chapter along with an example section 4 3 3 Note that choice of the cost variable does not have any impact when using the hypercube method for secondary suppression Weight If the data file has a sample weight specified in the metadata file the table ca
65. ffect the setting of two parameters Max sub codelist size and Max sub table size that GHMITER uses for memory allocation If the option normal size is active the default values mentioned below will be used Ticking the option large size will lead to a setting of 250 and 25000 respectively Max sub codelist size must exceed the largest maximum sub codelist size of all explanatory variables of the table The maximum sub codelist size of a hierarchical variable is the largest number of categories on the same hierarchical level that contribute to the same category on the hierarchical level just above The default value for Max sub codelist size is 200 Max sub table size must exceed the number of cells in the largest subtable e g the product of the maximum sub codelist sizes taken over all explanatory variables The default value is 6000 Note that we strongly recommend designing tables so that they fit the normal setting e g better think about restructuring the table rather than using the large option The better approach instead of using the large option would be to introduce a more detailed hierarchical structure into the table because in this way the table will provide more information to the user Additional parameters for the use of GHMiter n al JV Protection against inferential disclosure required CC x max computing time 5 minutes Modular This partial me
66. he CASC website http neon vb cbs nl casc Related 99wol heu r pdf 2 10 Network solution for large 2 dimensional tables with one hierarchy t ARGUS also contains a solution for the secondary cell suppression based on network flows This contribution is by Jordi Casto of the Universitat Polit cnica de Catalunya in Barcelona The network flows solution for cell suppression implements a fast heuristic for the protection of statistical data in two dimensional tables with one hierarchical dimension 1H2D tables This new heuristic sensibly combines and improves ideas of previous approaches for the secondary cell suppression problem in two dimensional general 2 and positive 7 9 tables Details about the heuristic can be found in 4 5 Unfortunately this approach is only possible for two dimensional tables with only one hierarchy due to the limitations of the network flows The heuristic is based on the solution of a sequence of shortest path subproblems that guarantee a feasible pattern of suppressions i e one that satisfies the protection levels of sensitive cells Hopefully this feasible pattern will be close to the optimal one The current package is linked with three solvers CPLEX7 5 8 0 8 PPRN 6 and an efficient implementation of the bidirectional Dijkstra s algorithm for shortest paths that will be denoted as Dijkstra 1 Later releases of CPLEX will also work if the interface routines are the same than for versi
67. he system to solve the remaining unsafe cells by finding secondary cells to protect the primary cells At this stage the user can choose between several options to protect the primary sensitive cells Either they choose the hypercube method or the optimal solution In this case they also has to select the solver to be used Xpress or Cplex After this the table can be stored for further processing if necessary and eventual publication gt Loeve Anneke 2001 Notes on sensitivity measures and protection levels Research paper Statistics Netherlands Available at http neon vb cbs nl casc related marges pdf t ARGUS 3 3 user manual 9 2 2 Sensitive cells in frequency count tables In the simplest way of using t ARGUS sensitive cells in frequency count tables are defined as those cells that contain a frequency that is below a certain threshold value This threshold value is to be provided by the data protector This way of identifying unsafe cells in a table is the one that is implemented in the current version of t ARGUS It should be remarked however that this is not always an adequate way to protect a frequency count table Yet it is applied a lot Applying a dominance rule or a p rule is useless in this context One should think about possible disclosure risks that a frequency count table poses and possible disclosure scenarios in order to simulate the behaviour of an intruder Such an analysis would probably come up with different ins
68. he two variables All marginal cells both suppressed and not suppressed are then fixed in the calculation of the secondary suppressions of that lower level table i e they are not allowed to be secondarily suppressed This procedure is then repeated until the tables that are constructed by crossing the lowest levels of the spanning variables are dealt with A suppression pattern at a higher level only introduces restrictions on the marginal cells of lower level tables Calculating secondary suppressions in the interior while keeping the marginal cells fixed is then independent between the tables on that lower level i e all these sub tables can be dealt with independently of each other Moreover added primary suppressions in the interior of a lower level table are dealt with at that same level secondary suppressions can only occur in the same interior since the marginal cells are kept fixed However when several empty cells are apparent in a low level table it might be the case that no solution can be found if one is restricted to suppress interior cells only Unfortunately backtracking is then needed Obviously all possible sub tables should be dealt with in a particular order such that the marginal cells of the table under consideration have been protected as the interior of a previously considered table To that end certain groups of tables are formed in a specific way see De Wolf 2002 All tables within such a group are
69. his file exists Note both files do not have to t ARGUS 3 3 user manual 41 have the same name The metafile describes the variables in the microdata file both the record layout and some additional information necessary to perform the SDC process Each variable is specified on one main line followed by one or more option lines 1 The first line gives the name of the variable followed by the starting position for each record the width of the field and optionally one or two missing value indicators for the record Missing values are no longer required in t ARGUS 2 The following lines explain specific characteristics of the variable e lt RECODEABLE gt This variable can be recoded and used as an explanatory variable in a table e lt CODELIST gt This explanatory or spanning variable can have an associated codelist which gives labels to the codes for this particular variable The name of the codelist file follows this lt CODELIST gt command The default extension is CDL See below rda file for an example of a codelist file e lt NUMERIC gt This numeric variable can be used as cell item e lt DECIMALS gt The number of decimal places specified for this variable e lt WEIGHT gt This variable contains the weighting scheme e lt HIERARCHICAL gt This variable is hierarchical The codings are structured so that there is a top code such as Region N S E W and within each of these are smaller more specific areas and possibly sub ar
70. ho wish to group together to estimate the largest contributor A typical example would be that the sum of all reporting units excluding the largest two must be at least 10 of the value of the largest Therefore in T ARGUS set p 10 and n 1 as there is just one intruder in the coalition respondent xz The choice of safety rule is specified by the user and the chosen parameters can then be entered From these parameters symmetric safety ranges are computed automatically prior to the secondary suppressions BE ARGUS 3 3 user manual For the minimum frequency rule a safety range is calculated from the user given range This is usually a small positive value and is required to enable secondary suppression to be carried out A manual safety range is also required for cells that can be made unsafe by intervention of the user Other options such as the Request Rule or the Holding Rule will be looked at in more detail in the Reference chapter section 4 3 3 When everything has been filled in click v to transport all the specified parameters describing tey table to the listwindow on the bottom As many tables as you want may be specified only limited by the memory of the computer If a table is to be modified press the button Creating the Table Pressing the Compute tables button will invoke t ARGUS to actually compute the tables requested and the process to start disclosure control may be invoked T ARGUS
71. ial simplex algorithm implementations like the min cost flow computation which would required to work with tables that can be modelled as a network e g 2 dimensional tables or collections of 2 dim tables linked by one link On this special table ad hoc approaches solving network flows or short path problems could be implemented to avoid using general linear programming solvers In any case future works will try to replace the commercial solvers by freely available linear programming solvers t ARGUS 3 3 user manual 15 2 9 The Modular approach The modular HiTaS solution is a heuristic approach to cell suppression in hierarchical tables Hierarchical tables are specially linked tables at least one of the spanning variables exhibits a hierarchical structure i e contains many sub totals In Fischetti and Salazar 1998 a theoretical framework is presented that should be able to deal with hierarchical and generally linked tables In what follows this will be called the mixed integer approach In this framework additional constraints to a linear programming problem are generated The number of added constraints however grows rapidly when dealing with hierarchical tables since many dependencies exist between all possible sub tables containing many sub totals The implemented heuristic approach HiTaS deals with a large set of sub tables in a particular order A non hierarchical table can be considered to be a hierarchical tab
72. ify Modify Output Help ce BE BE aa Hunsafe combinations in every dimension variable Region Variable dimi dim2 Code Label Freq dmi dm2 12 0 Total 42723 I North 11395 Groningen 6112 Friesland 3798 Drenthe 1485 East 10227 Overijssel 538 Flevoland 1597 Gelderland 5446 Utrecht 2646 West 10054 Noord Holl 1182 Zuid Holla 8018 Zeeland 854 South 11047 Noord Bra 7511 Limburg 3536 0 Nr si 2 3 D 4 5 6 7 Wi 8 9 ODOOGOGODOOGOGOODGOOODOGOODOGOGO COOH 0O000OONONNOON NNO 29 3 2004 13 19 Region Two of the North subtotal cells are disclosive Within the North region 2 cells in Groningen are disclosive Two East subtotal cells are also unsafe Within the East region 2 cells in Overijssel are unsafe along with 2 cells in Gelderland Finally there is 1 unsafe cell for the South subtotal and within this region there is 1 unsafe cell for Noord Brabant 3 2 1 View table The Modify View table option shows the calculated table plus some additional information This is regarded as the key window in t ARGUS The selected table is displayed in a spreadsheet view Safe cells are shown in black whilst cells failing the safety rule and or minimum frequency rule are displayed in red These are the default colours The user now has to decide whether to carry out secondary suppressions immediately or to perform some recoding first There are oth
73. ights than using a simple thresholding rule e g like the one sketched in the reference just mentioned We just mention here the risks of group disclosure when a small group of respondents have all the same score on a certain category This risk is often also referred to as the problem of 100 cells Further research on this topic is being carried out at a o Statistics Netherlands 2 3 Table redesign If a large number of sensitive cells are present in a table 1t might be an indication that the spanning variables are too detailed In that case one could consider combining certain rows and columns in the table This might not always be possible because of publication policy Otherwise the number of secondary cell suppressions might just be too enormous The situation is comparable to the case of microdata containing many unsafe combinations Rather than eliminating them with local suppressions one can remove them by using global recodings For tabular data we use the phrase table redesign to denote an operation analogous to global recoding in microdata sets The idea of table redesign is to combine rows columns etc by adding the cell contents of corresponding cells from the different rows columns etc It is a property of the sensitivity rules that a joint cell is safer than any of the individual cells So as a result of this operation the number of unsafe cells is reduced One can try to eliminate all unsafe combinations in this way but th
74. ill in the name of this file automatically in the space under the metadata heading If no metadata file is specified the program has the facility to let you specify the metadata interactively via the menu option Specify Metafile This is also the place to make changes to the metadata file In subsection 3 1 2 we will give a description of the metadata file for T ARGUS As an alternative to the ASCII files the microdata can be stored in an SPSS system file There is an option to read the system files 3 1 2 Specify metafile When you enter or change the metadata file interactively using t ARGUS the option Specify Metafile will bring you to the following screen Specify metafile Fixed format y m Attributes name Region explanatory variable starting position 12 response variable Year IndustryCode Size length 2 sample weight variable decimals fo holding indicator C request protection Codelist automatic Missings codelist filename sl lr REGION CDL By IV hierarchical Levels from microdata E A E E a E El E El a New E Levels from file Leading string jo Delete E fiegion2hte S A Cancel The key elements of this window are the definitions for each variable Most variables will be defined as one of the following e Explanatory Variable a variable to be used as a categorical spanning variable when defining a table e Response Variable a vari
75. ill miss the best solution and lead to some overprotection Other simplifications of the heuristic approach that add to this tendency for over suppression are the following when assessing the feasibility of a hypercube to protect specific target suppressions against interval disclosure the method e is not able to consider protection maybe already provided by other cell suppressions suppressed cells that are not corner points of this hypercube within the same sub table e does not consider the sensitivity of multi contributor primary suppressions properly that is it does not consider the protection already provided in advance of cell suppression through aggregation of these contributions e attempts to provide the same relative ambiguity to eventually large secondary suppressions that have been selected to protect cells in a linked sub table as if they were single respondent primary suppressions while actually it would be enough to provide the same absolute ambiguity as required by the corresponding primary suppressions 2 7 2 The ARGUS implementation of GHMITER e In the implementation offered by ARGUS GHMITER makes sure that a single respondent cell will never appear to be corner point of one hypercube only but of two hypercubes at least Otherwise it could happen that a single respondent who often can be reasonably assumed to know that he is the only respondent could use his knowledge on the amount of his own contribution to recalculate
76. in All rules can appear several times The first two P NK are for the individual level the following two for the holding level The first FREQ and REQ are at the individual level the second one is for the holding ZERO the zero safety range parameter can be given only once for each safety rule MIS 0 cells with a missing code are unsafe if the safety rules are violated 1 these cells are always safe Default 0 WGT 0 no weights are used 1 apply weights for computing the tables 3 apply weights also in the safety rules Default 0 MAN Manual safety margin This margin is used e g of a table with only the status is read or if via the apriori option a cell is set to manually unsafe The default value 20 2 READMICRODATA Just reads the microdata file and calculates the table no parameters are required READTABLE Just reads the tabular inputfile If the only parameter 1 the compute missing totals procedure will be used Default do not compute this APRIORI This reads an a priori file The parameters are Filename Table number and the separator Filename TabNo Separator 48 t ARGUS 3 3 user manual SUPPRESS This command applies the secondary suppression The possible options are GH Hypercube MOD Modular OPT Optimal NET Network RND Controlled rounding The parameters are a solution with a few parameters between brackets The first parameter i
77. ing one can be modified or deleted An example of the metafile window is shown here In the left top field the file type fixed or free format can be specified The following attributes for each variable can be specified or edited e name of the variables e its first position in the data file e its field length e the number of decimals Furthermore the kind of variable can be specified or edited more detail on these can be seen in section 4 2 1 e explanatory variable This can be used as a spanning variable in the row or column of the table e response variable This can be used as a cell item e weight variable This specifies the sampling weight of the record and is based on the sampling design used The following are specialist variable types and have not been previously described As they are specific to designating safety rules more detail is given in section 4 3 3 T ARGUS 3 3 user manual 51 Holding Indicator The Holding indicator sometimes groups of records belong together So it could be better to apply the confidentiality protection to businesses at a number of levels This variable is the group identifier t ARGUS expects the records of a group to be together in the input datafile An example is shown in section 4 3 3 Request Protection The Request protection option is used if the Request Rule under Specify tables is to be applied This variable indicates whether or nor a records asked for protection This i
78. ject that can be seen as a continuation follow up of the CENEX project brought the development of T ARGUS another step forward In this first release within the ESSNet we have corrected several errors and inconsistencies and also introduced the option of reading data from a SPSS system file Also the audit option has been updated by including a very much improved version of the audit routine originally developed by the Illmenau team during the CASC project The original version proved to be slow but we achieved a big improvement here This version now works with both CPlex and XPress The testing of the members of the ESSNet team has contributed to several smaller improvements Within the scope of the ESSnet project another release is foreseen by the end of 2009 t ARGUS 3 3 user manual 7 1 Introduction The growing demands from researchers policy makers and others for more and more detailed statistical information leads to a conflict Statistical offices collect large amounts of data for statistical purposes The respondents are only willing to provide the statistical offices with the required information if they can be certain that these statistical offices will treat their data with the utmost care This implies that respondents confidentiality must be guaranteed This imposes limitations on the amount of detail in the publications Practice and research have generated insights into how to protect tables but the problem is not yet definitivel
79. land Gelderland Utrecht West Noord Hol Zuid Holla Zeeland South Noord Bra Limburg Status 1 4 2004 9 59 Ui 0 2 2 0 0 2 2 0 2 0 0 0 0 0 1 1 0 0 It should be noted that more than one response variable can be specified This will produce tables for each of the Response variables using the Spanning variables specified t ARGUS 3 3 user manual 63 4 3 5 Specify Specify tables for tabular data When the Specify Metafile option is followed the Specify Table metadata option is also available and the window is displayed here This will allow the application of safety rules such as the Dominance Rule and the P rule Section 4 3 3 specifying tables from microdata will explain these safety rules and other options in detail Specify table E s 10 x Number 2 Variables Cost Explanatory CostFunction for Status second suppression Frequency ResponsWar Lambda fi TopN 3 Frequency C Unity Calculate missing incorrect totals m safety rule Manual safety fi 0 4 range Use given status Use safety rules Dominance rule 3 number 75 percentage Missing safe Zero unsafe Zero margin fi 0 Minimum frequency 2 Min frequency range hi5 In the safety rule frame the type of rule can be selected along with the value of the parameters These are the dominance rule and P rule Additionally
80. le describes the variables in the microdata file both the record layout and some additional information necessary to perform the SDC process Each variable is specified on one main line followed by one or more option lines An example is shown here The leading spaces shown only serve only to make the file more readable they have no other meaning Wear L 2 99 lt RECODEABLE gt IndustryCode 4 5 99999 lt RECODEABLE gt lt HIERARCHICAL gt SRL Wiss SF i i Size Y 2 99 lt RECODEABLE gt Region 12 2 99 lt RECODEABLE gt lt CODELIST gt Region cdl lt HIERCODELIST gt Region2 hrc lt HIERLEADSTRING gt lt HIERARCHICAL gt Wgt 14 4 9999 lt NUMERIC gt lt DECIMALS gt i lt WEIGHT gt varil 19 999999999 lt NUMERIC gt War2 28 10 9999999999 lt NUMERIC gt lt DECIMALS gt 2 T ARGUS 3 3 user manual 25 Details of the variables Year For this variable each record begins on position 1 is 2 characters long and missing values are represented by 99 It is also recodeable implicitly stating that it is an explanatory or spanning variable used to create the tables IndustryCode For this variable each record begins on position 4 and is 5 characters long Missing values are represented by 99999 As well as being recodeable this variable is hierarchical and the hierarchy structure is specified The first 3 characters are in the top hierarchy le
81. le no 1 Size 9 Region 18 Respons Var Var2 Shadow Var Cost Var un a m Safe manual Unsafe Unsafe request Unsafe Freq Unsafe Zero cell Unsafe Singleton Unsafe Singleton m Unsafe manual Protected Secondary Secondary fr man Empty non struct Empty AE EE m AE m A m B m B ma A ma A m AE ma BE m AA SE ma pan Total 162 12058 0 0 0 0 0 0 0 1 0 0 0 101085881 04 dan ono 2014 620472 ooomoo0ccceceo 256338 E ds E 948659102 04 94869102 a 12058 620472 ooo occcc coo 101085881 04 Protected by Hypercube 3 2 2 Save the safe table When the table is safe it may be written to the hard disk of the computer The user has four options 1 As a CSV file This Comma separated file can easily be read into Excel Please note that t ARGUS uses the as the field separator in this CSV file This might influence opening the CSV file in Excel A solution for this is to change the settings in the Windows control panel This is a typical tabular output maintaining the appearance of the table in T ARGUS 2 A CSV file for a pivot table This offers the opportunity to make use of the facilities of pivot table in Excel The status of each cell can be added here as an option Safe Unsafe or Protected for example The information for each cell is displayed on a single line unlike standard csv format 3 A text file in the format code val
82. le seoor niiin iinei ri Erir ces cenvenndes cous AaS E i aa 30 3 2 2 Savethe safe a0 oaaao eaa a o aa thas obaebacosaebeteadswistacesdevas 38 4 Reference Section Description of the Menu Items ooooonoccnononocononncooncnonononnconncoonccannnos 40 O TE 40 AD THe Bile MU A dd idad 41 4 2 1 File Open Microdata cccccccesccesscssssessecnseessecsseesseeceecsseeeseeseecsseesseceseseeeeseeesseeaes 41 4 22 Fill Open Table ui 45 4 2 3 File Open Batch Proc sSiecnnannientni iioii iiin i aiie 47 AD E A E D a EE E E nae Se A E E e 50 Ass The Specify a e a dd o A 50 4 3 1 Specify Metafile for microdata ooooocninconinnnonnnonnconnconnoconononnnnnnconnononononcrnrnonnninos 50 4 3 2 Specify Metafile for tabular data o ooonccnnnnnnnnionnoconoconcnonnnonnconncnonononncnnrcnnnononononos 53 4 3 3 Specify Specify Tables for microdata o oonnnoninoninnononcnoncconcnonnconcconncnonononcnoncnonnnnos 55 4 3 4 Specify Specify tables for tabular data ooooooinccnnncnnnnioncnoonoconononononononnconnconnonanononos 64 4 4 Phe Modify menu e a 65 4 4 1 Modify Select Table nurseri iniii cnn nono nono E aa E EE ia 65 4 4 2 Modify View Tabler einer ane eeen a fuse raas aerea aa ete tees 65 AAD The View tablesireci Sene n A tb 65 4 4 2 2 Global tecodine cidad 68 4 4 2 3 Secondary suppresslOn ia traia ios 71 4 4 2 4 Controlled rounding cc ecccesccessceseeeeeessceseecesecssecscesseeceeenseesseess
83. le with just one level In that case the approach reduces to the original mixed integer approach and hence provides the optimal solution In case of a hierarchical table the approach will provide a sub optimal solution that minimises the information loss per sub table but not necessarily the global information loss of the complete set of hierarchically linked tables In the following section a short description of the approach is given For a more detailed description of the method including some examples see e g De Wolf 2002 HiTaS deals with cell suppression in hierarchical tables using a top down approach The first step is to determine the primary unsafe cells in the base table consisting of all the cells that appear when crossing the hierarchical spanning variables This way all cells whether representing a sub total or not are checked for primary suppression Knowing all primary unsafe cells the secondary cell suppressions have to be found in such a way that each sub table of the base table is protected and that the different tables cannot be combined to undo the protection of any of the other sub tables The basic idea behind the top down approach is to start with the highest levels of the variables and calculate the secondary suppressions for the resulting table The suppressions in the interior of the protected table is then transported to the corresponding marginal cells of the tables that appear when crossing lower levels of t
84. lity t ARGUS offers in a later stage to apply sensitivity rules etc Here by clicking OK this allows both re specification of the metafile under the Specify Metafile option and the setting safety rules using the Specify Table Metadata option Format An example of a 2 dimensional table This artificially generated datafile shows 2 explanatory variables cell value cell frequency the top 3 values in each cell With this information T ARGUS is still able to apply the primary sensitivity rules like p rule T T 2940 46 200 200 200 T A 745 12 200 100 100 T B 610 12 200 100 100 T C 665 12 200 100 100 T D 700 12 200 100 100 ip T 795 12 200 100 100 ip A 350 35 200 100 50 1 B 190 3 100 50 40 ip 150 35 100 40 10 ip D 115 35 50 40 25 2 T C70 12 200 100 100 2 A 115 3 50 40 25 27 B 540 73 200 100 40 2 115 3 50 40 25 27 D 120 p3 100 10 10 3 T 765 12 200 100 100 3 A 190 3 100 50 40 3 B 115 35 50 40 25 46 T ARGUS 3 3 user manual Alternatively if only the status is given to T ARGUS there is no other option than to use the status and treat all unsafe cells as manually unsafe For tables of dimension 3 or higher additional columns for the explanatory variables would have to be added as well as additional rows to allow for the increased depth of the table The next step will be to optionally edit the metadata and then r
85. ls If no rule is specified the minimum base is 1 Rounding to base 1 can be used to round a table with fractional entries for cosmetic motives Note that in some cases the choosing a small rounding base may lead to a nonfeasible problem increasing the base may make the problem feasible Number of steps allowed This value specifies the maximum number of steps allowed in order to find a feasible solution when a zero restricted one does not exist The default value is 0 i e zero restricted Higher values can be chosen by selecting the value from the drop down menu Note that the higher the number of steps allowed the lengthier is the search hence the greater the risk of hitting the time constraint At any rate if a zero restricted solution exists this is the solution provided whatever the number of steps allowed Max computing time This value determines the time after which the user is prompted for a decision about continuing or stopping the search The default value is 20 minutes When the maximum time is hit the user is prompted to enter a new maximum time or to choose to terminate the search Partitions This option enables the partitioning of the table into sub tables corresponding to each category of the first spanning variable This option is recommended for tables with more than approximately 150 000 cells Partitioning can only be used in this version when the first variable is non hierarchical The first variable should be such tha
86. ly using the holding indicator as the correct cells are safe that would be unsafe if the holding indicator was not being used A ARGUS 3 3 user manual Table categoryl x category2 sales tot 20 30 tot 4 448 1 984 2 464 800 3 285 1 831 1 454 900 1 163 153 1 010 Sette Sate Set to Unsafe Undo Sinaleton Suppress IV 3dig separator Select Table Change View Write table meee After all the options have been selected compute the table When all the necessary information has been given click v to transport all the specified parameters to the listwindow on the bottom As many tables as required can be specified but as the size of the memory of a computer is restricted 1t is not advisable to select too many tables To modify an already made table press the button Click on Compute Tables to compute the tables In case of an SPSS syetm file SPSS will first be called to export the needed microdata automatically to a scratch fixed format ASCII file in the TEMP directory When the table s have been computed the main window of t ARGUS will be displayed again with an overview of all the unsafe cells per variable for every table calculated An example is shown here for the Size by Region table Firstly the Size dimension is looked at and then secondly the Region dimension The window underneath the main menu for T ARGUS shows the number of unsafe combinations per variable For exam
87. mization phase Another fundamental ingredient is the heuristic routine which allows the algorithm to start with an upper bound of the optimal loss of information This heuristic routine ensures the production of a protected pattern if the algorithm is interrupted by the user before the end In other words thanks to the heuristic routine the implemented algorithm provide a near optimal solution if the execution is cancelled before having a proof of optimality During the implicit enumeration approach 1 e the branch and cut and price the heuristic routine is called several times thus providing different protected patterns and the best one will be the optimal solution if its loss of information is equal to the lower bound This lower bound is computed by solving a relaxed model which consists of removing the integrability condition on the integer model Since the relaxed model is a linear program a linear programming solver must be called We have not implemented our own linear programming solver but used a commercial solver which is already tested by other programmers for many years A robust linear programming solver is a guarantee that no numerical trouble will appear during the computation That is the reason to requires either CPLEX from ILOG or XPRESS from DashOptimization Because the model to be solved can be applied to all type of table structures 2 dim 3 dim 4 dim etc including hierarchical and linked tables we cannot use spec
88. n 99 and is one character long Individuals or companies wishing to make use of this rule are represented by 1 or 2 Any other value will eb interpreted as no request Two different parameters sets for the request rule can be specified the first set will be applied to the companies where the first code has been specified the second set to the companies with the second code The request rule is further explained in section 4 3 3 Holding Indicator entgroup 101 1 lt HOLDING gt Here the variable entgroup is in column 101 and is one character long This variable is to act as the holding indicator see section 4 3 1 for further explanation The records of a holding should be grouped together in the input datafile TARGUS will not search through the whole file to try to find all records for a holding 44 t ARGUS 3 3 user manual Free format mirodata For a free format datafile the RDA is a little bit different Notably the first line specifies the separator used This indicates to T ARGUS that the record description is for a free format file And for each variable the starting position is no longer specified as this is meaningless in a free format datafile For the rest there are no differences compared to the fixed format version The example given above for a fixed format file will now looks as CoE PARAROR EUP YEAR 2 99 lt RECODEABLE gt SiO 5 99995 lt RECODEABLE gt lt HIERARCHICAL gt ARI ES 3 i 1 O GK 2 9
89. n be computed taking this weight into account In this case the apply weights box should be ticked More details will be given in the Reference Chapter along with an example section 4 3 3 The safety rule The concept of safety rules is explained in section 2 1 in the chapter on Theory In this window the left side of the window allows the type of rule to be selected this is usually either the dominance rule or p rule along with the necessary parameter values Several rules together can be set for any particular table Additionally the minimum number of contributors threshold rule can be chosen In the window this is referred to as the Minimum Frequency Now brief summaries are provided to define the Dominance and p rules Dominance Rule This is sometimes referred to as the n k rule where n is the number of contributors to a cell contributing more than k of the total value of the cell if the cell is to defined as unsafe for publication p rule The p rule says that if x can be determined to an accuracy of better than p of the true value then it is disclosive where x is the largest contributor to a cell This rule can be written as dE X gt a x for the cell to be non disclosive where c is the total number of contributors to the cell i 3 and the intruder is a respondent in the cell It is important to know that when entering this rule in TARGUS the value of n refers to the number of intruders in coalition w
90. n change the coding for the missing values by entering these codes in the relevant textboxes Pressing the Apply button will actually restructure the table If required a recoding may always be undone 4 4 2 3 Secondary suppression The actions in the suppress pane in the table window after selecting modify table are now looked at With suppress the table can be protected by causing additional cells to be suppressed This is necessary to make a safe table Suppression Options There are a number of suppression options which can be seen on the bottom right hand side of the window Hypercube Modular Network Optimal t ARGUS 3 3 user manual 71 Table Region x Size Yar2 m Cell Information Value 16 847 647 5 842 6 25 2 711 808 2 320 534 2 505 043 2 799 074 6 510 758 385 5 4 373 664 5 719 049 659 680 688 962 756 529 1 549 049 385 tatus Sate 1 986 129 5 5 398 062 348 039 354 711 418 778 466 529 Cost 16887647 1 809 246 223 990 221 332 241 913 258 233 863 393 385 Shadow D6047 547 578 289 96 997 90 309 92338 79518 219 127 er 3 703 896 642 238 515 003 534 147 620 392 1 392 096 124 336 36 311 32132 25 770 18 150 11 968 Top n of shadow 175 677 526 279 93 589 94 957 110 930 81 799 145 004 os ie 2 234 995 345 803 251 358 251 188 303 377 1 083 254 i 818 286 166 535 136 556 146 259 217 066 151 870 Request 0 4 576 116 648 972 543 570 663 897 775 132 1 944 545 485 326 63 767 75 442 87 305 59 953 198 859 3 664 5
91. nd 10 The largest two contributors are now 100 and 100 These are regarded as the largest two values for application of the safety rules If the weights are not integers a simple extension is applied The safety rule The concept of safety rules is explained in section 2 1 On the left side of the window the type of rule that can be selected along with the value of the parameters is shown The possible rules are e Dominance Rule e P Rule e Request Rule this rule is described in detail later in this section Additionally the minimum number of contributors may be chosen in the minimum frequency box Two dominance rules and two P rules can be applied to each table When 2 rules are specified for a cell to be declared non disclosive it must satisfy both rules Dominance Rule This is sometimes referred to as the n k rule where n is the number of contributors to a cell contributing more than k of the total value of the cell if the cell is to be defined as unsafe A t ARGUS 3 3 user manual 57 popular choice would be to set n equal to 3 and k equal to 75 An example of the window when specifying a single dominance rule is shown at the start of this section P rule The P rule says that if x can be determined to an accuracy of better than P of the true value then it is disclosive where x is the largest contributor to a cell The rule can be written as e y X gt a E for the cell to be non disclosive where c is the
92. nstance Leon Willenborg and Ton de Waal 1996 Statistical disclosure control in practice Springer Verlag New York Section 6 3 A ARGUS 3 3 user manual 2 5 Information loss in terms of cell costs In case of secondary cell suppression it is possible that a data protector might want to differentiate between the candidate cells for secondary suppression It is possible that they would strongly prefer to preserve the content of certain cells and are willing to sacrifice the values of other cells instead A mechanism that can be used to make such a distinction between cells in a table is that of cell costs In t ARGUS it is possible to associate different costs with the cells in a table The higher the cost the more important the corresponding cell value is considered and the less likely it will be suppressed We shall interpret this by saying that the cells with the higher associated costs have a higher information content The aim of secondary cell suppression can be summarised by saying that a safe table should be produced from an unsafe one by minimising the information loss expressed as the sum of the costs associated with the cells that have secondarily been suppressed t ARGUS offers several ways to compute these costs The first option is to compute the costs as the sum of the contributions to a cell Alternatively another variable in the data file can be used as the cost function Secondly this cost can be the frequency of the contributors
93. ntioned above GHMITER is unable to add the protection given by multiple hypercubes In certain situations it is not possible to provide sufficient protection to a particular sensitive cell or secondary suppression by suppression of one single hypercube In such a case GHMITER is unable to confirm that this cell has been protected properly according to the specified sliding protection ratio It will then reduce the sliding protection ratio automatically and individually step by step for those cells the protection of which the program cannot confirm otherwise In steps to 9 we divide the original ratio by k values of k from 2 to 10 and if this still does not help in step 10 we divide by an extremely large value and finally if even that does not solve the problem step 11 will set the ratio to zero The t ARGUS report file will display the number of cases where the sliding protection range was reduced by finally confirmed sliding protection ratio Note that that the number of cases with range reduction reported by this statistic in the report file is very likely to exceed the actual number of cells concerned because cells belonging to multiple sub tables are counted multiple times In our experience this concerns particularly the cases where the protection level was reduced to an infinitely small positive value in step 10 see above Step 10 is usually required to confirm protection of large high level secondary suppressions whi
94. o Safe Set to Unsafe AS Set to Protected All Non Network Cc Optimal Suppress C Rounding Undo Suppress M 3 dig separator cae Table Change View Write table J Output View Table Summary Close 34 T ARGUS 3 3 user manual Non Hierarchical Recoding Global Recode Ioj x Al Variable Read CATEMPAMUS gre Apply E Region Unda Codelist for recode m Missing Values Warning 2 In this example the non hierarchical Size variable has been selected to be recoded The user can either write the required recodings in the edit box or import them from a previously written file In the example the line 2 2 6 results that categories 2 3 4 5 and 6 will be recoded into a new category 2 whilst categories 7 8 and 9 will be recoded into the new category 3 Once the recoding has been applied both for hierarchical and non hierarchical data the table can again be displayed If there are now no cells which fail the safety rules the table can be saved as a protected table However if there are still a number of unsafe cells secondary suppression needs to be carried out This is necessary as the table is not yet safe If only the cells failing the safety rules are suppressed other cell values could be obtained by differencing Secondary Suppression The Suppress button is an important button It will activate the modules for computing
95. of 5 Note that the values that were originally zero hence empty cells denoted with a dash are still shown as a dash while the values that have been rounded down to zero are shown as zeros Table Size x Region freq lO x r Cell Information 6 110 3 800 1 485 10 230 540 1 600 5 445 2 645 10 055 1 180 8 020 855 11 045 7 510 3 535 4 595 1 430 745 530 155 1 100 45 155 570 330 1 025 125 800 100 1 040 665 375 Value 42725 Status Sae Cost 42 723 Shadow py contributions 42723 Top n of shadow Holding E level Request 0 r Change status me o Set to Protected All Non StructE mpty Network Optimal Bound Rounding Undo Rounding VF 3g separator Select Table _ChangeView _wetabe P Output View Table Summary Close The rounded table Bo ARGUS 3 3 user manual 4 4 2 5 The Options at the Bottom of the table At the bottom of this window there are a few additional options These options will be described here Change View By clicking on Change View in the Table window after clicking on Modify ViewTable at an earlier stage the dialog box below pops up The user can specify which variable is wanted in the row and the column In the two dimensional case the table can only be transposed In the higher dimensional case the remaining variables will be in the layer For these layer variables a combo box will appear at the
96. of GHMITER cooooccnicccconcconononnnoncnonncconcnononan cnn nono ncnononanos 12 2 7 3 References on GHMiter ec ceceseessescceeeecescesceaeceseeaecaeceaeeaecesceaecneseaeeaeceeseaeearenseenees 14 2 8 Optimisation models for secondary cell suppression ooooonooccnocononononnconnconncnononan con ncon non nononcnnss 14 2 9 The Modular appro dci AS Miele ds 16 2 10 Network solution for large 2 dimensional tables with one hierarchy oooooncnncnnnncionmn 17 ZTT Controlled roundi ei arista ala 18 2 11 1 Restricted and non restricted controlled rounding ooooccnnocnonnnonncconanoncconncnnncnnonanos 18 2 11 2 Optimal first feasible and RAPID solutiONS ooconncnncnncnocnnonnononcnonnconccnnonnonnconncnnon 19 2 11 3 Protection provided by controlled TOUNAINE ocononcnoonononononnnonnconccnononancconncnnnonanononos 19 2 11 4 Choosing the parameters for Controlled RoUNdiN8B oooocnnnccinnnnncocnoonccnconnorncancnnnos 20 2 12 Functional design of T ARGUS c oooonoccnocononononnnonnconnonononanonon nono ncnononn nro oran n nono nono nro nr non nrrannnannos 21 3 ALQUEOLTAR GUS AS tess eee eek eet a tee hits See La ets O O 22 3 1 Preparation aid 22 3 1 1 Ope ramicrodata file consi 23 3 122 Specify metallica 24 BL Bye Speciby tables st SRA o eA Ace MONA la he hie A id e he 27 3 2 The Process of disclosure COntrol ceccesccsseeseesseeseeseeneeeseeseeeseeseeseeescescecsecseeneesseeeeeseseeeeeeseeaes 29 321 View tab
97. ogress information can be showed on the screen If you reopen an SPSS system file with a meta data file T ARGUS will check whether all the variables in the RDA file are really available in the system file The RDA file is very similar to the RDA file for a fixed format ASCII file One exception is that the first line will read lt SPSS gt 4 2 2 File Open Table t ARGUS 3 3 user manual 45 This is the option allowing the input of tabular data into t ARGUS In this case an already constructed table is read in This is reached by selecting Open a Table on the main window of T ARGUS Open Table file i E Table data file H 4nco T audrgqusVB Datata TestT abData TestT ab2 tab Table meta data file H ncosT au4rqus B D atata T estT abD ata testtab rda al Cancel DK For changing inspecting the metadata go to SpecifylMetadata For specifying the table s go to SpecifylT ables The name of the datafile containing the table to be opened in the format given below needs to be specified in the top line The name of the file containing the metadata is entered on line 2 Later on you will be offered the option of adapting the metadata or even enter the metadata from scratch There is a great flexibility with this option as it allows the status the cell frequency the top n values and the lower and upper protection levels to be entered for each cell The more detail is given for each cell to more flexibi
98. on 8 0 The heuristic can use any of the three solvers for the solution of the shortest path subproblems although Dijkstra is recommended and the default one for efficiency reasons CPLEX is needed if a lower bound of the optimal solution want to be computed The auditing phase can be performed with either CPLEX or PPRN PPRN and Dijkstra were implemented at the Dept of Statistics and Operations Research of the Universitat Polit cnica de Catalunya and are included in NF CSP PPRN was originally developed during 1992 1995 but it had to be significantly improved within the CASC project to work with NF CSP Dijkstra was completely developed in the scope of CASC The third solver CPLEX is a commercial tool and requires purchasing a license However PPRN is a fairly good replacement although not so robust for the network flows routines of CPLEX Therefore in principle there is no need for an external commercial solver unless lower bounds want to be computed Even though two of the three solvers are included in the distribution of NF CSP this document only describes the features of the heuristic and from the user s point of view A detailed description of PPRN and Dijkstra s solvers can be found in 3 6 and 1 respectively t ARGUS 3 3 user manual 17 The current implementation in T ARGUS however only uses the Dijkstra and the PPRN solvers We have restricted ourselves from commercial solvers here as the network flows give alre
99. ost 16 847 647 Shadow J 16 847 647 contributions 42723 Top n of shadow 175 677 r Holding 141 482 level 135 469 Request D m Change status Set to Safe All Non StructEmpty Recode m Suppress HyperCube Modular Network Optimal Suppress rinda Undo Suppress Clicking on a cell in the main body of the table makes information about this cell visible in the Cell Information pane Here the following information can be seen the cell value the cell status Dn bh UN the total cost variable value for the cell the total of the shadow variables for the cell the number of contributors to a cell the values of the shadow variable for the largest contributors Information about the Holding level and the Request protection variable are also displayed here The status of the cell can be below Safe Does not violate the safety rule Safe from manual manually made safe during this session Unsafe According to the safety rule Unsafe request Unsafe according to the Request rule Unsafe frequency Unsafe according to the minimum frequency rule Unsafe from manual manually made unsafe during this session see Change Status below Protected Cannot be selected as a candidate for secondary cell suppression see Change Status e Secondary Cell selected for secondary suppression t ARGUS 3 3 user manual 67 e Secondary from manual Unsafe due to secondar
100. ple there are no unsafe cells in dimension one for either variable i e the one way marginal total for different values of Size and Region are all not disclosive Variable Size There are however 12 unsafe cells in the 2 way table Size by Region as can be seen by the right hand window which gives the equivalent information for each level of the variable indicated on the left t ARGUS 3 3 user manual 61 There are 5 unsafe cells where Size 2 6 unsafe cells where Size 4 and a single unsafe cell where Size 9 lolx File Specify Modify Output Help ce BiH BH aa Hunsafe combinations in every dimension variable Size 0 12 O000O0o0oO0o0o0oOoO O0o 0000050mng0 2 4 5 6 ne 8 9g 39 Status 1 4 2004 9 58 Ui Variable region The 12 unsafe cells when looked at by Region show that two of these are North subtotal cells Within the North region 2 cells in Groningen are disclosive Two East subtotal cells are also unsafe Within the East region 2 cells in Overijssel are unsafe along with 2 cells in Gelderland Finally there is 1 unsafe cell for the South subtotal and within this region there is 1 unsafe cell for Noord Brabant A ARGUS 3 3 user manual TauARGUS LO xi File Specify Modify Output Help cei ai 8H aa Hunsafe combinations in every dimension variable Region Fieg dimt dm2 Total North Groningen Friesland Drenthe East Overijssel Flevo
101. ptimal Suppress C Rounding Undo Suppress M 3 dig separator 5 eject Table Change View Write table T Output View Table Summary Close Cell information Cells can be selected in the table by moving the cursor arrow In each case information about the selected cell is shown on the right The status of the cell can be one of the following Some of the terms will be explained later in this section but others are expanded upon in the Reference section 4 4 2 Safe Does not violate the safety rule Safe from manual manually made safe during this session Unsafe According to the safety rule Unsafe request Unsafe according to the Request rule Unsafe frequency Unsafe according to the minimum frequency rule Unsafe zero cell Unsafe because the zero cells are considered unsafe Unsafe from manual manually made unsafe during this session Protected Cannot be selected as a candidate for secondary cell suppression Secondary Cell selected for secondary suppression Secondary from manual Unsafe due to secondary suppression after primary suppressions carried out manually Zero Value is zero and cannot be suppressed e Empty No records contributed to this cell and the cell cannot be suppressed t ARGUS 3 3 user manual 31 Change Status The second pane Change Status on the right will allow the user to change the cell status e Set to Safe A cell which has failed the safety rules is here declared
102. pty Reset default colors Max time per table for Modular solution 1 ga Logfile name 7 m Specify solver information No solver available Xpress CPlex licence file JH Anco T audrgus B access 1 il re Cplex Once this window has been opened details of the solver can be entered Other alterations to the default such as the colour of values in particular cells can also be made 3 1 1 Open a microdata file Both a microdata file and the metadata file describing this microdata file are required The microdata file must be either a fixed format ASCII file or a free format file with a specified separator By clicking Filel Open Microdata you can specify both the name of the microdata file and the name of the file containing the metadata Open micro data 3 Microdata JH Anco T audrqus B Datata tau_testW asc eH Metadata optional JH Anco T auArgusYB Datata tau_testW ida A Cancel For changing inspecting the metadata go to SpecifylMetadata For specifying the table s go to Specify T ables t ARGUS 3 3 user manual 23 For most uses of t ARGUS the microdata and metadata file are stored in separate files The simplest way to use the program is to use the extension ASC for the fixed format datafile and RDA for the metadata file If the name of the metadata file is the same as the datafile except for the extension and it already exists in the same directory T ARGUS will f
103. rchers headed by Juan Jos Salazar Gonzalez of the University La Laguna Tenerife Spain Other members of the team were G Andreatta M Fischetti R Betancort Villalva M D Montesdeoca Sanchez and M Schoch 14 t ARGUS 3 3 user manual Rounding methodology the variable is 1 if and only if the cell value must be rounded up No other variables are necessary so the number of variables in the model is exactly the number of cells in the table to be protected In addition the model also imposes the protection level requirements upper lower and sliding in the same way for the different methodologies Cell Suppression and Controlled Rounding These requirements ask for a guarantee that an attacker will not get too narrow an interval of potential values for a sensitive cell which he she will compute by solving two linear programming programs called attacker problems Even if a first model containing this two attacker problem would lead to a bi level programming model complex to be solved in practice a Benders decomposition approach allows us to convert the attacker problems into a set of linear inequalities This conversion provides a second model for each methodology that can be efficiently solved by a modern cutting plane approach Since the variables are 0 1 a branching phase can be necessary and the whole approach is named branch and cut algorithm Branch and cut algorithms are modern techniques in Operations Research that provide e
104. required for the same explanatory variables then more than one response variable can be entered here Each response variable is suppressed independently The shadow variable The shadow variable is the variable that is used to apply the safety rule By default this is the response variable but it is possible to select another variable The safety rules are built on the principle of the 600 ARGUS 3 3 user manual characteristics of the largest contributors to a cell If a variable other than the response variable is a better indicator this variable can be used here e g the turnover a proxy for the size of the enterprise can be a suitable variable to apply the safety rule although the table is constructed using another response variable The cost variable This variable describes the costs of suppressing each individual cell these costs are used by the internal workings of the secondary suppression routines Note that the choice of the cost variable does not have any effect when the hypercube method is used for secondary cell suppression See 2 7 1 for information about how cell costs are determined during execution of the hypercube method With exception of the hypercube method these costs are minimised when the secondary suppressed cells are determined By default this is the response variable but two other choices are possible as well as the use of a different response variable Use the frequency of the cells as a cost function this
105. resented here are magnitude tables a A File Specify Modify Output Help oe bhi amp H a8 Hunsafe combinations in every dimension Variable name Status 31 3 2004 11 23 4 1 Main Window There are five menu headings File Under File either a microdata file or tabular data file can be opened in addition there is the option to open a Batch process file and to Exit Specify Specify allows the metadata to be entered or edited as well as letting the user specify the tables of particular interest along with primary suppression rules Modify Under Modify the table can be selected viewed and any secondary suppressions carried out Also secondary suppression for linked tables can be performed Output Output allows the suppressed table to be saved In addition there is also view report and write batchfile Help Finally there is a Help menu with contents options and about the product Below is a list of the menu items which are shown under each of the menu headings As some of the items are context specific they will not all be always available 40 T ARGUS 3 3 user manual Overview of the menu items File Specif Modif Output pen Microdata Metafile Select Table Save table Oo Open Table pecify Tables ViewTable Open Batch Proces Linked Tables Write Batch File These menu items will be explained in detail in the following sections 4 2 The File menu t ARGUS c
106. response variable Ea gt lt shadow variable A o o gt y cost variable lt C unity frequency JV Minimum frequency variable teq range es a E fao 2 lambda h Hold fo rari e Missing safe F Use holdings info IndustryCode Size Region Dom Rule P rule Reg tule Dominance rule N Y P 1ule Indi fio n E Request A er TF Zero unsafe tink tule Hold 1 0 0 range 0 pn Hold 2 jo fo 30 E Apply Weights a J Apply Weights in Safety Rule Expl vas ue Respevar Shadow amp Cost var Compute tables Cancel The key elements of this window are as follows Explanatory variables On the left is the listbox with the explanatory variables Click on gt the selected variable to the next box in which the selected explanatory variables can be seen From the box on the left hand side containing explanatory variables the variables that will be used in the row or the column of the table in a 2 way table can be selected Up to four explanatory variables can be selected to create a table Cell items The cell items box contains the variables which were declared as response variables in the metafile By using the gt button they can be moved to the response variable box to be used in the defined table Response variable Any variable in the cell items box can be chosen as the r
107. ressed cell it is possible to calculate an interval that contains the suppressed cell This is possible if some constraints are known to hold for the cell values in a table A commonly found constraint is that the cell values are all nonnegative If the size of such an interval is rather small then the suppressed cell can be estimated rather precisely This is not acceptable either Therefore it is necessary to suppress additional information to achieve sufficiently large intervals Several solutions are available to protect the information of the sensitive cells e Combining categories of the spanning variables table redesign Larger cells tend to protect the information about the individual contributors better e Suppression of additional secondary cells to prevent the recalculation of the sensitive primary cells The calculation of the optimal set with respect to the loss of information of secondary cells is a complex OR problem T ARGUS has been built around this solution and takes care of the whole process A typical t ARGUS session will be one in which the users will first be presented with the table containing only the primary unsafe cells The user can then choose how to protect these cells This can involve the combining of categories equivalent to the global recoding of u ARGUS The result will be an update of the table with fewer unsafe cells certainly not more if the recoding has worked At a certain stage the user requests t
108. ription of the View Table screen global recoding the secondary cell suppression and some other options 4 4 2 1 The View table screen This window shows the table selected with Modify View Table On the left side the table itself is shown in a spreadsheet view Safe cells are black unsafe cells those failing the primary suppression rule are red In this example there are 12 unsafe cells and by viewing the table the user can now see the actual cells that are unsafe Any secondary suppressed cells are shown in blue there are none at this stage in this example and empty cells have a hyphen The two check boxes on the left bottom give some control over the layout e If the 3 digit separator box is checked the window will show the cell values will be shown using the 3 digits separator to give a more readable format e The Output view shows the table with all the suppressed cells replaced by an X this is how the safe table will be published but without the colours distinguishing between primary and secondary suppressions t ARGUS 3 3 user manual 65 Table Region x Size Yar2 Oj x Cell Information Value 16 847 647 Status Sate Cost 16 847 647 Shadow 16 847 647 contributions 42723 Top n of shadow 175 677 r Holding 141 482 level 135 469 poa 5 8476 25 2 711 808 2 320 534 2 505 043 2 799 074 6 510 758 385 4 373 664 5 719 049 659 680 688 962 756 529 1 549 049 385 1 986 12
109. rveys like the SBS survey Each line describes one cell in the table First all the spanning variables with the levels in the hierarchy then the cell value the cell frequency the status and the dominance percentage If the 2 largest contributors have been computed this percentage is the sum of the largest two otherwise the largest one It will be obvious that this output format is not possible if a table has been used as input with only the status or maybe a cell frequency The cell status can be A Frequency unsafe B Dominance unsafe with one contributor ARGUS 3 3 user manual C Dominance unsafe with two contributors D Secondary unsafe V Safe 5 A file in intermediate format for possible input into another program This contains protection levels and external bounds for each cell This file could even be read back into t ARGUS using the read tables option Finally a report will be generated to a user specified directory This report will be shown when the table has been written As this is an HTML file it can be viewed easily later 4 5 2 Output View Report Views the report file which has been generated with Output Save Table An example of a part of the output HTML file is shown here As can be seen the essential information for somebody other than the user about which rules have been applied to make the data safe is displayed along with details of any recoding view Report a T ARGUS Report Table created dat
110. s always the table number GH TabNo A priori Bounds Percentage ModelSize Model size 0 normal indicates the large model MOD TabNo MaxTimePerSubtable OPT TabNo MaxComputingTime NET TabNo RND TabNo RoundingBase Steps 1 Time Partitions StopRule Steps number of steps allowed normally 0 default Time Max computing time 20 default Partitions 0 1 0 no partitioning default 1 apply the partitioning procedure StopRule 1 Rapid only 2 First feasible solution 3 optimal solution 3 default Note that the fourth parameter is always 1 It is there only for future extensions SOLVER Indicate whether you will be using CPLex or XPress Only needed when the type of solver has not yet been specified on the computer during a previous interactive session of T ARGUS The only parameter allowed is CPLEX or XPRESS WRITETABLE P1 OutputType P2 parameter 1 CVS file Not used 2 CSV file for pivot table 1 AddStatus 0 not 3 Code value file 1 AddStatus 2 suppress empty cells 3 both options 0 none 4 SBS output format Not used 5 Intermediate file 0 Status only 1 also Top n scores GOINTERACTIVE Should be the last command If omitted the program will stop If specified t ARGUS will go on as an interactive program This command works only if the batch file is invoked from the menu If the batch version is started from the command line this option will be ignored
111. s further explained in section 4 3 3 Additionally the codes specifying whether a respondent asked for asking protection is to be specified two different codes are possible corresponding to two different sets of parameters in the sensitivity rule Additional Specifications Other attributes which may be edited or specified are e missing value options optional not required e codelist files optional not required e hierarchies Details on these options have been given in section 4 2 1 In summary for codelist the automatic option simply generates the codes from the data Specifying a codelist allows the user to supply an additional file usually cdl containing the labels attached to the codes These labels are used to enhance the information by t ARGUS on the screen In both cases t ARGUS will use the codes that it finds in the datafile Hierarchies can either be derived from the digits in the codes or from a file usually hrc The Rda file Here is an example of a rda file for microdata This has already been shown in section 4 2 1 and is shown here for completeness Note the dots at the bottom just means that here a shortened version of the file is presented WAR 1 2 99 RECODEABLE gt IndustryCode 4 5 99999 RECODEABLE gt lt HIERARCHICAL gt SRL Wiss SG 1 1 Size Y 2 99 lt RECODEABLE gt REGIONS lt RECODEABLE gt lt CODALISWUS Region eel lt HIERCODELIST gt Region2 hrc lt HIERLEADSTRING gt A
112. t the sub tables have maximum size of about 150 000 cells and also trying to keep their number low performance may be improved by wisely choosing the partitioning variable The number of subtables and the size of each subtable is shown in the window See Section rounding theory for further details When rounding the progress of the partitioning process is shown at the bottom of the option window Stopping Rule These options allow to control the quality of the rounded solution The user can choose t ARGUS 3 3 user manual 77 o First Rapid The solution is obtained by rounding conventionally to the closest multiple of the base the internal cells and then the marginal values are obtained by addition This solution is likely to present several values that have a large distance from the original values This option should be used with extreme care and likely when everything else fails o First feasible The solution provided is the first rounded one that has the specified number of jumps regardless of its optimality This means that there could exist other solutions that have a lower overall distance from the original table In many cases when optimality is not crucial this solution is quite close to the optimal one and it can be found in a shorter time o Optimal This option provides the fully optimal controlled rounded solution 4 4 2 4 2 The rounded table The next figure shows the rounded table shows the values rounded to multiples
113. the correct solver has been chosen Also the name of the logfile see section 4 7 can be changed here By default it is Logbook txt t ARGUS 3 3 user manual 85 4 6 3 Help About Shows the about box xi T ARGUS Wersion 3 3 0 build 1 Statistical Disclosure Control of tabular data Copyright Statistics Netherlands 2004 This software has been developed as part of the CASC project partly Sustem Inf subsidised by the EU under grant no dll IST 2000 25069 The Statistics Netherlands and its CASC Partners provide this software as is without any warranty expressed or implied or assume any legal liability or responsibility for the accuracy completeness or usefulness of this software The Statistics Netherlands and its CASC Partners will provide at their discretion only limited consultation on problems encountered with this software Improvements or changes to this software may be made at any time without an obligation to inform users 4 7 Log file t ARGUS will write a log file This describes among others the commands used during the runs of t ARGUS If gives a log of the use of TARGUS Especially for the batch process this file could give some information about the progress of the process Below is given a small example Please note that new information is always added to this file So from time to time the user should erase this file to clean his computer By default the logfile is the file LOGBOOK T
114. the same reasons as in the above section to allow secondary suppressions to be applied BO ARGUS 3 3 user manual Zero Unsafe If all contributions to a cell are zero the cell value will be zero too Applying sensitivity rules here has some problems Is the sum of the largest 3 zeros larger than zero Nevertheless all contributions to this cell can be easily disclosed If cells with total contributions of zero are to be regarded as unsafe this box has to be checked A manual safety range will also be required not as a percentage but as a value at the level of the cell item Holding Indicator This section on the Holding Indicator is best read after section 4 4 2 In some countries confidentiality protection is applied to businesses at different levels For example as in the U K a number of reporting units the lower level of unit within a cell might belong to an enterprise group higher level The level at which the confidentiality rule is applied clearly matters The holding indicator allows such groupings to be defined and used in one or more of the safety rules This is now illustrated with an example looking at both the P rule and the threshold rule at the same time Specify Tables category Consider the following dataset Cell Ref Cell Ref Cell value Enterprise group reporting unit 800 20 599 1 800 20 344 1 800
115. this variable is defined as one of the top N contributors to the cell The pre defined value for TopN is 1 The first variable declared as topN will contain the largest values in each cell the second variable so declared will contain the second largest values etc Status Indicator allows a variable in the left hand pane to be declared as a Status Indicator Typically cells can be declared as Safe Unsafe or Protected t ARGUS 3 3 user manual 53 Specify metafile Free format X Attributes Separator E explanatory variable C frequency name IT opl response variable topN variable shadow status indicator length 2 decimals o cost var lower prot level NN NI A I upper prot level Codelist e automatic Code for Total Missings C codelisthlename e E rem AA miei eh n New E Levels fam file Leading string el Delete aj E For explanatory variables the code for the total has to be specified We recommend strongly that the user also provides the values for the totals himself but if needed he can ask t ARGUS to compute these totals In any case T ARGUS needs these totals as they play an important role is the structure of a table and also are important for the suppression models The remaining options for these codelists and the hierarchies are the same as for microdata The rda file for the above window is shown here lt SEPARATOR gt
116. thod will break down the hierarchical table into several non hierarchical tables protect them and compose a protected table from the smaller tables As this method uses the optimisation routines an LP solver is required this will be either XPRESS or CPLEX The routine used can be specified in the Options box this will be discussed later Optimal This method protects the hierarchical table as a single table without breaking it down into smaller tables As this method uses the optimisation routines an LP solver is required this will be either XPRESS or CPLEX The routine used can be specified in the Options box this will be discussed later It is the responsibility of the users of t ARGUS to apply for a licence for one of these commercial packages themselves Information on obtaining one of these licences will be found in a read me file supplied with the software or on the CASC website By choosing Suppress Optimal a further question is asked The question is How much time do you allow the system to compute the optimal solution Time Check ARGUS has reached the time limit Lower limit optimisation 1000 Upper limit optimisation 1100 Difference percentage 9 09 Number of suppressions 16 Time used so far 5 min Do you want to proceed Time allowed next 4 ma Yes Network This is a Network Flow approach for large unstructured 2 dimensional tables and 2 dimensional hierarchical tables with only one hierarchy
117. to a cell and finally each cell can have cost 1 minimising the number of suppressed cells 2 6 Series of tables In t ARGUS it is possible to specify a series of tables that will be protected one by one and independently of each other It is more efficient to choose this option since t ARGUS requires only a single run through the microdata in order to produce the tables But also for the user it is often more attractive to specify a series of tables and let t ARGUS protect them in a single session rather than have several independent sessions 2 7 The Hypercube GHMITER method In order to ensure tractability also of big applications T ARGUS interfaces with the GHMITER hypercube method of R D Repsilber of the Landesamt fiir Datenverarbeitung und Statistik in Nordrhein Westfalen Germany offering a quick heuristic solution The method has been described in depth in 1 2 and 3 for a briefer description see 4 2 7 1 The method The approach builds on the fact that a suppressed cell in a simple n dimensional table without substructure cannot be disclosed exactly if that cell is contained in a pattern of suppressed nonzero cells forming the corner points of a hypercube The algorithm subdivides n dimensional tables with hierarchical structure into a set of n dimensional sub tables without substructure These sub tables are then protected successively in an iterative procedure that starts from the highest level Successively for ea
118. uctEmpty Recode Suppress HyperCube Modular Network gt Optimal Suppress I 3 dig separator Select Table Change View Write table Rounding Unde Suppress Suppress T Output View Table Summary Close Simple frequency table obtained from the test data Rounding can be applied also to tables with no unsafe cells The choice of the minimum threshold and whether zeros are safe or not has an effect on the minimal possible rounding base as it will be explained in the Option paragraph When rounding has been chosen and the round button has been pressed the following window will be shown You can enter a few parameters 6 ARGUS 3 3 user manual 4 4 2 4 1 Rounding Options Rounding E x Min required roundingbase 1 Rounding base El Cancel Number of steps allowed fo y Max computing time 20 min J Partitions Partitions 8 subtables Stopping Rule O First RAPID only first feasible only Optimal solution 18 cells per subtable Rounding option window The controlled rounding window allows to set the following parameters Rounding Base Cell values will be changed to multiples of the base The minimum rounding base is equal to the maximum between the minimum frequency threshold and twice the highest Protection Level set for an unsafe cell with the Dominance or p q rule See the Section 2 1 for details on safety rules and section 2 5 protection leve
119. ue this is separated by commas Here the cell status is again an option Also empty cells can be suppressed from the output file if required The information for each cell is displayed on a single line similar to the CSV file for a pivot table 4 SBS format This is a special format required for sending data to Eurostat 5 A file in intermediate format for possible input into another program This contains protection levels and external bounds for each cell This table could even be read back into t ARGUS Finally a report will be generated to a user specified directory This report will also be displayed on the screen when the table has been written It will contain details such as table structure safety rules and number of cells failing secondary suppression method and number of cell failing and details of any recodes An example is shown in the Reference section 4 5 2 As this is an HTML file it can be viewed easily later or printed 38 ARGUS 3 3 user manual Save Table JA Add Status F Status only f T ARGUS 3 3 user manual F Suppress empty cells 39 4 Reference Section Description of the Menu Items Chapter 3 gave a brief overview of the most frequently used options within t ARGUS In this section a more detailed description of the program by menu item is presented The information in this section is the same as the information shown when the help facility of T ARGUS is invoked Note that all tables p
120. ulation package has the facility not only to calculate the cell totals but also to calculate the number of contributors and the n individual contributions of the major contributors Tabulation packages like ABACUS from Statistics Netherlands and the package SuperCross developed in Australia by Space Time Research have that capacity In fact t ARGUS not only stores the sum of the n major contributions for each cell but the individual major contributions themselves The reason for this is that this is very handy in case rows and columns etc in a table are combined By merging and sorting the sets of individual contributions of the cells to be combined one can quickly determine the major contributions of the new cell without going back to the original file This implies that one can quickly apply the dominance rule to the combined cells Combining rows and columns table redesign is one of the major tools for reducing the number of unsafe cells This too is the reason why t ARGUS reads microdata files However due to continuous demands from users we have now also provide the option to read ready made tables but with the restriction that the options for table redesign will not then be available A problem however arises when also the marginals of the table are published It is no longer enough to just suppress the sensitive cells as they can be easily recalculated using the marginals Even if it is not possible to exactly recalculate the supp
121. utput Save table 4 4 2 4 Controlled rounding The Round option in the View Table window is active only if the Xpress licence is selected in the Help Option window The reason for this is that for Xpress T ARGUS has access to the Mixed Integer Model MIP thanks to the cooperation of Dash Inc This option allows to round the selected table with the Controlled Rounding Program see Section 2 11 for details on this method The next figure shows the simple frequency table obtained from the test data using the variable Size and Region t ARGUS 3 3 user manual 75 Table Region x Size freq Oj x Cell Information Value 42 723 Status fs afe Cost 42 723 Shadow 16 847 647 9 5 20 002 5 498 4 594 11 395 6 1 5137 2 471 1 487 1 426 862 1 5 6 112 1 2 856 1 334 770 744 406 3 798 1 657 802 497 527 305 1 485 624 335 220 155 15 dal len len contibutions 42723 10 227 3 1 4808 2 041 1 380 1 101 893 538 1 293 111 58 46 29 Top n of shadow 1 597 676 370 283 152 116 Hoe 5446 2 1 2648 1014 658 572 551 2 646 1191 546 381 331 197 0 10 054 4 696 2 062 1 294 1 026 976 1 182 a67 303 178 127 107 8018 3 866 1 627 997 799 729 854 363 132 119 100 140 11 047 3 5 361 2 257 1 337 1 041 1 048 Change status 7 511 __ 3 379 1 521 822 666 708 Setto Safe 3 536 1 570 515 375 Set to Unsafe ES Set to Protected All Non Str
122. vel the 4 character in the second level and the 5 character in the lowest level The two zeros at the end of this definition are redundant in this example Size For this variable each record begins on position 9 and is 2 characters long and missing values are represented by 99 It is also recodeable Region For this variable each record begins on position 12 and is 2 characters long Missing values are represented by 99 An example of a codelist file can be found in region cdl and of a hierarchical codelist file in region2 hrc Contents of these files are shown here The file region cdl 1 Groningen 2 Friesland 3 Drenthe 4 Overijssel 5 Flevoland 6 Gelderland 7 Utrecht 8 Noord Holland 9 Zuid Holland 10 Zeeland 11 Noord Brabant 12 Limburg Nr North Os East Ws West AS OE The file region hrc Nr al 2 3 Os 4 5 6 7 Ws 8 9 10 Zd 11 12 Additional details of these coding files can be found in the Reference chapter section 4 2 1 6 ARGUS G3 user manual 3 1 3 Specify tables When the metadata file is ready the tables to be protected can be specified This is achieved via Specify Specify Tables A window to specify the tables is presented In the example here we have a 2 dimensional table 2 explanatory variables and a single response variable A safety rule has been defined Specify Tables E 101 x m explanatory variables cell items gt
123. will minimise the number of records contributing to the cells to be suppressed The number of cells to be suppressed is minimised irrespective of the size of their contributions Unity option A Box Cox like transformation can be applied to the individual values of the cost variable before minimisation of the cost function The simplified Box Cox function used here is x where x is the cost variable and A is the transformation parameter For example if A 0 5 a square root transformation is used and if 0 a log transformation will be applied Applying this to the unity choice is rather meaningless Weight If the data file has a sample weight specified in the metadata the table can be computed taking these weights into account There are 2 options If the Apply Weights box only is ticked the weights are applied to the cell entries as for the simple application of normal sampling weights in a survey This has nothing to do with Disclosure Control but creates tables with weighting applied If the Apply Weights in Safety Rule is also ticked the safety rules themselves use the weights For example if there is a cell with two contributions 100 weight 4 10 weight 7 The cell value 4 x 100 7 x 10 470 Without considering the weights there are only two contributors to the cell 100 and 10 However by taking account of the sampling weights the cell values are approximately 100 100 100 100 10 10 10 10 10 10 a
124. xcellent results when solving larger and complicated combinatorial problems arising in many applied fields like routing scheduling planning telecomunications etc Shortly the idea is to solve a compact 0 1 model containing a large number of linear inequalities as the ones above mentioned for the Cell Suppression and for the Controlled Rounding through an iterative procedure that does not consider all the inequalities at the same time but generates the important ones when needed This dynamic procedure of dealing with large models allows the program to replace the resolution of a huge large model by a short sequence of small models which is termed a decomposition approach The on line generation of the linear inequalities rows was also extended in this work to the variables columns thus the algorithm can also works on tables with a large number of cells and the overall algorithm is named branch and cut and price in the Operations Research literature To obtain good performance the implementation has also considered many other ingredients standard in branch and cut and price approaches For example it is fundamentally the implementation of a pre processing approach where redundant equations defining the table are eliminated where variables associated to non relevant cells are removed and where dominated protection levels are detected The pre processing is fundamental to make the problem as small as possible before starting the opti
125. y solved Before we go into more details the basic ideas on which t ARGUS is based we give a sketch of the general ideas At first sight one might find it difficult to understand that information presented in tabular form presents a disclosure risk After all one might say that the information is presented only in aggregate form 2 Producing safe tables Safe tables are produced from unsafe ones by applying certain SDC measures to the tables These SDC measures as far as they are implemented in t ARGUS are discussed in the present section Some key concepts such as sensitive cells information loss and the like are discussed as well The CENEX project made a start with writing a handbook on Statistical Disclosure Control In the ESSNet project we continued to work on the handbook This handbook will serve as a basic manual on the theory of SDC Therefore it is recommended to use this handbook as a background reading We will include references to the handbook were appropriate 2 1 Sensitive cells in magnitude tables The well known dominance rule is often used to find the sensitive cells in tables i e the cells that can not be published as they might reveal information on individual records More particularly this rule states that a cell of a table is unsafe for publication if a few n major contributors to a cell are responsible for a certain percentage k of the total of that cell The idea behind this rule is that in that case at le
126. y suppression after primary suppressions carried out manually see Change Status and Secondary suppressions below e Zero Value is zero and cannot be suppressed e Empty No records contributed to this cell and the cell cannot be suppressed Change Status The second pane Change Status on the right will allow the user to change the cell status e Set to Safe A cell which has failed the safety rules is here declared safe by the user e Set to Unsafe A cell which has passed the safety rules is here declared to be unsafe by the user e Set to Protected A safe cell is set so that it cannot be selected for secondary suppression A priori info This option is to be mainly used for microdata This allows t ARGUS to feed a list of cells where the status of the standard rules can be overruled i e the status of the cells is specified from the file It is free format The format is Code of first spanning variable Code of second spanning variable Status of cell u unsafe p protected not to be suppressed s safe Also the cost function can be changed here for a cell This will make the cell more likely to become secondary cell suppression when the value is low or less likely when the value is high Normally the sensitivity rules will also give the required protection levels for unsafe cells But sometimes e g in the case of manual unsafe cells the user might want to specify the required protection level
Download Pdf Manuals
Related Search
Related Contents
MediDVR - Zowietek Pentair P1-102 User's Manual LG 17" Ultra Slim with folding CULINAIRE CHILLAIR ISLAND BUFFET Advantek Networks ANS-24RV network switch Life Fitness Elevation Series User's Manual Copyright © All rights reserved.
Failed to retrieve file