• Title/Summary/Keyword: Engineering computer programming

Search Result 878, Processing Time 0.029 seconds

An efficient optimization method for multiple sequence alignment (효율적인 복수서열정렬 최적화기법)

  • Kim, Jin;Jung, Woo-Cheol;Uhmn, Saang-Yong
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2003.04c
    • /
    • pp.368-370
    • /
    • 2003
  • 단백질들의 복수서열정렬은 단백질 서열간의 관계를 유추할 수 있는 유용한 도구이다. 최적화된 복수서열정렬을 얻기 위해 사용되는 가장 유용한 방법은 dynamic programming이다. 그러나 dynamic programming은 특정한 비용함수를 사용할 수 없기 때운에 특별한 경우 최적의 복수서열정렬을 제공하지 못하는 문제점이 있다. 우리는 이러한 문제점을 해결하기 위하여 부분정렬개선기법을 사용한 알고리즘을 제안하였으며, 이 알고리즘이 dynamic programming의 문제점을 효과적으로 해결함을 보였다.

  • PDF

The Application and Analysis of the Embedded Programming Education Based on UML and LabVIEW OOP (UML과 LabVIEW OOP를 기반으로 한 내장형 프로그래밍 교육의 적용 방안 및 분석)

  • Jung, Deok-Gil;Jung, Min-Po;Cho, Hyuk-Gyu;Lho, Young-Uhg
    • Journal of the Korea Institute of Information and Communication Engineering
    • /
    • v.19 no.3
    • /
    • pp.708-714
    • /
    • 2015
  • The students who learn the computer languages think it very difficult to program using the text-based programming languages and also to learn the object-oriented programming. Therefore, we introduce the object-oriented visual programming into the programming education. And, to solve the this problem in the programming education, in this paper, we introduce the UML to support the object-oriented modeling and to teach the students using the LabVIEW OOP that supports the object-oriented visual programming. And, we propose to apply it on the embedded programming education. Also, we analyze the educational effect of the proposed education methodology of programming based on the student survey.

A Study on Effective Education of Programming Language (효과적인 프로그래밍언어 교육에 대한 연구)

  • Cho, Jae-Soo
    • The Journal of Korean Institute for Practical Engineering Education
    • /
    • v.2 no.2
    • /
    • pp.30-35
    • /
    • 2010
  • This paper proposes several methods for effective teaching of programing language(especially C). The programing languages are very important and basic subjects in the Department of Computer Engineering and Science. Many students have some difficulty in learning the programming languages. So, we will suggest several effective methods for effective teaching of programming languages. First, in order to understand the programming language effectively, we need to teach some basic computer architecture and operation principles of computer program to students. Second, it is better to teach many example-based programing skills instead of conventional grammar teaching. Third, if we teach the memory status(memory allocation/release) during the program operation, it will be much better to understand the pointer variables and memory problems. Fourth, let's improve the programming skills through effective homework assignments and experiments. Fifth, let students be guided so that they do programing by themselves. Finally, we can maximize the programming skill through the final termproject.

  • PDF

Web page-based programming education and scoring system for software education (소프트웨어 교육을 위한 웹 페이지 기반의 프로그래밍 교육 및 채점 시스템)

  • Cho, Minwoo;Choi, Jiyoung;Jung, Hoekyung
    • Journal of the Korea Institute of Information and Communication Engineering
    • /
    • v.26 no.1
    • /
    • pp.134-139
    • /
    • 2022
  • Recently, interest in programming and artificial intelligence is continuously increasing, and software education is being implemented as a mandatory education from elementary school. For efficient programming education, it is basically necessary to build a lab environment suitable for students and teachers, but there are performance problems due to the inadequacy of old computers and network equipment. Therefore, in this paper, we propose a web page-based online practice environment and algorithm competition scoring system using React and Spring boot to solve the problem of the programming practice environment. Through this, it is thought that programming learning can be carried out using only a web browser even on low-spec computers. In addition, since various programming languages can be learned irrespective of the language to be learned, it is considered that the time cost for establishing a practice environment can be reduced.

Survey of Return-Oriented Programming(ROP) Detection and Prevention Methods (Return-Oriented Programming(ROP) 탐지 및 방지 기술 분석)

  • Bae, Hyo-Bin;Min, Jae-Won;Park, Min-Woo;Chung, Tai-Myoung
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2012.11a
    • /
    • pp.1064-1067
    • /
    • 2012
  • Return-Oriented Programming(ROP) 공격은 버퍼 오버플로우 공격, Return-into libc 공격의 계보를 이어 소프트웨어의 취약점을 공격하는 대표적인 기술 중 하나이다. 이 공격은 윈도우 운영체제 상에서의 Exploitation, iOS DEP 우회 및 코드 사이닝과 같은 기술을 무력화하기 위해 사용되고 있는 취약점 공격법이다. 그렇기 때문에 ROP 공격이 소개된 이후부터 현재까지 탐지법 및 방어법에 대한 논의가 활발하게 이루어지고 있다. 본 논문에서는 이러한 ROP 공격을 막기 위한 방법들을 특징에 따라 세 가지 종류로 분류하여 소개하고, 각각의 방법들의 장점과 단점을 비교 분석하여 향후 ROP 방어에 관한 연구에 기여를 하고자 한다.

