오늘은~~^^*
오늘은~~^^* 드디어~~^^*
오늘은~~^^* 드디어~~^^* Genetic Algorithm version 시작하는 날!
근데요~~^^* 제가 아침에 일이 있어서요~~^^* 오후에 공부 정리해서 돌아올게요~^^*
Travelling Salesman!! 소중한 보부상!! 아침을 충분히 누리시고 계셔요!
이 한 주의 새로운 아이디어 보따리 가지런히 정리하며~^^*
재미있는 뮤비와 강의 보시며 생각 근육 스트레칭~^^*
편안하고 즐겁고 보람찬 하루 보내고 계셔요~~^^*
오후에 돌아 올게요, 슝우웅~~^^*
surprising ideas!
아이디어는 생각해 내는 것이 아니라 발견하는 것~^^*
surprising and surprisingly reliable ideas~^^*
오우, 발견한 그 아이디어들을 잘 정리한다는 것의 중요함을 깨닫게 되네요~^^*
생물학 속에서 아이디어를 발견하고 잘 정리해서 Genetic Algorithm을 만들어 낸 것처럼요~^^*
예술은 언제나 그 시대의 기술과 협력한 결과물이라는 말이 떠오르기도 하네요~~^^*
네!! Travelling Salesman! 소중한 보부상!
유전학 속에서 아이디어를 발견하고 잘 정리해서
놀라운 최.적.경.로.!!!
놀랍도록 믿을만한 최.적.경.로.!!!
프로그램을 만들어 볼까요, 우리~~^^*?
네~^^* 좋아요~~^^* 고마워요~~^^*’
그럼, 오후에 또 만나요~^^*
네~^^* 즐거운 하루 보내고 계신가요~^^*
저도 잠시 틈을 내어 까페에 왔어요~^^* 음~~ 차 한 잔의 향기가 참 좋아요~^^*
두 번째 우려 낸 것인데도 색깔이 예쁘죠~^^*? 첫 번째 우려 내었을 때는 더 예쁜 색이었어요~^^* 예쁜 색 눈에 담으셔요~~^^* 호로록~~^^*

차 드시고 계시는 동안, 공부 정리 하고 있을게요~^^* 천천히 드세요~~^^*
네~^^* 오늘 아침에 나눈 뮤직 비디오들은, 화면 속 내용들이 재미있다보니 가사 속의 감정의 색깔이 많이 옅어지는 것 같았어요. 이렇게 재미난 아이디어로 저렇게 의기소침한 가사를 담아내다니 좀 많이 어리둥절한 작품도 있었어요~^^*. 몇몇 노래의 가사 내용과는 상관없이, 동영상의 아이디어들을 찾아내고 표현하는 고안과 창작의 과정이 인상적이어서 나누게 되었어요~^^* 즐겁게 시청하셨나요~^^*?
이전에도 그리고 앞으로도, 가끔 슬프거나 힘없는 감정을 담은 노래들도 있겠지만, 동영상의 표현 과정이 재미있어서~^^* 그리고 그날 공부의 핵심어들과 관련이 있어서~^^*, 나누는 것이라서요~^^* 창의적인 표현들이 주는 즐거움만 편안한 마음으로 누리시기 바래요~~^^*
네~^^* 이제 상큼한 차 한 잔 마셨으니~^^* 공부 시작해 볼게요~^^*
Genetic Algorithm을 기반으로 Travelling Salesman Problem을 해결하는 프로그램을 만들어 봅시다~~^^*
하나. 도시들을 무작위로 생성하여 담은 배열 cities[]의 구성요소의 인덱스를 담은 배열 order[]를 준비하겠습니다~^^*
둘. order[]의 구성요소들의 순서를 무작위로 섞어서 새로운 배열 population[]의 구성요소로 저장해 보겠습니다~^^*
네~^^* 이번에 만드는 population[]는 도시들을 담은 배열 cities[]의 구성요소의 인덱스를 담은 배열 order[]의 구성요소들의 순서를 무작위로 섞은 결과들을 모든 배열입니다~^^*
좀 헷갈릴 수는 있지만, 코드로 살펴 보면, 좀 정리된 느낌이 들 것 같아요~^^*
배열 구성요소의 순서를 무작위로 섞는 함수가 shuffle()인데요~^^* 원본 배열을 바꾸지는 않고요. 배열의 복사본을 만들고, 구성요소의 순서를 무작위로 섞어서 그 결과를 return 반환하는 함수인 것 같아요~^^*
var popSize = 500;
let population = [];
function setup() {
createCanvas(600, 600);
const order = [];
for (let i = 0; i < totalCities; i++) {
const v = createVector(random(width), random(height));
cities[i] = v;
order[i] = i;
}
for (let i = 0; i < popSize; i++) {
population[i] = shuffle(order);
}
}
네~^^* 오늘은 populations[]를 생성하는 것만 할까요~^^*
도시들의 순서를 바꾸어서 생성한 것이 아니라~^^*
도시들의 순서를 담은 배열의 순서를 바꾸어서 생성한 것이네요~^^*
약간 헷갈릴 수 있지만~~^^* 곧 익숙해 질 것 같아요~~^^*
네~^^*
오늘 저와 함께 Genetic Algorithm 버전으로 Travelling Salesman Problem을 해결하는 프로그램 만들기! 시작해 주셔서 감사합니다~^^*
내일은 우리~~^^* Fitness 적합성에 대해 함께 고민해 볼까요~^^*
오늘 저녁도 맛있게 드시고요~^^*
밤엔 따듯하게 코~^^* 하시고요~^^*
내일 우리 또 만나요~^^*
네~^^* 꿈은 이루어 집니다~^^*
댓글 남기기