IQ.wiki

阅读

编辑

历史

通知

分享

Directed Acyclic Graph (DAG)

A Directed Acyclic Graph (DAG) is a type of graph data structure that consists of nodes connected by directed edges, where the edges have a specific direction and do not form any cycles. It is a directed graph that does not have any directed cycles.

Each node in a DAG can have one or more incoming edges and one or more outgoing edges. The edges in a DAG represent dependencies between the nodes, where the direction of the edge indicates the direction of the dependency. For example, if node A has an outgoing edge to node B, it means that node A depends on node B.

Overview

Directed Acyclic Graphs (DAGs) differ from in that they do not use a block-based structure. Instead, transactions are represented as vertices in the graph and are linked to previous transactions. Nodes validate and add transactions to the DAG, and submitting a transaction requires completing a task. [1]

In a DAG-based network, a new transaction must reference previous transactions to be accepted, similar to how blocks in a blockchain refer to previous blocks. Referencing a transaction confirms it, and for a transaction to be fully confirmed, it needs to be referenced by subsequent transactions. [1]

DAGs have high transaction speeds due to the absence of block creation and no transaction fees because there are no miners, which can have environmental benefits. [2]

DAGs are superior to blockchains in a sense that they allow higher throughput, by combining the concepts of blockchains, and , and the longest chain rule with directed acyclic graphs.

History

The first use of a DAG is undated, but the concept is so useful, it extends back to the dawn of human existence.

The publication ‘Seven Bridges of Königsberg’ by Leonhard Euler in 1736 is regarded as the first paper to cover Graph Theory. The seven bridges of Königsberg is a notable problem in the history of mathematics. The challenge is to find a route to cross each of the seven bridges in Königsberg (now Kaliningrad, Russia) once and only once. After simplifying the map of the city to a graph, Euler introduced his formula relating to the number of edges, vertices and faces.
wiki
From here, Graph Theory has developed into a study of relationships between objects, depicted by mathematical structures. There are many different types of graphs, all with specific definitions, and a DAG is one of them. [3]

Use Cases

Family Tree

An original use case of DAGs is creating a family tree. Interestingly, the definition of a tree in Graph Theory did not include most family trees. This is because in most family trees stretching back far enough, distant relatives have mated at some point, allowing a common ancestor on both the paternal and maternal sides of the family. This means, a family tree can be considered a DAG–where each node is a person, and each parent-offspring relationship is drawn as an arrow pointing towards the offspring. This forms a graph shown below, which is directed (the arrows) and acyclic (no person can be a parent of themselves).
wiki
Depictions of family trees as DAGs have been recorded in Ancient Rome, by Pliny the Elder who described the graphs decorating the walls of Roman patrician houses. Prior to this, DAGs may not have been recorded, but often described when explaining family histories.[3]

Task Scheduling

Another historic use case for DAGs is task scheduling where animals and humans innately use DAGs to work out the order of tasks to complete. Some tasks cannot begin until others are complete and other tasks can begin at any time — this in itself is a DAG.
wiki
In the above DAG, T1 may be to decide which animal to hunt for dinner, task 2 is to hunt the animal, and task 3 which can be done concurrently is to collect firewood. Task 4 is to start the fire. Task 5, to cook the animal, requires both the fire to be burning and the animal to be hunted, and task 6 is to eat the dinner, which needs the animal to be cooked first. Similar (but more complex) DAGs would have been used for any large task, such as building the pyramids, designing Rome, planning an attack during a war, etc.[3]

Computer Science

Other use cases for DAGs are more modern, with multiple uses related to computer science. Data processing networks, version history, and some data compression algorithms all utilize DAGs. But the important thing to note is DAGs aren’t a new revelation, but an age-old problem-solving mechanism. The merge of DAGs and is a huge leap forward for scalability.[3]

See something wrong? Report to us.

Directed Acyclic Graph (DAG)

提交信息

编辑者

编辑日期

October 21, 2024

反馈

平均评级

Based on over 1 ratings

您的体验如何?

给这个维基一个快速评分让我们知道!

媒体

参考文献

加入 IQ Brainlist

註冊 IQ Brainlist 即可在 IQ.wiki 網站上進行編輯!

立即加入

订阅我们的新闻简报

IQ 生态系统报告将让您时刻掌握IQ的所有更新

订阅

IQ.wiki

IQ.wiki 的愿景是将区块链知识带给世界,并将知识上链。 是 Brainfund 集团的一部分Brainfund 集团

https://twitter.com/IQWIKIhttps://www.reddit.com/r/Everipedia/https://t.me/everipediahttps://www.instagram.com/iqwiki_/https://github.com/EveripediaNetworkhttps://discord.gg/x9EWvTcPXthttps://www.facebook.com/iqdotwiki

IQ

什么是 IQ?质押债券

公司

关于我们职业生涯我们正在招聘品牌IQ GPTIQ 仪表板

© 2024 由BrainDAO & IQ 提供支持