• Title/Summary/Keyword: 그래프 알고리즘

Search Result 809, Processing Time 0.021 seconds

Applying Genetic Algorithm to the Minimum Vertex Cover Problem (Minimum Vertex Cover 문제에 대한 유전알고리즘 적용)

  • Han, Keun-Hee;Kim, Chan-Soo
    • The KIPS Transactions:PartB
    • /
    • v.15B no.6
    • /
    • pp.609-612
    • /
    • 2008
  • Let G = (V, E) be a simple undirected graph. The Minimum Vertex Cover (MVC) problem is to find a minimum subset C of V such that for every edge, at least one of its endpoints should be included in C. Like many other graph theoretic problems this problem is also known to be NP-hard. In this paper, we propose a genetic algorithm called LeafGA for MVC problem and show the performance of the proposed algorithm by applying it to several published benchmark graphs.

A Study on the Algorithms of Highways Analysis Using Graph Theory (그래프 이론을 이용한 고속도로 분석 알고리즘에 관한 연구)

  • Hail Oh;Suho Son;Sookyeong Jang;Kisoeb Park;moonseong Kim;Gwangyeon Lee
    • Proceedings of the Korean Society of Computer Information Conference
    • /
    • 2023.01a
    • /
    • pp.293-296
    • /
    • 2023
  • 본 논문에서는 고속도로의 교통망의 연결성을 분석하고 예측하기 위하여 그래프 이론을 이용하여 접근성 지표의 알고리즘을 제안한다. 먼저 2025년 고속도로 교통망을 그래프로 나타낸 운송네트워크를 구한다. 그리고 그래프 이론의 연결수, 비교거리, 접근지표, 연결도, 산포지수, 지름 등의 개념을 이용하여 2025년 고속도로 교통망의 연결성을 분석하고 예측하기 위하여 주어진 운송네트워크로부터 다양한 접근성 지표를 쉽게 얻을 수 있는 알고리즘을 제시한다. 이를 통하여 고속도로의 운송네트워크에서 교통의 중심이 되는 도시를 찾을 수 있다.

  • PDF

A Distributed Vertex Rearrangement Algorithm for Compressing and Mining Big Graphs (대용량 그래프 압축과 마이닝을 위한 그래프 정점 재배치 분산 알고리즘)

  • Park, Namyong;Park, Chiwan;Kang, U
    • Journal of KIISE
    • /
    • v.43 no.10
    • /
    • pp.1131-1143
    • /
    • 2016
  • How can we effectively compress big graphs composed of billions of edges? By concentrating non-zeros in the adjacency matrix through vertex rearrangement, we can compress big graphs more efficiently. Also, we can boost the performance of several graph mining algorithms such as PageRank. SlashBurn is a state-of-the-art vertex rearrangement method. It processes real-world graphs effectively by utilizing the power-law characteristic of the real-world networks. However, the original SlashBurn algorithm displays a noticeable slowdown for large-scale graphs, and cannot be used at all when graphs are too large to fit in a single machine since it is designed to run on a single machine. In this paper, we propose a distributed SlashBurn algorithm to overcome these limitations. Distributed SlashBurn processes big graphs much faster than the original SlashBurn algorithm does. In addition, it scales up well by performing the large-scale vertex rearrangement process in a distributed fashion. In our experiments using real-world big graphs, the proposed distributed SlashBurn algorithm was found to run more than 45 times faster than the single machine counterpart, and process graphs that are 16 times bigger compared to the original method.

Optimal Solution Algorithm for Delivery Problem on Graphs

  • Lee, Kwang-Eui
    • Journal of the Korea Society of Computer and Information
    • /
    • v.26 no.3
    • /
    • pp.111-117
    • /
    • 2021
  • The delivery problem on a graph is that of minimizing the object delivery time from one vertex to another vertex on a graph with m vertices using n various speed robot agents. In this paper, we propose two optimal solution algorithms for the delivery problem on a graph with time complexity of O(㎥n) and O(㎥). After preprocessing to obtain the shortest path for all pairs of the graph, our algorithm processed by obtaining the shortest delivery path in the order of the vertices with the least delivery time. Assuming that the graph reflects the terrain on which to solve the problem, our O(㎥) algorithm actually has a time complexity of O(㎡n) as only one preprocessing is required for the various deployment of n robot agents.

