Senior Fitness - Exercise and Nutrition for Aging Men and Women
FREE Article Feed for your website.
Home Ownership Magazine
Party Planning Information
Article Marketing Resources
Bio-Medical Research Article Database
Informative Articles on Life, Love and Happiness
Tutorials on Business to Writing
Famous Quotes from Famous People
Song Lyric Information
New US Patent Information
Comprehensive List of Content by Category
Online Auctions and Shopping Related Articles
Article Search
Most Recent Articles
Title: Paper container and paper exhibition box containing the paper containers
Patent Number: 7,438,211 Issued on 10/21/2008 to Tseng

Title: Ultrasonic welder having motor drive assembly integrated with transducer housing
Patent Number: 7,438,210 Issued on 10/21/2008 to Gale,   et al.

Title: Surgical stapling instruments having a releasable staple-forming pocket
Patent Number: 7,438,209 Issued on 10/21/2008 to Hess,   et al.

Title: Septal stapler apparatus
Patent Number: 7,438,208 Issued on 10/21/2008 to Larson

Title: Dust-removing structure of a nailer
Patent Number: 7,438,207 Issued on 10/21/2008 to Wu,   et al.

Title: Stapler and connected staple assembly cassette
Patent Number: 7,438,206 Issued on 10/21/2008 to Kumayama

Title: Shirt finishing machine
Patent Number: 7,438,205 Issued on 10/21/2008 to Uchikoshi

Title: Apparatus for dispensing a granular product from a container
Patent Number: 7,438,204 Issued on 10/21/2008 to Conway,   et al.

Title: Dermal penetration enhancers and drug delivery systems involving same
Patent Number: 7,438,203 Issued on 10/21/2008 to Reed,   et al.

Title: Hair removing apparatus
Patent Number: 7,438,202 Issued on 10/21/2008 to Gross

Title: Apparatus for detecting of dropping tablets in automatic medicine packaging machine
Patent Number: 7,438,201 Issued on 10/21/2008 to Kim

Title: Temperature retaining food container
Patent Number: 7,438,200 Issued on 10/21/2008 to Keitges

Title: Vacuum release trash container apparatus
Patent Number: 7,438,199 Issued on 10/21/2008 to Tidrick

Title: Tamper evident container-lid combination
Patent Number: 7,438,198 Issued on 10/21/2008 to Pickles

Title: Combined module of folding container
Patent Number: 7,438,197 Issued on 10/21/2008 to Yamauchi

Title: Container having broad shoulder and narrow waist
Patent Number: 7,438,196 Issued on 10/21/2008 to Yourist

Title: All-terrain vehicle shipping package
Patent Number: 7,438,195 Issued on 10/21/2008 to Beck

Title: Organizer
Patent Number: 7,438,194 Issued on 10/21/2008 to Wang

Title: Nanoporous membrane and method of fabricating the same
Patent Number: 7,438,193 Issued on 10/21/2008 to Yang,   et al.

Title: Electronic control system for container indexing and inspection apparatus
Patent Number: 7,438,192 Issued on 10/21/2008 to Kohler,   et al.

Title: Angle rod screen design
Patent Number: 7,438,191 Issued on 10/21/2008 to Koves

Title: Apparatus and method for isolating materials
Patent Number: 7,438,190 Issued on 10/21/2008 to Wise

Title: Bituminous froth inclined plate separator and hydrocarbon cyclone treatment process
Patent Number: 7,438,189 Issued on 10/21/2008 to Garner,   et al.

Title: Device for use in placer mining operations and method
Patent Number: 7,438,188 Issued on 10/21/2008 to Stolworthy

Title: Free wire reclaimer with improved magnetic separation
Patent Number: 7,438,187 Issued on 10/21/2008 to LaVeine

Title: Modular product display system
Patent Number: 7,438,186 Issued on 10/21/2008 to Markson,   et al.

Title: Stackable tray with integral latch
Patent Number: 7,438,185 Issued on 10/21/2008 to Ho,   et al.

Title: Controlled-environment package for limited-play optical disc
Patent Number: 7,438,184 Issued on 10/21/2008 to Thompson,   et al.

Title: Cigarette packaging
Patent Number: 7,438,183 Issued on 10/21/2008 to Focke, legal representative,   et al.

Title: Blank and a relative packet of cigarettes
Patent Number: 7,438,182 Issued on 10/21/2008 to Gamberi,   et al.

Title: Carrier and method
Patent Number: 7,438,181 Issued on 10/21/2008 to Cuomo

Title: Composite conveying belt
Patent Number: 7,438,178 Issued on 10/21/2008 to Chahal,   et al.

Title: Device for transferring loads between at least two conveyors
Patent Number: 7,438,177 Issued on 10/21/2008 to Petrovic

Title: Stretchable transfer conveyer method of stretching transfer conveyer and stretchable guide device for movable article
Patent Number: 7,438,176 Issued on 10/21/2008 to Furuuchi

Title: Travelator, moving ramp or escalator
Patent Number: 7,438,174 Issued on 10/21/2008 to Aulanko,   et al.

Title: Conveyor lifting system
Patent Number: 7,438,173 Issued on 10/21/2008 to Schoonover,   et al.

Title: Foreign object removal system for a coin processing device
Patent Number: 7,438,172 Issued on 10/21/2008 to Long,   et al.

Title: Retractable and extendable material loader apparatus for directing material onto a conveyor
Patent Number: 7,438,171 Issued on 10/21/2008 to Clark,   et al.

Title: Clutch system
Patent Number: 7,438,169 Issued on 10/21/2008 to Swanson,   et al.

Title: Cushion plate
Patent Number: 7,438,168 Issued on 10/21/2008 to Kita,   et al.

Title: Coupling device and improved method of assembly thereof
Patent Number: 7,438,167 Issued on 10/21/2008 to Morgensai,   et al.

Title: Flywheel assembly
Patent Number: 7,438,166 Issued on 10/21/2008 to Tsuruta,   et al.

Title: Torsional vibration damper of a rotating shaft
Patent Number: 7,438,165 Issued on 10/21/2008 to Nerubenko

Title: Solenoid actuated continuously variable servo valve for adjusting damping in shock absorbers and struts
Patent Number: 7,438,164 Issued on 10/21/2008 to Groves,   et al.

Title: Brake application device comprising an electrically actuated device for emergency and auxiliary release
Patent Number: 7,438,163 Issued on 10/21/2008 to Fuderer,   et al.

Title: Caliper brake with disengaged position
Patent Number: 7,438,162 Issued on 10/21/2008 to Eiband

Title: Quick release removable bridge caliper
Patent Number: 7,438,161 Issued on 10/21/2008 to Burgoon,   et al.

Title: Floating caliper disc brake
Patent Number: 7,438,160 Issued on 10/21/2008 to Maehara

Title: Bicycle motion sensing arrangement
Patent Number: 7,438,159 Issued on 10/21/2008 to Watarai

