![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
初めて質問をさせていただきます。ヨロシクお願いします。
遺伝的アルゴリズムによる繰り返し囚人のジレンマゲームに関するプログラミングについて分からないことがあります。
当方はC++初心者のためクラスの使い方がイマイチ分かりません。
クラスの概念は文献により理解できるのですが便利さが実感できません。
具体的にいうと、遺伝的アルゴリズムのどの部分にクラスが適用できるのでしょうか?クラスを用いないで強引にプログラムすることは出来そうなのですが…。
囚人のジレンマゲームに関わらず、遺伝的操作(選択、交叉、突然変異)をクラスの概念を用いてプログラムする際のヒントとコツなどを教えて下さい!また遺伝子情報は配列を用いて表現するのでしょうか?なにぶん遺伝的アルゴリズムは初めてなので分からないことだらけです。ヨロシクお願いいたしますm(__)m
No.2ベストアンサー
- 回答日時:
こんにちは.Esnaです.
C++は,前に
C -> C++
C++ -> C
の移植がどうしても必要になったときとJava言語のプログラミングの混合でクラスの便利さを覚えました.Javaでかけるようになると,クラスなしでは,生きていけなくなります.
ただ,いまだにC++とJavaの微妙な違いで,どうしてJava(or C++)じゃできないんだ,なんてそれぞれプログラミングしてるときに思ったりしますが….
だから,勉強したっていうより,危機感に苛まされて,やらなきゃいけないってやっているうちに覚えたって感じなので,書籍は,本当に参考に使ってました.
例えば,
ソフトバンク,新C++入門
オライリー,C++実践プログラミング
とかです.(だから参考になるかどうか…)
Web上では,いろんなものがありましたが,初心者用としては,小林健一郎さんのC++入門のページでしょうか.
遺伝的アルゴリズムでは,なかなかソースコードが載っているものが少ないのですが,このあいだ本屋で見たときは,
昭晃堂,C言語による画像処理入門
に遺伝的アルゴリズムのソース(C言語ですが)載ってました.
参考になればいいのですが.
お礼が遅くなって申し訳ありません!
香川に旅行に行っていました・・・うどんが美味しかった・・・。
さて、早速のご返信アリガトウございます!
どうやら経験を積んでみたほうが良さそうですね。
というわけで早速プログラミングに挑戦しています!
まだまだ分からないトコだらけですが頑張りますp(^^)q
また分からないトコがありましたらヨロシクお願いします!
No.1
- 回答日時:
こんにちは.Esnaです.
クラスがない言語でもGAはプログラミングできるのでクラスを使わなくてもできます.
ただ,クラスをきちんと作っておいた方が,後で拡張や変更したいときとか便利だと思います.
クラスにするとしたら,まず個体をクラスにしてみることではないでしょうか.メンバ変数としては,遺伝子情報でしょうし,メンバ関数としては,交叉や突然変異など個体自身の動作をかいてみることではないかと思います.
遺伝子情報は,配列でもいいと思います.
GAで初期設定として難しいのは,
(1)何を遺伝子情報とするか
(2)何をもって適応度がよいとするか
なので,そのあたりがしっかり考えておくことが重要です.
試行錯誤になるかもしれませんが….
がんばってください.
こんばんは、Esnaさん!
やはりクラスを使うべきみたいですね(^^;
まだまだ夏休みは長いですので
頑張って勉強したいと思います。
ただ大型書店に行っても本が出ていないので
独学の限界を感じる今日この頃です。
もしお勧めの書籍などをご存知であれば
教えていただけないでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(悩み相談・人生相談) 格差社会を防ぐ簡単な方法がありますが、なぜその手段を使う決断をしないのでしょうか? 4 2022/05/31 15:40
- 生物学 遺伝分野で質問です。遺伝的パラメーター 遺伝的パラメーターについて知りたいのですが、検索しても用語を 2 2023/01/24 16:54
- 哲学 西洋(カバール)の唯物論医学・科学には「生命」という概念があるのだろうか? 1 2022/10/31 16:40
- 倫理・人権 法の下の平等という概念の必要性の有無についてどう思いますか? 4 2022/04/02 14:41
- 生物学 減数分裂は子孫を残すときにも行う細胞分裂なのでしょうか? 4 2022/04/25 07:31
- 心理学 人間は優勢遺伝子を後世に残すために配偶者を無意識的に選ぶという説は本当だと思いますか? 8 2022/04/10 23:54
- 日本語 「酒が強い」・「酒が弱い」という日本語の使い方は間違っていると思います。 6 2022/06/14 18:27
- その他(ニュース・時事問題) コロナワクチンについて 3 2022/12/09 16:13
- 医学 女性の飲酒の是非について 2 2022/03/26 16:40
- がん・心臓病・脳卒中 私の母親が急性骨髄性白血病(AML)になりました。 抗がん剤治療を行っていますがあまり効果がなく、現 2 2022/04/18 14:37
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
java eclipse 型に解決できません
-
UMLのクラス図はmain()も含むん...
-
3年間同じクラスになる確率
-
javaのコンパイルができません...
-
どこからも呼ばれていない無意...
-
同じクラスにならない確率を教...
-
VB.NETでの和暦表示
-
同一パッケージにあるクラスが...
-
IPアドレスの3バイト目の呼び方
-
河合塾のクラス分けについて
-
クラス名の「~Factory」って何?
-
グローバルIPとプライベートIP...
-
進学校通ってたんですけど、眼...
-
配列の重複する値とその個数を...
-
同じパッケージ、クラス名が含...
-
IPアドレスのクラスAを取得して...
-
Accessの結合クエリフィールド...
-
正規表現を使った小数入力チェ...
-
ドキュメントクラスの取得方法
-
VBAもしくはVB6:クラスの中で...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
配列の重複する値とその個数を...
-
「天声人語」をインターネット...
-
java eclipse 型に解決できません
-
グローバルIPとプライベートIP...
-
ポータブル電源を買おうと思う...
-
容姿について
-
自作のクラスファイルがインポ...
-
どこからも呼ばれていない無意...
-
UMLのクラス図はmain()も含むん...
-
同一パッケージにあるクラスが...
-
main()を持つクラスが2つ以上...
-
1 つのヘッダファイルに複数の...
-
アルキメデスの大戦の櫂はなぜ2...
-
dllと同じプロジェクトにする方法
-
IPアドレスの3バイト目の呼び方
-
3年間同じクラスになる確率
-
重複エラーを解決するには
-
同じパッケージ、クラス名が含...
-
コンボボックスのマウスホイー...
-
同じクラスにならない確率を教...
おすすめ情報