A Heuristic Task Scheduling Algorithm in Workstation Networks (워크스테이션 네트웍에서의 휴리스틱 태스크 스케줄링 알고리즘)

  • Gang, O-Han
    • Journal of KIISE:Computing Practices and Letters
    • /
    • v.6 no.6
    • /
    • pp.588-600
    • /
    • 2000
  • 본 논문에서는 워크스테이션 네트웍(Network of Workstation) 환경에서 태스크 스케줄링 문제를 해결하기 위하여 태스크 중복을 기반으로 하는 휴리스틱 스케줄링 알고리즘을 제안한다. 제안된 알고리즘에서는 NoW에서 통신할 때 발생되는 충돌을 방지하기 위하여 네트웍 통신 자원을 우선 할당하고, 스케줄링 길이를 단축하고 병렬처리 시간을 줄이기 위한 중복 테스크를 선택할 때 휴리스틱을 사용한다. 제안된 알고리즘은 태스크 그래프를 입력으로 받아 NoW 환경의 워크스테이션으로 스케줄링하며, 태스크 그래프에서 노드수가 V일 때 최악의 경우 알고리즘의 시간 복잡도는 O($V^2$)이다. 제안한 알고리즘을 실제 응용 프로그램의 태스크 그래프에 적용하였다. 시뮬레이션을 통하여 제안된 알고리즈이 스케줄링 길이와 알고리즘에서 요구하는 워크스테이션의 수 관점에서 성능이 향상되었음을 보여준다.

  • PDF

A Design and Implementation of Variable Reference Graph (Variable Reference Graph 의 설계 및 구현)

  • Lee, Heon-Ki;Lee, Mun-Su;Shin, Gyu-Sang
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2000.04a
    • /
    • pp.815-820
    • /
    • 2000
  • Variable Reference Graph 는 C 언어로 작성된 프로그램으로부터 상호 절차적인 자료 흐름 분석 정보를 수평적 방향 그래프(directed graph)로 자동 생성해주는 역공학(reverse engineering) 도구들 중 하나이다. 본 논문에서는 판독성 있는 구조적 정보를 제공하기위한 그래픽 표현의 전략을 바탕으로 JAVA 로 구현된 그래픽 사용자 인터페이스(graphic user interface) 및 그래프 레이아웃 알고리즘(graph layout algorithm)을 기술한다. 이 알고리즘은 4 단계로 구성되어 있다: 정보 모형, 레벨 알고리즘, 순서 알고리즘, 위치 알고리즘. 각 단계별에서 수행되는 주요 알고리즘을 살펴 본다. 특히, 이 알고리즘들은 사이클(cycle) 및 비사이클(acyclic) 방향 그래프, 그리고 트리(tree)를 수평적 계층 구조를 생성하는데 사용될 수 있다. 본 논문에서 구현된 Variable Reference Graph 는 소프트웨어 재공학 도구를 개발하는 RESORT(RESearch on object-oriented SOftware Reengineering Technology) 과제에서 개발되었다.

  • PDF

A Study on Enhancement of Multithreaded Dependence Graphs for Concurrent Java Program Slicing (병행 자바 프로그램 슬라이싱을 위한 다중쓰레드 종속성 그래프의 개선에 대한 연구)

  • Ryu, Hee-Yeol;Kim, Eun-Jung
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2002.11c
    • /
    • pp.2055-2058
    • /
    • 2002
  • 병행 자바 프로그램의 슬라이싱 방법은 Jianjun Zhao에 의해 제안된 다중 쓰레드 종속성 그래프를 이용하여 Susan Horwitz, Thomas Reps, David Binkly가 제안한 2단계 마킹 알고리즘을 적용하여 슬라이스를 계산한다. 다중 쓰레드 종속성 그래프를 이용하는 방법은 쓰레드동기화 문장들 사이의 동기화 종속성과 서로 다른 쓰레드에 존재하는 공유객채들 사이의 통신 종속성 관계를 표현하여 병행 자바 프로그램의 슬라이스를 계산할 수 있는 것이다. 그러나 프로그램 종속성 그래프를 기반으로 하기 때문에 클래스 맴버 변수들에 대한 formal_in, formal_out, actual_in, actual_out정점들의 추가로 그래프의 복잡도가 증가하고 또한 부정확한 슬라이스 계산을 위한 다중 쓰레드 종속성 그래프를 개선하여 제안한다. 제안하는 개선된 다중 쓰레드 종속성 그래프는 주어진 슬라이싱 기준에 대한 2단계 마킹 알고리즘을 적용한 결과 정확한 슬라이스 계산과 복잡도 개선을 확인하였다.

  • PDF

