지토의 개발일기 76

CMA-ES (Convariance Matrix Adaptation Evolution Strategy)

CMA-ES (Convariance Matrix Adaptation Evolution Strategy) CMA-ES (Covariance Matrix Adaptation Evolution Strategy)는 연속적인 블랙박스 함수를 최적화에 사용되는 최적화 알고리즘 중 하나로, 진화 전략 (Evolution Strategy)의 변형이다. 이 알고리즘은 비선형, 비볼록 문제와 같은 복잡한 최적화 문제에 대해서도 효과적으로 작동한다. 또한 병렬 계산에 적합하여 멀티 코어 시스템에서도 효율적으로 사용할 수 있다. CMA-ES는 적응적인 공분산 행렬을 사용하여 탐색 방향을 동적으로 조정함으로써 최적화 성능을 향상하며, 특히 높은 차원의 문제에서도 강력한 성능을 발휘한다. 이는 최적화를 수행하는 동안 해의 분포를..

PSO (Particle Swarm Optimization) Algorithm

PSO (Particle Swarm Optimization) Algorithm이란? Particl Swarm Optimization을 줄여서 PSO 알고리즘은 이는 Eberhart 와 Kennedy(1995)에 의해 제안된 알고리즘으로 Swarm Intelligence Algorithm의 종류 중 하나이다. PSO는 동물이나 곤충의 집단 행동에서 영감을 받아 식량원 탐색 및 번식을 위한 최적화 문제를 해결하는 데 사용된다. PSO 알고리즘은 Swarm을 기반으로 한 탐색 과정으로, 개별 입자는 D-차원 검색 공간의 최적화된 문제의 잠재적인 솔루션으로 정의된다. 각 입자는 Swarm과 자신의 최적 위치, 그리고 속도를 기억할 수 있다. 세대마다 입자 정보가 결합하여 각 차원의 속도를 조정하고, 이를 통해 ..

Differential Evolution Algorithm

Differentail Evolution (차분진화알고리즘) 이란?차분 진화 알고리즘은 진화 알고리즘의 한 종류로, 주로 '적자생존;의 개념에서 영감을 받아 개발되었다. 진화 알고리즘은 교차, 돌연변이 및 선택과 같은 다양한 유전적 연산을 활용하여 우수한 성질을 가진 새로운 후손 솔루션을 생성한다. 차분 진화 알고리즘은 복잡한 최적화 문제를 풀기에 인기 있는 최적화 문제 해결 방법의 하나로 주목받고 있다. 차분 진화 알고리즘은 진화 알고리즘(EA)의  영역에 속하며 다양한 최적화 문제를 해결하기 위해 사용되는 모집단 기반 방법을 사용한다. 차분  진화 알고리즘은 여러 가지 경쟁력 있는 장점 덕분에 연구 자와 실무자들사이에서 널리 사용되고 있다.  첫 번째는 차분 진화 알고리즘의 구현은 다른 메타 휴리스틱..

[JavaScript] Bundling 이란?

번들링이란? 프로그래밍을 하다보면 번들링에 대해서 자주 듣게 된다. 사전적 의미의 Bundle은 "묶다. 꾸러미로 만들다" 의 의미를 가지고 있다. 그렇다면 왜 파일을 묶는 작업이 필요할 것인가에 대해 생각해 볼 수 있다. 번들리은 모듈들의 의존성을 관계를 파악 후 묶는 작업 즉 그룹화 해주는 것을 말한다. 모듈이 분리 되었던 이유는 간단하다. 작업의 효율성 문제이다. 스크립트가 커지기 시작하면 하나의 클래스 , 파일로 관리하기가 어렵고 감당이 안된다. 이러한 이유로 전부 떼어내어서 작업을 하기 시작했다. 원래부터 따로 분리 되어 있는 모듈이 아니기 때문에 독립적으로 존재하는 모듈은 아니다. 분리 된 모듈이 잘 작동하기 위해서는 연계성이 있어야한다. 그래서 모듈 내부에서는 import로 호출하고 expo..

[React] react.js dashboard template 7가지 소개

