Home
User`s guide - EECS Instructional Support Group Home Page
Contents
1. D t 2 3 4 5 8 2 3 4 5 8 2 3 4 5 o 1 4 eee Len jm N o0t o33 TL LOL TIT TN LR oss gen O LL es ses LL 003 JO C es 0 osa 066600 O ETE 1 sn ses 00 DLLD 037 059 101 oO 006 JL m 03 102 000660600 L1 008 sen 04 104 oO O 041 T M t 105 CE mm 04 105 HIS TemMaster FER Soa 012 04 04 Template Design and Optimization Tool 109 I 014 O 04 moj 3 ors TEE TEE TNI 04 Version 2 1 TOORE 04 Hmm 017 04 3 m 05 m m 051 1500 L1 020 052
2. no eo eo eo ro cell mimm sec moa cime DOOR Dew Ome ae ete DOS ain Cl 51515 Ceci 212121 Leo 512151 Leo 51515 Ceci col Le Fig 7 Layout of the function editor for N 5 variables mjo 3 wmo anm wmo To edit a previously defined function select Continue otherwise select New 3 2 2 Generating SimCNN and VisMouse compatible script files In order to apply the newly generated optimal template or template sequence to an input image a script file should be written for the actual CNN simulator TemMaster is capable of generating SimCNN and VisMouse compatible script files To enable this feature select Create script in Edit menu This menu item is disabled if no template or sequence has been loaded or generated beforehand On the other hand this feature can be used to generate VM script for any CANDY 5 compatible template The steps of script generation are as follows Creating script for optimal template 1 Load template to be optimized example corner tem 2 Optimize template see section 3 4 3 Set the template saving path in Directories menu The script file will refer to this path Save optimized template example o corner tem 4 Select Creat
3. ck ck ck ck ck k kk ck kk Sequence Item 10 PicFill STATE 0 TemLoad glife01 tem RunTem Display OUTPU PicCopy OUTPUT LLM 1 BKK ck KK KK KK KKK Sequence Item 2 PicFill STATE 0 0 TemLoad glife02 tem RunTem Display OUTPUT RunLog XOR LLM 1 OUTPUT LLM 2 Display LLM 2 PicCopy LLM 2 LLM 1 ck kck KK kc kck KK kk Update Input k PicCopy LLM 2 INPUT Display INPUT BK KK k ck ck ckck ck k ck ck kck ck k ck kc kck kk ko Cycle 2 BKK KKK ck ck ck k KK ck kk kk Sequence Item qi PicFill STATE 0 0 TemLoad glife01 tem RunTem Display OUTPU PicCopy OUTPUT LLM 1 BKK k ck ck ck kk Sequence Item 2 PicFill STATE 0 TemLoad glife02 tem RunTem Display OUTPUT 14 RunLog LLM 1 OUTPUT LLM 2 Display LLM 2 PicCopy LLM 2 LLM 1 BK KK ck kc k kck ck ck kc kc kck ck ck ck ck kck kok kk Update Input PicCopy LLM 2 INPUT Display INPUT BK KK ck ck ck kck ck ck ck ck kck k ck XX KE EEE EEK EEK ck kk End of Loop Terminate STOP Glife For a detailed description of running script files see VisMouse User s Guide 11 and SimCNN User s Guide 12 The following is an example for running Glife dde 1 Start Visual Mouse 2 Select Script Settings in Options menu 3 Setthe following items Script Settings
4. 1 2TsTa Ts e v 8 ahi shi en ze p so 2 1108 OO 00 BL 2 EJ mm 4 sjm Li mm IN N mm 7 g mm E EE EE EC E Compact decomposition Calculating optimal templates 28 Fig 20 Decomposition of XOR of nine variables defined by F X x amp x 8 x amp x 29 6 Advanced design In this section a simple and a more complex coupled template design example will be explained in detail Example V Horizontal Connected Component Detector CCD The task is as follows In steady state the output of each image row should contain as many single black pixels starting from the right end separated by white pixels as the number of white separated continuous black sections connected components in the particular row The expected format of the template Tempate Format Settings IE FFF Fig 21 Settings for horizontal CCD template design The inequality system complying with the description of the task Template 4 b o inequalities Ly 0 0 b 0 0 Template
5. a b Bz b c b z i 1 0 8 0 0 b 0 The template format can be set selecting the Design item in the Coupled menu Fig 25 33 Tempate Format Settings ERE H Template b IR H Par Par ar Cancel Fig 25 Settings for template design Remember bias 18 a free parameter by default 4 Inequality system generation Since there are only three valid binary input output combinations and 5 matching possibilities there are 15 different cases Each case yields a relation The set of inequalities is the following dependency dependency pixels 0 active a 8b c i lt bakon 0 inactive whieCl 1 2 1 lt 1 a 4b c i lt 1 a 6b c i lt l 8 1 lt 1 E a cti lt l inactive This table contains only the relevant cases TemMaster generates the inequality system automatically and it contains all possible cases The invalid inequalities can be omitted by simply setting the corresponding outputs to DON T CARE The resulting table can be seen in Fig 26 The optimal coupled template can then be generated by activating Evaluate menu item Since the inequality system is consistent the optimal template can be calculated The result is displayed in a text editor window Fig 27 34 Template 2 Template B nequalities a
6. remarks The communication block name should be the same as the script file name The script opens two additional windows to display operands of the consecutive logic operations in case of a template sequence Number of Windows and Idle Time values have no significance in our case 4 Set Specified in script settings at Select script submenu of SimCNN menu 5 Opena binary image file 6 Select Run script at SimCNN menu 15 3 3 Display The output of the actual template and a Boolean function previously loaded or defined can be visualized in three different formats Minimal truth table Full truth table and Window truth table Optimize Format Symm BOLD Function gt Minimal Window Fig 8 Display menu A brief description of these formats 1 Minimal truth table Fig 9a Single table containing all outputs for all possible input combinations Since the output is generated for consecutive binary codes of ascending order it is not necessary to display these input combinations thus eliminating the redundancies The index of an arbitrary output value is given by output index row index 1 32 column index 2 Full truth table Fig 9b Up to 16 tables containing all the binary input codes and the outputs for these inputs Maximum four tables are displayed at a time One can move between screens by clicking on forward and rewind buttons using the left mouse button 3 Window truth table Fig 9c Fu
7. In case of templates requiring images loaded to the state default unchecked Intermediate In case of template sequences the intermediate results can be displayed after each logic operation enabling this checkbox default unchecked Remarks on advanced settings Default settings can be used for all TemMaster generated uncoupled templates or template sequences Number of cycles If this value is greater than one the output of a template operation is reloaded to the input and the template is applied to this image again It has significance only if the template operation introduces spatial shift Although the default value of 1 0 is not correct for the faithful discrete simulation of an arbitrary CNN transient it provides equivalent results for uncoupled binary operations while having short simulation time If we are interested in transient results of shorter interval or when using propagating templates this value must be set much lower e g 0 1 11 script for optimal corner template BKK KK KK KK KK KK kK KK KK KK KK KK KK KK k ck k ck k ck ck ckck ck ck ck ck ckck k kc kc EE ck k ck ck k ck BKK kk ck kk ck kk KK KK VM Script Generated by TemMaster Ckckckckck ck ck ck kk BKK Ck k ck ck ck ck k k ck ck KK ck kc k ck kck ck kc k ck ck ck ck kckckck k ck ck ck ck ck KK ck ck ck ck ck ck ck ck k kc kc kck ck k ck ck EEK KE Start Corner In
8. Arbitrary max 20 characters file name with dde extension Template Group Name template group name without extension and index as saved in step 3 Note that with proper settings script can be generated for arbitrary TemMaster compliant sequence Script Path Script file location The CANDY default is CWC ANDY COMMUNIC it can also be set in the Directories menu Advanced See earlier in this section Number of cycles If this value is greater than one the output of a the template sequence operation is reloaded to the input and the template is applied to this image again It has significance only if the operation introduces spatial shift example 2 13 script for template sequence implementing the game of life BKK KK KK KK kk 5 KKK ck ck ck KKK KKK VM Script Generated by TemMaster KKKKKKKKKKKKKKK BKK KK KK KK KK k kck KK ck k KK KK KK KK KK k kc k ck ck ck KK KK ck KK kc kck ck k ck ck kck KK KK Start Glife Initialize SimCNN CSD BKK KK KK KK ck k KK k kc KK KK KK ck k ck kc kck General Settings TemplatePath C CANDY TEMLIB WinLayout 3 AssignWinPart 1 INPUT AssignWinPart 2 OUTPUT AssignWinPart 3 LLM 2 TimeStep 1 0 IterNum 1 SendTo INPUT 5 ck Ck ck ck ck ck ck Ck ck ck ck KK ck ck ckck ck kk Start Loop XX ck kc kck kk kk Cycle 2 ck
9. CO 208 Omm 08 0 mom m me e m Ol Cau Ciel Ciel 4 m BOL mici DOOR FOUR FOU ms ele Cim Cie SCC ECC ROC me mie CLS Goce mom Cash Ces mom DIE D oo m m m m m mm m O Oo OS Ome OOS Oma emi wo r3 Onn O uf Ble mo Dico aw wr fr MCN EE EO os ce Dos sain mate mee Bici soe Ces maa CO Gore Fig 9 b Full truth table tape Window truth table code book of Corner template 3 4 Optimize This menu Fig 10 is used to mvoke the optimization algorithm The optimization algorithm can be used to generate an optimal template for the output function defined by a template load
10. according to the active variables in the input pattern e g for horizontal line detection only three variables are active therefore the size of the table is 2 1x8 cells 24 Example Calculating Optimal Template for Horizontal Line Detection Input and desired output of the Horizontal Line Detection HLD ca ECC co a Cac cow oom ooo pra 55181 Gen 151515 Input of the optimization algorithm Boolean function of HLD Output Parameters of the optimal separating hyper plane a X2 b 0 where a a is the normal vector of the plane b is constant threshold The resulting template is expected in the format z b In general the elements of the normal vector are entries of template B and the threshold is the CNN s bias Y Fig 17 Boolean function of Horizontal Line Detection HLD and the hyper cube s intersection with the separating hyper plane The plane is optimal in the sense that the distance between the separating hyper plane and the closest vertex is maximized The optimal parameters calculated by our algorithm a 0 02 0 0 b 1 0 25 The corresponding template ofofo 00 00 a o r o B z 10 ofofo 7j Notepad OPTIMAL TEM Mi File Edit Search Help neighborhood 1 feedback 6 6666 6 6668 6 6666 6 66686 1 88688 8 886
11. between two different algorithms While the compact algorithm generates shorter sequences in most of the cases the CFC algorithm creates somewhat more robust templates With the selection of Advanced compact checkbox Fig 11 additional linear separability check can be added to the compact algorithm after each iteration This results in slower execution but in some cases shorter sequences Select Method LX Compact method C CFC method Cancel Fig 11 Decomposition methods dialog box 3 5 Format The Format dialog box appearing after the activation of Format menu is used to set the following parameters Input format The order of binary values arranged in a 3 by 3 window as it is loaded to the CNN input Different orders can be defined for templates and functions The initial setting for both follows a Default pattern see Fig 12 The default pattern can also be modified In the case of Boolean functions the number of input variables can be determined by setting certain positions to 0 The number of input variables for templates is determined automatically upon loading Initial state of the CNN can be set in the 100 0 100 0 range Alternatively same can be given entered in this edit box in which case the output for the template is calculated as if the same patterns were loaded to the state and the input The default value of the initial state is 0 0 e The maximum value of the optimal templates can be set If the st
12. c 8b 6b a c 4b a c 2b i lt a 5 i lt 2b i lt a c 4b i lt a 6b i lt a 8b i lt c 8b i lt gt c 6b i lt gt a c 4b i lt gt c 2b i lt gt c 0 i lt gt a c 2b i lt gt c 4b i lt gt c 6b a c 8b a b a o 6b i lt gt a o 5 a 2b i lt a 0 5 i lt a o 2b i lt a o db i lt a 6b i lt a o 8b i lt i amp i amp i amp i amp i gt iis v t 1 Ijal ALALA vlvls N amp amp Him Tr 4 4 28 mmm aS mpm viole per en e eo en pon pen so en en as oes s en pene en ner e eser n3 m Co 2 m co a c 2b i lt a c db i lt c lt 5 WEE 55 _ 36 a LJ LJ LJ LJ LJ LJ L LJ LJ LJ LJ LJ LJ m a Fig 26 Inequality syst
13. the Format menu see section 3 5 and activating Function menu item at the Edit menu the proper number m where N is the number of variables of boxes appears displaying the inputs and the corresponding output values initially all outputs are set to DON T CARE unless a previously saved function is loaded into the program 3 2 1 Graphical Boolean function editor The graphical function editor can be used to define arbitrary Boolean functions The function to be edited is displayed in Window truth table format The initial layout follows the settings of the Format menu The editor displays inputs and the corresponding outputs in a compact format Fig 6 d Index of input Input pixels Don t care positions Output value Fig 6 Single cell Window truth table used in function definition The whole function is displayed as series of boxes each in the format shown in Fig 6 The frame color of a box and the corresponding Boolean function value can be set by positioning the mouse cursor over box and clicking the left mouse button The frame color changes between black white and blue TRUE FALSE DON T CARE using the default color Fig 7 ao 3555 eren ce 1888 STER l t lt icr 5515 Ca Ceci Gen Cet CC eco ce ct DOW Ceci Eco ooa ce coa cc co cea Goo ceci co ceci 1510121 cel
14. up to four variables and their opposite can be positioned accordingly If the template has more entries more than one of these have to have similar function thus they can be denoted by a single common variable These are the so called symmetric variables not to be confused with template symmetry Symmetric operations have the special property of being invariant to the permutation of the input entries The degree of symmetry can be different depending on the group of variables to which the function is symmetric The Direct method published in 8 provides a straightforward way to design templates implementing these functions This method also allows us to design coupled templates in some special cases Upon invoking this menu item the Template format settings dialog box appears where the user can enter the number and position of symmetric variables using scroll boxes Don t care positions should be set to 0 20 Tempate Format Settings P x xij Pt i i Fur FF Fig 13 Template format settings for coupled templates dialog box After the parameter selection the whole set of inequalities is generated by the program and displayed in a format seen in Fig 14 The user can modify the inequalities according to the particular design problem by clicking on the desired row of the table using the left mouse button Note that the CNN s bias denoted by i is a free parameter by default The inequality system can then be subm
15. 88 6 6666 6 6668 6 6666 control 6 6666 6 6668 6 66686 1 6666 2 6666 1 6666 6 6666 68 6668 6 6666 current 1 0000 41 Fig 18 Output of optimization of Horizontal Line Detection Example III Linear decomposition of the Game of Life function This example comes from the world of Cellular Automata The rules of the game e black pixel turns white if it has more than three less than two black neighbors e A white pixel turns black if it has exactly three black neighbors els als elle 2 eee UN NO Lee CIL EH EN ms O0 O0 Og E m 4101 Elm Em Ed m EH EJ m m IE m EL EL iG m Fig 18 Minimal truth table for the Game of Life 26 The function is not linearly separable Now the decomposition is attempted by both Compact and CFC algorithms Both algorithms have found that the function can be decomposed into two linearly separable functions The resulting templates can be seen in Fig 19a 19b 7 Notepad SEQUENCE Mel 7 Notepad SEQUENCE File Edit Search Help 2 TEMPLATE 1 pl feedback 6 6666 6 6668 8 88688 6 6666 1 6666 8 88688 6 6666 8 88688 8 88688 control 1 8888 1 0000 1 6666 1 0000 8 08800 1 0000 1 0000 1 0000 1 0000 current 1 0000 File Edit Search Help TEMPLATE 1 feedb
16. ANALOGIC COM PUTERS LTD Aladdin 3 TEMMASTER TEMPLATE DESIGN AND OPTIMIZATION TOOL FOR BINARY INPUT OUTPUT CNNS USER S GUIDE VERSION 4 0 Budapest 2000 COPYRIGHT 2000 ANALOGIC COMPUTERS LTD BUDAPEST HUNGARY 2000 Table of contents 1 Introduction 2 System Requirements Installation Start up Program 3 Menu Structure of TemMaster 3 1 File menu 3 2 Edit menu 3 2 1 Graphical Boolean function editor 3 2 2 Generating SimCNN and VisMouse compatible script files 3 3 Display gt 3 4 Optimize 3 5 OA 3 6 Coupled 4 File formats 5 Getting started Example I Example Example III Example IV 6 Advanced design Example V Example VI 1 Introduction TemMaster is a software tool for qualifying optimizing and designing templates e defining and visualizing local logic functions and outputs of templates in several formats for uncoupled binary input output CNNs In some well defined cases the program supports coupled template design In the case of single template design an uncoupled template implementing a linearly separable Boolean function can be designed using methods published in 1 7 and 8 respectively For linearly non separable Boolean functions the program offers means of implementation in the form of template sequences The non separable function can be decomposed into a quasi minimal template sequence usin
17. Doo 94075 CCR Cl Fig 22 Inequality system for horizontal CCD template design 30 Choose Evaluate in Coupled menu The resulting CCD template 31 Optimaltem Notepad MEE File Edit Search Help heighborhood 1 8 8808 2 6666 8 68888 Fig 23 Optimal horizontal CCD template Example VI Connectivity The task is as follows Two binary images are given The first contains some black objects against white background The second is derived from the first one by changing some black pixels to white This way some objects become smaller in the second image than in the first Those objects which have become smaller in the second image are considered to be marked The task 18 to design a template which deletes the marked objects and do not affect the rest of the image If we delete a single pixel of a black object and apply this template all the black pixels connected to the object will tum white Hence this template is called Connectivity in the Template Library 1 Global rule This is a 2D problem connected black pixels of the marked objects should change white and the rest of the pixels should be unchanged An example can be seen in Figure 24 32 First image Second image Final output Figure 24 Example for the Connectivity template 2 Local rules and binary activation pattern First we have to find those pixels which are black in the first image and white in the second image From
18. EH 021 0531010 085 Ji TL TNNT 1101 022 JL 054 086 ODIE E NE T18 L JE 0 023100 oss L 037 119 o 024 T 056 066 JL MNT 120 025 os CL OCI CE JL TNNT 12110 1 026 ose LJ fC CC 122 027 T osa mm 123 028 O 060 092 JL NN 124 o 0291 061 L 093 NN 125 1 030 062 094 JL TNNT NN 126 931 Y 063 LIL C oss qr NI 127 o Noname Initialization Output for template N Fig 2 TemMaster main window with program title 3 Menu Structure of TemMaster The basic structure of TemMaster s menus will be explained in detail in the following sections 3 1 File menu a TEMMASTER Edit Display Optimiz Open Ctrl O Save s 5 Seguence Exit Fig 3 File menu By selecting file menu items the user can load and save template as well as Boolean function files or exit TemMaster The particular format is determined by the file extension filter set by the user in the open save file dia
19. Ome fomm Oma oma mmm ommy oma Oe oma oom BOT IT i oom Off m mar ICE See OO ES TS DIO CIO 808 n A Ce me Om COs Cie un ES N MOI mm mimo OOM f olojo Oe OCDE mm m en m omm O icm mmn omm 2m0 EEE m Cote m a m 5 no i mici i mois Oost Cote SEC omm m Om Of Of Om OO GO m Ln at 00m co Cle rim BIE Sec emo m00 rim ele oso iic e en EP SOR IP II mim OOO 16161 OO mi Q N mac MOD icc OO CO 1 16 Codi Se 2 SOP mici Ooms Om use 2 OO n O 0 Ciel mm e m
20. ack 8 8888 8 88688 8 88688 6 6666 1 8888 8 88688 6 6666 8 88688 8 088688 control 1 8888 1 8888 1 0000 1 0000 8 8888 80 1 8888 1 8888 1 0000 current 1 0000 3 3 3 3 3 3 3 3 3 3 3 3 NOR 36 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 NOR 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 TEMPLATE 2 feedback 6 66686 8 88688 8 88688 6 6666 1 6666 8 88688 6 6666 6 6668 6 66686 control 1 0000 1 0000 1 6666 1 0000 1 0000 1 0000 1 0000 1 0000 1 0000 current 4 0000 TEMPLATE 2 feedback 6 6666 6 6668 8 88688 6 6666 1 6666 6 6668 6 6666 8 88688 8 088688 control 1 8888 1 8888 1 68888 1 8888 1 8888 1 0000 1 0000 1 0000 1 6666 current 4 0000 HIEI a b Fig 19 Decomposition results by Compact a and CFC b algorithm Both algorithm found the same template values Example IV Decomposition of XOR function of nine variables Definition x 8 x Q x x 27 The results are shown in Fig 20 Definition f x x x x
21. and saved in files with dat extension containing 1 0 for FALSE 1 0 for TRUE and 0 0 for DON T CARE values 22 5 Getting started In the following some examples will be discussed starting with simpler ones and advancing to more complicated ones The examples introduce the basic steps of uncoupled template design and optimization Example I Logic function definition of Horizontal Line detection For simplicity we consider all input patterns a horizontal line if the central pixel is TRUE and has at least one TRUE horizontal neighbor Note that according to the definition only three positions must be considered therefore the rest can be set to DONT CARE 1 Select Format at the main menu 2 Setinput pattern for function according to Fig 16 3 Choose the Function sub menu at Edit and set the values shown in Fig 17 Input format f Color format To C Default Color C Template C 2 o o o Fiction Monochrom Set DON T CARE Initial state 00 TRUE 8 value arbitrary FALSE Fig 16 Input arrangement of horizontal line detection ca ECC co m ana a Got Cac OO moo oom ooo bol 81815 1515151 Gen 151515 Fig 17 Layout of the definition of Horizontal Line Detection 23 The size and number of the Window tables necessary to describe the logic function 15 determined
22. e CNN Universal Machine paper submitted to the CTA special issue on CNN to be published in 1998 8 Zar ndy The Art of CNN Template Design paper submitted to the CTA special issue on CNN to be published in 1998 9 L Chua CNN Paradigm for Complexity Int J of Bifurcation and Chaos Aug 1997 10 CNN Software Library Templates and Algorithms Version 7 2 Edited by T Roska L K k L Nemes Zar ndy P Szolgay and M Brendel Computer and Automation Institute of the Hungarian Academy of Sciences Budapest 1998 11 Cs M rton I Szatm ri K L szl Cs Rekeczky T Roska P Szolgay Zar ndy VisMouse CNN Visual Mouse Platform for Windows Program Logic Manual 12 Istvan Szatm ri SimCNN Multi layer CNN Simulator Server User s Guide 36
23. e script in Edit menu VM Script Settings Script File Name OK Corner dde LOK Template Group Name o corner Advanced Script Path CACADETWIN communic ik i H Num of cycles d i C Sequence 2 SimCNN and VisMouse part of the CANDY system 10 In the Script Setting dialog box set following items Script File Name Arbitrary max 20 characters file name with dde extension Template Group Name Template name without extension as saved in step 3 above Note that with proper settings script can be generated for arbitrary non TemMaster generated templates Script Path Script file location The CANDY default is Advanced In the Advanced Script Settings dialog box the following script parameters can be set with the default values shown Advanced Sript Settings Time step ft 0000 Number of iterations E Cancel Boundary 1 00 Same state Output sampling Intermediate Time step At CNN simulation time step default 1 0 3 see footnote range 0 gt At 1 0 Number of iterations n Number of iterations in CNN simulation default 1 range 1 lt gt 999 Boundary Boundary in CNN simulation default fixed to 1 range 10 0 lt n gt 10 0 or zeroflux or periodic Output sampling 0 Number of iterations after the output transient is displayed default 1 range IS n Same State
24. ed beforehand i e optimize the template to calculate an optimal template or template series for a previously loaded or defined arbitrary Boolean function Forme Template Function Fig 10 Optimization menu The resulting template is optimal in the sense that it represents a hyper plane which separates all TRUE vertices from FALSE vertices whose distance is maximized to the closest vertices belonging to different groups Optimization takes time ranging from 1 to 15 seconds depending on the number of variables When the optimization is completed the result is displayed in a text editor window if the given function is linearly separable The output function belonging to a template is inherently linearly separable Remarks In some cases the optimization algorithm returns an error message This is due to matrix singularity occurred during the optimization process TemMaster will then automatically restart with a new initial vector If this attempt also fails this happens very rarely the Boolean function is most likely linearly non separable In this case decomposition can be initiated The error message appeared in the desktop taskbar should be acknowledged by the user 18 In the case of arbitrary Boolean functions the vast majority is non separable In this case decomposition algorithm can be applied which derives quasi minimal set of templates that implements the function in question The user can choose
25. em for template design 35 Notepad OPTIMALTEM E3 File Edit Search Help heighborhood 1 feedback 6 6666 1 6666 6 6666 1 6666 2 8888 1 6666 6 6666 1 8888 6 6666 control 6 6666 1 6666 6 6666 1 8888 8 88688 1 0000 6 6666 1 6666 6 6666 current 6 6666 wal Fig 27 Optimal Connectivity template References 1 L O Chua T Roska Cellular Neural Networks Foundations and Primer Lecture notes for the course EE129 at U C Berkeley 1996 97 2 L Chua L Yang Cellular Neural Networks Theory IEEE Transactions on Circuits and Systems Vol 35 No 10 pp 1257 1290 October 1988 3 L Chua T Roska The CNN Paradigm IEEE Transactions on Circuits and Systems I Analog and Digital Signal Processing Vol 40 pp 147 156 March 1993 4 T Roska L O Chua The CNN Universal Machine An Analogic Array Computer IEEE Transactions on Circuits and Systems II Analog and Digital Signal Processing Vol 40 No 3 pp 163 173 March 1993 5 Cs M rton I Szatm ri K L szl Cs Rekeczky L Nemes T Roska P Szolgay Zar ndy CADETWin User s Manual MTA SzTAKI 1997 6 K N Crounse E L Fung L O Chua Efficient Implementation of Neighborhood Logic for Cellular Neural Automata via the Cellular Neural Network Universal Machine IEEE Transactions of Circuits and Systems 1996 7 L Nemes L O Chua T Roska mplementation of Linearly Non separable Boolean Functions on th
26. g a method described in 6 CFC or in 7 Compact The resulting template series can be implemented as a CNN program running on the CNN Universal Machine 4 Coupled templates in some cases can be designed using an algorithm published in 8 In image processing terms the spatial Boolean operations represent operations on black and white images It is interesting to note that the internal analog operation provides a broader class of single operators than the Cellular Automata The various functions of TemMaster and their relationship can be seen in Fig 1 This program also serves as a learning aid for chapters 5 6 and 7 of the lecture notes Cellular Neural Networks Foundations and Primer by L Chua and T Roska used for the course EE129 at U C Berkeley L O Chua and in a graduate course at the Technical University of Budapest T Roska Inequality consistency check non separable functions only separable consistent Fig 1 The various functions of the TemMaster software The main features of the program 1 There are three possible representations of binary operations given by CNN template or given explicitly as a Boolean function e The Full Truth table tape gives a rigorous description of the CNN s response to all possible binary input patterns The Minimal Truth table card shows the fingerprint of the template local rule and logic function at a glance withou
27. itialize SimCNN CSD BKK KK KK ck k kc kc kck k kc k ck k ck ck kck kck ck k ck kc kck k ck ck EEK General Settings TemplatePath C CANDY TEMLIB WinLayout 3 AssignWinPart 1 INPUT AssignWinPart 2 OUTPUT AssignWinPart 3 LLM 2 TimeStep 1 0 IterNum 1 SendTo INPUT ck k kc kc kck ck EEE EX Start Loop k ck ck ck ck ck k kc k ck ck k kc k ck ck ck ck kc kc BKK KK ck kck ck kk ck kck ck k ck kc kck kk ko Cycle T BKK KKK KK KK KK KK K KK Sequence Item 1 PicFill STATE 0 0 TemLoad Corner tem RunTem Display OUTPUT BKK KK ck ck ck ck k ck kc kck ck k ck kc KK kk kk Cycle 2 BKK k kk ck ck ck k k ck ck Sequence Item 1 PicFill STATE 0 0 TemLoad Corner tem RunTem Display OUTPUT BKK KK ck ck k ck k ck ck kck k ck ck ck ck ck k kc kc kck ck k ck KK KK kc kk End of Loop Terminate STOP Corner 12 Creating script for template sequence 1 Load or define non separable function example Glife dat 2 Generate template sequence see section 3 4 3 Set the template saving path in Directories menu The script file will refer to this path Save sequence as shown in section 3 1 example glifeO1 tem glife02 tem 4 Select Create script in Edit menu YM Script Settings x Script File Name OK Template Group Name glife Advanced Script Path C SCADE TWIN communie Num of cycles 2 In the VM Script Setting dialog set the following items Script File Name
28. itted to optimization at the Evaluate sub menu of Coupled menu If the inequality set is consistent the optimization results in an optimal template displayed in a text editor window at the end of the optimization The format of the table of inequalities can be seen in Fig 14 In addition to the inequalities it also contains the possible values of the free parameters left the output values y and index right If the particular parameter is single there is only one of it its two possible values are displayed graphically Otherwise the possible number of true matching pixels is given 21 a 5 i gt a c 2b i lt a c 0b i lt i gt 1 1 i lt tjt ALA ry Ria miu ALA o XE gt 0 L1 m 0 LI lt gt 0 0 0 0 m gm mn NENNEN C CCNNNN CC 215 518 5 2 8 5 8 8 2 S R S i gt MM a c _ NC 0 1 n3 Fig 14 Inequality system generated for the direct design method of variables seen in Fig 13 4 File formats The program can load CANDY compatible single layer linear template files The results are also saved in this format For sequence formats see section 3 1 The functions are loaded
29. ll truth table showing the actual arrangements of binary input patterns The default arrangement of the 9 input variables The output is displayed as the frame of the corresponding pattern see Fig 6 16 H JE JEJE IL HEEE 0 1 2 3 4 5 6 7 8 9 1011 1213 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 15 E E E EC E C E E E E C E Fig 9 a Minimal truth table card eee LN NN M e eo fm 00 e oo r IN c xr r eI band MIN O4 O4 64 64 O4 04 09 09 LJ LN 00 00 E 17 m e I SOR Ciel 55 CO OO OO CCS 11 51515 OOO lo e A ir SOR Ce II iar 51515 am mmg sex O8 mom O80 mj Obs OO CCC Of BOT ace eee
30. log box Fig 4 The following file types and formats are allowed e tem CANDY compatible single layer linear template file The results are also saved in this format e dat The functions are loaded and saved in files containing 1 0 for FALSE 1 0 for true and 0 0 for DON T CARE values LOCRULE n gt File Edi Display Optimize Format Symmetric Help Look in E w2 amp J e e 88 Debug Corner tem Optimal tem Sequence tem Fiename Files of type ENN Template 7 CNN Tem late tem Fig 4 Open file dialog box The Save sequence item should be selected to save the template sequence generated by one of the decomposition algorithms In this case the file name must have the following format lt group name gt lt index of the first template in the group gt tem E g if XORI is given the series will be saved as XOROI tem XORO2 tem XOROO tem If the initial index is omitted indices will start from 1 XOROI tem 3 2 Edit menu At the Edit menu Fig 5 the previously loaded template can be edited using an external text editor notepad or an arbitrary Boolean function up to nine variables can be defined using a built m graphical user interface Display Optimize Format Template Function New Create Script Continue Fig 5 Edit menu After setting the number of variables and the arrangement of inputs in
31. ring arbitrary is given the optimal templates appear as they are calculated by the optimization algorithm The default is arbitrary Max value is important in the case of circuit design where the range of possible values is limited The color format of the truth tables Color 1 default means TRUE black FALSE white and DON T CARE blue Color 2 means TRUE red FALSE blue and DON T CARE white the Monochrome format is the same as Color 1 except the DON T CARE values are gray Don t cares In order to calculate optimal template for a function loaded previously or defined at the Edit menu all function values have to be set to either TRUE or FALSE Since 19 it is allowed to leave certain values of the function as DON T CARES during the definition phase we have to set a definite value during optimization At this menu the DON T CAREs can be set to TRUE or FALSE or leave it As it is albeit in this case the optimization cannot be started Input format fep Default e C Template Rn Function forma C Color 2 C Monochrom m Set DON T CARE Initial state 00 gt 8 value arbitrary FALSE 1 Fig 12 Format settings dialog box 3 6 Coupled The program provides a graphical interface to design templates including coupled templates implementing binary operations Exploiting the a priori knowledge about the template s format
32. rome symbol format The freedom of modifying the order of binary variables to generate truth tables e Automatic generation of Visual Mouse and SimCNN compatible script files for easy testing of the resulting optimal templates and template sequences 2 System Requirements Installation Start up Program The program requires computer running Windows 95 operating system and should be equipped with monitor capable of resolution 1024 x 768 The program 18 shipped with the CANDY program package and installed automatically when running CANDY setup into the following directory C CANDY TEMMAST The installation disk contains the executable code file WLR32 EXE the optimization algorithm s executables PLANECOM3 EXE and PLANECMD EXE After proper installation the program can be started by running WLR32 EXE or using the shortcut created beforehand Upon start up the program title will appear over the main window Fig 2 TEMMASTER Pals File Edit Display Optimize Format Coupled Directories Help Forward gt gt Full Truth table DUE
33. t carrying all the redundancies of the Full Truth table 1 6 not showing the input configurations the order of outputs is given by the standard sequence of binary numbers e The Window truth table code book shows the actual arrangement of the input pattems along with the corresponding output that could be useful when analyzing binary morphological templates Linear separability check of explicitly given Boolean functions If the function is linearly separable it can be represented by a single uncoupled CNN template otherwise see 4 Template optimization Templates are optimized with respect to their robustness The resulting template is optimal in the sense that it represents a hyper plane which separates all TRUE vertices from FALSE vertices whose distance is maximized to the closest vertices belonging to different groups Determining a quasi minimal linear decomposition of linearly non separable logic functions into a series of separable functions and generating the corresponding sequence of uncoupled templates Advanced design of optimal templates by direct definition of an inequality system This includes the coupled class of CNN templates in some well defined cases Some functions of the program are listed briefly Loading and editing templates Loading and editing logic functions e Defining logic functions via easy to use graphical interface gt Three different display modes two different color formats and a monoch
34. these points we have to start propagating wave fronts to all directions The front should propagate on the black pixels only and change them to white Since the wave front moves on the second image it will be the initial state and the first image will be the input Hence the local rules are the following e change those black pixels to white which have at least one neighboring cell with white output and black input and e do not change the rest of the pixels From this it follows that here the difference of the output and the input counts instead of simply the output value of the neighboring cells 3 Template form determination This template design method requires some a priori information about the template The designer has to supply the number of free parameters as well as their position As usual the template form can be derived from the activation pattern and the classifications The center element of the A template 200 is the first free parameter neighbor which has the same input and output can be both black or white does not affect the cell But if it has black input and white output it activates the cell Hence the second free parameter appears in the neighborhood in both the and the B template but with opposite sign The center element of the B template is the third free parameter Since the propagation is asymmetric the bias z is the fourth free parameter The template is sought in the following form 0 8 0 0 b 0
Download Pdf Manuals
Related Search
Related Contents
DO-MU オリジナルBTO パソコン 取扱説明書 User Manual - Galil Medical TITANXYL RENOVADOR __ _2_ USER GUIDE IJMZ60 Kern ABS-ABJ Analytical Balance Service Manual User`s Manual - Portal privado BTV Grandstream Networks, Inc. Mode d`emploi Sèche-linge à pompe à chaleur M2Tech Evo Supply EDC User Manual 29-Jul-08 Copyright © All rights reserved.
Failed to retrieve file