Python

Boost使って正規表現で名前付きキャプチャしようとした話

もともとPythonで #coding:utf-8 from __future__ import print_function import re s = "123hello" # named capture m = re.match(r"(?P<num>\d*)(?P<str>.*)", s) print("num is", m.group("num")) print("str is", m.group("str")) というように、正規表現を使って</str></num>…

Pythonの子プロセスIO

すっごい見よう見まねですが。subprocessモジュール使って子プロセスのIOしてます ipc_test_parent.py #coding:utf-8 from subprocess import * p = Popen("python ipc_test_child.py", shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT, close_fds=True…

L-systemとな

http://www14.ocn.ne.jp/~kk62526/Lsys/ なんかすごいやつっぽい。遺伝的アルゴリズムでグラフの文法エンコードが使えるとか使えないとか def lsystem(a): if a==0: return "F" str = lsystem(a-1) result=[] for x in str: if x=="F": result.append("F-F++…

Traveling Salesman Problem 2

昨日の巡回セールスマン問題何かがおかしいと思ってたら、案の定Processing側のコードがおかしかったわけです。10地点(Simulated Annealing + Genetic Algorithm) 117世代0.00313452861531 が最大適応度 50地点(Simulated Annealing + Genetic Algorithm) ま…

Traveling Salesman Problem 1

巡回セールスマン問題を遺伝的アルゴリズムを使って計算してみています。ちょっとまだ、きれいな解が得られてないので、途中経過だけ残しておこうかと。【適応度変化のグラフ】 なんかグラフ的には、厳しい感じに見えますが、絵にしてみると【巡回の図】 な…

遺伝的アルゴリズムで遊ぶ 2

突然変異つけないと話にならないので、つけました。ようやくスタートライン一歩手前ですかね # coding: utf-8 import random import copy generation = [] population_size = 10 chrom_size = 10 mutation_rate = 1 def initialize(): global population_siz…

遺伝的アルゴリズムで遊ぶ 1

学校の文化祭的なので、AI作ろうという流れになって、以前から少し興味を持ちつつ先延ばししてた遺伝的アルゴリズムに本格的に手をつけようと本を読んでいます。で、すごい簡易的ですが、交叉だけで遊んでみたので。。 # coding: utf-8 import random genera…

Pythonのらむだのはなし

関数型とかいうのがありますが、Pythonにも関数指向みたいな感じでかける(らしい)です。 関数型志向Python - LLまつり2013 from Esehara Shigeo >>> lam = lambda x, y: lambda _x: x*y-_x >>> f = lam(2,3) >>> f <function <lambda> at 0x10e188c08> >>> f(1) 5 >>> lam(2,</function>…

PythonでTwitterを使うために色々やった話

今日はPythonでTwitterやってましたが、Twythonていうライブラリでとりあえず落ち着き気味なので、備忘録残しておきます。まず、導入はpipで $ sudo pip install twythonですね。んで、まあ、適当に弄ってみたんですが(Pythonの練習も兼ねて) #-*- coding:…

Pythonをvimで弄るためのメモ

4月頃にPythonを弄ろうと志したわけですが、そもそもエディタからちゃんとしなければと思って、結局vimデビューをとうとうしようと決意しました。しかし、雑魚なので、なかなかmacで設定するのは難しかったですね。ざっとですが、読んだweb上の記事を挙げて…