A study on the Enhanced System Dependence Graph for slicing of object-oriented Program (객체지향 프로그램 슬라이싱을 위한 개선된 시스템 종속성 그래프에 대한 연구)

  • 류희열;김은정
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2002.10d
    • /
    • pp.115-117
    • /
    • 2002
  • 객체지향 프로그램 슬라이싱을 위한 Loren D Larsen and Marry Jean Harrold가 제안하는 방법은 절차적 프로그램 슬라이싱을 위한 시스템 종속성 그래프 표현방법에 객체지향 패러다임을 표현할 수 있도록 확장하며 2단계 마킹 알고리즘을 적용하여 슬라이스를 계산한다. 시스템 종속성 그래프를 이용한 슬라이싱 방법은 클래스 멤버 변수와 전역변수 및 인스턴스 변수에 대하여 각 메소드 호출 및 진입정점에 actual_in, actual_out, formal_in, formal_out 정점들이 추가되어 복잡도가 증가한다. 본 논문에서는 이들 변수를 클래스 정점의 멤버간선으로 연결하여 각 메소드의 문장에서 사용하면 진출간선 정의하면 진입간선으로 연결하여 정점과 간선들의 개수를 최소화할 수 있도록 시스템 종속성 그래프를 개선하였다. 제안하는 시스템 종속성 그래프는 그래프 복잡도의 최소화와 2단계 알고리즘에 의한 정확한 슬라이스 계산이 장점이다. C++ 예제 프로그램을 적용하여 그래프 복잡도의 감소와 정확한 슬라이스 계산을 기존의 방법과 비교하여 개선됨을 확인하였다.

  • PDF

A Heuristic-Based Algorithm for Maximum k-Club Problem (MkCP (Maximum k-Club Problem)를 위한 휴리스틱 기반 알고리즘)

  • Kim, SoJeong;Kim, ChanSoo;Han, KeunHee
    • Journal of Digital Convergence
    • /
    • v.19 no.10
    • /
    • pp.403-410
    • /
    • 2021
  • Given an undirected simple graph, k-club is one of the proposed structures to model social groups that exist in various types in Social Network Analysis (SNA). Maximum k-Club Problem (MkCP) is to find a k-club of maximum cardinality in a graph. This paper introduces a Genetic Algorithm called HGA+DROP which can be used to approximate maximum k-club in graphs. Our algorithm modifies the existing k-CLIQUE & DROP algorithm and utilizes Heuristic Genetic Algorithms (HGA) to obtain multiple k-clubs. We experiment on DIMACS graphs for k = 2, 3, 4 and 5 to compare the performance of the proposed algorithm with existing algorithms.

Minimization of Communication Cost using Repeated Task Partition for Hypercube Multiprocessors (하이퍼큐브 다중컴퓨터에서 반복 타스크 분할에 의한 통신 비용 최소화)

  • Kim, Joo-Man;Yoon, Suk-Han;Lee, Cheol-Hoon
    • The Transactions of the Korea Information Processing Society
    • /
    • v.5 no.11
    • /
    • pp.2823-2834
    • /
    • 1998
  • This paper deals with the problem of one-to-one mapping of $2^n$ task modules of a parallel program to an n-dimensional hypercube multicomputer so as to minimize to total communication cost during the execution of the task. The problem of finding an optimal mapping has been proven to be NP-complete. We first propose a graph modification technique which transfers the mapping problem in a hypercube multicomputer into the problem of finding a set of maximum cutsets on a given task graph. Using the graph modification technique, we then propose a repeated mapping scheme which efficiently finds a one-to-one mapping of task modules to a hypercube multicomputer by repeatedly applying an existing bipartitioning algorithm on the modified graph. The repeated mapping scheme is shown to be highly effective on a number of test task graphs, it increasingly outperforms the greedy and recursive mapping algorithms as the number of processors increase. The proposed algorithm is shown to be very effective for regular graph, such as hypercube-isomorphic or 'almost' isomorphic graphs and meshes; it finds optimal mapping on almost all the regular task graphs considered.

  • PDF