대시보드 관련 작업하여 유용항 템플릿 7가지를 소개 하고자 한다 . 1. ariframe React https://github.com/0wczar/airframe-react GitHub - 0wczar/airframe-react: Free Open Source High Quality Dashboard based on Bootstrap 4 & React 16: http://dashboards.webko Free Open Source High Quality Dashboard based on Bootstrap 4 & React 16: http://dashboards.webkom.co/react/airframe - GitHub - 0wczar/airframe-react: Free Open Source High ..

[React] 유용한 Chart 라이브러리 소개

회사에서 일을 하다가 에너지 관련된 업무를 주된 업무로 하다보니 차트를 사용해야 하는 경우가 많았다. 운 좋게 차트관련 라이브러리를 사용할 기회가 생겼고 이번 기회를 통해 사용해보고 정리를 해보았다. 1 ) React-chartjs-2 https://www.npmjs.com/package/react-chartjs-2 react-chartjs-2 React components for Chart.js. Latest version: 4.0.1, last published: a month ago. Start using react-chartjs-2 in your project by running `npm i react-chartjs-2`. There are 603 other projects in the npm r..

[React] node.js , npm, npx, yarn 이란??

1_ node. js 란? node.js는 간단히 말하면 자바스크립트를 실행 할 수 있는 환경이다. node.js를 사용하여 운영체제, 웹브라우저 밖등 환경만 갖추어져 있다면 JS로 코드 작성 및 실행을 가능하게 해준다. 즉 운영체제에서 내 파일을 읽고 수정이 가능하며 저장하는 일이 가능하게 도와주는 프레임 워크라고 할 수 있다. 2._ npm이란? node.js를 설치하다보면 딸려오는게 있는데 npm이 같이 설치 되어진다. npm의 경우 패키지 매니저라 불린다. 우리가 프로젝트를 하다보면 외부 라이브러리가 필요한 경우 소스코드를 다운받아서 사용해야 하는 경우가 많은데 npm의 경우 일일이 찾아 import해서 사용하는 번거로움을 없애 주었으며 project build를 하면 pakage.json의 형태..

[React-Native] StyleSheet CSS와의 주요 차이점.

CSS는 문서를 표기하는 방법을 지정하는 것입니다. 간단히 말하면 어떤 장식, 어떤 색깔, 어떤 크기등을 지정하는 언어입니다. 작성법의 경우 보통 .container { background : white; color : white; border : 1px solid blue; } .name { font-size : 24; font-weight : bold, } 형태로 작성 되어 집니다. 반면 리액트 네이티브에서는 자바스크립트 파일 에서 StyleSheet라는 것을 상용합니다. 작성법은 다음과 같습니다. import { StyleSheet, Text, View } from "react-native"; export default function App() { const name = "jsx"; return ..

[jQuery] 콘텐츠 탐색 선택자

콘텐츠 탐색 선택자란? : 요소 또는 속성의 포함 여부에 다라 특정 요소를 선택하는 선택자다. 종류 사용법 설명 $("요소 선택:contains(텍스트)") $("li:contains('내용2')") 요소 중 '내용2'라는 텍스트를 포함하는 요소만 선택 $("요소 선택").contents() $("p").contents() 선택한 요소의 하위 요소중 가장 가까운 하위 요소 선택 $("요소 선택:has(요소명):) $("요소 선택).has(요소명) $("li:has('span')") $("li").has('span') 선택한 요소의 하위 요소 중 가장 가까운 하위 요소 선택 $("요소 선택:not(:제외요소)") $("요소 선택).not(:제외요소) $("li:not(:first)") $("li") 요소 ..

[jQuery] 속성 탐색 선택자

속성 탐색 선택자란? 선택한 요소를 기준으로 일치하는 속성의 포함 여부를 따져 요소를 선택하는 선택자임 속성 탐색 선택자의 종류 종류 사용법 설명 $("요소 선택[속성]") $("li[title]") 요소중 title 속성이 포함된 요소만 선택 $("요소 선택[속성=값]") $("li[title='리스트']") 요소중 title 속성값이 '리스트'인 요소만 선택 $("요소 선택[속성^=텍스트]") $("a[href^='http://']") 요소중 href 속성값이 'http://'로 시작하는 요소만 선택 $("요소 선택[속성$=텍스트]") $("a[href$='.com']") 요소중 href 속성값이 '.com'으로 끝나는 요소만 선택 $("요소 선택[href*=텍스트]") $("a[href*='easy..