Title: Safety monitoring device with instantaneous speed determination for a lift car
Patent Number: 7,438,158 Issued on 10/21/2008 to Heinzer,   et al.

Title: Muffler for an exhaust gas system
Patent Number: 7,438,157 Issued on 10/21/2008 to Schorn,   et al.

Title: Diaphragm, spherical-shell diaphragm and electroacoustic transducer, and method of manufacturing electroacoustic transducer
Patent Number: 7,438,156 Issued on 10/21/2008 to Inagaki,   et al.

Title: Tangential stress reduction system in a loudspeaker suspension
Patent Number: 7,438,155 Issued on 10/21/2008 to Stead,   et al.

Title: Automotive steering rack stroke adjusting device
Patent Number: 7,438,154 Issued on 10/21/2008 to Lim

Title: All-terrain vehicle engine configuration
Patent Number: 7,438,153 Issued on 10/21/2008 to Kalsnes,   et al.

Title: Airflow sensing method and apparatus for impact detection
Patent Number: 7,438,152 Issued on 10/21/2008 to Hawes,   et al.

Title: Method for limiting damages in the event of a partially overlapping frontal collision, and motor vehicle comprising a corresponding device
Patent Number: 7,438,151 Issued on 10/21/2008 to Winkler

Title: Seat belt apparatus
Patent Number: 7,438,150 Issued on 10/21/2008 to Higashiyama

Title: Motorcycle
Patent Number: 7,438,149 Issued on 10/21/2008 to Ishida,   et al.

Title: Child motorized riding toy with remote control
Patent Number: 7,438,148 Issued on 10/21/2008 to Crea

Title: Moving object mounting fuel cell
Patent Number: 7,438,146 Issued on 10/21/2008 to Hirakata,   et al.

Title: Vehicle adaptable to various terrains
Patent Number: 7,438,145 Issued on 10/21/2008 to Shin

Title: Electrically-powered autonomous vehicle
Patent Number: 7,438,144 Issued on 10/21/2008 to Chene,   et al.

Title: Track-mounted drilling machine with active suspension system
Patent Number: 7,438,143 Issued on 10/21/2008 to Law,   et al.

Title: Recovery system
Patent Number: 7,438,142 Issued on 10/21/2008 to Butler,   et al.

Title: Automated, low profile drilling/bolting module with carousel
Patent Number: 7,438,141 Issued on 10/21/2008 to Hinshaw,   et al.

Title: Shock attenuating device for a rotary impact tool
Patent Number: 7,438,140 Issued on 10/21/2008 to Sterling,   et al.

Title: Tool retention apparatus and method
Patent Number: 7,438,139 Issued on 10/21/2008 to Pillers, II

Title: Impact adapter for transfer of impacts and rotation from an impact rock drilling machine to a drill string
Patent Number: 7,438,138 Issued on 10/21/2008 to Andersson,   et al.

Title: Method and apparatus for locking a wing frame of an implement
Patent Number: 7,438,137 Issued on 10/21/2008 to Pederson,   et al.

Title: Aeration device
Patent Number: 7,438,136 Issued on 10/21/2008 to Maas,   et al.

Title: Concentric pipes expanded at the pipe ends and method of forming
Patent Number: 7,438,132 Issued on 10/21/2008 to Cook,   et al.

Title: Expandable injector pipe
Patent Number: 7,438,131 Issued on 10/21/2008 to Weirich

Title: Downhole actuating apparatus and method
Patent Number: 7,438,130 Issued on 10/21/2008 to Read, Jr.

Title: Water treatment method for heavy oil production using calcium sulfate seed slurry evaporation
Patent Number: 7,438,129 Issued on 10/21/2008 to Heins

Network visualization tool utilizing iterative rearrangement of nodes on a grid lattice using gradient method Number:7,024,419 from the United States Patent and Trademark Office (PTO) owispatent

Home    Author Login    Submit Article    Article Search    Add Your Link    Edit Your Link    Contact Us    Advertising    Disclaimer

   

 
Web LinkGrinder.com

Top Breaking News
     Greek, Cypriot Leaders Resume Unification Talks in Nicosia by Nathan Morley
     Indonesia Tobacco Sales Grow, Raising Health Fears
     South Korea Allows Top Defector to Travel Overseas by VOA News

Title: Network visualization tool utilizing iterative rearrangement of nodes on a grid lattice using gradient method

Abstract: A visualization system and method for visualization of network data, which is data that represents elements and links between elements. The network data is converted into a data structure, which represents a grid arrangement of the elements, where each element is placed on an individual grid position of a lattice. The data structure is suitable for use by a graphics display. The visualization tool comprises a processing unit that generates an initial data structure which represents an initial grid arrangement of the elements. It then assigns a global value to this initial grid arrangement and employs a gradient method for converting the initial grid arrangement into another grid arrangement which has a decreased or an increased global value.

Patent Number: 7,024,419 Issued on 04/04/2006 to Klenk,   et al.


Inventors: Klenk; Juergen (Adliswil, CH); Ziegler; Patrick (Buochs, CH)
Assignee: International Business Machines Corp. (Armonk, NY)
Appl. No.: 644178
Filed: August 23, 2000

Foreign Application Priority Data

Sep 13, 1999[EP]99810817

Current U.S. Class: 707/102; 707/104.1; 716/8
Current Intern'l Class: G06F 17/00 (20060101); G06F 7/00 (20060101)
Field of Search: 707/1-5,100-1041 716/7-13


References Cited [Referenced By]

U.S. Patent Documents
3617714Nov., 1971Kernighan et al.
4953106Aug., 1990Gansner et al.
5513124Apr., 1996Trimberger et al.
5640327Jun., 1997Ting.
5930784Jul., 1999Hendrickson.
5987470Nov., 1999Meyers et al.
5995114Nov., 1999Wegman et al.
6363518Mar., 2002Lee.
6389418May., 2002Boyack et al.
2003/0120630Jun., 2003Tunkelang.
Foreign Patent Documents
0 903 693Mar., 1999EP.
0903693Mar., 1999EP.
1085693Mar., 2001EP.
WO 99/6345/5Dec., 1999WO.


Other References