Case Study on Utilizing Arduino in Programming Education of Engineering (공학 프로그래밍 교육에 아두이노 활용 방안 사례 연구)

  • Park, Jang-Hyun;Kim, Seong-Hwan
    • Journal of IKEEE
    • /
    • v.19 no.2
    • /
    • pp.276-281
    • /
    • 2015
  • Engineers increasingly rely on computers and their computer programming skills for their works. As a result, most engineering curricula have introduced a computer programming courses. However, students consider the subject to be unrelated to their core interests and often feel uncomfortable when learning to program for the first time. To overcome these difficulties, several studies have proposed the use of physical computing paradigm. This paradigm takes the computational concepts out of the PC screen and into the real world so that the student can interact with them. This paper proposes Arduino platform as a tool for attracting interest of the programming and reports the results of questionnaire survey analysis.

On Solving the Tree-Topology Design Problem for Wireless Cellular Networks

  • Pomerleau Yanick;Chamberland Steven;Pesant Gilles
    • Journal of Communications and Networks
    • /
    • v.8 no.1
    • /
    • pp.85-92
    • /
    • 2006
  • In this paper, we study a wireless cellular network design problem. It consists of selecting the location of the base station controllers and mobile service switching centres, selecting their types, designing the network into a tree-topology, and selecting the link types, while considering the location and the demand of base transceiver stations. We propose a constraint programming model and develop a heuristic combining local search and constraint programming techniques to find very good solutions in a reasonable amount of time for this category of problem. Numerical results show that our approach, on average, improves the results from the literature.

Hardware Evolution Based on Genetic Programming (유전자 프로그래밍 기반의 하드웨어 진화 기법)

  • Seok, Ho-Sik;Yi, Kang;Zhang, Byoung-Tak
    • Proceedings of the IEEK Conference
    • /
    • 1999.06a
    • /
    • pp.452-455
    • /
    • 1999
  • We introduce an evolutionary approach to on-line learning for mobile robot control using reconfigurable hardware. We use genetic programming as an evolutionary engine. Control programs are encoded in tree structure. Genetic operators, such as node mutation, adapt the program trees based on a set of training cases. This paper discusses the advantages and constraints of the evolvable hardware approach to robot learning and describes a FPGA implementation of the presented genetic programming method.

  • PDF

A Way of Avoiding Spurious Paths in Interprocedural Static Analysis (함수 호출을 구별하는 분석에서 가짜 경로를 없애는 한 방법)

  • Heo, Ki-Hong;Oh, Hak-Joo;Yi, Kwang-Keun
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2011.06c
    • /
    • pp.474-477
    • /
    • 2011
  • 함수 호출 문맥을 요약하는 프로그램 분석은 가짜 경로 문제로 인해 심각한 성능저하를 겪기 마련이다. 이는 함수 호출 문맥이 요약되면서 분석 정보를 어디로 흘려보내야 할지 정확히 알 수 없는 경우가 생기기 때문이다. 이 논문에서는 함수 호출을 구변하는 분석에서 가짜 경로를 없애는 새로운 알고리즘을 설명한다. 분석 순서를 프로그램의 실제 실행과 비슷하게 제한하고 알고리즘의 일부를 조금 바꾸면 재귀 함수가 아닌 경우 가짜 경로를 모두 제거할 수 있다. 이 방식은 기존 방식과 같거나 더 정확한 결과를 내고 속도는 훨씬 빠르다.

A Survey of Genetic Programming and Its Applications

  • Ahvanooey, Milad Taleby;Li, Qianmu;Wu, Ming;Wang, Shuo
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • v.13 no.4
    • /
    • pp.1765-1794
    • /
    • 2019
  • Genetic Programming (GP) is an intelligence technique whereby computer programs are encoded as a set of genes which are evolved utilizing a Genetic Algorithm (GA). In other words, the GP employs novel optimization techniques to modify computer programs; imitating the way humans develop programs by progressively re-writing them for solving problems automatically. Trial programs are frequently altered in the search for obtaining superior solutions due to the base is GA. These are evolutionary search techniques inspired by biological evolution such as mutation, reproduction, natural selection, recombination, and survival of the fittest. The power of GAs is being represented by an advancing range of applications; vector processing, quantum computing, VLSI circuit layout, and so on. But one of the most significant uses of GAs is the automatic generation of programs. Technically, the GP solves problems automatically without having to tell the computer specifically how to process it. To meet this requirement, the GP utilizes GAs to a "population" of trial programs, traditionally encoded in memory as tree-structures. Trial programs are estimated using a "fitness function" and the suited solutions picked for re-evaluation and modification such that this sequence is replicated until a "correct" program is generated. GP has represented its power by modifying a simple program for categorizing news stories, executing optical character recognition, medical signal filters, and for target identification, etc. This paper reviews existing literature regarding the GPs and their applications in different scientific fields and aims to provide an easy understanding of various types of GPs for beginners.