跳到主要內容

發表文章

目前顯示的是 7月, 2016的文章

在Windows的環境底下 利用Python3 安裝Scrapy

由於使用Windows python3 的情況下安裝Scrapy經過了許多困難,所以把我遇到的困難寫成blog,幫助他人也幫助自己 當然也是因為scrapy開始支援python3了 這是Scrapy的官網   系統環境 Windows 10環境 Python 3.5.1 (可於此下載  https://www.python.org/downloads/windows/ ) 安裝Scrapy有一些前置作業必須處理 前置作業 http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml 下載符合你的版本的lxml 以下為以目前我環境為例 pip3 install lxml -3.6 .0 -cp35-cp35m-win32.whl https://sourceforge.net/projects/pywin32/files/pywin32/Build 220/ 下載符合你環境的exe檔 以下為以目前我環境為例 easy_install pywin32 -220. win32-py3 .5 .exe 一切就緒後,就可以開始安裝scrapy 目前支援python3的只有scrapy 1.1版本以上才有支援喔 pip install scrapy

利用機器學習 flappy bird

http://gcaaa31928.github.io/FlappyBirdLearning/ Flappy Bird Learning 此為利用機器學習的方式自動學習flappy bird的專案,而學習方法則是用Q Learning 部份參考至  http://sarvagyavaish.github.io/FlappyBirdRL Game Framework 利用Phaser.js製作出flappy bird遊戲,如下圖 (參考至  http://www.lessmilk.com/tutorial/flappy-bird-phaser-1 ) Q Learning 重點在於這一個公式 而一開始利用這個公式訓練時碰到了一些困難 當只使用這兩個狀態空間時,也就是QState是一個二維的空間 造成在低點的障礙物無法得知離地面或是離天空的距離而常常超出邊界 所以我加上了一個狀態空間,為到天空的距離 但這又引發了別的問題,當我一般的速度通過磚塊時,理論上會以這個方式行動 紅點的位置會慢慢訓練成不按的情況下Q Value會比按的情況下高 但在這個情況時 由於下降的速度太快,導致於Q Value訓練成必須要按下之後才能避免撞到磚塊 也因為這兩個狀態沒辦法收斂到正確的位置,而收斂到了其他的位置 所以我們必須再加一個狀態空間為速度這個空間 基本上這樣就可以完成練習了