Fruchterman, T.M.J. and E.M. Reingold "Graph Drawing by Force-Directed Placement", Software—Practice and Experience, vol. 21, pp. 1129-1164, Nov. 1991.
Tunkelang, D. "A Practical Approach to Drawing Undirected Graphs", Technical Report CMU-CS-94-161, School of Computer Science, Carnegie Mellon University, Jun. 1994.
Di Battista, G, P. Eades, R. Tamassia and I.G. Tollis "Algorithms for Drawing Graphs: An Annotated Bibliography", Technical Report, Brown University, Jun. 1994.
Cohen, R.F., P. Eades, T. Lin and F. Ruskey "Volume Upper Bounds for 3D Graph Drawing", Proceedings of the 1994 Conference of the IBM Centre for Advanced Studies on Collaborative Research, 1994.
Monien, B., F. Ramme and H. Salmen "A Parallel Simulated Annealing Algorithm for Generating 3D Layouts of Undirected Graphs", Proceedings of the International Symposium on Graph Drawing (GD'95), pp. 396-408, 1995.
Garg, A. and R. Tamissia "GIOTTO3D: A System for Visualizing Hierarchical Structures in 3D", Proceedings of the Internationa Symposium on Graph Drawing (GD'96), Sep. 18-20, 1996.
Davidson, R. and D. Harel "Drawing Graphs Nicely Using Simulated Annealing", ACM Transactions on Graphics, vol. 15, No. 4 pp. 301-331, Oct. 1996.
Coleman, M.K. and D.S. Parker "Aesthetics-Based Graph Layout for Human Consumption", Software—Practice and Experienc vol. 26, No. 12, pp. 1415-1438, Dec. 1996.
Tunkelang, D. "JIGGLE: Java Interactive Graph Layout Environment", Proceedings of the International Symposium on Graph Drawing (GD'98), pp. 413-422, 1998.
Tunkelang, D. "A Numerical Optimization Approach to General Graph Drawing", PhD. Thesis, School of Computer Science, Carnegie Mellon University, CMU-CS-98-189, Jan. 1999.
Behzadi, L. "An Improved Spring-Based Graph Embedding Algorithm and LayoutShow: A Java Environment for Graph Drawing", M.S. Thesis, Computer Science, York University, Ontario Canada, Jul. 1999.
Brandenburg, F.J. "Graph Drawing: Past, Present, Future", University of Passau, powerpoint presentation, 82 slides, downloaded from www.csse.monash.edu.au/˜gfarr/research/GraphDrawing02-Mel.ppt, Oct. 2002.
Eades, P. "A Heuristic for Graph Drawing", Congressus Numerantium, vol. 42, 1984, pp. 149-160.
Masui, T. "Graphic Object Layout with Interactive Genetic Algorithms", Proceedings of the IEEE Workshop on Visual Language (VL92), Sep. 15-18, 1992, pp. 74-80.
Eloranta, T. and E. Makinen "TimGA—A Genetic Algorithm for Drawing Undirected Graphs", Technical Report A-1996-10, University of Tampere (Finland), Department of Computer Science, Dec. 1996.
Schweikert, D.G. and B.W. Kernighan "A Proper Model for the Partitioning of Electrical Circuits", Annual ACM IEEE Design Automation Conference, Proceedings of the 9th Workshop on Design Automation, pp. 57-62, 1972.
European Search Report dated Oct. 29, 2003 issued in a counterpart application, namely, Appln. No. 00118557.8.
Coleman et al., "Aesthetics-Based Graph Layout for Human Consumption", Software-Practice and Experience, vol. 26(12), pp. 1415-1438, Dec. 1996.
Davidson et al., "Drawing Graphs Nicely Using Simulated Annealing", ACM Transactions on Graphics, vol. 15, No. 4, Oct. 1996, pp. 301-331.
Tunkelang, "JIGGLE: Java Interactive Graph Layout Environment", GD'98, LNCS 1547, pp. 413-422, 1998.
Kamps et al., "Constraint-Based Spring-Model Algoithm for Graph Layout", pp. 349-360.
Gupta et al., "Optimal Three-Dimensional Layouts of Complete Binary Trees", Information Processing Letters 26 (1987/88), pp. 99-104.
Bienemann et al., "A Simulated Annealing Approach to the General Graph Layout Problem", pp. 255-260, 1986.
Clarkson, Mark A., An Easier Interface, Byte, Feb. 1991, pp. 277-282.
DiBattista, Giuseppe, et al., An Experimental Comparison of Four Graph Drawing Algorithms, Computational Geometry, 1997, pp. 303-325.
Eades, Peter, et al., An Algorithm for Drawing a Hierarchical Graph, International Journal of Computational Geometry & Applications, vol. 6, No. 2 (1996), pp. 145-155.
Robertson, George G., et al., Information Visualization Using 3D Interactive Animation, Communications of the ACM, Apr. 1993, vol. 36, No. 4, pp. 57-71.

Primary Examiner: Wassum; Luke S
Attorney, Agent or Firm: Karra, Esq.; Satheesh

Claims



What is claimed is:

1. A method for converting network data into a data structure for use by a graphics display system, comprising the steps of:

receiving network data representing a network with a plurality of elements and links between elements; and

converting the network data into a data structure representing a grid arrangement of the plurality of elements where each element of the plurality of elements is placed on an individual grid position of a lattice, by:

(a) assigning a global value to an initial grid arrangement of the plurality of elements which depends on the arrangement of one element of the plurality of elements with respect to the grid positions of said one element's neighbors; and

(b) modifying the initial grid arrangement to generate another grid arrangement of the plurality of elements using a gradient method based on the global value of the grid arrangement of the plurality of elements, the plurality of elements of the another grid arrangement each being placed on an individual position of the lattice,

wherein an initial element is selected from among the plurality of elements using the gradient method and a local energy of the initial element, the another grid arrangement is generated by transposing the initial element and another element, and the global value is determined based on a local energy of each of the plurality of elements.

2. The method of claim 1, further comprising the step of:

repeating steps (a) and (b) until the global value of the grid arrangement of the plurality of elements equals a minimal or maximal global value of the network.

3. The method of claim 1, further comprising the step of:

repeating steps (a) and (b) until a minimal entanglement of the links is obtained.

4. The method of claim 1, further comprising the step of:

repeating steps (a) and (b) until a minimal length of the links is obtained.

5. The method of claim 1, wherein the gradient method is employed such that the modification of the initial grid arrangement maximizes a change in the global value for all nodes paired with the initially-selected element.

6. The method of claim 1, wherein the gradient method allows a shift in emphasis between minimizing the number of crossings of the links and minimizing the length of the links, such that any combination of the two are possible.

7. The method of claim 1, wherein each element has a local value, and the global value is the sum of all local values.

8. The method of claim 7, wherein the gradient method modifies the initial grid arrangement starting with an element with the highest local value for any possible arrangement of the elements on the grid.

9. The method of claim 1, wherein the gradient method embodies a minimizing algorithm or a maximizing algorithm.

10. The method of claim 1, wherein the gradient method is of polynomial complexity.

11. The method of claim 1, wherein the global value is related to the degree of comprehensibility of the visualization of the network.

12. The method of claim 1, wherein a simulated annealing method is employed that randomly shuffles the elements so as to jump out of local minima or maxima traps in order to obtain a true global value.

13. The method of claim 1, wherein the lattice has a finite number of grid positions.

14. The method of claim 1, wherein the elements are visualized as circles or spheres, and the links are visualized as lines or arrows.

15. The method of claim 1, wherein an element or a link can be selectively suppressed.

16. The method of claim 1, wherein the network is hierarchical or fractal hierarchical.

17. The method of claim 1, wherein the network has a hierarchical structure, and the hierarchical structure is visualized by arranging the elements in vertically stacked layers corresponding to the levels of hierarchy.

18. A visualization tool for converting network data, which represent a plurality of elements and links between elements, into a data structure, which represents a grid arrangement of the plurality of elements where each element of the plurality of elements is placed on an individual grid position of a lattice, such that the data structure is suited for use by a graphics display, comprising:

a storage device for storing the network data;

a storage device for storing the data structure; and

a processing unit for processing a gradient method;

wherein the processing unit generates an initial data structure, which represents an initial grid arrangement of the plurality of elements, assigns a global value to this initial grid arrangement, employs the gradient method for converting the initial grid arrangement into another grid arrangement which has a decreased or an increased global value, the plurality of elements of the another grid arrangement each being placed on an individual position of the lattice,

wherein an initial element is selected from among the plurality of elements using the gradient method and a local energy of the initial element, the another grid arrangement is generated by transposing the initial element and another element, and the global value is determined based on a local energy of each of the plurality of elements.

19. The visualization tool of claim 18, further comprising: a graphics display system.

20. The visualization tool of claim 19, wherein the graphics display system comprises a graphics processor and a graphics display.

21. The visualization tool of claim 19, wherein the graphics display system generates image data from the data structure.

22. The visualization tool of claim 18, wherein the processing unit modifies the initial grid arrangement of the plurality of elements to generate another grid arrangement of the plurality of elements with a gradient method on the global value of the grid arrangement of the plurality of elements.

23. The visualization tool of claim 18, wherein the emphasis can be shifted between minimizing the number of crossings of the links and minimizing the length of the links, such that any combination of minimizations may be achieved.

24. The visualization tool of claim 18, wherein the gradient method modifies the initial grid arrangement starting with an element with a highest local value for any possible arrangement of the elements on the grid.

25. The visualization tool of claim 18, wherein a simulated annealing method is processed by the processing unit, said simulated annealing method randomly shuffling the elements so as to jump out of local minima or maxima traps in order to obtain a true global value.

26. The visualization tool of claim 18, wherein the lattice has a finite number of grid positions.

27. The visualization tool of claim 18, wherein the elements are visualized as circles or spheres, and the links are visualized as lines or arrows.

28. The visualization tool of claim 18, wherein an element or a link can be selectively suppressed.

29. The visualization tool of claim 18, further comprising: means for receiving network data.

30. A visualization tool for converting network data, which represents a network with a plurality of elements and links between elements, into a data structure, which represents a grid arrangement of the plurality of elements, where each element of the plurality of elements is placed on an individual grid position of a lattice, such that the data structure is suitable for use by a graphics display, comprising:

a storage device for storing the network data;

a storage device for storing the data structure; and

a processing unit for processing a gradient method;

wherein the processing unit converts the network data into an initial data structure with an initial degree of entanglement of links, which in turn is transformed into another data structure by using the gradient method such that the degree of entanglement of the links is reduced using a series of element transpositions which transpose an initial element and another element from among the plurality of elements, the initial element being determined during each transposition using a global value and a local value of the initial element and the plurality of elements of the another grid arrangement each being placed on an individual position of the lattice.

31. The visualization tool of claim 30, further comprising: a graphics display system.

32. The visualization tool of claim 31, wherein the graphics display system comprises a graphics processor and a graphics display.

33. The visualization tool of claim 31, wherein the graphics display system generates image data from the data structure.

34. The visualization tool of claim 30, wherein the network is a computer program-produced network, a communications network, or a database.

35. The visualization tool of claim 30, wherein the emphasis can be shifted between minimizing the number of crossings of the links and minimizing the length of the links, such that any combination of minimizations may be achieved.

36. The visualization tool of claim 30, wherein the lattice has a finite number of grid positions.

37. The visualization tool of claim 30, wherein the elements are visualized as circles or spheres, and the links are visualized as lines or arrows.

38. The visualization tool of claim 30, wherein an element or a link can be selectively suppressed.

39. The visualization tool of claim 30, wherein the network is hierarchical or fractal hierarchical.

40. The visualization tool of claim 30, wherein the network has a hierarchical structure, and the hierarchical structure is visualized by arranging the elements in vertically stacked layers corresponding to levels of hierarchy.

41. The visualization tool of claim 30, further comprising: means for receiving network data.

42. A computer system for network visualization, said network visualization comprising:

at least one computer-readable memory including:

code for receiving network data representing a network with a plurality of elements and links between elements; and

code for converting the network data into a data structure representing a grid arrangement of the plurality of elements where each element of the plurality of elements is placed on an individual grid position of a lattice, by

assigning a global value to an initial grid arrangement of the plurality of elements which depends on the arrangement of one element of the plurality of elements with respect to the grid positions of said one element's neighbors, and

modifying the initial grid arrangement to generate another grid arrangement of the plurality of elements with a gradient method on the global value of the grid arrangement of the plurality of elements, the plurality of elements of the another grid arrangement each being placed on an individual position of the lattice,

wherein an initial element is selected from among the plurality of elements using the gradient method and a local energy of the initial element, the another grid arrangement is generated by transposing the initial element and another element, and the global value is determined based on a local energy of each of the plurality of elements.

43. The computer system of claim 42, wherein the code for converting network data into a data structure repeats the assigning and modifying steps until the global value of the grid arrangement of the plurality of elements equals a minimal or maximal global value of the network.

44. The computer system of claim 42, wherein the code for converting network data into a data structure repeats the assigning and modifying steps until a minimal entanglement of the links is obtained.

45. The computer system of claim 42, wherein the code for converting network data into a data structure repeats the assigning and modifying steps until a minimal length of the links is obtained.

46. The computer system of claim 42, wherein the gradient method is employed such that the modification of the initial grid arrangement maximizes a change in the global value for all nodes paired with the initially-selected element.

47. The computer system of claim 42, wherein the gradient method allows a shift in emphasis between minimizing the number of crossings of the links and minimizing the length of the links, such that any combination of minimizations may be achieved.

48. The computer system of claim 42, wherein the gradient method embodies a minimizing algorithm or a maximizing algorithm.
Description



PRIORITY

This application claims priority to an application entitled "Network Visualization Tool" filed in the European Patent Office on Sep. 13, 1999 and assigned Patent Application No. 99810817.9, the contents of which are hereby incorporated by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates generally to the visualization of data, and in particular, to a device and method for visualizing networks by converting network data into a data structure.

2. Description of the Related Art

Data, when presented as rows and columns of numbers and text, is typically raw and undifferentiated. To be useful, raw data must be organized into intelligible categories. Data can also be obscure in the sense that its relevant attributes and relationships are hidden. Normally, the user must conduct an investigation (e.g. by using appropriate data mining tools) to discover such relationships and attributes.

If one presents data in the form of a graph—a representational scheme herein referred to as a "network"—one can supply meaning and context. That is, data—if grouped into relevant categories—can be more easily comprehended. One approach to increasing comprehension of data is data visualization. Data visualization utilizes tools, such as display space plots, to represent data within a display space defined by the coordinates of each relevant data dimensional axis.

Linguists, mathematicians, computer scientists, and others need tools that can visualize networks. Considerable progress has been made in the development of software tools that serve that purpose.

Software tools are known that can be used to create appropriately formatted "trees". Trees are natural structures that appear in many computer science applications (e.g., data structures, databases, networks, etc.). These software tools usually require textual data input and are able to format trees, make small changes to the nodes and layout, and align nodes. Most of the currently available software tools only produce 2-dimensional (2D) trees. These tools are suited for drawing grammar trees (syntax parse trees), or trees that allow the visual inspection of networks.

Software tools are available that can generate 3-dimensional (3D) tree drawings. An example is the cone tree system from Xerox PARC, as described by George Robertson, Jock Mackinlay, and Stuart Card in "Information visualization using 3D interactive animation", Communications of the ACM, 1993, 36(4), 57-71. The Xerox PARC cone tree is a 3D radial tree layout presented in Euclidean three-dimensional space.

Another attempt at data visualization through a 3D mapping is illustrated in the CAM Tree developed by Xerox PARC and described by M. Clarkson, in "An Easier Interface", Byte Magazine, February 1991. The CAM Tree is essentially a three-dimensional tree with limited ability to represent anything more than the hierarchical structure of a data base. The attributes of the data remain hidden.

Traditionally, software tools for visualization of networks portray the respective data in a tree-like format only, as outlined above.

There are other areas where software tools for visualization are employed. Examples are the visualization tools used in connection with high speed logic and circuit simulators, which are used throughout the computer industry in the design of complex systems. The high performance simulators generate enormous amounts of data that are displayed on a screen to allow a user to intervene. An example of such a system is described and claimed in U.S. Pat. No. 5,043,920 entitled "Multi-dimension visual analysis".

Existing visual presentation systems do not provide a developer or operator means of easily identifying glitches or bottlenecks in complex communication systems. For example, a developer or operator is forced to make inferences concerning the relationships between various types of hardware elements of a network, when these elements are graphically presented on a screen, in order to understand how to improve the respective network.

Another area where networks have become important are site maps on the World Wide Web. Here each page is seen as a node in a network, and the links between the pages are the links in the network. Site maps allow a user to easily navigate through a complex site. In addition, they are useful to mine the information on the World Wide Web, e.g. by analyzing which sites have many incoming or outgoing links, thus identifying authority sites on a certain subject or reference sites.

There are a number of attempts in the literature to solve certain problems which occur when drawing networks (known as graph drawing problems). A recent overview is given in the article "An experimental comparison of four graph drawing algorithms" by Di Battista et. al., Computational Geometry 7, 1997, pp. 303-325. These algorithms are used for 3D-visualization of non-hierarchical networks.

In the article "An algorithm for drawing a hierarchical graph" by R. Tamassia et. al, Int. J. Comput. Geom. Appl. (Singapore) Vol. 6, No. 2 Jun. 1996, pp. 145-155, an algorithm to optimally draw a hierarchical network is described. However, this algorithm uses only a line for each level of hierarchy to arrange the elements and requires the initial placement of elements on the top and bottom hierarchy lines.

The article "GIOTTO3D: a system for visualizing hierarchical structures in 3D" by R. Tamassia et. al., Graph Drawing, Symposium on Graph Drawing, GD '96, Proceedings 1997, pp. 193-198, describes a tool that can arrange a hierarchical network in an optimal 3D-arrangement. A bend-minimization algorithm (from a 2D graph drawing tool) is used.

There are many more areas where visualization tools can be employed since almost all intelligent systems rely heavily on networks and their visualization.

Thus there is a demand for a robust 3D data representation method and system that overcomes problems of known approaches and systems. Such problems include, but are not limited to, the inability to display attributes of data, the limitation of visualizations to tree-like formats, the inability for a user to intuitively identify problems in a visualization, and the lack of detail in hierarchical descriptions of data.

SUMMARY OF THE INVENTION

One object of the present invention to improve the interaction between humans and computers.

Another object of the present invention is to provide an system and method for visualizing elements of a network on a display.

Another object of the present invention is to provide a system and method for processing large amounts of information and for displaying that information graphically.

Yet another object of the present invention is to provide a system and method for acting upon elements of network that are displayed on a display.

Still another object of the present scheme is to provide a system and method for making abstract relationships or associations between network elements more concrete and accessible.

To achieve the above and other objects, there is provided a method and system for displaying a three-dimensional navigable display space containing an aggregation of elements and links between elements. A special perspective is provided by processing and displaying the data structure so that a user can see a representative overview of the entire aggregation of elements and links (or a subset thereof) that have been selected for display together on a display screen.

In another aspect, the present invention provides a method and corresponding system for facilitating the visual exploration of hierarchical and non-hierarchical networks. The method and corresponding system provides an easily comprehensible view of the whole network or a part thereof and allows interactive editing of the network, and/or its elements, and/or its links.

In a further aspect, the present invention provides the ability to use the space between visual elements as a representation of a relationship, e.g., by placing related elements closer together than elements that have no relationship or only a remote relationship. The present invention provides the ability to introduce depths into a visual space such that the depth conveys distance where elements in the foreground are the focus of attention.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other objects, features and advantages of the present invention will become more apparent from the following detailed description when taken in conjunction with the accompanying drawings in which:

FIG. 1 is a schematic representation of a simple network with two elements and one link;

FIG. 2 is a schematic representation of a cylindrical grid as used for the visualization, according to an embodiment of the present invention;

FIG. 3 is a schematic representation of a network with elements placed on various positions, according to an embodiment of the present invention;

FIG. 4 is a schematic visualization of a network with many elements and links, according to an embodiment of the present invention;

FIG. 5 is a schematic visualization of an optimized arrangement of the network of FIG. 4, according to an embodiment of the present invention;

FIG. 6A is a schematic hardware structure of a visualization system, according to a first embodiment of the present invention;

FIG. 6B is a schematic logical block diagram of the visualization system of FIG. 6A;

FIG. 7A is a schematic hardware structure of another visualization system, according to a second embodiment of the present invention;

FIG. 7B is a schematic logical block diagram of the visualization system of FIG. 7A; and

FIG. 8 is a flow chart of the network visualization method according to an embodiment of the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

A preferred embodiment of the present invention will be described below with reference to the accompanying drawings. In the following description, well-known functions or constructions are not described in detail since they would obscure the invention in unnecessary detail.

In order to explore, construct, or maintain a network it is helpful that the network be visualized in an easily comprehensible way, so that its topological structure can be easily explored and modified, if necessary. Studies show that people easily comprehend a visualization of a network if the elements of the network are arranged such that links between the elements exhibit a minimal entanglement and at the same time a minimal length. However, in most cases these two requirements of minimal entanglement and minimal length are mutually exclusive, so that one cannot expect to find an arrangement of the elements which yields both a minimal entanglement and a minimal length of their links. Instead, the most easily comprehensible arrangement of the elements will only have a near minimal entanglement and a near minimal length of their links. In the present context, the above described arrangement of elements of a non-hierarchical network is referred to as the optimal arrangement.

An additional requirement for the arrangement of elements is that they be kept a minimal distance apart so that they can be clearly distinguished. This requirement can be fulfilled if one provides a grid (a lattice with individual grid points) and requires that the elements be arranged only on the grid points. For instance, as a grid one might specify a square lattice or a circle with a given number of grid points distributed at equal angular distances. When a network of n nodes is to be optimally arranged on a grid with k grid points, there are k!/(k-n)! possible arrangements of the elements (where k!=1*2* . . . *k denotes the factorial of k). This combinatorial calculation indicates that the most obvious way to find the optimal arrangement is by considering all possible arrangements of exponential complexity; however, this, in general, is unsolvable for computer systems.

1. Definitions

Before addressing different aspects and embodiments, relevant terms and expressions will be defined and explained.

Network: A network is a graph comprising elements (nodes, vertices, and the like) and links (connections, edges, and the like) between some of the elements. An example of a network is a data structure as described in PCT patent application with application serial number PCT/IB99/00231, filed on 11 Feb. 1999, with a priority date of 2 Jun. 1998, which is currently assigned to the present assignee. In this example the network comprises semantical units (elements) and connection objects (links) between these semantical units. This co-pending patent application is incorporated in its entirety.

Element: An "element" is used to describe an individual unit of a network (graph), database, data structure, or some other form of representation. Examples of elements are: files (e.g., computer or machine readable files), objects, information kept in a cell of a database, a database record, an image from an image repository, a multimedia object (e.g., an avi or mpeg movie), a semantical unit, or a physical network element of a communications network (such as a switch, router, node, gateway, computer, access device and so forth).

Link: A "link" can be a physical or logical link between elements. Such a link can describe a relationship or connection between the respective elements. There is a variety of meanings that can be assigned to a link. In the above-mentioned patent application networks are described where semantical units (elements) are connected by so-called connection objects (links), whose meanings can be similarities, (information) exchanges, groupings, role descriptions, etc.

The word "network" is herein used to describe any collection or aggregation of elements and links. For the purposes of the present invention, it does not matter whether the network is structured or unstructured. For example, a network can be a computer program-produced network (e.g., a network with application-specific information). Other examples include communications networks (e.g., comprising switches, routers, nodes, gateways, computers, access devices, or any combination thereof), knowledge databases, networks or graphs representing weather data or weather maps, and the like.

A simple network 1 is schematically represented in FIG. 1. In the present example, the network 1 consists of elements which are visualized as spheres 3, and a link which is visualized as arrow 2. Usually a link 2 connects two elements 3, as illustrated in FIG. 1.

Network data: The expression "network data" is used to describe some collection of data that represents the elements and links of a network. Network data can be structured or unstructured. Network data can be derived from raw data. Raw data is data in some idiosyncratic format. Raw data comes in many forms, from spreadsheets to input text, textual strings, output data of an application program, and so forth. The transformation of raw data into network data typically involves the loss or gain of information.

Data structure: In order to be able to visualize network data, the network data has to be transformed or mapped into a so-called "data structure". This data structure then can be processed and displayed on a graphics display of a graphics system. Such a data structure can also be stored on a medium for later use, or it can be transmitted via a communications channel. The data structure may, for example, augment a spatial substrate with marks and graphical properties to encode information, as described on pages 26-34 of the book "Information Visualization; Using Vision to Think", Stuart K. Card et al., Morgan Kaufmann Publishers, Inc., San Francisco, Calif., USA, 1999. To be a good data structure, the mapping of the network data into the data structure must preserve the data. Network data can be transformed or mapped into data structures in multiple ways. A family or group of algorithms which can be used for transformation of network data into some data structure will be addressed below.

Hierarchical network: A network is called "hierarchical" if, besides the normal, non-scaling links, there are also scaling links. Examples are: a license agreement, a joint project agreement, and an employment contract which are all grouped in the semantical unit (element) 'agreements' by their similarity (they are all agreements), while a liability provision, a license grant provision, and an arbitration provision are all grouped in the semantical unit (element) 'agreement' by their functional connection (they are all functional parts or elements of an agreement).

Fractal hierarchical network: A hierarchical network is called "fractal" if the following four conditions are satisfied:
    • 1. All elements are similar (derived from one template);
    • 2. All links are similar (derived from one template);
    • 3. Links may also be elements; and
    • 4. Hierarchical links are possible, and at least one element must have a hierarchical link.


  • When visualizing a hierarchical network the hierarchical structure must be clearly visible, which is achieved by arranging the elements in vertically stacked layers which correspond to the levels of hierarchy. Here again, the visualization of the hierarchical network must be easily comprehensible, which means that the elements must be arranged in such a way that there is a near minimal entanglement and a near minimal length of links within each layer and of links between layers. In the present invention, the above described arrangement of elements of a hierarchical network is referred to as the optimal arrangement.

    It is also a requirement for a hierarchical network and a fractal hierarchical network to arrange its elements such that they are kept apart a minimal distance so that they can be clearly distinguished. This requirement can be fulfilled if one provides a grid (lattice with individual grid points) and requires that the elements be arranged on the grid points only. As an example, one might specify a cubic or a cylindrical lattice as a grid.

    Gradient Method: A "gradient method", as employed in connection with the present invention, starts with an arrangement of a plurality of elements on a predefined grid (herein referred to as the "current grid arrangement"). These elements together with some links form a network. This current grid arrangement has a corresponding global value (initial global value). This global value corresponds to the ease of perception of the visualization of the network, i.e. of the current grid arrangement. Depending on the implementation, either a decrease or an increase of the global value makes the visualization more easily comprehensible. The gradient method produces from the current grid arrangement another grid arrangement of the plurality of elements that has a global value which is either smaller or larger than the initial global value, thus making the visualization of the other (new) grid arrangement more easily comprehensible. Ideally, one employs a gradient method which, depending on the implementation, reaches the minimal or maximal global value, or a near-minimal or a near-maximal global value, i.e. the optimal or a near-optimal grid arrangement, very quickly.

    For the purposes of the present description, the global value is considered to approach:
    • (1) the minimal global value of the network if the global value is less than a specified threshold greater than the minimal global value; or
    • (2) the maximal global value of the network if the global value is less than a specified threshold smaller than the maximal global value.


  • Note that the threshold depends on the definition of the global value, i.e. its relation to the degree of comprehensibility of the visualization of the network.

    A near minimal entanglement of the links is deemed to have been reached if the number of crossings of links (which is a measure of the degree of entanglement) is less than 50% greater than the minimal number of crossings of links. The minimal entanglement of the links is reached if the number of crossings of a particular arrangement is equal to the minimum number of crossings of links.

    A near minimal length of the links is deemed to have been reached if the sum of the length of all links is less than 50% greater than the minimal length the of links. The minimal length of the links is reached if sum of the length of all links of a particular arrangement is equal to the minimal length of the links.

    This means that the corresponding algorithm terminates in polynomial time, which renders the problem of finding the optimal or near-optimal arrangement computable. In order to reach this optimal or near-optimal arrangement in only a few iterative steps (cycles), the elements' position on the grid should be re-arranged by looking for changes in the arrangement that lead to big changes in the global value. For this purpose, a gradient level or threshold should be defined that has to be reached or exceeded by any given step to make sure that only those changes of the grid arrangement are actually carried out that lead to a drastic reduction or increase of the global value. This gradient level or threshold may depend on the current iteration number and/or on the current global value. Doing so ensures that only very few cycles are required until the global value converges to the minimal or maximal, or near-minimal or near-maximal, global value. Please note that in the following embodiments algorithms (herein referred to as minimizing algorithms) are employed which decrease and eventually minimize the global value. Likewise, algorithms can be employed that increase and eventually maximize the global value (herein referred to as maximizing algorithms).

    2. Overview of the Present Invention

    According to the present invention there is a basic process that is carried out in order to transform network data, which represent a plurality of elements and links between elements, into a data structure which has a global value that is the same or approximately the same as the network's minimal or maximal global value.

    In a first step, as shown by reference number 801 in FIG. 8, network data is converted into an initial data structure which is represented by an initial grid arrangement of the plurality of elements. This initial grid arrangement has an initial global value and can be generated by placing each element on an individual grid position of a lattice. This lattice (e.g., a square lattice, circle lattice, cubic lattice, or cylindrical lattice) may depend on various parameters, such as the resolution of the graphics display, the number of elements, the computational power of the system generating the data structure, and so forth. The initial grid arrangement can be generated in many different ways, such as a random arrangement of the elements.

    In step 810, a global value (global energy) is assigned to this initial grid arrangement. The global value depends on the initial grid arrangement of one or more elements (all of the elements in the example) more with respect to the initial grid positions of said element(s)' neighbors and is herein referred to as initial global value.

    At step 820, the initial grid arrangement is modified so as to generate another grid arrangement of the plurality of elements. For this purpose a gradient method is employed using the global value of the grid arrangement of the plurality of elements. A suitable gradient method finds, after a number of iterations of steps 830 and 820, a suitable arrangement (preferably the optimal arrangement) of a given network or a part thereof on a given grid, as shown in step 840.

    3. Gradient Method

    It is important that the algorithm which defines the gradient method describes a solution which is of polynomial complexity, and, thus, is solvable by computer systems. It is also desirable to employ an algorithm which is efficient and of low complexity so that an efficient and fast tool for visualizing networks can be realized.

    According to one embodiment of the present invention, an optimal arrangement of the elements and links of a network is found by minimizing the total energy function of this network. The total energy function of the network is a function which depends on the arrangement of the elements on the grid and which measures a suitable combination of the total length of all links and the number of crossings of links. It is defined such that the smaller the result (i.e. the smaller the total energy (also called global value)), the more comprehensible the network visualization appears. In addition, this total energy function may be equipped with a parameter that allows the user to continuously shift the emphasis between minimizing the total length of links and minimizing the entanglement of links. Other parameters or factors, such as a weight or potential as described below in connection with a knowledge database, can also be factored in when computing a data structure for visualization.

    The minimizing algorithm which finds the optimal arrangement by minimizing the total energy is a gradient method. However, because the problem is discrete (which means that there is a finite number of grid positions where the elements can be placed), ordinary gradient methods do not work since they require a complete underlying space such as Rn (rather than the given grid space).

    In one embodiment of the present invention, a gradient method work regardless of the discreteness problem, by defining a local energy function (individual value) for each element. This local energy function depends on the arrangement of the neighboring elements of a given element (or several elements) on the grid and measures a suitable combination of the total length of all links to the given elements, the total number of crossings of these links with (all) other links, and the total number of links to the given element(s). This combination further obeys the property that the weighted sum of all local energies yields the total energy (global value), where the weights are the number of links for each individual element or again a suitable function thereof. The gradient method then consists of selecting two elements (preferably with the help of the above local energy function) whose transposition reduces the total energy as much as possible, and repeating this procedure until no further reduction of the total energy can be achieved, or at least until no large reduction of the total energy is expected anymore.

    In detail, the minimizing algorithm according to this embodiment of the present invention starts with an initial arrangement of the elements on the grid that is obtained either by randomly placing the nodes on the grid or by using an arrangement algorithm that finds a reasonable first arrangement of the elements on the grid. This initial arrangement is then defined to be the current grid arrangement.

    The local energy function finds the element with the highest local energy for any possible arrangement of the elements on the grid. It is this element with the highest local energy that is selected for a transposition with some other element. The other element is obtained by transposing the highest local energy element with every other element in the network, and selecting the transposition that yields the least total energy for the new arrangement, provided this new total energy is lower than the current total energy. Since there are only (n-1) elements to check and checking can be done in polynomial time, this is a polynomial problem. Selecting the element to be transposed with the highest local energy element can be optimized by a reduction scheme, such as reducing the search to only neighboring elements of the highest local energy element.

    In this sense the algorithm is a gradient method because, for any arrangement of the elements, a transposition that reduces the total energy is found. In fact, even the transposition that is likely to maximally reduce the total energy is found. This new arrangement is then called the current arrangement and the minimizing algorithm repeats the above procedure until no transposition can be found that reduces the total energy which means that the optimal arrangement is reached. It is obvious that the repetitive use of the algorithm can be stopped at any time before the optimal arrangement is reached.

    If none of the (n-1) transpositions yields a reduction in the total energy, the element with the second highest local energy becomes the focus, and all (n-2) possible transpositions (the transposition with the element with the highest total energy has already been checked in the previous step and does not need to be checked again, hence one has only (n-2) transpositions to check) are tried. The transposition that yields the least total energy for the new arrangement is chosen, provided this new total energy is lower than the current total energy. If there is such an arrangement with lower total energy, then this new arrangement is called the current arrangement and the minimizing algorithm repeats the procedure of the previous paragraph. If no transposition can be found that reduces the total energy, the element with the third highest local energy is selected and all (n-3) possible transpositions are tried. Again, if a new arrangement with less total energy can be found, the algorithm makes it the current arrangement and continues from there by repeating the procedure of the previous paragraph, otherwise it continues with the element with the fourth highest local energy, and so on.

    In the worst case this algorithm yields (n-1)+(n-2)+(n-3)+ . . . +2+1=½*n*(n-1) checks which is quadratic in n. The minimizing algorithm stops when none of the transpositions results in a reduction of the total energy.

    It is possible that the minimizing algorithm terminates with a final arrangement that corresponds to a local minimum of the total energy, which means that there may be a different arrangement with yet a lower total energy. It has been observed that algorithms that rely on gradient methods sometimes terminate in such local minima (e.g. back propagation learning in neural networks). In this case a simulated annealing method may be in order, which means that after each step a random shuffling of the elements is allowed, where the amount of shuffling depends on the value of a variable called "temperature". This allows the algorithm to jump out of local minima traps and find the global minimum of the total energy.

    The success of the minimizing algorithm depends crucially on how well the definition of the total and local energies captures the fact that their values relate directly to the degree of comprehensibility of the visualization of the network. One possible definition is the following:
    • The length of a link is defined by the integer length of the shortest path through the grid. On a square lattice this would be the number of horizontal and vertical gridpoints that separate the two elements, while on a circle it would be the number of gridpoints between the two elements along the shorter of the two possible paths around the circle. The algorithm to determine the length may be a straightforward counting method, for example. The number of crossings of links is simply a counting problem. It can be done efficiently by a sweep-line algorithm, possibly adapted for the grid type (e.g., on a circle the standard sweep-line algorithm can be simplified by using a specific table which encodes where connections start and end).


  • Suppose that there are n elements and m links of total length L and with total number of crossings C, and that each element i has ki connections with a total length of li and a total number of crossings ci(1<i<n). Then, a possible definition for the total energy E and the local energy ei of each element i is:

    E=a·C+2·(1-aL

    ##EQU1##


    This definition satisfies
    ##EQU2##
    • so that the total energy is the weighted sum of the local energies. Here the variable a which is allowed to take values 0<a<1 is the parameter that allows the user to shift the emphasis between minimizing the number of crossings (a=1) and minimizing the total length of the links (a=0) or any combination thereof (a between 0 and 1).


  • Finally, if one has a collection of grids (e.g. in hierarchical networks where one has several square lattices or circles stacked on top of each other, as shown in FIG. 2) and the elements are not only connected on these grids but also between the grids then one can run the minimizing algorithm for each grid separately (to optimize only this grid) and also for all combinations of two grids separately (to optimize the connections between these two grids). The algorithm to find the optimal arrangement for the whole collection of grids can either optimize one grid after the other and then one combination of two grids after the other using the minimizing algorithm, or it can do one gradient step from the minimizing algorithm per grid and/or combination of two grids at a time, or a combination thereof, to find the optimal arrangement of elements. Finally, the collection of grids could be seen as one new grid, and a global value (global energy) could be assigned to this new grid, and the ordinary gradient method could be carried out on this new grid.

    4. Example of Network Visualization

    Further details of the present invention are now addressed and described in connection with the embodiments shown in FIGS. 2-5. As mentioned earlier, the elements of a network (or a part thereof) are placed on a grid for visualization. In the present example, the grid is cylindrical, resulting in a grid layout as illustrated in FIG. 2. However, other grid layouts, e.g. cubical, may be chosen. The cylindrical grid layout consists of:
    • the central position 19;
    • the circle of first horizontal neighbors 4;
    • the circle of first upward neighbors 5;
    • the circle of first downward neighbors 6;
    • the circle of second horizontal—horizontal neighbors 7;
    • the circle of second upward-horizontal neighbors 8;
    • the circle of second downward-horizontal neighbors 9;
    • the circle of second upward—upward neighbors 50;
    • the circle of second downward—downward neighbors 51; and
    • the y-axis 52.


  • Each circle has a variable number of grid positions 53. In FIG. 2, the grid positions on the circle of first horizontal neighbors 4 are shown. In this example the circle of first horizontal neighbors 4 has 16 grid positions. Elements are placed either on the central position 19, or on a grid position on a circle. To improve the quality of the visualization, the little lines representing the grid positions are sometimes suppressed. When visualizing a hierarchical network the hierarchical structure must be clearly visible. This is achieved by arranging the elements in vertically stacked layers—as shown in FIG. 2 for example—which correspond to the levels of hierarchy.

    Elements in the example are grouped as follows:
    • An element in the central position 19 is called a central element.
    • An element on circle 4, 5, or 6 is called a first neighbor (to the central element).
    • An element on circle 7, 8, 9, 50, or 51 is called a second neighbor (to the central element).


  • Links in the example are grouped as follows:
    • A link from the central element to a first neighbor is called a 0-1 link.
    • A link from a first neighbor to a first neighbor is called a 1-1 link.
    • A link from a first neighbor to a second neighbor is called a 1-2 link.
    • A link from a second neighbor to a second neighbor is called a 2-2 link.


  • In the example, the spheres and arrows representing the elements and links, respectively, are selectively suppressed in order to improve the quality of the visualization.

    FIG. 3 shows elements placed on various positions. In particular,
    • the central element 60 is placed at the central position.
    • a first horizontal neighbor 61 to the central element 60 is placed on the circle of first horizontal neighbors.
    • a first upward neighbor 62 to the central element 60 is placed on the circle of first upward neighbors.
    • a first downward neighbor 63 to the central element 60 is placed on the circle of first downward neighbors.
    • a second horizontal—horizontal neighbor 64 to the central element 60 is placed on the circle of second horizontal-horizontal neighbors.
    • a second upward-horizontal neighbor 65 to the central element 60 is placed on the circle of second upward-horizontal neighbors.
    • a second downward-horizontal neighbor 66 to the central element 60 is placed on the circle of second downward-horizontal neighbors.
    • a second upward-upward neighbor 67 to the central element 60 is placed on the circle of second upward-upward neighbors.
    • a second downward-downward neighbor 68 to the central element 60 is placed on the circle of second downward-downward neighbors.


  • FIG. 4 shows


    Free Web Sudoku Puzzles.
    Solve with your browser.
        6     1   3 5
    3       2        
        2 5     8    
      9   4 8        
    2 3           8 7
            7 2   9  
        7     6 4    
            3       8
    4 2   1     7    
    What is it?



    Add Your Site · Terms Of Service · Privacy Policy


    DISCLAIMER
    Linkgrinder is a free service that searches the Internet and indexes all files found so that you may search quickly and easily for shared files. These files are created and made available individually by users whose identity we are not aware of and who we have no control over. In essence we function like a search engine tool; these files ARE NOT STORED OR SERVED BY OUR NETWORK. We are not responsible for any materials obtained by using our service. We do not monitor any of the contents of these files. These files may contain viruses, illegal materials, materials inappropriate for minors, offensive files and the like. BY USING OUR SERVICE, YOU ASSUME FULL RESPONSIBILITY FOR DOWNLOADING THESE MATERIALS AND WILL INDEMNIFY US FOR ANY DAMAGES THAT MAY BE INCURRED.

    For More Specific Information VIEW OUR TERMS OF SERVICE.

    Thank you and Enjoy!